From b9112977b074d67d6c83f04af36b6dabdf1d92c6 Mon Sep 17 00:00:00 2001 From: Simone Date: Tue, 23 Jan 2024 08:40:40 +0100 Subject: [PATCH] Squashed 'external/json/' content from commit 9cca280a4 git-subtree-dir: external/json git-subtree-split: 9cca280a4d0ccf0c08f47a99aa71d1b0e52f8d03 --- .cirrus.yml | 17 + .clang-format | 84 + .clang-tidy | 65 + .github/CODEOWNERS | 6 + .github/CODE_OF_CONDUCT.md | 46 + .github/CONTRIBUTING.md | 71 + .github/FUNDING.yml | 2 + .github/ISSUE_TEMPLATE/bug.yaml | 93 + .github/ISSUE_TEMPLATE/config.yml | 5 + .github/PULL_REQUEST_TEMPLATE.md | 19 + .github/SECURITY.md | 5 + .github/config.yml | 19 + .github/external_ci/appveyor.yml | 91 + .github/labeler.yml | 38 + .github/stale.yml | 17 + .github/workflows/check_amalgamation.yml | 70 + .github/workflows/cifuzz.yml | 30 + .github/workflows/codeql-analysis.yml | 44 + .../workflows/comment_check_amalgamation.yml | 75 + .github/workflows/labeler.yml | 20 + .github/workflows/macos.yml | 67 + .github/workflows/publish_documentation.yml | 41 + .github/workflows/ubuntu.yml | 248 + .github/workflows/windows.yml | 134 + .gitignore | 44 + .lgtm.yml | 4 + .reuse/README.md | 7 + .reuse/dep5 | 32 + .reuse/templates/json.jinja2 | 11 + .reuse/templates/json_support.jinja2 | 11 + BUILD.bazel | 53 + CITATION.cff | 14 + CMakeLists.txt | 209 + ChangeLog.md | 2943 ++ LICENSE.MIT | 21 + LICENSES/Apache-2.0.txt | 73 + LICENSES/BSD-3-Clause.txt | 11 + LICENSES/GPL-3.0-only.txt | 232 + LICENSES/MIT.txt | 9 + Makefile | 285 + Package.swift | 22 + README.md | 1891 ++ WORKSPACE.bazel | 1 + cmake/ci.cmake | 983 + cmake/config.cmake.in | 15 + cmake/download_test_data.cmake | 56 + cmake/nlohmann_jsonConfigVersion.cmake.in | 20 + cmake/pkg-config.pc.in | 4 + cmake/scripts/gen_bazel_build_file.cmake | 24 + cmake/test.cmake | 273 + docs/Makefile | 45 + docs/README.md | 20 + docs/avatars.png | Bin 0 -> 1703752 bytes docs/docset/Info.plist | 20 + docs/docset/Makefile | 87 + docs/docset/README.md | 19 + docs/docset/docSet.sql | 234 + docs/docset/docset.json | 10 + docs/docset/icon.png | Bin 0 -> 700 bytes docs/docset/icon@2x.png | Bin 0 -> 1362 bytes docs/examples/README.cpp | 39 + docs/examples/README.output | 27 + docs/examples/accept__string.cpp | 26 + docs/examples/accept__string.output | 1 + docs/examples/array.cpp | 19 + docs/examples/array.output | 4 + docs/examples/array_t.cpp | 10 + docs/examples/array_t.output | 1 + docs/examples/at__json_pointer.cpp | 103 + docs/examples/at__json_pointer.output | 12 + docs/examples/at__json_pointer_const.cpp | 80 + docs/examples/at__json_pointer_const.output | 9 + docs/examples/at__keytype.c++17.cpp | 49 + docs/examples/at__keytype.c++17.output | 4 + docs/examples/at__keytype_const.c++17.cpp | 43 + docs/examples/at__keytype_const.c++17.output | 3 + docs/examples/at__object_t_key_type.cpp | 47 + docs/examples/at__object_t_key_type.output | 4 + docs/examples/at__object_t_key_type_const.cpp | 41 + .../at__object_t_key_type_const.output | 3 + docs/examples/at__size_type.cpp | 42 + docs/examples/at__size_type.output | 4 + docs/examples/at__size_type_const.cpp | 36 + docs/examples/at__size_type_const.output | 3 + docs/examples/back.cpp | 38 + docs/examples/back.output | 7 + docs/examples/basic_json__CompatibleType.cpp | 214 + .../basic_json__CompatibleType.output | 39 + docs/examples/basic_json__InputIt_InputIt.cpp | 32 + .../basic_json__InputIt_InputIt.output | 4 + docs/examples/basic_json__basic_json.cpp | 17 + docs/examples/basic_json__basic_json.output | 2 + docs/examples/basic_json__copyassignment.cpp | 18 + .../basic_json__copyassignment.output | 2 + docs/examples/basic_json__list_init_t.cpp | 21 + docs/examples/basic_json__list_init_t.output | 5 + docs/examples/basic_json__moveconstructor.cpp | 17 + .../basic_json__moveconstructor.output | 2 + docs/examples/basic_json__nullptr_t.cpp | 16 + docs/examples/basic_json__nullptr_t.output | 2 + .../basic_json__size_type_basic_json.cpp | 18 + .../basic_json__size_type_basic_json.output | 3 + docs/examples/basic_json__value_t.cpp | 25 + docs/examples/basic_json__value_t.output | 7 + docs/examples/begin.cpp | 16 + docs/examples/begin.output | 1 + docs/examples/binary.cpp | 16 + docs/examples/binary.output | 1 + docs/examples/binary_t.cpp | 10 + docs/examples/binary_t.output | 1 + docs/examples/boolean_t.cpp | 10 + docs/examples/boolean_t.output | 1 + ...h_subtype__byte_container_with_subtype.cpp | 23 + ...ubtype__byte_container_with_subtype.output | 3 + ..._container_with_subtype__clear_subtype.cpp | 21 + ...ntainer_with_subtype__clear_subtype.output | 2 + ...te_container_with_subtype__has_subtype.cpp | 19 + ...container_with_subtype__has_subtype.output | 2 + ...te_container_with_subtype__set_subtype.cpp | 22 + ...container_with_subtype__set_subtype.output | 2 + .../byte_container_with_subtype__subtype.cpp | 22 + ...yte_container_with_subtype__subtype.output | 2 + docs/examples/cbegin.cpp | 16 + docs/examples/cbegin.output | 1 + docs/examples/cbor_tag_handler_t.cpp | 28 + docs/examples/cbor_tag_handler_t.output | 3 + docs/examples/cend.cpp | 19 + docs/examples/cend.output | 1 + docs/examples/clear.cpp | 34 + docs/examples/clear.output | 7 + docs/examples/contains__json_pointer.cpp | 43 + docs/examples/contains__json_pointer.output | 7 + docs/examples/contains__keytype.c++17.cpp | 20 + docs/examples/contains__keytype.c++17.output | 3 + docs/examples/contains__object_t_key_type.cpp | 18 + .../contains__object_t_key_type.output | 3 + docs/examples/count__keytype.c++17.cpp | 20 + docs/examples/count__keytype.c++17.output | 2 + docs/examples/count__object_t_key_type.cpp | 18 + docs/examples/count__object_t_key_type.output | 2 + docs/examples/crbegin.cpp | 16 + docs/examples/crbegin.output | 1 + docs/examples/crend.cpp | 19 + docs/examples/crend.output | 1 + docs/examples/default_object_comparator_t.cpp | 11 + .../default_object_comparator_t.output | 2 + docs/examples/diagnostics_extended.cpp | 22 + docs/examples/diagnostics_extended.output | 1 + docs/examples/diagnostics_standard.cpp | 20 + docs/examples/diagnostics_standard.output | 1 + docs/examples/diff.cpp | 37 + docs/examples/diff.output | 25 + docs/examples/dump.cpp | 48 + docs/examples/dump.output | 55 + docs/examples/emplace.cpp | 31 + docs/examples/emplace.output | 6 + docs/examples/emplace_back.cpp | 24 + docs/examples/emplace_back.output | 4 + docs/examples/empty.cpp | 30 + docs/examples/empty.output | 9 + docs/examples/end.cpp | 19 + docs/examples/end.output | 1 + docs/examples/erase__IteratorType.cpp | 31 + docs/examples/erase__IteratorType.output | 6 + .../erase__IteratorType_IteratorType.cpp | 31 + .../erase__IteratorType_IteratorType.output | 6 + docs/examples/erase__keytype.c++17.cpp | 20 + docs/examples/erase__keytype.c++17.output | 2 + docs/examples/erase__object_t_key_type.cpp | 18 + docs/examples/erase__object_t_key_type.output | 2 + docs/examples/erase__size_type.cpp | 16 + docs/examples/erase__size_type.output | 1 + docs/examples/error_handler_t.cpp | 24 + docs/examples/error_handler_t.output | 3 + docs/examples/exception.cpp | 20 + docs/examples/exception.output | 2 + docs/examples/find__keytype.c++17.cpp | 22 + docs/examples/find__keytype.c++17.output | 3 + docs/examples/find__object_t_key_type.cpp | 20 + docs/examples/find__object_t_key_type.output | 3 + docs/examples/flatten.cpp | 32 + docs/examples/flatten.output | 12 + docs/examples/from_bjdata.cpp | 20 + docs/examples/from_bjdata.output | 4 + docs/examples/from_bson.cpp | 21 + docs/examples/from_bson.output | 4 + docs/examples/from_cbor.cpp | 20 + docs/examples/from_cbor.output | 4 + .../from_json__default_constructible.cpp | 37 + .../from_json__default_constructible.output | 1 + .../from_json__non_default_constructible.cpp | 53 + ...rom_json__non_default_constructible.output | 1 + docs/examples/from_msgpack.cpp | 20 + docs/examples/from_msgpack.output | 4 + docs/examples/from_ubjson.cpp | 20 + docs/examples/from_ubjson.output | 4 + docs/examples/front.cpp | 29 + docs/examples/front.output | 6 + docs/examples/get__PointerType.cpp | 21 + docs/examples/get__PointerType.output | 2 + docs/examples/get__ValueType_const.cpp | 50 + docs/examples/get__ValueType_const.output | 11 + docs/examples/get_allocator.cpp | 18 + docs/examples/get_allocator.output | 1 + docs/examples/get_binary.cpp | 16 + docs/examples/get_binary.output | 1 + docs/examples/get_ptr.cpp | 21 + docs/examples/get_ptr.output | 2 + docs/examples/get_ref.cpp | 27 + docs/examples/get_ref.output | 2 + docs/examples/get_to.cpp | 59 + docs/examples/get_to.output | 11 + docs/examples/insert.cpp | 17 + docs/examples/insert.output | 2 + docs/examples/insert__count.cpp | 17 + docs/examples/insert__count.output | 2 + docs/examples/insert__ilist.cpp | 17 + docs/examples/insert__ilist.output | 2 + docs/examples/insert__range.cpp | 20 + docs/examples/insert__range.output | 2 + docs/examples/insert__range_object.cpp | 21 + docs/examples/insert__range_object.output | 3 + docs/examples/invalid_iterator.cpp | 21 + docs/examples/invalid_iterator.output | 2 + docs/examples/is_array.cpp | 30 + docs/examples/is_array.output | 9 + docs/examples/is_binary.cpp | 30 + docs/examples/is_binary.output | 9 + docs/examples/is_boolean.cpp | 30 + docs/examples/is_boolean.output | 9 + docs/examples/is_discarded.cpp | 30 + docs/examples/is_discarded.output | 9 + docs/examples/is_null.cpp | 30 + docs/examples/is_null.output | 9 + docs/examples/is_number.cpp | 30 + docs/examples/is_number.output | 9 + docs/examples/is_number_float.cpp | 30 + docs/examples/is_number_float.output | 9 + docs/examples/is_number_integer.cpp | 30 + docs/examples/is_number_integer.output | 9 + docs/examples/is_number_unsigned.cpp | 30 + docs/examples/is_number_unsigned.output | 9 + docs/examples/is_object.cpp | 30 + docs/examples/is_object.output | 9 + docs/examples/is_primitive.cpp | 30 + docs/examples/is_primitive.output | 9 + docs/examples/is_string.cpp | 30 + docs/examples/is_string.output | 9 + docs/examples/is_structured.cpp | 30 + docs/examples/is_structured.output | 9 + docs/examples/items.cpp | 23 + docs/examples/items.output | 7 + docs/examples/json_base_class_t.cpp | 88 + docs/examples/json_base_class_t.output | 4 + docs/examples/json_lines.cpp | 22 + docs/examples/json_lines.output | 4 + docs/examples/json_pointer.cpp | 47 + docs/examples/json_pointer.output | 3 + docs/examples/json_pointer__back.cpp | 15 + docs/examples/json_pointer__back.output | 2 + docs/examples/json_pointer__empty.cpp | 20 + docs/examples/json_pointer__empty.output | 4 + .../json_pointer__operator__equal.cpp | 19 + .../json_pointer__operator__equal.output | 4 + ...on_pointer__operator__equal_stringtype.cpp | 33 + ...pointer__operator__equal_stringtype.output | 4 + .../json_pointer__operator__notequal.cpp | 19 + .../json_pointer__operator__notequal.output | 4 + ...pointer__operator__notequal_stringtype.cpp | 32 + ...nter__operator__notequal_stringtype.output | 4 + docs/examples/json_pointer__operator_add.cpp | 23 + .../json_pointer__operator_add.output | 4 + .../json_pointer__operator_add_binary.cpp | 19 + .../json_pointer__operator_add_binary.output | 3 + .../json_pointer__operator_string_t.cpp | 19 + .../json_pointer__operator_string_t.output | 2 + .../examples/json_pointer__parent_pointer.cpp | 18 + .../json_pointer__parent_pointer.output | 3 + docs/examples/json_pointer__pop_back.cpp | 21 + docs/examples/json_pointer__pop_back.output | 4 + docs/examples/json_pointer__push_back.cpp | 21 + docs/examples/json_pointer__push_back.output | 4 + docs/examples/json_pointer__string_t.cpp | 13 + docs/examples/json_pointer__string_t.output | 2 + docs/examples/json_pointer__to_string.cpp | 34 + docs/examples/json_pointer__to_string.output | 12 + docs/examples/max_size.cpp | 25 + docs/examples/max_size.output | 7 + docs/examples/merge_patch.cpp | 41 + docs/examples/merge_patch.output | 11 + docs/examples/meta.cpp | 11 + docs/examples/meta.output | 17 + ...lohmann_define_type_intrusive_explicit.cpp | 60 + ...mann_define_type_intrusive_explicit.output | 2 + .../nlohmann_define_type_intrusive_macro.cpp | 48 + ...lohmann_define_type_intrusive_macro.output | 2 + ...type_intrusive_only_serialize_explicit.cpp | 38 + ...e_intrusive_only_serialize_explicit.output | 1 + ...ne_type_intrusive_only_serialize_macro.cpp | 33 + ...type_intrusive_only_serialize_macro.output | 1 + ...e_type_intrusive_with_default_explicit.cpp | 55 + ...ype_intrusive_with_default_explicit.output | 2 + ...fine_type_intrusive_with_default_macro.cpp | 42 + ...e_type_intrusive_with_default_macro.output | 2 + ...ann_define_type_non_intrusive_explicit.cpp | 53 + ..._define_type_non_intrusive_explicit.output | 2 + ...ohmann_define_type_non_intrusive_macro.cpp | 41 + ...ann_define_type_non_intrusive_macro.output | 2 + ..._non_intrusive_only_serialize_explicit.cpp | 31 + ...n_intrusive_only_serialize_explicit.output | 1 + ...ype_non_intrusive_only_serialize_macro.cpp | 26 + ..._non_intrusive_only_serialize_macro.output | 1 + ...pe_non_intrusive_with_default_explicit.cpp | 53 + ...non_intrusive_with_default_explicit.output | 2 + ..._type_non_intrusive_with_default_macro.cpp | 40 + ...pe_non_intrusive_with_default_macro.output | 2 + docs/examples/nlohmann_json_namespace.cpp | 14 + docs/examples/nlohmann_json_namespace.output | 1 + .../nlohmann_json_namespace_begin.c++17.cpp | 33 + ...nlohmann_json_namespace_begin.c++17.output | 1 + .../nlohmann_json_namespace_no_version.cpp | 13 + .../nlohmann_json_namespace_no_version.output | 1 + .../examples/nlohmann_json_serialize_enum.cpp | 59 + .../nlohmann_json_serialize_enum.output | 3 + .../nlohmann_json_serialize_enum_2.cpp | 33 + .../nlohmann_json_serialize_enum_2.output | 3 + docs/examples/nlohmann_json_version.cpp | 12 + docs/examples/nlohmann_json_version.output | 1 + docs/examples/number_float_t.cpp | 10 + docs/examples/number_float_t.output | 1 + docs/examples/number_integer_t.cpp | 10 + docs/examples/number_integer_t.output | 1 + docs/examples/number_unsigned_t.cpp | 10 + docs/examples/number_unsigned_t.output | 1 + docs/examples/object.cpp | 28 + docs/examples/object.output | 4 + docs/examples/object_comparator_t.cpp | 11 + docs/examples/object_comparator_t.output | 2 + docs/examples/object_t.cpp | 10 + docs/examples/object_t.output | 1 + docs/examples/operator__ValueType.cpp | 60 + docs/examples/operator__ValueType.output | 12 + docs/examples/operator__equal.cpp | 24 + docs/examples/operator__equal.output | 4 + docs/examples/operator__equal__nullptr_t.cpp | 22 + .../operator__equal__nullptr_t.output | 5 + .../operator__equal__specializations.cpp | 16 + .../operator__equal__specializations.output | 2 + docs/examples/operator__greater.cpp | 24 + docs/examples/operator__greater.output | 4 + docs/examples/operator__greaterequal.cpp | 24 + docs/examples/operator__greaterequal.output | 4 + docs/examples/operator__less.cpp | 24 + docs/examples/operator__less.output | 4 + docs/examples/operator__lessequal.cpp | 24 + docs/examples/operator__lessequal.output | 4 + docs/examples/operator__notequal.cpp | 24 + docs/examples/operator__notequal.output | 4 + .../operator__notequal__nullptr_t.cpp | 22 + .../operator__notequal__nullptr_t.output | 5 + docs/examples/operator__value_t.cpp | 38 + docs/examples/operator__value_t.output | 8 + .../examples/operator_array__json_pointer.cpp | 49 + .../operator_array__json_pointer.output | 8 + .../operator_array__json_pointer_const.cpp | 25 + .../operator_array__json_pointer_const.output | 4 + .../operator_array__keytype.c++17.cpp | 34 + .../operator_array__keytype.c++17.output | 19 + .../operator_array__keytype_const.c++17.cpp | 18 + ...operator_array__keytype_const.c++17.output | 1 + .../operator_array__object_t_key_type.cpp | 32 + .../operator_array__object_t_key_type.output | 19 + ...perator_array__object_t_key_type_const.cpp | 16 + ...ator_array__object_t_key_type_const.output | 1 + docs/examples/operator_array__size_type.cpp | 25 + .../examples/operator_array__size_type.output | 3 + .../operator_array__size_type_const.cpp | 13 + .../operator_array__size_type_const.output | 1 + docs/examples/operator_deserialize.cpp | 26 + docs/examples/operator_deserialize.output | 13 + docs/examples/operator_literal_json.cpp | 13 + docs/examples/operator_literal_json.output | 4 + .../operator_literal_json_pointer.cpp | 14 + .../operator_literal_json_pointer.output | 1 + docs/examples/operator_ltlt__basic_json.cpp | 21 + .../examples/operator_ltlt__basic_json.output | 22 + docs/examples/operator_ltlt__json_pointer.cpp | 13 + .../operator_ltlt__json_pointer.output | 1 + ...rator_spaceship__const_reference.c++20.cpp | 40 + ...or_spaceship__const_reference.c++20.output | 4 + .../operator_spaceship__scalartype.c++20.cpp | 40 + ...perator_spaceship__scalartype.c++20.output | 4 + docs/examples/ordered_json.cpp | 14 + docs/examples/ordered_json.output | 5 + docs/examples/ordered_map.cpp | 43 + docs/examples/ordered_map.output | 4 + docs/examples/other_error.cpp | 30 + docs/examples/other_error.output | 2 + docs/examples/out_of_range.cpp | 20 + docs/examples/out_of_range.output | 2 + docs/examples/parse__allow_exceptions.cpp | 36 + docs/examples/parse__allow_exceptions.output | 2 + .../parse__array__parser_callback_t.cpp | 30 + .../parse__array__parser_callback_t.output | 20 + ...contiguouscontainer__parser_callback_t.cpp | 15 + ...tiguouscontainer__parser_callback_t.output | 6 + .../parse__istream__parser_callback_t.cpp | 57 + .../parse__istream__parser_callback_t.output | 34 + docs/examples/parse__iterator_pair.cpp | 15 + docs/examples/parse__iterator_pair.link | 1 + docs/examples/parse__iterator_pair.output | 6 + docs/examples/parse__pointers.cpp | 15 + docs/examples/parse__pointers.link | 1 + docs/examples/parse__pointers.output | 6 + .../parse__string__parser_callback_t.cpp | 48 + .../parse__string__parser_callback_t.output | 34 + docs/examples/parse_error.cpp | 20 + docs/examples/parse_error.output | 3 + docs/examples/patch.cpp | 33 + docs/examples/patch.output | 11 + docs/examples/patch_inplace.cpp | 35 + docs/examples/patch_inplace.output | 13 + docs/examples/push_back.cpp | 25 + docs/examples/push_back.output | 4 + docs/examples/push_back__initializer_list.cpp | 27 + .../push_back__initializer_list.output | 4 + docs/examples/push_back__object_t__value.cpp | 25 + .../push_back__object_t__value.output | 4 + docs/examples/rbegin.cpp | 16 + docs/examples/rbegin.output | 1 + docs/examples/rend.cpp | 19 + docs/examples/rend.output | 1 + docs/examples/sax_parse.cpp | 131 + docs/examples/sax_parse.output | 37 + docs/examples/sax_parse__binary.cpp | 114 + docs/examples/sax_parse__binary.output | 3 + docs/examples/size.cpp | 29 + docs/examples/size.output | 9 + docs/examples/std_hash.cpp | 19 + docs/examples/std_hash.output | 8 + docs/examples/std_swap.cpp | 19 + docs/examples/std_swap.output | 2 + docs/examples/string_t.cpp | 10 + docs/examples/string_t.output | 1 + docs/examples/swap__array_t.cpp | 20 + docs/examples/swap__array_t.output | 2 + docs/examples/swap__binary_t.cpp | 20 + docs/examples/swap__binary_t.output | 2 + docs/examples/swap__object_t.cpp | 20 + docs/examples/swap__object_t.output | 2 + docs/examples/swap__reference.cpp | 18 + docs/examples/swap__reference.output | 2 + docs/examples/swap__string_t.cpp | 20 + docs/examples/swap__string_t.output | 2 + docs/examples/to_bjdata.cpp | 64 + docs/examples/to_bjdata.output | 4 + docs/examples/to_bson.cpp | 22 + docs/examples/to_bson.output | 1 + docs/examples/to_cbor.cpp | 22 + docs/examples/to_cbor.output | 1 + docs/examples/to_json.cpp | 32 + docs/examples/to_json.output | 1 + docs/examples/to_msgpack.cpp | 22 + docs/examples/to_msgpack.output | 1 + docs/examples/to_string.cpp | 20 + docs/examples/to_string.output | 3 + docs/examples/to_ubjson.cpp | 64 + docs/examples/to_ubjson.output | 4 + docs/examples/type.cpp | 28 + docs/examples/type.output | 8 + docs/examples/type_error.cpp | 20 + docs/examples/type_error.output | 2 + docs/examples/type_name.cpp | 27 + docs/examples/type_name.output | 8 + docs/examples/unflatten.cpp | 26 + docs/examples/unflatten.output | 18 + docs/examples/update.cpp | 24 + docs/examples/update.output | 17 + docs/examples/update__range.cpp | 24 + docs/examples/update__range.output | 17 + docs/examples/value__json_ptr.cpp | 31 + docs/examples/value__json_ptr.output | 1 + docs/examples/value__keytype.c++17.cpp | 32 + docs/examples/value__keytype.c++17.output | 1 + docs/examples/value__object_t_key_type.cpp | 30 + docs/examples/value__object_t_key_type.output | 1 + docs/json.gif | Bin 0 -> 1652796 bytes docs/mkdocs/Makefile | 37 + .../docs/api/adl_serializer/from_json.md | 73 + docs/mkdocs/docs/api/adl_serializer/index.md | 35 + .../mkdocs/docs/api/adl_serializer/to_json.md | 43 + docs/mkdocs/docs/api/basic_json/accept.md | 113 + docs/mkdocs/docs/api/basic_json/array.md | 60 + docs/mkdocs/docs/api/basic_json/array_t.md | 68 + docs/mkdocs/docs/api/basic_json/at.md | 226 + docs/mkdocs/docs/api/basic_json/back.md | 65 + docs/mkdocs/docs/api/basic_json/basic_json.md | 402 + docs/mkdocs/docs/api/basic_json/begin.md | 42 + docs/mkdocs/docs/api/basic_json/binary.md | 66 + docs/mkdocs/docs/api/basic_json/binary_t.md | 89 + docs/mkdocs/docs/api/basic_json/boolean_t.md | 42 + docs/mkdocs/docs/api/basic_json/cbegin.md | 41 + .../docs/api/basic_json/cbor_tag_handler_t.md | 42 + docs/mkdocs/docs/api/basic_json/cend.md | 41 + docs/mkdocs/docs/api/basic_json/clear.md | 58 + docs/mkdocs/docs/api/basic_json/contains.md | 118 + docs/mkdocs/docs/api/basic_json/count.md | 78 + docs/mkdocs/docs/api/basic_json/crbegin.md | 41 + docs/mkdocs/docs/api/basic_json/crend.md | 42 + .../basic_json/default_object_comparator_t.md | 35 + docs/mkdocs/docs/api/basic_json/diff.md | 62 + docs/mkdocs/docs/api/basic_json/dump.md | 79 + docs/mkdocs/docs/api/basic_json/emplace.md | 56 + .../docs/api/basic_json/emplace_back.md | 54 + docs/mkdocs/docs/api/basic_json/empty.md | 66 + docs/mkdocs/docs/api/basic_json/end.md | 42 + docs/mkdocs/docs/api/basic_json/erase.md | 211 + .../docs/api/basic_json/error_handler_t.md | 42 + docs/mkdocs/docs/api/basic_json/exception.md | 75 + docs/mkdocs/docs/api/basic_json/find.md | 86 + docs/mkdocs/docs/api/basic_json/flatten.md | 50 + .../mkdocs/docs/api/basic_json/from_bjdata.md | 93 + docs/mkdocs/docs/api/basic_json/from_bson.md | 110 + docs/mkdocs/docs/api/basic_json/from_cbor.md | 117 + .../docs/api/basic_json/from_msgpack.md | 109 + .../mkdocs/docs/api/basic_json/from_ubjson.md | 106 + docs/mkdocs/docs/api/basic_json/front.md | 58 + docs/mkdocs/docs/api/basic_json/get.md | 136 + .../docs/api/basic_json/get_allocator.md | 31 + docs/mkdocs/docs/api/basic_json/get_binary.md | 45 + docs/mkdocs/docs/api/basic_json/get_ptr.md | 60 + docs/mkdocs/docs/api/basic_json/get_ref.md | 64 + docs/mkdocs/docs/api/basic_json/get_to.md | 58 + docs/mkdocs/docs/api/basic_json/index.md | 323 + .../docs/api/basic_json/input_format_t.md | 52 + docs/mkdocs/docs/api/basic_json/insert.md | 179 + .../docs/api/basic_json/invalid_iterator.md | 67 + docs/mkdocs/docs/api/basic_json/is_array.md | 39 + docs/mkdocs/docs/api/basic_json/is_binary.md | 39 + docs/mkdocs/docs/api/basic_json/is_boolean.md | 39 + .../docs/api/basic_json/is_discarded.md | 72 + docs/mkdocs/docs/api/basic_json/is_null.md | 39 + docs/mkdocs/docs/api/basic_json/is_number.md | 56 + .../docs/api/basic_json/is_number_float.md | 46 + .../docs/api/basic_json/is_number_integer.md | 47 + .../docs/api/basic_json/is_number_unsigned.md | 46 + docs/mkdocs/docs/api/basic_json/is_object.md | 39 + .../docs/api/basic_json/is_primitive.md | 69 + docs/mkdocs/docs/api/basic_json/is_string.md | 39 + .../docs/api/basic_json/is_structured.md | 63 + docs/mkdocs/docs/api/basic_json/items.md | 100 + .../docs/api/basic_json/json_base_class_t.md | 45 + .../docs/api/basic_json/json_serializer.md | 41 + docs/mkdocs/docs/api/basic_json/max_size.md | 60 + .../mkdocs/docs/api/basic_json/merge_patch.md | 63 + docs/mkdocs/docs/api/basic_json/meta.md | 56 + .../docs/api/basic_json/number_float_t.md | 70 + .../docs/api/basic_json/number_integer_t.md | 76 + .../docs/api/basic_json/number_unsigned_t.md | 76 + docs/mkdocs/docs/api/basic_json/object.md | 63 + .../api/basic_json/object_comparator_t.md | 32 + docs/mkdocs/docs/api/basic_json/object_t.md | 114 + docs/mkdocs/docs/api/basic_json/operator+=.md | 110 + docs/mkdocs/docs/api/basic_json/operator=.md | 43 + docs/mkdocs/docs/api/basic_json/operator[].md | 241 + .../docs/api/basic_json/operator_ValueType.md | 82 + .../mkdocs/docs/api/basic_json/operator_eq.md | 168 + .../mkdocs/docs/api/basic_json/operator_ge.md | 86 + .../mkdocs/docs/api/basic_json/operator_gt.md | 86 + .../mkdocs/docs/api/basic_json/operator_le.md | 87 + .../mkdocs/docs/api/basic_json/operator_lt.md | 96 + .../mkdocs/docs/api/basic_json/operator_ne.md | 98 + .../docs/api/basic_json/operator_spaceship.md | 100 + .../docs/api/basic_json/operator_value_t.md | 54 + .../mkdocs/docs/api/basic_json/other_error.md | 67 + .../docs/api/basic_json/out_of_range.md | 68 + docs/mkdocs/docs/api/basic_json/parse.md | 214 + .../mkdocs/docs/api/basic_json/parse_error.md | 74 + .../docs/api/basic_json/parse_event_t.md | 29 + .../docs/api/basic_json/parser_callback_t.md | 73 + docs/mkdocs/docs/api/basic_json/patch.md | 73 + .../docs/api/basic_json/patch_inplace.md | 70 + docs/mkdocs/docs/api/basic_json/push_back.md | 106 + docs/mkdocs/docs/api/basic_json/rbegin.md | 42 + docs/mkdocs/docs/api/basic_json/rend.md | 43 + docs/mkdocs/docs/api/basic_json/sax_parse.md | 115 + docs/mkdocs/docs/api/basic_json/size.md | 57 + docs/mkdocs/docs/api/basic_json/std_hash.md | 34 + docs/mkdocs/docs/api/basic_json/std_swap.md | 51 + docs/mkdocs/docs/api/basic_json/string_t.md | 66 + docs/mkdocs/docs/api/basic_json/swap.md | 157 + docs/mkdocs/docs/api/basic_json/to_bjdata.md | 70 + docs/mkdocs/docs/api/basic_json/to_bson.md | 59 + docs/mkdocs/docs/api/basic_json/to_cbor.md | 61 + docs/mkdocs/docs/api/basic_json/to_msgpack.md | 59 + docs/mkdocs/docs/api/basic_json/to_string.md | 65 + docs/mkdocs/docs/api/basic_json/to_ubjson.md | 70 + docs/mkdocs/docs/api/basic_json/type.md | 54 + docs/mkdocs/docs/api/basic_json/type_error.md | 68 + docs/mkdocs/docs/api/basic_json/type_name.md | 54 + docs/mkdocs/docs/api/basic_json/unflatten.md | 61 + docs/mkdocs/docs/api/basic_json/update.md | 142 + docs/mkdocs/docs/api/basic_json/value.md | 159 + docs/mkdocs/docs/api/basic_json/value_t.md | 81 + .../mkdocs/docs/api/basic_json/~basic_json.md | 21 + .../byte_container_with_subtype.md | 46 + .../clear_subtype.md | 36 + .../has_subtype.md | 39 + .../api/byte_container_with_subtype/index.md | 35 + .../set_subtype.md | 41 + .../byte_container_with_subtype/subtype.md | 42 + docs/mkdocs/docs/api/json.md | 28 + docs/mkdocs/docs/api/json_pointer/back.md | 40 + docs/mkdocs/docs/api/json_pointer/empty.md | 39 + docs/mkdocs/docs/api/json_pointer/index.md | 52 + .../docs/api/json_pointer/json_pointer.md | 41 + .../docs/api/json_pointer/operator_eq.md | 113 + .../docs/api/json_pointer/operator_ne.md | 109 + .../docs/api/json_pointer/operator_slash.md | 64 + .../docs/api/json_pointer/operator_slasheq.md | 61 + .../api/json_pointer/operator_string_t.md | 48 + .../docs/api/json_pointer/parent_pointer.md | 35 + docs/mkdocs/docs/api/json_pointer/pop_back.md | 35 + .../mkdocs/docs/api/json_pointer/push_back.md | 39 + docs/mkdocs/docs/api/json_pointer/string_t.md | 28 + .../mkdocs/docs/api/json_pointer/to_string.md | 40 + docs/mkdocs/docs/api/json_sax/binary.md | 40 + docs/mkdocs/docs/api/json_sax/boolean.md | 36 + docs/mkdocs/docs/api/json_sax/end_array.md | 31 + docs/mkdocs/docs/api/json_sax/end_object.md | 31 + docs/mkdocs/docs/api/json_sax/index.md | 44 + docs/mkdocs/docs/api/json_sax/key.md | 40 + docs/mkdocs/docs/api/json_sax/null.md | 31 + docs/mkdocs/docs/api/json_sax/number_float.md | 39 + .../docs/api/json_sax/number_integer.md | 36 + .../docs/api/json_sax/number_unsigned.md | 36 + docs/mkdocs/docs/api/json_sax/parse_error.md | 44 + docs/mkdocs/docs/api/json_sax/start_array.md | 40 + docs/mkdocs/docs/api/json_sax/start_object.md | 40 + docs/mkdocs/docs/api/json_sax/string.md | 40 + docs/mkdocs/docs/api/macros/index.md | 62 + docs/mkdocs/docs/api/macros/json_assert.md | 84 + .../docs/api/macros/json_diagnostics.md | 76 + .../macros/json_disable_enum_serialization.md | 152 + .../mkdocs/docs/api/macros/json_has_cpp_11.md | 41 + .../docs/api/macros/json_has_filesystem.md | 43 + .../mkdocs/docs/api/macros/json_has_ranges.md | 31 + .../docs/api/macros/json_has_static_rtti.md | 31 + .../macros/json_has_three_way_comparison.md | 32 + docs/mkdocs/docs/api/macros/json_no_io.md | 35 + .../docs/api/macros/json_noexception.md | 45 + .../macros/json_skip_library_version_check.md | 37 + .../json_skip_unsupported_compiler_check.md | 33 + .../mkdocs/docs/api/macros/json_throw_user.md | 75 + .../docs/api/macros/json_use_global_udls.md | 98 + .../macros/json_use_implicit_conversions.md | 59 + ...n_use_legacy_discarded_value_comparison.md | 77 + .../macros/nlohmann_define_type_intrusive.md | 156 + .../nlohmann_define_type_non_intrusive.md | 157 + .../api/macros/nlohmann_json_namespace.md | 41 + .../macros/nlohmann_json_namespace_begin.md | 61 + .../nlohmann_json_namespace_no_version.md | 45 + .../macros/nlohmann_json_serialize_enum.md | 85 + .../api/macros/nlohmann_json_version_major.md | 40 + docs/mkdocs/docs/api/operator_gtgt.md | 64 + docs/mkdocs/docs/api/operator_literal_json.md | 61 + .../docs/api/operator_literal_json_pointer.md | 64 + docs/mkdocs/docs/api/operator_ltlt.md | 87 + docs/mkdocs/docs/api/ordered_json.md | 32 + docs/mkdocs/docs/api/ordered_map.md | 77 + docs/mkdocs/docs/css/custom.css | 4 + docs/mkdocs/docs/features/arbitrary_types.md | 274 + docs/mkdocs/docs/features/assertions.md | 131 + .../docs/features/binary_formats/bjdata.md | 194 + .../docs/features/binary_formats/bson.md | 96 + .../docs/features/binary_formats/cbor.md | 181 + .../docs/features/binary_formats/index.md | 52 + .../features/binary_formats/messagepack.md | 143 + .../docs/features/binary_formats/ubjson.md | 126 + docs/mkdocs/docs/features/binary_values.md | 372 + docs/mkdocs/docs/features/comments.md | 83 + .../features/element_access/checked_access.md | 91 + .../features/element_access/default_value.md | 32 + .../docs/features/element_access/index.md | 9 + .../element_access/unchecked_access.md | 112 + docs/mkdocs/docs/features/enum_conversion.md | 61 + docs/mkdocs/docs/features/iterators.md | 155 + docs/mkdocs/docs/features/json_patch.md | 47 + docs/mkdocs/docs/features/json_pointer.md | 126 + docs/mkdocs/docs/features/macros.md | 167 + docs/mkdocs/docs/features/merge_patch.md | 20 + docs/mkdocs/docs/features/namespace.md | 93 + docs/mkdocs/docs/features/object_order.md | 109 + docs/mkdocs/docs/features/parsing/index.md | 13 + .../docs/features/parsing/json_lines.md | 49 + .../docs/features/parsing/parse_exceptions.md | 121 + .../docs/features/parsing/parser_callbacks.md | 83 + .../docs/features/parsing/sax_interface.md | 73 + docs/mkdocs/docs/features/types/index.md | 269 + .../docs/features/types/number_handling.md | 328 + docs/mkdocs/docs/home/code_of_conduct.md | 46 + docs/mkdocs/docs/home/design_goals.md | 17 + docs/mkdocs/docs/home/exceptions.md | 896 + docs/mkdocs/docs/home/faq.md | 180 + docs/mkdocs/docs/home/license.md | 21 + docs/mkdocs/docs/home/releases.md | 1225 + docs/mkdocs/docs/home/sponsors.md | 13 + docs/mkdocs/docs/images/callback_events.png | Bin 0 -> 46039 bytes .../mkdocs/docs/images/json_syntax_number.png | Bin 0 -> 37014 bytes docs/mkdocs/docs/images/range-begin-end.svg | 435 + docs/mkdocs/docs/images/range-rbegin-rend.svg | 1232 + docs/mkdocs/docs/index.md | 3 + docs/mkdocs/docs/integration/cmake.md | 172 + .../docs/integration/conan/CMakeLists.txt | 9 + .../docs/integration/conan/Conanfile.txt | 5 + .../mkdocs/docs/integration/conan/example.cpp | 9 + docs/mkdocs/docs/integration/example.cpp | 10 + docs/mkdocs/docs/integration/index.md | 18 + .../docs/integration/migration_guide.md | 264 + .../docs/integration/package_managers.md | 198 + docs/mkdocs/docs/integration/pkg-config.md | 13 + .../docs/integration/vcpkg/CMakeLists.txt | 7 + .../mkdocs/docs/integration/vcpkg/example.cpp | 9 + docs/mkdocs/mkdocs.yml | 366 + docs/mkdocs/requirements.txt | 49 + docs/mkdocs/scripts/check_structure.py | 179 + docs/usages/ios.png | Bin 0 -> 208669 bytes docs/usages/macos.png | Bin 0 -> 1305068 bytes include/nlohmann/adl_serializer.hpp | 55 + .../nlohmann/byte_container_with_subtype.hpp | 103 + include/nlohmann/detail/abi_macros.hpp | 100 + .../nlohmann/detail/conversions/from_json.hpp | 497 + .../nlohmann/detail/conversions/to_chars.hpp | 1118 + .../nlohmann/detail/conversions/to_json.hpp | 446 + include/nlohmann/detail/exceptions.hpp | 257 + include/nlohmann/detail/hash.hpp | 129 + .../nlohmann/detail/input/binary_reader.hpp | 3009 ++ .../nlohmann/detail/input/input_adapters.hpp | 492 + include/nlohmann/detail/input/json_sax.hpp | 727 + include/nlohmann/detail/input/lexer.hpp | 1633 + include/nlohmann/detail/input/parser.hpp | 519 + include/nlohmann/detail/input/position_t.hpp | 37 + .../detail/iterators/internal_iterator.hpp | 35 + .../nlohmann/detail/iterators/iter_impl.hpp | 751 + .../detail/iterators/iteration_proxy.hpp | 242 + .../detail/iterators/iterator_traits.hpp | 61 + .../iterators/json_reverse_iterator.hpp | 130 + .../detail/iterators/primitive_iterator.hpp | 132 + .../detail/json_custom_base_class.hpp | 39 + include/nlohmann/detail/json_pointer.hpp | 988 + include/nlohmann/detail/json_ref.hpp | 78 + include/nlohmann/detail/macro_scope.hpp | 482 + include/nlohmann/detail/macro_unscope.hpp | 45 + .../nlohmann/detail/meta/call_std/begin.hpp | 17 + include/nlohmann/detail/meta/call_std/end.hpp | 17 + include/nlohmann/detail/meta/cpp_future.hpp | 171 + include/nlohmann/detail/meta/detected.hpp | 70 + include/nlohmann/detail/meta/identity_tag.hpp | 21 + include/nlohmann/detail/meta/is_sax.hpp | 159 + include/nlohmann/detail/meta/std_fs.hpp | 29 + include/nlohmann/detail/meta/type_traits.hpp | 795 + include/nlohmann/detail/meta/void_t.hpp | 24 + .../nlohmann/detail/output/binary_writer.hpp | 1838 ++ .../detail/output/output_adapters.hpp | 147 + include/nlohmann/detail/output/serializer.hpp | 988 + include/nlohmann/detail/string_concat.hpp | 146 + include/nlohmann/detail/string_escape.hpp | 72 + include/nlohmann/detail/value_t.hpp | 118 + include/nlohmann/json.hpp | 5258 ++++ include/nlohmann/json_fwd.hpp | 75 + include/nlohmann/ordered_map.hpp | 359 + include/nlohmann/thirdparty/hedley/hedley.hpp | 2045 ++ .../thirdparty/hedley/hedley_undef.hpp | 158 + meson.build | 24 + nlohmann_json.natvis | 278 + single_include/nlohmann/json.hpp | 24765 ++++++++++++++++ single_include/nlohmann/json_fwd.hpp | 176 + tests/CMakeLists.txt | 184 + tests/Makefile | 32 + tests/abi/CMakeLists.txt | 30 + tests/abi/config/CMakeLists.txt | 22 + tests/abi/config/config.hpp | 35 + tests/abi/config/custom.cpp | 33 + tests/abi/config/default.cpp | 41 + tests/abi/config/noversion.cpp | 40 + tests/abi/diag/CMakeLists.txt | 19 + tests/abi/diag/diag.cpp | 29 + tests/abi/diag/diag.hpp | 20 + tests/abi/diag/diag_off.cpp | 30 + tests/abi/diag/diag_on.cpp | 30 + tests/abi/include/nlohmann/json_v3_10_5.hpp | 22091 ++++++++++++++ tests/abi/inline_ns/CMakeLists.txt | 12 + tests/abi/inline_ns/use_current.cpp | 36 + tests/abi/inline_ns/use_v3_10_5.cpp | 22 + tests/abi/main.cpp | 11 + tests/benchmarks/CMakeLists.txt | 34 + tests/benchmarks/src/benchmarks.cpp | 177 + tests/cmake_add_subdirectory/CMakeLists.txt | 18 + .../project/CMakeLists.txt | 20 + tests/cmake_add_subdirectory/project/main.cpp | 16 + tests/cmake_fetch_content/CMakeLists.txt | 20 + .../project/CMakeLists.txt | 20 + tests/cmake_fetch_content/project/main.cpp | 16 + tests/cmake_fetch_content2/CMakeLists.txt | 20 + .../project/CMakeLists.txt | 15 + tests/cmake_fetch_content2/project/main.cpp | 16 + tests/cmake_import/CMakeLists.txt | 19 + tests/cmake_import/project/CMakeLists.txt | 12 + tests/cmake_import/project/main.cpp | 16 + tests/cmake_import_minver/CMakeLists.txt | 19 + .../project/CMakeLists.txt | 8 + tests/cmake_import_minver/project/main.cpp | 16 + .../CMakeLists.txt | 18 + .../project/Bar.cpp | 11 + .../project/Bar.hpp | 12 + .../project/CMakeLists.txt | 21 + .../project/Foo.cpp | 11 + .../project/Foo.hpp | 12 + .../project/main.cpp | 16 + tests/cuda_example/CMakeLists.txt | 10 + tests/cuda_example/json_cuda.cu | 19 + tests/fuzzing.md | 81 + tests/reports/2016-08-29-fuzz/exec_speed.png | Bin 0 -> 28144 bytes tests/reports/2016-08-29-fuzz/fuzz.tiff | Bin 0 -> 235588 bytes tests/reports/2016-08-29-fuzz/high_freq.png | Bin 0 -> 26251 bytes tests/reports/2016-08-29-fuzz/index.html | 10 + tests/reports/2016-08-29-fuzz/low_freq.png | Bin 0 -> 11752 bytes .../2016-09-09-nativejson_benchmark/README.md | 31 + .../conformance_Nlohmann (C++11).md | 670 + .../conformance_overall_Result.png | Bin 0 -> 169617 bytes ..._mac64_clang7.0_1._Parse_Memory_(byte).png | Bin 0 -> 196128 bytes ...0GHz_mac64_clang7.0_1._Parse_Time_(ms).png | Bin 0 -> 149308 bytes ..._mac64_clang7.0_2._Stringify_Time_(ms).png | Bin 0 -> 139615 bytes ...z_mac64_clang7.0_3._Prettify_Time_(ms).png | Bin 0 -> 100027 bytes ..._clang7.0_7._Code_size_FileSize_(byte).png | Bin 0 -> 186055 bytes tests/reports/2016-10-02-fuzz/exec_speed.png | Bin 0 -> 31420 bytes tests/reports/2016-10-02-fuzz/fuzz.tiff | Bin 0 -> 264782 bytes tests/reports/2016-10-02-fuzz/high_freq.png | Bin 0 -> 23019 bytes tests/reports/2016-10-02-fuzz/index.html | 10 + tests/reports/2016-10-02-fuzz/low_freq.png | Bin 0 -> 14234 bytes tests/src/fuzzer-driver_afl.cpp | 39 + tests/src/fuzzer-parse_bjdata.cpp | 85 + tests/src/fuzzer-parse_bson.cpp | 74 + tests/src/fuzzer-parse_cbor.cpp | 69 + tests/src/fuzzer-parse_json.cpp | 70 + tests/src/fuzzer-parse_msgpack.cpp | 69 + tests/src/fuzzer-parse_ubjson.cpp | 85 + tests/src/make_test_data_available.hpp | 30 + tests/src/test_utils.hpp | 33 + tests/src/unit-32bit.cpp | 134 + tests/src/unit-algorithms.cpp | 365 + tests/src/unit-allocator.cpp | 263 + tests/src/unit-alt-string.cpp | 322 + tests/src/unit-assert_macro.cpp | 48 + tests/src/unit-binary_formats.cpp | 211 + tests/src/unit-bjdata.cpp | 3581 +++ tests/src/unit-bson.cpp | 1298 + .../src/unit-byte_container_with_subtype.cpp | 77 + tests/src/unit-capacity.cpp | 543 + tests/src/unit-cbor.cpp | 2705 ++ tests/src/unit-class_const_iterator.cpp | 393 + tests/src/unit-class_iterator.cpp | 468 + tests/src/unit-class_lexer.cpp | 226 + tests/src/unit-class_parser.cpp | 1691 ++ tests/src/unit-comparison.cpp | 596 + tests/src/unit-concepts.cpp | 150 + tests/src/unit-constructor1.cpp | 1581 + tests/src/unit-constructor2.cpp | 186 + tests/src/unit-convenience.cpp | 205 + tests/src/unit-conversions.cpp | 1572 + tests/src/unit-custom-base-class.cpp | 336 + tests/src/unit-deserialization.cpp | 1189 + tests/src/unit-diagnostics.cpp | 246 + tests/src/unit-disabled_exceptions.cpp | 52 + tests/src/unit-element_access1.cpp | 881 + tests/src/unit-element_access2.cpp | 1793 ++ tests/src/unit-hash.cpp | 113 + tests/src/unit-inspection.cpp | 459 + tests/src/unit-items.cpp | 1433 + tests/src/unit-iterators1.cpp | 1630 + tests/src/unit-iterators2.cpp | 971 + tests/src/unit-json_patch.cpp | 1321 + tests/src/unit-json_pointer.cpp | 787 + tests/src/unit-large_json.cpp | 29 + tests/src/unit-merge_patch.cpp | 244 + tests/src/unit-meta.cpp | 36 + tests/src/unit-modifiers.cpp | 953 + tests/src/unit-msgpack.cpp | 1866 ++ .../src/unit-no-mem-leak-on-adl-serialize.cpp | 86 + tests/src/unit-noexcept.cpp | 74 + tests/src/unit-ordered_json.cpp | 71 + tests/src/unit-ordered_map.cpp | 310 + tests/src/unit-pointer_access.cpp | 479 + tests/src/unit-readme.cpp | 304 + tests/src/unit-reference_access.cpp | 247 + tests/src/unit-regression1.cpp | 1513 + tests/src/unit-regression2.cpp | 941 + tests/src/unit-serialization.cpp | 297 + tests/src/unit-testsuites.cpp | 1391 + tests/src/unit-to_chars.cpp | 516 + tests/src/unit-type_traits.cpp | 56 + tests/src/unit-ubjson.cpp | 2547 ++ tests/src/unit-udl.cpp | 57 + tests/src/unit-udt.cpp | 864 + tests/src/unit-udt_macro.cpp | 474 + tests/src/unit-unicode1.cpp | 620 + tests/src/unit-unicode2.cpp | 610 + tests/src/unit-unicode3.cpp | 324 + tests/src/unit-unicode4.cpp | 324 + tests/src/unit-unicode5.cpp | 324 + tests/src/unit-user_defined_input.cpp | 130 + tests/src/unit-windows_h.cpp | 23 + tests/src/unit-wstring.cpp | 99 + tests/src/unit.cpp | 10 + tests/thirdparty/Fuzzer/CMakeLists.txt | 45 + tests/thirdparty/Fuzzer/FuzzerCorpus.h | 217 + tests/thirdparty/Fuzzer/FuzzerCrossOver.cpp | 52 + tests/thirdparty/Fuzzer/FuzzerDefs.h | 89 + tests/thirdparty/Fuzzer/FuzzerDictionary.h | 124 + tests/thirdparty/Fuzzer/FuzzerDriver.cpp | 545 + .../thirdparty/Fuzzer/FuzzerExtFunctions.def | 50 + tests/thirdparty/Fuzzer/FuzzerExtFunctions.h | 35 + .../Fuzzer/FuzzerExtFunctionsDlsym.cpp | 52 + .../Fuzzer/FuzzerExtFunctionsWeak.cpp | 53 + .../Fuzzer/FuzzerExtFunctionsWeakAlias.cpp | 56 + tests/thirdparty/Fuzzer/FuzzerFlags.def | 115 + tests/thirdparty/Fuzzer/FuzzerIO.cpp | 117 + tests/thirdparty/Fuzzer/FuzzerIO.h | 64 + tests/thirdparty/Fuzzer/FuzzerIOPosix.cpp | 88 + tests/thirdparty/Fuzzer/FuzzerIOWindows.cpp | 282 + tests/thirdparty/Fuzzer/FuzzerInterface.h | 67 + tests/thirdparty/Fuzzer/FuzzerInternal.h | 182 + tests/thirdparty/Fuzzer/FuzzerLoop.cpp | 792 + tests/thirdparty/Fuzzer/FuzzerMain.cpp | 21 + tests/thirdparty/Fuzzer/FuzzerMerge.cpp | 261 + tests/thirdparty/Fuzzer/FuzzerMerge.h | 70 + tests/thirdparty/Fuzzer/FuzzerMutate.cpp | 527 + tests/thirdparty/Fuzzer/FuzzerMutate.h | 145 + tests/thirdparty/Fuzzer/FuzzerOptions.h | 68 + tests/thirdparty/Fuzzer/FuzzerRandom.h | 36 + tests/thirdparty/Fuzzer/FuzzerSHA1.cpp | 222 + tests/thirdparty/Fuzzer/FuzzerSHA1.h | 33 + tests/thirdparty/Fuzzer/FuzzerTracePC.cpp | 339 + tests/thirdparty/Fuzzer/FuzzerTracePC.h | 158 + tests/thirdparty/Fuzzer/FuzzerTraceState.cpp | 325 + tests/thirdparty/Fuzzer/FuzzerUtil.cpp | 218 + tests/thirdparty/Fuzzer/FuzzerUtil.h | 72 + tests/thirdparty/Fuzzer/FuzzerUtilDarwin.cpp | 152 + tests/thirdparty/Fuzzer/FuzzerUtilLinux.cpp | 24 + tests/thirdparty/Fuzzer/FuzzerUtilPosix.cpp | 117 + tests/thirdparty/Fuzzer/FuzzerUtilWindows.cpp | 182 + tests/thirdparty/Fuzzer/FuzzerValueBitMap.h | 87 + tests/thirdparty/Fuzzer/README.txt | 2 + tests/thirdparty/Fuzzer/afl/afl_driver.cpp | 295 + tests/thirdparty/Fuzzer/build.sh | 10 + tests/thirdparty/Fuzzer/cxx.dict | 122 + .../standalone/StandaloneFuzzTargetMain.c | 41 + .../thirdparty/Fuzzer/test/AFLDriverTest.cpp | 22 + .../Fuzzer/test/AbsNegAndConstant64Test.cpp | 23 + .../Fuzzer/test/AbsNegAndConstantTest.cpp | 23 + .../Fuzzer/test/AccumulateAllocationsTest.cpp | 17 + .../Fuzzer/test/BufferOverflowOnInput.cpp | 23 + tests/thirdparty/Fuzzer/test/CMakeLists.txt | 217 + .../Fuzzer/test/CallerCalleeTest.cpp | 59 + tests/thirdparty/Fuzzer/test/CounterTest.cpp | 18 + .../Fuzzer/test/CustomCrossOverTest.cpp | 63 + .../Fuzzer/test/CustomMutatorTest.cpp | 38 + tests/thirdparty/Fuzzer/test/DSO1.cpp | 12 + tests/thirdparty/Fuzzer/test/DSO2.cpp | 12 + tests/thirdparty/Fuzzer/test/DSOTestExtra.cpp | 11 + tests/thirdparty/Fuzzer/test/DSOTestMain.cpp | 31 + tests/thirdparty/Fuzzer/test/DivTest.cpp | 20 + tests/thirdparty/Fuzzer/test/EmptyTest.cpp | 11 + .../test/FourIndependentBranchesTest.cpp | 22 + .../Fuzzer/test/FullCoverageSetTest.cpp | 24 + .../thirdparty/Fuzzer/test/FuzzerUnittest.cpp | 738 + .../thirdparty/Fuzzer/test/InitializeTest.cpp | 28 + tests/thirdparty/Fuzzer/test/LeakTest.cpp | 17 + .../Fuzzer/test/LeakTimeoutTest.cpp | 17 + tests/thirdparty/Fuzzer/test/LoadTest.cpp | 22 + tests/thirdparty/Fuzzer/test/MemcmpTest.cpp | 31 + .../Fuzzer/test/NthRunCrashTest.cpp | 18 + .../Fuzzer/test/NullDerefOnEmptyTest.cpp | 19 + .../thirdparty/Fuzzer/test/NullDerefTest.cpp | 26 + .../Fuzzer/test/OneHugeAllocTest.cpp | 28 + .../test/OutOfMemorySingleLargeMallocTest.cpp | 27 + .../Fuzzer/test/OutOfMemoryTest.cpp | 31 + .../Fuzzer/test/RepeatedBytesTest.cpp | 29 + .../thirdparty/Fuzzer/test/RepeatedMemcmp.cpp | 22 + .../Fuzzer/test/ShrinkControlFlowTest.cpp | 28 + .../Fuzzer/test/ShrinkValueProfileTest.cpp | 22 + .../Fuzzer/test/SignedIntOverflowTest.cpp | 28 + .../thirdparty/Fuzzer/test/SimpleCmpTest.cpp | 46 + .../Fuzzer/test/SimpleDictionaryTest.cpp | 29 + .../thirdparty/Fuzzer/test/SimpleHashTest.cpp | 40 + tests/thirdparty/Fuzzer/test/SimpleTest.cpp | 27 + .../Fuzzer/test/SimpleThreadedTest.cpp | 25 + .../Fuzzer/test/SingleMemcmpTest.cpp | 17 + .../Fuzzer/test/SingleStrcmpTest.cpp | 17 + .../Fuzzer/test/SingleStrncmpTest.cpp | 17 + tests/thirdparty/Fuzzer/test/SpamyTest.cpp | 21 + tests/thirdparty/Fuzzer/test/StrcmpTest.cpp | 32 + .../thirdparty/Fuzzer/test/StrncmpOOBTest.cpp | 21 + tests/thirdparty/Fuzzer/test/StrncmpTest.cpp | 28 + tests/thirdparty/Fuzzer/test/StrstrTest.cpp | 28 + tests/thirdparty/Fuzzer/test/SwapCmpTest.cpp | 34 + tests/thirdparty/Fuzzer/test/Switch2Test.cpp | 35 + tests/thirdparty/Fuzzer/test/SwitchTest.cpp | 58 + .../Fuzzer/test/ThreadedLeakTest.cpp | 18 + tests/thirdparty/Fuzzer/test/ThreadedTest.cpp | 26 + .../Fuzzer/test/TimeoutEmptyTest.cpp | 14 + tests/thirdparty/Fuzzer/test/TimeoutTest.cpp | 26 + .../Fuzzer/test/TraceMallocTest.cpp | 27 + .../Fuzzer/test/UninstrumentedTest.cpp | 11 + .../Fuzzer/test/afl-driver-extra-stats.test | 28 + .../Fuzzer/test/afl-driver-stderr.test | 10 + .../thirdparty/Fuzzer/test/caller-callee.test | 2 + tests/thirdparty/Fuzzer/test/coverage.test | 19 + tests/thirdparty/Fuzzer/test/dict1.txt | 4 + .../thirdparty/Fuzzer/test/dump_coverage.test | 16 + .../Fuzzer/test/fuzzer-customcrossover.test | 10 + .../Fuzzer/test/fuzzer-custommutator.test | 4 + tests/thirdparty/Fuzzer/test/fuzzer-dict.test | 6 + tests/thirdparty/Fuzzer/test/fuzzer-dirs.test | 15 + .../thirdparty/Fuzzer/test/fuzzer-fdmask.test | 30 + .../Fuzzer/test/fuzzer-finalstats.test | 11 + .../thirdparty/Fuzzer/test/fuzzer-flags.test | 10 + tests/thirdparty/Fuzzer/test/fuzzer-jobs.test | 29 + tests/thirdparty/Fuzzer/test/fuzzer-leak.test | 35 + .../Fuzzer/test/fuzzer-oom-with-profile.test | 6 + tests/thirdparty/Fuzzer/test/fuzzer-oom.test | 11 + .../Fuzzer/test/fuzzer-printcovpcs.test | 8 + tests/thirdparty/Fuzzer/test/fuzzer-runs.test | 8 + tests/thirdparty/Fuzzer/test/fuzzer-seed.test | 3 + tests/thirdparty/Fuzzer/test/fuzzer-segv.test | 5 + .../Fuzzer/test/fuzzer-singleinputs.test | 16 + .../Fuzzer/test/fuzzer-threaded.test | 7 + .../Fuzzer/test/fuzzer-timeout.test | 19 + .../Fuzzer/test/fuzzer-traces-hooks.test | 25 + .../thirdparty/Fuzzer/test/fuzzer-ubsan.test | 4 + tests/thirdparty/Fuzzer/test/fuzzer.test | 57 + tests/thirdparty/Fuzzer/test/hi.txt | 1 + tests/thirdparty/Fuzzer/test/lit.cfg | 29 + tests/thirdparty/Fuzzer/test/lit.site.cfg.in | 4 + tests/thirdparty/Fuzzer/test/merge.test | 46 + .../Fuzzer/test/minimize_crash.test | 6 + .../Fuzzer/test/no-coverage/CMakeLists.txt | 29 + .../Fuzzer/test/repeated-bytes.test | 2 + tests/thirdparty/Fuzzer/test/shrink.test | 7 + tests/thirdparty/Fuzzer/test/simple-cmp.test | 2 + tests/thirdparty/Fuzzer/test/standalone.test | 4 + tests/thirdparty/Fuzzer/test/swap-cmp.test | 2 + .../thirdparty/Fuzzer/test/trace-malloc.test | 10 + .../Fuzzer/test/ubsan/CMakeLists.txt | 15 + tests/thirdparty/Fuzzer/test/ulimit.test | 2 + .../Fuzzer/test/uninstrumented/CMakeLists.txt | 16 + tests/thirdparty/Fuzzer/test/unit/lit.cfg | 7 + .../Fuzzer/test/unit/lit.site.cfg.in | 2 + .../Fuzzer/test/value-profile-cmp.test | 2 + .../Fuzzer/test/value-profile-cmp2.test | 2 + .../Fuzzer/test/value-profile-cmp3.test | 2 + .../Fuzzer/test/value-profile-cmp4.test | 2 + .../Fuzzer/test/value-profile-div.test | 3 + .../Fuzzer/test/value-profile-load.test | 3 + .../Fuzzer/test/value-profile-mem.test | 2 + .../Fuzzer/test/value-profile-set.test | 3 + .../Fuzzer/test/value-profile-strcmp.test | 2 + .../Fuzzer/test/value-profile-strncmp.test | 2 + .../Fuzzer/test/value-profile-switch.test | 3 + tests/thirdparty/doctest/doctest.h | 7106 +++++ .../doctest/doctest_compatibility.h | 37 + tests/thirdparty/fifo_map/fifo_map.hpp | 530 + tests/thirdparty/imapdl/filterbr.py | 109 + tools/amalgamate/CHANGES.md | 10 + tools/amalgamate/README.md | 66 + tools/amalgamate/amalgamate.py | 299 + tools/amalgamate/config_json.json | 8 + tools/amalgamate/config_json_fwd.json | 8 + tools/gdb_pretty_printer/README.md | 78 + tools/gdb_pretty_printer/nlohmann-json.py | 32 + tools/generate_natvis/README.md | 10 + tools/generate_natvis/generate_natvis.py | 41 + tools/generate_natvis/nlohmann_json.natvis.j2 | 40 + tools/macro_builder/main.cpp | 43 + tools/serve_header/README.md | 91 + tools/serve_header/demo.png | Bin 0 -> 557446 bytes tools/serve_header/requirements.txt | 2 + tools/serve_header/serve_header.py | 410 + tools/serve_header/serve_header.yml.example | 15 + wsjcpp.yml | 26 + 1090 files changed, 174859 insertions(+) create mode 100644 .cirrus.yml create mode 100644 .clang-format create mode 100644 .clang-tidy create mode 100644 .github/CODEOWNERS create mode 100644 .github/CODE_OF_CONDUCT.md create mode 100644 .github/CONTRIBUTING.md create mode 100644 .github/FUNDING.yml create mode 100644 .github/ISSUE_TEMPLATE/bug.yaml create mode 100644 .github/ISSUE_TEMPLATE/config.yml create mode 100644 .github/PULL_REQUEST_TEMPLATE.md create mode 100644 .github/SECURITY.md create mode 100644 .github/config.yml create mode 100644 .github/external_ci/appveyor.yml create mode 100644 .github/labeler.yml create mode 100644 .github/stale.yml create mode 100644 .github/workflows/check_amalgamation.yml create mode 100644 .github/workflows/cifuzz.yml create mode 100644 .github/workflows/codeql-analysis.yml create mode 100644 .github/workflows/comment_check_amalgamation.yml create mode 100644 .github/workflows/labeler.yml create mode 100644 .github/workflows/macos.yml create mode 100644 .github/workflows/publish_documentation.yml create mode 100644 .github/workflows/ubuntu.yml create mode 100644 .github/workflows/windows.yml create mode 100644 .gitignore create mode 100644 .lgtm.yml create mode 100644 .reuse/README.md create mode 100644 .reuse/dep5 create mode 100644 .reuse/templates/json.jinja2 create mode 100644 .reuse/templates/json_support.jinja2 create mode 100644 BUILD.bazel create mode 100644 CITATION.cff create mode 100644 CMakeLists.txt create mode 100644 ChangeLog.md create mode 100644 LICENSE.MIT create mode 100644 LICENSES/Apache-2.0.txt create mode 100644 LICENSES/BSD-3-Clause.txt create mode 100644 LICENSES/GPL-3.0-only.txt create mode 100644 LICENSES/MIT.txt create mode 100644 Makefile create mode 100644 Package.swift create mode 100644 README.md create mode 100644 WORKSPACE.bazel create mode 100644 cmake/ci.cmake create mode 100644 cmake/config.cmake.in create mode 100644 cmake/download_test_data.cmake create mode 100644 cmake/nlohmann_jsonConfigVersion.cmake.in create mode 100644 cmake/pkg-config.pc.in create mode 100644 cmake/scripts/gen_bazel_build_file.cmake create mode 100644 cmake/test.cmake create mode 100644 docs/Makefile create mode 100644 docs/README.md create mode 100644 docs/avatars.png create mode 100644 docs/docset/Info.plist create mode 100644 docs/docset/Makefile create mode 100644 docs/docset/README.md create mode 100644 docs/docset/docSet.sql create mode 100644 docs/docset/docset.json create mode 100644 docs/docset/icon.png create mode 100644 docs/docset/icon@2x.png create mode 100644 docs/examples/README.cpp create mode 100644 docs/examples/README.output create mode 100644 docs/examples/accept__string.cpp create mode 100644 docs/examples/accept__string.output create mode 100644 docs/examples/array.cpp create mode 100644 docs/examples/array.output create mode 100644 docs/examples/array_t.cpp create mode 100644 docs/examples/array_t.output create mode 100644 docs/examples/at__json_pointer.cpp create mode 100644 docs/examples/at__json_pointer.output create mode 100644 docs/examples/at__json_pointer_const.cpp create mode 100644 docs/examples/at__json_pointer_const.output create mode 100644 docs/examples/at__keytype.c++17.cpp create mode 100644 docs/examples/at__keytype.c++17.output create mode 100644 docs/examples/at__keytype_const.c++17.cpp create mode 100644 docs/examples/at__keytype_const.c++17.output create mode 100644 docs/examples/at__object_t_key_type.cpp create mode 100644 docs/examples/at__object_t_key_type.output create mode 100644 docs/examples/at__object_t_key_type_const.cpp create mode 100644 docs/examples/at__object_t_key_type_const.output create mode 100644 docs/examples/at__size_type.cpp create mode 100644 docs/examples/at__size_type.output create mode 100644 docs/examples/at__size_type_const.cpp create mode 100644 docs/examples/at__size_type_const.output create mode 100644 docs/examples/back.cpp create mode 100644 docs/examples/back.output create mode 100644 docs/examples/basic_json__CompatibleType.cpp create mode 100644 docs/examples/basic_json__CompatibleType.output create mode 100644 docs/examples/basic_json__InputIt_InputIt.cpp create mode 100644 docs/examples/basic_json__InputIt_InputIt.output create mode 100644 docs/examples/basic_json__basic_json.cpp create mode 100644 docs/examples/basic_json__basic_json.output create mode 100644 docs/examples/basic_json__copyassignment.cpp create mode 100644 docs/examples/basic_json__copyassignment.output create mode 100644 docs/examples/basic_json__list_init_t.cpp create mode 100644 docs/examples/basic_json__list_init_t.output create mode 100644 docs/examples/basic_json__moveconstructor.cpp create mode 100644 docs/examples/basic_json__moveconstructor.output create mode 100644 docs/examples/basic_json__nullptr_t.cpp create mode 100644 docs/examples/basic_json__nullptr_t.output create mode 100644 docs/examples/basic_json__size_type_basic_json.cpp create mode 100644 docs/examples/basic_json__size_type_basic_json.output create mode 100644 docs/examples/basic_json__value_t.cpp create mode 100644 docs/examples/basic_json__value_t.output create mode 100644 docs/examples/begin.cpp create mode 100644 docs/examples/begin.output create mode 100644 docs/examples/binary.cpp create mode 100644 docs/examples/binary.output create mode 100644 docs/examples/binary_t.cpp create mode 100644 docs/examples/binary_t.output create mode 100644 docs/examples/boolean_t.cpp create mode 100644 docs/examples/boolean_t.output create mode 100644 docs/examples/byte_container_with_subtype__byte_container_with_subtype.cpp create mode 100644 docs/examples/byte_container_with_subtype__byte_container_with_subtype.output create mode 100644 docs/examples/byte_container_with_subtype__clear_subtype.cpp create mode 100644 docs/examples/byte_container_with_subtype__clear_subtype.output create mode 100644 docs/examples/byte_container_with_subtype__has_subtype.cpp create mode 100644 docs/examples/byte_container_with_subtype__has_subtype.output create mode 100644 docs/examples/byte_container_with_subtype__set_subtype.cpp create mode 100644 docs/examples/byte_container_with_subtype__set_subtype.output create mode 100644 docs/examples/byte_container_with_subtype__subtype.cpp create mode 100644 docs/examples/byte_container_with_subtype__subtype.output create mode 100644 docs/examples/cbegin.cpp create mode 100644 docs/examples/cbegin.output create mode 100644 docs/examples/cbor_tag_handler_t.cpp create mode 100644 docs/examples/cbor_tag_handler_t.output create mode 100644 docs/examples/cend.cpp create mode 100644 docs/examples/cend.output create mode 100644 docs/examples/clear.cpp create mode 100644 docs/examples/clear.output create mode 100644 docs/examples/contains__json_pointer.cpp create mode 100644 docs/examples/contains__json_pointer.output create mode 100644 docs/examples/contains__keytype.c++17.cpp create mode 100644 docs/examples/contains__keytype.c++17.output create mode 100644 docs/examples/contains__object_t_key_type.cpp create mode 100644 docs/examples/contains__object_t_key_type.output create mode 100644 docs/examples/count__keytype.c++17.cpp create mode 100644 docs/examples/count__keytype.c++17.output create mode 100644 docs/examples/count__object_t_key_type.cpp create mode 100644 docs/examples/count__object_t_key_type.output create mode 100644 docs/examples/crbegin.cpp create mode 100644 docs/examples/crbegin.output create mode 100644 docs/examples/crend.cpp create mode 100644 docs/examples/crend.output create mode 100644 docs/examples/default_object_comparator_t.cpp create mode 100644 docs/examples/default_object_comparator_t.output create mode 100644 docs/examples/diagnostics_extended.cpp create mode 100644 docs/examples/diagnostics_extended.output create mode 100644 docs/examples/diagnostics_standard.cpp create mode 100644 docs/examples/diagnostics_standard.output create mode 100644 docs/examples/diff.cpp create mode 100644 docs/examples/diff.output create mode 100644 docs/examples/dump.cpp create mode 100644 docs/examples/dump.output create mode 100644 docs/examples/emplace.cpp create mode 100644 docs/examples/emplace.output create mode 100644 docs/examples/emplace_back.cpp create mode 100644 docs/examples/emplace_back.output create mode 100644 docs/examples/empty.cpp create mode 100644 docs/examples/empty.output create mode 100644 docs/examples/end.cpp create mode 100644 docs/examples/end.output create mode 100644 docs/examples/erase__IteratorType.cpp create mode 100644 docs/examples/erase__IteratorType.output create mode 100644 docs/examples/erase__IteratorType_IteratorType.cpp create mode 100644 docs/examples/erase__IteratorType_IteratorType.output create mode 100644 docs/examples/erase__keytype.c++17.cpp create mode 100644 docs/examples/erase__keytype.c++17.output create mode 100644 docs/examples/erase__object_t_key_type.cpp create mode 100644 docs/examples/erase__object_t_key_type.output create mode 100644 docs/examples/erase__size_type.cpp create mode 100644 docs/examples/erase__size_type.output create mode 100644 docs/examples/error_handler_t.cpp create mode 100644 docs/examples/error_handler_t.output create mode 100644 docs/examples/exception.cpp create mode 100644 docs/examples/exception.output create mode 100644 docs/examples/find__keytype.c++17.cpp create mode 100644 docs/examples/find__keytype.c++17.output create mode 100644 docs/examples/find__object_t_key_type.cpp create mode 100644 docs/examples/find__object_t_key_type.output create mode 100644 docs/examples/flatten.cpp create mode 100644 docs/examples/flatten.output create mode 100644 docs/examples/from_bjdata.cpp create mode 100644 docs/examples/from_bjdata.output create mode 100644 docs/examples/from_bson.cpp create mode 100644 docs/examples/from_bson.output create mode 100644 docs/examples/from_cbor.cpp create mode 100644 docs/examples/from_cbor.output create mode 100644 docs/examples/from_json__default_constructible.cpp create mode 100644 docs/examples/from_json__default_constructible.output create mode 100644 docs/examples/from_json__non_default_constructible.cpp create mode 100644 docs/examples/from_json__non_default_constructible.output create mode 100644 docs/examples/from_msgpack.cpp create mode 100644 docs/examples/from_msgpack.output create mode 100644 docs/examples/from_ubjson.cpp create mode 100644 docs/examples/from_ubjson.output create mode 100644 docs/examples/front.cpp create mode 100644 docs/examples/front.output create mode 100644 docs/examples/get__PointerType.cpp create mode 100644 docs/examples/get__PointerType.output create mode 100644 docs/examples/get__ValueType_const.cpp create mode 100644 docs/examples/get__ValueType_const.output create mode 100644 docs/examples/get_allocator.cpp create mode 100644 docs/examples/get_allocator.output create mode 100644 docs/examples/get_binary.cpp create mode 100644 docs/examples/get_binary.output create mode 100644 docs/examples/get_ptr.cpp create mode 100644 docs/examples/get_ptr.output create mode 100644 docs/examples/get_ref.cpp create mode 100644 docs/examples/get_ref.output create mode 100644 docs/examples/get_to.cpp create mode 100644 docs/examples/get_to.output create mode 100644 docs/examples/insert.cpp create mode 100644 docs/examples/insert.output create mode 100644 docs/examples/insert__count.cpp create mode 100644 docs/examples/insert__count.output create mode 100644 docs/examples/insert__ilist.cpp create mode 100644 docs/examples/insert__ilist.output create mode 100644 docs/examples/insert__range.cpp create mode 100644 docs/examples/insert__range.output create mode 100644 docs/examples/insert__range_object.cpp create mode 100644 docs/examples/insert__range_object.output create mode 100644 docs/examples/invalid_iterator.cpp create mode 100644 docs/examples/invalid_iterator.output create mode 100644 docs/examples/is_array.cpp create mode 100644 docs/examples/is_array.output create mode 100644 docs/examples/is_binary.cpp create mode 100644 docs/examples/is_binary.output create mode 100644 docs/examples/is_boolean.cpp create mode 100644 docs/examples/is_boolean.output create mode 100644 docs/examples/is_discarded.cpp create mode 100644 docs/examples/is_discarded.output create mode 100644 docs/examples/is_null.cpp create mode 100644 docs/examples/is_null.output create mode 100644 docs/examples/is_number.cpp create mode 100644 docs/examples/is_number.output create mode 100644 docs/examples/is_number_float.cpp create mode 100644 docs/examples/is_number_float.output create mode 100644 docs/examples/is_number_integer.cpp create mode 100644 docs/examples/is_number_integer.output create mode 100644 docs/examples/is_number_unsigned.cpp create mode 100644 docs/examples/is_number_unsigned.output create mode 100644 docs/examples/is_object.cpp create mode 100644 docs/examples/is_object.output create mode 100644 docs/examples/is_primitive.cpp create mode 100644 docs/examples/is_primitive.output create mode 100644 docs/examples/is_string.cpp create mode 100644 docs/examples/is_string.output create mode 100644 docs/examples/is_structured.cpp create mode 100644 docs/examples/is_structured.output create mode 100644 docs/examples/items.cpp create mode 100644 docs/examples/items.output create mode 100644 docs/examples/json_base_class_t.cpp create mode 100644 docs/examples/json_base_class_t.output create mode 100644 docs/examples/json_lines.cpp create mode 100644 docs/examples/json_lines.output create mode 100644 docs/examples/json_pointer.cpp create mode 100644 docs/examples/json_pointer.output create mode 100644 docs/examples/json_pointer__back.cpp create mode 100644 docs/examples/json_pointer__back.output create mode 100644 docs/examples/json_pointer__empty.cpp create mode 100644 docs/examples/json_pointer__empty.output create mode 100644 docs/examples/json_pointer__operator__equal.cpp create mode 100644 docs/examples/json_pointer__operator__equal.output create mode 100644 docs/examples/json_pointer__operator__equal_stringtype.cpp create mode 100644 docs/examples/json_pointer__operator__equal_stringtype.output create mode 100644 docs/examples/json_pointer__operator__notequal.cpp create mode 100644 docs/examples/json_pointer__operator__notequal.output create mode 100644 docs/examples/json_pointer__operator__notequal_stringtype.cpp create mode 100644 docs/examples/json_pointer__operator__notequal_stringtype.output create mode 100644 docs/examples/json_pointer__operator_add.cpp create mode 100644 docs/examples/json_pointer__operator_add.output create mode 100644 docs/examples/json_pointer__operator_add_binary.cpp create mode 100644 docs/examples/json_pointer__operator_add_binary.output create mode 100644 docs/examples/json_pointer__operator_string_t.cpp create mode 100644 docs/examples/json_pointer__operator_string_t.output create mode 100644 docs/examples/json_pointer__parent_pointer.cpp create mode 100644 docs/examples/json_pointer__parent_pointer.output create mode 100644 docs/examples/json_pointer__pop_back.cpp create mode 100644 docs/examples/json_pointer__pop_back.output create mode 100644 docs/examples/json_pointer__push_back.cpp create mode 100644 docs/examples/json_pointer__push_back.output create mode 100644 docs/examples/json_pointer__string_t.cpp create mode 100644 docs/examples/json_pointer__string_t.output create mode 100644 docs/examples/json_pointer__to_string.cpp create mode 100644 docs/examples/json_pointer__to_string.output create mode 100644 docs/examples/max_size.cpp create mode 100644 docs/examples/max_size.output create mode 100644 docs/examples/merge_patch.cpp create mode 100644 docs/examples/merge_patch.output create mode 100644 docs/examples/meta.cpp create mode 100644 docs/examples/meta.output create mode 100644 docs/examples/nlohmann_define_type_intrusive_explicit.cpp create mode 100644 docs/examples/nlohmann_define_type_intrusive_explicit.output create mode 100644 docs/examples/nlohmann_define_type_intrusive_macro.cpp create mode 100644 docs/examples/nlohmann_define_type_intrusive_macro.output create mode 100644 docs/examples/nlohmann_define_type_intrusive_only_serialize_explicit.cpp create mode 100644 docs/examples/nlohmann_define_type_intrusive_only_serialize_explicit.output create mode 100644 docs/examples/nlohmann_define_type_intrusive_only_serialize_macro.cpp create mode 100644 docs/examples/nlohmann_define_type_intrusive_only_serialize_macro.output create mode 100644 docs/examples/nlohmann_define_type_intrusive_with_default_explicit.cpp create mode 100644 docs/examples/nlohmann_define_type_intrusive_with_default_explicit.output create mode 100644 docs/examples/nlohmann_define_type_intrusive_with_default_macro.cpp create mode 100644 docs/examples/nlohmann_define_type_intrusive_with_default_macro.output create mode 100644 docs/examples/nlohmann_define_type_non_intrusive_explicit.cpp create mode 100644 docs/examples/nlohmann_define_type_non_intrusive_explicit.output create mode 100644 docs/examples/nlohmann_define_type_non_intrusive_macro.cpp create mode 100644 docs/examples/nlohmann_define_type_non_intrusive_macro.output create mode 100644 docs/examples/nlohmann_define_type_non_intrusive_only_serialize_explicit.cpp create mode 100644 docs/examples/nlohmann_define_type_non_intrusive_only_serialize_explicit.output create mode 100644 docs/examples/nlohmann_define_type_non_intrusive_only_serialize_macro.cpp create mode 100644 docs/examples/nlohmann_define_type_non_intrusive_only_serialize_macro.output create mode 100644 docs/examples/nlohmann_define_type_non_intrusive_with_default_explicit.cpp create mode 100644 docs/examples/nlohmann_define_type_non_intrusive_with_default_explicit.output create mode 100644 docs/examples/nlohmann_define_type_non_intrusive_with_default_macro.cpp create mode 100644 docs/examples/nlohmann_define_type_non_intrusive_with_default_macro.output create mode 100644 docs/examples/nlohmann_json_namespace.cpp create mode 100644 docs/examples/nlohmann_json_namespace.output create mode 100644 docs/examples/nlohmann_json_namespace_begin.c++17.cpp create mode 100644 docs/examples/nlohmann_json_namespace_begin.c++17.output create mode 100644 docs/examples/nlohmann_json_namespace_no_version.cpp create mode 100644 docs/examples/nlohmann_json_namespace_no_version.output create mode 100644 docs/examples/nlohmann_json_serialize_enum.cpp create mode 100644 docs/examples/nlohmann_json_serialize_enum.output create mode 100644 docs/examples/nlohmann_json_serialize_enum_2.cpp create mode 100644 docs/examples/nlohmann_json_serialize_enum_2.output create mode 100644 docs/examples/nlohmann_json_version.cpp create mode 100644 docs/examples/nlohmann_json_version.output create mode 100644 docs/examples/number_float_t.cpp create mode 100644 docs/examples/number_float_t.output create mode 100644 docs/examples/number_integer_t.cpp create mode 100644 docs/examples/number_integer_t.output create mode 100644 docs/examples/number_unsigned_t.cpp create mode 100644 docs/examples/number_unsigned_t.output create mode 100644 docs/examples/object.cpp create mode 100644 docs/examples/object.output create mode 100644 docs/examples/object_comparator_t.cpp create mode 100644 docs/examples/object_comparator_t.output create mode 100644 docs/examples/object_t.cpp create mode 100644 docs/examples/object_t.output create mode 100644 docs/examples/operator__ValueType.cpp create mode 100644 docs/examples/operator__ValueType.output create mode 100644 docs/examples/operator__equal.cpp create mode 100644 docs/examples/operator__equal.output create mode 100644 docs/examples/operator__equal__nullptr_t.cpp create mode 100644 docs/examples/operator__equal__nullptr_t.output create mode 100644 docs/examples/operator__equal__specializations.cpp create mode 100644 docs/examples/operator__equal__specializations.output create mode 100644 docs/examples/operator__greater.cpp create mode 100644 docs/examples/operator__greater.output create mode 100644 docs/examples/operator__greaterequal.cpp create mode 100644 docs/examples/operator__greaterequal.output create mode 100644 docs/examples/operator__less.cpp create mode 100644 docs/examples/operator__less.output create mode 100644 docs/examples/operator__lessequal.cpp create mode 100644 docs/examples/operator__lessequal.output create mode 100644 docs/examples/operator__notequal.cpp create mode 100644 docs/examples/operator__notequal.output create mode 100644 docs/examples/operator__notequal__nullptr_t.cpp create mode 100644 docs/examples/operator__notequal__nullptr_t.output create mode 100644 docs/examples/operator__value_t.cpp create mode 100644 docs/examples/operator__value_t.output create mode 100644 docs/examples/operator_array__json_pointer.cpp create mode 100644 docs/examples/operator_array__json_pointer.output create mode 100644 docs/examples/operator_array__json_pointer_const.cpp create mode 100644 docs/examples/operator_array__json_pointer_const.output create mode 100644 docs/examples/operator_array__keytype.c++17.cpp create mode 100644 docs/examples/operator_array__keytype.c++17.output create mode 100644 docs/examples/operator_array__keytype_const.c++17.cpp create mode 100644 docs/examples/operator_array__keytype_const.c++17.output create mode 100644 docs/examples/operator_array__object_t_key_type.cpp create mode 100644 docs/examples/operator_array__object_t_key_type.output create mode 100644 docs/examples/operator_array__object_t_key_type_const.cpp create mode 100644 docs/examples/operator_array__object_t_key_type_const.output create mode 100644 docs/examples/operator_array__size_type.cpp create mode 100644 docs/examples/operator_array__size_type.output create mode 100644 docs/examples/operator_array__size_type_const.cpp create mode 100644 docs/examples/operator_array__size_type_const.output create mode 100644 docs/examples/operator_deserialize.cpp create mode 100644 docs/examples/operator_deserialize.output create mode 100644 docs/examples/operator_literal_json.cpp create mode 100644 docs/examples/operator_literal_json.output create mode 100644 docs/examples/operator_literal_json_pointer.cpp create mode 100644 docs/examples/operator_literal_json_pointer.output create mode 100644 docs/examples/operator_ltlt__basic_json.cpp create mode 100644 docs/examples/operator_ltlt__basic_json.output create mode 100644 docs/examples/operator_ltlt__json_pointer.cpp create mode 100644 docs/examples/operator_ltlt__json_pointer.output create mode 100644 docs/examples/operator_spaceship__const_reference.c++20.cpp create mode 100644 docs/examples/operator_spaceship__const_reference.c++20.output create mode 100644 docs/examples/operator_spaceship__scalartype.c++20.cpp create mode 100644 docs/examples/operator_spaceship__scalartype.c++20.output create mode 100644 docs/examples/ordered_json.cpp create mode 100644 docs/examples/ordered_json.output create mode 100644 docs/examples/ordered_map.cpp create mode 100644 docs/examples/ordered_map.output create mode 100644 docs/examples/other_error.cpp create mode 100644 docs/examples/other_error.output create mode 100644 docs/examples/out_of_range.cpp create mode 100644 docs/examples/out_of_range.output create mode 100644 docs/examples/parse__allow_exceptions.cpp create mode 100644 docs/examples/parse__allow_exceptions.output create mode 100644 docs/examples/parse__array__parser_callback_t.cpp create mode 100644 docs/examples/parse__array__parser_callback_t.output create mode 100644 docs/examples/parse__contiguouscontainer__parser_callback_t.cpp create mode 100644 docs/examples/parse__contiguouscontainer__parser_callback_t.output create mode 100644 docs/examples/parse__istream__parser_callback_t.cpp create mode 100644 docs/examples/parse__istream__parser_callback_t.output create mode 100644 docs/examples/parse__iterator_pair.cpp create mode 100644 docs/examples/parse__iterator_pair.link create mode 100644 docs/examples/parse__iterator_pair.output create mode 100644 docs/examples/parse__pointers.cpp create mode 100644 docs/examples/parse__pointers.link create mode 100644 docs/examples/parse__pointers.output create mode 100644 docs/examples/parse__string__parser_callback_t.cpp create mode 100644 docs/examples/parse__string__parser_callback_t.output create mode 100644 docs/examples/parse_error.cpp create mode 100644 docs/examples/parse_error.output create mode 100644 docs/examples/patch.cpp create mode 100644 docs/examples/patch.output create mode 100644 docs/examples/patch_inplace.cpp create mode 100644 docs/examples/patch_inplace.output create mode 100644 docs/examples/push_back.cpp create mode 100644 docs/examples/push_back.output create mode 100644 docs/examples/push_back__initializer_list.cpp create mode 100644 docs/examples/push_back__initializer_list.output create mode 100644 docs/examples/push_back__object_t__value.cpp create mode 100644 docs/examples/push_back__object_t__value.output create mode 100644 docs/examples/rbegin.cpp create mode 100644 docs/examples/rbegin.output create mode 100644 docs/examples/rend.cpp create mode 100644 docs/examples/rend.output create mode 100644 docs/examples/sax_parse.cpp create mode 100644 docs/examples/sax_parse.output create mode 100644 docs/examples/sax_parse__binary.cpp create mode 100644 docs/examples/sax_parse__binary.output create mode 100644 docs/examples/size.cpp create mode 100644 docs/examples/size.output create mode 100644 docs/examples/std_hash.cpp create mode 100644 docs/examples/std_hash.output create mode 100644 docs/examples/std_swap.cpp create mode 100644 docs/examples/std_swap.output create mode 100644 docs/examples/string_t.cpp create mode 100644 docs/examples/string_t.output create mode 100644 docs/examples/swap__array_t.cpp create mode 100644 docs/examples/swap__array_t.output create mode 100644 docs/examples/swap__binary_t.cpp create mode 100644 docs/examples/swap__binary_t.output create mode 100644 docs/examples/swap__object_t.cpp create mode 100644 docs/examples/swap__object_t.output create mode 100644 docs/examples/swap__reference.cpp create mode 100644 docs/examples/swap__reference.output create mode 100644 docs/examples/swap__string_t.cpp create mode 100644 docs/examples/swap__string_t.output create mode 100644 docs/examples/to_bjdata.cpp create mode 100644 docs/examples/to_bjdata.output create mode 100644 docs/examples/to_bson.cpp create mode 100644 docs/examples/to_bson.output create mode 100644 docs/examples/to_cbor.cpp create mode 100644 docs/examples/to_cbor.output create mode 100644 docs/examples/to_json.cpp create mode 100644 docs/examples/to_json.output create mode 100644 docs/examples/to_msgpack.cpp create mode 100644 docs/examples/to_msgpack.output create mode 100644 docs/examples/to_string.cpp create mode 100644 docs/examples/to_string.output create mode 100644 docs/examples/to_ubjson.cpp create mode 100644 docs/examples/to_ubjson.output create mode 100644 docs/examples/type.cpp create mode 100644 docs/examples/type.output create mode 100644 docs/examples/type_error.cpp create mode 100644 docs/examples/type_error.output create mode 100644 docs/examples/type_name.cpp create mode 100644 docs/examples/type_name.output create mode 100644 docs/examples/unflatten.cpp create mode 100644 docs/examples/unflatten.output create mode 100644 docs/examples/update.cpp create mode 100644 docs/examples/update.output create mode 100644 docs/examples/update__range.cpp create mode 100644 docs/examples/update__range.output create mode 100644 docs/examples/value__json_ptr.cpp create mode 100644 docs/examples/value__json_ptr.output create mode 100644 docs/examples/value__keytype.c++17.cpp create mode 100644 docs/examples/value__keytype.c++17.output create mode 100644 docs/examples/value__object_t_key_type.cpp create mode 100644 docs/examples/value__object_t_key_type.output create mode 100644 docs/json.gif create mode 100644 docs/mkdocs/Makefile create mode 100644 docs/mkdocs/docs/api/adl_serializer/from_json.md create mode 100644 docs/mkdocs/docs/api/adl_serializer/index.md create mode 100644 docs/mkdocs/docs/api/adl_serializer/to_json.md create mode 100644 docs/mkdocs/docs/api/basic_json/accept.md create mode 100644 docs/mkdocs/docs/api/basic_json/array.md create mode 100644 docs/mkdocs/docs/api/basic_json/array_t.md create mode 100644 docs/mkdocs/docs/api/basic_json/at.md create mode 100644 docs/mkdocs/docs/api/basic_json/back.md create mode 100644 docs/mkdocs/docs/api/basic_json/basic_json.md create mode 100644 docs/mkdocs/docs/api/basic_json/begin.md create mode 100644 docs/mkdocs/docs/api/basic_json/binary.md create mode 100644 docs/mkdocs/docs/api/basic_json/binary_t.md create mode 100644 docs/mkdocs/docs/api/basic_json/boolean_t.md create mode 100644 docs/mkdocs/docs/api/basic_json/cbegin.md create mode 100644 docs/mkdocs/docs/api/basic_json/cbor_tag_handler_t.md create mode 100644 docs/mkdocs/docs/api/basic_json/cend.md create mode 100644 docs/mkdocs/docs/api/basic_json/clear.md create mode 100644 docs/mkdocs/docs/api/basic_json/contains.md create mode 100644 docs/mkdocs/docs/api/basic_json/count.md create mode 100644 docs/mkdocs/docs/api/basic_json/crbegin.md create mode 100644 docs/mkdocs/docs/api/basic_json/crend.md create mode 100644 docs/mkdocs/docs/api/basic_json/default_object_comparator_t.md create mode 100644 docs/mkdocs/docs/api/basic_json/diff.md create mode 100644 docs/mkdocs/docs/api/basic_json/dump.md create mode 100644 docs/mkdocs/docs/api/basic_json/emplace.md create mode 100644 docs/mkdocs/docs/api/basic_json/emplace_back.md create mode 100644 docs/mkdocs/docs/api/basic_json/empty.md create mode 100644 docs/mkdocs/docs/api/basic_json/end.md create mode 100644 docs/mkdocs/docs/api/basic_json/erase.md create mode 100644 docs/mkdocs/docs/api/basic_json/error_handler_t.md create mode 100644 docs/mkdocs/docs/api/basic_json/exception.md create mode 100644 docs/mkdocs/docs/api/basic_json/find.md create mode 100644 docs/mkdocs/docs/api/basic_json/flatten.md create mode 100644 docs/mkdocs/docs/api/basic_json/from_bjdata.md create mode 100644 docs/mkdocs/docs/api/basic_json/from_bson.md create mode 100644 docs/mkdocs/docs/api/basic_json/from_cbor.md create mode 100644 docs/mkdocs/docs/api/basic_json/from_msgpack.md create mode 100644 docs/mkdocs/docs/api/basic_json/from_ubjson.md create mode 100644 docs/mkdocs/docs/api/basic_json/front.md create mode 100644 docs/mkdocs/docs/api/basic_json/get.md create mode 100644 docs/mkdocs/docs/api/basic_json/get_allocator.md create mode 100644 docs/mkdocs/docs/api/basic_json/get_binary.md create mode 100644 docs/mkdocs/docs/api/basic_json/get_ptr.md create mode 100644 docs/mkdocs/docs/api/basic_json/get_ref.md create mode 100644 docs/mkdocs/docs/api/basic_json/get_to.md create mode 100644 docs/mkdocs/docs/api/basic_json/index.md create mode 100644 docs/mkdocs/docs/api/basic_json/input_format_t.md create mode 100644 docs/mkdocs/docs/api/basic_json/insert.md create mode 100644 docs/mkdocs/docs/api/basic_json/invalid_iterator.md create mode 100644 docs/mkdocs/docs/api/basic_json/is_array.md create mode 100644 docs/mkdocs/docs/api/basic_json/is_binary.md create mode 100644 docs/mkdocs/docs/api/basic_json/is_boolean.md create mode 100644 docs/mkdocs/docs/api/basic_json/is_discarded.md create mode 100644 docs/mkdocs/docs/api/basic_json/is_null.md create mode 100644 docs/mkdocs/docs/api/basic_json/is_number.md create mode 100644 docs/mkdocs/docs/api/basic_json/is_number_float.md create mode 100644 docs/mkdocs/docs/api/basic_json/is_number_integer.md create mode 100644 docs/mkdocs/docs/api/basic_json/is_number_unsigned.md create mode 100644 docs/mkdocs/docs/api/basic_json/is_object.md create mode 100644 docs/mkdocs/docs/api/basic_json/is_primitive.md create mode 100644 docs/mkdocs/docs/api/basic_json/is_string.md create mode 100644 docs/mkdocs/docs/api/basic_json/is_structured.md create mode 100644 docs/mkdocs/docs/api/basic_json/items.md create mode 100644 docs/mkdocs/docs/api/basic_json/json_base_class_t.md create mode 100644 docs/mkdocs/docs/api/basic_json/json_serializer.md create mode 100644 docs/mkdocs/docs/api/basic_json/max_size.md create mode 100644 docs/mkdocs/docs/api/basic_json/merge_patch.md create mode 100644 docs/mkdocs/docs/api/basic_json/meta.md create mode 100644 docs/mkdocs/docs/api/basic_json/number_float_t.md create mode 100644 docs/mkdocs/docs/api/basic_json/number_integer_t.md create mode 100644 docs/mkdocs/docs/api/basic_json/number_unsigned_t.md create mode 100644 docs/mkdocs/docs/api/basic_json/object.md create mode 100644 docs/mkdocs/docs/api/basic_json/object_comparator_t.md create mode 100644 docs/mkdocs/docs/api/basic_json/object_t.md create mode 100644 docs/mkdocs/docs/api/basic_json/operator+=.md create mode 100644 docs/mkdocs/docs/api/basic_json/operator=.md create mode 100644 docs/mkdocs/docs/api/basic_json/operator[].md create mode 100644 docs/mkdocs/docs/api/basic_json/operator_ValueType.md create mode 100644 docs/mkdocs/docs/api/basic_json/operator_eq.md create mode 100644 docs/mkdocs/docs/api/basic_json/operator_ge.md create mode 100644 docs/mkdocs/docs/api/basic_json/operator_gt.md create mode 100644 docs/mkdocs/docs/api/basic_json/operator_le.md create mode 100644 docs/mkdocs/docs/api/basic_json/operator_lt.md create mode 100644 docs/mkdocs/docs/api/basic_json/operator_ne.md create mode 100644 docs/mkdocs/docs/api/basic_json/operator_spaceship.md create mode 100644 docs/mkdocs/docs/api/basic_json/operator_value_t.md create mode 100644 docs/mkdocs/docs/api/basic_json/other_error.md create mode 100644 docs/mkdocs/docs/api/basic_json/out_of_range.md create mode 100644 docs/mkdocs/docs/api/basic_json/parse.md create mode 100644 docs/mkdocs/docs/api/basic_json/parse_error.md create mode 100644 docs/mkdocs/docs/api/basic_json/parse_event_t.md create mode 100644 docs/mkdocs/docs/api/basic_json/parser_callback_t.md create mode 100644 docs/mkdocs/docs/api/basic_json/patch.md create mode 100644 docs/mkdocs/docs/api/basic_json/patch_inplace.md create mode 100644 docs/mkdocs/docs/api/basic_json/push_back.md create mode 100644 docs/mkdocs/docs/api/basic_json/rbegin.md create mode 100644 docs/mkdocs/docs/api/basic_json/rend.md create mode 100644 docs/mkdocs/docs/api/basic_json/sax_parse.md create mode 100644 docs/mkdocs/docs/api/basic_json/size.md create mode 100644 docs/mkdocs/docs/api/basic_json/std_hash.md create mode 100644 docs/mkdocs/docs/api/basic_json/std_swap.md create mode 100644 docs/mkdocs/docs/api/basic_json/string_t.md create mode 100644 docs/mkdocs/docs/api/basic_json/swap.md create mode 100644 docs/mkdocs/docs/api/basic_json/to_bjdata.md create mode 100644 docs/mkdocs/docs/api/basic_json/to_bson.md create mode 100644 docs/mkdocs/docs/api/basic_json/to_cbor.md create mode 100644 docs/mkdocs/docs/api/basic_json/to_msgpack.md create mode 100644 docs/mkdocs/docs/api/basic_json/to_string.md create mode 100644 docs/mkdocs/docs/api/basic_json/to_ubjson.md create mode 100644 docs/mkdocs/docs/api/basic_json/type.md create mode 100644 docs/mkdocs/docs/api/basic_json/type_error.md create mode 100644 docs/mkdocs/docs/api/basic_json/type_name.md create mode 100644 docs/mkdocs/docs/api/basic_json/unflatten.md create mode 100644 docs/mkdocs/docs/api/basic_json/update.md create mode 100644 docs/mkdocs/docs/api/basic_json/value.md create mode 100644 docs/mkdocs/docs/api/basic_json/value_t.md create mode 100644 docs/mkdocs/docs/api/basic_json/~basic_json.md create mode 100644 docs/mkdocs/docs/api/byte_container_with_subtype/byte_container_with_subtype.md create mode 100644 docs/mkdocs/docs/api/byte_container_with_subtype/clear_subtype.md create mode 100644 docs/mkdocs/docs/api/byte_container_with_subtype/has_subtype.md create mode 100644 docs/mkdocs/docs/api/byte_container_with_subtype/index.md create mode 100644 docs/mkdocs/docs/api/byte_container_with_subtype/set_subtype.md create mode 100644 docs/mkdocs/docs/api/byte_container_with_subtype/subtype.md create mode 100644 docs/mkdocs/docs/api/json.md create mode 100644 docs/mkdocs/docs/api/json_pointer/back.md create mode 100644 docs/mkdocs/docs/api/json_pointer/empty.md create mode 100644 docs/mkdocs/docs/api/json_pointer/index.md create mode 100644 docs/mkdocs/docs/api/json_pointer/json_pointer.md create mode 100644 docs/mkdocs/docs/api/json_pointer/operator_eq.md create mode 100644 docs/mkdocs/docs/api/json_pointer/operator_ne.md create mode 100644 docs/mkdocs/docs/api/json_pointer/operator_slash.md create mode 100644 docs/mkdocs/docs/api/json_pointer/operator_slasheq.md create mode 100644 docs/mkdocs/docs/api/json_pointer/operator_string_t.md create mode 100644 docs/mkdocs/docs/api/json_pointer/parent_pointer.md create mode 100644 docs/mkdocs/docs/api/json_pointer/pop_back.md create mode 100644 docs/mkdocs/docs/api/json_pointer/push_back.md create mode 100644 docs/mkdocs/docs/api/json_pointer/string_t.md create mode 100644 docs/mkdocs/docs/api/json_pointer/to_string.md create mode 100644 docs/mkdocs/docs/api/json_sax/binary.md create mode 100644 docs/mkdocs/docs/api/json_sax/boolean.md create mode 100644 docs/mkdocs/docs/api/json_sax/end_array.md create mode 100644 docs/mkdocs/docs/api/json_sax/end_object.md create mode 100644 docs/mkdocs/docs/api/json_sax/index.md create mode 100644 docs/mkdocs/docs/api/json_sax/key.md create mode 100644 docs/mkdocs/docs/api/json_sax/null.md create mode 100644 docs/mkdocs/docs/api/json_sax/number_float.md create mode 100644 docs/mkdocs/docs/api/json_sax/number_integer.md create mode 100644 docs/mkdocs/docs/api/json_sax/number_unsigned.md create mode 100644 docs/mkdocs/docs/api/json_sax/parse_error.md create mode 100644 docs/mkdocs/docs/api/json_sax/start_array.md create mode 100644 docs/mkdocs/docs/api/json_sax/start_object.md create mode 100644 docs/mkdocs/docs/api/json_sax/string.md create mode 100644 docs/mkdocs/docs/api/macros/index.md create mode 100644 docs/mkdocs/docs/api/macros/json_assert.md create mode 100644 docs/mkdocs/docs/api/macros/json_diagnostics.md create mode 100644 docs/mkdocs/docs/api/macros/json_disable_enum_serialization.md create mode 100644 docs/mkdocs/docs/api/macros/json_has_cpp_11.md create mode 100644 docs/mkdocs/docs/api/macros/json_has_filesystem.md create mode 100644 docs/mkdocs/docs/api/macros/json_has_ranges.md create mode 100644 docs/mkdocs/docs/api/macros/json_has_static_rtti.md create mode 100644 docs/mkdocs/docs/api/macros/json_has_three_way_comparison.md create mode 100644 docs/mkdocs/docs/api/macros/json_no_io.md create mode 100644 docs/mkdocs/docs/api/macros/json_noexception.md create mode 100644 docs/mkdocs/docs/api/macros/json_skip_library_version_check.md create mode 100644 docs/mkdocs/docs/api/macros/json_skip_unsupported_compiler_check.md create mode 100644 docs/mkdocs/docs/api/macros/json_throw_user.md create mode 100644 docs/mkdocs/docs/api/macros/json_use_global_udls.md create mode 100644 docs/mkdocs/docs/api/macros/json_use_implicit_conversions.md create mode 100644 docs/mkdocs/docs/api/macros/json_use_legacy_discarded_value_comparison.md create mode 100644 docs/mkdocs/docs/api/macros/nlohmann_define_type_intrusive.md create mode 100644 docs/mkdocs/docs/api/macros/nlohmann_define_type_non_intrusive.md create mode 100644 docs/mkdocs/docs/api/macros/nlohmann_json_namespace.md create mode 100644 docs/mkdocs/docs/api/macros/nlohmann_json_namespace_begin.md create mode 100644 docs/mkdocs/docs/api/macros/nlohmann_json_namespace_no_version.md create mode 100644 docs/mkdocs/docs/api/macros/nlohmann_json_serialize_enum.md create mode 100644 docs/mkdocs/docs/api/macros/nlohmann_json_version_major.md create mode 100644 docs/mkdocs/docs/api/operator_gtgt.md create mode 100644 docs/mkdocs/docs/api/operator_literal_json.md create mode 100644 docs/mkdocs/docs/api/operator_literal_json_pointer.md create mode 100644 docs/mkdocs/docs/api/operator_ltlt.md create mode 100644 docs/mkdocs/docs/api/ordered_json.md create mode 100644 docs/mkdocs/docs/api/ordered_map.md create mode 100644 docs/mkdocs/docs/css/custom.css create mode 100644 docs/mkdocs/docs/features/arbitrary_types.md create mode 100644 docs/mkdocs/docs/features/assertions.md create mode 100644 docs/mkdocs/docs/features/binary_formats/bjdata.md create mode 100644 docs/mkdocs/docs/features/binary_formats/bson.md create mode 100644 docs/mkdocs/docs/features/binary_formats/cbor.md create mode 100644 docs/mkdocs/docs/features/binary_formats/index.md create mode 100644 docs/mkdocs/docs/features/binary_formats/messagepack.md create mode 100644 docs/mkdocs/docs/features/binary_formats/ubjson.md create mode 100644 docs/mkdocs/docs/features/binary_values.md create mode 100644 docs/mkdocs/docs/features/comments.md create mode 100644 docs/mkdocs/docs/features/element_access/checked_access.md create mode 100644 docs/mkdocs/docs/features/element_access/default_value.md create mode 100644 docs/mkdocs/docs/features/element_access/index.md create mode 100644 docs/mkdocs/docs/features/element_access/unchecked_access.md create mode 100644 docs/mkdocs/docs/features/enum_conversion.md create mode 100644 docs/mkdocs/docs/features/iterators.md create mode 100644 docs/mkdocs/docs/features/json_patch.md create mode 100644 docs/mkdocs/docs/features/json_pointer.md create mode 100644 docs/mkdocs/docs/features/macros.md create mode 100644 docs/mkdocs/docs/features/merge_patch.md create mode 100644 docs/mkdocs/docs/features/namespace.md create mode 100644 docs/mkdocs/docs/features/object_order.md create mode 100644 docs/mkdocs/docs/features/parsing/index.md create mode 100644 docs/mkdocs/docs/features/parsing/json_lines.md create mode 100644 docs/mkdocs/docs/features/parsing/parse_exceptions.md create mode 100644 docs/mkdocs/docs/features/parsing/parser_callbacks.md create mode 100644 docs/mkdocs/docs/features/parsing/sax_interface.md create mode 100644 docs/mkdocs/docs/features/types/index.md create mode 100644 docs/mkdocs/docs/features/types/number_handling.md create mode 100644 docs/mkdocs/docs/home/code_of_conduct.md create mode 100644 docs/mkdocs/docs/home/design_goals.md create mode 100644 docs/mkdocs/docs/home/exceptions.md create mode 100644 docs/mkdocs/docs/home/faq.md create mode 100644 docs/mkdocs/docs/home/license.md create mode 100644 docs/mkdocs/docs/home/releases.md create mode 100644 docs/mkdocs/docs/home/sponsors.md create mode 100644 docs/mkdocs/docs/images/callback_events.png create mode 100644 docs/mkdocs/docs/images/json_syntax_number.png create mode 100644 docs/mkdocs/docs/images/range-begin-end.svg create mode 100644 docs/mkdocs/docs/images/range-rbegin-rend.svg create mode 100644 docs/mkdocs/docs/index.md create mode 100644 docs/mkdocs/docs/integration/cmake.md create mode 100644 docs/mkdocs/docs/integration/conan/CMakeLists.txt create mode 100644 docs/mkdocs/docs/integration/conan/Conanfile.txt create mode 100644 docs/mkdocs/docs/integration/conan/example.cpp create mode 100644 docs/mkdocs/docs/integration/example.cpp create mode 100644 docs/mkdocs/docs/integration/index.md create mode 100644 docs/mkdocs/docs/integration/migration_guide.md create mode 100644 docs/mkdocs/docs/integration/package_managers.md create mode 100644 docs/mkdocs/docs/integration/pkg-config.md create mode 100644 docs/mkdocs/docs/integration/vcpkg/CMakeLists.txt create mode 100644 docs/mkdocs/docs/integration/vcpkg/example.cpp create mode 100644 docs/mkdocs/mkdocs.yml create mode 100644 docs/mkdocs/requirements.txt create mode 100755 docs/mkdocs/scripts/check_structure.py create mode 100755 docs/usages/ios.png create mode 100644 docs/usages/macos.png create mode 100644 include/nlohmann/adl_serializer.hpp create mode 100644 include/nlohmann/byte_container_with_subtype.hpp create mode 100644 include/nlohmann/detail/abi_macros.hpp create mode 100644 include/nlohmann/detail/conversions/from_json.hpp create mode 100644 include/nlohmann/detail/conversions/to_chars.hpp create mode 100644 include/nlohmann/detail/conversions/to_json.hpp create mode 100644 include/nlohmann/detail/exceptions.hpp create mode 100644 include/nlohmann/detail/hash.hpp create mode 100644 include/nlohmann/detail/input/binary_reader.hpp create mode 100644 include/nlohmann/detail/input/input_adapters.hpp create mode 100644 include/nlohmann/detail/input/json_sax.hpp create mode 100644 include/nlohmann/detail/input/lexer.hpp create mode 100644 include/nlohmann/detail/input/parser.hpp create mode 100644 include/nlohmann/detail/input/position_t.hpp create mode 100644 include/nlohmann/detail/iterators/internal_iterator.hpp create mode 100644 include/nlohmann/detail/iterators/iter_impl.hpp create mode 100644 include/nlohmann/detail/iterators/iteration_proxy.hpp create mode 100644 include/nlohmann/detail/iterators/iterator_traits.hpp create mode 100644 include/nlohmann/detail/iterators/json_reverse_iterator.hpp create mode 100644 include/nlohmann/detail/iterators/primitive_iterator.hpp create mode 100644 include/nlohmann/detail/json_custom_base_class.hpp create mode 100644 include/nlohmann/detail/json_pointer.hpp create mode 100644 include/nlohmann/detail/json_ref.hpp create mode 100644 include/nlohmann/detail/macro_scope.hpp create mode 100644 include/nlohmann/detail/macro_unscope.hpp create mode 100644 include/nlohmann/detail/meta/call_std/begin.hpp create mode 100644 include/nlohmann/detail/meta/call_std/end.hpp create mode 100644 include/nlohmann/detail/meta/cpp_future.hpp create mode 100644 include/nlohmann/detail/meta/detected.hpp create mode 100644 include/nlohmann/detail/meta/identity_tag.hpp create mode 100644 include/nlohmann/detail/meta/is_sax.hpp create mode 100644 include/nlohmann/detail/meta/std_fs.hpp create mode 100644 include/nlohmann/detail/meta/type_traits.hpp create mode 100644 include/nlohmann/detail/meta/void_t.hpp create mode 100644 include/nlohmann/detail/output/binary_writer.hpp create mode 100644 include/nlohmann/detail/output/output_adapters.hpp create mode 100644 include/nlohmann/detail/output/serializer.hpp create mode 100644 include/nlohmann/detail/string_concat.hpp create mode 100644 include/nlohmann/detail/string_escape.hpp create mode 100644 include/nlohmann/detail/value_t.hpp create mode 100644 include/nlohmann/json.hpp create mode 100644 include/nlohmann/json_fwd.hpp create mode 100644 include/nlohmann/ordered_map.hpp create mode 100644 include/nlohmann/thirdparty/hedley/hedley.hpp create mode 100644 include/nlohmann/thirdparty/hedley/hedley_undef.hpp create mode 100644 meson.build create mode 100644 nlohmann_json.natvis create mode 100644 single_include/nlohmann/json.hpp create mode 100644 single_include/nlohmann/json_fwd.hpp create mode 100644 tests/CMakeLists.txt create mode 100644 tests/Makefile create mode 100644 tests/abi/CMakeLists.txt create mode 100644 tests/abi/config/CMakeLists.txt create mode 100644 tests/abi/config/config.hpp create mode 100644 tests/abi/config/custom.cpp create mode 100644 tests/abi/config/default.cpp create mode 100644 tests/abi/config/noversion.cpp create mode 100644 tests/abi/diag/CMakeLists.txt create mode 100644 tests/abi/diag/diag.cpp create mode 100644 tests/abi/diag/diag.hpp create mode 100644 tests/abi/diag/diag_off.cpp create mode 100644 tests/abi/diag/diag_on.cpp create mode 100644 tests/abi/include/nlohmann/json_v3_10_5.hpp create mode 100644 tests/abi/inline_ns/CMakeLists.txt create mode 100644 tests/abi/inline_ns/use_current.cpp create mode 100644 tests/abi/inline_ns/use_v3_10_5.cpp create mode 100644 tests/abi/main.cpp create mode 100644 tests/benchmarks/CMakeLists.txt create mode 100644 tests/benchmarks/src/benchmarks.cpp create mode 100644 tests/cmake_add_subdirectory/CMakeLists.txt create mode 100644 tests/cmake_add_subdirectory/project/CMakeLists.txt create mode 100644 tests/cmake_add_subdirectory/project/main.cpp create mode 100644 tests/cmake_fetch_content/CMakeLists.txt create mode 100644 tests/cmake_fetch_content/project/CMakeLists.txt create mode 100644 tests/cmake_fetch_content/project/main.cpp create mode 100644 tests/cmake_fetch_content2/CMakeLists.txt create mode 100644 tests/cmake_fetch_content2/project/CMakeLists.txt create mode 100644 tests/cmake_fetch_content2/project/main.cpp create mode 100644 tests/cmake_import/CMakeLists.txt create mode 100644 tests/cmake_import/project/CMakeLists.txt create mode 100644 tests/cmake_import/project/main.cpp create mode 100644 tests/cmake_import_minver/CMakeLists.txt create mode 100644 tests/cmake_import_minver/project/CMakeLists.txt create mode 100644 tests/cmake_import_minver/project/main.cpp create mode 100644 tests/cmake_target_include_directories/CMakeLists.txt create mode 100644 tests/cmake_target_include_directories/project/Bar.cpp create mode 100644 tests/cmake_target_include_directories/project/Bar.hpp create mode 100644 tests/cmake_target_include_directories/project/CMakeLists.txt create mode 100644 tests/cmake_target_include_directories/project/Foo.cpp create mode 100644 tests/cmake_target_include_directories/project/Foo.hpp create mode 100644 tests/cmake_target_include_directories/project/main.cpp create mode 100644 tests/cuda_example/CMakeLists.txt create mode 100644 tests/cuda_example/json_cuda.cu create mode 100644 tests/fuzzing.md create mode 100644 tests/reports/2016-08-29-fuzz/exec_speed.png create mode 100644 tests/reports/2016-08-29-fuzz/fuzz.tiff create mode 100644 tests/reports/2016-08-29-fuzz/high_freq.png create mode 100644 tests/reports/2016-08-29-fuzz/index.html create mode 100644 tests/reports/2016-08-29-fuzz/low_freq.png create mode 100644 tests/reports/2016-09-09-nativejson_benchmark/README.md create mode 100644 tests/reports/2016-09-09-nativejson_benchmark/conformance_Nlohmann (C++11).md create mode 100644 tests/reports/2016-09-09-nativejson_benchmark/conformance_overall_Result.png create mode 100644 tests/reports/2016-09-09-nativejson_benchmark/performance_Corei7-4980HQ@2.80GHz_mac64_clang7.0_1._Parse_Memory_(byte).png create mode 100644 tests/reports/2016-09-09-nativejson_benchmark/performance_Corei7-4980HQ@2.80GHz_mac64_clang7.0_1._Parse_Time_(ms).png create mode 100644 tests/reports/2016-09-09-nativejson_benchmark/performance_Corei7-4980HQ@2.80GHz_mac64_clang7.0_2._Stringify_Time_(ms).png create mode 100644 tests/reports/2016-09-09-nativejson_benchmark/performance_Corei7-4980HQ@2.80GHz_mac64_clang7.0_3._Prettify_Time_(ms).png create mode 100644 tests/reports/2016-09-09-nativejson_benchmark/performance_Corei7-4980HQ@2.80GHz_mac64_clang7.0_7._Code_size_FileSize_(byte).png create mode 100644 tests/reports/2016-10-02-fuzz/exec_speed.png create mode 100644 tests/reports/2016-10-02-fuzz/fuzz.tiff create mode 100644 tests/reports/2016-10-02-fuzz/high_freq.png create mode 100644 tests/reports/2016-10-02-fuzz/index.html create mode 100644 tests/reports/2016-10-02-fuzz/low_freq.png create mode 100644 tests/src/fuzzer-driver_afl.cpp create mode 100644 tests/src/fuzzer-parse_bjdata.cpp create mode 100644 tests/src/fuzzer-parse_bson.cpp create mode 100644 tests/src/fuzzer-parse_cbor.cpp create mode 100644 tests/src/fuzzer-parse_json.cpp create mode 100644 tests/src/fuzzer-parse_msgpack.cpp create mode 100644 tests/src/fuzzer-parse_ubjson.cpp create mode 100644 tests/src/make_test_data_available.hpp create mode 100644 tests/src/test_utils.hpp create mode 100644 tests/src/unit-32bit.cpp create mode 100644 tests/src/unit-algorithms.cpp create mode 100644 tests/src/unit-allocator.cpp create mode 100644 tests/src/unit-alt-string.cpp create mode 100644 tests/src/unit-assert_macro.cpp create mode 100644 tests/src/unit-binary_formats.cpp create mode 100644 tests/src/unit-bjdata.cpp create mode 100644 tests/src/unit-bson.cpp create mode 100644 tests/src/unit-byte_container_with_subtype.cpp create mode 100644 tests/src/unit-capacity.cpp create mode 100644 tests/src/unit-cbor.cpp create mode 100644 tests/src/unit-class_const_iterator.cpp create mode 100644 tests/src/unit-class_iterator.cpp create mode 100644 tests/src/unit-class_lexer.cpp create mode 100644 tests/src/unit-class_parser.cpp create mode 100644 tests/src/unit-comparison.cpp create mode 100644 tests/src/unit-concepts.cpp create mode 100644 tests/src/unit-constructor1.cpp create mode 100644 tests/src/unit-constructor2.cpp create mode 100644 tests/src/unit-convenience.cpp create mode 100644 tests/src/unit-conversions.cpp create mode 100644 tests/src/unit-custom-base-class.cpp create mode 100644 tests/src/unit-deserialization.cpp create mode 100644 tests/src/unit-diagnostics.cpp create mode 100644 tests/src/unit-disabled_exceptions.cpp create mode 100644 tests/src/unit-element_access1.cpp create mode 100644 tests/src/unit-element_access2.cpp create mode 100644 tests/src/unit-hash.cpp create mode 100644 tests/src/unit-inspection.cpp create mode 100644 tests/src/unit-items.cpp create mode 100644 tests/src/unit-iterators1.cpp create mode 100644 tests/src/unit-iterators2.cpp create mode 100644 tests/src/unit-json_patch.cpp create mode 100644 tests/src/unit-json_pointer.cpp create mode 100644 tests/src/unit-large_json.cpp create mode 100644 tests/src/unit-merge_patch.cpp create mode 100644 tests/src/unit-meta.cpp create mode 100644 tests/src/unit-modifiers.cpp create mode 100644 tests/src/unit-msgpack.cpp create mode 100644 tests/src/unit-no-mem-leak-on-adl-serialize.cpp create mode 100644 tests/src/unit-noexcept.cpp create mode 100644 tests/src/unit-ordered_json.cpp create mode 100644 tests/src/unit-ordered_map.cpp create mode 100644 tests/src/unit-pointer_access.cpp create mode 100644 tests/src/unit-readme.cpp create mode 100644 tests/src/unit-reference_access.cpp create mode 100644 tests/src/unit-regression1.cpp create mode 100644 tests/src/unit-regression2.cpp create mode 100644 tests/src/unit-serialization.cpp create mode 100644 tests/src/unit-testsuites.cpp create mode 100644 tests/src/unit-to_chars.cpp create mode 100644 tests/src/unit-type_traits.cpp create mode 100644 tests/src/unit-ubjson.cpp create mode 100644 tests/src/unit-udl.cpp create mode 100644 tests/src/unit-udt.cpp create mode 100644 tests/src/unit-udt_macro.cpp create mode 100644 tests/src/unit-unicode1.cpp create mode 100644 tests/src/unit-unicode2.cpp create mode 100644 tests/src/unit-unicode3.cpp create mode 100644 tests/src/unit-unicode4.cpp create mode 100644 tests/src/unit-unicode5.cpp create mode 100644 tests/src/unit-user_defined_input.cpp create mode 100644 tests/src/unit-windows_h.cpp create mode 100644 tests/src/unit-wstring.cpp create mode 100644 tests/src/unit.cpp create mode 100644 tests/thirdparty/Fuzzer/CMakeLists.txt create mode 100644 tests/thirdparty/Fuzzer/FuzzerCorpus.h create mode 100644 tests/thirdparty/Fuzzer/FuzzerCrossOver.cpp create mode 100644 tests/thirdparty/Fuzzer/FuzzerDefs.h create mode 100644 tests/thirdparty/Fuzzer/FuzzerDictionary.h create mode 100644 tests/thirdparty/Fuzzer/FuzzerDriver.cpp create mode 100644 tests/thirdparty/Fuzzer/FuzzerExtFunctions.def create mode 100644 tests/thirdparty/Fuzzer/FuzzerExtFunctions.h create mode 100644 tests/thirdparty/Fuzzer/FuzzerExtFunctionsDlsym.cpp create mode 100644 tests/thirdparty/Fuzzer/FuzzerExtFunctionsWeak.cpp create mode 100644 tests/thirdparty/Fuzzer/FuzzerExtFunctionsWeakAlias.cpp create mode 100644 tests/thirdparty/Fuzzer/FuzzerFlags.def create mode 100644 tests/thirdparty/Fuzzer/FuzzerIO.cpp create mode 100644 tests/thirdparty/Fuzzer/FuzzerIO.h create mode 100644 tests/thirdparty/Fuzzer/FuzzerIOPosix.cpp create mode 100644 tests/thirdparty/Fuzzer/FuzzerIOWindows.cpp create mode 100644 tests/thirdparty/Fuzzer/FuzzerInterface.h create mode 100644 tests/thirdparty/Fuzzer/FuzzerInternal.h create mode 100644 tests/thirdparty/Fuzzer/FuzzerLoop.cpp create mode 100644 tests/thirdparty/Fuzzer/FuzzerMain.cpp create mode 100644 tests/thirdparty/Fuzzer/FuzzerMerge.cpp create mode 100644 tests/thirdparty/Fuzzer/FuzzerMerge.h create mode 100644 tests/thirdparty/Fuzzer/FuzzerMutate.cpp create mode 100644 tests/thirdparty/Fuzzer/FuzzerMutate.h create mode 100644 tests/thirdparty/Fuzzer/FuzzerOptions.h create mode 100644 tests/thirdparty/Fuzzer/FuzzerRandom.h create mode 100644 tests/thirdparty/Fuzzer/FuzzerSHA1.cpp create mode 100644 tests/thirdparty/Fuzzer/FuzzerSHA1.h create mode 100644 tests/thirdparty/Fuzzer/FuzzerTracePC.cpp create mode 100644 tests/thirdparty/Fuzzer/FuzzerTracePC.h create mode 100644 tests/thirdparty/Fuzzer/FuzzerTraceState.cpp create mode 100644 tests/thirdparty/Fuzzer/FuzzerUtil.cpp create mode 100644 tests/thirdparty/Fuzzer/FuzzerUtil.h create mode 100644 tests/thirdparty/Fuzzer/FuzzerUtilDarwin.cpp create mode 100644 tests/thirdparty/Fuzzer/FuzzerUtilLinux.cpp create mode 100644 tests/thirdparty/Fuzzer/FuzzerUtilPosix.cpp create mode 100644 tests/thirdparty/Fuzzer/FuzzerUtilWindows.cpp create mode 100644 tests/thirdparty/Fuzzer/FuzzerValueBitMap.h create mode 100644 tests/thirdparty/Fuzzer/README.txt create mode 100644 tests/thirdparty/Fuzzer/afl/afl_driver.cpp create mode 100755 tests/thirdparty/Fuzzer/build.sh create mode 100644 tests/thirdparty/Fuzzer/cxx.dict create mode 100644 tests/thirdparty/Fuzzer/standalone/StandaloneFuzzTargetMain.c create mode 100644 tests/thirdparty/Fuzzer/test/AFLDriverTest.cpp create mode 100644 tests/thirdparty/Fuzzer/test/AbsNegAndConstant64Test.cpp create mode 100644 tests/thirdparty/Fuzzer/test/AbsNegAndConstantTest.cpp create mode 100644 tests/thirdparty/Fuzzer/test/AccumulateAllocationsTest.cpp create mode 100644 tests/thirdparty/Fuzzer/test/BufferOverflowOnInput.cpp create mode 100644 tests/thirdparty/Fuzzer/test/CMakeLists.txt create mode 100644 tests/thirdparty/Fuzzer/test/CallerCalleeTest.cpp create mode 100644 tests/thirdparty/Fuzzer/test/CounterTest.cpp create mode 100644 tests/thirdparty/Fuzzer/test/CustomCrossOverTest.cpp create mode 100644 tests/thirdparty/Fuzzer/test/CustomMutatorTest.cpp create mode 100644 tests/thirdparty/Fuzzer/test/DSO1.cpp create mode 100644 tests/thirdparty/Fuzzer/test/DSO2.cpp create mode 100644 tests/thirdparty/Fuzzer/test/DSOTestExtra.cpp create mode 100644 tests/thirdparty/Fuzzer/test/DSOTestMain.cpp create mode 100644 tests/thirdparty/Fuzzer/test/DivTest.cpp create mode 100644 tests/thirdparty/Fuzzer/test/EmptyTest.cpp create mode 100644 tests/thirdparty/Fuzzer/test/FourIndependentBranchesTest.cpp create mode 100644 tests/thirdparty/Fuzzer/test/FullCoverageSetTest.cpp create mode 100644 tests/thirdparty/Fuzzer/test/FuzzerUnittest.cpp create mode 100644 tests/thirdparty/Fuzzer/test/InitializeTest.cpp create mode 100644 tests/thirdparty/Fuzzer/test/LeakTest.cpp create mode 100644 tests/thirdparty/Fuzzer/test/LeakTimeoutTest.cpp create mode 100644 tests/thirdparty/Fuzzer/test/LoadTest.cpp create mode 100644 tests/thirdparty/Fuzzer/test/MemcmpTest.cpp create mode 100644 tests/thirdparty/Fuzzer/test/NthRunCrashTest.cpp create mode 100644 tests/thirdparty/Fuzzer/test/NullDerefOnEmptyTest.cpp create mode 100644 tests/thirdparty/Fuzzer/test/NullDerefTest.cpp create mode 100644 tests/thirdparty/Fuzzer/test/OneHugeAllocTest.cpp create mode 100644 tests/thirdparty/Fuzzer/test/OutOfMemorySingleLargeMallocTest.cpp create mode 100644 tests/thirdparty/Fuzzer/test/OutOfMemoryTest.cpp create mode 100644 tests/thirdparty/Fuzzer/test/RepeatedBytesTest.cpp create mode 100644 tests/thirdparty/Fuzzer/test/RepeatedMemcmp.cpp create mode 100644 tests/thirdparty/Fuzzer/test/ShrinkControlFlowTest.cpp create mode 100644 tests/thirdparty/Fuzzer/test/ShrinkValueProfileTest.cpp create mode 100644 tests/thirdparty/Fuzzer/test/SignedIntOverflowTest.cpp create mode 100644 tests/thirdparty/Fuzzer/test/SimpleCmpTest.cpp create mode 100644 tests/thirdparty/Fuzzer/test/SimpleDictionaryTest.cpp create mode 100644 tests/thirdparty/Fuzzer/test/SimpleHashTest.cpp create mode 100644 tests/thirdparty/Fuzzer/test/SimpleTest.cpp create mode 100644 tests/thirdparty/Fuzzer/test/SimpleThreadedTest.cpp create mode 100644 tests/thirdparty/Fuzzer/test/SingleMemcmpTest.cpp create mode 100644 tests/thirdparty/Fuzzer/test/SingleStrcmpTest.cpp create mode 100644 tests/thirdparty/Fuzzer/test/SingleStrncmpTest.cpp create mode 100644 tests/thirdparty/Fuzzer/test/SpamyTest.cpp create mode 100644 tests/thirdparty/Fuzzer/test/StrcmpTest.cpp create mode 100644 tests/thirdparty/Fuzzer/test/StrncmpOOBTest.cpp create mode 100644 tests/thirdparty/Fuzzer/test/StrncmpTest.cpp create mode 100644 tests/thirdparty/Fuzzer/test/StrstrTest.cpp create mode 100644 tests/thirdparty/Fuzzer/test/SwapCmpTest.cpp create mode 100644 tests/thirdparty/Fuzzer/test/Switch2Test.cpp create mode 100644 tests/thirdparty/Fuzzer/test/SwitchTest.cpp create mode 100644 tests/thirdparty/Fuzzer/test/ThreadedLeakTest.cpp create mode 100644 tests/thirdparty/Fuzzer/test/ThreadedTest.cpp create mode 100644 tests/thirdparty/Fuzzer/test/TimeoutEmptyTest.cpp create mode 100644 tests/thirdparty/Fuzzer/test/TimeoutTest.cpp create mode 100644 tests/thirdparty/Fuzzer/test/TraceMallocTest.cpp create mode 100644 tests/thirdparty/Fuzzer/test/UninstrumentedTest.cpp create mode 100644 tests/thirdparty/Fuzzer/test/afl-driver-extra-stats.test create mode 100644 tests/thirdparty/Fuzzer/test/afl-driver-stderr.test create mode 100644 tests/thirdparty/Fuzzer/test/caller-callee.test create mode 100644 tests/thirdparty/Fuzzer/test/coverage.test create mode 100644 tests/thirdparty/Fuzzer/test/dict1.txt create mode 100644 tests/thirdparty/Fuzzer/test/dump_coverage.test create mode 100644 tests/thirdparty/Fuzzer/test/fuzzer-customcrossover.test create mode 100644 tests/thirdparty/Fuzzer/test/fuzzer-custommutator.test create mode 100644 tests/thirdparty/Fuzzer/test/fuzzer-dict.test create mode 100644 tests/thirdparty/Fuzzer/test/fuzzer-dirs.test create mode 100644 tests/thirdparty/Fuzzer/test/fuzzer-fdmask.test create mode 100644 tests/thirdparty/Fuzzer/test/fuzzer-finalstats.test create mode 100644 tests/thirdparty/Fuzzer/test/fuzzer-flags.test create mode 100644 tests/thirdparty/Fuzzer/test/fuzzer-jobs.test create mode 100644 tests/thirdparty/Fuzzer/test/fuzzer-leak.test create mode 100644 tests/thirdparty/Fuzzer/test/fuzzer-oom-with-profile.test create mode 100644 tests/thirdparty/Fuzzer/test/fuzzer-oom.test create mode 100644 tests/thirdparty/Fuzzer/test/fuzzer-printcovpcs.test create mode 100644 tests/thirdparty/Fuzzer/test/fuzzer-runs.test create mode 100644 tests/thirdparty/Fuzzer/test/fuzzer-seed.test create mode 100644 tests/thirdparty/Fuzzer/test/fuzzer-segv.test create mode 100644 tests/thirdparty/Fuzzer/test/fuzzer-singleinputs.test create mode 100644 tests/thirdparty/Fuzzer/test/fuzzer-threaded.test create mode 100644 tests/thirdparty/Fuzzer/test/fuzzer-timeout.test create mode 100644 tests/thirdparty/Fuzzer/test/fuzzer-traces-hooks.test create mode 100644 tests/thirdparty/Fuzzer/test/fuzzer-ubsan.test create mode 100644 tests/thirdparty/Fuzzer/test/fuzzer.test create mode 100644 tests/thirdparty/Fuzzer/test/hi.txt create mode 100644 tests/thirdparty/Fuzzer/test/lit.cfg create mode 100644 tests/thirdparty/Fuzzer/test/lit.site.cfg.in create mode 100644 tests/thirdparty/Fuzzer/test/merge.test create mode 100644 tests/thirdparty/Fuzzer/test/minimize_crash.test create mode 100644 tests/thirdparty/Fuzzer/test/no-coverage/CMakeLists.txt create mode 100644 tests/thirdparty/Fuzzer/test/repeated-bytes.test create mode 100644 tests/thirdparty/Fuzzer/test/shrink.test create mode 100644 tests/thirdparty/Fuzzer/test/simple-cmp.test create mode 100644 tests/thirdparty/Fuzzer/test/standalone.test create mode 100644 tests/thirdparty/Fuzzer/test/swap-cmp.test create mode 100644 tests/thirdparty/Fuzzer/test/trace-malloc.test create mode 100644 tests/thirdparty/Fuzzer/test/ubsan/CMakeLists.txt create mode 100644 tests/thirdparty/Fuzzer/test/ulimit.test create mode 100644 tests/thirdparty/Fuzzer/test/uninstrumented/CMakeLists.txt create mode 100644 tests/thirdparty/Fuzzer/test/unit/lit.cfg create mode 100644 tests/thirdparty/Fuzzer/test/unit/lit.site.cfg.in create mode 100644 tests/thirdparty/Fuzzer/test/value-profile-cmp.test create mode 100644 tests/thirdparty/Fuzzer/test/value-profile-cmp2.test create mode 100644 tests/thirdparty/Fuzzer/test/value-profile-cmp3.test create mode 100644 tests/thirdparty/Fuzzer/test/value-profile-cmp4.test create mode 100644 tests/thirdparty/Fuzzer/test/value-profile-div.test create mode 100644 tests/thirdparty/Fuzzer/test/value-profile-load.test create mode 100644 tests/thirdparty/Fuzzer/test/value-profile-mem.test create mode 100644 tests/thirdparty/Fuzzer/test/value-profile-set.test create mode 100644 tests/thirdparty/Fuzzer/test/value-profile-strcmp.test create mode 100644 tests/thirdparty/Fuzzer/test/value-profile-strncmp.test create mode 100644 tests/thirdparty/Fuzzer/test/value-profile-switch.test create mode 100644 tests/thirdparty/doctest/doctest.h create mode 100644 tests/thirdparty/doctest/doctest_compatibility.h create mode 100644 tests/thirdparty/fifo_map/fifo_map.hpp create mode 100755 tests/thirdparty/imapdl/filterbr.py create mode 100644 tools/amalgamate/CHANGES.md create mode 100644 tools/amalgamate/README.md create mode 100755 tools/amalgamate/amalgamate.py create mode 100644 tools/amalgamate/config_json.json create mode 100644 tools/amalgamate/config_json_fwd.json create mode 100644 tools/gdb_pretty_printer/README.md create mode 100644 tools/gdb_pretty_printer/nlohmann-json.py create mode 100644 tools/generate_natvis/README.md create mode 100755 tools/generate_natvis/generate_natvis.py create mode 100644 tools/generate_natvis/nlohmann_json.natvis.j2 create mode 100644 tools/macro_builder/main.cpp create mode 100644 tools/serve_header/README.md create mode 100644 tools/serve_header/demo.png create mode 100644 tools/serve_header/requirements.txt create mode 100755 tools/serve_header/serve_header.py create mode 100644 tools/serve_header/serve_header.yml.example create mode 100644 wsjcpp.yml diff --git a/.cirrus.yml b/.cirrus.yml new file mode 100644 index 00000000..be633150 --- /dev/null +++ b/.cirrus.yml @@ -0,0 +1,17 @@ +arm_container: + image: gcc:latest + +check_task: + check_script: + - wget https://github.com/Kitware/CMake/releases/download/v3.20.2/cmake-3.20.2.tar.gz + - tar xfz cmake-3.20.2.tar.gz + - cd cmake-3.20.2 + - ./configure + - make cmake ctest -j4 + - cd .. + - mkdir build + - cd build + - ../cmake-3.20.2/bin/cmake .. -DJSON_FastTests=ON + - make -j4 + - cd tests + - ../../cmake-3.20.2/bin/ctest -j4 diff --git a/.clang-format b/.clang-format new file mode 100644 index 00000000..5b9e3fd5 --- /dev/null +++ b/.clang-format @@ -0,0 +1,84 @@ +#AccessModifierOffset: 2 +AlignAfterOpenBracket: Align +AlignConsecutiveAssignments: false +#AlignConsecutiveBitFields: false +AlignConsecutiveDeclarations: false +AlignConsecutiveMacros: false +AlignEscapedNewlines: Right +#AlignOperands: AlignAfterOperator +AlignTrailingComments: true +AllowAllArgumentsOnNextLine: false +AllowAllConstructorInitializersOnNextLine: false +AllowAllParametersOfDeclarationOnNextLine: false +AllowShortBlocksOnASingleLine: Empty +AllowShortCaseLabelsOnASingleLine: false +#AllowShortEnumsOnASingleLine: true +AllowShortFunctionsOnASingleLine: Empty +AllowShortIfStatementsOnASingleLine: Never +AllowShortLambdasOnASingleLine: Empty +AllowShortLoopsOnASingleLine: false +AlwaysBreakAfterReturnType: None +AlwaysBreakBeforeMultilineStrings: false +AlwaysBreakTemplateDeclarations: Yes +BinPackArguments: false +BinPackParameters: false +#BitFieldColonSpacing: Both +BreakBeforeBraces: Custom # or Allman +BraceWrapping: + AfterCaseLabel: true + AfterClass: true + AfterControlStatement: Always + AfterEnum: true + AfterFunction: true + AfterNamespace: false + AfterStruct: true + AfterUnion: true + AfterExternBlock: false + BeforeCatch: true + BeforeElse: true + #BeforeLambdaBody: false + #BeforeWhile: false + SplitEmptyFunction: false + SplitEmptyRecord: false + SplitEmptyNamespace: false +BreakBeforeTernaryOperators: true +BreakConstructorInitializers: BeforeComma +BreakStringLiterals: false +ColumnLimit: 0 +CompactNamespaces: false +ConstructorInitializerIndentWidth: 2 +Cpp11BracedListStyle: true +PointerAlignment: Left +FixNamespaceComments: true +IncludeBlocks: Preserve +#IndentCaseBlocks: false +IndentCaseLabels: true +IndentGotoLabels: false +IndentPPDirectives: BeforeHash +IndentWidth: 4 +KeepEmptyLinesAtTheStartOfBlocks: false +MaxEmptyLinesToKeep: 1 +NamespaceIndentation: None +ReflowComments: false +SortIncludes: true +SortUsingDeclarations: true +SpaceAfterCStyleCast: false +SpaceAfterLogicalNot: false +SpaceAfterTemplateKeyword: false +SpaceBeforeAssignmentOperators: true +SpaceBeforeCpp11BracedList: false +SpaceBeforeParens: ControlStatements +SpaceBeforeRangeBasedForLoopColon: true +SpaceBeforeSquareBrackets: false +SpaceInEmptyBlock: false +SpaceInEmptyParentheses: false +SpacesBeforeTrailingComments: 2 +SpacesInAngles: false +SpacesInCStyleCastParentheses: false +SpacesInConditionalStatement: false +SpacesInContainerLiterals: false +SpacesInParentheses: false +SpacesInSquareBrackets: false +Standard: c++11 +TabWidth: 4 +UseTab: Never diff --git a/.clang-tidy b/.clang-tidy new file mode 100644 index 00000000..339360b0 --- /dev/null +++ b/.clang-tidy @@ -0,0 +1,65 @@ +Checks: '*, + -altera-id-dependent-backward-branch, + -altera-struct-pack-align, + -altera-unroll-loops, + -android-cloexec-fopen, + -bugprone-easily-swappable-parameters, + -cert-err58-cpp, + -concurrency-mt-unsafe, + -cppcoreguidelines-avoid-const-or-ref-data-members, + -cppcoreguidelines-avoid-do-while, + -cppcoreguidelines-avoid-goto, + -cppcoreguidelines-avoid-magic-numbers, + -cppcoreguidelines-avoid-non-const-global-variables, + -cppcoreguidelines-macro-usage, + -cppcoreguidelines-pro-bounds-array-to-pointer-decay, + -cppcoreguidelines-pro-bounds-constant-array-index, + -cppcoreguidelines-pro-bounds-pointer-arithmetic, + -cppcoreguidelines-pro-type-reinterpret-cast, + -cppcoreguidelines-pro-type-union-access, + -cppcoreguidelines-rvalue-reference-param-not-moved, + -cppcoreguidelines-virtual-class-destructor, + -fuchsia-default-arguments-calls, + -fuchsia-default-arguments-declarations, + -fuchsia-overloaded-operator, + -google-explicit-constructor, + -google-readability-function-size, + -google-runtime-int, + -google-runtime-references, + -hicpp-avoid-goto, + -hicpp-explicit-conversions, + -hicpp-function-size, + -hicpp-no-array-decay, + -hicpp-no-assembler, + -hicpp-signed-bitwise, + -hicpp-uppercase-literal-suffix, + -llvm-header-guard, + -llvm-include-order, + -llvmlibc-*, + -misc-use-anonymous-namespace, + -misc-confusable-identifiers, + -misc-include-cleaner, + -misc-no-recursion, + -misc-non-private-member-variables-in-classes, + -modernize-concat-nested-namespaces, + -modernize-type-traits, + -modernize-use-constraints, + -modernize-use-nodiscard, + -modernize-use-trailing-return-type, + -performance-enum-size, + -readability-function-cognitive-complexity, + -readability-function-size, + -readability-identifier-length, + -readability-magic-numbers, + -readability-redundant-access-specifiers, + -readability-simplify-boolean-expr, + -readability-uppercase-literal-suffix' + +CheckOptions: + - key: hicpp-special-member-functions.AllowSoleDefaultDtor + value: 1 + +WarningsAsErrors: '*' + +#HeaderFilterRegex: '.*nlohmann.*' +HeaderFilterRegex: '.*hpp$' diff --git a/.github/CODEOWNERS b/.github/CODEOWNERS new file mode 100644 index 00000000..e1e1040f --- /dev/null +++ b/.github/CODEOWNERS @@ -0,0 +1,6 @@ +# JSON for Modern C++ was originally written by Niels Lohmann. +# Since 2013, over 250 contributors have helped to improve the library. +# This CODEOWNERS file is only to make sure that @nlohmann is requested +# for a code review in case of a pull request. + +* @nlohmann diff --git a/.github/CODE_OF_CONDUCT.md b/.github/CODE_OF_CONDUCT.md new file mode 100644 index 00000000..770b8173 --- /dev/null +++ b/.github/CODE_OF_CONDUCT.md @@ -0,0 +1,46 @@ +# Contributor Covenant Code of Conduct + +## Our Pledge + +In the interest of fostering an open and welcoming environment, we as contributors and maintainers pledge to making participation in our project and our community a harassment-free experience for everyone, regardless of age, body size, disability, ethnicity, gender identity and expression, level of experience, nationality, personal appearance, race, religion, or sexual identity and orientation. + +## Our Standards + +Examples of behavior that contributes to creating a positive environment include: + +* Using welcoming and inclusive language +* Being respectful of differing viewpoints and experiences +* Gracefully accepting constructive criticism +* Focusing on what is best for the community +* Showing empathy towards other community members + +Examples of unacceptable behavior by participants include: + +* The use of sexualized language or imagery and unwelcome sexual attention or advances +* Trolling, insulting/derogatory comments, and personal or political attacks +* Public or private harassment +* Publishing others' private information, such as a physical or electronic address, without explicit permission +* Other conduct which could reasonably be considered inappropriate in a professional setting + +## Our Responsibilities + +Project maintainers are responsible for clarifying the standards of acceptable behavior and are expected to take appropriate and fair corrective action in response to any instances of unacceptable behavior. + +Project maintainers have the right and responsibility to remove, edit, or reject comments, commits, code, wiki edits, issues, and other contributions that are not aligned to this Code of Conduct, or to ban temporarily or permanently any contributor for other behaviors that they deem inappropriate, threatening, offensive, or harmful. + +## Scope + +This Code of Conduct applies both within project spaces and in public spaces when an individual is representing the project or its community. Examples of representing a project or community include using an official project e-mail address, posting via an official social media account, or acting as an appointed representative at an online or offline event. Representation of a project may be further defined and clarified by project maintainers. + +## Enforcement + +Instances of abusive, harassing, or otherwise unacceptable behavior may be reported by contacting the project team at mail@nlohmann.me. The project team will review and investigate all complaints, and will respond in a way that it deems appropriate to the circumstances. The project team is obligated to maintain confidentiality with regard to the reporter of an incident. Further details of specific enforcement policies may be posted separately. + +Project maintainers who do not follow or enforce the Code of Conduct in good faith may face temporary or permanent repercussions as determined by other members of the project's leadership. + +## Attribution + +This Code of Conduct is adapted from the [Contributor Covenant][homepage], version 1.4, available at [http://contributor-covenant.org/version/1/4][version] + +[homepage]: http://contributor-covenant.org +[version]: http://contributor-covenant.org/version/1/4/ diff --git a/.github/CONTRIBUTING.md b/.github/CONTRIBUTING.md new file mode 100644 index 00000000..4d33c67b --- /dev/null +++ b/.github/CONTRIBUTING.md @@ -0,0 +1,71 @@ +[![Issue Stats](http://issuestats.com/github/nlohmann/json/badge/pr?style=flat)](http://issuestats.com/github/nlohmann/json) [![Issue Stats](http://issuestats.com/github/nlohmann/json/badge/issue?style=flat)](http://issuestats.com/github/nlohmann/json) + +# How to contribute + +This project started as a little excuse to exercise some of the cool new C++11 features. Over time, people actually started to use the JSON library (yey!) and started to help improve it by proposing features, finding bugs, or even fixing my mistakes. I am really [thankful](https://github.com/nlohmann/json/blob/master/README.md#thanks) for this and try to keep track of all the helpers. + +To make it as easy as possible for you to contribute and for me to keep an overview, here are a few guidelines which should help us avoid all kinds of unnecessary work or disappointment. And of course, this document is subject to discussion, so please [create an issue](https://github.com/nlohmann/json/issues/new/choose) or a pull request if you find a way to improve it! + +## Private reports + +Usually, all issues are tracked publicly on [GitHub](https://github.com/nlohmann/json/issues). If you want to make a private report (e.g., for a vulnerability or to attach an example that is not meant to be published), please send an email to . + +## Prerequisites + +Please [create an issue](https://github.com/nlohmann/json/issues/new/choose), assuming one does not already exist, and describe your concern. Note you need a [GitHub account](https://github.com/signup/free) for this. + +## Describe your issue + +Clearly describe the issue: + +- If it is a bug, please describe how to **reproduce** it. If possible, attach a complete example which demonstrates the error. Please also state what you **expected** to happen instead of the error. +- If you propose a change or addition, try to give an **example** how the improved code could look like or how to use it. +- If you found a compilation error, please tell us which **compiler** (version and operating system) you used and paste the (relevant part of) the error messages to the ticket. + +Please stick to the provided issue template ([bug report](https://github.com/nlohmann/json/blob/develop/.github/ISSUE_TEMPLATE/bug.yml) if possible. For questions, feature or support requests, please [open a discussion](https://github.com/nlohmann/json/discussions/new). + +## Files to change + +:exclamation: Before you make any changes, note the single-header files [`single_include/nlohmann/json.hpp`](https://github.com/nlohmann/json/blob/develop/single_include/nlohmann/json.hpp) and [`single_include/nlohmann/json_fwd.hpp`](https://github.com/nlohmann/json/blob/develop/single_include/nlohmann/json_fwd.hpp) are **generated** from the source files in the [`include/nlohmann` directory](https://github.com/nlohmann/json/tree/develop/include/nlohmann). Please **do not** edit the files `single_include/nlohmann/json.hpp` and `single_include/nlohmann/json_fwd.hpp` directly, but change the `include/nlohmann` sources and regenerate the files by executing `make amalgamate`. + +To make changes, you need to edit the following files: + +1. [`include/nlohmann/*`](https://github.com/nlohmann/json/tree/develop/include/nlohmann) - These files are the sources of the library. Before testing or creating a pull request, execute `make amalgamate` to regenerate `single_include/nlohmann/json.hpp` and `single_include/nlohmann/json_fwd.hpp`. + +2. [`tests/src/unit-*.cpp`](https://github.com/nlohmann/json/tree/develop/tests/src) - These files contain the [doctest](https://github.com/onqtam/doctest) unit tests which currently cover [100 %](https://coveralls.io/github/nlohmann/json) of the library's code. Before creating a pull request, execute `make pretty` to make sure that the style is correct, as this will be checked by the CI. + + If you add or change a feature, please also add a unit test to this file. The unit tests can be compiled and executed with + + ```sh + $ mkdir build + $ cd build + $ cmake .. + $ cmake --build . + $ ctest + ``` + + The test cases are also executed with several different compilers on [Travis](https://travis-ci.org/nlohmann/json) once you open a pull request. + + +## Note + +- If you open a pull request, the code will be automatically tested with [Valgrind](http://valgrind.org)'s Memcheck tool to detect memory leaks. Please be aware that the execution with Valgrind _may_ in rare cases yield different behavior than running the code directly. This can result in failing unit tests which run successfully without Valgrind. +- There is a Makefile target `make pretty` which runs [Artistic Style](http://astyle.sourceforge.net) to fix indentation. If possible, run it before opening the pull request. Otherwise, we shall run it afterward. + +## Please don't + +- The C++11 support varies between different **compilers** and versions. Please note the [list of supported compilers](https://github.com/nlohmann/json/blob/master/README.md#supported-compilers). Some compilers like GCC 4.7 (and earlier), Clang 3.3 (and earlier), or Microsoft Visual Studio 13.0 and earlier are known not to work due to missing or incomplete C++11 support. Please refrain from proposing changes that work around these compiler's limitations with `#ifdef`s or other means. +- Specifically, I am aware of compilation problems with **Microsoft Visual Studio** (there even is an [issue label](https://github.com/nlohmann/json/issues?utf8=✓&q=label%3A%22visual+studio%22+) for this kind of bug). I understand that even in 2016, complete C++11 support isn't there yet. But please also understand that I do not want to drop features or uglify the code just to make Microsoft's sub-standard compiler happy. The past has shown that there are ways to express the functionality such that the code compiles with the most recent MSVC - unfortunately, this is not the main objective of the project. +- Please refrain from proposing changes that would **break [JSON](https://json.org) conformance**. If you propose a conformant extension of JSON to be supported by the library, please motivate this extension. + - We shall not extend the library to **support comments**. There is quite some [controversy](https://www.reddit.com/r/programming/comments/4v6chu/why_json_doesnt_support_comments_douglas_crockford/) around this topic, and there were quite some [issues](https://github.com/nlohmann/json/issues/376) on this. We believe that JSON is fine without comments. + - We do not preserve the **insertion order of object elements**. The [JSON standard](https://tools.ietf.org/html/rfc8259.html) defines objects as "an unordered collection of zero or more name/value pairs". To this end, this library does not preserve insertion order of name/value pairs. (In fact, keys will be traversed in alphabetical order as `std::map` with `std::less` is used by default.) Note this behavior conforms to the standard, and we shall not change it to any other order. If you do want to preserve the insertion order, you can specialize the object type with containers like [`tsl::ordered_map`](https://github.com/Tessil/ordered-map) or [`nlohmann::fifo_map`](https://github.com/nlohmann/fifo_map). + +- Please do not open pull requests that address **multiple issues**. + +## Wanted + +The following areas really need contribution: + +- Extending the **continuous integration** toward more exotic compilers such as Android NDK, Intel's Compiler, or the bleeding-edge versions Clang. +- Improving the efficiency of the **JSON parser**. The current parser is implemented as a naive recursive descent parser with hand coded string handling. More sophisticated approaches like LALR parsers would be really appreciated. That said, parser generators like Bison or ANTLR do not play nice with single-header files -- I really would like to keep the parser inside the `json.hpp` header, and I am not aware of approaches similar to [`re2c`](http://re2c.org) for parsing. +- Extending and updating existing **benchmarks** to include (the most recent version of) this library. Though efficiency is not everything, speed and memory consumption are very important characteristics for C++ developers, so having proper comparisons would be interesting. diff --git a/.github/FUNDING.yml b/.github/FUNDING.yml new file mode 100644 index 00000000..a6c972e8 --- /dev/null +++ b/.github/FUNDING.yml @@ -0,0 +1,2 @@ +github: nlohmann +custom: http://paypal.me/nlohmann diff --git a/.github/ISSUE_TEMPLATE/bug.yaml b/.github/ISSUE_TEMPLATE/bug.yaml new file mode 100644 index 00000000..f7acdf18 --- /dev/null +++ b/.github/ISSUE_TEMPLATE/bug.yaml @@ -0,0 +1,93 @@ +name: Bug Report +description: Create a bug report +labels: + - 'kind: bug' +body: + - type: markdown + attributes: + value: > + Thanks for taking the time to fill out this bug report! + + Make sure you give it a short and specific **title** so that the report + is searchable and uniquely identifiable. + + Note that this form is for bug reports only. Please + [open a discussion](https://github.com/nlohmann/json/discussions/new) + for questions, feature requests, or support requests + - type: textarea + id: summary + attributes: + label: Description + description: > + Please provide an abstract description of the issue to the developers, + and why you consider it to be a bug. Please include any specific links + to the documentation, JSON specification, or code. + validations: + required: true + - type: textarea + id: reproduce + attributes: + label: Reproduction steps + description: > + How do you trigger the bug? Please walk us through step by step. Be as + specific as possible. + validations: + required: true + - type: textarea + id: results + attributes: + label: Expected vs. actual results + description: > + Please describe what you expected to happen after the steps above and + what actually happened. + validations: + required: true + - type: textarea + id: code + attributes: + label: Minimal code example + description: > + If possible, provide a small and self-contained example that triggers + the bug. Please understand that we cannot analyze and debug large code + bases. Please do not paste screenshots here. + render: Shell + - type: textarea + id: output + attributes: + label: Error messages + description: > + Please provide any kind of error output (compilation errors, exception + messages, stack traces, etc.) which can help to diagnose the error. + render: Shell + - type: input + id: compiler + attributes: + label: Compiler and operating system + description: > + On which operating systems and compilers have you observed the issue? + Include as many relevant details about the environment you experienced + the bug in. Make sure you use a + [supported compiler](https://github.com/nlohmann/json#supported-compilers). + validations: + required: true + - type: input + id: version + attributes: + label: Library version + description: > + Which version of the library did you use? If it is a released version, + please enter the version number (e.g., 3.11.3). Otherwise, please enter + the commit hash. If you got the library from another source as the + GitHub repository (e.g., via a package manager), please also state + this. + validations: + required: true + - type: checkboxes + id: validation + attributes: + label: Validation + description: > + Please check these additional steps: + options: + - label: The bug also occurs if the latest version from the [`develop`](https://github.com/nlohmann/json/tree/develop) branch is used. + - label: I can successfully [compile and run the unit tests](https://github.com/nlohmann/json#execute-unit-tests). diff --git a/.github/ISSUE_TEMPLATE/config.yml b/.github/ISSUE_TEMPLATE/config.yml new file mode 100644 index 00000000..0e966338 --- /dev/null +++ b/.github/ISSUE_TEMPLATE/config.yml @@ -0,0 +1,5 @@ +blank_issues_enabled: false +contact_links: + - name: Ask a question + url: https://github.com/nlohmann/json/discussions + about: Ask questions and discuss with other community members diff --git a/.github/PULL_REQUEST_TEMPLATE.md b/.github/PULL_REQUEST_TEMPLATE.md new file mode 100644 index 00000000..c9c7cb79 --- /dev/null +++ b/.github/PULL_REQUEST_TEMPLATE.md @@ -0,0 +1,19 @@ +[Describe your pull request here. Please read the text below the line, and make sure you follow the checklist.] + +* * * + +## Pull request checklist + +Read the [Contribution Guidelines](https://github.com/nlohmann/json/blob/develop/.github/CONTRIBUTING.md) for detailed information. + +- [ ] Changes are described in the pull request, or an [existing issue is referenced](https://github.com/nlohmann/json/issues). +- [ ] The test suite [compiles and runs](https://github.com/nlohmann/json/blob/develop/README.md#execute-unit-tests) without error. +- [ ] [Code coverage](https://coveralls.io/github/nlohmann/json) is 100%. Test cases can be added by editing the [test suite](https://github.com/nlohmann/json/tree/develop/test/src). +- [ ] The source code is amalgamated; that is, after making changes to the sources in the `include/nlohmann` directory, run `make amalgamate` to create the single-header files `single_include/nlohmann/json.hpp` and `single_include/nlohmann/json_fwd.hpp`. The whole process is described [here](https://github.com/nlohmann/json/blob/develop/.github/CONTRIBUTING.md#files-to-change). + +## Please don't + +- The C++11 support varies between different **compilers** and versions. Please note the [list of supported compilers](https://github.com/nlohmann/json/blob/master/README.md#supported-compilers). Some compilers like GCC 4.7 (and earlier), Clang 3.3 (and earlier), or Microsoft Visual Studio 13.0 and earlier are known not to work due to missing or incomplete C++11 support. Please refrain from proposing changes that work around these compiler's limitations with `#ifdef`s or other means. +- Specifically, I am aware of compilation problems with **Microsoft Visual Studio** (there even is an [issue label](https://github.com/nlohmann/json/issues?utf8=✓&q=label%3A%22visual+studio%22+) for this kind of bug). I understand that even in 2016, complete C++11 support isn't there yet. But please also understand that I do not want to drop features or uglify the code just to make Microsoft's sub-standard compiler happy. The past has shown that there are ways to express the functionality such that the code compiles with the most recent MSVC - unfortunately, this is not the main objective of the project. +- Please refrain from proposing changes that would **break [JSON](https://json.org) conformance**. If you propose a conformant extension of JSON to be supported by the library, please motivate this extension. +- Please do not open pull requests that address **multiple issues**. diff --git a/.github/SECURITY.md b/.github/SECURITY.md new file mode 100644 index 00000000..4d010ebd --- /dev/null +++ b/.github/SECURITY.md @@ -0,0 +1,5 @@ +# Security Policy + +## Reporting a Vulnerability + +Usually, all issues are tracked publicly on [GitHub](https://github.com/nlohmann/json/issues). If you want to make a private report (e.g., for a vulnerability or to attach an example that is not meant to be published), please send an email to . You can use [this key](https://keybase.io/nlohmann/pgp_keys.asc?fingerprint=797167ae41c0a6d9232e48457f3cea63ae251b69) for encryption. diff --git a/.github/config.yml b/.github/config.yml new file mode 100644 index 00000000..7a8f41e6 --- /dev/null +++ b/.github/config.yml @@ -0,0 +1,19 @@ +# Configuration for sentiment-bot - https://github.com/behaviorbot/sentiment-bot + +# *Required* toxicity threshold between 0 and .99 with the higher numbers being the most toxic +# Anything higher than this threshold will be marked as toxic and commented on +sentimentBotToxicityThreshold: .7 + +# *Required* Comment to reply with +sentimentBotReplyComment: > + Please be sure to review the [code of conduct](https://github.com/nlohmann/json/blob/develop/CODE_OF_CONDUCT.md) and be respectful of other users. cc/ @nlohmann + + +# Configuration for request-info - https://github.com/behaviorbot/request-info + +# *Required* Comment to reply with +requestInfoReplyComment: > + We would appreciate it if you could provide us with more info about this issue or pull request! Please check the [issue template](https://github.com/nlohmann/json/blob/develop/.github/ISSUE_TEMPLATE.md) and the [pull request template](https://github.com/nlohmann/json/blob/develop/.github/PULL_REQUEST_TEMPLATE.md). + +# *OPTIONAL* Label to be added to Issues and Pull Requests with insufficient information given +requestInfoLabelToAdd: "state: needs more info" diff --git a/.github/external_ci/appveyor.yml b/.github/external_ci/appveyor.yml new file mode 100644 index 00000000..126ed99b --- /dev/null +++ b/.github/external_ci/appveyor.yml @@ -0,0 +1,91 @@ +version: '{build}' + +# only build PRs and commits to develop branch +# (see https://help.appveyor.com/discussions/questions/55079-two-builds-per-commit-to-pull-request) +branches: + only: + - develop + +only_commits: + files: + - .github/external_ci/appveyor.yml + - cmake/ + - include/ + - tests/ + - CMakeLists.txt + +environment: + matrix: + - APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2015 + configuration: Debug + platform: x86 + CXX_FLAGS: "/W4 /WX" + CMAKE_OPTIONS: "" + GENERATOR: Visual Studio 14 2015 + + - APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2015 + configuration: Release + platform: x86 + CXX_FLAGS: "/W4 /WX" + CMAKE_OPTIONS: "" + GENERATOR: Visual Studio 14 2015 + + - APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2015 + configuration: Release + platform: x86 + name: with_win_header + CXX_FLAGS: "/W4 /WX" + CMAKE_OPTIONS: "" + GENERATOR: Visual Studio 14 2015 + + - APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2017 + configuration: Release + platform: x86 + CXX_FLAGS: "/permissive- /std:c++latest /utf-8 /W4 /WX" + CMAKE_OPTIONS: "" + GENERATOR: Visual Studio 15 2017 + + - APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2019 + configuration: Release + platform: x86 + CXX_FLAGS: "/W4 /WX" + CMAKE_OPTIONS: "-DJSON_ImplicitConversions=OFF" + GENERATOR: Visual Studio 16 2019 + + - APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2015 + configuration: Release + platform: x64 + CXX_FLAGS: "/W4 /WX" + CMAKE_OPTIONS: "" + GENERATOR: Visual Studio 14 2015 + + - APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2017 + configuration: Release + platform: x64 + CXX_FLAGS: "/permissive- /std:c++latest /Zc:__cplusplus /utf-8 /W4 /WX" + CMAKE_OPTIONS: "" + GENERATOR: Visual Studio 15 2017 + +init: + - cmake --version + - msbuild /version + +install: + - if "%platform%"=="x86" set GENERATOR_PLATFORM=Win32 + +before_build: + # for with_win_header build, inject the inclusion of Windows.h to the single-header library + - ps: if ($env:name -Eq "with_win_header") { $header_path = "single_include\nlohmann\json.hpp" } + - ps: if ($env:name -Eq "with_win_header") { "#include `n" + (Get-Content $header_path | Out-String) | Set-Content $header_path } + - cmake . -G "%GENERATOR%" -A "%GENERATOR_PLATFORM%" -DCMAKE_CXX_FLAGS="%CXX_FLAGS%" -DCMAKE_IGNORE_PATH="C:/Program Files/Git/usr/bin" -DJSON_BuildTests=On "%CMAKE_OPTIONS%" + +build_script: + - cmake --build . --config "%configuration%" --parallel 2 + +test_script: + - if "%configuration%"=="Release" ctest -C "%configuration%" --parallel 2 --output-on-failure + # On Debug builds, skip test-unicode_all + # as it is extremely slow to run and cause + # occasional timeouts on AppVeyor. + # More info: https://github.com/nlohmann/json/pull/1570 + - if "%configuration%"=="Debug" ctest --exclude-regex "test-unicode" -C "%configuration%" --parallel 2 --output-on-failure diff --git a/.github/labeler.yml b/.github/labeler.yml new file mode 100644 index 00000000..024d3e6d --- /dev/null +++ b/.github/labeler.yml @@ -0,0 +1,38 @@ +version: 1 + +labels: +- label: "documentation" + files: + - "README.md" + +- label: "documentation" + files: + - "docs/.*" + +- label: "tests" + files: + - "tests/.*" + +- label: "CMake" + files: + - ".*CMakeLists.txt" + +- label: "CMake" + files: + - "cmake/.*" + +- label: "CI" + files: + - "github/workflows/.*" + +- label: "CI" + files: + - "github/external_ci/.*" + +- label: "S" + size-below: 10 +- label: "M" + size-above: 9 + size-below: 100 +- label: "L" + size-above: 100 diff --git a/.github/stale.yml b/.github/stale.yml new file mode 100644 index 00000000..d30c78be --- /dev/null +++ b/.github/stale.yml @@ -0,0 +1,17 @@ +# Number of days of inactivity before an issue becomes stale +daysUntilStale: 30 +# Number of days of inactivity before a stale issue is closed +daysUntilClose: 7 +# Issues with these labels will never be considered stale +exemptLabels: + - pinned + - security +# Label to use when marking an issue as stale +staleLabel: "state: stale" +# Comment to post when marking an issue as stale. Set to `false` to disable +markComment: > + This issue has been automatically marked as stale because it has not had + recent activity. It will be closed if no further activity occurs. Thank you + for your contributions. +# Comment to post when closing a stale issue. Set to `false` to disable +closeComment: false diff --git a/.github/workflows/check_amalgamation.yml b/.github/workflows/check_amalgamation.yml new file mode 100644 index 00000000..0fadb520 --- /dev/null +++ b/.github/workflows/check_amalgamation.yml @@ -0,0 +1,70 @@ +name: "Check amalgamation" + +on: + pull_request: + +permissions: read-all + +jobs: + save: + runs-on: ubuntu-latest + steps: + - name: Save PR number + run: | + mkdir -p ./pr + echo ${{ github.event.number }} > ./pr/number + echo ${{ github.event.pull_request.user.login }} > ./pr/author + - uses: actions/upload-artifact@v2 + with: + name: pr + path: pr/ + + check: + runs-on: ubuntu-latest + env: + MAIN_DIR: ${{ github.workspace }}/main + INCLUDE_DIR: ${{ github.workspace }}/main/single_include/nlohmann + TOOL_DIR: ${{ github.workspace }}/tools/tools/amalgamate + ASTYLE_FLAGS: > + --style=allman --indent=spaces=4 --indent-modifiers --indent-switches --indent-preproc-block + --indent-preproc-define --indent-col1-comments --pad-oper --pad-header --align-pointer=type + --align-reference=type --add-brackets --convert-tabs --close-templates --lineend=linux --preserve-date + --formatted + + steps: + - name: Checkout pull request + uses: actions/checkout@v3 + with: + path: main + ref: ${{ github.event.pull_request.head.sha }} + + - name: Checkout tools + uses: actions/checkout@v3 + with: + path: tools + ref: develop + + - name: Install astyle + run: | + sudo apt-get update + sudo apt-get install astyle + + - name: Check amalgamation + run: | + cd $MAIN_DIR + + rm -fr $INCLUDE_DIR/json.hpp~ $INCLUDE_DIR/json_fwd.hpp~ + cp $INCLUDE_DIR/json.hpp $INCLUDE_DIR/json.hpp~ + cp $INCLUDE_DIR/json_fwd.hpp $INCLUDE_DIR/json_fwd.hpp~ + + python3 $TOOL_DIR/amalgamate.py -c $TOOL_DIR/config_json.json -s . + python3 $TOOL_DIR/amalgamate.py -c $TOOL_DIR/config_json_fwd.json -s . + echo "Format (1)" + astyle $ASTYLE_FLAGS --suffix=none --quiet $INCLUDE_DIR/json.hpp $INCLUDE_DIR/json_fwd.hpp + + diff $INCLUDE_DIR/json.hpp~ $INCLUDE_DIR/json.hpp + diff $INCLUDE_DIR/json_fwd.hpp~ $INCLUDE_DIR/json_fwd.hpp + + astyle $ASTYLE_FLAGS $(find docs/examples include tests -type f \( -name '*.hpp' -o -name '*.cpp' -o -name '*.cu' \) -not -path 'tests/thirdparty/*' -not -path 'tests/abi/include/nlohmann/*' | sort) + echo Check + find $MAIN_DIR -name '*.orig' -exec false {} \+ diff --git a/.github/workflows/cifuzz.yml b/.github/workflows/cifuzz.yml new file mode 100644 index 00000000..0fd355bc --- /dev/null +++ b/.github/workflows/cifuzz.yml @@ -0,0 +1,30 @@ +name: CIFuzz +on: [pull_request] + +permissions: + contents: read + +jobs: + Fuzzing: + runs-on: ubuntu-latest + steps: + - name: Build Fuzzers + id: build + uses: google/oss-fuzz/infra/cifuzz/actions/build_fuzzers@master + with: + oss-fuzz-project-name: 'json' + dry-run: false + language: c++ + - name: Run Fuzzers + uses: google/oss-fuzz/infra/cifuzz/actions/run_fuzzers@master + with: + oss-fuzz-project-name: 'json' + fuzz-seconds: 300 + dry-run: false + language: c++ + - name: Upload Crash + uses: actions/upload-artifact@v3 + if: failure() && steps.build.outcome == 'success' + with: + name: artifacts + path: ./out/artifacts diff --git a/.github/workflows/codeql-analysis.yml b/.github/workflows/codeql-analysis.yml new file mode 100644 index 00000000..93923a18 --- /dev/null +++ b/.github/workflows/codeql-analysis.yml @@ -0,0 +1,44 @@ +name: "Code scanning - action" + +on: + push: + branches: + - develop + - master + - release/* + pull_request: + schedule: + - cron: '0 19 * * 1' + workflow_dispatch: + +permissions: + contents: read + +concurrency: + group: ${{ github.workflow }}-${{ github.ref || github.run_id }} + cancel-in-progress: true + +jobs: + CodeQL-Build: + + runs-on: ubuntu-latest + permissions: + security-events: write + + steps: + - name: Checkout repository + uses: actions/checkout@v3 + + # Initializes the CodeQL tools for scanning. + - name: Initialize CodeQL + uses: github/codeql-action/init@v2 + with: + languages: c-cpp + + # Autobuild attempts to build any compiled languages (C/C++, C#, or Java). + # If this step fails, then you should remove it and run the build manually (see below) + - name: Autobuild + uses: github/codeql-action/autobuild@v2 + + - name: Perform CodeQL Analysis + uses: github/codeql-action/analyze@v2 diff --git a/.github/workflows/comment_check_amalgamation.yml b/.github/workflows/comment_check_amalgamation.yml new file mode 100644 index 00000000..2ab5ebb9 --- /dev/null +++ b/.github/workflows/comment_check_amalgamation.yml @@ -0,0 +1,75 @@ +name: Comment Check Amalgamation +on: + workflow_run: + workflows: ["Check amalgamation"] + types: + - completed + +permissions: {} + +jobs: + comment: + if: ${{ github.event.workflow_run.conclusion == 'failure' }} + runs-on: ubuntu-latest + permissions: + contents: read + actions: read + issues: read + pull-requests: write + steps: + - name: 'Download artifact' + uses: actions/github-script@98814c53be79b1d30f795b907e553d8679345975 # v6.4.0 + with: + script: | + var artifacts = await github.rest.actions.listWorkflowRunArtifacts({ + owner: context.repo.owner, + repo: context.repo.repo, + run_id: ${{github.event.workflow_run.id }}, + }); + var matchArtifact = artifacts.data.artifacts.filter((artifact) => { + return artifact.name == "pr" + })[0]; + var download = await github.rest.actions.downloadArtifact({ + owner: context.repo.owner, + repo: context.repo.repo, + artifact_id: matchArtifact.id, + archive_format: 'zip', + }); + var fs = require('fs'); + fs.writeFileSync('${{github.workspace}}/pr.zip', Buffer.from(download.data)); + - run: unzip pr.zip + + - name: 'Comment on PR' + uses: actions/github-script@98814c53be79b1d30f795b907e553d8679345975 # v6.4.0 + with: + github-token: ${{ secrets.GITHUB_TOKEN }} + script: | + var fs = require('fs'); + const author = fs.readFileSync('./author') + const issue_number = Number(fs.readFileSync('./number')); + const opts = github.rest.issues.listForRepo.endpoint.merge({ + owner: context.repo.owner, + repo: context.repo.repo, + creator: author, + state: 'all' + }) + let first = true + const issues = await github.paginate(opts) + for (const issue of issues) { + if (issue.number === issue_number) { + continue + } + if (issue.pull_request) { + first = false + break + } + } + await github.rest.issues.createComment({ + issue_number: issue_number, + owner: context.repo.owner, + repo: context.repo.repo, + body: '## 🔴 Amalgamation check failed! 🔴\nThe source code has not been amalgamated.' + + (first ? ' @' + author + ' Please read and follow the [Contribution Guidelines]' + + '(https://github.com/nlohmann/json/blob/develop/.github/CONTRIBUTING.md#files-to-change).' + : '') + }) diff --git a/.github/workflows/labeler.yml b/.github/workflows/labeler.yml new file mode 100644 index 00000000..11925e1a --- /dev/null +++ b/.github/workflows/labeler.yml @@ -0,0 +1,20 @@ +name: "Pull Request Labeler" + +on: + pull_request_target: + types: [opened, synchronize] + +permissions: {} + +jobs: + label: + permissions: + contents: read + pull-requests: write + + runs-on: ubuntu-latest + + steps: + - uses: srvaroa/labeler@master + env: + GITHUB_TOKEN: "${{ secrets.GITHUB_TOKEN }}" diff --git a/.github/workflows/macos.yml b/.github/workflows/macos.yml new file mode 100644 index 00000000..9ac1fe3f --- /dev/null +++ b/.github/workflows/macos.yml @@ -0,0 +1,67 @@ +name: macOS + +on: + push: + branches: + - develop + - master + - release/* + pull_request: + workflow_dispatch: + +permissions: + contents: read + +concurrency: + group: ${{ github.workflow }}-${{ github.ref || github.run_id }} + cancel-in-progress: true + +jobs: + xcode_1: + runs-on: macos-11 + strategy: + matrix: + xcode: ['11.7', '12.4', '12.5.1', '13.0'] + env: + DEVELOPER_DIR: /Applications/Xcode_${{ matrix.xcode }}.app/Contents/Developer + + steps: + - uses: actions/checkout@v3 + - name: Run CMake + run: cmake -S . -B build -D CMAKE_BUILD_TYPE=Debug -DJSON_BuildTests=On -DJSON_FastTests=ON + - name: Build + run: cmake --build build --parallel 10 + - name: Test + run: cd build ; ctest -j 10 --output-on-failure + + xcode_2: + runs-on: macos-12 + strategy: + matrix: + xcode: ['13.1', '13.2.1', '13.3.1', '13.4.1', '14.0', '14.0.1', '14.1'] + env: + DEVELOPER_DIR: /Applications/Xcode_${{ matrix.xcode }}.app/Contents/Developer + + steps: + - uses: actions/checkout@v3 + - name: Run CMake + run: cmake -S . -B build -D CMAKE_BUILD_TYPE=Debug -DJSON_BuildTests=On -DJSON_FastTests=ON + - name: Build + run: cmake --build build --parallel 10 + - name: Test + run: cd build ; ctest -j 10 --output-on-failure + + xcode_standards: + runs-on: macos-latest + strategy: + matrix: + standard: [11, 14, 17, 20, 23] + + steps: + - uses: actions/checkout@v3 + - name: Run CMake + run: cmake -S . -B build -D CMAKE_BUILD_TYPE=Debug -DJSON_BuildTests=On -DJSON_TestStandards=${{ matrix.standard }} + - name: Build + run: cmake --build build --parallel 10 + - name: Test + run: cd build ; ctest -j 10 --output-on-failure diff --git a/.github/workflows/publish_documentation.yml b/.github/workflows/publish_documentation.yml new file mode 100644 index 00000000..5a32d13a --- /dev/null +++ b/.github/workflows/publish_documentation.yml @@ -0,0 +1,41 @@ +name: Publish documentation + +# publish the documentation on every merge to develop branch +on: + push: + branches: + - develop + paths: + - docs/mkdocs/** + - docs/examples/** + workflow_dispatch: + +permissions: + contents: read + +# we don't want to have concurrent jobs, and we don't want to cancel running jobs to avoid broken publications +concurrency: + group: documentation + cancel-in-progress: false + +jobs: + publish_documentation: + if: github.repository == 'nlohmann/json' + runs-on: ubuntu-22.04 + steps: + - uses: actions/checkout@v3 + + - name: Install and update PlantUML + run: sudo apt-get update ; sudo apt-get install -y plantuml + + - name: Install virtual environment + run: make install_venv -C docs/mkdocs + + - name: Build documentation + run: make build -C docs/mkdocs + + - name: Deploy documentation + uses: peaceiris/actions-gh-pages@v3 + with: + github_token: ${{ secrets.GITHUB_TOKEN }} + publish_dir: ./docs/mkdocs/site diff --git a/.github/workflows/ubuntu.yml b/.github/workflows/ubuntu.yml new file mode 100644 index 00000000..35fb9573 --- /dev/null +++ b/.github/workflows/ubuntu.yml @@ -0,0 +1,248 @@ +name: Ubuntu + +on: + push: + branches: + - develop + - master + - release/* + pull_request: + workflow_dispatch: + +permissions: + contents: read + +concurrency: + group: ${{ github.workflow }}-${{ github.ref || github.run_id }} + cancel-in-progress: true + +jobs: + ci_test_clang: + runs-on: ubuntu-latest + container: silkeh/clang:dev + steps: + - name: Install git and unzip + run: apt-get update ; apt-get install -y git unzip + - uses: actions/checkout@v3 + - name: Get latest CMake and ninja + uses: lukka/get-cmake@v3.27.7 + - name: Run CMake + run: cmake -S . -B build -DJSON_CI=On + - name: Build + run: cmake --build build --target ci_test_clang + + ci_test_gcc: + runs-on: ubuntu-latest + container: ghcr.io/nlohmann/json-ci:v2.4.0 + steps: + - uses: actions/checkout@v3 + - name: Run CMake + run: cmake -S . -B build -DJSON_CI=On + - name: Build + run: cmake --build build --target ci_test_gcc + + ci_static_analysis: + runs-on: ubuntu-latest + container: ghcr.io/nlohmann/json-ci:v2.4.0 + strategy: + matrix: + target: [ci_cppcheck, ci_test_valgrind, ci_test_amalgamation, ci_test_single_header, ci_single_binaries, ci_infer] + steps: + - uses: actions/checkout@v3 + - name: Run CMake + run: cmake -S . -B build -DJSON_CI=On + - name: Build + run: cmake --build build --target ${{ matrix.target }} + + ci_static_analysis_ubuntu: + runs-on: ubuntu-latest + strategy: + matrix: + target: [ci_cpplint, ci_reproducible_tests, ci_non_git_tests, ci_offline_testdata] + steps: + - uses: actions/checkout@v3 + - name: Get latest CMake and ninja + uses: lukka/get-cmake@v3.27.7 + - name: Run CMake + run: cmake -S . -B build -DJSON_CI=On + - name: Build + run: cmake --build build --target ${{ matrix.target }} + + ci_static_analysis_clang: + runs-on: ubuntu-latest + container: silkeh/clang:dev + strategy: + matrix: + target: [ci_clang_tidy, ci_test_clang_sanitizer, ci_clang_analyze] + steps: + - name: Install git, clang-tools, and unzip + run: apt-get update ; apt-get install -y git clang-tools unzip + - uses: actions/checkout@v3 + - name: Get latest CMake and ninja + uses: lukka/get-cmake@v3.27.7 + - name: Run CMake + run: cmake -S . -B build -DJSON_CI=On + - name: Build + run: cmake --build build --target ${{ matrix.target }} + + ci_cmake_options: + runs-on: ubuntu-latest + container: ubuntu:focal + strategy: + matrix: + target: [ci_cmake_flags, ci_test_diagnostics, ci_test_noexceptions, ci_test_noimplicitconversions, ci_test_legacycomparison, ci_test_noglobaludls] + steps: + - name: Install build-essential + run: apt-get update ; apt-get install -y build-essential unzip wget git + - uses: actions/checkout@v3 + - name: Get latest CMake and ninja + uses: lukka/get-cmake@v3.27.7 + - name: Run CMake + run: cmake -S . -B build -DJSON_CI=On + - name: Build + run: cmake --build build --target ${{ matrix.target }} + + ci_test_coverage: + runs-on: ubuntu-latest + container: ghcr.io/nlohmann/json-ci:v2.4.0 + permissions: + contents: read + checks: write + steps: + - uses: actions/checkout@v3 + - name: Run CMake + run: cmake -S . -B build -DJSON_CI=On + - name: Build + run: cmake --build build --target ci_test_coverage + - name: Archive coverage report + uses: actions/upload-artifact@v3 + with: + name: code-coverage-report + path: ${{ github.workspace }}/build/html + - name: Publish report to Coveralls + uses: coverallsapp/github-action@master + with: + github-token: ${{ secrets.GITHUB_TOKEN }} + path-to-lcov: ${{ github.workspace }}/build/json.info.filtered.noexcept + + ci_test_compilers_gcc: + runs-on: ubuntu-latest + strategy: + matrix: + compiler: ['4', '5', '6', '7', '8', '9', '10', '11', '12', 'latest'] + container: gcc:${{ matrix.compiler }} + steps: + - uses: actions/checkout@v3 + - name: Get latest CMake and ninja + uses: lukka/get-cmake@v3.27.7 + - name: Run CMake + run: cmake -S . -B build -DJSON_CI=On + - name: Build + run: cmake --build build --target ci_test_compiler_default + + ci_test_compilers_clang: + runs-on: ubuntu-latest + strategy: + matrix: + compiler: ['3.5', '3.6', '3.7', '3.8', '3.9', '4', '5', '6', '7', '8', '9', '10', '11', '12', '13', '14', '15-bullseye', 'latest'] + container: silkeh/clang:${{ matrix.compiler }} + steps: + - name: Install unzip and git + run: apt-get update ; apt-get install -y unzip git + - uses: actions/checkout@v3 + - name: Get latest CMake and ninja + uses: lukka/get-cmake@v3.27.7 + - name: Set env FORCE_STDCPPFS_FLAG for clang 7 / 8 / 9 / 10 + run: echo "JSON_FORCED_GLOBAL_COMPILE_OPTIONS=-DJSON_HAS_FILESYSTEM=0;-DJSON_HAS_EXPERIMENTAL_FILESYSTEM=0" >> "$GITHUB_ENV" + if: ${{ matrix.compiler == '7' || matrix.compiler == '8' || matrix.compiler == '9' || matrix.compiler == '10' }} + - name: Run CMake + run: cmake -S . -B build -DJSON_CI=On + - name: Build + run: cmake --build build --target ci_test_compiler_default + + ci_test_compilers: + runs-on: ubuntu-latest + container: ghcr.io/nlohmann/json-ci:v2.4.0 + strategy: + matrix: + compiler: [g++-4.8] + steps: + - uses: actions/checkout@v3 + - name: Run CMake + run: cmake -S . -B build -DJSON_CI=On + - name: Build + run: cmake --build build --target ci_test_compiler_${{ matrix.compiler }} + + ci_test_standards_gcc: + runs-on: ubuntu-latest + container: ghcr.io/nlohmann/json-ci:v2.4.0 + strategy: + matrix: + standard: [11, 14, 17, 20, 23] + steps: + - uses: actions/checkout@v3 + - name: Run CMake + run: cmake -S . -B build -DJSON_CI=On + - name: Build + run: cmake --build build --target ci_test_gcc_cxx${{ matrix.standard }} + + ci_test_standards_clang: + runs-on: ubuntu-latest + container: silkeh/clang:latest + strategy: + matrix: + standard: [11, 14, 17, 20, 23] + steps: + - name: Install git and unzip + run: apt-get update ; apt-get install -y git unzip + - uses: actions/checkout@v3 + - name: Get latest CMake and ninja + uses: lukka/get-cmake@v3.27.7 + - name: Run CMake + run: cmake -S . -B build -DJSON_CI=On + - name: Build + run: cmake --build build --target ci_test_clang_cxx${{ matrix.standard }} + + ci_cuda_example: + runs-on: ubuntu-latest + container: ghcr.io/nlohmann/json-ci:v2.4.0 + steps: + - uses: actions/checkout@v3 + - name: Run CMake + run: cmake -S . -B build -DJSON_CI=On + - name: Build + run: cmake --build build --target ci_cuda_example + + ci_icpc: + runs-on: ubuntu-latest + container: ghcr.io/nlohmann/json-ci:v2.2.0 + steps: + - uses: actions/checkout@v2 + - name: Run CMake + run: cmake -S . -B build -DJSON_CI=On + - name: Build + run: | + . /opt/intel/oneapi/setvars.sh + cmake --build build --target ci_icpc + + ci_reuse_compliance: + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v3 + - uses: actions/setup-python@v3 + - name: Install REUSE tool + run: python -m pip install reuse + - name: Run REUSE lint + run: reuse lint + + ci_test_documentation: + runs-on: ubuntu-latest + strategy: + matrix: + target: [ci_test_examples, ci_test_api_documentation] + steps: + - uses: actions/checkout@v3 + - name: Run CMake + run: cmake -S . -B build -DJSON_CI=On + - name: Build + run: cmake --build build --target ${{ matrix.target }} diff --git a/.github/workflows/windows.yml b/.github/workflows/windows.yml new file mode 100644 index 00000000..7ddd4be2 --- /dev/null +++ b/.github/workflows/windows.yml @@ -0,0 +1,134 @@ +name: Windows + +on: + push: + branches: + - develop + - master + - release/* + pull_request: + workflow_dispatch: + +permissions: + contents: read + +concurrency: + group: ${{ github.workflow }}-${{ github.ref || github.run_id }} + cancel-in-progress: true + +jobs: + mingw: + runs-on: windows-2019 + strategy: + matrix: + architecture: [x64, x86] + + steps: + - uses: actions/checkout@v3 + - name: Set up MinGW + uses: egor-tensin/setup-mingw@v2 + with: + platform: ${{ matrix.architecture }} + version: 12.2.0 # https://github.com/egor-tensin/setup-mingw/issues/14 + - name: Run CMake + run: cmake -S . -B build -G "MinGW Makefiles" -DCMAKE_BUILD_TYPE=Debug -DJSON_BuildTests=On + - name: Build + run: cmake --build build --parallel 10 + - name: Test + run: cd build ; ctest -j 10 -C Debug --output-on-failure + + msvc2019: + runs-on: windows-2019 + strategy: + matrix: + build_type: [Debug, Release] + architecture: [Win32, x64] + + steps: + - uses: actions/checkout@v3 + - name: Run CMake + run: cmake -S . -B build -G "Visual Studio 16 2019" -A ${{ matrix.architecture }} -DJSON_BuildTests=On -DCMAKE_CXX_FLAGS="/W4 /WX" + if: matrix.build_type == 'Release' + - name: Run CMake + run: cmake -S . -B build -G "Visual Studio 16 2019" -A ${{ matrix.architecture }} -DJSON_BuildTests=On -DJSON_FastTests=ON -DCMAKE_CXX_FLAGS="/W4 /WX" + if: matrix.build_type == 'Debug' + - name: Build + run: cmake --build build --config ${{ matrix.build_type }} --parallel 10 + - name: Test + run: cd build ; ctest -j 10 -C ${{ matrix.build_type }} --output-on-failure + + msvc2019_latest: + runs-on: windows-2019 + + steps: + - uses: actions/checkout@v3 + - name: Run CMake + run: cmake -S . -B build -G "Visual Studio 16 2019" -DJSON_BuildTests=On -DCMAKE_CXX_FLAGS="/permissive- /std:c++latest /utf-8 /W4 /WX" + - name: Build + run: cmake --build build --config Release --parallel 10 + - name: Test + run: cd build ; ctest -j 10 -C Release --output-on-failure + + msvc2022: + runs-on: windows-2022 + strategy: + matrix: + build_type: [Debug, Release] + architecture: [Win32, x64] + + steps: + - uses: actions/checkout@v3 + - name: Run CMake + run: cmake -S . -B build -G "Visual Studio 17 2022" -A ${{ matrix.architecture }} -DJSON_BuildTests=On -DCMAKE_CXX_FLAGS="/W4 /WX" + if: matrix.build_type == 'Release' + - name: Run CMake + run: cmake -S . -B build -G "Visual Studio 17 2022" -A ${{ matrix.architecture }} -DJSON_BuildTests=On -DJSON_FastTests=ON -DCMAKE_CXX_FLAGS="/W4 /WX" + if: matrix.build_type == 'Debug' + - name: Build + run: cmake --build build --config ${{ matrix.build_type }} --parallel 10 + - name: Test + run: cd build ; ctest -j 10 -C ${{ matrix.build_type }} --output-on-failure + + msvc2022_latest: + runs-on: windows-2022 + + steps: + - uses: actions/checkout@v3 + - name: Run CMake + run: cmake -S . -B build -G "Visual Studio 17 2022" -DJSON_BuildTests=On -DCMAKE_CXX_FLAGS="/permissive- /std:c++latest /utf-8 /W4 /WX" + - name: Build + run: cmake --build build --config Release --parallel 10 + - name: Test + run: cd build ; ctest -j 10 -C Release --output-on-failure + + clang: + runs-on: windows-2019 + strategy: + matrix: + version: [11, 12, 13, 14, 15] + + steps: + - uses: actions/checkout@v3 + - name: Install Clang + run: curl -fsSL -o LLVM${{ matrix.version }}.exe https://github.com/llvm/llvm-project/releases/download/llvmorg-${{ matrix.version }}.0.0/LLVM-${{ matrix.version }}.0.0-win64.exe ; 7z x LLVM${{ matrix.version }}.exe -y -o"C:/Program Files/LLVM" + - name: Run CMake + run: cmake -S . -B build -DCMAKE_CXX_COMPILER="C:/Program Files/LLVM/bin/clang++.exe" -G"MinGW Makefiles" -DCMAKE_BUILD_TYPE=Debug -DJSON_BuildTests=On + - name: Build + run: cmake --build build --parallel 10 + - name: Test + run: cd build ; ctest -j 10 -C Debug --exclude-regex "test-unicode" --output-on-failure + + clang-cl-11: + runs-on: windows-2019 + strategy: + matrix: + architecture: [Win32, x64] + + steps: + - uses: actions/checkout@v3 + - name: Run CMake + run: cmake -S . -B build -G "Visual Studio 16 2019" -A ${{ matrix.architecture }} -T ClangCL -DJSON_BuildTests=On + - name: Build + run: cmake --build build --config Debug --parallel 10 + - name: Test + run: cd build ; ctest -j 10 -C Debug --exclude-regex "test-unicode" --output-on-failure diff --git a/.gitignore b/.gitignore new file mode 100644 index 00000000..bfd52b4c --- /dev/null +++ b/.gitignore @@ -0,0 +1,44 @@ +*.dSYM +*.o +*.gcno +*.gcda +.DS_Store + +.wsjcpp-logs/* +.wsjcpp/* + +/.idea +/cmake-build-* + +# Visual Studio / Visual Studio Code +/.vs/ +/.vscode/ +/out/ + +# clangd cache +/.cache/ + +# build directories (vscode-cmake-tools, user-defined, ...) +/build*/ + +# fuzzers +/tests/corpus_* +/tests/parse_*_fuzzer + +# documentation +/docs/docset/docSet.dsidx +/docs/docset/JSON_for_Modern_C++.docset/ +/docs/docset/JSON_for_Modern_C++.tgz +/docs/mkdocs/docs/__pycache__/ +/docs/mkdocs/docs/examples/ +/docs/mkdocs/docs/images/json.gif +/docs/mkdocs/site/ +/docs/mkdocs/venv/ + +# serve_header +/localhost.pem +/localhost-key.pem +/serve_header.yml + +# Swift Package Manager build directory +/.build \ No newline at end of file diff --git a/.lgtm.yml b/.lgtm.yml new file mode 100644 index 00000000..b62f9fb3 --- /dev/null +++ b/.lgtm.yml @@ -0,0 +1,4 @@ +path_classifiers: + thirdparty: + - /tools/amalgamate + - /tools/cpplint diff --git a/.reuse/README.md b/.reuse/README.md new file mode 100644 index 00000000..29c2b67a --- /dev/null +++ b/.reuse/README.md @@ -0,0 +1,7 @@ +# REUSE Software + +This directory contains supporting files to make the project compliant with the REUSE specification. + +The root `Makefile` contains a target `reuse` that updates copyright headers and checks for compliance. + +See for more information. diff --git a/.reuse/dep5 b/.reuse/dep5 new file mode 100644 index 00000000..315cae92 --- /dev/null +++ b/.reuse/dep5 @@ -0,0 +1,32 @@ +Format: https://www.debian.org/doc/packaging-manuals/copyright-format/1.0/ +Upstream-Name: json +Upstream-Contact: Niels Lohmann +Source: https://github.com/nlohmann/json + +Files: * +Copyright: 2013-2022 Niels Lohmann +License: MIT + +Files: tests/thirdparty/doctest/* +Copyright: 2016-2021 Viktor Kirilov +License: MIT + +Files: tests/thirdparty/fifo_map/* +Copyright: 2015-2017 Niels Lohmann +License: MIT + +Files: tests/thirdparty/Fuzzer/* +Copyright: 2003-2022, LLVM Project. +License: Apache-2.0 + +Files: tests/thirdparty/imapdl/* +Copyright: 2017 Georg Sauthoff +License: GPL-3.0-only + +Files: tools/amalgamate/* +Copyright: 2012 Erik Edlund +License: BSD-3-Clause + +Files: tools/gdb_pretty_printer +Copyright: 2020 Hannes Domani +License: MIT diff --git a/.reuse/templates/json.jinja2 b/.reuse/templates/json.jinja2 new file mode 100644 index 00000000..9f7df2a3 --- /dev/null +++ b/.reuse/templates/json.jinja2 @@ -0,0 +1,11 @@ + __ _____ _____ _____ + __| | __| | | | JSON for Modern C++ +| | |__ | | | | | | version 3.11.3 +|_____|_____|_____|_|___| https://github.com/nlohmann/json + +{% for copyright_line in copyright_lines %} +{{ copyright_line }} +{% endfor %} +{% for expression in spdx_expressions %} +SPDX-License-Identifier: {{ expression }} +{% endfor %} diff --git a/.reuse/templates/json_support.jinja2 b/.reuse/templates/json_support.jinja2 new file mode 100644 index 00000000..f12832cb --- /dev/null +++ b/.reuse/templates/json_support.jinja2 @@ -0,0 +1,11 @@ + __ _____ _____ _____ + __| | __| | | | JSON for Modern C++ (supporting code) +| | |__ | | | | | | version 3.11.3 +|_____|_____|_____|_|___| https://github.com/nlohmann/json + +{% for copyright_line in copyright_lines %} +{{ copyright_line }} +{% endfor %} +{% for expression in spdx_expressions %} +SPDX-License-Identifier: {{ expression }} +{% endfor %} diff --git a/BUILD.bazel b/BUILD.bazel new file mode 100644 index 00000000..15d84f16 --- /dev/null +++ b/BUILD.bazel @@ -0,0 +1,53 @@ +cc_library( + name = "json", + hdrs = [ + "include/nlohmann/adl_serializer.hpp", + "include/nlohmann/byte_container_with_subtype.hpp", + "include/nlohmann/detail/abi_macros.hpp", + "include/nlohmann/detail/conversions/from_json.hpp", + "include/nlohmann/detail/conversions/to_chars.hpp", + "include/nlohmann/detail/conversions/to_json.hpp", + "include/nlohmann/detail/exceptions.hpp", + "include/nlohmann/detail/hash.hpp", + "include/nlohmann/detail/input/binary_reader.hpp", + "include/nlohmann/detail/input/input_adapters.hpp", + "include/nlohmann/detail/input/json_sax.hpp", + "include/nlohmann/detail/input/lexer.hpp", + "include/nlohmann/detail/input/parser.hpp", + "include/nlohmann/detail/input/position_t.hpp", + "include/nlohmann/detail/iterators/internal_iterator.hpp", + "include/nlohmann/detail/iterators/iter_impl.hpp", + "include/nlohmann/detail/iterators/iteration_proxy.hpp", + "include/nlohmann/detail/iterators/iterator_traits.hpp", + "include/nlohmann/detail/iterators/json_reverse_iterator.hpp", + "include/nlohmann/detail/iterators/primitive_iterator.hpp", + "include/nlohmann/detail/json_custom_base_class.hpp", + "include/nlohmann/detail/json_pointer.hpp", + "include/nlohmann/detail/json_ref.hpp", + "include/nlohmann/detail/macro_scope.hpp", + "include/nlohmann/detail/macro_unscope.hpp", + "include/nlohmann/detail/meta/call_std/begin.hpp", + "include/nlohmann/detail/meta/call_std/end.hpp", + "include/nlohmann/detail/meta/cpp_future.hpp", + "include/nlohmann/detail/meta/detected.hpp", + "include/nlohmann/detail/meta/identity_tag.hpp", + "include/nlohmann/detail/meta/is_sax.hpp", + "include/nlohmann/detail/meta/std_fs.hpp", + "include/nlohmann/detail/meta/type_traits.hpp", + "include/nlohmann/detail/meta/void_t.hpp", + "include/nlohmann/detail/output/binary_writer.hpp", + "include/nlohmann/detail/output/output_adapters.hpp", + "include/nlohmann/detail/output/serializer.hpp", + "include/nlohmann/detail/string_concat.hpp", + "include/nlohmann/detail/string_escape.hpp", + "include/nlohmann/detail/value_t.hpp", + "include/nlohmann/json.hpp", + "include/nlohmann/json_fwd.hpp", + "include/nlohmann/ordered_map.hpp", + "include/nlohmann/thirdparty/hedley/hedley.hpp", + "include/nlohmann/thirdparty/hedley/hedley_undef.hpp", + ], + includes = ["include"], + visibility = ["//visibility:public"], + alwayslink = True, +) diff --git a/CITATION.cff b/CITATION.cff new file mode 100644 index 00000000..fd3b7671 --- /dev/null +++ b/CITATION.cff @@ -0,0 +1,14 @@ +cff-version: 1.2.0 +message: "If you use this software, please cite it as below." +authors: + - family-names: Lohmann + given-names: Niels + orcid: https://orcid.org/0000-0001-9037-795X + email: mail@nlohmann.me + website: https://nlohmann.me +title: "JSON for Modern C++" +version: 3.11.3 +date-released: 2023-11-28 +license: MIT +repository-code: "https://github.com/nlohmann" +url: https://json.nlohmann.me diff --git a/CMakeLists.txt b/CMakeLists.txt new file mode 100644 index 00000000..7a49dc47 --- /dev/null +++ b/CMakeLists.txt @@ -0,0 +1,209 @@ +cmake_minimum_required(VERSION 3.1...3.14) + +## +## PROJECT +## name and version +## +project(nlohmann_json VERSION 3.11.3 LANGUAGES CXX) + +## +## MAIN_PROJECT CHECK +## determine if nlohmann_json is built as a subproject (using add_subdirectory) or if it is the main project +## +set(MAIN_PROJECT OFF) +if (CMAKE_CURRENT_SOURCE_DIR STREQUAL CMAKE_SOURCE_DIR) + set(MAIN_PROJECT ON) +endif() + +## +## INCLUDE +## +## +set(CMAKE_MODULE_PATH ${CMAKE_CURRENT_SOURCE_DIR}/cmake ${CMAKE_MODULE_PATH}) +include(ExternalProject) + +## +## OPTIONS +## + +if (POLICY CMP0077) + # Allow CMake 3.13+ to override options when using FetchContent / add_subdirectory. + cmake_policy(SET CMP0077 NEW) +endif () + +# VERSION_GREATER_EQUAL is not available in CMake 3.1 +if(${MAIN_PROJECT} AND (${CMAKE_VERSION} VERSION_EQUAL 3.13 OR ${CMAKE_VERSION} VERSION_GREATER 3.13)) + set(JSON_BuildTests_INIT ON) +else() + set(JSON_BuildTests_INIT OFF) +endif() +option(JSON_BuildTests "Build the unit tests when BUILD_TESTING is enabled." ${JSON_BuildTests_INIT}) +option(JSON_CI "Enable CI build targets." OFF) +option(JSON_Diagnostics "Use extended diagnostic messages." OFF) +option(JSON_GlobalUDLs "Place use-defined string literals in the global namespace." ON) +option(JSON_ImplicitConversions "Enable implicit conversions." ON) +option(JSON_DisableEnumSerialization "Disable default integer enum serialization." OFF) +option(JSON_LegacyDiscardedValueComparison "Enable legacy discarded value comparison." OFF) +option(JSON_Install "Install CMake targets during install step." ${MAIN_PROJECT}) +option(JSON_MultipleHeaders "Use non-amalgamated version of the library." ON) +option(JSON_SystemInclude "Include as system headers (skip for clang-tidy)." OFF) + +if (JSON_CI) + include(ci) +endif () + +## +## CONFIGURATION +## +include(GNUInstallDirs) + +set(NLOHMANN_JSON_TARGET_NAME ${PROJECT_NAME}) +set(NLOHMANN_JSON_CONFIG_INSTALL_DIR "${CMAKE_INSTALL_DATADIR}/cmake/${PROJECT_NAME}" CACHE INTERNAL "") +set(NLOHMANN_JSON_INCLUDE_INSTALL_DIR "${CMAKE_INSTALL_INCLUDEDIR}") +set(NLOHMANN_JSON_TARGETS_EXPORT_NAME "${PROJECT_NAME}Targets") +set(NLOHMANN_JSON_CMAKE_CONFIG_TEMPLATE "cmake/config.cmake.in") +set(NLOHMANN_JSON_CMAKE_CONFIG_DIR "${CMAKE_CURRENT_BINARY_DIR}") +set(NLOHMANN_JSON_CMAKE_VERSION_CONFIG_FILE "${NLOHMANN_JSON_CMAKE_CONFIG_DIR}/${PROJECT_NAME}ConfigVersion.cmake") +set(NLOHMANN_JSON_CMAKE_PROJECT_CONFIG_FILE "${NLOHMANN_JSON_CMAKE_CONFIG_DIR}/${PROJECT_NAME}Config.cmake") +set(NLOHMANN_JSON_CMAKE_PROJECT_TARGETS_FILE "${NLOHMANN_JSON_CMAKE_CONFIG_DIR}/${PROJECT_NAME}Targets.cmake") +set(NLOHMANN_JSON_PKGCONFIG_INSTALL_DIR "${CMAKE_INSTALL_DATADIR}/pkgconfig") + +if (JSON_MultipleHeaders) + set(NLOHMANN_JSON_INCLUDE_BUILD_DIR "${PROJECT_SOURCE_DIR}/include/") + message(STATUS "Using the multi-header code from ${NLOHMANN_JSON_INCLUDE_BUILD_DIR}") +else() + set(NLOHMANN_JSON_INCLUDE_BUILD_DIR "${PROJECT_SOURCE_DIR}/single_include/") + message(STATUS "Using the single-header code from ${NLOHMANN_JSON_INCLUDE_BUILD_DIR}") +endif() + +if (NOT JSON_ImplicitConversions) + message(STATUS "Implicit conversions are disabled") +endif() + +if (JSON_DisableEnumSerialization) + message(STATUS "Enum integer serialization is disabled") +endif() + +if (JSON_LegacyDiscardedValueComparison) + message(STATUS "Legacy discarded value comparison enabled") +endif() + +if (JSON_Diagnostics) + message(STATUS "Diagnostics enabled") +endif() + +if (JSON_SystemInclude) + set(NLOHMANN_JSON_SYSTEM_INCLUDE "SYSTEM") +endif() + +## +## TARGET +## create target and add include path +## +add_library(${NLOHMANN_JSON_TARGET_NAME} INTERFACE) +add_library(${PROJECT_NAME}::${NLOHMANN_JSON_TARGET_NAME} ALIAS ${NLOHMANN_JSON_TARGET_NAME}) +if (${CMAKE_VERSION} VERSION_LESS "3.8.0") + target_compile_features(${NLOHMANN_JSON_TARGET_NAME} INTERFACE cxx_range_for) +else() + target_compile_features(${NLOHMANN_JSON_TARGET_NAME} INTERFACE cxx_std_11) +endif() + +target_compile_definitions( + ${NLOHMANN_JSON_TARGET_NAME} + INTERFACE + $<$>:JSON_USE_GLOBAL_UDLS=0> + $<$>:JSON_USE_IMPLICIT_CONVERSIONS=0> + $<$:JSON_DISABLE_ENUM_SERIALIZATION=1> + $<$:JSON_DIAGNOSTICS=1> + $<$:JSON_USE_LEGACY_DISCARDED_VALUE_COMPARISON=1> +) + +target_include_directories( + ${NLOHMANN_JSON_TARGET_NAME} + ${NLOHMANN_JSON_SYSTEM_INCLUDE} INTERFACE + $ + $ +) + +## add debug view definition file for msvc (natvis) +if (MSVC) + set(NLOHMANN_ADD_NATVIS TRUE) + set(NLOHMANN_NATVIS_FILE "nlohmann_json.natvis") + target_sources( + ${NLOHMANN_JSON_TARGET_NAME} + INTERFACE + $ + $ + ) +endif() + +# Install a pkg-config file, so other tools can find this. +CONFIGURE_FILE( + "${CMAKE_CURRENT_SOURCE_DIR}/cmake/pkg-config.pc.in" + "${CMAKE_CURRENT_BINARY_DIR}/${PROJECT_NAME}.pc" +) + +## +## TESTS +## create and configure the unit test target +## +if (JSON_BuildTests) + include(CTest) + enable_testing() + add_subdirectory(tests) +endif() + +## +## INSTALL +## install header files, generate and install cmake config files for find_package() +## +include(CMakePackageConfigHelpers) +# use a custom package version config file instead of +# write_basic_package_version_file to ensure that it's architecture-independent +# https://github.com/nlohmann/json/issues/1697 +configure_file( + "cmake/nlohmann_jsonConfigVersion.cmake.in" + ${NLOHMANN_JSON_CMAKE_VERSION_CONFIG_FILE} + @ONLY +) +configure_file( + ${NLOHMANN_JSON_CMAKE_CONFIG_TEMPLATE} + ${NLOHMANN_JSON_CMAKE_PROJECT_CONFIG_FILE} + @ONLY +) + +if(JSON_Install) + install( + DIRECTORY ${NLOHMANN_JSON_INCLUDE_BUILD_DIR} + DESTINATION ${NLOHMANN_JSON_INCLUDE_INSTALL_DIR} + ) + install( + FILES ${NLOHMANN_JSON_CMAKE_PROJECT_CONFIG_FILE} ${NLOHMANN_JSON_CMAKE_VERSION_CONFIG_FILE} + DESTINATION ${NLOHMANN_JSON_CONFIG_INSTALL_DIR} + ) + if (NLOHMANN_ADD_NATVIS) + install( + FILES ${NLOHMANN_NATVIS_FILE} + DESTINATION . + ) + endif() + export( + TARGETS ${NLOHMANN_JSON_TARGET_NAME} + NAMESPACE ${PROJECT_NAME}:: + FILE ${NLOHMANN_JSON_CMAKE_PROJECT_TARGETS_FILE} + ) + install( + TARGETS ${NLOHMANN_JSON_TARGET_NAME} + EXPORT ${NLOHMANN_JSON_TARGETS_EXPORT_NAME} + INCLUDES DESTINATION ${NLOHMANN_JSON_INCLUDE_INSTALL_DIR} + ) + install( + EXPORT ${NLOHMANN_JSON_TARGETS_EXPORT_NAME} + NAMESPACE ${PROJECT_NAME}:: + DESTINATION ${NLOHMANN_JSON_CONFIG_INSTALL_DIR} + ) + install( + FILES "${CMAKE_CURRENT_BINARY_DIR}/${PROJECT_NAME}.pc" + DESTINATION ${NLOHMANN_JSON_PKGCONFIG_INSTALL_DIR} + ) +endif() diff --git a/ChangeLog.md b/ChangeLog.md new file mode 100644 index 00000000..656d68bc --- /dev/null +++ b/ChangeLog.md @@ -0,0 +1,2943 @@ +# Changelog +All notable changes to this project will be documented in this file. This project adheres to [Semantic Versioning](http://semver.org/). + +## [3.11.2](https://github.com/nlohmann/json/releases/tag/3.11.2) (2022-08-12) + +[Full Changelog](https://github.com/nlohmann/json/compare/v3.11.1...3.11.2) + +- MSVC natvis visualizer does not work after introduction of inline ABI namespace [\#3696](https://github.com/nlohmann/json/issues/3696) +- The use of parenthesis gives compilation errors in some situations [\#3682](https://github.com/nlohmann/json/issues/3682) +- extern from/to\_json result in linker error [\#3657](https://github.com/nlohmann/json/issues/3657) +- json\_fwd.hpp no longer standalone [\#3656](https://github.com/nlohmann/json/issues/3656) +- regression: `.value` is compilation error. [\#3655](https://github.com/nlohmann/json/issues/3655) +- Regression: no match for 'operator!=' comparing json\_pointer and const char \*/string\_t [\#3654](https://github.com/nlohmann/json/issues/3654) +- Regression: call to member function 'value' is ambiguous [\#3652](https://github.com/nlohmann/json/issues/3652) +- macOS 10.15 Actions runner image deprecation [\#3612](https://github.com/nlohmann/json/issues/3612) + +- generate\_natvis.py: validate version number; cleanup [\#3698](https://github.com/nlohmann/json/pull/3698) ([falbrechtskirchinger](https://github.com/falbrechtskirchinger)) +- Add Python script for generating Natvis file and update file for 3.11.2 [\#3697](https://github.com/nlohmann/json/pull/3697) ([falbrechtskirchinger](https://github.com/falbrechtskirchinger)) +- fix typo in json\_pointer.md [\#3692](https://github.com/nlohmann/json/pull/3692) ([eltociear](https://github.com/eltociear)) +- Add amalgamated json-fwd.hpp to release [\#3687](https://github.com/nlohmann/json/pull/3687) ([nlohmann](https://github.com/nlohmann)) +- Documentation updates for 3.11.2 [\#3686](https://github.com/nlohmann/json/pull/3686) ([falbrechtskirchinger](https://github.com/falbrechtskirchinger)) +- Make json\_pointer usable as map key \(again\) [\#3685](https://github.com/nlohmann/json/pull/3685) ([falbrechtskirchinger](https://github.com/falbrechtskirchinger)) +- Deprecate json\_pointer/string\_t comparisons [\#3684](https://github.com/nlohmann/json/pull/3684) ([falbrechtskirchinger](https://github.com/falbrechtskirchinger)) +- Restructure inline namespace and allow version component to be disabled [\#3683](https://github.com/nlohmann/json/pull/3683) ([falbrechtskirchinger](https://github.com/falbrechtskirchinger)) +- Properly constrain non-string json\_pointer overloads [\#3681](https://github.com/nlohmann/json/pull/3681) ([falbrechtskirchinger](https://github.com/falbrechtskirchinger)) +- Amalgamate the forward declaration header [\#3679](https://github.com/nlohmann/json/pull/3679) ([falbrechtskirchinger](https://github.com/falbrechtskirchinger)) +- Fix 'const' qualifier on bool& has no effect [\#3678](https://github.com/nlohmann/json/pull/3678) ([falbrechtskirchinger](https://github.com/falbrechtskirchinger)) +- Fix whitespace in workflow files [\#3675](https://github.com/nlohmann/json/pull/3675) ([nlohmann](https://github.com/nlohmann)) +- Attempt to fix labeler permissions [\#3674](https://github.com/nlohmann/json/pull/3674) ([falbrechtskirchinger](https://github.com/falbrechtskirchinger)) +- Refine 'Publish documentation' workflow [\#3673](https://github.com/nlohmann/json/pull/3673) ([falbrechtskirchinger](https://github.com/falbrechtskirchinger)) +- Documentation change [\#3672](https://github.com/nlohmann/json/pull/3672) ([nlohmann](https://github.com/nlohmann)) +- Add labeler action [\#3671](https://github.com/nlohmann/json/pull/3671) ([nlohmann](https://github.com/nlohmann)) +- Complete contributor list [\#3670](https://github.com/nlohmann/json/pull/3670) ([nlohmann](https://github.com/nlohmann)) +- Add json\_pointer/string\_t equality comparison operators [\#3664](https://github.com/nlohmann/json/pull/3664) ([falbrechtskirchinger](https://github.com/falbrechtskirchinger)) +- Reimplement value\(\) access functions [\#3663](https://github.com/nlohmann/json/pull/3663) ([falbrechtskirchinger](https://github.com/falbrechtskirchinger)) +- Complete contributor list [\#3662](https://github.com/nlohmann/json/pull/3662) ([nlohmann](https://github.com/nlohmann)) +- Adjust naming of GitHub action jobs [\#3661](https://github.com/nlohmann/json/pull/3661) ([nlohmann](https://github.com/nlohmann)) +- Publish documentation on push to develop branch [\#3660](https://github.com/nlohmann/json/pull/3660) ([nlohmann](https://github.com/nlohmann)) +- Add Discord badge to README [\#3651](https://github.com/nlohmann/json/pull/3651) ([falbrechtskirchinger](https://github.com/falbrechtskirchinger)) +- Miscellaneous small fixes [\#3643](https://github.com/nlohmann/json/pull/3643) ([falbrechtskirchinger](https://github.com/falbrechtskirchinger)) +- Minor BJData fixes [\#3637](https://github.com/nlohmann/json/pull/3637) ([falbrechtskirchinger](https://github.com/falbrechtskirchinger)) +- Update CI [\#3626](https://github.com/nlohmann/json/pull/3626) ([falbrechtskirchinger](https://github.com/falbrechtskirchinger)) + +## [v3.11.1](https://github.com/nlohmann/json/releases/tag/v3.11.1) (2022-08-01) + +[Full Changelog](https://github.com/nlohmann/json/compare/v3.11.0...v3.11.1) + +- Regression: no matching literal operator for call to 'operator""\_json' [\#3645](https://github.com/nlohmann/json/issues/3645) +- \_json operator""\(\) [\#3644](https://github.com/nlohmann/json/issues/3644) + +- Fix global UDLs [\#3646](https://github.com/nlohmann/json/pull/3646) ([falbrechtskirchinger](https://github.com/falbrechtskirchinger)) + +## [v3.11.0](https://github.com/nlohmann/json/releases/tag/v3.11.0) (2022-08-01) + +[Full Changelog](https://github.com/nlohmann/json/compare/v3.10.5...v3.11.0) + +- ICPC: warning \#1098: the qualifier on this friend declaration is ignored [\#3632](https://github.com/nlohmann/json/issues/3632) +- Starting with 3.10.4, just adding `\#include json.hpp` causes compile error: `overload resolution selected deleted operator '=' [\#3620](https://github.com/nlohmann/json/issues/3620) +- xwidgets doesn't compile with version \>3.10.3 [\#3602](https://github.com/nlohmann/json/issues/3602) +- json\_pointer\_\_pop\_back.cpp example does not compile [\#3600](https://github.com/nlohmann/json/issues/3600) +- nlohmann::json::array 'push\_back' is ambiguous [\#3589](https://github.com/nlohmann/json/issues/3589) +- Multiple versions causing conflict [\#3588](https://github.com/nlohmann/json/issues/3588) +- ERROR: ThreadSanitizer: SEGV on unknown address [\#3584](https://github.com/nlohmann/json/issues/3584) +- unicode4 test consistently fails on RISC-V hardware [\#3579](https://github.com/nlohmann/json/issues/3579) +- sax\_parse\(iterator, json\_sax\_t \*\) string callback clobbers spaces [\#3574](https://github.com/nlohmann/json/issues/3574) +- Nlohmann JSON Parse crash with raylib-cpp [\#3570](https://github.com/nlohmann/json/issues/3570) +- ordered\_json doesn't accept keys of types other than string\_t \(e.g., string\_view\) [\#3558](https://github.com/nlohmann/json/issues/3558) +- turning an object into an array [\#3547](https://github.com/nlohmann/json/issues/3547) +- json:parse\_bjdata\_fuzzer: ASSERT: ref\_stack.back\(\)-\>is\_array\(\) [\#3541](https://github.com/nlohmann/json/issues/3541) +- Warning about potential null dereference in GCC 12.1 \(Fedora 36\) [\#3525](https://github.com/nlohmann/json/issues/3525) +- Enable 32bit unit test in CI [\#3524](https://github.com/nlohmann/json/issues/3524) +- Error when roundtripping BJData [\#3519](https://github.com/nlohmann/json/issues/3519) +- ASSERT error while parsing BJData [\#3513](https://github.com/nlohmann/json/issues/3513) +- An exception occurred when sending a string with double quotes [\#3504](https://github.com/nlohmann/json/issues/3504) +- Binary reader for BJData creates incorrect SAX events [\#3503](https://github.com/nlohmann/json/issues/3503) +- It can't support "nan", "inf", "-inf" for float type [\#3494](https://github.com/nlohmann/json/issues/3494) +- ASAN error while parsing BJData \(Heap-buffer-overflow READ 1\) [\#3492](https://github.com/nlohmann/json/issues/3492) +- UBSAN error while parsing BJData \(Null-dereference\) [\#3491](https://github.com/nlohmann/json/issues/3491) +- UBSAN error while parsing BJData \(Invalid-bool-value\) [\#3490](https://github.com/nlohmann/json/issues/3490) +- json:parse\_bjdata\_fuzzer reaches assertion [\#3475](https://github.com/nlohmann/json/issues/3475) +- Compilation with -fmodules-ts and use inside of a module [\#3472](https://github.com/nlohmann/json/issues/3472) +- json.exception.parse\_error.101 only occurs outside of IDE [\#3467](https://github.com/nlohmann/json/issues/3467) +- json:parse\_bjdata\_fuzzer reaches assertion [\#3461](https://github.com/nlohmann/json/issues/3461) +- NLOHMANN\_DEFINE\_TYPE\_NON\_INTRUSIVE\_WITH\_DEFAULT can not parse { "key" : null} [\#3458](https://github.com/nlohmann/json/issues/3458) +- Unable to compile when using Microsoft's \_CRTDBG [\#3457](https://github.com/nlohmann/json/issues/3457) +- Compilation errors when including `` and using `--std=c++17` or above \(MinGW/Win10\) [\#3449](https://github.com/nlohmann/json/issues/3449) +- Weird things on for statement [\#3447](https://github.com/nlohmann/json/issues/3447) +- Parsing error when there is a json string within a Json [\#3445](https://github.com/nlohmann/json/issues/3445) +- ordered\_json vs json types comparison [\#3443](https://github.com/nlohmann/json/issues/3443) +- Error occurred when converting nlohmann::json to std::any [\#3428](https://github.com/nlohmann/json/issues/3428) +- I was forced to report an assertion error when copying an array of strings [\#3419](https://github.com/nlohmann/json/issues/3419) +- About Serialization Error invalid UTF-8 byte at index [\#3414](https://github.com/nlohmann/json/issues/3414) +- Comparison of NaN differs between json and float [\#3409](https://github.com/nlohmann/json/issues/3409) +- when i use it in C++ sserver,it it constantly show that fatal error: adl\_serializer.hpp: No such file or directory [\#3404](https://github.com/nlohmann/json/issues/3404) +- parse error [\#3403](https://github.com/nlohmann/json/issues/3403) +- CMake script MAIN\_PROJECT always OFF [\#3390](https://github.com/nlohmann/json/issues/3390) +- Parser unable to handle large floating point numbers [\#3389](https://github.com/nlohmann/json/issues/3389) +- Compilation error if json\_pointer is used with alternative string type [\#3388](https://github.com/nlohmann/json/issues/3388) +- Unit tests conversions & items fail to build \(Clang \<4.0/C++14 only\) [\#3384](https://github.com/nlohmann/json/issues/3384) +- Regression test for \#3070 is not being run and fails when enabled [\#3377](https://github.com/nlohmann/json/issues/3377) +- Refactor unit tests to use more convenient doctest assertion macros [\#3365](https://github.com/nlohmann/json/issues/3365) +- An json.h issue reported in a static code analyzer [\#3361](https://github.com/nlohmann/json/issues/3361) +- Mixing different JSON\_DIAGNOSTICS settings in separately compiled units leads to core [\#3360](https://github.com/nlohmann/json/issues/3360) +- json::out\_of\_range exception matches against lot of others while testing [\#3352](https://github.com/nlohmann/json/issues/3352) +- use mipsel-openwrt-linux-g++ -std=c++11 to compile, it has some errors "error: 'snprintf' is not a member of 'std'" [\#3349](https://github.com/nlohmann/json/issues/3349) +- Add proper issue templates [\#3348](https://github.com/nlohmann/json/issues/3348) +- switch from json to ordered\_json [\#3343](https://github.com/nlohmann/json/issues/3343) +- Json dump use to compilation errors [\#3339](https://github.com/nlohmann/json/issues/3339) +- Ambiguous conversion from nlohmann::basic\_json\<\> to custom class. [\#3333](https://github.com/nlohmann/json/issues/3333) +- Iterator doesn't satisfy std::incrementable because post-increment may change constness [\#3331](https://github.com/nlohmann/json/issues/3331) +- Inconsistent handling of floating point numbers after parse\(\) [\#3329](https://github.com/nlohmann/json/issues/3329) +- Documentation for `ordered_json` should show proper use of the `parse()` function. [\#3325](https://github.com/nlohmann/json/issues/3325) +- "type must be boolean, but is object" error thrown on non-boolean object [\#3319](https://github.com/nlohmann/json/issues/3319) +- Incomplete Type in request parms [\#3318](https://github.com/nlohmann/json/issues/3318) +- 小米 MIX4 MIUI13 bug [\#3316](https://github.com/nlohmann/json/issues/3316) +- json.exception.parse\_error.101 when parsing data received over a socket [\#3313](https://github.com/nlohmann/json/issues/3313) +- Parse to custom class from unordered\_json breaks on G++11.2.0 with C++20 [\#3312](https://github.com/nlohmann/json/issues/3312) +- try to assign dumped string to a class member varible [\#3300](https://github.com/nlohmann/json/issues/3300) +- includedir in pkgconfig is error if install\_headers\(\) has subdir argument. [\#3284](https://github.com/nlohmann/json/issues/3284) +- SHA-256 sum of json-3.10.5.tar.xz changes over time \(but not the content itself\) [\#3281](https://github.com/nlohmann/json/issues/3281) +- items\(\) method does not follow order of json message [\#3278](https://github.com/nlohmann/json/issues/3278) +- Perplexing template deduction failure serialising a 3rd party type using base class [\#3267](https://github.com/nlohmann/json/issues/3267) +- json.hpp 'isfinite' is not a member of 'std' also isinf; snprintf; stoull and to\_string members of std [\#3263](https://github.com/nlohmann/json/issues/3263) +- JSON build fails for C++ cmake [\#3256](https://github.com/nlohmann/json/issues/3256) +- Unexpected implicit conversion [\#3254](https://github.com/nlohmann/json/issues/3254) +- Add a function that checks for valid json in a C++ string [\#3245](https://github.com/nlohmann/json/issues/3245) +- Replace use of standard IO from error handling [\#3239](https://github.com/nlohmann/json/issues/3239) +- Use Catch for unit tests [\#3232](https://github.com/nlohmann/json/issues/3232) +- Exception thrown during initialization causes a memory leak [\#3215](https://github.com/nlohmann/json/issues/3215) +- Tests failing when compiling with c++20 [\#3207](https://github.com/nlohmann/json/issues/3207) +- ambiguous regression [\#3204](https://github.com/nlohmann/json/issues/3204) +- Deserialization: if class is\_constructible from std::string wrong from\_json overload is being selected, compilation failed [\#3171](https://github.com/nlohmann/json/issues/3171) +- 'clang++ ./json.hpp' with no usage: Compiler syntax problem in clang 3.7.0 \(tizen :/ \) [\#3153](https://github.com/nlohmann/json/issues/3153) +- build failure on upcoming gcc-12: test/src/unit-regression1.cpp:392:22: error: ambiguous overload for 'operator=' [\#3138](https://github.com/nlohmann/json/issues/3138) +- Applying JSON patch creates parent object [\#3134](https://github.com/nlohmann/json/issues/3134) +- Iterators cannot be used with range-v3 [\#3130](https://github.com/nlohmann/json/issues/3130) +- std::shared\_ptr\ == nlohmann::json compiles, which seem undesirable [\#3026](https://github.com/nlohmann/json/issues/3026) +- Error in test\download\_test\_data.vcxproj custom build step when compiling with Visual Studio 2019 16.7.7 msbuild on Windows 10 [\#2593](https://github.com/nlohmann/json/issues/2593) +- Consider putting the user-defined literals in a namespace [\#1682](https://github.com/nlohmann/json/issues/1682) +- Using versioned namespaces [\#1539](https://github.com/nlohmann/json/issues/1539) +- How can I use std::string\_view as the json\_key to "operator \[\]" ? [\#1529](https://github.com/nlohmann/json/issues/1529) +- serialize std::variant\<...\> [\#1261](https://github.com/nlohmann/json/issues/1261) + +- Prepare 3.11.0 release [\#3635](https://github.com/nlohmann/json/pull/3635) ([nlohmann](https://github.com/nlohmann)) +- Fix warning [\#3634](https://github.com/nlohmann/json/pull/3634) ([nlohmann](https://github.com/nlohmann)) +- Add license header to new files [\#3633](https://github.com/nlohmann/json/pull/3633) ([nlohmann](https://github.com/nlohmann)) +- Add a unit test including windows.h [\#3631](https://github.com/nlohmann/json/pull/3631) ([falbrechtskirchinger](https://github.com/falbrechtskirchinger)) +- Fixed latest build error in msvc platform [\#3630](https://github.com/nlohmann/json/pull/3630) ([KsaNL](https://github.com/KsaNL)) +- Add regression tests for \#3204 and \#3333 [\#3629](https://github.com/nlohmann/json/pull/3629) ([falbrechtskirchinger](https://github.com/falbrechtskirchinger)) +- Fix patch::add creating nonexistent parents [\#3628](https://github.com/nlohmann/json/pull/3628) ([falbrechtskirchinger](https://github.com/falbrechtskirchinger)) +- Adjust JSON Pointer examples [\#3622](https://github.com/nlohmann/json/pull/3622) ([nlohmann](https://github.com/nlohmann)) +- Disable exceptions on ICPC [\#3621](https://github.com/nlohmann/json/pull/3621) ([falbrechtskirchinger](https://github.com/falbrechtskirchinger)) +- build: install .pc and .cmake files to share/ [\#3619](https://github.com/nlohmann/json/pull/3619) ([Tachi107](https://github.com/Tachi107)) +- Fix MinGW CI failures [\#3618](https://github.com/nlohmann/json/pull/3618) ([falbrechtskirchinger](https://github.com/falbrechtskirchinger)) +- Fix Unicode test timeout \(for real this time!\) [\#3614](https://github.com/nlohmann/json/pull/3614) ([falbrechtskirchinger](https://github.com/falbrechtskirchinger)) +- Use 'concurrency' in GitHub workflows [\#3610](https://github.com/nlohmann/json/pull/3610) ([falbrechtskirchinger](https://github.com/falbrechtskirchinger)) +- Use swap\(\) by ADL [\#3609](https://github.com/nlohmann/json/pull/3609) ([falbrechtskirchinger](https://github.com/falbrechtskirchinger)) +- Move UDLs out of the global namespace [\#3605](https://github.com/nlohmann/json/pull/3605) ([falbrechtskirchinger](https://github.com/falbrechtskirchinger)) +- Re-add value\_type detection to distinguish string types [\#3604](https://github.com/nlohmann/json/pull/3604) ([falbrechtskirchinger](https://github.com/falbrechtskirchinger)) +- Add operator\<\<\(json\_pointer\) [\#3601](https://github.com/nlohmann/json/pull/3601) ([falbrechtskirchinger](https://github.com/falbrechtskirchinger)) +- Add documentation for comparing json and ordered\_json [\#3599](https://github.com/nlohmann/json/pull/3599) ([nlohmann](https://github.com/nlohmann)) +- Clean up after \#3581 [\#3596](https://github.com/nlohmann/json/pull/3596) ([nlohmann](https://github.com/nlohmann)) +- Add assertion if nullptr is passed to parse function [\#3593](https://github.com/nlohmann/json/pull/3593) ([nlohmann](https://github.com/nlohmann)) +- Minor documentation fixes [\#3592](https://github.com/nlohmann/json/pull/3592) ([nlohmann](https://github.com/nlohmann)) +- Add versioned, ABI-tagged inline namespace and namespace macros [\#3590](https://github.com/nlohmann/json/pull/3590) ([falbrechtskirchinger](https://github.com/falbrechtskirchinger)) +- Add badge for https://repology.org/project/nlohmann-json/versions [\#3586](https://github.com/nlohmann/json/pull/3586) ([nlohmann](https://github.com/nlohmann)) +- Add error message if test suite cannot be found [\#3585](https://github.com/nlohmann/json/pull/3585) ([nlohmann](https://github.com/nlohmann)) +- add patch\_inplace function [\#3581](https://github.com/nlohmann/json/pull/3581) ([wolfv](https://github.com/wolfv)) +- Enable overriding test properties and set Unicode test timeouts [\#3580](https://github.com/nlohmann/json/pull/3580) ([falbrechtskirchinger](https://github.com/falbrechtskirchinger)) +- Ignore output directory [\#3572](https://github.com/nlohmann/json/pull/3572) ([NN---](https://github.com/NN---)) +- Optimize output vector adapter write [\#3569](https://github.com/nlohmann/json/pull/3569) ([romainreignier](https://github.com/romainreignier)) +- Add overloads for more key types to ordered\_map and fix ordered\_map::erase\(first, last\) with first == last [\#3564](https://github.com/nlohmann/json/pull/3564) ([falbrechtskirchinger](https://github.com/falbrechtskirchinger)) +- Make certain usage patterns more prominent in the README [\#3557](https://github.com/nlohmann/json/pull/3557) ([jez](https://github.com/jez)) +- CI: fix "JSON\_MultipleHeaders" option spelling [\#3555](https://github.com/nlohmann/json/pull/3555) ([karzhenkov](https://github.com/karzhenkov)) +- More documentation updates for 3.11.0 [\#3553](https://github.com/nlohmann/json/pull/3553) ([falbrechtskirchinger](https://github.com/falbrechtskirchinger)) +- Use DOCTEST\_\* compiler macros and suppress pragmas warning [\#3550](https://github.com/nlohmann/json/pull/3550) ([falbrechtskirchinger](https://github.com/falbrechtskirchinger)) +- Add unit test to make sure iterator\_input\_adapter advances iterators correctly [\#3548](https://github.com/nlohmann/json/pull/3548) ([falbrechtskirchinger](https://github.com/falbrechtskirchinger)) +- Use REUSE framework [\#3546](https://github.com/nlohmann/json/pull/3546) ([nlohmann](https://github.com/nlohmann)) +- Use `std::iterator_traits` to extract `iterator_category` [\#3544](https://github.com/nlohmann/json/pull/3544) ([Mike-Leo-Smith](https://github.com/Mike-Leo-Smith)) +- BJData dimension length can not be string\_t::npos, fix \#3541 [\#3543](https://github.com/nlohmann/json/pull/3543) ([fangq](https://github.com/fangq)) +- Allow disabling default enum conversions [\#3536](https://github.com/nlohmann/json/pull/3536) ([zxey](https://github.com/zxey)) +- Add to\_json\(\) for std::vector\::reference [\#3534](https://github.com/nlohmann/json/pull/3534) ([falbrechtskirchinger](https://github.com/falbrechtskirchinger)) +- CI: Enable 32bit unit test \(3\) [\#3532](https://github.com/nlohmann/json/pull/3532) ([falbrechtskirchinger](https://github.com/falbrechtskirchinger)) +- Use new CI image [\#3528](https://github.com/nlohmann/json/pull/3528) ([nlohmann](https://github.com/nlohmann)) +- Fix ndarray dimension signedness, fix ndarray length overflow \(2\); add 32bit unit test [\#3523](https://github.com/nlohmann/json/pull/3523) ([falbrechtskirchinger](https://github.com/falbrechtskirchinger)) +- Small documentation fixes [\#3520](https://github.com/nlohmann/json/pull/3520) ([nlohmann](https://github.com/nlohmann)) +- Add assertion to converting constructor [\#3517](https://github.com/nlohmann/json/pull/3517) ([falbrechtskirchinger](https://github.com/falbrechtskirchinger)) +- CI: Remove -Wstrict-overflow [\#3516](https://github.com/nlohmann/json/pull/3516) ([falbrechtskirchinger](https://github.com/falbrechtskirchinger)) +- Fix nlohmann/json\#3513, explain is\_ndarray flag [\#3514](https://github.com/nlohmann/json/pull/3514) ([fangq](https://github.com/fangq)) +- Prevent ndarray size vector from recursive use, fix nlohmann/json\#3503 [\#3505](https://github.com/nlohmann/json/pull/3505) ([fangq](https://github.com/fangq)) +- prevent ndarray dimension vector from recusive array, nlohmann/json\#3500 [\#3502](https://github.com/nlohmann/json/pull/3502) ([fangq](https://github.com/fangq)) +- Discard optimized containers with negative counts in UBJSON/BJData \(\#3491,\#3492,\#3490\) [\#3500](https://github.com/nlohmann/json/pull/3500) ([fangq](https://github.com/fangq)) +- Update json.hpp [\#3499](https://github.com/nlohmann/json/pull/3499) ([ivanovmp](https://github.com/ivanovmp)) +- Add assertion for invariant in SAX-DOM parser [\#3498](https://github.com/nlohmann/json/pull/3498) ([nlohmann](https://github.com/nlohmann)) +- Add more macOS builders [\#3485](https://github.com/nlohmann/json/pull/3485) ([nlohmann](https://github.com/nlohmann)) +- change bjdata ndarray flag to detect negative size, as part of \#3475 [\#3479](https://github.com/nlohmann/json/pull/3479) ([fangq](https://github.com/fangq)) +- Document fuzzer usage [\#3478](https://github.com/nlohmann/json/pull/3478) ([nlohmann](https://github.com/nlohmann)) +- Add build step for ICPC \(with fixes\) [\#3465](https://github.com/nlohmann/json/pull/3465) ([falbrechtskirchinger](https://github.com/falbrechtskirchinger)) +- Complete documentation for 3.11.0 [\#3464](https://github.com/nlohmann/json/pull/3464) ([nlohmann](https://github.com/nlohmann)) +- Handle invalid BJData optimized type, fix \#3461 [\#3463](https://github.com/nlohmann/json/pull/3463) ([fangq](https://github.com/fangq)) +- Reorganize directories [\#3462](https://github.com/nlohmann/json/pull/3462) ([nlohmann](https://github.com/nlohmann)) +- Enable rapid testing and development on Compiler Explorer [\#3456](https://github.com/nlohmann/json/pull/3456) ([falbrechtskirchinger](https://github.com/falbrechtskirchinger)) +- cpplint 1.6.0 [\#3454](https://github.com/nlohmann/json/pull/3454) ([nlohmann](https://github.com/nlohmann)) +- Disable regression test for \#3070 on GCC \<8.4 [\#3451](https://github.com/nlohmann/json/pull/3451) ([falbrechtskirchinger](https://github.com/falbrechtskirchinger)) +- Fix C++20/gcc-12 issues \(Part 2\) [\#3446](https://github.com/nlohmann/json/pull/3446) ([falbrechtskirchinger](https://github.com/falbrechtskirchinger)) +- Overwork documentation [\#3444](https://github.com/nlohmann/json/pull/3444) ([nlohmann](https://github.com/nlohmann)) +- Fix typo in basic\_json documentation [\#3439](https://github.com/nlohmann/json/pull/3439) ([jhnlee](https://github.com/jhnlee)) +- Exclude std::any from implicit conversion \(fixes \#3428\) [\#3437](https://github.com/nlohmann/json/pull/3437) ([falbrechtskirchinger](https://github.com/falbrechtskirchinger)) +- Document which version introduced the macros [\#3431](https://github.com/nlohmann/json/pull/3431) ([nlohmann](https://github.com/nlohmann)) +- Fix constraints on from\_json\(\) for strings \(fixes \#3171, \#3267, \#3312, \#3384\) [\#3427](https://github.com/nlohmann/json/pull/3427) ([falbrechtskirchinger](https://github.com/falbrechtskirchinger)) +- at.md: fix typo [\#3426](https://github.com/nlohmann/json/pull/3426) ([heinemml](https://github.com/heinemml)) +- Implement support for string\_view \(attempt no. 3\) [\#3423](https://github.com/nlohmann/json/pull/3423) ([falbrechtskirchinger](https://github.com/falbrechtskirchinger)) +- CI: speedup AppVeyor builds by ~30% [\#3422](https://github.com/nlohmann/json/pull/3422) ([falbrechtskirchinger](https://github.com/falbrechtskirchinger)) +- Restore disabled check for \#3070 \(except on MSVC\) [\#3421](https://github.com/nlohmann/json/pull/3421) ([falbrechtskirchinger](https://github.com/falbrechtskirchinger)) +- Update CI image [\#3420](https://github.com/nlohmann/json/pull/3420) ([nlohmann](https://github.com/nlohmann)) +- Add check if different version is also included [\#3418](https://github.com/nlohmann/json/pull/3418) ([nlohmann](https://github.com/nlohmann)) +- Report the right \_\_cplusplus value for MSVC in basic\_json meta\(\) [\#3417](https://github.com/nlohmann/json/pull/3417) ([flagarde](https://github.com/flagarde)) +- CI: windows-2016 has been deprecated; remove jobs [\#3416](https://github.com/nlohmann/json/pull/3416) ([falbrechtskirchinger](https://github.com/falbrechtskirchinger)) +- Re-template json\_pointer on string type [\#3415](https://github.com/nlohmann/json/pull/3415) ([falbrechtskirchinger](https://github.com/falbrechtskirchinger)) +- Refactor unit tests to use more convenient doctest assertion macros \(Part 2\) [\#3405](https://github.com/nlohmann/json/pull/3405) ([kkarbowiak](https://github.com/kkarbowiak)) +- Refactor unit tests to use more convenient doctest assertion macros [\#3393](https://github.com/nlohmann/json/pull/3393) ([kkarbowiak](https://github.com/kkarbowiak)) +- Improve unit testing \(Part 1\) [\#3380](https://github.com/nlohmann/json/pull/3380) ([falbrechtskirchinger](https://github.com/falbrechtskirchinger)) +- Fix C++20/gcc-12 issues \(Part 1\) [\#3379](https://github.com/nlohmann/json/pull/3379) ([falbrechtskirchinger](https://github.com/falbrechtskirchinger)) +- Add clarification to avoid misunderstanding that cause \#3360 [\#3378](https://github.com/nlohmann/json/pull/3378) ([puffetto](https://github.com/puffetto)) +- Fix ordered\_map ctor with initializer\_list \(fixes \#3343\) [\#3370](https://github.com/nlohmann/json/pull/3370) ([falbrechtskirchinger](https://github.com/falbrechtskirchinger)) +- Fix and update CI [\#3368](https://github.com/nlohmann/json/pull/3368) ([falbrechtskirchinger](https://github.com/falbrechtskirchinger)) +- FetchContent\_MakeAvailable [\#3351](https://github.com/nlohmann/json/pull/3351) ([nlohmann](https://github.com/nlohmann)) +- Avoid clash with Arduino defines [\#3338](https://github.com/nlohmann/json/pull/3338) ([DarkZeros](https://github.com/DarkZeros)) +- Support UBJSON-derived Binary JData \(BJData\) format [\#3336](https://github.com/nlohmann/json/pull/3336) ([fangq](https://github.com/fangq)) +- Make iterator operator++/--\(int\) equality-preserving [\#3332](https://github.com/nlohmann/json/pull/3332) ([falbrechtskirchinger](https://github.com/falbrechtskirchinger)) +- Add note on parsing ordered\_json [\#3326](https://github.com/nlohmann/json/pull/3326) ([nlohmann](https://github.com/nlohmann)) +- Fix CITATION.cff and add automatic validation of your citation metadata [\#3320](https://github.com/nlohmann/json/pull/3320) ([fdiblen](https://github.com/fdiblen)) +- .github/workflows/windows.yml: Add support for Visual Studio 2022 [\#3295](https://github.com/nlohmann/json/pull/3295) ([t-b](https://github.com/t-b)) +- Add maintainer targets to create source archive [\#3289](https://github.com/nlohmann/json/pull/3289) ([nlohmann](https://github.com/nlohmann)) +- Fix a typo [\#3265](https://github.com/nlohmann/json/pull/3265) ([fhuberts](https://github.com/fhuberts)) +- Fix typo [\#3249](https://github.com/nlohmann/json/pull/3249) ([rex4539](https://github.com/rex4539)) +- Add documentation for JSON Lines [\#3247](https://github.com/nlohmann/json/pull/3247) ([nlohmann](https://github.com/nlohmann)) +- Improve documentation InputType and IteratorType [\#3246](https://github.com/nlohmann/json/pull/3246) ([nlohmann](https://github.com/nlohmann)) +- Remove stringstream [\#3244](https://github.com/nlohmann/json/pull/3244) ([nlohmann](https://github.com/nlohmann)) +- fix \_MSC\_VER version to check for std::filesystem [\#3240](https://github.com/nlohmann/json/pull/3240) ([gcerretani](https://github.com/gcerretani)) +- Add macros NLOHMANN\_DEFINE\_TYPE\_INTRUSIVE\_WITH\_DEFAULT and ...\_NON\_INTRUSIVE\_WITH\_DEFAULT [\#3143](https://github.com/nlohmann/json/pull/3143) ([pketelsen](https://github.com/pketelsen)) + +## [v3.10.5](https://github.com/nlohmann/json/releases/tag/v3.10.5) (2022-01-03) + +[Full Changelog](https://github.com/nlohmann/json/compare/v3.10.4...v3.10.5) + +- \#include \ doesn't work with gcc-7 when `-std=c++17` is specified. [\#3203](https://github.com/nlohmann/json/issues/3203) +- Not able to use nlohmann json with c++ code built using emscripten to wasm [\#3200](https://github.com/nlohmann/json/issues/3200) +- Warning for shadowed variables [\#3188](https://github.com/nlohmann/json/issues/3188) +- Accessing missing keys on const json object leads to assert [\#3183](https://github.com/nlohmann/json/issues/3183) +- Data member is available, but null is reported, and program throws error [\#3173](https://github.com/nlohmann/json/issues/3173) +- serialization problem, from\_json need construct new object [\#3169](https://github.com/nlohmann/json/issues/3169) +- std::filesystem unavailable on macOS lower deployment targets [\#3156](https://github.com/nlohmann/json/issues/3156) +- \[json.exception.type\_error.305\] cannot use operator\[\] with a string argument with string [\#3151](https://github.com/nlohmann/json/issues/3151) +- json::dump\(\) is not compatible with C++ standards [\#3147](https://github.com/nlohmann/json/issues/3147) +- Issue with json::parse decoding codepoints [\#3142](https://github.com/nlohmann/json/issues/3142) +- Simple parse of json object thinks it should be an array [\#3136](https://github.com/nlohmann/json/issues/3136) +- How to properly read a Json string that may be null in some cases? [\#3135](https://github.com/nlohmann/json/issues/3135) +- Deadlock on create json - windows only [\#3129](https://github.com/nlohmann/json/issues/3129) +- Wrong parsing of int64 values nearest of limit [\#3126](https://github.com/nlohmann/json/issues/3126) +- ordered\_json doesn't support range based erase [\#3108](https://github.com/nlohmann/json/issues/3108) +- Apple build failed with json/single\_include/nlohmann/json.hpp:4384:57: 'path' is unavailable [\#3097](https://github.com/nlohmann/json/issues/3097) +- GCC 7.5.0 with --std=c++17: filesystem: No such file or directory [\#3090](https://github.com/nlohmann/json/issues/3090) +- Drop Travis CI [\#3087](https://github.com/nlohmann/json/issues/3087) +- ordered\_json::reset\(\) compile error with nvcc [\#3013](https://github.com/nlohmann/json/issues/3013) +- Support for unordered\_map as object\_t [\#2932](https://github.com/nlohmann/json/issues/2932) +- Compiler warning with Intel compiler, same as \#755 [\#2712](https://github.com/nlohmann/json/issues/2712) +- Compiler warnings with NVCC 11.2 [\#2676](https://github.com/nlohmann/json/issues/2676) +- some static analysis warning at line 11317 [\#1390](https://github.com/nlohmann/json/issues/1390) +- Compiling with icpc [\#755](https://github.com/nlohmann/json/issues/755) + +- Fix compilation error with NVCC [\#3234](https://github.com/nlohmann/json/pull/3234) ([nlohmann](https://github.com/nlohmann)) +- Remove Travis CI [\#3233](https://github.com/nlohmann/json/pull/3233) ([nlohmann](https://github.com/nlohmann)) +- Add build step for NVCC and fix a warning [\#3227](https://github.com/nlohmann/json/pull/3227) ([nlohmann](https://github.com/nlohmann)) +- Update cpplint [\#3225](https://github.com/nlohmann/json/pull/3225) ([nlohmann](https://github.com/nlohmann)) +- Fix: Warning for shadowed variables \(\#3188\) [\#3193](https://github.com/nlohmann/json/pull/3193) ([kernie](https://github.com/kernie)) +- Fix FAQ hyperlink typo in readme [\#3148](https://github.com/nlohmann/json/pull/3148) ([Prince-Mendiratta](https://github.com/Prince-Mendiratta)) +- Docs: Update `skip_comments` to `ignore_comments` [\#3145](https://github.com/nlohmann/json/pull/3145) ([daniel-kun](https://github.com/daniel-kun)) +- fix typos in documentation [\#3140](https://github.com/nlohmann/json/pull/3140) ([striezel](https://github.com/striezel)) +- Fix spelling [\#3125](https://github.com/nlohmann/json/pull/3125) ([axic](https://github.com/axic)) +- Extend std specializations [\#3121](https://github.com/nlohmann/json/pull/3121) ([nlohmann](https://github.com/nlohmann)) +- Add missing erase\(first, last\) function to ordered\_map [\#3109](https://github.com/nlohmann/json/pull/3109) ([nlohmann](https://github.com/nlohmann)) +- Fix typos in operator\[\] documentation [\#3102](https://github.com/nlohmann/json/pull/3102) ([axnsan12](https://github.com/axnsan12)) +- Add C++17 copies of the test binaries [\#3101](https://github.com/nlohmann/json/pull/3101) ([nlohmann](https://github.com/nlohmann)) +- Add examples for parsing from iterator pair [\#3100](https://github.com/nlohmann/json/pull/3100) ([nlohmann](https://github.com/nlohmann)) +- Update CI [\#3088](https://github.com/nlohmann/json/pull/3088) ([nlohmann](https://github.com/nlohmann)) +- Consolidate documentation [\#3071](https://github.com/nlohmann/json/pull/3071) ([nlohmann](https://github.com/nlohmann)) +- Add recursive update function [\#3069](https://github.com/nlohmann/json/pull/3069) ([nlohmann](https://github.com/nlohmann)) + +## [v3.10.4](https://github.com/nlohmann/json/releases/tag/v3.10.4) (2021-10-16) + +[Full Changelog](https://github.com/nlohmann/json/compare/v3.10.3...v3.10.4) + +- Compiler error in output serializer due to 'incompatible initializer' [\#3081](https://github.com/nlohmann/json/issues/3081) +- Strange behaviour when using std::sort on std::vector\ [\#3080](https://github.com/nlohmann/json/issues/3080) +- Unhandled exception: nlohmann::detail::parse\_error [\#3078](https://github.com/nlohmann/json/issues/3078) +- explicit constructor with default does not compile [\#3077](https://github.com/nlohmann/json/issues/3077) +- Parse an object but get an array using GCC [\#3076](https://github.com/nlohmann/json/issues/3076) +- Version 3.10.3 breaks backward-compatibility with 3.10.2 [\#3070](https://github.com/nlohmann/json/issues/3070) +- Feature request, Add to\_json/from\_json to align with other to/from binary api. [\#3067](https://github.com/nlohmann/json/issues/3067) +- vcpkg is out of date [\#3066](https://github.com/nlohmann/json/issues/3066) + +- Revert invalid fix [\#3082](https://github.com/nlohmann/json/pull/3082) ([nlohmann](https://github.com/nlohmann)) +- Allow to use get with explicit constructor [\#3079](https://github.com/nlohmann/json/pull/3079) ([nlohmann](https://github.com/nlohmann)) +- fix std::filesystem::path regression [\#3073](https://github.com/nlohmann/json/pull/3073) ([theodelrieu](https://github.com/theodelrieu)) + +## [v3.10.3](https://github.com/nlohmann/json/releases/tag/v3.10.3) (2021-10-08) + +[Full Changelog](https://github.com/nlohmann/json/compare/v3.10.2...v3.10.3) + +- Parsing an emtpy string returns a string with size 1 instead of expected 0 [\#3057](https://github.com/nlohmann/json/issues/3057) +- Linking error "duplicate symbol: std::type\_info::operator==" on static build with MinGW [\#3042](https://github.com/nlohmann/json/issues/3042) +- Yet another assertion failure when inserting into arrays with JSON\_DIAGNOSTICS set [\#3032](https://github.com/nlohmann/json/issues/3032) +- accept and parse function not work well with a pure number string [\#3029](https://github.com/nlohmann/json/issues/3029) +- push\_back doesn't work for serializing containers [\#3027](https://github.com/nlohmann/json/issues/3027) +- Strange behaviour when creating array with single element [\#3025](https://github.com/nlohmann/json/issues/3025) +- Input ordered\_json doesn't work [\#3023](https://github.com/nlohmann/json/issues/3023) +- Issue iterating through 'items' [\#3021](https://github.com/nlohmann/json/issues/3021) +- Cannot spell the namespace right [\#3015](https://github.com/nlohmann/json/issues/3015) +- JSON Parse error when reading json object from file [\#3011](https://github.com/nlohmann/json/issues/3011) +- Parent pointer not properly set when using update\(\) [\#3007](https://github.com/nlohmann/json/issues/3007) +- Overwriting terminated null character [\#3001](https://github.com/nlohmann/json/issues/3001) +- 'operator =' is ambiguous on VS2017 [\#2997](https://github.com/nlohmann/json/issues/2997) +- JSON Patch for Array Elements [\#2994](https://github.com/nlohmann/json/issues/2994) +- JSON Parse throwing error [\#2983](https://github.com/nlohmann/json/issues/2983) +- to\_{binary format} does not provide a mechanism for specifying a custom allocator for the returned type. [\#2982](https://github.com/nlohmann/json/issues/2982) +- 3.10.1 zip json.hpp has version number 3.10.0 instead of 3.10.1 [\#2973](https://github.com/nlohmann/json/issues/2973) +- Assertion failure when serializing array with JSON\_DIAGNOSTICS set [\#2926](https://github.com/nlohmann/json/issues/2926) + +- Fix Clang version [\#3040](https://github.com/nlohmann/json/pull/3040) ([nlohmann](https://github.com/nlohmann)) +- Fix assertion failure for JSON\_DIAGNOSTICS [\#3037](https://github.com/nlohmann/json/pull/3037) ([carlsmedstad](https://github.com/carlsmedstad)) +- meta: fix is\_compatible/constructible traits [\#3020](https://github.com/nlohmann/json/pull/3020) ([theodelrieu](https://github.com/theodelrieu)) +- Set parent pointers for values inserted via update\(\) \(fixes \#3007\). [\#3008](https://github.com/nlohmann/json/pull/3008) ([AnthonyVH](https://github.com/AnthonyVH)) +- Allow allocators for output\_vector\_adapter [\#2989](https://github.com/nlohmann/json/pull/2989) ([nlohmann](https://github.com/nlohmann)) +- Re-add Clang 12 [\#2986](https://github.com/nlohmann/json/pull/2986) ([nlohmann](https://github.com/nlohmann)) +- Use new Docker image [\#2981](https://github.com/nlohmann/json/pull/2981) ([nlohmann](https://github.com/nlohmann)) +- Update docset generation script [\#2967](https://github.com/nlohmann/json/pull/2967) ([nlohmann](https://github.com/nlohmann)) + +## [v3.10.2](https://github.com/nlohmann/json/releases/tag/v3.10.2) (2021-08-26) + +[Full Changelog](https://github.com/nlohmann/json/compare/v3.10.1...v3.10.2) + +- Annoying -Wundef on new JSON\_DIAGNOSTICS macro [\#2975](https://github.com/nlohmann/json/issues/2975) +- += issue with multiple redirection. [\#2970](https://github.com/nlohmann/json/issues/2970) +- "incomplete type ‘nlohmann::detail::wide\_string\_input\_helper" compilation error [\#2969](https://github.com/nlohmann/json/issues/2969) + +- Fix -Wunused warnings on JSON\_DIAGNOSTICS [\#2976](https://github.com/nlohmann/json/pull/2976) ([gcerretani](https://github.com/gcerretani)) + +## [v3.10.1](https://github.com/nlohmann/json/releases/tag/v3.10.1) (2021-08-24) + +[Full Changelog](https://github.com/nlohmann/json/compare/v3.10.0...v3.10.1) + +- JSON\_DIAGNOSTICS assertion for ordered\_json [\#2962](https://github.com/nlohmann/json/issues/2962) +- Inserting in unordered json using a pointer retains the leading slash [\#2958](https://github.com/nlohmann/json/issues/2958) +- Test \#9: test-cbor test case sample.json fails in debug mode - Stack overflow [\#2955](https://github.com/nlohmann/json/issues/2955) +- 3.10.0 broke at least the Bear project [\#2953](https://github.com/nlohmann/json/issues/2953) +- 2 tests fail in 3.10.0: cmake\_fetch\_content\_configure, cmake\_fetch\_content\_build [\#2951](https://github.com/nlohmann/json/issues/2951) +- ctest \(58+60,/67 cmake\_import\_configure\) fails when build with -D JSON\_Install:BOOL=OFF because of missing nlohmann\_jsonTargets.cmake [\#2946](https://github.com/nlohmann/json/issues/2946) +- Document vcpkg usage [\#2944](https://github.com/nlohmann/json/issues/2944) +- Linker error LNK2005 when compiling \(x64\) json-3.10.0.zip with Visual Studio 2019 16.11.1 [\#2941](https://github.com/nlohmann/json/issues/2941) +- Move Travis jobs to travis-ci.com [\#2938](https://github.com/nlohmann/json/issues/2938) + +- Fixed typo in docs/api/basic\_json/parse.md [\#2968](https://github.com/nlohmann/json/pull/2968) ([mbadhan](https://github.com/mbadhan)) +- Add link to Homebrew package [\#2966](https://github.com/nlohmann/json/pull/2966) ([nlohmann](https://github.com/nlohmann)) +- Fix parent update for diagnostics with ordered\_json [\#2963](https://github.com/nlohmann/json/pull/2963) ([nlohmann](https://github.com/nlohmann)) +- Set stack size for some unit tests when using MSVC [\#2961](https://github.com/nlohmann/json/pull/2961) ([nlohmann](https://github.com/nlohmann)) +- Add regression test [\#2960](https://github.com/nlohmann/json/pull/2960) ([nlohmann](https://github.com/nlohmann)) +- Update Travis badge [\#2959](https://github.com/nlohmann/json/pull/2959) ([nlohmann](https://github.com/nlohmann)) +- Fix some extra ";" clang warnings [\#2957](https://github.com/nlohmann/json/pull/2957) ([Hallot](https://github.com/Hallot)) +- Add documentation for integration via vcpkg [\#2954](https://github.com/nlohmann/json/pull/2954) ([nlohmann](https://github.com/nlohmann)) +- Avoid duplicate AppVeyor builds [\#2952](https://github.com/nlohmann/json/pull/2952) ([nlohmann](https://github.com/nlohmann)) +- 🚨 fix gdb\_pretty\_printer failure on basic types [\#2950](https://github.com/nlohmann/json/pull/2950) ([senyai](https://github.com/senyai)) +- Add header to use value\_t [\#2948](https://github.com/nlohmann/json/pull/2948) ([nlohmann](https://github.com/nlohmann)) +- Skip some tests if JSON\_Install is not set [\#2947](https://github.com/nlohmann/json/pull/2947) ([nlohmann](https://github.com/nlohmann)) +- Remove outdated json\_unit test binary [\#2945](https://github.com/nlohmann/json/pull/2945) ([nlohmann](https://github.com/nlohmann)) +- Updating the Homebrew Command [\#2943](https://github.com/nlohmann/json/pull/2943) ([amirmasoudabdol](https://github.com/amirmasoudabdol)) + +## [v3.10.0](https://github.com/nlohmann/json/releases/tag/v3.10.0) (2021-08-17) + +[Full Changelog](https://github.com/nlohmann/json/compare/v3.9.1...v3.10.0) + +- Latest version 3.9.1 uses throw instead of JSON\_THROW in the amalgamated json.hpp file [\#2934](https://github.com/nlohmann/json/issues/2934) +- Copy to a variable inside a Structure [\#2933](https://github.com/nlohmann/json/issues/2933) +- warning C4068: unknown pragma 'GCC' on MSVC/cl [\#2924](https://github.com/nlohmann/json/issues/2924) +- Errors during ninja test [\#2918](https://github.com/nlohmann/json/issues/2918) +- compiler warning: "not return a value" [\#2917](https://github.com/nlohmann/json/issues/2917) +- Comparison floating points causes warning [\#2909](https://github.com/nlohmann/json/issues/2909) +- Why can't I have std::vector\ testList? [\#2900](https://github.com/nlohmann/json/issues/2900) +- \[json.hpp\] from releases doesnt work [\#2897](https://github.com/nlohmann/json/issues/2897) +- g++ \(11\) -Wuseless-cast gives lots of warnings [\#2893](https://github.com/nlohmann/json/issues/2893) +- Cannot serialize and immediatly deserialize json to/from bson [\#2892](https://github.com/nlohmann/json/issues/2892) +- Floating-point precision conversion error [\#2876](https://github.com/nlohmann/json/issues/2876) +- How to avoid escaping for an already escaped string in .dump\(\) [\#2870](https://github.com/nlohmann/json/issues/2870) +- can't parse std::vector\ [\#2869](https://github.com/nlohmann/json/issues/2869) +- ASAN detects memory leaks [\#2865](https://github.com/nlohmann/json/issues/2865) +- Binary subtype field cannot represent all CBOR tags [\#2863](https://github.com/nlohmann/json/issues/2863) +- string literals possibly being parsed as another type due to the presence of only digits and full-stops [\#2852](https://github.com/nlohmann/json/issues/2852) +- json::parse\(\) works only with absolute paths [\#2851](https://github.com/nlohmann/json/issues/2851) +- Compiler Warnings on Raspberry Pi OS [\#2850](https://github.com/nlohmann/json/issues/2850) +- Braced initialization and aggregate initialization behavior is different for `json::array()` function call. [\#2848](https://github.com/nlohmann/json/issues/2848) +- 3.9.1: test suite is failing [\#2845](https://github.com/nlohmann/json/issues/2845) +- Documentation for macro JSON\_NO\_IO is missing [\#2842](https://github.com/nlohmann/json/issues/2842) +- Assertion failure when inserting into arrays with JSON\_DIAGNOSTICS set [\#2838](https://github.com/nlohmann/json/issues/2838) +- HELP! There is a memory leak in the code?! [\#2837](https://github.com/nlohmann/json/issues/2837) +- Elegant conversion of a 2-D-json array to a standard C++ array [\#2805](https://github.com/nlohmann/json/issues/2805) +- Swift Package Manager support [\#2802](https://github.com/nlohmann/json/issues/2802) +- Referencing a subkey which doesn't exist gives crash [\#2797](https://github.com/nlohmann/json/issues/2797) +- Failed benchmark due to renamed branch [\#2796](https://github.com/nlohmann/json/issues/2796) +- Build Errors with VS 2019 and json Version 3.9.1 when attempting to replicate SAX Example [\#2782](https://github.com/nlohmann/json/issues/2782) +- Value with spaces cannot be parsed [\#2781](https://github.com/nlohmann/json/issues/2781) +- \[Question\] CBOR rfc support. [\#2779](https://github.com/nlohmann/json/issues/2779) +- Using JSON.hpp header file in Visual Studio 2013 \(C++ Project\) [\#2775](https://github.com/nlohmann/json/issues/2775) +- compilation error on clang-8 + C++17 [\#2759](https://github.com/nlohmann/json/issues/2759) +- Undefined symbol EOF [\#2755](https://github.com/nlohmann/json/issues/2755) +- Parsing a string into json object behaves differently under g++ and MinGW compilers. [\#2746](https://github.com/nlohmann/json/issues/2746) +- big git history size [\#2742](https://github.com/nlohmann/json/issues/2742) +- How to get reference of std::vector\ [\#2735](https://github.com/nlohmann/json/issues/2735) +- CMake failure in VS2019 Community [\#2734](https://github.com/nlohmann/json/issues/2734) +- Possibility to use with custom c++ version to use in intel sgx enclaves [\#2730](https://github.com/nlohmann/json/issues/2730) +- Possibility to use without the dependency to file io and streams to use in intel sgx enclaves [\#2728](https://github.com/nlohmann/json/issues/2728) +- error C2784& error C2839... in my visual studio 2015 compiler [\#2726](https://github.com/nlohmann/json/issues/2726) +- `-fno-expection` not respected anymore in 3.9.1 [\#2725](https://github.com/nlohmann/json/issues/2725) +- When exceptions disabled with JSON\_NOEXCEPTION, lib just aborts without any message [\#2724](https://github.com/nlohmann/json/issues/2724) +- Critical error detected c0000374 on windows10 msvc 2019 16.8.5 [\#2710](https://github.com/nlohmann/json/issues/2710) +- unused parameter error/warning [\#2706](https://github.com/nlohmann/json/issues/2706) +- How to store data into a Map from json file [\#2691](https://github.com/nlohmann/json/issues/2691) +- Tests do not compile with pre-release glibc [\#2686](https://github.com/nlohmann/json/issues/2686) +- compile errors .... chromium-style [\#2680](https://github.com/nlohmann/json/issues/2680) +- .dump\(\) not allowing compact form [\#2678](https://github.com/nlohmann/json/issues/2678) +- error: no matching function for call to ‘nlohmann::basic\_json\<\>::value\(int, std::set\&\)’ [\#2671](https://github.com/nlohmann/json/issues/2671) +- Compiler warning: unused parameter [\#2668](https://github.com/nlohmann/json/issues/2668) +- Deserializing to a struct as shown on the project homepage throws compile time errors [\#2665](https://github.com/nlohmann/json/issues/2665) +- Unable to compile on MSVC 2019 with SDL checking enabled: This function or variable may be unsafe [\#2664](https://github.com/nlohmann/json/issues/2664) +- terminating with uncaught exception of type nlohmann::detail::type\_error: \[json.exception.type\_error.302\] type must be array, but is object [\#2661](https://github.com/nlohmann/json/issues/2661) +- unused-parameter on OSX when Diagnostics is off [\#2658](https://github.com/nlohmann/json/issues/2658) +- std::pair wrong serialization [\#2655](https://github.com/nlohmann/json/issues/2655) +- The result of json is\_number\_integer\(\) function is wrong when read a json file [\#2653](https://github.com/nlohmann/json/issues/2653) +- 2 backslash cause problem [\#2652](https://github.com/nlohmann/json/issues/2652) +- No support for using an external/system copy of Hedley [\#2651](https://github.com/nlohmann/json/issues/2651) +- error: incomplete type 'qfloat16' used in type trait expression [\#2650](https://github.com/nlohmann/json/issues/2650) +- Unused variable in exception class when not using improved diagnostics [\#2646](https://github.com/nlohmann/json/issues/2646) +- I am trying to do this - converting from wstring works incorrectly! [\#2642](https://github.com/nlohmann/json/issues/2642) +- Exception 207 On ARM Processor During Literal String Parsing [\#2634](https://github.com/nlohmann/json/issues/2634) +- double free or corruption \(!prev\) error on Json push\_back and write [\#2632](https://github.com/nlohmann/json/issues/2632) +- nlohmann::detail::parse\_error: syntax error while parsing CBOR string: expected length specification \(0x60-0x7B\) or indefinite string type \(0x7F\) [\#2629](https://github.com/nlohmann/json/issues/2629) +- please allow disabling implicit conversions in non-single-file use [\#2621](https://github.com/nlohmann/json/issues/2621) +- Preserve decimal formatting [\#2618](https://github.com/nlohmann/json/issues/2618) +- Visual Studio Visual Assist code issues reported by VA code inspection of file json.hpp [\#2615](https://github.com/nlohmann/json/issues/2615) +- Missing get function and no viable overloaded '=' on mac [\#2610](https://github.com/nlohmann/json/issues/2610) +- corruption when parse from string [\#2603](https://github.com/nlohmann/json/issues/2603) +- Parse from byte-vector results in compile error [\#2602](https://github.com/nlohmann/json/issues/2602) +- Memory leak when working on ARM Linux [\#2601](https://github.com/nlohmann/json/issues/2601) +- Unhandled exception in test-cbor.exe Stack overflow when debugging project with Visual Studio 2019 16.7.7 compiled with c++17 or c++latest [\#2598](https://github.com/nlohmann/json/issues/2598) +- Error in download\_test\_data.vcxproj when compiling with Visual Studio 2019 16.7.7 Professional msbuild on Windows 10 2004 Professional [\#2594](https://github.com/nlohmann/json/issues/2594) +- Warnings C4715 and C4127 when building json-3.9.1 with Visual Studio 2019 16.7.7 [\#2592](https://github.com/nlohmann/json/issues/2592) +- I tried some change to dump\(\) for \[1,2,3...\] [\#2584](https://github.com/nlohmann/json/issues/2584) +- try/catch block does not catch parsing error [\#2579](https://github.com/nlohmann/json/issues/2579) +- Serializing uint64\_t is broken for large values [\#2578](https://github.com/nlohmann/json/issues/2578) +- deserializing arrays should be part of the library [\#2575](https://github.com/nlohmann/json/issues/2575) +- Deserialization to std::array with non-default constructable types fails [\#2574](https://github.com/nlohmann/json/issues/2574) +- Compilation error when trying to use same type for number\_integer\_t and number\_unsigned\_t in basic\_json template specification. [\#2573](https://github.com/nlohmann/json/issues/2573) +- compiler error: directive output may be truncated writing between 2 and 8 bytes [\#2572](https://github.com/nlohmann/json/issues/2572) +- Incorrect convert map to json when key cannot construct an string i.e. int [\#2564](https://github.com/nlohmann/json/issues/2564) +- no matching function for call to ‘nlohmann::basic\_json\<\>::basic\_json\(\\)’ [\#2559](https://github.com/nlohmann/json/issues/2559) +- type\_error factory creates a dangling pointer \(in VisualStudio 2019\) [\#2535](https://github.com/nlohmann/json/issues/2535) +- Cannot assign from ordered\_json vector\ to value in not ordered json [\#2528](https://github.com/nlohmann/json/issues/2528) +- Qt6: Break changes [\#2519](https://github.com/nlohmann/json/issues/2519) +- valgrind memcheck Illegal instruction when use nlohmann::json::parse [\#2518](https://github.com/nlohmann/json/issues/2518) +- Buffer overflow [\#2515](https://github.com/nlohmann/json/issues/2515) +- Including CTest in the top-level CMakeLists.txt sets BUILD\_TESTING=ON for parent projects [\#2513](https://github.com/nlohmann/json/issues/2513) +- Compilation error when using NLOHMANN\_JSON\_SERIALIZE\_ENUM ordered\_json on libc++ [\#2491](https://github.com/nlohmann/json/issues/2491) +- Missing "void insert\( InputIt first, InputIt last \);" overload in nlohmann::ordered\_map [\#2490](https://github.com/nlohmann/json/issues/2490) +- Could not find a package configuration file provided by "nlohmann\_json" [\#2482](https://github.com/nlohmann/json/issues/2482) +- json becomes empty for unknown reason [\#2470](https://github.com/nlohmann/json/issues/2470) +- Using std::wstring as StringType fails compiling [\#2459](https://github.com/nlohmann/json/issues/2459) +- Sample code in GIF slide outdated \(cannot use emplace\(\) with array\) [\#2457](https://github.com/nlohmann/json/issues/2457) +- from\_json\ is treated as an array on latest MSVC [\#2453](https://github.com/nlohmann/json/issues/2453) +- MemorySanitizer: use-of-uninitialized-value [\#2449](https://github.com/nlohmann/json/issues/2449) +- I need help [\#2441](https://github.com/nlohmann/json/issues/2441) +- type conversion failing with clang ext\_vector\_type [\#2436](https://github.com/nlohmann/json/issues/2436) +- json::parse\(\) can't be resolved under specific circumstances [\#2427](https://github.com/nlohmann/json/issues/2427) +- from\_\*\(ptr, len\) deprecation [\#2426](https://github.com/nlohmann/json/issues/2426) +- Error ONLY in release mode [\#2425](https://github.com/nlohmann/json/issues/2425) +- "Custom data source" exemple make no sense [\#2423](https://github.com/nlohmann/json/issues/2423) +- Refuses to compile in project [\#2419](https://github.com/nlohmann/json/issues/2419) +- Compilation failure of tests with C++20 standard \(caused by change of u8 literals\) [\#2413](https://github.com/nlohmann/json/issues/2413) +- No matching function for call to 'input\_adapter' under Xcode of with nlohmann version 3.9.1 [\#2412](https://github.com/nlohmann/json/issues/2412) +- Git tags are not valid semvers [\#2409](https://github.com/nlohmann/json/issues/2409) +- after dump, stderr output disappear [\#2403](https://github.com/nlohmann/json/issues/2403) +- Using custom string. [\#2398](https://github.com/nlohmann/json/issues/2398) +- value\(\) throws unhandled exception for partially specified json object [\#2393](https://github.com/nlohmann/json/issues/2393) +- assertion on runtime causes program to stop when accessing const json with missing key [\#2392](https://github.com/nlohmann/json/issues/2392) +- Usage with -fno-elide-constructors causes dump\(\) output to be array of `null`s [\#2387](https://github.com/nlohmann/json/issues/2387) +- Build fails with clang-cl due to override of CMAKE\_CXX\_COMPILER\(?\) [\#2384](https://github.com/nlohmann/json/issues/2384) +- std::optional not working with primitive types [\#2383](https://github.com/nlohmann/json/issues/2383) +- Unexpected array when initializing a json const& on gcc 4.8.5 using uniform syntax [\#2370](https://github.com/nlohmann/json/issues/2370) +- setprecision support [\#2362](https://github.com/nlohmann/json/issues/2362) +- json::parse\(allow\_exceptions = false\) documentation is misleading. [\#2360](https://github.com/nlohmann/json/issues/2360) +- std::begin and std::end usage without specifying std namespace [\#2359](https://github.com/nlohmann/json/issues/2359) +- Custom object conversion to json hangs in background thread [\#2358](https://github.com/nlohmann/json/issues/2358) +- Add support of nullable fields to NLOHMANN\_DEFINE\_TYPE\_NON\_INTRUSIVE and NLOHMANN\_DEFINE\_TYPE\_INTRUSIVE [\#2356](https://github.com/nlohmann/json/issues/2356) +- the portfile for the vcpkg is not working. [\#2351](https://github.com/nlohmann/json/issues/2351) +- Compiler warns of implicit fallthrough when defining preprocessor macro NDEBUG [\#2348](https://github.com/nlohmann/json/issues/2348) +- Compile error on Intel compiler running in Windows [\#2346](https://github.com/nlohmann/json/issues/2346) +- Build error caused by overwriting CMAKE\_CXX\_COMPILER [\#2343](https://github.com/nlohmann/json/issues/2343) +- Error: an attribute list cannot appear here JSON\_HEDLEY\_DEPRECATED\_FOR [\#2342](https://github.com/nlohmann/json/issues/2342) +- compiler warning [\#2341](https://github.com/nlohmann/json/issues/2341) +- 3.9.0: tests make build non-reproducible [\#2324](https://github.com/nlohmann/json/issues/2324) +- Initialization different between gcc/clang [\#2311](https://github.com/nlohmann/json/issues/2311) +- Attempt to `get()` a numeric value as a type which cannot represent it should throw [\#2310](https://github.com/nlohmann/json/issues/2310) +- Surprising behaviour with overloaded operators [\#2256](https://github.com/nlohmann/json/issues/2256) +- ADL issue in input\_adapter [\#2248](https://github.com/nlohmann/json/issues/2248) +- Output adapters should be templated. [\#2172](https://github.com/nlohmann/json/issues/2172) +- error when using nlohmann::json, std::function and std::bind [\#2147](https://github.com/nlohmann/json/issues/2147) +- Remove undefined behavior for const operator\[\] [\#2111](https://github.com/nlohmann/json/issues/2111) +- json\({}\) gives null instead of empty object with GCC and -std=c++17 [\#2046](https://github.com/nlohmann/json/issues/2046) +- GDB pretty printing support [\#1952](https://github.com/nlohmann/json/issues/1952) +- Always compile tests with all warnings enabled and error out on warnings [\#1798](https://github.com/nlohmann/json/issues/1798) +- Fixes Cppcheck warnings [\#1759](https://github.com/nlohmann/json/issues/1759) +- How to get position info or parser context with custom from\_json\(\) that may throw exceptions? [\#1508](https://github.com/nlohmann/json/issues/1508) +- Suggestion to improve value\(\) accessors with respect to move semantics [\#1275](https://github.com/nlohmann/json/issues/1275) +- Add Key name to Exception [\#932](https://github.com/nlohmann/json/issues/932) + +- Overwork warning flags [\#2936](https://github.com/nlohmann/json/pull/2936) ([nlohmann](https://github.com/nlohmann)) +- Treat MSVC warnings as errors [\#2930](https://github.com/nlohmann/json/pull/2930) ([nlohmann](https://github.com/nlohmann)) +- All: fix warnings when compiling with -Wswitch-enum [\#2927](https://github.com/nlohmann/json/pull/2927) ([fhuberts](https://github.com/fhuberts)) +- Guard GCC pragmas [\#2925](https://github.com/nlohmann/json/pull/2925) ([nlohmann](https://github.com/nlohmann)) +- Supress -Wfloat-equal on intended float comparisions [\#2911](https://github.com/nlohmann/json/pull/2911) ([Finkman](https://github.com/Finkman)) +- Fix binary subtypes [\#2908](https://github.com/nlohmann/json/pull/2908) ([nlohmann](https://github.com/nlohmann)) +- Fix useless-cast warnings [\#2902](https://github.com/nlohmann/json/pull/2902) ([nlohmann](https://github.com/nlohmann)) +- Add regression test [\#2898](https://github.com/nlohmann/json/pull/2898) ([nlohmann](https://github.com/nlohmann)) +- Refactor Unicode tests [\#2889](https://github.com/nlohmann/json/pull/2889) ([nlohmann](https://github.com/nlohmann)) +- CMake cleanup [\#2885](https://github.com/nlohmann/json/pull/2885) ([nlohmann](https://github.com/nlohmann)) +- Avoid string in case of empty CBOR objects [\#2879](https://github.com/nlohmann/json/pull/2879) ([nlohmann](https://github.com/nlohmann)) +- Suppress C4127 warning in unit-json\_pointer.cpp [\#2875](https://github.com/nlohmann/json/pull/2875) ([nlohmann](https://github.com/nlohmann)) +- Fix truncation warning [\#2874](https://github.com/nlohmann/json/pull/2874) ([nlohmann](https://github.com/nlohmann)) +- Fix memory leak in to\_json [\#2872](https://github.com/nlohmann/json/pull/2872) ([nlohmann](https://github.com/nlohmann)) +- Fix assertion failure in diagnostics [\#2866](https://github.com/nlohmann/json/pull/2866) ([nlohmann](https://github.com/nlohmann)) +- Update documentation [\#2861](https://github.com/nlohmann/json/pull/2861) ([nlohmann](https://github.com/nlohmann)) +- Consistency with `using` in README.md [\#2826](https://github.com/nlohmann/json/pull/2826) ([justanotheranonymoususer](https://github.com/justanotheranonymoususer)) +- Properly constrain the basic\_json conversion operator [\#2825](https://github.com/nlohmann/json/pull/2825) ([ldionne](https://github.com/ldionne)) +- Fix CI [\#2817](https://github.com/nlohmann/json/pull/2817) ([nlohmann](https://github.com/nlohmann)) +- Specified git branch for google benchmark fetch in benchmark test [\#2795](https://github.com/nlohmann/json/pull/2795) ([grafail](https://github.com/grafail)) +- Add C++ standards to macOS matrix [\#2790](https://github.com/nlohmann/json/pull/2790) ([nlohmann](https://github.com/nlohmann)) +- Update URLs to HTTPS [\#2789](https://github.com/nlohmann/json/pull/2789) ([TotalCaesar659](https://github.com/TotalCaesar659)) +- Link to Conan Center package added [\#2771](https://github.com/nlohmann/json/pull/2771) ([offa](https://github.com/offa)) +- Keep consistent formatting [\#2770](https://github.com/nlohmann/json/pull/2770) ([jasmcaus](https://github.com/jasmcaus)) +- Add a cmake option to use SYSTEM in target\_include\_directories [\#2762](https://github.com/nlohmann/json/pull/2762) ([jpl-mac](https://github.com/jpl-mac)) +- replace EOF with std::char\_traits\::eof\(\) [\#2756](https://github.com/nlohmann/json/pull/2756) ([nlohmann](https://github.com/nlohmann)) +- Fix typo in README [\#2754](https://github.com/nlohmann/json/pull/2754) ([mortenfyhn](https://github.com/mortenfyhn)) +- Update documentation [\#2749](https://github.com/nlohmann/json/pull/2749) ([nlohmann](https://github.com/nlohmann)) +- Add documentation for numbers [\#2747](https://github.com/nlohmann/json/pull/2747) ([nlohmann](https://github.com/nlohmann)) +- Use Clang 12 in CI [\#2737](https://github.com/nlohmann/json/pull/2737) ([nlohmann](https://github.com/nlohmann)) +- Fixes \#2730 [\#2731](https://github.com/nlohmann/json/pull/2731) ([theShmoo](https://github.com/theShmoo)) +- Possibility to use without the dependency to file io and streams to use in intel sgx enclaves [\#2729](https://github.com/nlohmann/json/pull/2729) ([theShmoo](https://github.com/theShmoo)) +- Update json.hpp [\#2707](https://github.com/nlohmann/json/pull/2707) ([raduteo](https://github.com/raduteo)) +- pkg-config.pc.in: Don't concatenate paths [\#2690](https://github.com/nlohmann/json/pull/2690) ([doronbehar](https://github.com/doronbehar)) +- add more CI steps [\#2689](https://github.com/nlohmann/json/pull/2689) ([nlohmann](https://github.com/nlohmann)) +- Update doctest from 2.4.4 to 2.4.6 \(fixes \#2686\) [\#2687](https://github.com/nlohmann/json/pull/2687) ([musicinmybrain](https://github.com/musicinmybrain)) +- License fix [\#2683](https://github.com/nlohmann/json/pull/2683) ([nlohmann](https://github.com/nlohmann)) +- Update parse\_exceptions.md - correct `json::exception::parse_error` [\#2679](https://github.com/nlohmann/json/pull/2679) ([frasermarlow](https://github.com/frasermarlow)) +- Remove HEDLEY annotation from exception::what\(\) [\#2673](https://github.com/nlohmann/json/pull/2673) ([remyjette](https://github.com/remyjette)) +- Fix amount of entries in the json object [\#2659](https://github.com/nlohmann/json/pull/2659) ([abbaswasim](https://github.com/abbaswasim)) +- Fix missing 1.78 in example in README.md [\#2625](https://github.com/nlohmann/json/pull/2625) ([wawiesel](https://github.com/wawiesel)) +- Add GDB pretty printer [\#2607](https://github.com/nlohmann/json/pull/2607) ([nlohmann](https://github.com/nlohmann)) +- readme: fix tilde character display [\#2582](https://github.com/nlohmann/json/pull/2582) ([bl-ue](https://github.com/bl-ue)) +- Add support for deserialization of STL containers of non-default constructable types \(fixes \#2574\). [\#2576](https://github.com/nlohmann/json/pull/2576) ([AnthonyVH](https://github.com/AnthonyVH)) +- Better diagnostics [\#2562](https://github.com/nlohmann/json/pull/2562) ([nlohmann](https://github.com/nlohmann)) +- CI targets [\#2561](https://github.com/nlohmann/json/pull/2561) ([nlohmann](https://github.com/nlohmann)) +- Add switch to skip non-reproducible tests. [\#2560](https://github.com/nlohmann/json/pull/2560) ([nlohmann](https://github.com/nlohmann)) +- Fix compilation of input\_adapter\(container\) in edge cases [\#2553](https://github.com/nlohmann/json/pull/2553) ([jasujm](https://github.com/jasujm)) +- Allow parsing from std::byte containers [\#2550](https://github.com/nlohmann/json/pull/2550) ([nlohmann](https://github.com/nlohmann)) +- Travis doesn't run any tests in C++17 mode [\#2540](https://github.com/nlohmann/json/pull/2540) ([karzhenkov](https://github.com/karzhenkov)) +- Doctest is updated to v2.4.3 [\#2538](https://github.com/nlohmann/json/pull/2538) ([YarikTH](https://github.com/YarikTH)) +- Fix warnings [\#2537](https://github.com/nlohmann/json/pull/2537) ([nlohmann](https://github.com/nlohmann)) +- Fix a shadowing warning [\#2536](https://github.com/nlohmann/json/pull/2536) ([nlohmann](https://github.com/nlohmann)) +- Clarify license of is\_complete\_type implementation [\#2534](https://github.com/nlohmann/json/pull/2534) ([nlohmann](https://github.com/nlohmann)) +- Do not unconditionally redefine C++14 constructs [\#2533](https://github.com/nlohmann/json/pull/2533) ([nlohmann](https://github.com/nlohmann)) +- Doctest is updated to v2.4.1 [\#2525](https://github.com/nlohmann/json/pull/2525) ([YarikTH](https://github.com/YarikTH)) +- Add MAIN\_PROJECT check for test and install options [\#2514](https://github.com/nlohmann/json/pull/2514) ([globberwops](https://github.com/globberwops)) +- Ranged insert test section is added in unit-ordered\_json.cpp [\#2512](https://github.com/nlohmann/json/pull/2512) ([YarikTH](https://github.com/YarikTH)) +- Add asserts to suppress C28020 [\#2447](https://github.com/nlohmann/json/pull/2447) ([jbzdarkid](https://github.com/jbzdarkid)) +- Change argument name "subtype" in byte\_container\_with\_subtype [\#2444](https://github.com/nlohmann/json/pull/2444) ([linev](https://github.com/linev)) +- 📝 add CPM.Cmake example [\#2406](https://github.com/nlohmann/json/pull/2406) ([leozz37](https://github.com/leozz37)) +- Fix move constructor of json\_ref [\#2405](https://github.com/nlohmann/json/pull/2405) ([karzhenkov](https://github.com/karzhenkov)) +- Properly select "Release" build for Travis [\#2375](https://github.com/nlohmann/json/pull/2375) ([karzhenkov](https://github.com/karzhenkov)) +- Update Hedley [\#2367](https://github.com/nlohmann/json/pull/2367) ([nlohmann](https://github.com/nlohmann)) +- Fix and extend documentation of discarded values [\#2363](https://github.com/nlohmann/json/pull/2363) ([nlohmann](https://github.com/nlohmann)) +- Fix typos in documentation [\#2354](https://github.com/nlohmann/json/pull/2354) ([rbuch](https://github.com/rbuch)) +- Remove "\#define private public" from tests [\#2352](https://github.com/nlohmann/json/pull/2352) ([nlohmann](https://github.com/nlohmann)) +- Remove -Wimplicit-fallthrough warning [\#2349](https://github.com/nlohmann/json/pull/2349) ([nlohmann](https://github.com/nlohmann)) +- Fix code to work without exceptions [\#2347](https://github.com/nlohmann/json/pull/2347) ([nlohmann](https://github.com/nlohmann)) +- fix cmake script overwriting compiler path [\#2344](https://github.com/nlohmann/json/pull/2344) ([ongjunjie](https://github.com/ongjunjie)) + +## [v3.9.1](https://github.com/nlohmann/json/releases/tag/v3.9.1) (2020-08-06) + +[Full Changelog](https://github.com/nlohmann/json/compare/v3.9.0...v3.9.1) + +- Can't parse not formatted JSON. [\#2340](https://github.com/nlohmann/json/issues/2340) +- parse returns desired array contained in array when JSON text begins with square bracket on gcc 7.5.0 [\#2339](https://github.com/nlohmann/json/issues/2339) +- Unexpected deserialization difference between Mac and Linux [\#2338](https://github.com/nlohmann/json/issues/2338) +- Reading ordered\_json from file causes compile error [\#2331](https://github.com/nlohmann/json/issues/2331) +- ignore\_comment=true fails on multiple consecutive lines starting with comments [\#2330](https://github.com/nlohmann/json/issues/2330) +- Update documentation about Homebrew installation and CMake integration - Homebrew [\#2326](https://github.com/nlohmann/json/issues/2326) +- Chinese character initialize error [\#2325](https://github.com/nlohmann/json/issues/2325) +- json.update and vector\does not work with ordered\_json [\#2315](https://github.com/nlohmann/json/issues/2315) +- Ambiguous call to overloaded function [\#2210](https://github.com/nlohmann/json/issues/2210) + +- Fix fallthrough warning [\#2333](https://github.com/nlohmann/json/pull/2333) ([nlohmann](https://github.com/nlohmann)) +- Fix lexer to properly cope with repeated comments [\#2332](https://github.com/nlohmann/json/pull/2332) ([nlohmann](https://github.com/nlohmann)) +- Fix name of Homebrew formula in documentation [\#2327](https://github.com/nlohmann/json/pull/2327) ([nlohmann](https://github.com/nlohmann)) +- fix typo [\#2320](https://github.com/nlohmann/json/pull/2320) ([wx257osn2](https://github.com/wx257osn2)) +- Fix a bug due to missing overloads in ordered\_map container [\#2319](https://github.com/nlohmann/json/pull/2319) ([nlohmann](https://github.com/nlohmann)) +- cmake: install pkg-config file relative to current\_binary\_dir [\#2318](https://github.com/nlohmann/json/pull/2318) ([eli-schwartz](https://github.com/eli-schwartz)) +- Fixed installation of pkg-config file on other than Ubuntu [\#2314](https://github.com/nlohmann/json/pull/2314) ([xvitaly](https://github.com/xvitaly)) + +## [v3.9.0](https://github.com/nlohmann/json/releases/tag/v3.9.0) (2020-07-27) + +[Full Changelog](https://github.com/nlohmann/json/compare/v3.8.0...v3.9.0) + +- Unknown Type Name clang error when using NLOHMANN\_DEFINE\_TYPE\_NON\_INTRUSIVE [\#2313](https://github.com/nlohmann/json/issues/2313) +- Clang 10.0 / GCC 10.1 warnings on disabled exceptions [\#2304](https://github.com/nlohmann/json/issues/2304) +- Application stalls indefinitely with message byte size 10 [\#2293](https://github.com/nlohmann/json/issues/2293) +- linker error [\#2292](https://github.com/nlohmann/json/issues/2292) +- Add support for high-precision numbers in UBJSON encoding [\#2286](https://github.com/nlohmann/json/issues/2286) +- NLOHMANN\_DEFINE\_TYPE\_NON\_INTRUSIVE fails if the length of the argument is 10 [\#2280](https://github.com/nlohmann/json/issues/2280) +- Custom types : MACRO expansion bug [\#2267](https://github.com/nlohmann/json/issues/2267) +- to/from\_json Failing To Convert String [\#2238](https://github.com/nlohmann/json/issues/2238) +- clang 9.0 report warning: unused type alias 'size\_type' \[-Wunused-local-typedef\] [\#2221](https://github.com/nlohmann/json/issues/2221) +- Enormous array created when working with map\ [\#2220](https://github.com/nlohmann/json/issues/2220) +- Can I disable sorting of json values [\#2219](https://github.com/nlohmann/json/issues/2219) +- Getting Qt types to work [\#2217](https://github.com/nlohmann/json/issues/2217) +- Convert to Qt QVariant [\#2216](https://github.com/nlohmann/json/issues/2216) +- How to custom serialize same data type of vector? [\#2215](https://github.com/nlohmann/json/issues/2215) +- json constructor does not support std::optional [\#2214](https://github.com/nlohmann/json/issues/2214) +- Failing to Parse Valid JSON [\#2209](https://github.com/nlohmann/json/issues/2209) +- \(De-\)Serialization of std::variant with namespaces [\#2208](https://github.com/nlohmann/json/issues/2208) +- Addint support for complex type [\#2207](https://github.com/nlohmann/json/issues/2207) +- array\_index possible out of range [\#2205](https://github.com/nlohmann/json/issues/2205) +- Object deserialized as array [\#2204](https://github.com/nlohmann/json/issues/2204) +- Sending to a function a reference to a sub-branch [\#2200](https://github.com/nlohmann/json/issues/2200) +- How to Serialize derived class to JSON object? [\#2199](https://github.com/nlohmann/json/issues/2199) +- JSON incorrectly serialized [\#2198](https://github.com/nlohmann/json/issues/2198) +- Exception Unhandled out\_of\_range error [\#2197](https://github.com/nlohmann/json/issues/2197) +- msgpack serialisation : float is treated as 64bit float, not 32bit float. [\#2196](https://github.com/nlohmann/json/issues/2196) +- Is it possible to use compile-time type guarantees for JSON structures? [\#2195](https://github.com/nlohmann/json/issues/2195) +- Question : performance against python dict [\#2194](https://github.com/nlohmann/json/issues/2194) +- vs2017 compile error [\#2192](https://github.com/nlohmann/json/issues/2192) +- Check if a key exists [\#2191](https://github.com/nlohmann/json/issues/2191) +- Failed to run tests due to missing test data on builders without Internet access [\#2190](https://github.com/nlohmann/json/issues/2190) +- 3.8.0: unit-cbor.cpp test failures [\#2189](https://github.com/nlohmann/json/issues/2189) +- 'nlohmann/json.hpp' file not found [\#2188](https://github.com/nlohmann/json/issues/2188) +- How to send json data over the wire? [\#2185](https://github.com/nlohmann/json/issues/2185) +- Ubuntu 16 not supporting nlohmann/json? [\#2184](https://github.com/nlohmann/json/issues/2184) +- .get\ causing emdash errors [\#2180](https://github.com/nlohmann/json/issues/2180) +- Object properties should not be re-sorted alphabetically [\#2179](https://github.com/nlohmann/json/issues/2179) +- Custom type registration : instrusive API [\#2175](https://github.com/nlohmann/json/issues/2175) +- Many version of the function "void to\_json\(json& j, const MyStruct& struct\)" [\#2171](https://github.com/nlohmann/json/issues/2171) +- How should strings be escaped? [\#2155](https://github.com/nlohmann/json/issues/2155) +- Adding a value to an existing json puts it at the beginning instead of the end [\#2149](https://github.com/nlohmann/json/issues/2149) +- The header file is big, can we use what we need. [\#2134](https://github.com/nlohmann/json/issues/2134) +- Changing the default format for unordered\_map \(or other set\) [\#2132](https://github.com/nlohmann/json/issues/2132) +- Getting size of deserialized bson document [\#2131](https://github.com/nlohmann/json/issues/2131) +- implicit conversion failure [\#2128](https://github.com/nlohmann/json/issues/2128) +- Error thrown when parsing in a subclass [\#2124](https://github.com/nlohmann/json/issues/2124) +- explicit conversion to string not considered for std::map keys in GCC8 [\#2096](https://github.com/nlohmann/json/issues/2096) +- Add support for JSONC [\#2061](https://github.com/nlohmann/json/issues/2061) +- Library provides template arg for string\_type but assumes std::string in some places [\#2059](https://github.com/nlohmann/json/issues/2059) +- incremental parsing with sax\_parser [\#2030](https://github.com/nlohmann/json/issues/2030) +- Question about flatten and unflatten [\#1989](https://github.com/nlohmann/json/issues/1989) +- CBOR parser doesn't skip tags [\#1968](https://github.com/nlohmann/json/issues/1968) +- Compilation failure using Clang on Windows [\#1898](https://github.com/nlohmann/json/issues/1898) +- Fail to build when including json.hpp as a system include [\#1818](https://github.com/nlohmann/json/issues/1818) +- Parsing string into json doesn't preserve the order correctly. [\#1817](https://github.com/nlohmann/json/issues/1817) +- \[C++17\] Allow std::optional to convert to nlohmann::json [\#1749](https://github.com/nlohmann/json/issues/1749) +- How can I save json object in file in order? [\#1717](https://github.com/nlohmann/json/issues/1717) +- Support for Comments [\#1513](https://github.com/nlohmann/json/issues/1513) +- clang compiler: error : unknown type name 'not' [\#1119](https://github.com/nlohmann/json/issues/1119) +- dump\(\) without alphabetical order [\#1106](https://github.com/nlohmann/json/issues/1106) +- operator T\(\) considered harmful [\#958](https://github.com/nlohmann/json/issues/958) +- Order of the elements in JSON object [\#952](https://github.com/nlohmann/json/issues/952) +- How to prevent alphabetical sorting of data? [\#727](https://github.com/nlohmann/json/issues/727) +- Why is an object ordering values by Alphabetical Order? [\#660](https://github.com/nlohmann/json/issues/660) +- Feature request: Comments [\#597](https://github.com/nlohmann/json/issues/597) +- Head Elements Sorting [\#543](https://github.com/nlohmann/json/issues/543) +- Automatic ordered JSON [\#424](https://github.com/nlohmann/json/issues/424) +- Support for comments. [\#376](https://github.com/nlohmann/json/issues/376) +- Optional comment support. [\#363](https://github.com/nlohmann/json/issues/363) +- Strip comments / Minify [\#294](https://github.com/nlohmann/json/issues/294) +- maintaining order of keys during iteration [\#106](https://github.com/nlohmann/json/issues/106) + +- Update documentation [\#2312](https://github.com/nlohmann/json/pull/2312) ([nlohmann](https://github.com/nlohmann)) +- Fix bug in CBOR tag handling [\#2308](https://github.com/nlohmann/json/pull/2308) ([nlohmann](https://github.com/nlohmann)) +- added inline to NLOHMANN\_DEFINE\_TYPE\_NON\_INTRUSIVE macro [\#2306](https://github.com/nlohmann/json/pull/2306) ([jwittbrodt](https://github.com/jwittbrodt)) +- fixes unused variable 'ex' for \#2304 [\#2305](https://github.com/nlohmann/json/pull/2305) ([AODQ](https://github.com/AODQ)) +- Cleanup [\#2303](https://github.com/nlohmann/json/pull/2303) ([nlohmann](https://github.com/nlohmann)) +- Add test with multiple translation units [\#2301](https://github.com/nlohmann/json/pull/2301) ([nlohmann](https://github.com/nlohmann)) +- Merge GitHub actions [\#2300](https://github.com/nlohmann/json/pull/2300) ([nlohmann](https://github.com/nlohmann)) +- Fix unused parameter [\#2299](https://github.com/nlohmann/json/pull/2299) ([nlohmann](https://github.com/nlohmann)) +- Add support for high-precision numbers in UBJSON encoding [\#2297](https://github.com/nlohmann/json/pull/2297) ([nlohmann](https://github.com/nlohmann)) +- fix eof for get\_binary and get\_string [\#2294](https://github.com/nlohmann/json/pull/2294) ([jprochazk](https://github.com/jprochazk)) +- Serialisation macros: increase upper bound on number of member variables [\#2287](https://github.com/nlohmann/json/pull/2287) ([pfeatherstone](https://github.com/pfeatherstone)) +- add inline specifier for detail::combine [\#2285](https://github.com/nlohmann/json/pull/2285) ([T0b1-iOS](https://github.com/T0b1-iOS)) +- Add static assertion for missing binary function in SAX interface [\#2282](https://github.com/nlohmann/json/pull/2282) ([nlohmann](https://github.com/nlohmann)) +- Add test for target\_include\_directories [\#2279](https://github.com/nlohmann/json/pull/2279) ([nlohmann](https://github.com/nlohmann)) +- Clean up maintainer Makefiles and fix some linter warnings [\#2274](https://github.com/nlohmann/json/pull/2274) ([nlohmann](https://github.com/nlohmann)) +- Add option to ignore CBOR tags [\#2273](https://github.com/nlohmann/json/pull/2273) ([nlohmann](https://github.com/nlohmann)) +- Hash function without allocation [\#2269](https://github.com/nlohmann/json/pull/2269) ([nlohmann](https://github.com/nlohmann)) +- Add ClangCL for MSVC [\#2268](https://github.com/nlohmann/json/pull/2268) ([t-b](https://github.com/t-b)) +- Makefile: Always use SED variable [\#2264](https://github.com/nlohmann/json/pull/2264) ([t-b](https://github.com/t-b)) +- Add Xcode 12 CI [\#2262](https://github.com/nlohmann/json/pull/2262) ([nlohmann](https://github.com/nlohmann)) +- Make library work with Clang on Windows [\#2259](https://github.com/nlohmann/json/pull/2259) ([nlohmann](https://github.com/nlohmann)) +- Add ordered\_json specialization with ordered object keys [\#2258](https://github.com/nlohmann/json/pull/2258) ([nlohmann](https://github.com/nlohmann)) +- Add pkg-config file [\#2253](https://github.com/nlohmann/json/pull/2253) ([ericonr](https://github.com/ericonr)) +- Fix regression from \#2181 [\#2251](https://github.com/nlohmann/json/pull/2251) ([nlohmann](https://github.com/nlohmann)) +- Tag binary values in cbor if set [\#2244](https://github.com/nlohmann/json/pull/2244) ([matthewbauer](https://github.com/matthewbauer)) +- Make assert configurable via JSON\_ASSERT [\#2242](https://github.com/nlohmann/json/pull/2242) ([nlohmann](https://github.com/nlohmann)) +- Add specialization of get\_to [\#2233](https://github.com/nlohmann/json/pull/2233) ([nlohmann](https://github.com/nlohmann)) +- Refine documentation of error\_handler parameter [\#2232](https://github.com/nlohmann/json/pull/2232) ([nlohmann](https://github.com/nlohmann)) +- Simplify conversion from/to custom types [\#2225](https://github.com/nlohmann/json/pull/2225) ([nlohmann](https://github.com/nlohmann)) +- Remove unused typedefs [\#2224](https://github.com/nlohmann/json/pull/2224) ([nlohmann](https://github.com/nlohmann)) +- Enable CMake policy CMP0077 [\#2222](https://github.com/nlohmann/json/pull/2222) ([alexreinking](https://github.com/alexreinking)) +- Add option to ignore comments in parse/accept functions [\#2212](https://github.com/nlohmann/json/pull/2212) ([nlohmann](https://github.com/nlohmann)) +- Fix Clang-Tidy warnings [\#2211](https://github.com/nlohmann/json/pull/2211) ([nlohmann](https://github.com/nlohmann)) +- Simple ordered\_json that works on all supported compilers [\#2206](https://github.com/nlohmann/json/pull/2206) ([gatopeich](https://github.com/gatopeich)) +- Use unsigned indizies for array index in json pointer [\#2203](https://github.com/nlohmann/json/pull/2203) ([t-b](https://github.com/t-b)) +- Add option to not rely on Internet connectivity during test stage [\#2202](https://github.com/nlohmann/json/pull/2202) ([nlohmann](https://github.com/nlohmann)) +- Serialize floating-point numbers with 32 bit when possible \(MessagePack\) [\#2201](https://github.com/nlohmann/json/pull/2201) ([nlohmann](https://github.com/nlohmann)) +- Fix consistency in function `int_to_string()` [\#2193](https://github.com/nlohmann/json/pull/2193) ([dota17](https://github.com/dota17)) +- Fix issue\#1275 [\#2181](https://github.com/nlohmann/json/pull/2181) ([dota17](https://github.com/dota17)) +- C++20 support by removing swap specialization [\#2176](https://github.com/nlohmann/json/pull/2176) ([gracicot](https://github.com/gracicot)) +- Feat/explicit conversion operator [\#1559](https://github.com/nlohmann/json/pull/1559) ([theodelrieu](https://github.com/theodelrieu)) + +## [v3.8.0](https://github.com/nlohmann/json/releases/tag/v3.8.0) (2020-06-14) + +[Full Changelog](https://github.com/nlohmann/json/compare/v3.7.3...v3.8.0) + +- sorry delete this issue, i'm stupid [\#2187](https://github.com/nlohmann/json/issues/2187) +- Append to a std::nlohmann::json type [\#2186](https://github.com/nlohmann/json/issues/2186) +- Some troubles to compile the last revision [\#2177](https://github.com/nlohmann/json/issues/2177) +- ​\#​ Top level CMakeLists.txt​ +​project​\(FOO\) +... +​option​\(FOO\_USE\_EXTERNAL\_JSON ​"Use an external JSON library"​ ​OFF​\) +... +​add\_subdirectory​\(thirdparty\) +... +​add\_library​\(foo ...\) +... +​\#​ Note that the namespaced target will always be available regardless of the​ +​\#​ import method​ +​target\_link\_libraries​\(foo ​PRIVATE​ nlohmann\_json::nlohmann\_json\) [\#2170](https://github.com/nlohmann/json/issues/2170) +- https://www.github.com/nlohmann/json/tree/develop/include%2Fnlohmann%2Fjson\_fwd.hpp [\#2169](https://github.com/nlohmann/json/issues/2169) +- templated from\_json of non primitive types causes gcc error [\#2168](https://github.com/nlohmann/json/issues/2168) +- few warnings/errors in copy assignment [\#2167](https://github.com/nlohmann/json/issues/2167) +- Different output when upgrading from clang 9 to clang 10 [\#2166](https://github.com/nlohmann/json/issues/2166) +- Cannot build with VS 2019 / C++17 [\#2163](https://github.com/nlohmann/json/issues/2163) +- Q: When I received an illegal string,How the program knows? [\#2162](https://github.com/nlohmann/json/issues/2162) +- Problem while reading a json file [\#2161](https://github.com/nlohmann/json/issues/2161) +- converting std::chrono::system\_clock::time\_point to json. [\#2159](https://github.com/nlohmann/json/issues/2159) +- how to parse vector\ format [\#2157](https://github.com/nlohmann/json/issues/2157) +- nlohmann::json and =nullptr [\#2156](https://github.com/nlohmann/json/issues/2156) +- test-cbor fails [\#2154](https://github.com/nlohmann/json/issues/2154) +- Accessing array inside array syntax? [\#2151](https://github.com/nlohmann/json/issues/2151) +- Best way to catch errors when querying json [\#2150](https://github.com/nlohmann/json/issues/2150) +- JSON Data Mapping Key-Value from other Key-Value [\#2148](https://github.com/nlohmann/json/issues/2148) +- Conflicts with std \ compiling with GCC 10 [\#2146](https://github.com/nlohmann/json/issues/2146) +- Incorrect CMake FetchContent example [\#2142](https://github.com/nlohmann/json/issues/2142) +- Help for a Beginner? [\#2141](https://github.com/nlohmann/json/issues/2141) +- Read Json from File [\#2139](https://github.com/nlohmann/json/issues/2139) +- How to feed a predefined integer value into json string [\#2138](https://github.com/nlohmann/json/issues/2138) +- getting json array inside json object [\#2135](https://github.com/nlohmann/json/issues/2135) +- Add .contains example to doc [\#2133](https://github.com/nlohmann/json/issues/2133) +- Is it safe to return string.c\_str\(\) received from get\(\)? [\#2130](https://github.com/nlohmann/json/issues/2130) +- GCC 10: Compilation error when including any before including json header in C++17 mode [\#2129](https://github.com/nlohmann/json/issues/2129) +- Intersection of two json files [\#2127](https://github.com/nlohmann/json/issues/2127) +- App crashes when dump method called for non ascii chars. [\#2126](https://github.com/nlohmann/json/issues/2126) +- iterator based erase method [\#2122](https://github.com/nlohmann/json/issues/2122) +- quick and convenient api to get/set nested json values [\#2120](https://github.com/nlohmann/json/issues/2120) +- assigning nullptr to std::string [\#2118](https://github.com/nlohmann/json/issues/2118) +- usless\_cast warnings with gcc 9.3 and 10.1 \(C++17\) [\#2114](https://github.com/nlohmann/json/issues/2114) +- clang 10 warning [\#2113](https://github.com/nlohmann/json/issues/2113) +- Possible incorrect \_MSC\_VER reference [\#2112](https://github.com/nlohmann/json/issues/2112) +- warning under gcc 10.1 [\#2110](https://github.com/nlohmann/json/issues/2110) +- Wdeprecated-declarations from GCC v10.1.0 [\#2109](https://github.com/nlohmann/json/issues/2109) +- Global std::vector from json [\#2108](https://github.com/nlohmann/json/issues/2108) +- heap-buffer-overflow when using nlohmann/json, ASAN, and gtest [\#2107](https://github.com/nlohmann/json/issues/2107) +- exception 0x770DC5AF when i read an special char in json file [\#2106](https://github.com/nlohmann/json/issues/2106) +- json::parse\(\) fails to parse a dump\(2,' '\) output, yet does successfully parse dump\(\) [\#2105](https://github.com/nlohmann/json/issues/2105) +- run test-udt error in MSVC 19.16.27034.0 [\#2103](https://github.com/nlohmann/json/issues/2103) +- Unable to dump to stringstream [\#2102](https://github.com/nlohmann/json/issues/2102) +- Can't ad an object in another objet [\#2101](https://github.com/nlohmann/json/issues/2101) +- Implicit conversion causes "cannot use operator\[\] with a string argument with string" [\#2098](https://github.com/nlohmann/json/issues/2098) +- C++20: char8\_t [\#2097](https://github.com/nlohmann/json/issues/2097) +- Compilation issues when included in project [\#2094](https://github.com/nlohmann/json/issues/2094) +- string value with null character causes infinite loop [\#2093](https://github.com/nlohmann/json/issues/2093) +- corrupted size vs. prev\_size \(aborted\) [\#2092](https://github.com/nlohmann/json/issues/2092) +- Get string field content without return std::string copy [\#2091](https://github.com/nlohmann/json/issues/2091) +- JSON Comments \(JSON 5\) [\#2090](https://github.com/nlohmann/json/issues/2090) +- Remove \#include \ [\#2089](https://github.com/nlohmann/json/issues/2089) +- JSON library as a git submodule [\#2088](https://github.com/nlohmann/json/issues/2088) +- Apple Clang 11.0.3 on MacOS Catalina 10.15.4 not compiling [\#2087](https://github.com/nlohmann/json/issues/2087) +- Value function return empty object even if it exist [\#2086](https://github.com/nlohmann/json/issues/2086) +- Cannot debug but Run works [\#2085](https://github.com/nlohmann/json/issues/2085) +- Question about serialization. [\#2084](https://github.com/nlohmann/json/issues/2084) +- How to include in an external project [\#2083](https://github.com/nlohmann/json/issues/2083) +- Missing tests for binary values [\#2082](https://github.com/nlohmann/json/issues/2082) +- How to override default string serialization? [\#2079](https://github.com/nlohmann/json/issues/2079) +- Can't have a json type as a property in an arbitrary type [\#2078](https://github.com/nlohmann/json/issues/2078) +- New release? [\#2075](https://github.com/nlohmann/json/issues/2075) +- CMake FetchContent \> Updating the documentation? [\#2073](https://github.com/nlohmann/json/issues/2073) +- How to convert STL Vector \(of user defined type\) to Json [\#2072](https://github.com/nlohmann/json/issues/2072) +- how to make an array of objects [\#2070](https://github.com/nlohmann/json/issues/2070) +- ‘\_\_int64’ was not declared [\#2068](https://github.com/nlohmann/json/issues/2068) +- \[json.exception.type\_error.317\] cannot serialize binary data to text JSON [\#2067](https://github.com/nlohmann/json/issues/2067) +- Unexpected end of input; expected '\[', '{', or a literal [\#2066](https://github.com/nlohmann/json/issues/2066) +- Json structure can be nested? [\#2065](https://github.com/nlohmann/json/issues/2065) +- Bug: returning reference to local temporary object [\#2064](https://github.com/nlohmann/json/issues/2064) +- Allow to use non strict parsing [\#2063](https://github.com/nlohmann/json/issues/2063) +- Crashing on json::at [\#2062](https://github.com/nlohmann/json/issues/2062) +- How to convert a const std::vector\ message to a json, to be able to parse it and extract information from it? Can you point to any examples? [\#2058](https://github.com/nlohmann/json/issues/2058) +- Nice library [\#2057](https://github.com/nlohmann/json/issues/2057) +- json.hpp:15372:22: error: expected unqualified-id if \(not std::isfinite\(x\)\): Started getting this bug after updating my XCode [\#2056](https://github.com/nlohmann/json/issues/2056) +- Confused as how I can extract the values from the JSON object. [\#2055](https://github.com/nlohmann/json/issues/2055) +- Warnings with GCC 10 [\#2052](https://github.com/nlohmann/json/issues/2052) +- Warnings with Clang 10 [\#2049](https://github.com/nlohmann/json/issues/2049) +- Update doctest [\#2048](https://github.com/nlohmann/json/issues/2048) +- Unclear error message: "cannot use operator\[\] with a string argument with array" [\#2047](https://github.com/nlohmann/json/issues/2047) +- Serializing std::variant\\> [\#2045](https://github.com/nlohmann/json/issues/2045) +- Crash when parse big jsonfile [\#2042](https://github.com/nlohmann/json/issues/2042) +- How to check if a key exists without silently generating null objects on the path [\#2041](https://github.com/nlohmann/json/issues/2041) +- Crash when traversing over items\(\) of temporary json objects [\#2040](https://github.com/nlohmann/json/issues/2040) +- How to parse multiple line value ? [\#2039](https://github.com/nlohmann/json/issues/2039) +- SAX API uses unsigned std::size\_t but -1 if element size is not known; [\#2037](https://github.com/nlohmann/json/issues/2037) +- How to parse big decimal data [\#2036](https://github.com/nlohmann/json/issues/2036) +- how use template \ struct adl\_serializer [\#2035](https://github.com/nlohmann/json/issues/2035) +- auto iterator returned by find to handle value depending if is string or numeric. [\#2032](https://github.com/nlohmann/json/issues/2032) +- pass find returned iterator to numeric variable. [\#2031](https://github.com/nlohmann/json/issues/2031) +- Parse error on valid json file [\#2029](https://github.com/nlohmann/json/issues/2029) +- Is here any elegant way to combine serialization and deserialization code? [\#2028](https://github.com/nlohmann/json/issues/2028) +- Notes about dump function [\#2027](https://github.com/nlohmann/json/issues/2027) +- Different JSON printouts for empty dictionary on Linux and Mac. [\#2026](https://github.com/nlohmann/json/issues/2026) +- easier way to get exception reason out of json\_sax\_dom\_callback\_parser without exceptions [\#2024](https://github.com/nlohmann/json/issues/2024) +- Using fifo\_map with base class and derived class [\#2023](https://github.com/nlohmann/json/issues/2023) +- Error reading JSON File [\#2022](https://github.com/nlohmann/json/issues/2022) +- Parse causing crash on android. Cannot catch. [\#2021](https://github.com/nlohmann/json/issues/2021) +- Extra backslashes in nested json [\#2020](https://github.com/nlohmann/json/issues/2020) +- How to create patch for merge\_patch input ? [\#2018](https://github.com/nlohmann/json/issues/2018) +- CppUTest/include/CppUTestExt/MockSupport.h:40: error: default argument for ‘MockFailureReporter\* failureReporterForThisCall’ has type ‘void\*’ [\#2017](https://github.com/nlohmann/json/issues/2017) +- including another file [\#2016](https://github.com/nlohmann/json/issues/2016) +- GNU PREREQ Error with gcc 9.3.0 [\#2015](https://github.com/nlohmann/json/issues/2015) +- Parse error: json.exception.parse\_error.101 - invalid string: ill-formed UTF-8 byte [\#2014](https://github.com/nlohmann/json/issues/2014) +- Add more flexibility to basic\_json's ObjectType \(and ArrayType\) [\#2013](https://github.com/nlohmann/json/issues/2013) +- afl persistent mode [\#2012](https://github.com/nlohmann/json/issues/2012) +- Compiler Errors under VS2019 in Appveyor CI [\#2009](https://github.com/nlohmann/json/issues/2009) +- Another compilation failure with Visual Studio [\#2007](https://github.com/nlohmann/json/issues/2007) +- Implicit cast to std::string broken again with VS2019 16.5.0 [\#2006](https://github.com/nlohmann/json/issues/2006) +- error: no matching member function for call to 'AddRaw' [\#2005](https://github.com/nlohmann/json/issues/2005) +- When I re-create an object again after the network request, an error is reported [\#2003](https://github.com/nlohmann/json/issues/2003) +- How to merge \(and not replace\) different Json::Value objects in jsoncpp [\#2001](https://github.com/nlohmann/json/issues/2001) +- scalar transforms to list [\#2000](https://github.com/nlohmann/json/issues/2000) +- Dump JSON containing multibyte characters [\#1999](https://github.com/nlohmann/json/issues/1999) +- Build error when modify value [\#1998](https://github.com/nlohmann/json/issues/1998) +- How do i include a vector of pointers in my json? [\#1997](https://github.com/nlohmann/json/issues/1997) +- Compiler error wrt incomplete types changed in gcc8.3.0-26 [\#1996](https://github.com/nlohmann/json/issues/1996) +- NaN-like comparison behavior of discarded is inconvenient [\#1988](https://github.com/nlohmann/json/issues/1988) +- Maintaining JSON package in my CMake [\#1987](https://github.com/nlohmann/json/issues/1987) +- reading int number and string number [\#1986](https://github.com/nlohmann/json/issues/1986) +- Build error: keyword is hidden by macro definition! [\#1985](https://github.com/nlohmann/json/issues/1985) +- JSON patch diff for op=add formation is not as per standard \(RFC 6902\) [\#1983](https://github.com/nlohmann/json/issues/1983) +- json\_pointer.contains\(\) exception is incorrectly raised [\#1982](https://github.com/nlohmann/json/issues/1982) +- Error with non existing key [\#1981](https://github.com/nlohmann/json/issues/1981) +- Closed [\#1978](https://github.com/nlohmann/json/issues/1978) +- Where is the library built and what is the name? [\#1977](https://github.com/nlohmann/json/issues/1977) +- The cmake\_import example does not build [\#1976](https://github.com/nlohmann/json/issues/1976) +- Dumping core when reading invalid file [\#1975](https://github.com/nlohmann/json/issues/1975) +- Abort in dump\(\) method [\#1973](https://github.com/nlohmann/json/issues/1973) +- Unclear docs regarding parser\_callback\_t callbacks [\#1972](https://github.com/nlohmann/json/issues/1972) +- Possible memory leak on push\_back [\#1971](https://github.com/nlohmann/json/issues/1971) +- Is it possible to get a safe mutable reference/pointer to internal variant used in nlohmann json? [\#1970](https://github.com/nlohmann/json/issues/1970) +- Getting a flatten json to map\ [\#1957](https://github.com/nlohmann/json/issues/1957) +- forced type conversion or lexical cast without exception. [\#1955](https://github.com/nlohmann/json/issues/1955) +- Add json\_view type support to avoid excessive copying [\#1954](https://github.com/nlohmann/json/issues/1954) +- Adding "examples" section for real-life usages [\#1953](https://github.com/nlohmann/json/issues/1953) +- Add nlohmann::json::key\_type [\#1951](https://github.com/nlohmann/json/issues/1951) +- cannot use operator\[\] with a string argument with string [\#1949](https://github.com/nlohmann/json/issues/1949) +- std::ifstream \>\> json error [\#1948](https://github.com/nlohmann/json/issues/1948) +- Cannot update json data in an iterator? [\#1947](https://github.com/nlohmann/json/issues/1947) +- How can i build this library in VS 2017? [\#1943](https://github.com/nlohmann/json/issues/1943) +- json\_pointer.contains\(\) exceptions when path not found [\#1942](https://github.com/nlohmann/json/issues/1942) +- Nested objects serialize/deserialize [\#1941](https://github.com/nlohmann/json/issues/1941) +- Compile warning on architectures that are not x86 [\#1939](https://github.com/nlohmann/json/issues/1939) +- Version of nlohmann-json-dev in debian packages [\#1938](https://github.com/nlohmann/json/issues/1938) +- Create a json object for every cycle [\#1937](https://github.com/nlohmann/json/issues/1937) +- How to get the object name? [\#1936](https://github.com/nlohmann/json/issues/1936) +- Reserve and resize function for basic json [\#1935](https://github.com/nlohmann/json/issues/1935) +- How to use json parse in tsl::ordread\_map? [\#1934](https://github.com/nlohmann/json/issues/1934) +- C++14 support is not enabled with msvc2015 [\#1932](https://github.com/nlohmann/json/issues/1932) +- Need help with to\_json for derived class, keep getting "cannot use operator" [\#1931](https://github.com/nlohmann/json/issues/1931) +- How to handle std::vector\ [\#1930](https://github.com/nlohmann/json/issues/1930) +- Heap corruption issue [\#1929](https://github.com/nlohmann/json/issues/1929) +- Add `std::wistream` support. [\#1928](https://github.com/nlohmann/json/issues/1928) +- This i can write and read any file thanks [\#1927](https://github.com/nlohmann/json/issues/1927) +- How can I get this simple example working? [\#1926](https://github.com/nlohmann/json/issues/1926) +- emplace\_back does not seems to work with the int 0 [\#1925](https://github.com/nlohmann/json/issues/1925) +- Why nlohmann does not release memory [\#1924](https://github.com/nlohmann/json/issues/1924) +- Is it possible to have template `json::parse` with `noexcept` specifier? [\#1922](https://github.com/nlohmann/json/issues/1922) +- JSON to wstring? [\#1921](https://github.com/nlohmann/json/issues/1921) +- GCC 10 tests build failure [\#1920](https://github.com/nlohmann/json/issues/1920) +- Size of binary json representations [\#1919](https://github.com/nlohmann/json/issues/1919) +- Accessing strings \(for example in keys or values\) without having the lib create a copy of it. [\#1916](https://github.com/nlohmann/json/issues/1916) +- operator== documentation should show how to apply custom comparison function [\#1915](https://github.com/nlohmann/json/issues/1915) +- char8\_t and std::u8string support [\#1914](https://github.com/nlohmann/json/issues/1914) +- std::is\_pod is deprecated in C++20 [\#1913](https://github.com/nlohmann/json/issues/1913) +- Incomplete types reported by \(experimental\) GCC10 [\#1912](https://github.com/nlohmann/json/issues/1912) +- Compile warnings on MSVC 14.2 [\#1911](https://github.com/nlohmann/json/issues/1911) +- How to parse json file with type composition of std::optional and std::variant [\#1910](https://github.com/nlohmann/json/issues/1910) +- why root\_schema be implemented as unique\_ptr in json-validator.cpp,could I use it as shared\_ptr? [\#1908](https://github.com/nlohmann/json/issues/1908) +- compile error in gcc-6.3.0 [\#1906](https://github.com/nlohmann/json/issues/1906) +- Scalar constexpr is odr-used when used as json initializer [\#1905](https://github.com/nlohmann/json/issues/1905) +- install Slack app [\#1904](https://github.com/nlohmann/json/issues/1904) +- typo in a comment [\#1903](https://github.com/nlohmann/json/issues/1903) +- Watch JSON variables in Debug [\#1902](https://github.com/nlohmann/json/issues/1902) +- does Json sdk cares about dfc dfd utf8 issue? [\#1901](https://github.com/nlohmann/json/issues/1901) +- Allow multiple line string value in JSON [\#1897](https://github.com/nlohmann/json/issues/1897) +- Writing map to json file [\#1896](https://github.com/nlohmann/json/issues/1896) +- Small documentation mistake [\#1895](https://github.com/nlohmann/json/issues/1895) +- why static function `parse` cann't find in visual studio 2019 [\#1894](https://github.com/nlohmann/json/issues/1894) +- Best way to handle json files with missing key value pairs. [\#1893](https://github.com/nlohmann/json/issues/1893) +- accessing json object as multimap [\#1892](https://github.com/nlohmann/json/issues/1892) +- What is the best way to parse vec3s into glm::vec3 [\#1891](https://github.com/nlohmann/json/issues/1891) +- Get array of items without using vector [\#1890](https://github.com/nlohmann/json/issues/1890) +- Build errors \(clang 11.0.0\) on macOS 10.15.2 [\#1889](https://github.com/nlohmann/json/issues/1889) +- Multiple arrays to vectors help [\#1888](https://github.com/nlohmann/json/issues/1888) +- json::parse\(begin, end\) parse error on first character using uchar\* [\#1887](https://github.com/nlohmann/json/issues/1887) +- issue in free\(\) [\#1886](https://github.com/nlohmann/json/issues/1886) +- is\_number\_unsigned\(\) returns false for positive integers \(int or 0 or 1 literals\) [\#1885](https://github.com/nlohmann/json/issues/1885) +- MSVC build failure with /Zc:\_\_cplusplus and C++17 [\#1883](https://github.com/nlohmann/json/issues/1883) +- RFC 6901 op:replace & arrays [\#1882](https://github.com/nlohmann/json/issues/1882) +- Problem with serialization of my custom template doubly-linked list [\#1881](https://github.com/nlohmann/json/issues/1881) +- is\_array\(\) is True, but raise 'cannot use operator\[\] for object iterators' [\#1880](https://github.com/nlohmann/json/issues/1880) +- Serialize dynamic array [\#1879](https://github.com/nlohmann/json/issues/1879) +- Serialization of struct object. [\#1877](https://github.com/nlohmann/json/issues/1877) +- warning:c4503 [\#1875](https://github.com/nlohmann/json/issues/1875) +- Why are flattened empty objects/arrays not representable? [\#1874](https://github.com/nlohmann/json/issues/1874) +- Container Overflow \(ASAN\) when using operator \>\> on an ifs [\#1873](https://github.com/nlohmann/json/issues/1873) +- Sub-array to vector or map object? [\#1870](https://github.com/nlohmann/json/issues/1870) +- WIP: QT \(cute\) type supports [\#1869](https://github.com/nlohmann/json/issues/1869) +- Compiler flags to disable features and shrink code size [\#1868](https://github.com/nlohmann/json/issues/1868) +- null strings [\#1867](https://github.com/nlohmann/json/issues/1867) +- Struct with array of struct and \_\_attribute\_\_\(\(packed\)\) [\#1866](https://github.com/nlohmann/json/issues/1866) +- Best way to extract numbers in the string? [\#1865](https://github.com/nlohmann/json/issues/1865) +- Displaying \\?\Volume{guid} from string to json giving error [\#1864](https://github.com/nlohmann/json/issues/1864) +- not working when compiling as x86 [\#1863](https://github.com/nlohmann/json/issues/1863) +- Skipping evaluation of log line expressions with a macro, is it possible? [\#1862](https://github.com/nlohmann/json/issues/1862) +- Suppress warnings [\#1861](https://github.com/nlohmann/json/issues/1861) +- conflit with g++ compile option -mwindows [\#1860](https://github.com/nlohmann/json/issues/1860) +- How to serialize nested classes to semi-flat JSON object? [\#1859](https://github.com/nlohmann/json/issues/1859) +- Memory Requirement for large json file [\#1858](https://github.com/nlohmann/json/issues/1858) +- Query a binary format \(BSON, CBOR, MessagePack, UBJSON\) [\#1856](https://github.com/nlohmann/json/issues/1856) +- Documentation on operator\[\] behavior with missing keys [\#1855](https://github.com/nlohmann/json/issues/1855) +- Problem in converting string into JSON; Can't parse successfully. [\#1854](https://github.com/nlohmann/json/issues/1854) +- json.at\_or\_default\(key, defaultval\) [\#1852](https://github.com/nlohmann/json/issues/1852) +- please improve the enum conversion documentation \(my example gist provided\) [\#1851](https://github.com/nlohmann/json/issues/1851) +- Default value returned on ValueType nlohmann::basic\_json::value \(const typename object\_t::key\_type& key, const ValueType& default\_value\) [\#1850](https://github.com/nlohmann/json/issues/1850) +- Accounting for arbitrary precision numerical literals [\#1849](https://github.com/nlohmann/json/issues/1849) +- While trying to make a simple array, I get a nested array instead [\#1848](https://github.com/nlohmann/json/issues/1848) +- How to reuse the parser and serializer intermediate storage? [\#1847](https://github.com/nlohmann/json/issues/1847) +- Too much content in json.hpp leads to slow compilation [\#1845](https://github.com/nlohmann/json/issues/1845) +- Cannot read some data in json file [\#1843](https://github.com/nlohmann/json/issues/1843) +- Precompiled JSON library? [\#1842](https://github.com/nlohmann/json/issues/1842) +- Please change assert into throw\(maybe\) in line 17946 [\#1841](https://github.com/nlohmann/json/issues/1841) +- JSON for modern C++ ECCN information [\#1840](https://github.com/nlohmann/json/issues/1840) +- CI: reduce build time for Travis valgrind [\#1836](https://github.com/nlohmann/json/issues/1836) +- How do I traverse a json object and add new elements into the hierarchy [\#1834](https://github.com/nlohmann/json/issues/1834) +- Invalid UTF-8 byte at index 1: 0x65 [\#1831](https://github.com/nlohmann/json/issues/1831) +- Serialize big data in json [\#1828](https://github.com/nlohmann/json/issues/1828) +- Backslash '\' in value causes exception [\#1827](https://github.com/nlohmann/json/issues/1827) +- from\_json for non default constructible class with dependency injection [\#1819](https://github.com/nlohmann/json/issues/1819) +- Semi-frequent timeouts in `test-unicode_all` with 3.6.1 \(aarch64\) [\#1816](https://github.com/nlohmann/json/issues/1816) +- input\_adapter not user extensible [\#1813](https://github.com/nlohmann/json/issues/1813) +- crash at json::destroy on android [\#1812](https://github.com/nlohmann/json/issues/1812) +- Logs are repeating while cmake [\#1809](https://github.com/nlohmann/json/issues/1809) +- Add a the possibility to add dynamic json objects [\#1795](https://github.com/nlohmann/json/issues/1795) +- Unnecessary test data file in the release [\#1790](https://github.com/nlohmann/json/issues/1790) +- Add support for parse stack limiting [\#1788](https://github.com/nlohmann/json/issues/1788) +- GCC -Wuseless-cast warnings [\#1777](https://github.com/nlohmann/json/issues/1777) +- compilation issue with NVCC 9.0 [\#1773](https://github.com/nlohmann/json/issues/1773) +- Unexpected behavior with fifo\_map json when copy and append [\#1763](https://github.com/nlohmann/json/issues/1763) +- Parse error [\#1761](https://github.com/nlohmann/json/issues/1761) +- Assignment \(using value\(\)\) to nonexistent element behaves differently on Xcode 8 vs Xcode 10 [\#1758](https://github.com/nlohmann/json/issues/1758) +- Readme out of date [\#1756](https://github.com/nlohmann/json/issues/1756) +- cmake\_\* tests don't use the build system's compiler [\#1747](https://github.com/nlohmann/json/issues/1747) +- Static assertions for template type properties required [\#1729](https://github.com/nlohmann/json/issues/1729) +- Use float and possibly half in json::to\_cbor [\#1719](https://github.com/nlohmann/json/issues/1719) +- json::from\_cbor does not respect allow\_exceptions = false when input is string literal [\#1715](https://github.com/nlohmann/json/issues/1715) +- /Zc:\_\_cplusplus leads to C2416 [\#1695](https://github.com/nlohmann/json/issues/1695) +- `unflatten` vs objects with number-ish keys [\#1575](https://github.com/nlohmann/json/issues/1575) +- A "thinner" source code tar as part of release? [\#1572](https://github.com/nlohmann/json/issues/1572) +- Repository is almost 450MB [\#1497](https://github.com/nlohmann/json/issues/1497) +- Substantial performance penalty caused by polymorphic input adapter [\#1457](https://github.com/nlohmann/json/issues/1457) +- Move tests to a separate repo [\#1235](https://github.com/nlohmann/json/issues/1235) +- reduce repos size [\#1185](https://github.com/nlohmann/json/issues/1185) +- CMakeLists.txt in release zips? [\#1184](https://github.com/nlohmann/json/issues/1184) +- Minimal branch? [\#1066](https://github.com/nlohmann/json/issues/1066) +- Move test blobs to a submodule? [\#732](https://github.com/nlohmann/json/issues/732) +- \[Question\] When using this as git submodule, will it clone the whole thing include test data and benchmark? [\#620](https://github.com/nlohmann/json/issues/620) +- Need to improve ignores.. [\#567](https://github.com/nlohmann/json/issues/567) +- Minimal repository \(current size very large\) [\#556](https://github.com/nlohmann/json/issues/556) +- For a header-only library you have to clone 214MB [\#482](https://github.com/nlohmann/json/issues/482) +- 17 MB / 90 MB repo size!? [\#96](https://github.com/nlohmann/json/issues/96) + +- Improve parse\_ubjson\_fuzzer [\#2182](https://github.com/nlohmann/json/pull/2182) ([tanuj208](https://github.com/tanuj208)) +- Add input adapter tests [\#2178](https://github.com/nlohmann/json/pull/2178) ([nlohmann](https://github.com/nlohmann)) +- Fix warnings [\#2174](https://github.com/nlohmann/json/pull/2174) ([nlohmann](https://github.com/nlohmann)) +- Fix PR\#1006 [\#2158](https://github.com/nlohmann/json/pull/2158) ([dota17](https://github.com/dota17)) +- Fix issue\#1972 [\#2153](https://github.com/nlohmann/json/pull/2153) ([dota17](https://github.com/dota17)) +- Update URLs to HTTPS [\#2152](https://github.com/nlohmann/json/pull/2152) ([TotalCaesar659](https://github.com/TotalCaesar659)) +- Fix Issue\#1813: user defined input adapters [\#2145](https://github.com/nlohmann/json/pull/2145) ([FrancoisChabot](https://github.com/FrancoisChabot)) +- Fix issue\#1939: Cast character to unsigned for comparison [\#2144](https://github.com/nlohmann/json/pull/2144) ([XyFreak](https://github.com/XyFreak)) +- Fix issue\#2142: readme: fix typo in CMake FetchContent example [\#2143](https://github.com/nlohmann/json/pull/2143) ([quentin-dev](https://github.com/quentin-dev)) +- Respect allow\_exceptions=false for binary formats [\#2140](https://github.com/nlohmann/json/pull/2140) ([nlohmann](https://github.com/nlohmann)) +- Fix issue 2112 [\#2137](https://github.com/nlohmann/json/pull/2137) ([dota17](https://github.com/dota17)) +- Add bleeding edge GCC to CI [\#2136](https://github.com/nlohmann/json/pull/2136) ([aokellermann](https://github.com/aokellermann)) +- Clean up implementation of binary type [\#2125](https://github.com/nlohmann/json/pull/2125) ([nlohmann](https://github.com/nlohmann)) +- Fixed a compilation error in MSVC [\#2121](https://github.com/nlohmann/json/pull/2121) ([gistrec](https://github.com/gistrec)) +- Overwork CI [\#2119](https://github.com/nlohmann/json/pull/2119) ([nlohmann](https://github.com/nlohmann)) +- Fix warnings from Clang 10 and GCC 9 [\#2116](https://github.com/nlohmann/json/pull/2116) ([nlohmann](https://github.com/nlohmann)) +- Do not include \ when using C++17 [\#2115](https://github.com/nlohmann/json/pull/2115) ([nlohmann](https://github.com/nlohmann)) +- Fix issue\#2086: disallow json::value\_t type parameter in value\(\) [\#2104](https://github.com/nlohmann/json/pull/2104) ([dota17](https://github.com/dota17)) +- Fix Coveralls integration [\#2100](https://github.com/nlohmann/json/pull/2100) ([nlohmann](https://github.com/nlohmann)) +- Add tests for binary values [\#2099](https://github.com/nlohmann/json/pull/2099) ([nlohmann](https://github.com/nlohmann)) +- Use external test data [\#2081](https://github.com/nlohmann/json/pull/2081) ([nlohmann](https://github.com/nlohmann)) +- Remove Doozer CI [\#2080](https://github.com/nlohmann/json/pull/2080) ([nlohmann](https://github.com/nlohmann)) +- Fix README.md. Missing ``` [\#2077](https://github.com/nlohmann/json/pull/2077) ([ArthurSonzogni](https://github.com/ArthurSonzogni)) +- Fix error message about invalid surrogate pairs [\#2076](https://github.com/nlohmann/json/pull/2076) ([rmisev](https://github.com/rmisev)) +- Add CMake fetchcontent documentation and tests [\#2074](https://github.com/nlohmann/json/pull/2074) ([ArthurSonzogni](https://github.com/ArthurSonzogni)) +- Properly pass serialize\_binary to dump function [\#2071](https://github.com/nlohmann/json/pull/2071) ([nlohmann](https://github.com/nlohmann)) +- Fix returning reference to local temporary object [\#2069](https://github.com/nlohmann/json/pull/2069) ([nlohmann](https://github.com/nlohmann)) +- updated wandbox link [\#2060](https://github.com/nlohmann/json/pull/2060) ([alexandermyasnikov](https://github.com/alexandermyasnikov)) +- Fix bug in diff function [\#2054](https://github.com/nlohmann/json/pull/2054) ([nlohmann](https://github.com/nlohmann)) +- Fix GCC compiler warnings [\#2053](https://github.com/nlohmann/json/pull/2053) ([nlohmann](https://github.com/nlohmann)) +- Fix Clang compiler warnings [\#2051](https://github.com/nlohmann/json/pull/2051) ([nlohmann](https://github.com/nlohmann)) +- Update doctest to 2.3.7 [\#2050](https://github.com/nlohmann/json/pull/2050) ([nlohmann](https://github.com/nlohmann)) +- Fix issue\#1719 [\#2044](https://github.com/nlohmann/json/pull/2044) ([dota17](https://github.com/dota17)) +- Add missing testcase about NaN in unit-constructor1.cpp [\#2043](https://github.com/nlohmann/json/pull/2043) ([dota17](https://github.com/dota17)) +- Templatize basic\_json constructor from json\_ref [\#2034](https://github.com/nlohmann/json/pull/2034) ([ArtemSarmini](https://github.com/ArtemSarmini)) +- Replace deprecated std::is\_pod [\#2033](https://github.com/nlohmann/json/pull/2033) ([nlohmann](https://github.com/nlohmann)) +- Fixes \#1971 \(memory leak in basic\_json::push\_back\) [\#2025](https://github.com/nlohmann/json/pull/2025) ([ArtemSarmini](https://github.com/ArtemSarmini)) +- fix \#1982:json\_pointer.contains\(\) exception is incorrectly raised [\#2019](https://github.com/nlohmann/json/pull/2019) ([dota17](https://github.com/dota17)) +- Update LICENSE.MIT [\#2010](https://github.com/nlohmann/json/pull/2010) ([magamig](https://github.com/magamig)) +- PR for \#2006 to test in AppVeyor. [\#2008](https://github.com/nlohmann/json/pull/2008) ([garethsb](https://github.com/garethsb)) +- Added wsjcpp.yml [\#2004](https://github.com/nlohmann/json/pull/2004) ([sea-kg](https://github.com/sea-kg)) +- fix error 'setw' is not a member of 'std' in Wandbox example [\#2002](https://github.com/nlohmann/json/pull/2002) ([alexandermyasnikov](https://github.com/alexandermyasnikov)) +- catch exceptions for json\_pointer : ..../+99 [\#1990](https://github.com/nlohmann/json/pull/1990) ([dota17](https://github.com/dota17)) +- Modify the document about operator== [\#1984](https://github.com/nlohmann/json/pull/1984) ([dota17](https://github.com/dota17)) +- Rename argument array\_index to array\_indx in json\_pointer methods [\#1980](https://github.com/nlohmann/json/pull/1980) ([linev](https://github.com/linev)) +- README: Fix string representation of `dump`ed `json` [\#1979](https://github.com/nlohmann/json/pull/1979) ([alexweej](https://github.com/alexweej)) +- fix warnings in serializer.hpp for VS2019 [\#1969](https://github.com/nlohmann/json/pull/1969) ([dota17](https://github.com/dota17)) +- Fix C26451 warnnings in to\_chars.hpp [\#1967](https://github.com/nlohmann/json/pull/1967) ([dota17](https://github.com/dota17)) +- appveyor.yml: Compile and test with latest version for \_\_cplusplus ma… [\#1958](https://github.com/nlohmann/json/pull/1958) ([t-b](https://github.com/t-b)) +- Fix typo in examples [\#1956](https://github.com/nlohmann/json/pull/1956) ([dota17](https://github.com/dota17)) +- templated input adapters [\#1950](https://github.com/nlohmann/json/pull/1950) ([FrancoisChabot](https://github.com/FrancoisChabot)) +- Update README.md : add a FAQ about memory release [\#1933](https://github.com/nlohmann/json/pull/1933) ([dota17](https://github.com/dota17)) +- Some typos [\#1923](https://github.com/nlohmann/json/pull/1923) ([Coeur](https://github.com/Coeur)) +- Fix link to parse function in README [\#1918](https://github.com/nlohmann/json/pull/1918) ([kastiglione](https://github.com/kastiglione)) +- Readme: Updated links to hunter repo & docs [\#1917](https://github.com/nlohmann/json/pull/1917) ([jothepro](https://github.com/jothepro)) +- Adds instruction for using Build2's package manager [\#1909](https://github.com/nlohmann/json/pull/1909) ([Klaim](https://github.com/Klaim)) +- Update README.md [\#1907](https://github.com/nlohmann/json/pull/1907) ([pauljurczak](https://github.com/pauljurczak)) +- Fix warning: ignoring return value [\#1871](https://github.com/nlohmann/json/pull/1871) ([sonulohani](https://github.com/sonulohani)) +- docs: add central repository as conan source to readme [\#1857](https://github.com/nlohmann/json/pull/1857) ([gocarlos](https://github.com/gocarlos)) +- README: Package in MSYS2 renamed to nlohmann-json [\#1853](https://github.com/nlohmann/json/pull/1853) ([podsvirov](https://github.com/podsvirov)) +- Fix msvc warnings [\#1846](https://github.com/nlohmann/json/pull/1846) ([MBalszun](https://github.com/MBalszun)) +- Update tests that generate CMake projects to use main project's C++ compiler [\#1844](https://github.com/nlohmann/json/pull/1844) ([Tridacnid](https://github.com/Tridacnid)) +- make CMake's version config file architecture-independent [\#1746](https://github.com/nlohmann/json/pull/1746) ([uhoreg](https://github.com/uhoreg)) +- Add binary type support to all binary file formats, as well as an internally represented binary type [\#1662](https://github.com/nlohmann/json/pull/1662) ([OmnipotentEntity](https://github.com/OmnipotentEntity)) + +## [v3.7.3](https://github.com/nlohmann/json/releases/tag/v3.7.3) (2019-11-17) + +[Full Changelog](https://github.com/nlohmann/json/compare/v3.7.2...v3.7.3) + +- Project branches [\#1839](https://github.com/nlohmann/json/issues/1839) +- Quadratic destruction complexity introduced in \#1436 [\#1837](https://github.com/nlohmann/json/issues/1837) +- Trying to open a file [\#1814](https://github.com/nlohmann/json/issues/1814) +- Comparing data type with value\_t::number\_integer fails [\#1783](https://github.com/nlohmann/json/issues/1783) +- CMake version config file is architecture-dependent [\#1697](https://github.com/nlohmann/json/issues/1697) + +- Fix quadratic destruction complexity [\#1838](https://github.com/nlohmann/json/pull/1838) ([nickaein](https://github.com/nickaein)) + +## [v3.7.2](https://github.com/nlohmann/json/releases/tag/v3.7.2) (2019-11-10) + +[Full Changelog](https://github.com/nlohmann/json/compare/v3.7.1...v3.7.2) + +- Segmentation fault in destructor in case of large inputs [\#1835](https://github.com/nlohmann/json/issues/1835) +- type\_name\(\) is not consistent with type\(\) [\#1833](https://github.com/nlohmann/json/issues/1833) +- json::parse is not a member [\#1832](https://github.com/nlohmann/json/issues/1832) +- How do you deal with json\* ? [\#1829](https://github.com/nlohmann/json/issues/1829) +- Combined find\_package/add\_subdirectory not linking libraries [\#1771](https://github.com/nlohmann/json/issues/1771) +- example code for ifstream reading a json file results in no operator error [\#1766](https://github.com/nlohmann/json/issues/1766) +- Warning: unsequenced modification and access to 'range' [\#1674](https://github.com/nlohmann/json/issues/1674) +- Segmentation fault \(stack overflow\) due to unbounded recursion [\#1419](https://github.com/nlohmann/json/issues/1419) +- Stack-overflow \(OSS-Fuzz 4234\) [\#832](https://github.com/nlohmann/json/issues/832) + +- Configure WhiteSource Bolt for GitHub [\#1830](https://github.com/nlohmann/json/pull/1830) ([mend-bolt-for-github[bot]](https://github.com/apps/mend-bolt-for-github)) +- Prevent stackoverflow caused by recursive deconstruction [\#1436](https://github.com/nlohmann/json/pull/1436) ([nickaein](https://github.com/nickaein)) + +## [v3.7.1](https://github.com/nlohmann/json/releases/tag/v3.7.1) (2019-11-06) + +[Full Changelog](https://github.com/nlohmann/json/compare/v3.7.0...v3.7.1) + +- std::is\_constructible is always true with tuple [\#1825](https://github.com/nlohmann/json/issues/1825) +- Can't compile from\_json\(std::valarray\\). [\#1824](https://github.com/nlohmann/json/issues/1824) +- json class should have a get\_or member function [\#1823](https://github.com/nlohmann/json/issues/1823) +- NLOHMANN\_JSON\_SERIALIZE\_ENUM macro capture's json objects by value [\#1822](https://github.com/nlohmann/json/issues/1822) +- Parse fails when number literals start with zero [\#1820](https://github.com/nlohmann/json/issues/1820) +- Weird behaviour of `contains` with `json_pointer` [\#1815](https://github.com/nlohmann/json/issues/1815) +- strange behaviour with json\_pointer and .contains\(\) [\#1811](https://github.com/nlohmann/json/issues/1811) +- Can \#1695 be re-opened? [\#1808](https://github.com/nlohmann/json/issues/1808) +- Merge two json objects [\#1807](https://github.com/nlohmann/json/issues/1807) +- std::is\_constructible\\> when to\_json not defined [\#1805](https://github.com/nlohmann/json/issues/1805) +- Private data on parsing [\#1802](https://github.com/nlohmann/json/issues/1802) +- Capturing Line and Position when querying [\#1800](https://github.com/nlohmann/json/issues/1800) +- json error on parsing DBL\_MAX from string [\#1796](https://github.com/nlohmann/json/issues/1796) +- De/Serialisation of vector of tupple object with nested obect need Help please [\#1794](https://github.com/nlohmann/json/issues/1794) +- Output json is corrupted [\#1793](https://github.com/nlohmann/json/issues/1793) +- variable name byte sometimes used as a \#define [\#1792](https://github.com/nlohmann/json/issues/1792) +- Can't read json file [\#1791](https://github.com/nlohmann/json/issues/1791) +- Problems with special German letters [\#1789](https://github.com/nlohmann/json/issues/1789) +- Support for trailing commas [\#1787](https://github.com/nlohmann/json/issues/1787) +- json\_pointer construction bug [\#1786](https://github.com/nlohmann/json/issues/1786) +- Visual Studio 2017 warning [\#1784](https://github.com/nlohmann/json/issues/1784) +- ciso646 header become obsolete [\#1782](https://github.com/nlohmann/json/issues/1782) +- Migrate LGTM.com installation from OAuth to GitHub App [\#1781](https://github.com/nlohmann/json/issues/1781) +- JSON comparison, contains and operator& [\#1778](https://github.com/nlohmann/json/issues/1778) +- pass a json object to a class contructor adds an array around the object [\#1776](https://github.com/nlohmann/json/issues/1776) +- 'Float' number\_float\_function\_t template parameter name conflicts with C '\#define Float float' [\#1775](https://github.com/nlohmann/json/issues/1775) +- A weird building problem :-\( [\#1774](https://github.com/nlohmann/json/issues/1774) +- What is this json\_ref? [\#1772](https://github.com/nlohmann/json/issues/1772) +- Interoperability with other languages [\#1770](https://github.com/nlohmann/json/issues/1770) +- Json dump [\#1768](https://github.com/nlohmann/json/issues/1768) +- json\_pointer\<\>::back\(\) should be const [\#1764](https://github.com/nlohmann/json/issues/1764) +- How to get value from array [\#1762](https://github.com/nlohmann/json/issues/1762) +- Merge two jsons [\#1757](https://github.com/nlohmann/json/issues/1757) +- Unable to locate nlohmann\_jsonConfig.cmake [\#1755](https://github.com/nlohmann/json/issues/1755) +- json.hpp won;t compile VS2019 CLR/CLI app but does in console app [\#1754](https://github.com/nlohmann/json/issues/1754) +- \[Nested Json Objects\] Segmentation fault [\#1753](https://github.com/nlohmann/json/issues/1753) +- remove/replace assert with exceptions [\#1752](https://github.com/nlohmann/json/issues/1752) +- Add array support for update\(\) function [\#1751](https://github.com/nlohmann/json/issues/1751) +- Is there a reason the `get_to` method is defined in `include/nlohmann/json.hpp` but not in `single_include/nlohmann/json.hpp`? [\#1750](https://github.com/nlohmann/json/issues/1750) +- how to validate json object before calling dump\(\) [\#1748](https://github.com/nlohmann/json/issues/1748) +- Unable to invoke accessors on json objects in lldb [\#1745](https://github.com/nlohmann/json/issues/1745) +- Escaping string before parsing [\#1743](https://github.com/nlohmann/json/issues/1743) +- Construction in a member initializer list using curly braces is set as 'array' [\#1742](https://github.com/nlohmann/json/issues/1742) +- Read a subkey from json object [\#1740](https://github.com/nlohmann/json/issues/1740) +- Serialize vector of glm:vec2 [\#1739](https://github.com/nlohmann/json/issues/1739) +- Support nlohmann::basic\_json::value with JSON\_NOEXCEPTION [\#1738](https://github.com/nlohmann/json/issues/1738) +- how to know the parse is error [\#1737](https://github.com/nlohmann/json/issues/1737) +- How to check if a given key exists in a JSON object [\#1736](https://github.com/nlohmann/json/issues/1736) +- Allow The Colon Key-Value Delimiter To Have A Space Before It \[@ READ ONLY\] [\#1735](https://github.com/nlohmann/json/issues/1735) +- Allow Tail { "Key": "Value" } Comma \[@ READ ONLY\] [\#1734](https://github.com/nlohmann/json/issues/1734) +- No-throw json::value\(\) [\#1733](https://github.com/nlohmann/json/issues/1733) +- JsonObject.dump\(\) [\#1732](https://github.com/nlohmann/json/issues/1732) +- basic\_json has no member "parse" [\#1731](https://github.com/nlohmann/json/issues/1731) +- Exception "type must be string, but is array" [\#1730](https://github.com/nlohmann/json/issues/1730) +- json::contains usage to find a path [\#1727](https://github.com/nlohmann/json/issues/1727) +- How to create JSON Object from my Structures of Data and Json File from that Object [\#1726](https://github.com/nlohmann/json/issues/1726) +- please provide an API to read JSON from file directly. [\#1725](https://github.com/nlohmann/json/issues/1725) +- How to modify a value stored at a key? [\#1723](https://github.com/nlohmann/json/issues/1723) +- CMake not correctly finding the configuration package for 3.7.0 [\#1721](https://github.com/nlohmann/json/issues/1721) +- name typo in the "spack package management" section of README.md [\#1720](https://github.com/nlohmann/json/issues/1720) +- How to add json to another json? [\#1718](https://github.com/nlohmann/json/issues/1718) +- json::parse\(\) ubsan regression with v3.7.0 [\#1716](https://github.com/nlohmann/json/issues/1716) +- What I am doing wrong?!? [\#1714](https://github.com/nlohmann/json/issues/1714) +- Potential memory leak detected by Valgrind [\#1713](https://github.com/nlohmann/json/issues/1713) +- json::parse is not thread safe? [\#1712](https://github.com/nlohmann/json/issues/1712) +- static analysis alarm by cppcheck [\#1711](https://github.com/nlohmann/json/issues/1711) +- The compilation time is slow [\#1710](https://github.com/nlohmann/json/issues/1710) +- not linking properly with cmake [\#1709](https://github.com/nlohmann/json/issues/1709) +- Error in dump\(\) with int64\_t minimum value [\#1708](https://github.com/nlohmann/json/issues/1708) +- Crash on trying to deserialize json string on 3ds homebrew [\#1707](https://github.com/nlohmann/json/issues/1707) +- Can't compile VS2019. 13 Errors [\#1706](https://github.com/nlohmann/json/issues/1706) +- find an object that matches the search criteria [\#1705](https://github.com/nlohmann/json/issues/1705) +- IntelliSense goes crazy on VS2019 [\#1704](https://github.com/nlohmann/json/issues/1704) +- Installing on Ubuntu 16.04 [\#1703](https://github.com/nlohmann/json/issues/1703) +- Where is json::parse now? [\#1702](https://github.com/nlohmann/json/issues/1702) +- Forward header should't be amalgamated [\#1700](https://github.com/nlohmann/json/issues/1700) +- Json support for Cmake version 2.8.12 [\#1699](https://github.com/nlohmann/json/issues/1699) +- Intruisive scientific notation when using .dump\(\); [\#1698](https://github.com/nlohmann/json/issues/1698) +- Is there support for automatic serialization/deserialization? [\#1696](https://github.com/nlohmann/json/issues/1696) +- on MSVC dump\(\) will hard crash for larger json [\#1693](https://github.com/nlohmann/json/issues/1693) +- puzzled implicit conversions [\#1692](https://github.com/nlohmann/json/issues/1692) +- Information: My project uses this awesome library [\#1691](https://github.com/nlohmann/json/issues/1691) +- Consider listing files explicitly instead of using GLOB [\#1686](https://github.com/nlohmann/json/issues/1686) +- Failing tests on MSVC with VS2019 15.9.13 x64 [\#1685](https://github.com/nlohmann/json/issues/1685) +- Change from v2 to v3. Encoding with cp1252 [\#1680](https://github.com/nlohmann/json/issues/1680) +- How to add Fifo\_map into json using Cmake [\#1679](https://github.com/nlohmann/json/issues/1679) +- include.zip should contain meson.build [\#1672](https://github.com/nlohmann/json/issues/1672) +- \[Question\] How do I parse JSON into custom types? [\#1669](https://github.com/nlohmann/json/issues/1669) +- Binary \(0x05\) data type for BSON to JSON conversion [\#1668](https://github.com/nlohmann/json/issues/1668) +- Possible to call dump from lldb? [\#1666](https://github.com/nlohmann/json/issues/1666) +- Segmentation fault when linked with libunwind [\#1665](https://github.com/nlohmann/json/issues/1665) +- Should I include single-header after my to\_json and from\_json custom functions declaration? Why not? [\#1663](https://github.com/nlohmann/json/issues/1663) +- Errors/Warnings in VS 2019 when Including Header File [\#1659](https://github.com/nlohmann/json/issues/1659) +- Return null object from object's const operator\[\] as well. [\#1658](https://github.com/nlohmann/json/issues/1658) +- Can't stream json object in to std::basic\_stringstream\ [\#1656](https://github.com/nlohmann/json/issues/1656) +- C2440 in vs2015 cannot convert from 'initializer-list' to nlohmann::basic\_json [\#1655](https://github.com/nlohmann/json/issues/1655) +- Issues around get and pointers [\#1653](https://github.com/nlohmann/json/issues/1653) +- Non-member operator== breaks enum \(de\)serialization [\#1647](https://github.com/nlohmann/json/issues/1647) +- Valgrind: bytes in 1 blocks are definitely lost [\#1646](https://github.com/nlohmann/json/issues/1646) +- Convenient way to make 'basic\_json' accept 'QString' as an key type as well? [\#1640](https://github.com/nlohmann/json/issues/1640) +- mongodb: nan, inf [\#1599](https://github.com/nlohmann/json/issues/1599) +- Error in adl\_serializer [\#1590](https://github.com/nlohmann/json/issues/1590) +- Injecting class during serialization [\#1584](https://github.com/nlohmann/json/issues/1584) +- output\_adapter not user extensible [\#1534](https://github.com/nlohmann/json/issues/1534) +- Inclusion of nlohmann/json.hpp causes OS/ABI to change on Linux [\#1410](https://github.com/nlohmann/json/issues/1410) +- Add library versioning using inline namespaces [\#1394](https://github.com/nlohmann/json/issues/1394) +- CBOR byte string support [\#1129](https://github.com/nlohmann/json/issues/1129) +- How to deserialize array with derived objects [\#716](https://github.com/nlohmann/json/issues/716) + +- Add restriction for tuple specialization of to\_json [\#1826](https://github.com/nlohmann/json/pull/1826) ([cbegue](https://github.com/cbegue)) +- Fix for \#1647 [\#1821](https://github.com/nlohmann/json/pull/1821) ([AnthonyVH](https://github.com/AnthonyVH)) +- Fix issue \#1805 [\#1806](https://github.com/nlohmann/json/pull/1806) ([cbegue](https://github.com/cbegue)) +- Fix some spelling errors - mostly in comments & documentation. [\#1803](https://github.com/nlohmann/json/pull/1803) ([flopp](https://github.com/flopp)) +- Update Hedley to v11. [\#1799](https://github.com/nlohmann/json/pull/1799) ([nemequ](https://github.com/nemequ)) +- iteration\_proxy: Fix integer truncation from std::size\_t to int [\#1797](https://github.com/nlohmann/json/pull/1797) ([t-b](https://github.com/t-b)) +- appveyor.yml: Add MSVC 16 2019 support [\#1780](https://github.com/nlohmann/json/pull/1780) ([t-b](https://github.com/t-b)) +- test/CMakeLists.txt: Use an explicit list instead of GLOB [\#1779](https://github.com/nlohmann/json/pull/1779) ([t-b](https://github.com/t-b)) +- Make json\_pointer::back const \(resolves \#1764\) [\#1769](https://github.com/nlohmann/json/pull/1769) ([chris0x44](https://github.com/chris0x44)) +- did you mean 'serialization'? [\#1767](https://github.com/nlohmann/json/pull/1767) ([0xflotus](https://github.com/0xflotus)) +- Allow items\(\) to be used with custom string [\#1765](https://github.com/nlohmann/json/pull/1765) ([crazyjul](https://github.com/crazyjul)) +- Cppcheck fixes [\#1760](https://github.com/nlohmann/json/pull/1760) ([Xav83](https://github.com/Xav83)) +- Fix and add test's for SFINAE problem [\#1741](https://github.com/nlohmann/json/pull/1741) ([tete17](https://github.com/tete17)) +- Fix clang sanitizer invocation [\#1728](https://github.com/nlohmann/json/pull/1728) ([t-b](https://github.com/t-b)) +- Add gcc 9 and compile with experimental C++20 support [\#1724](https://github.com/nlohmann/json/pull/1724) ([t-b](https://github.com/t-b)) +- Fix int64 min issue [\#1722](https://github.com/nlohmann/json/pull/1722) ([t-b](https://github.com/t-b)) +- release: add singleinclude and meson.build to include.zip [\#1694](https://github.com/nlohmann/json/pull/1694) ([eli-schwartz](https://github.com/eli-schwartz)) + +## [v3.7.0](https://github.com/nlohmann/json/releases/tag/v3.7.0) (2019-07-28) + +[Full Changelog](https://github.com/nlohmann/json/compare/v3.6.1...v3.7.0) + +- How can I retrieve uknown strings from json file in my C++ program. [\#1684](https://github.com/nlohmann/json/issues/1684) +- contains\(\) is sometimes causing stack-based buffer overrun exceptions [\#1683](https://github.com/nlohmann/json/issues/1683) +- How to deserialize arrays from json [\#1681](https://github.com/nlohmann/json/issues/1681) +- Compilation failed in VS2015 [\#1678](https://github.com/nlohmann/json/issues/1678) +- Why the compiled object file is so huge? [\#1677](https://github.com/nlohmann/json/issues/1677) +- From Version 2.1.1 to 3.6.1 serialize std::set [\#1676](https://github.com/nlohmann/json/issues/1676) +- Qt deprecation model halting compiltion [\#1675](https://github.com/nlohmann/json/issues/1675) +- Build For Raspberry pi , Rapbery with new Compiler C++17 [\#1671](https://github.com/nlohmann/json/issues/1671) +- Build from Raspberry pi [\#1667](https://github.com/nlohmann/json/issues/1667) +- Can not translate map with integer key to dict string ? [\#1664](https://github.com/nlohmann/json/issues/1664) +- Double type converts to scientific notation [\#1661](https://github.com/nlohmann/json/issues/1661) +- Missing v3.6.1 tag on master branch [\#1657](https://github.com/nlohmann/json/issues/1657) +- Support Fleese Binary Data Format [\#1654](https://github.com/nlohmann/json/issues/1654) +- Suggestion: replace alternative tokens for !, && and || with their symbols [\#1652](https://github.com/nlohmann/json/issues/1652) +- Build failure test-allocator.vcxproj [\#1651](https://github.com/nlohmann/json/issues/1651) +- How to provide function json& to\_json\(\) which is similar as 'void to\_json\(json&j, const CObject& obj\)' ? [\#1650](https://github.com/nlohmann/json/issues/1650) +- Can't throw exception when starting file is a number [\#1649](https://github.com/nlohmann/json/issues/1649) +- to\_json / from\_json with nested type [\#1648](https://github.com/nlohmann/json/issues/1648) +- How to create a json object from a std::string, created by j.dump? [\#1645](https://github.com/nlohmann/json/issues/1645) +- Problem getting vector \(array\) of strings [\#1644](https://github.com/nlohmann/json/issues/1644) +- json.hpp compilation issue with other typedefs with same name [\#1642](https://github.com/nlohmann/json/issues/1642) +- nlohmann::adl\_serializer\::to\_json no matching overloaded function found [\#1641](https://github.com/nlohmann/json/issues/1641) +- overwrite adl\_serializer\ to change behaviour [\#1638](https://github.com/nlohmann/json/issues/1638) +- json.SelectToken\("Manufacturers.Products.Price"\); [\#1637](https://github.com/nlohmann/json/issues/1637) +- Add json type as value [\#1636](https://github.com/nlohmann/json/issues/1636) +- Unit conversion test error: conversion from 'nlohmann::json' to non-scalar type 'std::string\_view' requested [\#1634](https://github.com/nlohmann/json/issues/1634) +- nlohmann VS JsonCpp by C++17 [\#1633](https://github.com/nlohmann/json/issues/1633) +- To integrate an inline helper function that return type name as string [\#1632](https://github.com/nlohmann/json/issues/1632) +- Return JSON as reference [\#1631](https://github.com/nlohmann/json/issues/1631) +- Updating from an older version causes problems with assing a json object to a struct [\#1630](https://github.com/nlohmann/json/issues/1630) +- Can without default constructor function for user defined classes when only to\_json is needed? [\#1629](https://github.com/nlohmann/json/issues/1629) +- Compilation fails with clang 6.x-8.x in C++14 mode [\#1628](https://github.com/nlohmann/json/issues/1628) +- Treating floating point as string [\#1627](https://github.com/nlohmann/json/issues/1627) +- error parsing character å [\#1626](https://github.com/nlohmann/json/issues/1626) +- \[Help\] How to Improve Json Output Performance with Large Json Arrays [\#1624](https://github.com/nlohmann/json/issues/1624) +- Suggested link changes for reporting new issues \[blob/develop/REAME.md and blob/develop/.github/CONTRIBUTING.md\] [\#1623](https://github.com/nlohmann/json/issues/1623) +- Broken link to issue template in CONTRIBUTING.md [\#1622](https://github.com/nlohmann/json/issues/1622) +- Missing word in README.md file [\#1621](https://github.com/nlohmann/json/issues/1621) +- Package manager instructions in README for brew is incorrect [\#1620](https://github.com/nlohmann/json/issues/1620) +- Building with Visual Studio 2019 [\#1619](https://github.com/nlohmann/json/issues/1619) +- Precedence of to\_json and builtin harmful [\#1617](https://github.com/nlohmann/json/issues/1617) +- The type json is missing from the html documentation [\#1616](https://github.com/nlohmann/json/issues/1616) +- variant is not support in Release 3.6.1? [\#1615](https://github.com/nlohmann/json/issues/1615) +- Replace assert with throw for const operator\[\] [\#1614](https://github.com/nlohmann/json/issues/1614) +- Memory Overhead is Too High \(10x or more\) [\#1613](https://github.com/nlohmann/json/issues/1613) +- program crash everytime, when other data type incomming in json stream as expected [\#1612](https://github.com/nlohmann/json/issues/1612) +- Improved Enum Support [\#1611](https://github.com/nlohmann/json/issues/1611) +- is it possible convert json object back to stl container ? [\#1610](https://github.com/nlohmann/json/issues/1610) +- Add C++17-like emplace.back\(\) for arrays. [\#1609](https://github.com/nlohmann/json/issues/1609) +- is\_nothrow\_copy\_constructible fails for json::const\_iterator on MSVC2015 x86 Debug build [\#1608](https://github.com/nlohmann/json/issues/1608) +- Reading and writing array elements [\#1607](https://github.com/nlohmann/json/issues/1607) +- Converting json::value to int [\#1605](https://github.com/nlohmann/json/issues/1605) +- I have a vector of keys and and a string of value and i want to create nested json array [\#1604](https://github.com/nlohmann/json/issues/1604) +- In compatible JSON object from nlohmann::json to nohman::json - unexpected end of input; expected '\[', '{', or a literal [\#1603](https://github.com/nlohmann/json/issues/1603) +- json parser crash if having a large number integer in message [\#1602](https://github.com/nlohmann/json/issues/1602) +- Value method with undocumented throwing 302 exception [\#1601](https://github.com/nlohmann/json/issues/1601) +- Accessing value with json pointer adds key if not existing [\#1600](https://github.com/nlohmann/json/issues/1600) +- README.md broken link to project documentation [\#1597](https://github.com/nlohmann/json/issues/1597) +- Random Kudos: Thanks for your work on this! [\#1596](https://github.com/nlohmann/json/issues/1596) +- json::parse return value and errors [\#1595](https://github.com/nlohmann/json/issues/1595) +- initializer list constructor makes curly brace initialization fragile [\#1594](https://github.com/nlohmann/json/issues/1594) +- trying to log message for missing keyword, difference between \["foo"\] and at\("foo"\) [\#1593](https://github.com/nlohmann/json/issues/1593) +- std::string and std::wstring `to_json` [\#1592](https://github.com/nlohmann/json/issues/1592) +- I have a C structure which I need to convert to a JSON. How do I do it? Haven't found proper examples so far. [\#1591](https://github.com/nlohmann/json/issues/1591) +- dump\_escaped possible error ? [\#1589](https://github.com/nlohmann/json/issues/1589) +- json::parse\(\) into a vector\ results in unhandled exception [\#1587](https://github.com/nlohmann/json/issues/1587) +- push\_back\(\)/emplace\_back\(\) on array invalidates pointers to existing array items [\#1586](https://github.com/nlohmann/json/issues/1586) +- Getting nlohmann::detail::parse\_error on JSON generated by nlohmann::json not sure why [\#1583](https://github.com/nlohmann/json/issues/1583) +- getting error terminate called after throwing an instance of 'std::domain\_error' what\(\): cannot use at\(\) with string [\#1582](https://github.com/nlohmann/json/issues/1582) +- how i create json file [\#1581](https://github.com/nlohmann/json/issues/1581) +- prevent rounding of double datatype values [\#1580](https://github.com/nlohmann/json/issues/1580) +- Documentation Container Overview Doesn't Reference Const Methods [\#1579](https://github.com/nlohmann/json/issues/1579) +- Writing an array into a nlohmann::json object [\#1578](https://github.com/nlohmann/json/issues/1578) +- compilation error when using with another library [\#1577](https://github.com/nlohmann/json/issues/1577) +- Homebrew on OSX doesn't install cmake config file [\#1576](https://github.com/nlohmann/json/issues/1576) +- JSON Parse Out of Range Error [\#1574](https://github.com/nlohmann/json/issues/1574) +- Integrating into existing CMake Project [\#1573](https://github.com/nlohmann/json/issues/1573) +- conversion to std::string failed [\#1571](https://github.com/nlohmann/json/issues/1571) +- jPtr operation does not throw [\#1569](https://github.com/nlohmann/json/issues/1569) +- How to generate dll file for this project [\#1568](https://github.com/nlohmann/json/issues/1568) +- how to pass variable data to json in c [\#1567](https://github.com/nlohmann/json/issues/1567) +- I want to achieve an upgraded function. [\#1566](https://github.com/nlohmann/json/issues/1566) +- How to determine the type of elements read from a JSON array? [\#1564](https://github.com/nlohmann/json/issues/1564) +- try\_get\_to [\#1563](https://github.com/nlohmann/json/issues/1563) +- example code compile error [\#1562](https://github.com/nlohmann/json/issues/1562) +- How to iterate over nested json object [\#1561](https://github.com/nlohmann/json/issues/1561) +- Build Option/Separate Function to Allow to Throw on Duplicate Keys [\#1560](https://github.com/nlohmann/json/issues/1560) +- Compiler Switches -Weffc++ & -Wshadow are throwing errors [\#1558](https://github.com/nlohmann/json/issues/1558) +- warning: use of the 'nodiscard' attribute is a C++17 extension [\#1557](https://github.com/nlohmann/json/issues/1557) +- Import/Export compressed JSON files [\#1556](https://github.com/nlohmann/json/issues/1556) +- GDB renderers for json library [\#1554](https://github.com/nlohmann/json/issues/1554) +- Is it possible to construct a json string object from a binary buffer? [\#1553](https://github.com/nlohmann/json/issues/1553) +- json objects in list [\#1552](https://github.com/nlohmann/json/issues/1552) +- Matrix output [\#1550](https://github.com/nlohmann/json/issues/1550) +- Using json merge\_patch on ordered non-alphanumeric datasets [\#1549](https://github.com/nlohmann/json/issues/1549) +- Invalid parsed value for big integer [\#1548](https://github.com/nlohmann/json/issues/1548) +- Integrating with android ndk issues. [\#1547](https://github.com/nlohmann/json/issues/1547) +- add noexcept json::value\("key", default\) method variant? [\#1546](https://github.com/nlohmann/json/issues/1546) +- Thank you! 🙌 [\#1545](https://github.com/nlohmann/json/issues/1545) +- Output and input matrix [\#1544](https://github.com/nlohmann/json/issues/1544) +- Add regression tests for MSVC [\#1543](https://github.com/nlohmann/json/issues/1543) +- \[Help Needed!\] Season of Docs [\#1542](https://github.com/nlohmann/json/issues/1542) +- program still abort\(\) or exit\(\) with try catch [\#1541](https://github.com/nlohmann/json/issues/1541) +- Have a json::type\_error exception because of JSON object [\#1540](https://github.com/nlohmann/json/issues/1540) +- Quoted numbers [\#1538](https://github.com/nlohmann/json/issues/1538) +- Reading a JSON file into an object [\#1537](https://github.com/nlohmann/json/issues/1537) +- Releases 3.6.0 and 3.6.1 don't build on conda / windows [\#1536](https://github.com/nlohmann/json/issues/1536) +- \[Clang\] warning: use of the 'nodiscard' attribute is a C++17 extension \[-Wc++17-extensions\] [\#1535](https://github.com/nlohmann/json/issues/1535) +- wchar\_t/std::wstring json can be created but not accessed [\#1533](https://github.com/nlohmann/json/issues/1533) +- json stringify [\#1532](https://github.com/nlohmann/json/issues/1532) +- How can I use it from gcc on RPI [\#1528](https://github.com/nlohmann/json/issues/1528) +- std::pair treated as an array instead of key-value in `std::vector>` [\#1520](https://github.com/nlohmann/json/issues/1520) +- Excessive Memory Usage for Large Json File [\#1516](https://github.com/nlohmann/json/issues/1516) +- SAX dumper [\#1512](https://github.com/nlohmann/json/issues/1512) +- Conversion to user type containing a std::vector not working with documented approach [\#1511](https://github.com/nlohmann/json/issues/1511) +- Inconsistent use of type alias. [\#1507](https://github.com/nlohmann/json/issues/1507) +- Is there a current way to represent strings as json int? [\#1503](https://github.com/nlohmann/json/issues/1503) +- Intermittent issues with loadJSON [\#1484](https://github.com/nlohmann/json/issues/1484) +- use json construct std::string [\#1462](https://github.com/nlohmann/json/issues/1462) +- JSON Creation [\#1461](https://github.com/nlohmann/json/issues/1461) +- Null bytes in files are treated like EOF [\#1095](https://github.com/nlohmann/json/issues/1095) +- Feature: to\_string\(const json& j\); [\#916](https://github.com/nlohmann/json/issues/916) + +- Use GNUInstallDirs instead of hard-coded path. [\#1673](https://github.com/nlohmann/json/pull/1673) ([ghost](https://github.com/ghost)) +- Package Manager: MSYS2 \(pacman\) [\#1670](https://github.com/nlohmann/json/pull/1670) ([podsvirov](https://github.com/podsvirov)) +- Fix json.hpp compilation issue with other typedefs with same name \(Issue \#1642\) [\#1643](https://github.com/nlohmann/json/pull/1643) ([kevinlul](https://github.com/kevinlul)) +- Add explicit conversion from json to std::string\_view in conversion unit test [\#1639](https://github.com/nlohmann/json/pull/1639) ([taylorhoward92](https://github.com/taylorhoward92)) +- Minor fixes in docs [\#1625](https://github.com/nlohmann/json/pull/1625) ([nickaein](https://github.com/nickaein)) +- Fix broken links to documentation [\#1598](https://github.com/nlohmann/json/pull/1598) ([nickaein](https://github.com/nickaein)) +- Added to\_string and added basic tests [\#1585](https://github.com/nlohmann/json/pull/1585) ([Macr0Nerd](https://github.com/Macr0Nerd)) +- Regression tests for MSVC [\#1570](https://github.com/nlohmann/json/pull/1570) ([nickaein](https://github.com/nickaein)) +- Fix/1511 [\#1555](https://github.com/nlohmann/json/pull/1555) ([theodelrieu](https://github.com/theodelrieu)) +- Remove C++17 extension warning from clang; \#1535 [\#1551](https://github.com/nlohmann/json/pull/1551) ([heavywatal](https://github.com/heavywatal)) +- moved from Catch to doctest for unit tests [\#1439](https://github.com/nlohmann/json/pull/1439) ([onqtam](https://github.com/onqtam)) + +## [v3.6.1](https://github.com/nlohmann/json/releases/tag/v3.6.1) (2019-03-20) + +[Full Changelog](https://github.com/nlohmann/json/compare/3.6.1...v3.6.1) + +## [3.6.1](https://github.com/nlohmann/json/releases/tag/3.6.1) (2019-03-20) + +[Full Changelog](https://github.com/nlohmann/json/compare/v3.6.0...3.6.1) + +- Failed to build with \ [\#1531](https://github.com/nlohmann/json/issues/1531) +- Compiling 3.6.0 with GCC \> 7, array vs std::array \#590 is back [\#1530](https://github.com/nlohmann/json/issues/1530) +- 3.6.0: warning: missing initializer for member 'std::array\::\_M\_elems' \[-Wmissing-field-initializers\] [\#1527](https://github.com/nlohmann/json/issues/1527) +- unable to parse json [\#1525](https://github.com/nlohmann/json/issues/1525) + +## [v3.6.0](https://github.com/nlohmann/json/releases/tag/v3.6.0) (2019-03-19) + +[Full Changelog](https://github.com/nlohmann/json/compare/v3.5.0...v3.6.0) + +- How can I turn a string of a json array into a json array? [\#1526](https://github.com/nlohmann/json/issues/1526) +- Minor: missing a std:: namespace tag [\#1521](https://github.com/nlohmann/json/issues/1521) +- how to precision to four decimal for double when use to\_json [\#1519](https://github.com/nlohmann/json/issues/1519) +- error parse [\#1518](https://github.com/nlohmann/json/issues/1518) +- Compile error: template argument deduction/substitution failed [\#1515](https://github.com/nlohmann/json/issues/1515) +- std::complex type [\#1510](https://github.com/nlohmann/json/issues/1510) +- CBOR byte string support [\#1509](https://github.com/nlohmann/json/issues/1509) +- Compilation error getting a std::pair\<\> on latest VS 2017 compiler [\#1506](https://github.com/nlohmann/json/issues/1506) +- "Integration" section of documentation needs update? [\#1505](https://github.com/nlohmann/json/issues/1505) +- Json object from string from a TCP socket [\#1504](https://github.com/nlohmann/json/issues/1504) +- MSVC warning C4946 \("reinterpret\_cast used between related classes"\) compiling json.hpp [\#1502](https://github.com/nlohmann/json/issues/1502) +- How to programmatically fill an n-th dimensional JSON object? [\#1501](https://github.com/nlohmann/json/issues/1501) +- Error compiling with clang and `JSON_NOEXCEPTION`: need to include `cstdlib` [\#1500](https://github.com/nlohmann/json/issues/1500) +- The code compiles unsuccessfully with android-ndk-r10e [\#1499](https://github.com/nlohmann/json/issues/1499) +- Cmake 3.1 in develop, when is it likely to make it into a stable release? [\#1498](https://github.com/nlohmann/json/issues/1498) +- Some Help please object inside array [\#1494](https://github.com/nlohmann/json/issues/1494) +- How to get data into vector of user-defined type from a Json object [\#1493](https://github.com/nlohmann/json/issues/1493) +- how to find subelement without loop [\#1490](https://github.com/nlohmann/json/issues/1490) +- json to std::map [\#1487](https://github.com/nlohmann/json/issues/1487) +- Type in README.md [\#1486](https://github.com/nlohmann/json/issues/1486) +- Error in parsing and reading msgpack-lite [\#1485](https://github.com/nlohmann/json/issues/1485) +- Compiling issues with libc 2.12 [\#1483](https://github.com/nlohmann/json/issues/1483) +- How do I use reference or pointer binding values? [\#1482](https://github.com/nlohmann/json/issues/1482) +- Compilation fails in MSVC with the Microsoft Language Extensions disabled [\#1481](https://github.com/nlohmann/json/issues/1481) +- Functional visit [\#1480](https://github.com/nlohmann/json/issues/1480) +- \[Question\] Unescaped dump [\#1479](https://github.com/nlohmann/json/issues/1479) +- Some Help please [\#1478](https://github.com/nlohmann/json/issues/1478) +- Global variables are stored within the JSON file, how do I declare them as global variables when I read them out in my C++ program? [\#1476](https://github.com/nlohmann/json/issues/1476) +- Unable to modify one of the values within the JSON file, and save it [\#1475](https://github.com/nlohmann/json/issues/1475) +- Documentation of parse function has two identical @pre causes [\#1473](https://github.com/nlohmann/json/issues/1473) +- GCC 9.0 build failure [\#1472](https://github.com/nlohmann/json/issues/1472) +- Can we have an `exists()` method? [\#1471](https://github.com/nlohmann/json/issues/1471) +- How to parse multi object json from file? [\#1470](https://github.com/nlohmann/json/issues/1470) +- How to returns the name of the upper object? [\#1467](https://github.com/nlohmann/json/issues/1467) +- Error: "tuple\_size" has already been declared in the current scope [\#1466](https://github.com/nlohmann/json/issues/1466) +- Checking keys of two jsons against eachother [\#1465](https://github.com/nlohmann/json/issues/1465) +- Disable installation when used as meson subproject [\#1463](https://github.com/nlohmann/json/issues/1463) +- Unpack list of integers to a std::vector\ [\#1460](https://github.com/nlohmann/json/issues/1460) +- Implement DRY definition of JSON representation of a c++ class [\#1459](https://github.com/nlohmann/json/issues/1459) +- json.exception.type\_error.305 with GCC 4.9 when using C++ {} initializer [\#1458](https://github.com/nlohmann/json/issues/1458) +- API to convert an "uninitialized" json into an empty object or empty array [\#1456](https://github.com/nlohmann/json/issues/1456) +- How to parse a vector of objects with const attributes [\#1453](https://github.com/nlohmann/json/issues/1453) +- NLOHMANN\_JSON\_SERIALIZE\_ENUM potentially requires duplicate definitions [\#1450](https://github.com/nlohmann/json/issues/1450) +- Question about making json object from file directory [\#1449](https://github.com/nlohmann/json/issues/1449) +- .get\(\) throws error if used with userdefined structs in unordered\_map [\#1448](https://github.com/nlohmann/json/issues/1448) +- Integer Overflow \(OSS-Fuzz 12506\) [\#1447](https://github.com/nlohmann/json/issues/1447) +- If a string has too many invalid UTF-8 characters, json::dump attempts to index an array out of bounds. [\#1445](https://github.com/nlohmann/json/issues/1445) +- Setting values of .JSON file [\#1444](https://github.com/nlohmann/json/issues/1444) +- alias object\_t::key\_type in basic\_json [\#1442](https://github.com/nlohmann/json/issues/1442) +- Latest Ubuntu package is 2.1.1 [\#1438](https://github.com/nlohmann/json/issues/1438) +- lexer.hpp\(1363\) '\_snprintf': is not a member | Visualstudio 2017 [\#1437](https://github.com/nlohmann/json/issues/1437) +- Static method invites inadvertent logic error. [\#1433](https://github.com/nlohmann/json/issues/1433) +- EOS compilation produces "fatal error: 'nlohmann/json.hpp' file not found" [\#1432](https://github.com/nlohmann/json/issues/1432) +- Support for bad commas [\#1429](https://github.com/nlohmann/json/issues/1429) +- Please have one base exception class for all json exceptions [\#1427](https://github.com/nlohmann/json/issues/1427) +- Compilation warning: 'tuple\_size' defined as a class template here but previously declared as a struct template [\#1426](https://github.com/nlohmann/json/issues/1426) +- Which version can be used with GCC 4.8.2 ? [\#1424](https://github.com/nlohmann/json/issues/1424) +- Ignore nullptr values on constructing json object from a container [\#1422](https://github.com/nlohmann/json/issues/1422) +- Support for custom float precision via unquoted strings [\#1421](https://github.com/nlohmann/json/issues/1421) +- It is possible to call `json::find` with a json\_pointer as argument. This causes runtime UB/crash. [\#1418](https://github.com/nlohmann/json/issues/1418) +- Dump throwing exception [\#1416](https://github.com/nlohmann/json/issues/1416) +- Build error [\#1415](https://github.com/nlohmann/json/issues/1415) +- Append version to include.zip [\#1412](https://github.com/nlohmann/json/issues/1412) +- error C2039: '\_snprintf': is not a member of 'std' - Windows [\#1408](https://github.com/nlohmann/json/issues/1408) +- Deserializing to vector [\#1407](https://github.com/nlohmann/json/issues/1407) +- Efficient way to set a `json` object as value into another `json` key [\#1406](https://github.com/nlohmann/json/issues/1406) +- Document return value of parse\(\) when allow\_exceptions == false and parsing fails [\#1405](https://github.com/nlohmann/json/issues/1405) +- Unexpected behaviour with structured binding [\#1404](https://github.com/nlohmann/json/issues/1404) +- Which native types does get\\(\) allow? [\#1403](https://github.com/nlohmann/json/issues/1403) +- Add something like Json::StaticString [\#1402](https://github.com/nlohmann/json/issues/1402) +- -Wmismatched-tags in 3.5.0? [\#1401](https://github.com/nlohmann/json/issues/1401) +- Coverity Scan reports an UNCAUGHT\_EXCEPT issue [\#1400](https://github.com/nlohmann/json/issues/1400) +- fff [\#1399](https://github.com/nlohmann/json/issues/1399) +- sorry this is not an issue, just a Question, How to change a key value in a file and save it ? [\#1398](https://github.com/nlohmann/json/issues/1398) +- appveyor x64 builds appear to be using Win32 toolset [\#1374](https://github.com/nlohmann/json/issues/1374) +- Serializing/Deserializing a Class containing a vector of itself [\#1373](https://github.com/nlohmann/json/issues/1373) +- Retrieving array elements. [\#1369](https://github.com/nlohmann/json/issues/1369) +- Deserialize [\#1366](https://github.com/nlohmann/json/issues/1366) +- call of overloaded for push\_back and operator+= is ambiguous [\#1352](https://github.com/nlohmann/json/issues/1352) +- got an error and cann't figure it out [\#1351](https://github.com/nlohmann/json/issues/1351) +- Improve number-to-string conversion [\#1334](https://github.com/nlohmann/json/issues/1334) +- Implicit type conversion error on MSVC [\#1333](https://github.com/nlohmann/json/issues/1333) +- NuGet Package [\#1132](https://github.com/nlohmann/json/issues/1132) + +- Change macros to numeric\_limits [\#1514](https://github.com/nlohmann/json/pull/1514) ([naszta](https://github.com/naszta)) +- fix GCC 7.1.1 - 7.2.1 on CentOS [\#1496](https://github.com/nlohmann/json/pull/1496) ([lieff](https://github.com/lieff)) +- Update Buckaroo instructions in README.md [\#1495](https://github.com/nlohmann/json/pull/1495) ([njlr](https://github.com/njlr)) +- Fix gcc9 build error test/src/unit-allocator.cpp \(Issue \#1472\) [\#1492](https://github.com/nlohmann/json/pull/1492) ([stac47](https://github.com/stac47)) +- Fix typo in README.md [\#1491](https://github.com/nlohmann/json/pull/1491) ([nickaein](https://github.com/nickaein)) +- Do proper endian conversions [\#1489](https://github.com/nlohmann/json/pull/1489) ([andreas-schwab](https://github.com/andreas-schwab)) +- Fix documentation [\#1477](https://github.com/nlohmann/json/pull/1477) ([nickaein](https://github.com/nickaein)) +- Implement contains\(\) member function [\#1474](https://github.com/nlohmann/json/pull/1474) ([nickaein](https://github.com/nickaein)) +- Add operator/= and operator/ to construct a JSON pointer by appending two JSON pointers [\#1469](https://github.com/nlohmann/json/pull/1469) ([garethsb](https://github.com/garethsb)) +- Disable Clang -Wmismatched-tags warning on tuple\_size / tuple\_element [\#1468](https://github.com/nlohmann/json/pull/1468) ([past-due](https://github.com/past-due)) +- Disable installation when used as meson subproject. \#1463 [\#1464](https://github.com/nlohmann/json/pull/1464) ([elvisoric](https://github.com/elvisoric)) +- docs: README typo [\#1455](https://github.com/nlohmann/json/pull/1455) ([wythe](https://github.com/wythe)) +- remove extra semicolon from readme [\#1451](https://github.com/nlohmann/json/pull/1451) ([Afforix](https://github.com/Afforix)) +- attempt to fix \#1445, flush buffer in serializer::dump\_escaped in UTF8\_REJECT case. [\#1446](https://github.com/nlohmann/json/pull/1446) ([scinart](https://github.com/scinart)) +- Use C++11 features supported by CMake 3.1. [\#1441](https://github.com/nlohmann/json/pull/1441) ([iwanders](https://github.com/iwanders)) +- :rotating\_light: fixed unused variable warning [\#1435](https://github.com/nlohmann/json/pull/1435) ([pboettch](https://github.com/pboettch)) +- allow push\_back\(\) and pop\_back\(\) calls on json\_pointer [\#1434](https://github.com/nlohmann/json/pull/1434) ([pboettch](https://github.com/pboettch)) +- Add instructions about using nlohmann/json with the conda package manager [\#1430](https://github.com/nlohmann/json/pull/1430) ([nicoddemus](https://github.com/nicoddemus)) +- Updated year in README.md [\#1425](https://github.com/nlohmann/json/pull/1425) ([jef](https://github.com/jef)) +- Fixed broken links in the README file [\#1423](https://github.com/nlohmann/json/pull/1423) ([skypjack](https://github.com/skypjack)) +- Fixed broken links in the README file [\#1420](https://github.com/nlohmann/json/pull/1420) ([skypjack](https://github.com/skypjack)) +- docs: typo in README [\#1417](https://github.com/nlohmann/json/pull/1417) ([wythe](https://github.com/wythe)) +- Fix x64 target platform for appveyor [\#1414](https://github.com/nlohmann/json/pull/1414) ([nickaein](https://github.com/nickaein)) +- Improve dump\_integer performance [\#1411](https://github.com/nlohmann/json/pull/1411) ([nickaein](https://github.com/nickaein)) +- buildsystem: relax requirement on cmake version [\#1409](https://github.com/nlohmann/json/pull/1409) ([yann-morin-1998](https://github.com/yann-morin-1998)) +- CMake: Optional Install if Embedded [\#1330](https://github.com/nlohmann/json/pull/1330) ([ax3l](https://github.com/ax3l)) + +## [v3.5.0](https://github.com/nlohmann/json/releases/tag/v3.5.0) (2018-12-21) + +[Full Changelog](https://github.com/nlohmann/json/compare/v3.4.0...v3.5.0) + +- Copyconstructor inserts original into array with single element [\#1397](https://github.com/nlohmann/json/issues/1397) +- Get value without explicit typecasting [\#1395](https://github.com/nlohmann/json/issues/1395) +- Big file parsing [\#1393](https://github.com/nlohmann/json/issues/1393) +- Adding Structured Binding Support [\#1388](https://github.com/nlohmann/json/issues/1388) +- map\ exhibits unexpected behavior [\#1387](https://github.com/nlohmann/json/issues/1387) +- Error Code Return [\#1386](https://github.com/nlohmann/json/issues/1386) +- using unordered\_map as object type [\#1385](https://github.com/nlohmann/json/issues/1385) +- float precision [\#1384](https://github.com/nlohmann/json/issues/1384) +- \[json.exception.type\_error.316\] invalid UTF-8 byte at index 1: 0xC3 [\#1383](https://github.com/nlohmann/json/issues/1383) +- Inconsistent Constructor \(GCC vs. Clang\) [\#1381](https://github.com/nlohmann/json/issues/1381) +- \#define or || [\#1379](https://github.com/nlohmann/json/issues/1379) +- How to iterate inside the values ? [\#1377](https://github.com/nlohmann/json/issues/1377) +- items\(\) unable to get the elements [\#1375](https://github.com/nlohmann/json/issues/1375) +- conversion json to std::map doesn't work for types \ [\#1372](https://github.com/nlohmann/json/issues/1372) +- A minor issue in the build instructions [\#1371](https://github.com/nlohmann/json/issues/1371) +- Using this library without stream ? [\#1370](https://github.com/nlohmann/json/issues/1370) +- Writing and reading BSON data [\#1368](https://github.com/nlohmann/json/issues/1368) +- Retrieving array elements from object type iterator. [\#1367](https://github.com/nlohmann/json/issues/1367) +- json::dump\(\) silently crashes if items contain accented letters [\#1365](https://github.com/nlohmann/json/issues/1365) +- warnings in MSVC \(2015\) in 3.4.0 related to bool... [\#1364](https://github.com/nlohmann/json/issues/1364) +- Cant compile with -C++17 and beyond compiler options [\#1362](https://github.com/nlohmann/json/issues/1362) +- json to concrete type conversion through reference or pointer fails [\#1361](https://github.com/nlohmann/json/issues/1361) +- the first attributes of JSON string is misplaced [\#1360](https://github.com/nlohmann/json/issues/1360) +- Copy-construct using initializer-list converts objects to arrays [\#1359](https://github.com/nlohmann/json/issues/1359) +- About value\(key, default\_value\) and operator\[\]\(key\) [\#1358](https://github.com/nlohmann/json/issues/1358) +- Problem with printing json response object [\#1356](https://github.com/nlohmann/json/issues/1356) +- Serializing pointer segfaults [\#1355](https://github.com/nlohmann/json/issues/1355) +- Read `long long int` data as a number. [\#1354](https://github.com/nlohmann/json/issues/1354) +- eclipse oxygen in ubuntu get\ is ambiguous [\#1353](https://github.com/nlohmann/json/issues/1353) +- Can't build on Visual Studio 2017 v15.8.9 [\#1350](https://github.com/nlohmann/json/issues/1350) +- cannot parse from string? [\#1349](https://github.com/nlohmann/json/issues/1349) +- Error: out\_of\_range [\#1348](https://github.com/nlohmann/json/issues/1348) +- expansion pattern 'CompatibleObjectType' contains no argument packs, with CUDA 10 [\#1347](https://github.com/nlohmann/json/issues/1347) +- Unable to update a value for a nested\(multi-level\) json file [\#1344](https://github.com/nlohmann/json/issues/1344) +- Fails to compile when std::iterator\_traits is not SFINAE friendly. [\#1341](https://github.com/nlohmann/json/issues/1341) +- EOF flag not set on exhausted input streams. [\#1340](https://github.com/nlohmann/json/issues/1340) +- Shadowed Member in merge\_patch [\#1339](https://github.com/nlohmann/json/issues/1339) +- Periods/literal dots in keys? [\#1338](https://github.com/nlohmann/json/issues/1338) +- Protect macro expansion of commonly defined macros [\#1337](https://github.com/nlohmann/json/issues/1337) +- How to validate an input before parsing? [\#1336](https://github.com/nlohmann/json/issues/1336) +- Non-verifying dump\(\) alternative for debugging/logging needed [\#1335](https://github.com/nlohmann/json/issues/1335) +- Json Libarary is not responding for me in c++ [\#1332](https://github.com/nlohmann/json/issues/1332) +- Question - how to find an object in an array [\#1331](https://github.com/nlohmann/json/issues/1331) +- Nesting additional data in json object [\#1328](https://github.com/nlohmann/json/issues/1328) +- can to\_json\(\) be defined inside a class? [\#1324](https://github.com/nlohmann/json/issues/1324) +- CodeBlocks IDE can't find `json.hpp` header [\#1318](https://github.com/nlohmann/json/issues/1318) +- Change json\_pointer to provide an iterator begin/end/etc, don't use vectors, and also enable string\_view [\#1312](https://github.com/nlohmann/json/issues/1312) +- Xcode - adding it to library [\#1300](https://github.com/nlohmann/json/issues/1300) +- unicode: accept char16\_t, char32\_t sequences [\#1298](https://github.com/nlohmann/json/issues/1298) +- unicode: char16\_t\* is compiler error, but char16\_t\[\] is accepted [\#1297](https://github.com/nlohmann/json/issues/1297) +- Dockerfile Project Help Needed [\#1296](https://github.com/nlohmann/json/issues/1296) +- Comparisons between large unsigned and negative signed integers [\#1295](https://github.com/nlohmann/json/issues/1295) +- CMake alias to `nlohmann::json` [\#1291](https://github.com/nlohmann/json/issues/1291) +- Release zips without tests [\#1285](https://github.com/nlohmann/json/issues/1285) +- separate object\_t::key\_type from basic\_json::key\_type, and use an allocator which returns object\_t::key\_type [\#1274](https://github.com/nlohmann/json/issues/1274) +- Is there a nice way to associate external values with json elements? [\#1256](https://github.com/nlohmann/json/issues/1256) +- Delete by json\_pointer [\#1248](https://github.com/nlohmann/json/issues/1248) +- Expose lexer, as a StAX parser [\#1219](https://github.com/nlohmann/json/issues/1219) +- Subclassing json\(\) & error on recursive load [\#1201](https://github.com/nlohmann/json/issues/1201) +- Check value for existence by json\_pointer [\#1194](https://github.com/nlohmann/json/issues/1194) + +- Feature/add file input adapter [\#1392](https://github.com/nlohmann/json/pull/1392) ([dumarjo](https://github.com/dumarjo)) +- Added Support for Structured Bindings [\#1391](https://github.com/nlohmann/json/pull/1391) ([pratikpc](https://github.com/pratikpc)) +- Link to issue \#958 broken [\#1382](https://github.com/nlohmann/json/pull/1382) ([kjpus](https://github.com/kjpus)) +- readme: fix typo [\#1380](https://github.com/nlohmann/json/pull/1380) ([manu-chroma](https://github.com/manu-chroma)) +- recommend using explicit from JSON conversions [\#1363](https://github.com/nlohmann/json/pull/1363) ([theodelrieu](https://github.com/theodelrieu)) +- Fix merge\_patch shadow warning [\#1346](https://github.com/nlohmann/json/pull/1346) ([ax3l](https://github.com/ax3l)) +- Allow installation via Meson [\#1345](https://github.com/nlohmann/json/pull/1345) ([mpoquet](https://github.com/mpoquet)) +- Set eofbit on exhausted input stream. [\#1343](https://github.com/nlohmann/json/pull/1343) ([mefyl](https://github.com/mefyl)) +- Add a SFINAE friendly iterator\_traits and use that instead. [\#1342](https://github.com/nlohmann/json/pull/1342) ([dgavedissian](https://github.com/dgavedissian)) +- Fix EOL Whitespaces & CMake Spelling [\#1329](https://github.com/nlohmann/json/pull/1329) ([ax3l](https://github.com/ax3l)) + +## [v3.4.0](https://github.com/nlohmann/json/releases/tag/v3.4.0) (2018-10-30) + +[Full Changelog](https://github.com/nlohmann/json/compare/v3.3.0...v3.4.0) + +- Big uint64\_t values are serialized wrong [\#1327](https://github.com/nlohmann/json/issues/1327) +- \[Question\] Efficient check for equivalency? [\#1325](https://github.com/nlohmann/json/issues/1325) +- Can't use ifstream and .clear\(\) [\#1321](https://github.com/nlohmann/json/issues/1321) +- \[Warning\] -Wparentheses on line 555 on single\_include [\#1319](https://github.com/nlohmann/json/issues/1319) +- Compilation error using at and find with enum struct [\#1316](https://github.com/nlohmann/json/issues/1316) +- Parsing JSON from a web address [\#1311](https://github.com/nlohmann/json/issues/1311) +- How to convert JSON to Struct with embeded subject [\#1310](https://github.com/nlohmann/json/issues/1310) +- Null safety/coalescing function? [\#1309](https://github.com/nlohmann/json/issues/1309) +- Building fails using single include file: json.hpp [\#1308](https://github.com/nlohmann/json/issues/1308) +- json::parse\(std::string\) Exception inside packaged Lib [\#1306](https://github.com/nlohmann/json/issues/1306) +- Problem in Dockerfile with installation of library [\#1304](https://github.com/nlohmann/json/issues/1304) +- compile error in from\_json converting to container with std::pair [\#1299](https://github.com/nlohmann/json/issues/1299) +- Json that I am trying to parse, and I am lost Structure Array below top level [\#1293](https://github.com/nlohmann/json/issues/1293) +- Serializing std::variant causes stack overflow [\#1292](https://github.com/nlohmann/json/issues/1292) +- How do I go about customising from\_json to support \_\_int128\_t/\_\_uint128\_t? [\#1290](https://github.com/nlohmann/json/issues/1290) +- merge\_patch: inconsistent behaviour merging empty sub-object [\#1289](https://github.com/nlohmann/json/issues/1289) +- Buffer over/underrun using UBJson? [\#1288](https://github.com/nlohmann/json/issues/1288) +- Enable the latest C++ standard with Visual Studio [\#1287](https://github.com/nlohmann/json/issues/1287) +- truncation of constant value in to\_cbor\(\) [\#1286](https://github.com/nlohmann/json/issues/1286) +- eosio.wasmsdk error [\#1284](https://github.com/nlohmann/json/issues/1284) +- use the same interface for writing arrays and non-arrays [\#1283](https://github.com/nlohmann/json/issues/1283) +- How to read json file with optional entries and entries with different types [\#1281](https://github.com/nlohmann/json/issues/1281) +- merge result not as espected [\#1279](https://github.com/nlohmann/json/issues/1279) +- how to get only "name" from below json [\#1278](https://github.com/nlohmann/json/issues/1278) +- syntax error on right json string [\#1276](https://github.com/nlohmann/json/issues/1276) +- Parsing JSON Array where members have no key, using custom types [\#1267](https://github.com/nlohmann/json/issues/1267) +- I get a json exception periodically from json::parse for the same json [\#1263](https://github.com/nlohmann/json/issues/1263) +- GCC 8.2.1. Compilation error: invalid conversion from... [\#1246](https://github.com/nlohmann/json/issues/1246) +- BSON support [\#1244](https://github.com/nlohmann/json/issues/1244) +- enum to json mapping [\#1208](https://github.com/nlohmann/json/issues/1208) +- Soften the landing when dumping non-UTF8 strings \(type\_error.316 exception\) [\#1198](https://github.com/nlohmann/json/issues/1198) + +- Add macro to define enum/JSON mapping [\#1323](https://github.com/nlohmann/json/pull/1323) ([nlohmann](https://github.com/nlohmann)) +- Add BSON support [\#1320](https://github.com/nlohmann/json/pull/1320) ([nlohmann](https://github.com/nlohmann)) +- Properly convert constants to CharType [\#1315](https://github.com/nlohmann/json/pull/1315) ([nlohmann](https://github.com/nlohmann)) +- Allow to set error handler for decoding errors [\#1314](https://github.com/nlohmann/json/pull/1314) ([nlohmann](https://github.com/nlohmann)) +- Add Meson related info to README [\#1305](https://github.com/nlohmann/json/pull/1305) ([koponomarenko](https://github.com/koponomarenko)) +- Improve diagnostic messages for binary formats [\#1303](https://github.com/nlohmann/json/pull/1303) ([nlohmann](https://github.com/nlohmann)) +- add new is\_constructible\_\* traits used in from\_json [\#1301](https://github.com/nlohmann/json/pull/1301) ([theodelrieu](https://github.com/theodelrieu)) +- add constraints for variadic json\_ref constructors [\#1294](https://github.com/nlohmann/json/pull/1294) ([theodelrieu](https://github.com/theodelrieu)) +- Improve diagnostic messages [\#1282](https://github.com/nlohmann/json/pull/1282) ([nlohmann](https://github.com/nlohmann)) +- Removed linter warnings [\#1280](https://github.com/nlohmann/json/pull/1280) ([nlohmann](https://github.com/nlohmann)) +- Thirdparty benchmark: Fix Clang detection. [\#1277](https://github.com/nlohmann/json/pull/1277) ([Lord-Kamina](https://github.com/Lord-Kamina)) + +## [v3.3.0](https://github.com/nlohmann/json/releases/tag/v3.3.0) (2018-10-05) + +[Full Changelog](https://github.com/nlohmann/json/compare/3.3.0...v3.3.0) + +## [3.3.0](https://github.com/nlohmann/json/releases/tag/3.3.0) (2018-10-05) + +[Full Changelog](https://github.com/nlohmann/json/compare/v3.2.0...3.3.0) + +- When key is not found print the key name into error too [\#1273](https://github.com/nlohmann/json/issues/1273) +- Visual Studio 2017 15.8.5 "conditional expression is constant" warning on Line 1851 in json.hpp [\#1268](https://github.com/nlohmann/json/issues/1268) +- how can we get this working on WSL? [\#1264](https://github.com/nlohmann/json/issues/1264) +- Help needed [\#1259](https://github.com/nlohmann/json/issues/1259) +- A way to get to a JSON values "key" [\#1258](https://github.com/nlohmann/json/issues/1258) +- While compiling got 76 errors [\#1255](https://github.com/nlohmann/json/issues/1255) +- Two blackslashes on json output file [\#1253](https://github.com/nlohmann/json/issues/1253) +- Including nlohmann the badwrong way. [\#1250](https://github.com/nlohmann/json/issues/1250) +- how to build with clang? [\#1247](https://github.com/nlohmann/json/issues/1247) +- Cmake target\_link\_libraries unable to find nlohmann\_json since version 3.2.0 [\#1243](https://github.com/nlohmann/json/issues/1243) +- \[Question\] Access to end\(\) iterator reference [\#1242](https://github.com/nlohmann/json/issues/1242) +- Parsing different json format [\#1241](https://github.com/nlohmann/json/issues/1241) +- Parsing Multiple JSON Files [\#1240](https://github.com/nlohmann/json/issues/1240) +- Doesn't compile under C++17 [\#1239](https://github.com/nlohmann/json/issues/1239) +- Conversion operator for nlohmann::json is not SFINAE friendly [\#1237](https://github.com/nlohmann/json/issues/1237) +- Custom deserialization of number\_float\_t [\#1236](https://github.com/nlohmann/json/issues/1236) +- deprecated-declarations warnings when compiling tests with GCC 8.2.1. [\#1233](https://github.com/nlohmann/json/issues/1233) +- Incomplete type with json\_fwd.hpp [\#1232](https://github.com/nlohmann/json/issues/1232) +- Parse Error [\#1229](https://github.com/nlohmann/json/issues/1229) +- json::get function with argument [\#1227](https://github.com/nlohmann/json/issues/1227) +- questions regarding from\_json [\#1226](https://github.com/nlohmann/json/issues/1226) +- Lambda in unevaluated context [\#1225](https://github.com/nlohmann/json/issues/1225) +- NLohmann doesn't compile when enabling strict warning policies [\#1224](https://github.com/nlohmann/json/issues/1224) +- Creating array of objects [\#1223](https://github.com/nlohmann/json/issues/1223) +- Somewhat unhelpful error message "cannot use operator\[\] with object" [\#1220](https://github.com/nlohmann/json/issues/1220) +- single\_include json.hpp [\#1218](https://github.com/nlohmann/json/issues/1218) +- Maps with enum class keys which are convertible to JSON strings should be converted to JSON dictionaries [\#1217](https://github.com/nlohmann/json/issues/1217) +- Adding JSON Array to the Array [\#1216](https://github.com/nlohmann/json/issues/1216) +- Best way to output a vector of a given type to json [\#1215](https://github.com/nlohmann/json/issues/1215) +- compiler warning: double definition of macro JSON\_INTERNAL\_CATCH [\#1213](https://github.com/nlohmann/json/issues/1213) +- Compilation error when using MOCK\_METHOD1 from GMock and nlohmann::json [\#1212](https://github.com/nlohmann/json/issues/1212) +- Issues parsing a previously encoded binary \(non-UTF8\) string. [\#1211](https://github.com/nlohmann/json/issues/1211) +- Yet another ordering question: char \* and parse\(\) [\#1209](https://github.com/nlohmann/json/issues/1209) +- Error using gcc 8.1.0 on Ubuntu 14.04 [\#1207](https://github.com/nlohmann/json/issues/1207) +- "type must be string, but is " std::string\(j.type\_name\(\) [\#1206](https://github.com/nlohmann/json/issues/1206) +- Returning empty json object from a function of type const json& ? [\#1205](https://github.com/nlohmann/json/issues/1205) +- VS2017 compiler suggests using constexpr if [\#1204](https://github.com/nlohmann/json/issues/1204) +- Template instatiation error on compiling [\#1203](https://github.com/nlohmann/json/issues/1203) +- BUG - json dump field with unicode -\> array of ints \(instead of string\) [\#1197](https://github.com/nlohmann/json/issues/1197) +- Compile error using Code::Blocks // mingw-w64 GCC 8.1.0 - "Incomplete Type" [\#1193](https://github.com/nlohmann/json/issues/1193) +- SEGFAULT on arm target [\#1190](https://github.com/nlohmann/json/issues/1190) +- Compiler crash with old Clang [\#1179](https://github.com/nlohmann/json/issues/1179) +- Custom Precision on floating point numbers [\#1170](https://github.com/nlohmann/json/issues/1170) +- Can we have a json\_view class like std::string\_view? [\#1158](https://github.com/nlohmann/json/issues/1158) +- improve error handling [\#1152](https://github.com/nlohmann/json/issues/1152) +- We should remove static\_asserts [\#960](https://github.com/nlohmann/json/issues/960) + +- Fix warning C4127: conditional expression is constant [\#1272](https://github.com/nlohmann/json/pull/1272) ([antonioborondo](https://github.com/antonioborondo)) +- Turn off additional deprecation warnings for GCC. [\#1271](https://github.com/nlohmann/json/pull/1271) ([chuckatkins](https://github.com/chuckatkins)) +- docs: Add additional CMake documentation [\#1270](https://github.com/nlohmann/json/pull/1270) ([chuckatkins](https://github.com/chuckatkins)) +- unit-testsuites.cpp: fix hangup if file not found [\#1262](https://github.com/nlohmann/json/pull/1262) ([knilch0r](https://github.com/knilch0r)) +- Fix broken cmake imported target alias [\#1260](https://github.com/nlohmann/json/pull/1260) ([chuckatkins](https://github.com/chuckatkins)) +- GCC 48 [\#1257](https://github.com/nlohmann/json/pull/1257) ([henryiii](https://github.com/henryiii)) +- Add version and license to meson.build [\#1252](https://github.com/nlohmann/json/pull/1252) ([koponomarenko](https://github.com/koponomarenko)) +- \#1179 Reordered the code. It seems to stop clang 3.4.2 in RHEL 7 from crash… [\#1249](https://github.com/nlohmann/json/pull/1249) ([LEgregius](https://github.com/LEgregius)) +- Use a version check to provide backwards comatible CMake imported target names [\#1245](https://github.com/nlohmann/json/pull/1245) ([chuckatkins](https://github.com/chuckatkins)) +- Fix issue \#1237 [\#1238](https://github.com/nlohmann/json/pull/1238) ([theodelrieu](https://github.com/theodelrieu)) +- Add a get overload taking a parameter. [\#1231](https://github.com/nlohmann/json/pull/1231) ([theodelrieu](https://github.com/theodelrieu)) +- Move lambda out of unevaluated context [\#1230](https://github.com/nlohmann/json/pull/1230) ([mandreyel](https://github.com/mandreyel)) +- Remove static asserts [\#1228](https://github.com/nlohmann/json/pull/1228) ([theodelrieu](https://github.com/theodelrieu)) +- Better error 305 [\#1221](https://github.com/nlohmann/json/pull/1221) ([rivertam](https://github.com/rivertam)) +- Fix \#1213 [\#1214](https://github.com/nlohmann/json/pull/1214) ([simnalamburt](https://github.com/simnalamburt)) +- Export package to allow builds without installing [\#1202](https://github.com/nlohmann/json/pull/1202) ([dennisfischer](https://github.com/dennisfischer)) + +## [v3.2.0](https://github.com/nlohmann/json/releases/tag/v3.2.0) (2018-08-20) + +[Full Changelog](https://github.com/nlohmann/json/compare/3.2.0...v3.2.0) + +## [3.2.0](https://github.com/nlohmann/json/releases/tag/3.2.0) (2018-08-20) + +[Full Changelog](https://github.com/nlohmann/json/compare/v3.1.2...3.2.0) + +- Am I doing this wrong? Getting an empty string [\#1199](https://github.com/nlohmann/json/issues/1199) +- Incompatible Pointer Type [\#1196](https://github.com/nlohmann/json/issues/1196) +- json.exception.type\_error.316 [\#1195](https://github.com/nlohmann/json/issues/1195) +- Strange warnings in Code::Blocks 17.12, GNU GCC [\#1192](https://github.com/nlohmann/json/issues/1192) +- \[Question\] Current place in code to change floating point resolution [\#1191](https://github.com/nlohmann/json/issues/1191) +- Add key name when throwing type error [\#1189](https://github.com/nlohmann/json/issues/1189) +- Not able to include in visual studio code? [\#1188](https://github.com/nlohmann/json/issues/1188) +- Get an Index or row number of an element [\#1186](https://github.com/nlohmann/json/issues/1186) +- Difference between `merge_patch` and `update` [\#1183](https://github.com/nlohmann/json/issues/1183) +- Is there a way to get an element from a JSON without throwing an exception on failure? [\#1182](https://github.com/nlohmann/json/issues/1182) +- to\_string? [\#1181](https://github.com/nlohmann/json/issues/1181) +- How to cache a json object's pointer into a map? [\#1180](https://github.com/nlohmann/json/issues/1180) +- Can this library work within a Qt project for Android using Qt Creator? [\#1178](https://github.com/nlohmann/json/issues/1178) +- How to get all keys of one object? [\#1177](https://github.com/nlohmann/json/issues/1177) +- How can I only parse the first level and get the value as string? [\#1175](https://github.com/nlohmann/json/issues/1175) +- I have a query regarding nlohmann::basic\_json::basic\_json [\#1174](https://github.com/nlohmann/json/issues/1174) +- unordered\_map with vectors won't convert to json? [\#1173](https://github.com/nlohmann/json/issues/1173) +- return json objects from functions [\#1172](https://github.com/nlohmann/json/issues/1172) +- Problem when exporting to CBOR [\#1171](https://github.com/nlohmann/json/issues/1171) +- Roundtripping null to nullptr does not work [\#1169](https://github.com/nlohmann/json/issues/1169) +- MSVC fails to compile std::swap specialization for nlohmann::json [\#1168](https://github.com/nlohmann/json/issues/1168) +- Unexpected behaviour of is\_null - Part II [\#1167](https://github.com/nlohmann/json/issues/1167) +- Floating point imprecision [\#1166](https://github.com/nlohmann/json/issues/1166) +- Combine json objects into one? [\#1165](https://github.com/nlohmann/json/issues/1165) +- Is there any way to know if the object has changed? [\#1164](https://github.com/nlohmann/json/issues/1164) +- Value throws on null string [\#1163](https://github.com/nlohmann/json/issues/1163) +- Weird template issue in large project [\#1162](https://github.com/nlohmann/json/issues/1162) +- \_json returns a different result vs ::parse [\#1161](https://github.com/nlohmann/json/issues/1161) +- Showing difference between two json objects [\#1160](https://github.com/nlohmann/json/issues/1160) +- no instance of overloaded function "std::swap" matches the specified type [\#1159](https://github.com/nlohmann/json/issues/1159) +- resize\(...\)? [\#1157](https://github.com/nlohmann/json/issues/1157) +- Issue with struct nested in class' to\_json [\#1155](https://github.com/nlohmann/json/issues/1155) +- Deserialize std::map with std::nan [\#1154](https://github.com/nlohmann/json/issues/1154) +- Parse throwing errors [\#1149](https://github.com/nlohmann/json/issues/1149) +- cocoapod integration [\#1148](https://github.com/nlohmann/json/issues/1148) +- wstring parsing [\#1147](https://github.com/nlohmann/json/issues/1147) +- Is it possible to dump a two-dimensional array to "\[\[null\],\[1,2,3\]\]"? [\#1146](https://github.com/nlohmann/json/issues/1146) +- Want to write a class member variable and a struct variable \( this structure is inside the class\) to the json file [\#1145](https://github.com/nlohmann/json/issues/1145) +- Does json support converting an instance of a struct into json string? [\#1143](https://github.com/nlohmann/json/issues/1143) +- \#Most efficient way to search for child parameters \(recursive find?\) [\#1141](https://github.com/nlohmann/json/issues/1141) +- could not find to\_json\(\) method in T's namespace [\#1140](https://github.com/nlohmann/json/issues/1140) +- chars get treated as JSON numbers not JSON strings [\#1139](https://github.com/nlohmann/json/issues/1139) +- How do I count number of objects in array? [\#1137](https://github.com/nlohmann/json/issues/1137) +- Serializing a vector of classes? [\#1136](https://github.com/nlohmann/json/issues/1136) +- Compile error. Unable convert form nullptr to nullptr&& [\#1135](https://github.com/nlohmann/json/issues/1135) +- std::unordered\_map in struct, serialization [\#1133](https://github.com/nlohmann/json/issues/1133) +- dump\(\) can't handle umlauts [\#1131](https://github.com/nlohmann/json/issues/1131) +- Add a way to get a key reference from the iterator [\#1127](https://github.com/nlohmann/json/issues/1127) +- can't not parse "\\“ string [\#1123](https://github.com/nlohmann/json/issues/1123) +- if json file contain Internationalization chars , get exception [\#1122](https://github.com/nlohmann/json/issues/1122) +- How to use a json::iterator dereferenced value in code? [\#1120](https://github.com/nlohmann/json/issues/1120) +- Disable implicit conversions from json to std::initializer\_list\ for any T [\#1118](https://github.com/nlohmann/json/issues/1118) +- Implicit conversions to complex types can lead to surprising and confusing errors [\#1116](https://github.com/nlohmann/json/issues/1116) +- How can I write from\_json for a complex datatype that is not default constructible? [\#1115](https://github.com/nlohmann/json/issues/1115) +- Compile error in VS2015 when compiling unit-conversions.cpp [\#1114](https://github.com/nlohmann/json/issues/1114) +- ADL Serializer for std::any / boost::any [\#1113](https://github.com/nlohmann/json/issues/1113) +- Unexpected behaviour of is\_null [\#1112](https://github.com/nlohmann/json/issues/1112) +- How to resolve " undefined reference to `std::\_\_throw\_bad\_cast\(\)'" [\#1111](https://github.com/nlohmann/json/issues/1111) +- cannot compile on ubuntu 18.04 and 16.04 [\#1110](https://github.com/nlohmann/json/issues/1110) +- JSON representation for floating point values has too many digits [\#1109](https://github.com/nlohmann/json/issues/1109) +- Not working for classes containing "\_declspec\(dllimport\)" in their declaration [\#1108](https://github.com/nlohmann/json/issues/1108) +- Get keys from json object [\#1107](https://github.com/nlohmann/json/issues/1107) +- Cannot deserialize types using std::ratio [\#1105](https://github.com/nlohmann/json/issues/1105) +- i want to learn json [\#1104](https://github.com/nlohmann/json/issues/1104) +- Type checking during compile [\#1103](https://github.com/nlohmann/json/issues/1103) +- Iterate through sub items [\#1102](https://github.com/nlohmann/json/issues/1102) +- cppcheck failing for version 3.1.2 [\#1101](https://github.com/nlohmann/json/issues/1101) +- Deserializing std::map [\#1100](https://github.com/nlohmann/json/issues/1100) +- accessing key by reference [\#1098](https://github.com/nlohmann/json/issues/1098) +- clang 3.8.0 croaks while trying to compile with debug symbols [\#1097](https://github.com/nlohmann/json/issues/1097) +- Serialize a list of class objects with json [\#1096](https://github.com/nlohmann/json/issues/1096) +- Small question [\#1094](https://github.com/nlohmann/json/issues/1094) +- Upgrading to 3.x: to\_/from\_json with enum class [\#1093](https://github.com/nlohmann/json/issues/1093) +- Q: few questions about json construction [\#1092](https://github.com/nlohmann/json/issues/1092) +- general crayCC compilation failure [\#1091](https://github.com/nlohmann/json/issues/1091) +- Merge Patch clears original data [\#1090](https://github.com/nlohmann/json/issues/1090) +- \[Question\] how to use nlohmann/json in c++? [\#1088](https://github.com/nlohmann/json/issues/1088) +- C++17 decomposition declaration support [\#1087](https://github.com/nlohmann/json/issues/1087) +- \[Question\] Access multi-level json objects [\#1086](https://github.com/nlohmann/json/issues/1086) +- Serializing vector [\#1085](https://github.com/nlohmann/json/issues/1085) +- update nested value in multi hierarchy json object [\#1084](https://github.com/nlohmann/json/issues/1084) +- Overriding default values? [\#1083](https://github.com/nlohmann/json/issues/1083) +- detail namespace collision with Cereal? [\#1082](https://github.com/nlohmann/json/issues/1082) +- Error using json.dump\(\); [\#1081](https://github.com/nlohmann/json/issues/1081) +- Consuming TCP Stream [\#1080](https://github.com/nlohmann/json/issues/1080) +- Compilation error with strong typed enums in map in combination with namespaces [\#1079](https://github.com/nlohmann/json/issues/1079) +- cassert error [\#1076](https://github.com/nlohmann/json/issues/1076) +- Valid json data not being parsed [\#1075](https://github.com/nlohmann/json/issues/1075) +- Feature request :: Better testing for key existance without try/catch [\#1074](https://github.com/nlohmann/json/issues/1074) +- Hi, I have input like a.b.c and want to convert it to \"a\"{\"b\": \"c\"} form. Any suggestions how do I do this? Thanks. [\#1073](https://github.com/nlohmann/json/issues/1073) +- ADL deserializer not picked up for non default-constructible type [\#1072](https://github.com/nlohmann/json/issues/1072) +- Deserializing std::array doesn't compiler \(no insert\(\)\) [\#1071](https://github.com/nlohmann/json/issues/1071) +- Serializing OpenCV Mat problem [\#1070](https://github.com/nlohmann/json/issues/1070) +- Compilation error with ICPC compiler [\#1068](https://github.com/nlohmann/json/issues/1068) +- Not existing value, crash [\#1065](https://github.com/nlohmann/json/issues/1065) +- cyryllic symbols [\#1064](https://github.com/nlohmann/json/issues/1064) +- newbie usage question [\#1063](https://github.com/nlohmann/json/issues/1063) +- Trying j\["strTest"\] = "%A" produces "strTest": "-0X1.CCCCCCCCCCCCCP+205" [\#1062](https://github.com/nlohmann/json/issues/1062) +- convert json value to std::string??? [\#1061](https://github.com/nlohmann/json/issues/1061) +- Commented out test cases, should they be removed? [\#1060](https://github.com/nlohmann/json/issues/1060) +- different behaviour between clang and gcc with braced initialization [\#1059](https://github.com/nlohmann/json/issues/1059) +- json array: initialize with prescribed size and `resize` method. [\#1057](https://github.com/nlohmann/json/issues/1057) +- Is it possible to use exceptions istead of assertions? [\#1056](https://github.com/nlohmann/json/issues/1056) +- when using assign operator in with json object a static assertion fails.. [\#1055](https://github.com/nlohmann/json/issues/1055) +- Iterate over leafs of a JSON data structure: enrich the JSON pointer API [\#1054](https://github.com/nlohmann/json/issues/1054) +- \[Feature request\] Access by path [\#1053](https://github.com/nlohmann/json/issues/1053) +- document that implicit js -\> primitive conversion does not work for std::string::value\_type and why [\#1052](https://github.com/nlohmann/json/issues/1052) +- error: ‘BasicJsonType’ in namespace ‘::’ does not name a type [\#1051](https://github.com/nlohmann/json/issues/1051) +- Destructor is called when filling object through assignement [\#1050](https://github.com/nlohmann/json/issues/1050) +- Is this thing thread safe for reads? [\#1049](https://github.com/nlohmann/json/issues/1049) +- clang-tidy: Call to virtual function during construction [\#1046](https://github.com/nlohmann/json/issues/1046) +- Using STL algorithms with JSON containers with expected results? [\#1045](https://github.com/nlohmann/json/issues/1045) +- Usage with gtest/gmock not working as expected [\#1044](https://github.com/nlohmann/json/issues/1044) +- Consequences of from\_json / to\_json being in namespace of data struct. [\#1042](https://github.com/nlohmann/json/issues/1042) +- const\_reference operator\[\]\(const typename object\_t::key\_type& key\) const throw instead of assert [\#1039](https://github.com/nlohmann/json/issues/1039) +- Trying to retrieve data from nested objects [\#1038](https://github.com/nlohmann/json/issues/1038) +- Direct download link for json\_fwd.hpp? [\#1037](https://github.com/nlohmann/json/issues/1037) +- I know the library supports UTF-8, but failed to dump the value [\#1036](https://github.com/nlohmann/json/issues/1036) +- Putting a Vec3-like vector into a json object [\#1035](https://github.com/nlohmann/json/issues/1035) +- Ternary operator crash [\#1034](https://github.com/nlohmann/json/issues/1034) +- Issued with Clion Inspection Resolution since 2018.1 [\#1033](https://github.com/nlohmann/json/issues/1033) +- Some testcases fail and one never finishes [\#1032](https://github.com/nlohmann/json/issues/1032) +- Can this class work with wchar\_t / std::wstring? [\#1031](https://github.com/nlohmann/json/issues/1031) +- Makefile: Valgrind flags have no effect [\#1030](https://github.com/nlohmann/json/issues/1030) +- 「==」 Should be 「\>」 [\#1029](https://github.com/nlohmann/json/issues/1029) +- HOCON reader? [\#1027](https://github.com/nlohmann/json/issues/1027) +- add json string in previous string?? [\#1025](https://github.com/nlohmann/json/issues/1025) +- RFC: fluent parsing interface [\#1023](https://github.com/nlohmann/json/issues/1023) +- Does it support chinese character? [\#1022](https://github.com/nlohmann/json/issues/1022) +- to/from\_msgpack only works with standard typization [\#1021](https://github.com/nlohmann/json/issues/1021) +- Build failure using latest clang and GCC compilers [\#1020](https://github.com/nlohmann/json/issues/1020) +- can two json objects be concatenated? [\#1019](https://github.com/nlohmann/json/issues/1019) +- Erase by integer index [\#1018](https://github.com/nlohmann/json/issues/1018) +- Function find overload taking a json\_pointer [\#1017](https://github.com/nlohmann/json/issues/1017) +- I think should implement an parser function [\#1016](https://github.com/nlohmann/json/issues/1016) +- Readme gif [\#1015](https://github.com/nlohmann/json/issues/1015) +- Python bindings [\#1014](https://github.com/nlohmann/json/issues/1014) +- how to add two json string in single object?? [\#1012](https://github.com/nlohmann/json/issues/1012) +- how to serialize class Object \(convert data in object into json\)?? [\#1011](https://github.com/nlohmann/json/issues/1011) +- Enable forward declaration of json by making json a class instead of a using declaration [\#997](https://github.com/nlohmann/json/issues/997) +- compilation error while using intel c++ compiler 2018 [\#994](https://github.com/nlohmann/json/issues/994) +- How to create a json variable? [\#990](https://github.com/nlohmann/json/issues/990) +- istream \>\> json --- 1st character skipped in stream [\#976](https://github.com/nlohmann/json/issues/976) +- Add a SAX parser [\#971](https://github.com/nlohmann/json/issues/971) +- How to solve large json file? [\#927](https://github.com/nlohmann/json/issues/927) +- json\_pointer public push\_back, pop\_back [\#837](https://github.com/nlohmann/json/issues/837) +- Using input\_adapter in a slightly unexpected way [\#834](https://github.com/nlohmann/json/issues/834) + +- Fix -Wno-sometimes-uninitialized by initializing "result" in parse\_sax [\#1200](https://github.com/nlohmann/json/pull/1200) ([thyu](https://github.com/thyu)) +- \[RFC\] Introduce a new macro function: JSON\_INTERNAL\_CATCH [\#1187](https://github.com/nlohmann/json/pull/1187) ([simnalamburt](https://github.com/simnalamburt)) +- Fix unit tests that were silently skipped or crashed \(depending on the compiler\) [\#1176](https://github.com/nlohmann/json/pull/1176) ([grembo](https://github.com/grembo)) +- Refactor/no virtual sax [\#1153](https://github.com/nlohmann/json/pull/1153) ([theodelrieu](https://github.com/theodelrieu)) +- Fixed compiler error in VS 2015 for debug mode [\#1151](https://github.com/nlohmann/json/pull/1151) ([sonulohani](https://github.com/sonulohani)) +- Fix links to cppreference named requirements \(formerly concepts\) [\#1144](https://github.com/nlohmann/json/pull/1144) ([jrakow](https://github.com/jrakow)) +- meson: fix include directory [\#1142](https://github.com/nlohmann/json/pull/1142) ([jrakow](https://github.com/jrakow)) +- Feature/unordered map conversion [\#1138](https://github.com/nlohmann/json/pull/1138) ([theodelrieu](https://github.com/theodelrieu)) +- fixed compile error for \#1045 [\#1134](https://github.com/nlohmann/json/pull/1134) ([Daniel599](https://github.com/Daniel599)) +- test \(non\)equality for alt\_string implementation [\#1130](https://github.com/nlohmann/json/pull/1130) ([agrianius](https://github.com/agrianius)) +- remove stringstream dependency [\#1117](https://github.com/nlohmann/json/pull/1117) ([TinyTinni](https://github.com/TinyTinni)) +- Provide a from\_json overload for std::map [\#1089](https://github.com/nlohmann/json/pull/1089) ([theodelrieu](https://github.com/theodelrieu)) +- fix typo in README [\#1078](https://github.com/nlohmann/json/pull/1078) ([martin-mfg](https://github.com/martin-mfg)) +- Fix typo [\#1058](https://github.com/nlohmann/json/pull/1058) ([dns13](https://github.com/dns13)) +- Misc cmake packaging enhancements [\#1048](https://github.com/nlohmann/json/pull/1048) ([chuckatkins](https://github.com/chuckatkins)) +- Fixed incorrect LLVM version number in README [\#1047](https://github.com/nlohmann/json/pull/1047) ([jammehcow](https://github.com/jammehcow)) +- Fix trivial typo in comment. [\#1043](https://github.com/nlohmann/json/pull/1043) ([coryan](https://github.com/coryan)) +- Package Manager: Spack [\#1041](https://github.com/nlohmann/json/pull/1041) ([ax3l](https://github.com/ax3l)) +- CMake: 3.8+ is Sufficient [\#1040](https://github.com/nlohmann/json/pull/1040) ([ax3l](https://github.com/ax3l)) +- Added support for string\_view in C++17 [\#1028](https://github.com/nlohmann/json/pull/1028) ([gracicot](https://github.com/gracicot)) +- Added public target\_compile\_features for auto and constexpr [\#1026](https://github.com/nlohmann/json/pull/1026) ([ktonon](https://github.com/ktonon)) + +## [v3.1.2](https://github.com/nlohmann/json/releases/tag/v3.1.2) (2018-03-14) + +[Full Changelog](https://github.com/nlohmann/json/compare/3.1.2...v3.1.2) + +## [3.1.2](https://github.com/nlohmann/json/releases/tag/3.1.2) (2018-03-14) + +[Full Changelog](https://github.com/nlohmann/json/compare/v3.1.1...3.1.2) + +- STL containers are always serialized to a nested array like \[\[1,2,3\]\] [\#1013](https://github.com/nlohmann/json/issues/1013) +- The library doesn't want to insert an unordered\_map [\#1010](https://github.com/nlohmann/json/issues/1010) +- Convert Json to uint8\_t [\#1008](https://github.com/nlohmann/json/issues/1008) +- How to compare two JSON objects? [\#1007](https://github.com/nlohmann/json/issues/1007) +- Syntax checking [\#1003](https://github.com/nlohmann/json/issues/1003) +- more than one operator '=' matches these operands [\#1002](https://github.com/nlohmann/json/issues/1002) +- How to check if key existed [\#1000](https://github.com/nlohmann/json/issues/1000) +- nlohmann::json::parse exhaust memory in go binding [\#999](https://github.com/nlohmann/json/issues/999) +- Range-based iteration over a non-array object [\#998](https://github.com/nlohmann/json/issues/998) +- get\ for types that are not default constructible [\#996](https://github.com/nlohmann/json/issues/996) +- Prevent Null values to appear in .dump\(\) [\#995](https://github.com/nlohmann/json/issues/995) +- number parsing [\#993](https://github.com/nlohmann/json/issues/993) +- C2664 \(C++/CLR\) cannot convert 'nullptr' to 'nullptr &&' [\#987](https://github.com/nlohmann/json/issues/987) +- Uniform initialization from another json object differs between gcc and clang. [\#985](https://github.com/nlohmann/json/issues/985) +- Problem with adding the lib as a submodule [\#983](https://github.com/nlohmann/json/issues/983) +- UTF-8/Unicode error [\#982](https://github.com/nlohmann/json/issues/982) +- "forcing MSVC stacktrace to show which T we're talking about." error [\#980](https://github.com/nlohmann/json/issues/980) +- reverse order of serialization [\#979](https://github.com/nlohmann/json/issues/979) +- Assigning between different json types [\#977](https://github.com/nlohmann/json/issues/977) +- Support serialisation of `unique_ptr<>` and `shared_ptr<>` [\#975](https://github.com/nlohmann/json/issues/975) +- Unexpected end of input \(not same as one before\) [\#974](https://github.com/nlohmann/json/issues/974) +- Segfault on direct initializing json object [\#973](https://github.com/nlohmann/json/issues/973) +- Segmentation fault on G++ when trying to assign json string literal to custom json type. [\#972](https://github.com/nlohmann/json/issues/972) +- os\_defines.h:44:19: error: missing binary operator before token "\(" [\#970](https://github.com/nlohmann/json/issues/970) +- Passing an iteration object by reference to a function [\#967](https://github.com/nlohmann/json/issues/967) +- Json and fmt::lib's format\_arg\(\) [\#964](https://github.com/nlohmann/json/issues/964) + +- Allowing for user-defined string type in lexer/parser [\#1009](https://github.com/nlohmann/json/pull/1009) ([nlohmann](https://github.com/nlohmann)) +- dump to alternative string type, as defined in basic\_json template [\#1006](https://github.com/nlohmann/json/pull/1006) ([agrianius](https://github.com/agrianius)) +- Fix memory leak during parser callback [\#1001](https://github.com/nlohmann/json/pull/1001) ([nlohmann](https://github.com/nlohmann)) +- fixed misprinted condition detected by PVS Studio. [\#992](https://github.com/nlohmann/json/pull/992) ([bogemic](https://github.com/bogemic)) +- Fix/basic json conversion [\#986](https://github.com/nlohmann/json/pull/986) ([theodelrieu](https://github.com/theodelrieu)) +- Make integration section concise [\#981](https://github.com/nlohmann/json/pull/981) ([wla80](https://github.com/wla80)) + +## [v3.1.1](https://github.com/nlohmann/json/releases/tag/v3.1.1) (2018-02-13) + +[Full Changelog](https://github.com/nlohmann/json/compare/v3.1.0...v3.1.1) + +- Updation of child object isn't reflected in parent Object [\#968](https://github.com/nlohmann/json/issues/968) +- How to add user defined C++ path to sublime text [\#966](https://github.com/nlohmann/json/issues/966) +- fast number parsing [\#965](https://github.com/nlohmann/json/issues/965) +- With non-unique keys, later stored entries are not taken into account anymore [\#963](https://github.com/nlohmann/json/issues/963) +- Timeout \(OSS-Fuzz 6034\) [\#962](https://github.com/nlohmann/json/issues/962) +- Incorrect parsing of indefinite length CBOR strings. [\#961](https://github.com/nlohmann/json/issues/961) +- Reload a json file at runtime without emptying my std::ifstream [\#959](https://github.com/nlohmann/json/issues/959) +- Split headers should be part of the release [\#956](https://github.com/nlohmann/json/issues/956) +- Coveralls shows no coverage data [\#953](https://github.com/nlohmann/json/issues/953) +- Feature request: Implicit conversion to bool [\#951](https://github.com/nlohmann/json/issues/951) +- converting json to vector of type with templated constructor [\#924](https://github.com/nlohmann/json/issues/924) +- No structured bindings support? [\#901](https://github.com/nlohmann/json/issues/901) +- \[Request\] Macro generating from\_json\(\) and to\_json\(\) [\#895](https://github.com/nlohmann/json/issues/895) +- basic\_json::value throws exception instead of returning default value [\#871](https://github.com/nlohmann/json/issues/871) + +- Fix constraints on from\_json\(CompatibleArrayType\) [\#969](https://github.com/nlohmann/json/pull/969) ([theodelrieu](https://github.com/theodelrieu)) +- Make coveralls watch the include folder [\#957](https://github.com/nlohmann/json/pull/957) ([theodelrieu](https://github.com/theodelrieu)) +- Fix links in README.md [\#955](https://github.com/nlohmann/json/pull/955) ([patrikhuber](https://github.com/patrikhuber)) +- Add a note about installing the library with cget [\#954](https://github.com/nlohmann/json/pull/954) ([pfultz2](https://github.com/pfultz2)) + +## [v3.1.0](https://github.com/nlohmann/json/releases/tag/v3.1.0) (2018-02-01) + +[Full Changelog](https://github.com/nlohmann/json/compare/3.1.0...v3.1.0) + +## [3.1.0](https://github.com/nlohmann/json/releases/tag/3.1.0) (2018-02-01) + +[Full Changelog](https://github.com/nlohmann/json/compare/v3.0.1...3.1.0) + +- I have a proposal [\#949](https://github.com/nlohmann/json/issues/949) +- VERSION define\(s\) [\#948](https://github.com/nlohmann/json/issues/948) +- v3.0.1 compile error in icc 16.0.4 [\#947](https://github.com/nlohmann/json/issues/947) +- Use in VS2017 15.5.5 [\#946](https://github.com/nlohmann/json/issues/946) +- Process for reporting Security Bugs? [\#945](https://github.com/nlohmann/json/issues/945) +- Please expose a NLOHMANN\_JSON\_VERSION macro [\#943](https://github.com/nlohmann/json/issues/943) +- Change header include directory to nlohmann/json [\#942](https://github.com/nlohmann/json/issues/942) +- string\_type in binary\_reader [\#941](https://github.com/nlohmann/json/issues/941) +- compile error with clang 5.0 -std=c++1z and no string\_view [\#939](https://github.com/nlohmann/json/issues/939) +- Allow overriding JSON\_THROW to something else than abort\(\) [\#938](https://github.com/nlohmann/json/issues/938) +- Handle invalid string in Json file [\#937](https://github.com/nlohmann/json/issues/937) +- Unused variable 'kMinExp' [\#935](https://github.com/nlohmann/json/issues/935) +- yytext is already defined [\#933](https://github.com/nlohmann/json/issues/933) +- Equality operator fails [\#931](https://github.com/nlohmann/json/issues/931) +- use in visual studio 2015 [\#929](https://github.com/nlohmann/json/issues/929) +- Relative includes of json\_fwd.hpp in detail/meta.hpp. \[Develop branch\] [\#928](https://github.com/nlohmann/json/issues/928) +- GCC 7.x issue [\#926](https://github.com/nlohmann/json/issues/926) +- json\_fwd.hpp not installed [\#923](https://github.com/nlohmann/json/issues/923) +- Use Google Benchmarks [\#921](https://github.com/nlohmann/json/issues/921) +- Move class json\_pointer to separate file [\#920](https://github.com/nlohmann/json/issues/920) +- Unable to locate 'to\_json\(\)' and 'from\_json\(\)' methods in the same namespace [\#917](https://github.com/nlohmann/json/issues/917) +- \[answered\]Read key1 from .value example [\#914](https://github.com/nlohmann/json/issues/914) +- Don't use `define private public` in test files [\#913](https://github.com/nlohmann/json/issues/913) +- value\(\) template argument type deduction [\#912](https://github.com/nlohmann/json/issues/912) +- Installation path is incorrect [\#910](https://github.com/nlohmann/json/issues/910) +- H [\#909](https://github.com/nlohmann/json/issues/909) +- Build failure using clang 5 [\#908](https://github.com/nlohmann/json/issues/908) +- Amalgate [\#907](https://github.com/nlohmann/json/issues/907) +- Update documentation and tests wrt. split headers [\#906](https://github.com/nlohmann/json/issues/906) +- Lib not working on ubuntu 16.04 [\#905](https://github.com/nlohmann/json/issues/905) +- Problem when writing to file. [\#904](https://github.com/nlohmann/json/issues/904) +- C2864 error when compiling with VS2015 and VS 2017 [\#903](https://github.com/nlohmann/json/issues/903) +- \[json.exception.type\_error.304\] cannot use at\(\) with object [\#902](https://github.com/nlohmann/json/issues/902) +- How do I forward nlohmann::json declaration? [\#899](https://github.com/nlohmann/json/issues/899) +- How to effectively store binary data? [\#898](https://github.com/nlohmann/json/issues/898) +- How to get the length of a JSON string without retrieving its std::string? [\#897](https://github.com/nlohmann/json/issues/897) +- Regression Tests Failure using "ctest" [\#887](https://github.com/nlohmann/json/issues/887) +- Discuss: add JSON Merge Patch \(RFC 7396\)? [\#877](https://github.com/nlohmann/json/issues/877) +- Discuss: replace static "iterator\_wrapper" function with "items" member function [\#874](https://github.com/nlohmann/json/issues/874) +- Make optional user-data available in from\_json [\#864](https://github.com/nlohmann/json/issues/864) +- Casting to std::string not working in VS2015 [\#861](https://github.com/nlohmann/json/issues/861) +- Sequential reading of JSON arrays [\#851](https://github.com/nlohmann/json/issues/851) +- Idea: Handle Multimaps Better [\#816](https://github.com/nlohmann/json/issues/816) +- Floating point rounding [\#777](https://github.com/nlohmann/json/issues/777) +- Loss of precision when serializing \ [\#360](https://github.com/nlohmann/json/issues/360) + +- Templatize std::string in binary\_reader \#941 [\#950](https://github.com/nlohmann/json/pull/950) ([kaidokert](https://github.com/kaidokert)) +- fix cmake install directory \(for real this time\) [\#944](https://github.com/nlohmann/json/pull/944) ([theodelrieu](https://github.com/theodelrieu)) +- Allow overriding THROW/CATCH/TRY macros with no-exceptions \#938 [\#940](https://github.com/nlohmann/json/pull/940) ([kaidokert](https://github.com/kaidokert)) +- Removed compiler warning about unused variable 'kMinExp' [\#936](https://github.com/nlohmann/json/pull/936) ([zerodefect](https://github.com/zerodefect)) +- Fix a typo in README.md [\#930](https://github.com/nlohmann/json/pull/930) ([Pipeliner](https://github.com/Pipeliner)) +- Howto installation of json\_fwd.hpp \(fixes \#923\) [\#925](https://github.com/nlohmann/json/pull/925) ([zerodefect](https://github.com/zerodefect)) +- fix sfinae on basic\_json UDT constructor [\#919](https://github.com/nlohmann/json/pull/919) ([theodelrieu](https://github.com/theodelrieu)) +- Floating-point formatting [\#915](https://github.com/nlohmann/json/pull/915) ([abolz](https://github.com/abolz)) +- Fix/cmake install [\#911](https://github.com/nlohmann/json/pull/911) ([theodelrieu](https://github.com/theodelrieu)) +- fix link to the documentation of the emplace function [\#900](https://github.com/nlohmann/json/pull/900) ([Dobiasd](https://github.com/Dobiasd)) +- JSON Merge Patch \(RFC 7396\) [\#876](https://github.com/nlohmann/json/pull/876) ([nlohmann](https://github.com/nlohmann)) +- Refactor/split it [\#700](https://github.com/nlohmann/json/pull/700) ([theodelrieu](https://github.com/theodelrieu)) + +## [v3.0.1](https://github.com/nlohmann/json/releases/tag/v3.0.1) (2017-12-29) + +[Full Changelog](https://github.com/nlohmann/json/compare/3.0.1...v3.0.1) + +## [3.0.1](https://github.com/nlohmann/json/releases/tag/3.0.1) (2017-12-29) + +[Full Changelog](https://github.com/nlohmann/json/compare/v3.0.0...3.0.1) + +- Problem parsing array to global vector [\#896](https://github.com/nlohmann/json/issues/896) +- Invalid RFC6902 copy operation succeeds [\#894](https://github.com/nlohmann/json/issues/894) +- How to rename a key during looping? [\#893](https://github.com/nlohmann/json/issues/893) +- clang++-6.0 \(6.0.0-svn321357-1\) warning [\#892](https://github.com/nlohmann/json/issues/892) +- Make json.hpp aware of the modules TS? [\#891](https://github.com/nlohmann/json/issues/891) +- All enum values not handled in switch cases. \( -Wswitch-enum \) [\#889](https://github.com/nlohmann/json/issues/889) +- JSON Pointer resolve failure resulting in incorrect exception code [\#888](https://github.com/nlohmann/json/issues/888) +- Unexpected nested arrays from std::vector [\#886](https://github.com/nlohmann/json/issues/886) +- erase multiple elements from a json object [\#884](https://github.com/nlohmann/json/issues/884) +- Container function overview in Doxygen is not updated [\#883](https://github.com/nlohmann/json/issues/883) +- How to use this for binary file uploads [\#881](https://github.com/nlohmann/json/issues/881) +- Allow setting JSON\_BuildTests=OFF from parent CMakeLists.txt [\#846](https://github.com/nlohmann/json/issues/846) +- Unit test fails for local-independent str-to-num [\#845](https://github.com/nlohmann/json/issues/845) +- Another idea about type support [\#774](https://github.com/nlohmann/json/issues/774) + +- Includes CTest module/adds BUILD\_TESTING option [\#885](https://github.com/nlohmann/json/pull/885) ([TinyTinni](https://github.com/TinyTinni)) +- Fix MSVC warning C4819 [\#882](https://github.com/nlohmann/json/pull/882) ([erengy](https://github.com/erengy)) +- Merge branch 'develop' into coverity\_scan [\#880](https://github.com/nlohmann/json/pull/880) ([nlohmann](https://github.com/nlohmann)) +- :wrench: Fix up a few more effc++ items [\#858](https://github.com/nlohmann/json/pull/858) ([mattismyname](https://github.com/mattismyname)) + +## [v3.0.0](https://github.com/nlohmann/json/releases/tag/v3.0.0) (2017-12-17) + +[Full Changelog](https://github.com/nlohmann/json/compare/3.0.0...v3.0.0) + +## [3.0.0](https://github.com/nlohmann/json/releases/tag/3.0.0) (2017-12-17) + +[Full Changelog](https://github.com/nlohmann/json/compare/v2.1.1...3.0.0) + +- unicode strings [\#878](https://github.com/nlohmann/json/issues/878) +- Visual Studio 2017 15.5 C++17 std::allocator deprecations [\#872](https://github.com/nlohmann/json/issues/872) +- Typo "excpetion" [\#869](https://github.com/nlohmann/json/issues/869) +- Explicit array example in README.md incorrect [\#867](https://github.com/nlohmann/json/issues/867) +- why don't you release this from Feb. ? [\#865](https://github.com/nlohmann/json/issues/865) +- json::parse throws std::invalid\_argument when processing string generated by json::dump\(\) [\#863](https://github.com/nlohmann/json/issues/863) +- code analysis: potential bug? [\#859](https://github.com/nlohmann/json/issues/859) +- MSVC2017, 15.5 new issues. [\#857](https://github.com/nlohmann/json/issues/857) +- very basic: fetching string value/content without quotes [\#853](https://github.com/nlohmann/json/issues/853) +- Ambiguous function call to get with pointer type and constant json object in VS2015 \(15.4.4\) [\#852](https://github.com/nlohmann/json/issues/852) +- How to put object in the array as a member? [\#850](https://github.com/nlohmann/json/issues/850) +- misclick, please ignore [\#849](https://github.com/nlohmann/json/issues/849) +- Make XML great again. [\#847](https://github.com/nlohmann/json/issues/847) +- Converting to array not working [\#843](https://github.com/nlohmann/json/issues/843) +- Iteration weirdness [\#842](https://github.com/nlohmann/json/issues/842) +- Use reference or pointer as Object value [\#841](https://github.com/nlohmann/json/issues/841) +- Ambiguity in parsing nested maps [\#840](https://github.com/nlohmann/json/issues/840) +- could not find from\_json\(\) method in T's namespace [\#839](https://github.com/nlohmann/json/issues/839) +- Incorrect parse error with binary data in keys? [\#838](https://github.com/nlohmann/json/issues/838) +- using dump\(\) when std::wstring is StringType with VS2017 [\#836](https://github.com/nlohmann/json/issues/836) +- Show the path of the currently parsed value when an error occurs [\#835](https://github.com/nlohmann/json/issues/835) +- Repetitive data type while reading [\#833](https://github.com/nlohmann/json/issues/833) +- Storing multiple types inside map [\#831](https://github.com/nlohmann/json/issues/831) +- Application terminating [\#830](https://github.com/nlohmann/json/issues/830) +- Missing CMake hunter package? [\#828](https://github.com/nlohmann/json/issues/828) +- std::map\ from json object yields C2665: 'std::pair\::pair': none of the 2 overloads could convert all the argument types [\#827](https://github.com/nlohmann/json/issues/827) +- object.dump gives quoted string, want to use .dump\(\) to generate javascripts. [\#826](https://github.com/nlohmann/json/issues/826) +- Assertion failed on \["NoExistKey"\] of an not existing key of const json& [\#825](https://github.com/nlohmann/json/issues/825) +- vs2015 error : static member will remain uninitialized at runtime but use in constant-expressions is supported [\#824](https://github.com/nlohmann/json/issues/824) +- Code Checking Warnings from json.hpp on VS2017 Community [\#821](https://github.com/nlohmann/json/issues/821) +- Missing iostream in try online [\#820](https://github.com/nlohmann/json/issues/820) +- Floating point value loses decimal point during dump [\#818](https://github.com/nlohmann/json/issues/818) +- Conan package for the library [\#817](https://github.com/nlohmann/json/issues/817) +- stream error [\#815](https://github.com/nlohmann/json/issues/815) +- Link error when using find\(\) on the latest commit [\#814](https://github.com/nlohmann/json/issues/814) +- ABI issue with json object between 2 shared libraries [\#813](https://github.com/nlohmann/json/issues/813) +- scan\_string\(\) return token\_type::parse\_error; when parse ansi file [\#812](https://github.com/nlohmann/json/issues/812) +- segfault when using fifo\_map with json [\#810](https://github.com/nlohmann/json/issues/810) +- This shit is shit [\#809](https://github.com/nlohmann/json/issues/809) +- \_finite and \_isnan are no members of "std" [\#808](https://github.com/nlohmann/json/issues/808) +- how to print out the line which causing exception? [\#806](https://github.com/nlohmann/json/issues/806) +- {} uses copy constructor, while = does not [\#805](https://github.com/nlohmann/json/issues/805) +- json.hpp:8955: multiple definition of function that is not defined twice or more. [\#804](https://github.com/nlohmann/json/issues/804) +- \[question\] to\_json for base and derived class [\#803](https://github.com/nlohmann/json/issues/803) +- Misleading error message - unexpected '"' - on incorrect utf-8 symbol [\#802](https://github.com/nlohmann/json/issues/802) +- json data = std::string\_view\("hi"\); doesn't work? [\#801](https://github.com/nlohmann/json/issues/801) +- Thread safety of parse\(\) [\#800](https://github.com/nlohmann/json/issues/800) +- Numbers as strings [\#799](https://github.com/nlohmann/json/issues/799) +- Tests failing on arm [\#797](https://github.com/nlohmann/json/issues/797) +- Using your library \(without modification\) in another library [\#796](https://github.com/nlohmann/json/issues/796) +- Iterating over sub-object [\#794](https://github.com/nlohmann/json/issues/794) +- how to get the json object again from which printed by the method of dump\(\) [\#792](https://github.com/nlohmann/json/issues/792) +- ppa to include source [\#791](https://github.com/nlohmann/json/issues/791) +- Different include paths in macOS and Ubuntu [\#790](https://github.com/nlohmann/json/issues/790) +- Missing break after line 12886 in switch/case [\#789](https://github.com/nlohmann/json/issues/789) +- All unit tests fail? [\#787](https://github.com/nlohmann/json/issues/787) +- More use of move semantics in deserialization [\#786](https://github.com/nlohmann/json/issues/786) +- warning C4706 - Visual Studio 2017 \(/W4\) [\#784](https://github.com/nlohmann/json/issues/784) +- Compile error in clang 5.0 [\#782](https://github.com/nlohmann/json/issues/782) +- Error Installing appium\_lib with Ruby v2.4.2 Due to JSON [\#781](https://github.com/nlohmann/json/issues/781) +- ::get\\(\) fails in new\(er\) release \[MSVC\] [\#780](https://github.com/nlohmann/json/issues/780) +- Type Conversion [\#779](https://github.com/nlohmann/json/issues/779) +- Segfault on nested parsing [\#778](https://github.com/nlohmann/json/issues/778) +- Build warnings: shadowing exception id [\#776](https://github.com/nlohmann/json/issues/776) +- multi-level JSON support. [\#775](https://github.com/nlohmann/json/issues/775) +- SIGABRT on dump\(\) [\#773](https://github.com/nlohmann/json/issues/773) +- \[Question\] Custom StringType template parameter \(possibility for a KeyType template parameter\) [\#772](https://github.com/nlohmann/json/issues/772) +- constexpr ALL the Things! [\#771](https://github.com/nlohmann/json/issues/771) +- error: ‘BasicJsonType’ in namespace ‘::’ does not name a type [\#770](https://github.com/nlohmann/json/issues/770) +- Program calls abort function [\#769](https://github.com/nlohmann/json/issues/769) +- \[Question\] Floating point resolution config during dump\(\) ? [\#768](https://github.com/nlohmann/json/issues/768) +- make check - no test ran [\#767](https://github.com/nlohmann/json/issues/767) +- The library cannot work properly with custom allocator based containers [\#766](https://github.com/nlohmann/json/issues/766) +- Documentation or feature request. [\#763](https://github.com/nlohmann/json/issues/763) +- warnings in msvc about mix/max macro while windows.h is used in the project [\#762](https://github.com/nlohmann/json/issues/762) +- std::signbit ambiguous [\#761](https://github.com/nlohmann/json/issues/761) +- How to use value for std::experimental::optional type? [\#760](https://github.com/nlohmann/json/issues/760) +- Cannot load json file properly [\#759](https://github.com/nlohmann/json/issues/759) +- Compilation error with unordered\_map\< int, int \> [\#758](https://github.com/nlohmann/json/issues/758) +- CBOR string [\#757](https://github.com/nlohmann/json/issues/757) +- Proposal: out\_of\_range should be a subclass of std::out\_of\_range [\#756](https://github.com/nlohmann/json/issues/756) +- Getter is setting the value to null if the key does not exist [\#754](https://github.com/nlohmann/json/issues/754) +- parsing works sometimes and crashes others [\#752](https://github.com/nlohmann/json/issues/752) +- Static\_assert failed "incompatible pointer type" with Xcode [\#751](https://github.com/nlohmann/json/issues/751) +- user-defined literal operator not found [\#750](https://github.com/nlohmann/json/issues/750) +- getting clean string from it.key\(\) [\#748](https://github.com/nlohmann/json/issues/748) +- Best method for exploring and obtaining values of nested json objects when the names are not known beforehand? [\#747](https://github.com/nlohmann/json/issues/747) +- null char at the end of string [\#746](https://github.com/nlohmann/json/issues/746) +- Incorrect sample for operator \>\> in docs [\#745](https://github.com/nlohmann/json/issues/745) +- User-friendly documentation [\#744](https://github.com/nlohmann/json/issues/744) +- Retrieve all values that match a json path [\#743](https://github.com/nlohmann/json/issues/743) +- Compilation issue with gcc 7.2 [\#742](https://github.com/nlohmann/json/issues/742) +- CMake target nlohmann\_json does not have src into its interface includes [\#741](https://github.com/nlohmann/json/issues/741) +- Error when serializing empty json: type must be string, but is object [\#740](https://github.com/nlohmann/json/issues/740) +- Conversion error for std::map\ [\#739](https://github.com/nlohmann/json/issues/739) +- Dumping Json to file as array [\#738](https://github.com/nlohmann/json/issues/738) +- nesting json objects [\#737](https://github.com/nlohmann/json/issues/737) +- where to find general help? [\#736](https://github.com/nlohmann/json/issues/736) +- Compilation Error on Clang 5.0 Upgrade [\#735](https://github.com/nlohmann/json/issues/735) +- Compilation error with std::map\ on vs 2015 [\#734](https://github.com/nlohmann/json/issues/734) +- Benchmarks for Binary formats [\#733](https://github.com/nlohmann/json/issues/733) +- Support \n symbols in json string. [\#731](https://github.com/nlohmann/json/issues/731) +- Project's name is too generic and hard to search for [\#730](https://github.com/nlohmann/json/issues/730) +- Visual Studio 2015 IntelliTrace problems [\#729](https://github.com/nlohmann/json/issues/729) +- How to erase nested objects inside other objects? [\#728](https://github.com/nlohmann/json/issues/728) +- Serialization for CBOR [\#726](https://github.com/nlohmann/json/issues/726) +- Using json Object as value in a map [\#725](https://github.com/nlohmann/json/issues/725) +- std::regex and nlohmann::json value [\#724](https://github.com/nlohmann/json/issues/724) +- Warnings when compiling with VisualStudio 2015 [\#723](https://github.com/nlohmann/json/issues/723) +- Has this lib the unicode \(wstring\) support? [\#722](https://github.com/nlohmann/json/issues/722) +- When will be 3.0 in master? [\#721](https://github.com/nlohmann/json/issues/721) +- Determine the type from error message. [\#720](https://github.com/nlohmann/json/issues/720) +- Compile-Error C2100 \(MS VS2015\) in line 887 json.hpp [\#719](https://github.com/nlohmann/json/issues/719) +- from\_json not working for boost::optional example [\#718](https://github.com/nlohmann/json/issues/718) +- about from\_json and to\_json function [\#717](https://github.com/nlohmann/json/issues/717) +- How to detect parse failure? [\#715](https://github.com/nlohmann/json/issues/715) +- Parse throw std::ios\_base::failure exception when failbit set to true [\#714](https://github.com/nlohmann/json/issues/714) +- Is there a way of format just making a pretty print without changing the key's orders ? [\#713](https://github.com/nlohmann/json/issues/713) +- Serialization of array of not same model items [\#712](https://github.com/nlohmann/json/issues/712) +- pointer to json parse vector [\#711](https://github.com/nlohmann/json/issues/711) +- Gtest SEH Exception [\#709](https://github.com/nlohmann/json/issues/709) +- broken from\_json implementation for pair and tuple [\#707](https://github.com/nlohmann/json/issues/707) +- Unevaluated lambda in assert breaks gcc 7 build [\#705](https://github.com/nlohmann/json/issues/705) +- Issues when adding values to firebase database [\#704](https://github.com/nlohmann/json/issues/704) +- Floating point equality - revisited [\#703](https://github.com/nlohmann/json/issues/703) +- Conversion from valarray\ to json fails to build [\#702](https://github.com/nlohmann/json/issues/702) +- internal compiler error \(gcc7\) [\#701](https://github.com/nlohmann/json/issues/701) +- One build system to rule them all [\#698](https://github.com/nlohmann/json/issues/698) +- Generated nlohmann\_jsonConfig.cmake does not set JSON\_INCLUDE\_DIR [\#695](https://github.com/nlohmann/json/issues/695) +- support the Chinese language in json string [\#694](https://github.com/nlohmann/json/issues/694) +- NaN problem within develop branch [\#693](https://github.com/nlohmann/json/issues/693) +- Please post example of specialization for boost::filesystem [\#692](https://github.com/nlohmann/json/issues/692) +- Impossible to do an array of composite objects [\#691](https://github.com/nlohmann/json/issues/691) +- How to save json to file? [\#690](https://github.com/nlohmann/json/issues/690) +- my simple json parser [\#689](https://github.com/nlohmann/json/issues/689) +- problem with new struct parsing syntax [\#688](https://github.com/nlohmann/json/issues/688) +- Parse error while parse the json string contains UTF 8 encoded document bytes string [\#684](https://github.com/nlohmann/json/issues/684) +- \[question\] how to get a string value by pointer [\#683](https://github.com/nlohmann/json/issues/683) +- create json object from string variable [\#681](https://github.com/nlohmann/json/issues/681) +- adl\_serializer and CRTP [\#680](https://github.com/nlohmann/json/issues/680) +- Is there a way to control the precision of serialized floating point numbers? [\#677](https://github.com/nlohmann/json/issues/677) +- Is there a way to get the path of a value? [\#676](https://github.com/nlohmann/json/issues/676) +- Could the parser locate errors to line? [\#675](https://github.com/nlohmann/json/issues/675) +- There is performance inefficiency found by coverity tool json2.1.1/include/nlohmann/json.hpp [\#673](https://github.com/nlohmann/json/issues/673) +- include problem, when cmake on osx [\#672](https://github.com/nlohmann/json/issues/672) +- Operator= ambiguous in C++1z and GCC 7.1.1 [\#670](https://github.com/nlohmann/json/issues/670) +- should't the cmake install target be to nlohman/json.hpp [\#668](https://github.com/nlohmann/json/issues/668) +- deserialise from `std::vector` [\#667](https://github.com/nlohmann/json/issues/667) +- How to iterate? [\#665](https://github.com/nlohmann/json/issues/665) +- could this json lib work on windows? [\#664](https://github.com/nlohmann/json/issues/664) +- How does from\_json work? [\#662](https://github.com/nlohmann/json/issues/662) +- insert\(or merge\) object should replace same key , not ignore [\#661](https://github.com/nlohmann/json/issues/661) +- Parse method doesn't handle newlines. [\#659](https://github.com/nlohmann/json/issues/659) +- Compilation "note" on GCC 6 ARM [\#658](https://github.com/nlohmann/json/issues/658) +- Adding additional push\_back/operator+= rvalue overloads for JSON object [\#657](https://github.com/nlohmann/json/issues/657) +- dump's parameter "ensure\_ascii" creates too long sequences [\#656](https://github.com/nlohmann/json/issues/656) +- Question: parsing `void *` [\#655](https://github.com/nlohmann/json/issues/655) +- how should I check a string is valid JSON string ? [\#653](https://github.com/nlohmann/json/issues/653) +- Question: thread safety of read only accesses [\#651](https://github.com/nlohmann/json/issues/651) +- Eclipse: Method 'size' could not be resolved [\#649](https://github.com/nlohmann/json/issues/649) +- Update/Add object fields [\#648](https://github.com/nlohmann/json/issues/648) +- No exception raised for Out Of Range input of numbers [\#647](https://github.com/nlohmann/json/issues/647) +- Package Name [\#646](https://github.com/nlohmann/json/issues/646) +- What is the meaning of operator\[\]\(T\* key\) [\#645](https://github.com/nlohmann/json/issues/645) +- Which is the correct way to json objects as parameters to functions? [\#644](https://github.com/nlohmann/json/issues/644) +- Method to get string representations of values [\#642](https://github.com/nlohmann/json/issues/642) +- CBOR serialization of a given JSON value does not serialize [\#641](https://github.com/nlohmann/json/issues/641) +- Are we forced to use "-fexceptions" flag in android ndk project [\#640](https://github.com/nlohmann/json/issues/640) +- Comparison of objects containing floats [\#639](https://github.com/nlohmann/json/issues/639) +- 'localeconv' is not supported by NDK for SDK \<=20 [\#638](https://github.com/nlohmann/json/issues/638) +- \[Question\] cLion integration [\#637](https://github.com/nlohmann/json/issues/637) +- How to construct an iteratable usage in nlohmann json? [\#636](https://github.com/nlohmann/json/issues/636) +- \[Question\] copy assign json-container to vector [\#635](https://github.com/nlohmann/json/issues/635) +- Get size without .dump\(\) [\#634](https://github.com/nlohmann/json/issues/634) +- Segmentation fault when parsing invalid json file [\#633](https://github.com/nlohmann/json/issues/633) +- How to serialize from json to vector\? [\#632](https://github.com/nlohmann/json/issues/632) +- no member named 'thousands\_sep' in 'lconv' [\#631](https://github.com/nlohmann/json/issues/631) +- \[Question\] Any fork for \(the unsupported\) Visual Studio 2012 version? [\#628](https://github.com/nlohmann/json/issues/628) +- Dependency injection in serializer [\#627](https://github.com/nlohmann/json/issues/627) +- from\_json for std::array [\#625](https://github.com/nlohmann/json/issues/625) +- Discussion: How to structure the parsing function families [\#623](https://github.com/nlohmann/json/issues/623) +- Question: How to erase subtree [\#622](https://github.com/nlohmann/json/issues/622) +- Insertion into nested json field [\#621](https://github.com/nlohmann/json/issues/621) +- Question: return static json object from function [\#618](https://github.com/nlohmann/json/issues/618) +- icc16 error [\#617](https://github.com/nlohmann/json/issues/617) +- \[-Wdeprecated-declarations\] in row `j >> ss;` in file `json.hpp:7405:26` and FAILED unit tests with MinGWx64! [\#616](https://github.com/nlohmann/json/issues/616) +- to\_json for pairs, tuples [\#614](https://github.com/nlohmann/json/issues/614) +- Using uninitialized memory 'buf' in line 11173 v2.1.1? [\#613](https://github.com/nlohmann/json/issues/613) +- How to parse multiple same Keys of JSON and save them? [\#612](https://github.com/nlohmann/json/issues/612) +- "Multiple declarations" error when using types defined with `typedef` [\#611](https://github.com/nlohmann/json/issues/611) +- 2.1.1+ breaks compilation of shared\_ptr\ == 0 [\#610](https://github.com/nlohmann/json/issues/610) +- a bug of inheritance ? [\#608](https://github.com/nlohmann/json/issues/608) +- std::map key conversion with to\_json [\#607](https://github.com/nlohmann/json/issues/607) +- json.hpp:6384:62: error: wrong number of template arguments \(1, should be 2\) [\#606](https://github.com/nlohmann/json/issues/606) +- Incremental parsing: Where's the push version? [\#605](https://github.com/nlohmann/json/issues/605) +- Is there a way to validate the structure of a json object ? [\#604](https://github.com/nlohmann/json/issues/604) +- \[Question\] Issue when using Appveyor when compiling library [\#603](https://github.com/nlohmann/json/issues/603) +- BOM not skipped when using json:parse\(iterator\) [\#602](https://github.com/nlohmann/json/issues/602) +- Use of the binary type in CBOR and Message Pack [\#601](https://github.com/nlohmann/json/issues/601) +- Newbie issue: how does one convert a map in Json back to std::map? [\#600](https://github.com/nlohmann/json/issues/600) +- Plugin system [\#599](https://github.com/nlohmann/json/issues/599) +- Using custom types for scalars? [\#596](https://github.com/nlohmann/json/issues/596) +- Issues with the arithmetic in iterator and reverse iterator [\#593](https://github.com/nlohmann/json/issues/593) +- not enough examples [\#592](https://github.com/nlohmann/json/issues/592) +- in-class initialization for type 'const T' is not yet implemented [\#591](https://github.com/nlohmann/json/issues/591) +- compiling with gcc 7 -\> error on bool operator \< [\#590](https://github.com/nlohmann/json/issues/590) +- Parsing from stream leads to an array [\#589](https://github.com/nlohmann/json/issues/589) +- Buggy support for binary string data [\#587](https://github.com/nlohmann/json/issues/587) +- C++17's ambiguous conversion [\#586](https://github.com/nlohmann/json/issues/586) +- How does the messagepack encoding/decoding compare to msgpack-cpp in terms of performance? [\#585](https://github.com/nlohmann/json/issues/585) +- is it possible to check existence of a value deep in hierarchy? [\#584](https://github.com/nlohmann/json/issues/584) +- loading from a stream and exceptions [\#582](https://github.com/nlohmann/json/issues/582) +- Visual Studio seems not to have all min\(\) function versions [\#581](https://github.com/nlohmann/json/issues/581) +- Supporting of the json schema [\#580](https://github.com/nlohmann/json/issues/580) +- Stack-overflow \(OSS-Fuzz 1444\) [\#577](https://github.com/nlohmann/json/issues/577) +- Heap-buffer-overflow \(OSS-Fuzz 1400\) [\#575](https://github.com/nlohmann/json/issues/575) +- JSON escape quotes [\#574](https://github.com/nlohmann/json/issues/574) +- error: static\_assert failed [\#573](https://github.com/nlohmann/json/issues/573) +- Storing floats, and round trip serialisation/deserialisation diffs [\#572](https://github.com/nlohmann/json/issues/572) +- JSON.getLong produces inconsistent results [\#571](https://github.com/nlohmann/json/issues/571) +- Request: Object.at\(\) with default return value [\#570](https://github.com/nlohmann/json/issues/570) +- Internal structure gets corrupted while parsing [\#569](https://github.com/nlohmann/json/issues/569) +- create template \ basic\_json from\_cbor\(Iter begin, Iter end\) [\#568](https://github.com/nlohmann/json/issues/568) +- Conan.io [\#566](https://github.com/nlohmann/json/issues/566) +- contradictory documentation regarding json::find [\#565](https://github.com/nlohmann/json/issues/565) +- Unexpected '\"' in middle of array [\#564](https://github.com/nlohmann/json/issues/564) +- Support parse std::pair to Json object [\#563](https://github.com/nlohmann/json/issues/563) +- json and Microsoft Visual c++ Compiler Nov 2012 CTP [\#562](https://github.com/nlohmann/json/issues/562) +- from\_json declaration order and exceptions [\#561](https://github.com/nlohmann/json/issues/561) +- Tip: Don't upgrade to VS2017 if using json initializer list constructs [\#559](https://github.com/nlohmann/json/issues/559) +- parse error - unexpected end of input [\#558](https://github.com/nlohmann/json/issues/558) +- Cant modify existing numbers inside a json object [\#557](https://github.com/nlohmann/json/issues/557) +- Better support for SAX style serialize and deserialize in new version? [\#554](https://github.com/nlohmann/json/issues/554) +- Cannot convert from json array to std::array [\#553](https://github.com/nlohmann/json/issues/553) +- Do not define an unnamed namespace in a header file \(DCL59-CPP\) [\#552](https://github.com/nlohmann/json/issues/552) +- Parse error on known good json file [\#551](https://github.com/nlohmann/json/issues/551) +- Warning on Intel compiler \(icc 17\) [\#550](https://github.com/nlohmann/json/issues/550) +- multiple versions of 'vsnprintf' [\#549](https://github.com/nlohmann/json/issues/549) +- illegal indirection [\#548](https://github.com/nlohmann/json/issues/548) +- Ambiguous compare operators with clang-5.0 [\#547](https://github.com/nlohmann/json/issues/547) +- Using tsl::ordered\_map [\#546](https://github.com/nlohmann/json/issues/546) +- Compiler support errors are inconvenient [\#544](https://github.com/nlohmann/json/issues/544) +- Duplicate symbols error happens while to\_json/from\_json method implemented inside entity definition header file [\#542](https://github.com/nlohmann/json/issues/542) +- consider adding a bool json::is\_valid\(std::string const&\) non-member function [\#541](https://github.com/nlohmann/json/issues/541) +- Help request [\#539](https://github.com/nlohmann/json/issues/539) +- How to deal with missing keys in `from_json`? [\#538](https://github.com/nlohmann/json/issues/538) +- recursive from\_msgpack implementation will stack overflow [\#537](https://github.com/nlohmann/json/issues/537) +- Exception objects must be nothrow copy constructible \(ERR60-CPP\) [\#531](https://github.com/nlohmann/json/issues/531) +- Support for multiple root elements [\#529](https://github.com/nlohmann/json/issues/529) +- Port has\_shape from dropbox/json11 [\#528](https://github.com/nlohmann/json/issues/528) +- dump\_float: truncation from ptrdiff\_t to long [\#527](https://github.com/nlohmann/json/issues/527) +- Make exception base class visible in basic\_json [\#525](https://github.com/nlohmann/json/issues/525) +- msgpack unit test failures on ppc64 arch [\#524](https://github.com/nlohmann/json/issues/524) +- How about split the implementation out, and only leave the interface? [\#523](https://github.com/nlohmann/json/issues/523) +- VC++2017 not enough actual parameters for macro 'max' [\#522](https://github.com/nlohmann/json/issues/522) +- crash on empty ifstream [\#521](https://github.com/nlohmann/json/issues/521) +- Suggestion: Support tabs for indentation when serializing to stream. [\#520](https://github.com/nlohmann/json/issues/520) +- Abrt in get\_number \(OSS-Fuzz 885\) [\#519](https://github.com/nlohmann/json/issues/519) +- Abrt on unknown address \(OSS-Fuzz 884\) [\#518](https://github.com/nlohmann/json/issues/518) +- Stack-overflow \(OSS-Fuzz 869\) [\#517](https://github.com/nlohmann/json/issues/517) +- Assertion error \(OSS-Fuzz 868\) [\#516](https://github.com/nlohmann/json/issues/516) +- NaN to json and back [\#515](https://github.com/nlohmann/json/issues/515) +- Comparison of NaN [\#514](https://github.com/nlohmann/json/issues/514) +- why it's not possible to serialize c++11 enums directly [\#513](https://github.com/nlohmann/json/issues/513) +- clang compile error: use of overloaded operator '\<=' is ambiguous with \(nlohmann::json{{"a", 5}}\)\["a"\] \<= 10 [\#512](https://github.com/nlohmann/json/issues/512) +- Why not also look inside the type for \(static\) to\_json and from\_json funtions? [\#511](https://github.com/nlohmann/json/issues/511) +- Parser issues [\#509](https://github.com/nlohmann/json/issues/509) +- I may not understand [\#507](https://github.com/nlohmann/json/issues/507) +- VS2017 min / max problem for 2.1.1 [\#506](https://github.com/nlohmann/json/issues/506) +- CBOR/MessagePack is not read until the end [\#505](https://github.com/nlohmann/json/issues/505) +- Assertion error \(OSS-Fuzz 856\) [\#504](https://github.com/nlohmann/json/issues/504) +- Return position in parse error exceptions [\#503](https://github.com/nlohmann/json/issues/503) +- conversion from/to C array is not supported [\#502](https://github.com/nlohmann/json/issues/502) +- error C2338: could not find to\_json\(\) method in T's namespace [\#501](https://github.com/nlohmann/json/issues/501) +- Test suite fails in en\_GB.UTF-8 [\#500](https://github.com/nlohmann/json/issues/500) +- cannot use operator\[\] with number [\#499](https://github.com/nlohmann/json/issues/499) +- consider using \_\_cpp\_exceptions and/or \_\_EXCEPTIONS to disable/enable exception support [\#498](https://github.com/nlohmann/json/issues/498) +- Stack-overflow \(OSS-Fuzz issue 814\) [\#497](https://github.com/nlohmann/json/issues/497) +- Using in Unreal Engine - handling custom types conversion [\#495](https://github.com/nlohmann/json/issues/495) +- Conversion from vector\ to json fails to build [\#494](https://github.com/nlohmann/json/issues/494) +- fill\_line\_buffer incorrectly tests m\_stream for eof but not fail or bad bits [\#493](https://github.com/nlohmann/json/issues/493) +- Compiling with \_GLIBCXX\_DEBUG yields iterator-comparison warnings during tests [\#492](https://github.com/nlohmann/json/issues/492) +- crapy interface [\#491](https://github.com/nlohmann/json/issues/491) +- Fix Visual Studo 2013 builds. [\#490](https://github.com/nlohmann/json/issues/490) +- Failed to compile with -D\_GLIBCXX\_PARALLEL [\#489](https://github.com/nlohmann/json/issues/489) +- Input several field with the same name [\#488](https://github.com/nlohmann/json/issues/488) +- read in .json file yields strange sizes [\#487](https://github.com/nlohmann/json/issues/487) +- json::value\_t can't be a map's key type in VC++ 2015 [\#486](https://github.com/nlohmann/json/issues/486) +- Using fifo\_map [\#485](https://github.com/nlohmann/json/issues/485) +- Cannot get float pointer for value stored as `0` [\#484](https://github.com/nlohmann/json/issues/484) +- byte string support [\#483](https://github.com/nlohmann/json/issues/483) +- https://github.com/nlohmann/json\#execute-unit-tests [\#481](https://github.com/nlohmann/json/issues/481) +- Remove deprecated constructor basic\_json\(std::istream&\) [\#480](https://github.com/nlohmann/json/issues/480) +- writing the binary json file? [\#479](https://github.com/nlohmann/json/issues/479) +- CBOR/MessagePack from uint8\_t \* and size [\#478](https://github.com/nlohmann/json/issues/478) +- Streaming binary representations [\#477](https://github.com/nlohmann/json/issues/477) +- Reuse memory in to\_cbor and to\_msgpack functions [\#476](https://github.com/nlohmann/json/issues/476) +- Error Using JSON Library with arrays C++ [\#475](https://github.com/nlohmann/json/issues/475) +- Moving forward to version 3.0.0 [\#474](https://github.com/nlohmann/json/issues/474) +- Inconsistent behavior in conversion to array type [\#473](https://github.com/nlohmann/json/issues/473) +- Create a \[key:member\_pointer\] map to ease parsing custom types [\#471](https://github.com/nlohmann/json/issues/471) +- MSVC 2015 update 2 [\#469](https://github.com/nlohmann/json/issues/469) +- VS2017 implicit to std::string conversion fix. [\#464](https://github.com/nlohmann/json/issues/464) +- How to make sure a string or string literal is a valid JSON? [\#458](https://github.com/nlohmann/json/issues/458) +- basic\_json templated on a "policy" class [\#456](https://github.com/nlohmann/json/issues/456) +- json::value\(const json\_pointer&, ValueType\) requires exceptions to return the default value. [\#440](https://github.com/nlohmann/json/issues/440) +- is it possible merge two json object [\#428](https://github.com/nlohmann/json/issues/428) +- Is it possible to turn this into a shared library? [\#420](https://github.com/nlohmann/json/issues/420) +- Further thoughts on performance improvements [\#418](https://github.com/nlohmann/json/issues/418) +- nan number stored as null [\#388](https://github.com/nlohmann/json/issues/388) +- Behavior of operator\>\> should more closely resemble that of built-in overloads. [\#367](https://github.com/nlohmann/json/issues/367) +- Request: range-based-for over a json-object to expose .first/.second [\#350](https://github.com/nlohmann/json/issues/350) +- feature wish: JSONPath [\#343](https://github.com/nlohmann/json/issues/343) +- UTF-8/Unicode escape and dump [\#330](https://github.com/nlohmann/json/issues/330) +- Serialized value not always can be parsed. [\#329](https://github.com/nlohmann/json/issues/329) +- Is there a way to forward declare nlohmann::json? [\#314](https://github.com/nlohmann/json/issues/314) +- Exception line [\#301](https://github.com/nlohmann/json/issues/301) +- Do not throw exception when default\_value's type does not match the actual type [\#278](https://github.com/nlohmann/json/issues/278) +- dump\(\) method doesn't work with a custom allocator [\#268](https://github.com/nlohmann/json/issues/268) +- Readme documentation enhancements [\#248](https://github.com/nlohmann/json/issues/248) +- Use user-defined exceptions [\#244](https://github.com/nlohmann/json/issues/244) +- Incorrect C++11 allocator model support [\#161](https://github.com/nlohmann/json/issues/161) + +- :white\_check\_mark: re-added tests for algorithms [\#879](https://github.com/nlohmann/json/pull/879) ([nlohmann](https://github.com/nlohmann)) +- Overworked library toward 3.0.0 release [\#875](https://github.com/nlohmann/json/pull/875) ([nlohmann](https://github.com/nlohmann)) +- :rotating\_light: remove C4996 warnings \#872 [\#873](https://github.com/nlohmann/json/pull/873) ([nlohmann](https://github.com/nlohmann)) +- :boom: throwing an exception in case dump encounters a non-UTF-8 string \#838 [\#870](https://github.com/nlohmann/json/pull/870) ([nlohmann](https://github.com/nlohmann)) +- :memo: fixing documentation \#867 [\#868](https://github.com/nlohmann/json/pull/868) ([nlohmann](https://github.com/nlohmann)) +- iter\_impl template conformance with C++17 [\#860](https://github.com/nlohmann/json/pull/860) ([bogemic](https://github.com/bogemic)) +- Std allocator conformance cpp17 [\#856](https://github.com/nlohmann/json/pull/856) ([bogemic](https://github.com/bogemic)) +- cmake: use BUILD\_INTERFACE/INSTALL\_INTERFACE [\#855](https://github.com/nlohmann/json/pull/855) ([theodelrieu](https://github.com/theodelrieu)) +- to/from\_json: add a MSVC-specific static\_assert to force a stacktrace [\#854](https://github.com/nlohmann/json/pull/854) ([theodelrieu](https://github.com/theodelrieu)) +- Add .natvis for MSVC debug view [\#844](https://github.com/nlohmann/json/pull/844) ([TinyTinni](https://github.com/TinyTinni)) +- Updated hunter package links [\#829](https://github.com/nlohmann/json/pull/829) ([jowr](https://github.com/jowr)) +- Typos README [\#811](https://github.com/nlohmann/json/pull/811) ([Itja](https://github.com/Itja)) +- add forwarding references to json\_ref constructor [\#807](https://github.com/nlohmann/json/pull/807) ([theodelrieu](https://github.com/theodelrieu)) +- Add transparent comparator and perfect forwarding support to find\(\) and count\(\) [\#795](https://github.com/nlohmann/json/pull/795) ([jseward](https://github.com/jseward)) +- Error : 'identifier "size\_t" is undefined' in linux [\#793](https://github.com/nlohmann/json/pull/793) ([sonulohani](https://github.com/sonulohani)) +- Fix Visual Studio 2017 warnings [\#788](https://github.com/nlohmann/json/pull/788) ([jseward](https://github.com/jseward)) +- Fix warning C4706 on Visual Studio 2017 [\#785](https://github.com/nlohmann/json/pull/785) ([jseward](https://github.com/jseward)) +- Set GENERATE\_TAGFILE in Doxyfile [\#783](https://github.com/nlohmann/json/pull/783) ([eld00d](https://github.com/eld00d)) +- using more CMake [\#765](https://github.com/nlohmann/json/pull/765) ([nlohmann](https://github.com/nlohmann)) +- Simplified istream handing \#367 [\#764](https://github.com/nlohmann/json/pull/764) ([pjkundert](https://github.com/pjkundert)) +- Add info for the vcpkg package. [\#753](https://github.com/nlohmann/json/pull/753) ([gregmarr](https://github.com/gregmarr)) +- fix from\_json implementation for pair/tuple [\#708](https://github.com/nlohmann/json/pull/708) ([theodelrieu](https://github.com/theodelrieu)) +- Update json.hpp [\#686](https://github.com/nlohmann/json/pull/686) ([GoWebProd](https://github.com/GoWebProd)) +- Remove duplicate word [\#685](https://github.com/nlohmann/json/pull/685) ([daixtrose](https://github.com/daixtrose)) +- To fix compilation issue for intel OSX compiler [\#682](https://github.com/nlohmann/json/pull/682) ([kbthomp1](https://github.com/kbthomp1)) +- Digraph warning [\#679](https://github.com/nlohmann/json/pull/679) ([traits](https://github.com/traits)) +- massage -\> message [\#678](https://github.com/nlohmann/json/pull/678) ([DmitryKuk](https://github.com/DmitryKuk)) +- Fix "not constraint" grammar in docs [\#674](https://github.com/nlohmann/json/pull/674) ([wincent](https://github.com/wincent)) +- Add documentation for integration with CMake and hunter [\#671](https://github.com/nlohmann/json/pull/671) ([dan-42](https://github.com/dan-42)) +- REFACTOR: rewrite CMakeLists.txt for better inlcude and reuse [\#669](https://github.com/nlohmann/json/pull/669) ([dan-42](https://github.com/dan-42)) +- enable\_testing only if the JSON\_BuildTests is ON [\#666](https://github.com/nlohmann/json/pull/666) ([effolkronium](https://github.com/effolkronium)) +- Support moving from rvalues in std::initializer\_list [\#663](https://github.com/nlohmann/json/pull/663) ([himikof](https://github.com/himikof)) +- add ensure\_ascii parameter to dump. \#330 [\#654](https://github.com/nlohmann/json/pull/654) ([ryanjmulder](https://github.com/ryanjmulder)) +- Rename BuildTests to JSON\_BuildTests [\#652](https://github.com/nlohmann/json/pull/652) ([olegendo](https://github.com/olegendo)) +- Don't include \, use std::make\_shared [\#650](https://github.com/nlohmann/json/pull/650) ([olegendo](https://github.com/olegendo)) +- Refacto/split basic json [\#643](https://github.com/nlohmann/json/pull/643) ([theodelrieu](https://github.com/theodelrieu)) +- fix typo in operator\_\_notequal example [\#630](https://github.com/nlohmann/json/pull/630) ([Chocobo1](https://github.com/Chocobo1)) +- Fix MSVC warning C4819 [\#629](https://github.com/nlohmann/json/pull/629) ([Chocobo1](https://github.com/Chocobo1)) +- \[BugFix\] Add parentheses around std::min [\#626](https://github.com/nlohmann/json/pull/626) ([koemeet](https://github.com/koemeet)) +- add pair/tuple conversions [\#624](https://github.com/nlohmann/json/pull/624) ([theodelrieu](https://github.com/theodelrieu)) +- remove std::pair support [\#615](https://github.com/nlohmann/json/pull/615) ([theodelrieu](https://github.com/theodelrieu)) +- Add pair support, fix CompatibleObject conversions \(fixes \#600\) [\#609](https://github.com/nlohmann/json/pull/609) ([theodelrieu](https://github.com/theodelrieu)) +- \#550 Fix iterator related compiling issues for Intel icc [\#598](https://github.com/nlohmann/json/pull/598) ([HenryRLee](https://github.com/HenryRLee)) +- Issue \#593 Fix the arithmetic operators in the iterator and reverse iterator [\#595](https://github.com/nlohmann/json/pull/595) ([HenryRLee](https://github.com/HenryRLee)) +- fix doxygen error of basic\_json::get\(\) [\#583](https://github.com/nlohmann/json/pull/583) ([zhaohuaxishi](https://github.com/zhaohuaxishi)) +- Fixing assignement for iterator wrapper second, and adding unit test [\#579](https://github.com/nlohmann/json/pull/579) ([Type1J](https://github.com/Type1J)) +- Adding first and second properties to iteration\_proxy\_internal [\#578](https://github.com/nlohmann/json/pull/578) ([Type1J](https://github.com/Type1J)) +- Adding support for Meson. [\#576](https://github.com/nlohmann/json/pull/576) ([Type1J](https://github.com/Type1J)) +- add enum class default conversions [\#545](https://github.com/nlohmann/json/pull/545) ([theodelrieu](https://github.com/theodelrieu)) +- Properly pop diagnostics [\#540](https://github.com/nlohmann/json/pull/540) ([tinloaf](https://github.com/tinloaf)) +- Add Visual Studio 17 image to appveyor build matrix [\#536](https://github.com/nlohmann/json/pull/536) ([vpetrigo](https://github.com/vpetrigo)) +- UTF8 encoding enhancement [\#534](https://github.com/nlohmann/json/pull/534) ([TedLyngmo](https://github.com/TedLyngmo)) +- Fix typo [\#530](https://github.com/nlohmann/json/pull/530) ([berkus](https://github.com/berkus)) +- Make exception base class visible in basic\_json [\#526](https://github.com/nlohmann/json/pull/526) ([ghost](https://github.com/ghost)) +- :art: Namespace `uint8_t` from the C++ stdlib [\#510](https://github.com/nlohmann/json/pull/510) ([alexweej](https://github.com/alexweej)) +- add to\_json method for C arrays [\#508](https://github.com/nlohmann/json/pull/508) ([theodelrieu](https://github.com/theodelrieu)) +- Fix -Weffc++ warnings \(GNU 6.3.1\) [\#496](https://github.com/nlohmann/json/pull/496) ([TedLyngmo](https://github.com/TedLyngmo)) + +## [v2.1.1](https://github.com/nlohmann/json/releases/tag/v2.1.1) (2017-02-25) + +[Full Changelog](https://github.com/nlohmann/json/compare/2.1.1...v2.1.1) + +## [2.1.1](https://github.com/nlohmann/json/releases/tag/2.1.1) (2017-02-25) + +[Full Changelog](https://github.com/nlohmann/json/compare/v2.1.0...2.1.1) + +- warning in the library [\#472](https://github.com/nlohmann/json/issues/472) +- How to create an array of Objects? [\#470](https://github.com/nlohmann/json/issues/470) +- \[Bug?\] Cannot get int pointer, but int64\_t works [\#468](https://github.com/nlohmann/json/issues/468) +- Illegal indirection [\#467](https://github.com/nlohmann/json/issues/467) +- in vs can't find linkageId [\#466](https://github.com/nlohmann/json/issues/466) +- Roundtrip error while parsing "1000000000000000010E5" [\#465](https://github.com/nlohmann/json/issues/465) +- C4996 error and warning with Visual Studio [\#463](https://github.com/nlohmann/json/issues/463) +- Support startIndex for from\_cbor/from\_msgpack [\#462](https://github.com/nlohmann/json/issues/462) +- question: monospace font used in feature slideshow? [\#460](https://github.com/nlohmann/json/issues/460) +- Object.keys\(\) [\#459](https://github.com/nlohmann/json/issues/459) +- Use “, “ as delimiter for json-objects. [\#457](https://github.com/nlohmann/json/issues/457) +- Enum -\> string during serialization and vice versa [\#455](https://github.com/nlohmann/json/issues/455) +- doubles are printed as integers [\#454](https://github.com/nlohmann/json/issues/454) +- Warnings with Visual Studio c++ \(VS2015 Update 3\) [\#453](https://github.com/nlohmann/json/issues/453) +- Heap-buffer-overflow \(OSS-Fuzz issue 585\) [\#452](https://github.com/nlohmann/json/issues/452) +- use of undeclared identifier 'UINT8\_MAX' [\#451](https://github.com/nlohmann/json/issues/451) +- Question on the lifetime managment of objects at the lower levels [\#449](https://github.com/nlohmann/json/issues/449) +- Json should not be constructible with 'json\*' [\#448](https://github.com/nlohmann/json/issues/448) +- Move value\_t to namespace scope [\#447](https://github.com/nlohmann/json/issues/447) +- Typo in README.md [\#446](https://github.com/nlohmann/json/issues/446) +- make check compilation is unneccesarily slow [\#445](https://github.com/nlohmann/json/issues/445) +- Problem in dump\(\) in json.h caused by ss.imbue [\#444](https://github.com/nlohmann/json/issues/444) +- I want to create Windows Application in Visual Studio 2015 c++, and i have a problem [\#443](https://github.com/nlohmann/json/issues/443) +- Implicit conversion issues [\#442](https://github.com/nlohmann/json/issues/442) +- Parsing of floats locale dependent [\#302](https://github.com/nlohmann/json/issues/302) + +- Speedup CI builds using cotire [\#461](https://github.com/nlohmann/json/pull/461) ([tusharpm](https://github.com/tusharpm)) +- TurpentineDistillery feature/locale independent str to num [\#450](https://github.com/nlohmann/json/pull/450) ([nlohmann](https://github.com/nlohmann)) +- README: adjust boost::optional example [\#439](https://github.com/nlohmann/json/pull/439) ([jaredgrubb](https://github.com/jaredgrubb)) +- fix \#414 - comparing to 0 literal [\#415](https://github.com/nlohmann/json/pull/415) ([stanmihai4](https://github.com/stanmihai4)) +- locale-independent num-to-str [\#378](https://github.com/nlohmann/json/pull/378) ([TurpentineDistillery](https://github.com/TurpentineDistillery)) + +## [v2.1.0](https://github.com/nlohmann/json/releases/tag/v2.1.0) (2017-01-28) + +[Full Changelog](https://github.com/nlohmann/json/compare/2.1.0...v2.1.0) + +## [2.1.0](https://github.com/nlohmann/json/releases/tag/2.1.0) (2017-01-28) + +[Full Changelog](https://github.com/nlohmann/json/compare/v2.0.10...2.1.0) + +- Parsing multiple JSON objects from a string or stream [\#438](https://github.com/nlohmann/json/issues/438) +- Use-of-uninitialized-value \(OSS-Fuzz issue 477\) [\#437](https://github.com/nlohmann/json/issues/437) +- add `reserve` function for array to reserve memory before adding json values into it [\#436](https://github.com/nlohmann/json/issues/436) +- Typo in examples page [\#434](https://github.com/nlohmann/json/issues/434) +- avoid malformed json [\#433](https://github.com/nlohmann/json/issues/433) +- How to add json objects to a map? [\#432](https://github.com/nlohmann/json/issues/432) +- create json instance from raw json \(unsigned char\*\) [\#431](https://github.com/nlohmann/json/issues/431) +- Getting std::invalid\_argument: stream error when following example [\#429](https://github.com/nlohmann/json/issues/429) +- Forward declare-only header? [\#427](https://github.com/nlohmann/json/issues/427) +- Implicit conversion from array to object [\#425](https://github.com/nlohmann/json/issues/425) +- error C4996: 'strerror' when reading file [\#422](https://github.com/nlohmann/json/issues/422) +- Get an error - JSON pointer must be empty or begin with '/' [\#421](https://github.com/nlohmann/json/issues/421) +- size parameter for parse\(\) [\#419](https://github.com/nlohmann/json/issues/419) +- json.hpp forcibly defines GCC\_VERSION [\#417](https://github.com/nlohmann/json/issues/417) +- Use-of-uninitialized-value \(OSS-Fuzz issue 377\) [\#416](https://github.com/nlohmann/json/issues/416) +- comparing to 0 literal [\#414](https://github.com/nlohmann/json/issues/414) +- Single char converted to ASCII code instead of string [\#413](https://github.com/nlohmann/json/issues/413) +- How to know if a string was parsed as utf-8? [\#406](https://github.com/nlohmann/json/issues/406) +- Overloaded += to add objects to an array makes no sense? [\#404](https://github.com/nlohmann/json/issues/404) +- Finding a value in an array [\#399](https://github.com/nlohmann/json/issues/399) +- add release information in static function [\#397](https://github.com/nlohmann/json/issues/397) +- Optimize memory usage of json objects in combination with binary serialization [\#373](https://github.com/nlohmann/json/issues/373) +- Conversion operators not considered [\#369](https://github.com/nlohmann/json/issues/369) +- Append ".0" to serialized floating\_point values that are digits-only. [\#362](https://github.com/nlohmann/json/issues/362) +- Add a customization point for user-defined types [\#328](https://github.com/nlohmann/json/issues/328) +- Conformance report for reference [\#307](https://github.com/nlohmann/json/issues/307) +- Document the best way to serialize/deserialize user defined types to json [\#298](https://github.com/nlohmann/json/issues/298) +- Add StringView template typename to basic\_json [\#297](https://github.com/nlohmann/json/issues/297) +- \[Improvement\] Add option to remove exceptions [\#296](https://github.com/nlohmann/json/issues/296) +- Performance in miloyip/nativejson-benchmark [\#202](https://github.com/nlohmann/json/issues/202) + +- conversion from/to user-defined types [\#435](https://github.com/nlohmann/json/pull/435) ([nlohmann](https://github.com/nlohmann)) +- Fix documentation error [\#430](https://github.com/nlohmann/json/pull/430) ([vjon](https://github.com/vjon)) + +## [v2.0.10](https://github.com/nlohmann/json/releases/tag/v2.0.10) (2017-01-02) + +[Full Changelog](https://github.com/nlohmann/json/compare/2.0.10...v2.0.10) + +## [2.0.10](https://github.com/nlohmann/json/releases/tag/2.0.10) (2017-01-02) + +[Full Changelog](https://github.com/nlohmann/json/compare/v2.0.9...2.0.10) + +- Heap-buffer-overflow \(OSS-Fuzz issue 367\) [\#412](https://github.com/nlohmann/json/issues/412) +- Heap-buffer-overflow \(OSS-Fuzz issue 366\) [\#411](https://github.com/nlohmann/json/issues/411) +- Use-of-uninitialized-value \(OSS-Fuzz issue 347\) [\#409](https://github.com/nlohmann/json/issues/409) +- Heap-buffer-overflow \(OSS-Fuzz issue 344\) [\#408](https://github.com/nlohmann/json/issues/408) +- Heap-buffer-overflow \(OSS-Fuzz issue 343\) [\#407](https://github.com/nlohmann/json/issues/407) +- Heap-buffer-overflow \(OSS-Fuzz issue 342\) [\#405](https://github.com/nlohmann/json/issues/405) +- strerror throwing error in compiler VS2015 [\#403](https://github.com/nlohmann/json/issues/403) +- json::parse of std::string being underlined by Visual Studio [\#402](https://github.com/nlohmann/json/issues/402) +- Explicitly getting string without .dump\(\) [\#401](https://github.com/nlohmann/json/issues/401) +- Possible to speed up json::parse? [\#398](https://github.com/nlohmann/json/issues/398) +- the alphabetic order in the code influence console\_output. [\#396](https://github.com/nlohmann/json/issues/396) +- Execute tests with clang sanitizers [\#394](https://github.com/nlohmann/json/issues/394) +- Check if library can be used with ETL [\#361](https://github.com/nlohmann/json/issues/361) + +- Feature/clang sanitize [\#410](https://github.com/nlohmann/json/pull/410) ([Daniel599](https://github.com/Daniel599)) +- Add Doozer build badge [\#400](https://github.com/nlohmann/json/pull/400) ([andoma](https://github.com/andoma)) + +## [v2.0.9](https://github.com/nlohmann/json/releases/tag/v2.0.9) (2016-12-16) + +[Full Changelog](https://github.com/nlohmann/json/compare/2.0.9...v2.0.9) + +## [2.0.9](https://github.com/nlohmann/json/releases/tag/2.0.9) (2016-12-16) + +[Full Changelog](https://github.com/nlohmann/json/compare/v2.0.8...2.0.9) + +- \#pragma GCC diagnostic ignored "-Wdocumentation" [\#393](https://github.com/nlohmann/json/issues/393) +- How to parse this json file and write separate sub object as json files? [\#392](https://github.com/nlohmann/json/issues/392) +- Integer-overflow \(OSS-Fuzz issue 267\) [\#389](https://github.com/nlohmann/json/issues/389) +- Implement indefinite-length types from RFC 7049 [\#387](https://github.com/nlohmann/json/issues/387) +- template parameter "T" is not used in declaring the parameter types of function template [\#386](https://github.com/nlohmann/json/issues/386) +- Serializing json instances containing already serialized string values without escaping [\#385](https://github.com/nlohmann/json/issues/385) +- Add test cases from RFC 7049 [\#384](https://github.com/nlohmann/json/issues/384) +- Add a table of contents to the README file [\#383](https://github.com/nlohmann/json/issues/383) +- Update FAQ section in the guidelines for contributing [\#382](https://github.com/nlohmann/json/issues/382) +- Allow for forward declaring nlohmann::json [\#381](https://github.com/nlohmann/json/issues/381) +- Bug in overflow detection when parsing integers [\#380](https://github.com/nlohmann/json/issues/380) +- A unique name to mention the library? [\#377](https://github.com/nlohmann/json/issues/377) +- Non-unique keys in objects. [\#375](https://github.com/nlohmann/json/issues/375) +- Request: binary serialization/deserialization [\#358](https://github.com/nlohmann/json/issues/358) + +- Replace class iterator and const\_iterator by using a single template class to reduce code. [\#395](https://github.com/nlohmann/json/pull/395) ([Bosswestfalen](https://github.com/Bosswestfalen)) +- Clang: quiet a warning [\#391](https://github.com/nlohmann/json/pull/391) ([jaredgrubb](https://github.com/jaredgrubb)) +- Fix issue \#380: Signed integer overflow check [\#390](https://github.com/nlohmann/json/pull/390) ([qwename](https://github.com/qwename)) + +## [v2.0.8](https://github.com/nlohmann/json/releases/tag/v2.0.8) (2016-12-02) + +[Full Changelog](https://github.com/nlohmann/json/compare/2.0.8...v2.0.8) + +## [2.0.8](https://github.com/nlohmann/json/releases/tag/2.0.8) (2016-12-02) + +[Full Changelog](https://github.com/nlohmann/json/compare/v2.0.7...2.0.8) + +- Reading from file [\#374](https://github.com/nlohmann/json/issues/374) +- Compiler warnings? [\#372](https://github.com/nlohmann/json/issues/372) +- docs: how to release a json object in memory? [\#371](https://github.com/nlohmann/json/issues/371) +- crash in dump [\#370](https://github.com/nlohmann/json/issues/370) +- Coverity issue \(FORWARD\_NULL\) in lexer\(std::istream& s\) [\#368](https://github.com/nlohmann/json/issues/368) +- json::parse on failed stream gets stuck [\#366](https://github.com/nlohmann/json/issues/366) +- Performance improvements [\#365](https://github.com/nlohmann/json/issues/365) +- 'to\_string' is not a member of 'std' [\#364](https://github.com/nlohmann/json/issues/364) +- Crash in dump\(\) from a static object [\#359](https://github.com/nlohmann/json/issues/359) +- json::parse\(...\) vs json j; j.parse\(...\) [\#357](https://github.com/nlohmann/json/issues/357) +- Hi, is there any method to dump json to string with the insert order rather than alphabets [\#356](https://github.com/nlohmann/json/issues/356) +- Provide an example of reading from an json with only a key that has an array of strings. [\#354](https://github.com/nlohmann/json/issues/354) +- Request: access with default value. [\#353](https://github.com/nlohmann/json/issues/353) +- {} and \[\] causes parser error. [\#352](https://github.com/nlohmann/json/issues/352) +- Reading a JSON file into a JSON object [\#351](https://github.com/nlohmann/json/issues/351) +- Request: 'emplace\_back' [\#349](https://github.com/nlohmann/json/issues/349) +- Is it possible to stream data through the json parser without storing everything in memory? [\#347](https://github.com/nlohmann/json/issues/347) +- pure virtual conversion operator [\#346](https://github.com/nlohmann/json/issues/346) +- Floating point precision lost [\#345](https://github.com/nlohmann/json/issues/345) +- unit-conversions SIGSEGV on armv7hl [\#303](https://github.com/nlohmann/json/issues/303) +- Coverity scan fails [\#299](https://github.com/nlohmann/json/issues/299) +- Using QString as string type [\#274](https://github.com/nlohmann/json/issues/274) + +## [v2.0.7](https://github.com/nlohmann/json/releases/tag/v2.0.7) (2016-11-02) + +[Full Changelog](https://github.com/nlohmann/json/compare/v2.0.6...v2.0.7) + +- JSON5 [\#348](https://github.com/nlohmann/json/issues/348) +- Check "Parsing JSON is a Minefield" [\#344](https://github.com/nlohmann/json/issues/344) +- Allow hex numbers [\#342](https://github.com/nlohmann/json/issues/342) +- Convert strings to numbers [\#341](https://github.com/nlohmann/json/issues/341) +- ""-operators ignore the length parameter [\#340](https://github.com/nlohmann/json/issues/340) +- JSON into std::tuple [\#339](https://github.com/nlohmann/json/issues/339) +- JSON into vector [\#335](https://github.com/nlohmann/json/issues/335) +- Installing with Homebrew on Mac Errors \(El Capitan\) [\#331](https://github.com/nlohmann/json/issues/331) +- g++ make check results in error [\#312](https://github.com/nlohmann/json/issues/312) +- Cannot convert from 'json' to 'char' [\#276](https://github.com/nlohmann/json/issues/276) +- Please add a Pretty-Print option for arrays to stay always in one line [\#229](https://github.com/nlohmann/json/issues/229) +- Conversion to STL map\\> gives error [\#220](https://github.com/nlohmann/json/issues/220) +- std::unorderd\_map cannot be used as ObjectType [\#164](https://github.com/nlohmann/json/issues/164) + +- fix minor grammar/style issue in README.md [\#336](https://github.com/nlohmann/json/pull/336) ([seeekr](https://github.com/seeekr)) + +## [v2.0.6](https://github.com/nlohmann/json/releases/tag/v2.0.6) (2016-10-15) + +[Full Changelog](https://github.com/nlohmann/json/compare/v2.0.5...v2.0.6) + +- How to handle json files? [\#333](https://github.com/nlohmann/json/issues/333) +- This file requires compiler and library support .... [\#332](https://github.com/nlohmann/json/issues/332) +- Segmentation fault on saving json to file [\#326](https://github.com/nlohmann/json/issues/326) +- parse error - unexpected \ with 2.0.5 [\#325](https://github.com/nlohmann/json/issues/325) +- Add nested object capability to pointers [\#323](https://github.com/nlohmann/json/issues/323) +- Fix usage examples' comments for std::multiset [\#322](https://github.com/nlohmann/json/issues/322) +- json\_unit runs forever when executed in build directory [\#319](https://github.com/nlohmann/json/issues/319) +- Visual studio 2015 update3 true != TRUE [\#317](https://github.com/nlohmann/json/issues/317) +- releasing single header file in compressed format [\#316](https://github.com/nlohmann/json/issues/316) +- json object from std::ifstream [\#315](https://github.com/nlohmann/json/issues/315) + +- make has\_mapped\_type struct friendly [\#324](https://github.com/nlohmann/json/pull/324) ([vpetrigo](https://github.com/vpetrigo)) +- Fix usage examples' comments for std::multiset [\#321](https://github.com/nlohmann/json/pull/321) ([vasild](https://github.com/vasild)) +- Include dir relocation [\#318](https://github.com/nlohmann/json/pull/318) ([ChristophJud](https://github.com/ChristophJud)) +- trivial documentation fix [\#313](https://github.com/nlohmann/json/pull/313) ([5tefan](https://github.com/5tefan)) + +## [v2.0.5](https://github.com/nlohmann/json/releases/tag/v2.0.5) (2016-09-14) + +[Full Changelog](https://github.com/nlohmann/json/compare/v2.0.4...v2.0.5) + +- \[feature request\]: schema validator and comments [\#311](https://github.com/nlohmann/json/issues/311) +- make json\_benchmarks no longer working in 2.0.4 [\#310](https://github.com/nlohmann/json/issues/310) +- Segmentation fault \(core dumped\) [\#309](https://github.com/nlohmann/json/issues/309) +- No matching member function for call to 'get\_impl' [\#308](https://github.com/nlohmann/json/issues/308) + +## [v2.0.4](https://github.com/nlohmann/json/releases/tag/v2.0.4) (2016-09-11) + +[Full Changelog](https://github.com/nlohmann/json/compare/v2.0.3...v2.0.4) + +- Parsing fails without space at end of file [\#306](https://github.com/nlohmann/json/issues/306) +- json schema validator [\#305](https://github.com/nlohmann/json/issues/305) +- Unused variable warning [\#304](https://github.com/nlohmann/json/issues/304) + +## [v2.0.3](https://github.com/nlohmann/json/releases/tag/v2.0.3) (2016-08-31) + +[Full Changelog](https://github.com/nlohmann/json/compare/v2.0.2...v2.0.3) + +- warning C4706: assignment within conditional expression [\#295](https://github.com/nlohmann/json/issues/295) +- Q: Is it possible to build json tree from already UTF8 encoded values? [\#293](https://github.com/nlohmann/json/issues/293) +- Equality operator results in array when assigned object [\#292](https://github.com/nlohmann/json/issues/292) +- Support for integers not from the range \[-\(2\*\*53\)+1, \(2\*\*53\)-1\] in parser [\#291](https://github.com/nlohmann/json/issues/291) +- Support for iterator-range parsing [\#290](https://github.com/nlohmann/json/issues/290) +- Horribly inconsistent behavior between const/non-const reference in operator \[\] \(\) [\#289](https://github.com/nlohmann/json/issues/289) +- Silently get numbers into smaller types [\#288](https://github.com/nlohmann/json/issues/288) +- Incorrect parsing of large int64\_t numbers [\#287](https://github.com/nlohmann/json/issues/287) +- \[question\]: macro to disable floating point support [\#284](https://github.com/nlohmann/json/issues/284) + +- unit-constructor1.cpp: Fix floating point truncation warning [\#300](https://github.com/nlohmann/json/pull/300) ([t-b](https://github.com/t-b)) + +## [v2.0.2](https://github.com/nlohmann/json/releases/tag/v2.0.2) (2016-07-31) + +[Full Changelog](https://github.com/nlohmann/json/compare/v2.0.1...v2.0.2) + +- can function dump\(\) return string in the order I push in the json object ? [\#286](https://github.com/nlohmann/json/issues/286) +- Error on the Mac: Undefined symbols for architecture x86\_64 [\#285](https://github.com/nlohmann/json/issues/285) +- value\(\) does not work with \_json\_pointer types [\#283](https://github.com/nlohmann/json/issues/283) +- Build error for std::int64 [\#282](https://github.com/nlohmann/json/issues/282) +- strings can't be accessed after dump\(\)-\>parse\(\) - type is lost [\#281](https://github.com/nlohmann/json/issues/281) +- Easy serialization of classes [\#280](https://github.com/nlohmann/json/issues/280) +- recursive data structures [\#277](https://github.com/nlohmann/json/issues/277) +- hexify\(\) function emits conversion warning [\#270](https://github.com/nlohmann/json/issues/270) + +- let the makefile choose the correct sed [\#279](https://github.com/nlohmann/json/pull/279) ([murinicanor](https://github.com/murinicanor)) +- Update hexify to use array lookup instead of ternary \(\#270\) [\#275](https://github.com/nlohmann/json/pull/275) ([dtoma](https://github.com/dtoma)) + +## [v2.0.1](https://github.com/nlohmann/json/releases/tag/v2.0.1) (2016-06-28) + +[Full Changelog](https://github.com/nlohmann/json/compare/v2.0.0...v2.0.1) + +- Compilation error. [\#273](https://github.com/nlohmann/json/issues/273) +- dump\(\) performance degradation in v2 [\#272](https://github.com/nlohmann/json/issues/272) + +- fixed a tiny typo [\#271](https://github.com/nlohmann/json/pull/271) ([feroldi](https://github.com/feroldi)) + +## [v2.0.0](https://github.com/nlohmann/json/releases/tag/v2.0.0) (2016-06-23) + +[Full Changelog](https://github.com/nlohmann/json/compare/v1.1.0...v2.0.0) + +- json::diff generates incorrect patch when removing multiple array elements. [\#269](https://github.com/nlohmann/json/issues/269) +- Docs - What does Json\[key\] return? [\#267](https://github.com/nlohmann/json/issues/267) +- Compiler Errors With JSON.hpp [\#265](https://github.com/nlohmann/json/issues/265) +- Ambiguous push\_back and operator+= overloads [\#263](https://github.com/nlohmann/json/issues/263) +- Preseving order of items in json [\#262](https://github.com/nlohmann/json/issues/262) +- '\' char problem in strings [\#261](https://github.com/nlohmann/json/issues/261) +- VS2015 compile fail [\#260](https://github.com/nlohmann/json/issues/260) +- -Wconversion warning [\#259](https://github.com/nlohmann/json/issues/259) +- Maybe a bug [\#258](https://github.com/nlohmann/json/issues/258) +- Few tests failed on Visual C++ 2015 [\#257](https://github.com/nlohmann/json/issues/257) +- Access keys when iteration with new for loop C++11 [\#256](https://github.com/nlohmann/json/issues/256) +- multiline text values [\#255](https://github.com/nlohmann/json/issues/255) +- Error when using json in g++ [\#254](https://github.com/nlohmann/json/issues/254) +- is the release 2.0? [\#253](https://github.com/nlohmann/json/issues/253) +- concatenate objects [\#252](https://github.com/nlohmann/json/issues/252) +- Encoding [\#251](https://github.com/nlohmann/json/issues/251) +- Unable to build example for constructing json object with stringstreams [\#250](https://github.com/nlohmann/json/issues/250) +- Hexadecimal support [\#249](https://github.com/nlohmann/json/issues/249) +- Update long-term goals [\#246](https://github.com/nlohmann/json/issues/246) +- Contribution To This Json Project [\#245](https://github.com/nlohmann/json/issues/245) +- Trouble using parser with initial dictionary [\#243](https://github.com/nlohmann/json/issues/243) +- Unit test fails when doing a CMake out-of-tree build [\#241](https://github.com/nlohmann/json/issues/241) +- -Wconversion warnings [\#239](https://github.com/nlohmann/json/issues/239) +- Additional integration options [\#237](https://github.com/nlohmann/json/issues/237) +- .get\\(\) works for non spaced string but returns as array for spaced/longer strings [\#236](https://github.com/nlohmann/json/issues/236) +- ambiguous overload for 'push\_back' and 'operator+=' [\#235](https://github.com/nlohmann/json/issues/235) +- Can't use basic\_json::iterator as a base iterator for std::move\_iterator [\#233](https://github.com/nlohmann/json/issues/233) +- json object's creation can freezes execution [\#231](https://github.com/nlohmann/json/issues/231) +- Incorrect dumping of parsed numbers with exponents, but without decimal places [\#230](https://github.com/nlohmann/json/issues/230) +- double values are serialized with commas as decimal points [\#228](https://github.com/nlohmann/json/issues/228) +- Move semantics with std::initializer\_list [\#225](https://github.com/nlohmann/json/issues/225) +- replace emplace [\#224](https://github.com/nlohmann/json/issues/224) +- abort during getline in yyfill [\#223](https://github.com/nlohmann/json/issues/223) +- free\(\): invalid pointer error in GCC 5.2.1 [\#221](https://github.com/nlohmann/json/issues/221) +- Error compile Android NDK error: 'strtof' is not a member of 'std' [\#219](https://github.com/nlohmann/json/issues/219) +- Wrong link in the README.md [\#217](https://github.com/nlohmann/json/issues/217) +- Wide character strings not supported [\#216](https://github.com/nlohmann/json/issues/216) +- Memory allocations using range-based for loops [\#214](https://github.com/nlohmann/json/issues/214) +- would you like to support gcc 4.8.1? [\#211](https://github.com/nlohmann/json/issues/211) +- Reading concatenated json's from an istream [\#210](https://github.com/nlohmann/json/issues/210) +- Conflicting typedef of ssize\_t on Windows 32 bit when using Boost.Python [\#204](https://github.com/nlohmann/json/issues/204) +- Inconsistency between operator\[\] and push\_back [\#203](https://github.com/nlohmann/json/issues/203) +- Small bugs in json.hpp \(get\_number\) and unit.cpp \(non-standard integer type test\) [\#199](https://github.com/nlohmann/json/issues/199) +- GCC/clang floating point parsing bug in strtod\(\) [\#195](https://github.com/nlohmann/json/issues/195) +- What is within scope? [\#192](https://github.com/nlohmann/json/issues/192) +- Bugs in miloyip/nativejson-benchmark: roundtrips [\#187](https://github.com/nlohmann/json/issues/187) +- Floating point exceptions [\#181](https://github.com/nlohmann/json/issues/181) +- Integer conversion to unsigned [\#178](https://github.com/nlohmann/json/issues/178) +- map string string fails to compile [\#176](https://github.com/nlohmann/json/issues/176) +- In basic\_json::basic\_json\(const CompatibleArrayType& val\), the requirement of CompatibleArrayType is not strict enough. [\#174](https://github.com/nlohmann/json/issues/174) +- Provide a FAQ [\#163](https://github.com/nlohmann/json/issues/163) +- Implicit assignment to std::string fails [\#144](https://github.com/nlohmann/json/issues/144) + +- Fix Issue \#265 [\#266](https://github.com/nlohmann/json/pull/266) ([06needhamt](https://github.com/06needhamt)) +- Define CMake/CTest tests [\#247](https://github.com/nlohmann/json/pull/247) ([robertmrk](https://github.com/robertmrk)) +- Out of tree builds and a few other miscellaneous CMake cleanups. [\#242](https://github.com/nlohmann/json/pull/242) ([ChrisKitching](https://github.com/ChrisKitching)) +- Implement additional integration options [\#238](https://github.com/nlohmann/json/pull/238) ([robertmrk](https://github.com/robertmrk)) +- make serialization locale-independent [\#232](https://github.com/nlohmann/json/pull/232) ([nlohmann](https://github.com/nlohmann)) +- fixes \#223 by updating README.md [\#227](https://github.com/nlohmann/json/pull/227) ([kevin--](https://github.com/kevin--)) +- Use namespace std for int64\_t and uint64\_t [\#226](https://github.com/nlohmann/json/pull/226) ([lv-zheng](https://github.com/lv-zheng)) +- Added missing cerrno header to fix ERANGE compile error on android [\#222](https://github.com/nlohmann/json/pull/222) ([Teemperor](https://github.com/Teemperor)) +- Corrected readme [\#218](https://github.com/nlohmann/json/pull/218) ([Annihil](https://github.com/Annihil)) +- Create PULL\_REQUEST\_TEMPLATE.md [\#213](https://github.com/nlohmann/json/pull/213) ([whackashoe](https://github.com/whackashoe)) +- fixed noexcept; added constexpr [\#208](https://github.com/nlohmann/json/pull/208) ([nlohmann](https://github.com/nlohmann)) +- Add support for afl-fuzz testing [\#207](https://github.com/nlohmann/json/pull/207) ([mykter](https://github.com/mykter)) +- replaced ssize\_t occurrences with auto \(addresses \#204\) [\#205](https://github.com/nlohmann/json/pull/205) ([nlohmann](https://github.com/nlohmann)) +- Fixed issue \#199 - Small bugs in json.hpp \(get\_number\) and unit.cpp \(non-standard integer type test\) [\#200](https://github.com/nlohmann/json/pull/200) ([twelsby](https://github.com/twelsby)) +- Fix broken link [\#197](https://github.com/nlohmann/json/pull/197) ([vog](https://github.com/vog)) +- Issue \#195 - update Travis to Trusty due to gcc/clang strtod\(\) bug [\#196](https://github.com/nlohmann/json/pull/196) ([twelsby](https://github.com/twelsby)) +- Issue \#178 - Extending support to full uint64\_t/int64\_t range and unsigned type \(updated\) [\#193](https://github.com/nlohmann/json/pull/193) ([twelsby](https://github.com/twelsby)) + +## [v1.1.0](https://github.com/nlohmann/json/releases/tag/v1.1.0) (2016-01-24) + +[Full Changelog](https://github.com/nlohmann/json/compare/v1.0.0...v1.1.0) + +- Small error in pull \#185 [\#194](https://github.com/nlohmann/json/issues/194) +- Bugs in miloyip/nativejson-benchmark: floating-point parsing [\#186](https://github.com/nlohmann/json/issues/186) +- Floating point equality [\#185](https://github.com/nlohmann/json/issues/185) +- Unused variables in catch [\#180](https://github.com/nlohmann/json/issues/180) +- Typo in documentation [\#179](https://github.com/nlohmann/json/issues/179) +- JSON performance benchmark comparision [\#177](https://github.com/nlohmann/json/issues/177) +- Since re2c is often ignored in pull requests, it may make sense to make a contributing.md file [\#175](https://github.com/nlohmann/json/issues/175) +- Question about exceptions [\#173](https://github.com/nlohmann/json/issues/173) +- Android? [\#172](https://github.com/nlohmann/json/issues/172) +- Cannot index by key of type static constexpr const char\* [\#171](https://github.com/nlohmann/json/issues/171) +- Add assertions [\#168](https://github.com/nlohmann/json/issues/168) +- MSVC 2015 build fails when attempting to compare object\_t [\#167](https://github.com/nlohmann/json/issues/167) +- Member detector is not portable [\#166](https://github.com/nlohmann/json/issues/166) +- Unnecessary const\_cast [\#162](https://github.com/nlohmann/json/issues/162) +- Question about get\_ref\(\) [\#128](https://github.com/nlohmann/json/issues/128) +- range based for loop for objects [\#83](https://github.com/nlohmann/json/issues/83) +- Consider submitting this to the Boost Library Incubator [\#66](https://github.com/nlohmann/json/issues/66) + +- Fixed Issue \#186 - add strto\(f|d|ld\) overload wrappers, "-0.0" special case and FP trailing zero [\#191](https://github.com/nlohmann/json/pull/191) ([twelsby](https://github.com/twelsby)) +- Issue \#185 - remove approx\(\) and use \#pragma to kill warnings [\#190](https://github.com/nlohmann/json/pull/190) ([twelsby](https://github.com/twelsby)) +- Fixed Issue \#171 - added two extra template overloads of operator\[\] for T\* arguments [\#189](https://github.com/nlohmann/json/pull/189) ([twelsby](https://github.com/twelsby)) +- Fixed issue \#167 - removed operator ValueType\(\) condition for VS2015 [\#188](https://github.com/nlohmann/json/pull/188) ([twelsby](https://github.com/twelsby)) +- Implementation of get\_ref\(\) [\#184](https://github.com/nlohmann/json/pull/184) ([dariomt](https://github.com/dariomt)) +- Fixed some typos in CONTRIBUTING.md [\#182](https://github.com/nlohmann/json/pull/182) ([nibroc](https://github.com/nibroc)) + +## [v1.0.0](https://github.com/nlohmann/json/releases/tag/v1.0.0) (2015-12-27) + +[Full Changelog](https://github.com/nlohmann/json/compare/v1.0.0-rc1...v1.0.0) + +- add key name to exception [\#160](https://github.com/nlohmann/json/issues/160) +- Getting member discarding qualifyer [\#159](https://github.com/nlohmann/json/issues/159) +- basic\_json::iterator::value\(\) output includes quotes while basic\_json::iterator::key\(\) doesn't [\#158](https://github.com/nlohmann/json/issues/158) +- Indexing `const basic_json<>` with `const basic_string` [\#157](https://github.com/nlohmann/json/issues/157) +- token\_type\_name\(token\_type t\): not all control paths return a value [\#156](https://github.com/nlohmann/json/issues/156) +- prevent json.hpp from emitting compiler warnings [\#154](https://github.com/nlohmann/json/issues/154) +- json::parse\(string\) does not check utf8 bom [\#152](https://github.com/nlohmann/json/issues/152) +- unsigned 64bit values output as signed [\#151](https://github.com/nlohmann/json/issues/151) +- Wish feature: json5 [\#150](https://github.com/nlohmann/json/issues/150) +- Unable to compile on MSVC 2015 with SDL checking enabled: This function or variable may be unsafe. [\#149](https://github.com/nlohmann/json/issues/149) +- "Json Object" type does not keep object order [\#148](https://github.com/nlohmann/json/issues/148) +- dump\(\) convert strings encoded by utf-8 to shift-jis on windows 10. [\#147](https://github.com/nlohmann/json/issues/147) +- Unable to get field names in a json object [\#145](https://github.com/nlohmann/json/issues/145) +- Question: Is the use of incomplete type correct? [\#138](https://github.com/nlohmann/json/issues/138) +- json.hpp:5746:32: error: 'to\_string' is not a member of 'std' [\#136](https://github.com/nlohmann/json/issues/136) +- Bug in basic\_json::operator\[\] const overload [\#135](https://github.com/nlohmann/json/issues/135) +- wrong enable\_if for const pointer \(instead of pointer-to-const\) [\#134](https://github.com/nlohmann/json/issues/134) +- overload of at\(\) with default value [\#133](https://github.com/nlohmann/json/issues/133) +- Splitting source [\#132](https://github.com/nlohmann/json/issues/132) +- Question about get\_ptr\(\) [\#127](https://github.com/nlohmann/json/issues/127) +- Visual Studio 14 Debug assertion failed [\#125](https://github.com/nlohmann/json/issues/125) +- Memory leak in face of exceptions [\#118](https://github.com/nlohmann/json/issues/118) +- Find and Count for arrays [\#117](https://github.com/nlohmann/json/issues/117) +- dynamically constructing an arbitrarily nested object [\#114](https://github.com/nlohmann/json/issues/114) +- Returning any data type [\#113](https://github.com/nlohmann/json/issues/113) +- Compile error with g++ 4.9.3 cygwin 64-bit [\#112](https://github.com/nlohmann/json/issues/112) +- insert json array issue with gcc4.8.2 [\#110](https://github.com/nlohmann/json/issues/110) +- error: unterminated raw string [\#109](https://github.com/nlohmann/json/issues/109) +- vector\ copy constructor really weird [\#108](https://github.com/nlohmann/json/issues/108) +- \[clang-3.6.2\] string/sstream with number to json issue [\#107](https://github.com/nlohmann/json/issues/107) +- object field accessors [\#103](https://github.com/nlohmann/json/issues/103) +- v8pp and json [\#95](https://github.com/nlohmann/json/issues/95) +- Wishlist [\#65](https://github.com/nlohmann/json/issues/65) +- Windows/Visual Studio \(through 2013\) is unsupported [\#62](https://github.com/nlohmann/json/issues/62) + +- Replace sprintf with hex function, this fixes \#149 [\#153](https://github.com/nlohmann/json/pull/153) ([whackashoe](https://github.com/whackashoe)) +- Fix character skipping after a surrogate pair [\#146](https://github.com/nlohmann/json/pull/146) ([robertmrk](https://github.com/robertmrk)) +- Detect correctly pointer-to-const [\#137](https://github.com/nlohmann/json/pull/137) ([dariomt](https://github.com/dariomt)) +- disabled "CopyAssignable" test for MSVC in Debug mode, see \#125 [\#131](https://github.com/nlohmann/json/pull/131) ([dariomt](https://github.com/dariomt)) +- removed stream operator for iterator, resolution for \#125 [\#130](https://github.com/nlohmann/json/pull/130) ([dariomt](https://github.com/dariomt)) +- fixed typos in comments for examples [\#129](https://github.com/nlohmann/json/pull/129) ([dariomt](https://github.com/dariomt)) +- Remove superfluous inefficiency [\#126](https://github.com/nlohmann/json/pull/126) ([d-frey](https://github.com/d-frey)) +- remove invalid parameter '-stdlib=libc++' in CMakeLists.txt [\#124](https://github.com/nlohmann/json/pull/124) ([emvivre](https://github.com/emvivre)) +- exception-safe object creation, fixes \#118 [\#122](https://github.com/nlohmann/json/pull/122) ([d-frey](https://github.com/d-frey)) +- Fix small oversight. [\#121](https://github.com/nlohmann/json/pull/121) ([ColinH](https://github.com/ColinH)) +- Overload parse\(\) to accept an rvalue reference [\#120](https://github.com/nlohmann/json/pull/120) ([silverweed](https://github.com/silverweed)) +- Use the right variable name in doc string [\#115](https://github.com/nlohmann/json/pull/115) ([whoshuu](https://github.com/whoshuu)) + +## [v1.0.0-rc1](https://github.com/nlohmann/json/releases/tag/v1.0.0-rc1) (2015-07-26) + +[Full Changelog](https://github.com/nlohmann/json/compare/4502e7e51c0569419c26e75fbdd5748170603e54...v1.0.0-rc1) + +- Finish documenting the public interface in Doxygen [\#102](https://github.com/nlohmann/json/issues/102) +- Binary string causes numbers to be dumped as hex [\#101](https://github.com/nlohmann/json/issues/101) +- failed to iterator json object with reverse\_iterator [\#100](https://github.com/nlohmann/json/issues/100) +- 'noexcept' : unknown override specifier [\#99](https://github.com/nlohmann/json/issues/99) +- json float parsing problem [\#98](https://github.com/nlohmann/json/issues/98) +- Adjust wording to JSON RFC [\#97](https://github.com/nlohmann/json/issues/97) +- static analysis warnings [\#94](https://github.com/nlohmann/json/issues/94) +- reverse\_iterator operator inheritance problem [\#93](https://github.com/nlohmann/json/issues/93) +- init error [\#92](https://github.com/nlohmann/json/issues/92) +- access by \(const\) reference [\#91](https://github.com/nlohmann/json/issues/91) +- is\_integer and is\_float tests [\#90](https://github.com/nlohmann/json/issues/90) +- Nonstandard integer type [\#89](https://github.com/nlohmann/json/issues/89) +- static library build [\#84](https://github.com/nlohmann/json/issues/84) +- lexer::get\_number return NAN [\#82](https://github.com/nlohmann/json/issues/82) +- MinGW have no std::to\_string [\#80](https://github.com/nlohmann/json/issues/80) +- Incorrect behaviour of basic\_json::count method [\#78](https://github.com/nlohmann/json/issues/78) +- Invoking is\_array\(\) function creates "null" value [\#77](https://github.com/nlohmann/json/issues/77) +- dump\(\) / parse\(\) not idempotent [\#76](https://github.com/nlohmann/json/issues/76) +- Handle infinity and NaN cases [\#70](https://github.com/nlohmann/json/issues/70) +- errors in g++-4.8.1 [\#68](https://github.com/nlohmann/json/issues/68) +- Keys when iterating over objects [\#67](https://github.com/nlohmann/json/issues/67) +- Compilation results in tons of warnings [\#64](https://github.com/nlohmann/json/issues/64) +- Complete brief documentation [\#61](https://github.com/nlohmann/json/issues/61) +- Double quotation mark is not parsed correctly [\#60](https://github.com/nlohmann/json/issues/60) +- Get coverage back to 100% [\#58](https://github.com/nlohmann/json/issues/58) +- erase elements using iterators [\#57](https://github.com/nlohmann/json/issues/57) +- Removing item from array [\#56](https://github.com/nlohmann/json/issues/56) +- Serialize/Deserialize like PHP? [\#55](https://github.com/nlohmann/json/issues/55) +- Numbers as keys [\#54](https://github.com/nlohmann/json/issues/54) +- Why are elements alphabetized on key while iterating? [\#53](https://github.com/nlohmann/json/issues/53) +- Document erase, count, and iterators key and value [\#52](https://github.com/nlohmann/json/issues/52) +- Do not use std::to\_string [\#51](https://github.com/nlohmann/json/issues/51) +- Supported compilers [\#50](https://github.com/nlohmann/json/issues/50) +- Confused about iterating through json objects [\#49](https://github.com/nlohmann/json/issues/49) +- Use non-member begin/end [\#48](https://github.com/nlohmann/json/issues/48) +- Erase key [\#47](https://github.com/nlohmann/json/issues/47) +- Key iterator [\#46](https://github.com/nlohmann/json/issues/46) +- Add count member function [\#45](https://github.com/nlohmann/json/issues/45) +- Problem getting vector \(array\) of strings [\#44](https://github.com/nlohmann/json/issues/44) +- Compilation error due to assuming that private=public [\#43](https://github.com/nlohmann/json/issues/43) +- Use of deprecated implicit copy constructor [\#42](https://github.com/nlohmann/json/issues/42) +- Printing attribute names [\#39](https://github.com/nlohmann/json/issues/39) +- dumping a small number\_float just outputs 0.000000 [\#37](https://github.com/nlohmann/json/issues/37) +- find is error [\#32](https://github.com/nlohmann/json/issues/32) +- Avoid using spaces when encoding without pretty print [\#31](https://github.com/nlohmann/json/issues/31) +- Cannot encode long numbers [\#30](https://github.com/nlohmann/json/issues/30) +- segmentation fault when iterating over empty arrays/objects [\#28](https://github.com/nlohmann/json/issues/28) +- Creating an empty array [\#27](https://github.com/nlohmann/json/issues/27) +- Custom allocator support [\#25](https://github.com/nlohmann/json/issues/25) +- make the type of the used string container customizable [\#20](https://github.com/nlohmann/json/issues/20) +- Improper parsing of JSON string "\\" [\#17](https://github.com/nlohmann/json/issues/17) +- create a header-only version [\#16](https://github.com/nlohmann/json/issues/16) +- Don't return "const values" [\#15](https://github.com/nlohmann/json/issues/15) +- Add to\_string overload for indentation [\#13](https://github.com/nlohmann/json/issues/13) +- string parser does not recognize uncompliant strings [\#12](https://github.com/nlohmann/json/issues/12) +- possible double-free in find function [\#11](https://github.com/nlohmann/json/issues/11) +- UTF-8 encoding/deconding/testing [\#10](https://github.com/nlohmann/json/issues/10) +- move code into namespace [\#9](https://github.com/nlohmann/json/issues/9) +- free functions for explicit objects and arrays in initializer lists [\#8](https://github.com/nlohmann/json/issues/8) +- unique\_ptr for ownership [\#7](https://github.com/nlohmann/json/issues/7) +- Add unit tests [\#4](https://github.com/nlohmann/json/issues/4) +- Drop C++98 support [\#3](https://github.com/nlohmann/json/issues/3) +- Test case coverage [\#2](https://github.com/nlohmann/json/issues/2) +- Runtime error in Travis job [\#1](https://github.com/nlohmann/json/issues/1) + +- Keyword 'inline' is useless when member functions are defined in headers [\#87](https://github.com/nlohmann/json/pull/87) ([ahamez](https://github.com/ahamez)) +- Remove useless typename [\#86](https://github.com/nlohmann/json/pull/86) ([ahamez](https://github.com/ahamez)) +- Avoid warning with Xcode's clang [\#85](https://github.com/nlohmann/json/pull/85) ([ahamez](https://github.com/ahamez)) +- Fix typos [\#73](https://github.com/nlohmann/json/pull/73) ([aqnouch](https://github.com/aqnouch)) +- Replace `default_callback` function with `nullptr` and check for null… [\#72](https://github.com/nlohmann/json/pull/72) ([aburgh](https://github.com/aburgh)) +- support enum [\#71](https://github.com/nlohmann/json/pull/71) ([likebeta](https://github.com/likebeta)) +- Fix performance regression introduced with the parsing callback feature. [\#69](https://github.com/nlohmann/json/pull/69) ([aburgh](https://github.com/aburgh)) +- Improve the implementations of the comparission-operators [\#63](https://github.com/nlohmann/json/pull/63) ([Florianjw](https://github.com/Florianjw)) +- Fix compilation of json\_unit with GCC 5 [\#59](https://github.com/nlohmann/json/pull/59) ([dkopecek](https://github.com/dkopecek)) +- Parse streams incrementally. [\#40](https://github.com/nlohmann/json/pull/40) ([aburgh](https://github.com/aburgh)) +- Feature/small float serialization [\#38](https://github.com/nlohmann/json/pull/38) ([jrandall](https://github.com/jrandall)) +- template version with re2c scanner [\#36](https://github.com/nlohmann/json/pull/36) ([nlohmann](https://github.com/nlohmann)) +- more descriptive documentation in example [\#33](https://github.com/nlohmann/json/pull/33) ([luxe](https://github.com/luxe)) +- Fix string conversion under Clang [\#26](https://github.com/nlohmann/json/pull/26) ([wancw](https://github.com/wancw)) +- Fixed dumping of strings [\#24](https://github.com/nlohmann/json/pull/24) ([Teemperor](https://github.com/Teemperor)) +- Added a remark to the readme that coverage is GCC only for now [\#23](https://github.com/nlohmann/json/pull/23) ([Teemperor](https://github.com/Teemperor)) +- Unicode escaping [\#22](https://github.com/nlohmann/json/pull/22) ([Teemperor](https://github.com/Teemperor)) +- Implemented the JSON spec for string parsing for everything but the \uXXXX escaping [\#21](https://github.com/nlohmann/json/pull/21) ([Teemperor](https://github.com/Teemperor)) +- add the std iterator typedefs to iterator and const\_iterator [\#19](https://github.com/nlohmann/json/pull/19) ([kirkshoop](https://github.com/kirkshoop)) +- Fixed escaped quotes [\#18](https://github.com/nlohmann/json/pull/18) ([Teemperor](https://github.com/Teemperor)) +- Fix double delete on std::bad\_alloc exception [\#14](https://github.com/nlohmann/json/pull/14) ([elliotgoodrich](https://github.com/elliotgoodrich)) +- Added CMake and lcov [\#6](https://github.com/nlohmann/json/pull/6) ([Teemperor](https://github.com/Teemperor)) +- Version 2.0 [\#5](https://github.com/nlohmann/json/pull/5) ([nlohmann](https://github.com/nlohmann)) + + + +\* *This Changelog was automatically generated by [github_changelog_generator](https://github.com/github-changelog-generator/github-changelog-generator)* diff --git a/LICENSE.MIT b/LICENSE.MIT new file mode 100644 index 00000000..1c1f7a69 --- /dev/null +++ b/LICENSE.MIT @@ -0,0 +1,21 @@ +MIT License + +Copyright (c) 2013-2022 Niels Lohmann + +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/LICENSES/Apache-2.0.txt b/LICENSES/Apache-2.0.txt new file mode 100644 index 00000000..137069b8 --- /dev/null +++ b/LICENSES/Apache-2.0.txt @@ -0,0 +1,73 @@ +Apache License +Version 2.0, January 2004 +http://www.apache.org/licenses/ + +TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + +1. Definitions. + +"License" shall mean the terms and conditions for use, reproduction, and distribution as defined by Sections 1 through 9 of this document. + +"Licensor" shall mean the copyright owner or entity authorized by the copyright owner that is granting the License. + +"Legal Entity" shall mean the union of the acting entity and all other entities that control, are controlled by, or are under common control with that entity. For the purposes of this definition, "control" means (i) the power, direct or indirect, to cause the direction or management of such entity, whether by contract or otherwise, or (ii) ownership of fifty percent (50%) or more of the outstanding shares, or (iii) beneficial ownership of such entity. + +"You" (or "Your") shall mean an individual or Legal Entity exercising permissions granted by this License. + +"Source" form shall mean the preferred form for making modifications, including but not limited to software source code, documentation source, and configuration files. + +"Object" form shall mean any form resulting from mechanical transformation or translation of a Source form, including but not limited to compiled object code, generated documentation, and conversions to other media types. + +"Work" shall mean the work of authorship, whether in Source or Object form, made available under the License, as indicated by a copyright notice that is included in or attached to the work (an example is provided in the Appendix below). + +"Derivative Works" shall mean any work, whether in Source or Object form, that is based on (or derived from) the Work and for which the editorial revisions, annotations, elaborations, or other modifications represent, as a whole, an original work of authorship. For the purposes of this License, Derivative Works shall not include works that remain separable from, or merely link (or bind by name) to the interfaces of, the Work and Derivative Works thereof. + +"Contribution" shall mean any work of authorship, including the original version of the Work and any modifications or additions to that Work or Derivative Works thereof, that is intentionally submitted to Licensor for inclusion in the Work by the copyright owner or by an individual or Legal Entity authorized to submit on behalf of the copyright owner. For the purposes of this definition, "submitted" means any form of electronic, verbal, or written communication sent to the Licensor or its representatives, including but not limited to communication on electronic mailing lists, source code control systems, and issue tracking systems that are managed by, or on behalf of, the Licensor for the purpose of discussing and improving the Work, but excluding communication that is conspicuously marked or otherwise designated in writing by the copyright owner as "Not a Contribution." + +"Contributor" shall mean Licensor and any individual or Legal Entity on behalf of whom a Contribution has been received by Licensor and subsequently incorporated within the Work. + +2. Grant of Copyright License. Subject to the terms and conditions of this License, each Contributor hereby grants to You a perpetual, worldwide, non-exclusive, no-charge, royalty-free, irrevocable copyright license to reproduce, prepare Derivative Works of, publicly display, publicly perform, sublicense, and distribute the Work and such Derivative Works in Source or Object form. + +3. Grant of Patent License. Subject to the terms and conditions of this License, each Contributor hereby grants to You a perpetual, worldwide, non-exclusive, no-charge, royalty-free, irrevocable (except as stated in this section) patent license to make, have made, use, offer to sell, sell, import, and otherwise transfer the Work, where such license applies only to those patent claims licensable by such Contributor that are necessarily infringed by their Contribution(s) alone or by combination of their Contribution(s) with the Work to which such Contribution(s) was submitted. If You institute patent litigation against any entity (including a cross-claim or counterclaim in a lawsuit) alleging that the Work or a Contribution incorporated within the Work constitutes direct or contributory patent infringement, then any patent licenses granted to You under this License for that Work shall terminate as of the date such litigation is filed. + +4. Redistribution. You may reproduce and distribute copies of the Work or Derivative Works thereof in any medium, with or without modifications, and in Source or Object form, provided that You meet the following conditions: + + (a) You must give any other recipients of the Work or Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works that You distribute, all copyright, patent, trademark, and attribution notices from the Source form of the Work, excluding those notices that do not pertain to any part of the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its distribution, then any Derivative Works that You distribute must include a readable copy of the attribution notices contained within such NOTICE file, excluding those notices that do not pertain to any part of the Derivative Works, in at least one of the following places: within a NOTICE text file distributed as part of the Derivative Works; within the Source form or documentation, if provided along with the Derivative Works; or, within a display generated by the Derivative Works, if and wherever such third-party notices normally appear. The contents of the NOTICE file are for informational purposes only and do not modify the License. You may add Your own attribution notices within Derivative Works that You distribute, alongside or as an addendum to the NOTICE text from the Work, provided that such additional attribution notices cannot be construed as modifying the License. + + You may add Your own copyright statement to Your modifications and may provide additional or different license terms and conditions for use, reproduction, or distribution of Your modifications, or for any such Derivative Works as a whole, provided Your use, reproduction, and distribution of the Work otherwise complies with the conditions stated in this License. + +5. Submission of Contributions. Unless You explicitly state otherwise, any Contribution intentionally submitted for inclusion in the Work by You to the Licensor shall be under the terms and conditions of this License, without any additional terms or conditions. Notwithstanding the above, nothing herein shall supersede or modify the terms of any separate license agreement you may have executed with Licensor regarding such Contributions. + +6. Trademarks. This License does not grant permission to use the trade names, trademarks, service marks, or product names of the Licensor, except as required for reasonable and customary use in describing the origin of the Work and reproducing the content of the NOTICE file. + +7. Disclaimer of Warranty. Unless required by applicable law or agreed to in writing, Licensor provides the Work (and each Contributor provides its Contributions) on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied, including, without limitation, any warranties or conditions of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A PARTICULAR PURPOSE. You are solely responsible for determining the appropriateness of using or redistributing the Work and assume any risks associated with Your exercise of permissions under this License. + +8. Limitation of Liability. In no event and under no legal theory, whether in tort (including negligence), contract, or otherwise, unless required by applicable law (such as deliberate and grossly negligent acts) or agreed to in writing, shall any Contributor be liable to You for damages, including any direct, indirect, special, incidental, or consequential damages of any character arising as a result of this License or out of the use or inability to use the Work (including but not limited to damages for loss of goodwill, work stoppage, computer failure or malfunction, or any and all other commercial damages or losses), even if such Contributor has been advised of the possibility of such damages. + +9. Accepting Warranty or Additional Liability. While redistributing the Work or Derivative Works thereof, You may choose to offer, and charge a fee for, acceptance of support, warranty, indemnity, or other liability obligations and/or rights consistent with this License. However, in accepting such obligations, You may act only on Your own behalf and on Your sole responsibility, not on behalf of any other Contributor, and only if You agree to indemnify, defend, and hold each Contributor harmless for any liability incurred by, or claims asserted against, such Contributor by reason of your accepting any such warranty or additional liability. + +END OF TERMS AND CONDITIONS + +APPENDIX: How to apply the Apache License to your work. + +To apply the Apache License to your work, attach the following boilerplate notice, with the fields enclosed by brackets "[]" replaced with your own identifying information. (Don't include the brackets!) The text should be enclosed in the appropriate comment syntax for the file format. We also recommend that a file or class name and description of purpose be included on the same "printed page" as the copyright notice for easier identification within third-party archives. + +Copyright [yyyy] [name of copyright owner] + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + +http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. diff --git a/LICENSES/BSD-3-Clause.txt b/LICENSES/BSD-3-Clause.txt new file mode 100644 index 00000000..ea890afb --- /dev/null +++ b/LICENSES/BSD-3-Clause.txt @@ -0,0 +1,11 @@ +Copyright (c) . + +Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: + +1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. + +2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. + +3. Neither the name of the copyright holder nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. diff --git a/LICENSES/GPL-3.0-only.txt b/LICENSES/GPL-3.0-only.txt new file mode 100644 index 00000000..d41c0bd9 --- /dev/null +++ b/LICENSES/GPL-3.0-only.txt @@ -0,0 +1,232 @@ +GNU GENERAL PUBLIC LICENSE +Version 3, 29 June 2007 + +Copyright © 2007 Free Software Foundation, Inc. + +Everyone is permitted to copy and distribute verbatim copies of this license document, but changing it is not allowed. + +Preamble + +The GNU General Public License is a free, copyleft license for software and other kinds of works. + +The licenses for most software and other practical works are designed to take away your freedom to share and change the works. By contrast, the GNU General Public License is intended to guarantee your freedom to share and change all versions of a program--to make sure it remains free software for all its users. We, the Free Software Foundation, use the GNU General Public License for most of our software; it applies also to any other work released this way by its authors. You can apply it to your programs, too. + +When we speak of free software, we are referring to freedom, not price. Our General Public Licenses are designed to make sure that you have the freedom to distribute copies of free software (and charge for them if you wish), that you receive source code or can get it if you want it, that you can change the software or use pieces of it in new free programs, and that you know you can do these things. + +To protect your rights, we need to prevent others from denying you these rights or asking you to surrender the rights. Therefore, you have certain responsibilities if you distribute copies of the software, or if you modify it: responsibilities to respect the freedom of others. + +For example, if you distribute copies of such a program, whether gratis or for a fee, you must pass on to the recipients the same freedoms that you received. You must make sure that they, too, receive or can get the source code. And you must show them these terms so they know their rights. + +Developers that use the GNU GPL protect your rights with two steps: (1) assert copyright on the software, and (2) offer you this License giving you legal permission to copy, distribute and/or modify it. + +For the developers' and authors' protection, the GPL clearly explains that there is no warranty for this free software. For both users' and authors' sake, the GPL requires that modified versions be marked as changed, so that their problems will not be attributed erroneously to authors of previous versions. + +Some devices are designed to deny users access to install or run modified versions of the software inside them, although the manufacturer can do so. This is fundamentally incompatible with the aim of protecting users' freedom to change the software. The systematic pattern of such abuse occurs in the area of products for individuals to use, which is precisely where it is most unacceptable. Therefore, we have designed this version of the GPL to prohibit the practice for those products. If such problems arise substantially in other domains, we stand ready to extend this provision to those domains in future versions of the GPL, as needed to protect the freedom of users. + +Finally, every program is threatened constantly by software patents. States should not allow patents to restrict development and use of software on general-purpose computers, but in those that do, we wish to avoid the special danger that patents applied to a free program could make it effectively proprietary. To prevent this, the GPL assures that patents cannot be used to render the program non-free. + +The precise terms and conditions for copying, distribution and modification follow. + +TERMS AND CONDITIONS + +0. Definitions. + +“This License” refers to version 3 of the GNU General Public License. + +“Copyright” also means copyright-like laws that apply to other kinds of works, such as semiconductor masks. + +“The Program” refers to any copyrightable work licensed under this License. Each licensee is addressed as “you”. “Licensees” and “recipients” may be individuals or organizations. + +To “modify” a work means to copy from or adapt all or part of the work in a fashion requiring copyright permission, other than the making of an exact copy. The resulting work is called a “modified version” of the earlier work or a work “based on” the earlier work. + +A “covered work” means either the unmodified Program or a work based on the Program. + +To “propagate” a work means to do anything with it that, without permission, would make you directly or secondarily liable for infringement under applicable copyright law, except executing it on a computer or modifying a private copy. Propagation includes copying, distribution (with or without modification), making available to the public, and in some countries other activities as well. + +To “convey” a work means any kind of propagation that enables other parties to make or receive copies. Mere interaction with a user through a computer network, with no transfer of a copy, is not conveying. + +An interactive user interface displays “Appropriate Legal Notices” to the extent that it includes a convenient and prominently visible feature that (1) displays an appropriate copyright notice, and (2) tells the user that there is no warranty for the work (except to the extent that warranties are provided), that licensees may convey the work under this License, and how to view a copy of this License. If the interface presents a list of user commands or options, such as a menu, a prominent item in the list meets this criterion. + +1. Source Code. +The “source code” for a work means the preferred form of the work for making modifications to it. “Object code” means any non-source form of a work. + +A “Standard Interface” means an interface that either is an official standard defined by a recognized standards body, or, in the case of interfaces specified for a particular programming language, one that is widely used among developers working in that language. + +The “System Libraries” of an executable work include anything, other than the work as a whole, that (a) is included in the normal form of packaging a Major Component, but which is not part of that Major Component, and (b) serves only to enable use of the work with that Major Component, or to implement a Standard Interface for which an implementation is available to the public in source code form. A “Major Component”, in this context, means a major essential component (kernel, window system, and so on) of the specific operating system (if any) on which the executable work runs, or a compiler used to produce the work, or an object code interpreter used to run it. + +The “Corresponding Source” for a work in object code form means all the source code needed to generate, install, and (for an executable work) run the object code and to modify the work, including scripts to control those activities. However, it does not include the work's System Libraries, or general-purpose tools or generally available free programs which are used unmodified in performing those activities but which are not part of the work. For example, Corresponding Source includes interface definition files associated with source files for the work, and the source code for shared libraries and dynamically linked subprograms that the work is specifically designed to require, such as by intimate data communication or control flow between those subprograms and other parts of the work. + +The Corresponding Source need not include anything that users can regenerate automatically from other parts of the Corresponding Source. + +The Corresponding Source for a work in source code form is that same work. + +2. Basic Permissions. +All rights granted under this License are granted for the term of copyright on the Program, and are irrevocable provided the stated conditions are met. This License explicitly affirms your unlimited permission to run the unmodified Program. The output from running a covered work is covered by this License only if the output, given its content, constitutes a covered work. This License acknowledges your rights of fair use or other equivalent, as provided by copyright law. + +You may make, run and propagate covered works that you do not convey, without conditions so long as your license otherwise remains in force. You may convey covered works to others for the sole purpose of having them make modifications exclusively for you, or provide you with facilities for running those works, provided that you comply with the terms of this License in conveying all material for which you do not control copyright. Those thus making or running the covered works for you must do so exclusively on your behalf, under your direction and control, on terms that prohibit them from making any copies of your copyrighted material outside their relationship with you. + +Conveying under any other circumstances is permitted solely under the conditions stated below. Sublicensing is not allowed; section 10 makes it unnecessary. + +3. Protecting Users' Legal Rights From Anti-Circumvention Law. +No covered work shall be deemed part of an effective technological measure under any applicable law fulfilling obligations under article 11 of the WIPO copyright treaty adopted on 20 December 1996, or similar laws prohibiting or restricting circumvention of such measures. + +When you convey a covered work, you waive any legal power to forbid circumvention of technological measures to the extent such circumvention is effected by exercising rights under this License with respect to the covered work, and you disclaim any intention to limit operation or modification of the work as a means of enforcing, against the work's users, your or third parties' legal rights to forbid circumvention of technological measures. + +4. Conveying Verbatim Copies. +You may convey verbatim copies of the Program's source code as you receive it, in any medium, provided that you conspicuously and appropriately publish on each copy an appropriate copyright notice; keep intact all notices stating that this License and any non-permissive terms added in accord with section 7 apply to the code; keep intact all notices of the absence of any warranty; and give all recipients a copy of this License along with the Program. + +You may charge any price or no price for each copy that you convey, and you may offer support or warranty protection for a fee. + +5. Conveying Modified Source Versions. +You may convey a work based on the Program, or the modifications to produce it from the Program, in the form of source code under the terms of section 4, provided that you also meet all of these conditions: + + a) The work must carry prominent notices stating that you modified it, and giving a relevant date. + + b) The work must carry prominent notices stating that it is released under this License and any conditions added under section 7. This requirement modifies the requirement in section 4 to “keep intact all notices”. + + c) You must license the entire work, as a whole, under this License to anyone who comes into possession of a copy. This License will therefore apply, along with any applicable section 7 additional terms, to the whole of the work, and all its parts, regardless of how they are packaged. This License gives no permission to license the work in any other way, but it does not invalidate such permission if you have separately received it. + + d) If the work has interactive user interfaces, each must display Appropriate Legal Notices; however, if the Program has interactive interfaces that do not display Appropriate Legal Notices, your work need not make them do so. + +A compilation of a covered work with other separate and independent works, which are not by their nature extensions of the covered work, and which are not combined with it such as to form a larger program, in or on a volume of a storage or distribution medium, is called an “aggregate” if the compilation and its resulting copyright are not used to limit the access or legal rights of the compilation's users beyond what the individual works permit. Inclusion of a covered work in an aggregate does not cause this License to apply to the other parts of the aggregate. + +6. Conveying Non-Source Forms. +You may convey a covered work in object code form under the terms of sections 4 and 5, provided that you also convey the machine-readable Corresponding Source under the terms of this License, in one of these ways: + + a) Convey the object code in, or embodied in, a physical product (including a physical distribution medium), accompanied by the Corresponding Source fixed on a durable physical medium customarily used for software interchange. + + b) Convey the object code in, or embodied in, a physical product (including a physical distribution medium), accompanied by a written offer, valid for at least three years and valid for as long as you offer spare parts or customer support for that product model, to give anyone who possesses the object code either (1) a copy of the Corresponding Source for all the software in the product that is covered by this License, on a durable physical medium customarily used for software interchange, for a price no more than your reasonable cost of physically performing this conveying of source, or (2) access to copy the Corresponding Source from a network server at no charge. + + c) Convey individual copies of the object code with a copy of the written offer to provide the Corresponding Source. This alternative is allowed only occasionally and noncommercially, and only if you received the object code with such an offer, in accord with subsection 6b. + + d) Convey the object code by offering access from a designated place (gratis or for a charge), and offer equivalent access to the Corresponding Source in the same way through the same place at no further charge. You need not require recipients to copy the Corresponding Source along with the object code. If the place to copy the object code is a network server, the Corresponding Source may be on a different server (operated by you or a third party) that supports equivalent copying facilities, provided you maintain clear directions next to the object code saying where to find the Corresponding Source. Regardless of what server hosts the Corresponding Source, you remain obligated to ensure that it is available for as long as needed to satisfy these requirements. + + e) Convey the object code using peer-to-peer transmission, provided you inform other peers where the object code and Corresponding Source of the work are being offered to the general public at no charge under subsection 6d. + +A separable portion of the object code, whose source code is excluded from the Corresponding Source as a System Library, need not be included in conveying the object code work. + +A “User Product” is either (1) a “consumer product”, which means any tangible personal property which is normally used for personal, family, or household purposes, or (2) anything designed or sold for incorporation into a dwelling. In determining whether a product is a consumer product, doubtful cases shall be resolved in favor of coverage. For a particular product received by a particular user, “normally used” refers to a typical or common use of that class of product, regardless of the status of the particular user or of the way in which the particular user actually uses, or expects or is expected to use, the product. A product is a consumer product regardless of whether the product has substantial commercial, industrial or non-consumer uses, unless such uses represent the only significant mode of use of the product. + +“Installation Information” for a User Product means any methods, procedures, authorization keys, or other information required to install and execute modified versions of a covered work in that User Product from a modified version of its Corresponding Source. The information must suffice to ensure that the continued functioning of the modified object code is in no case prevented or interfered with solely because modification has been made. + +If you convey an object code work under this section in, or with, or specifically for use in, a User Product, and the conveying occurs as part of a transaction in which the right of possession and use of the User Product is transferred to the recipient in perpetuity or for a fixed term (regardless of how the transaction is characterized), the Corresponding Source conveyed under this section must be accompanied by the Installation Information. But this requirement does not apply if neither you nor any third party retains the ability to install modified object code on the User Product (for example, the work has been installed in ROM). + +The requirement to provide Installation Information does not include a requirement to continue to provide support service, warranty, or updates for a work that has been modified or installed by the recipient, or for the User Product in which it has been modified or installed. Access to a network may be denied when the modification itself materially and adversely affects the operation of the network or violates the rules and protocols for communication across the network. + +Corresponding Source conveyed, and Installation Information provided, in accord with this section must be in a format that is publicly documented (and with an implementation available to the public in source code form), and must require no special password or key for unpacking, reading or copying. + +7. Additional Terms. +“Additional permissions” are terms that supplement the terms of this License by making exceptions from one or more of its conditions. Additional permissions that are applicable to the entire Program shall be treated as though they were included in this License, to the extent that they are valid under applicable law. If additional permissions apply only to part of the Program, that part may be used separately under those permissions, but the entire Program remains governed by this License without regard to the additional permissions. + +When you convey a copy of a covered work, you may at your option remove any additional permissions from that copy, or from any part of it. (Additional permissions may be written to require their own removal in certain cases when you modify the work.) You may place additional permissions on material, added by you to a covered work, for which you have or can give appropriate copyright permission. + +Notwithstanding any other provision of this License, for material you add to a covered work, you may (if authorized by the copyright holders of that material) supplement the terms of this License with terms: + + a) Disclaiming warranty or limiting liability differently from the terms of sections 15 and 16 of this License; or + + b) Requiring preservation of specified reasonable legal notices or author attributions in that material or in the Appropriate Legal Notices displayed by works containing it; or + + c) Prohibiting misrepresentation of the origin of that material, or requiring that modified versions of such material be marked in reasonable ways as different from the original version; or + + d) Limiting the use for publicity purposes of names of licensors or authors of the material; or + + e) Declining to grant rights under trademark law for use of some trade names, trademarks, or service marks; or + + f) Requiring indemnification of licensors and authors of that material by anyone who conveys the material (or modified versions of it) with contractual assumptions of liability to the recipient, for any liability that these contractual assumptions directly impose on those licensors and authors. + +All other non-permissive additional terms are considered “further restrictions” within the meaning of section 10. If the Program as you received it, or any part of it, contains a notice stating that it is governed by this License along with a term that is a further restriction, you may remove that term. If a license document contains a further restriction but permits relicensing or conveying under this License, you may add to a covered work material governed by the terms of that license document, provided that the further restriction does not survive such relicensing or conveying. + +If you add terms to a covered work in accord with this section, you must place, in the relevant source files, a statement of the additional terms that apply to those files, or a notice indicating where to find the applicable terms. + +Additional terms, permissive or non-permissive, may be stated in the form of a separately written license, or stated as exceptions; the above requirements apply either way. + +8. Termination. +You may not propagate or modify a covered work except as expressly provided under this License. Any attempt otherwise to propagate or modify it is void, and will automatically terminate your rights under this License (including any patent licenses granted under the third paragraph of section 11). + +However, if you cease all violation of this License, then your license from a particular copyright holder is reinstated (a) provisionally, unless and until the copyright holder explicitly and finally terminates your license, and (b) permanently, if the copyright holder fails to notify you of the violation by some reasonable means prior to 60 days after the cessation. + +Moreover, your license from a particular copyright holder is reinstated permanently if the copyright holder notifies you of the violation by some reasonable means, this is the first time you have received notice of violation of this License (for any work) from that copyright holder, and you cure the violation prior to 30 days after your receipt of the notice. + +Termination of your rights under this section does not terminate the licenses of parties who have received copies or rights from you under this License. If your rights have been terminated and not permanently reinstated, you do not qualify to receive new licenses for the same material under section 10. + +9. Acceptance Not Required for Having Copies. +You are not required to accept this License in order to receive or run a copy of the Program. Ancillary propagation of a covered work occurring solely as a consequence of using peer-to-peer transmission to receive a copy likewise does not require acceptance. However, nothing other than this License grants you permission to propagate or modify any covered work. These actions infringe copyright if you do not accept this License. Therefore, by modifying or propagating a covered work, you indicate your acceptance of this License to do so. + +10. Automatic Licensing of Downstream Recipients. +Each time you convey a covered work, the recipient automatically receives a license from the original licensors, to run, modify and propagate that work, subject to this License. You are not responsible for enforcing compliance by third parties with this License. + +An “entity transaction” is a transaction transferring control of an organization, or substantially all assets of one, or subdividing an organization, or merging organizations. If propagation of a covered work results from an entity transaction, each party to that transaction who receives a copy of the work also receives whatever licenses to the work the party's predecessor in interest had or could give under the previous paragraph, plus a right to possession of the Corresponding Source of the work from the predecessor in interest, if the predecessor has it or can get it with reasonable efforts. + +You may not impose any further restrictions on the exercise of the rights granted or affirmed under this License. For example, you may not impose a license fee, royalty, or other charge for exercise of rights granted under this License, and you may not initiate litigation (including a cross-claim or counterclaim in a lawsuit) alleging that any patent claim is infringed by making, using, selling, offering for sale, or importing the Program or any portion of it. + +11. Patents. +A “contributor” is a copyright holder who authorizes use under this License of the Program or a work on which the Program is based. The work thus licensed is called the contributor's “contributor version”. + +A contributor's “essential patent claims” are all patent claims owned or controlled by the contributor, whether already acquired or hereafter acquired, that would be infringed by some manner, permitted by this License, of making, using, or selling its contributor version, but do not include claims that would be infringed only as a consequence of further modification of the contributor version. For purposes of this definition, “control” includes the right to grant patent sublicenses in a manner consistent with the requirements of this License. + +Each contributor grants you a non-exclusive, worldwide, royalty-free patent license under the contributor's essential patent claims, to make, use, sell, offer for sale, import and otherwise run, modify and propagate the contents of its contributor version. + +In the following three paragraphs, a “patent license” is any express agreement or commitment, however denominated, not to enforce a patent (such as an express permission to practice a patent or covenant not to sue for patent infringement). To “grant” such a patent license to a party means to make such an agreement or commitment not to enforce a patent against the party. + +If you convey a covered work, knowingly relying on a patent license, and the Corresponding Source of the work is not available for anyone to copy, free of charge and under the terms of this License, through a publicly available network server or other readily accessible means, then you must either (1) cause the Corresponding Source to be so available, or (2) arrange to deprive yourself of the benefit of the patent license for this particular work, or (3) arrange, in a manner consistent with the requirements of this License, to extend the patent license to downstream recipients. “Knowingly relying” means you have actual knowledge that, but for the patent license, your conveying the covered work in a country, or your recipient's use of the covered work in a country, would infringe one or more identifiable patents in that country that you have reason to believe are valid. + +If, pursuant to or in connection with a single transaction or arrangement, you convey, or propagate by procuring conveyance of, a covered work, and grant a patent license to some of the parties receiving the covered work authorizing them to use, propagate, modify or convey a specific copy of the covered work, then the patent license you grant is automatically extended to all recipients of the covered work and works based on it. + +A patent license is “discriminatory” if it does not include within the scope of its coverage, prohibits the exercise of, or is conditioned on the non-exercise of one or more of the rights that are specifically granted under this License. You may not convey a covered work if you are a party to an arrangement with a third party that is in the business of distributing software, under which you make payment to the third party based on the extent of your activity of conveying the work, and under which the third party grants, to any of the parties who would receive the covered work from you, a discriminatory patent license (a) in connection with copies of the covered work conveyed by you (or copies made from those copies), or (b) primarily for and in connection with specific products or compilations that contain the covered work, unless you entered into that arrangement, or that patent license was granted, prior to 28 March 2007. + +Nothing in this License shall be construed as excluding or limiting any implied license or other defenses to infringement that may otherwise be available to you under applicable patent law. + +12. No Surrender of Others' Freedom. +If conditions are imposed on you (whether by court order, agreement or otherwise) that contradict the conditions of this License, they do not excuse you from the conditions of this License. If you cannot convey a covered work so as to satisfy simultaneously your obligations under this License and any other pertinent obligations, then as a consequence you may not convey it at all. For example, if you agree to terms that obligate you to collect a royalty for further conveying from those to whom you convey the Program, the only way you could satisfy both those terms and this License would be to refrain entirely from conveying the Program. + +13. Use with the GNU Affero General Public License. +Notwithstanding any other provision of this License, you have permission to link or combine any covered work with a work licensed under version 3 of the GNU Affero General Public License into a single combined work, and to convey the resulting work. The terms of this License will continue to apply to the part which is the covered work, but the special requirements of the GNU Affero General Public License, section 13, concerning interaction through a network will apply to the combination as such. + +14. Revised Versions of this License. +The Free Software Foundation may publish revised and/or new versions of the GNU General Public License from time to time. Such new versions will be similar in spirit to the present version, but may differ in detail to address new problems or concerns. + +Each version is given a distinguishing version number. If the Program specifies that a certain numbered version of the GNU General Public License “or any later version” applies to it, you have the option of following the terms and conditions either of that numbered version or of any later version published by the Free Software Foundation. If the Program does not specify a version number of the GNU General Public License, you may choose any version ever published by the Free Software Foundation. + +If the Program specifies that a proxy can decide which future versions of the GNU General Public License can be used, that proxy's public statement of acceptance of a version permanently authorizes you to choose that version for the Program. + +Later license versions may give you additional or different permissions. However, no additional obligations are imposed on any author or copyright holder as a result of your choosing to follow a later version. + +15. Disclaimer of Warranty. +THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM “AS IS” WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION. + +16. Limitation of Liability. +IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MODIFIES AND/OR CONVEYS THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. + +17. Interpretation of Sections 15 and 16. +If the disclaimer of warranty and limitation of liability provided above cannot be given local legal effect according to their terms, reviewing courts shall apply local law that most closely approximates an absolute waiver of all civil liability in connection with the Program, unless a warranty or assumption of liability accompanies a copy of the Program in return for a fee. + +END OF TERMS AND CONDITIONS + +How to Apply These Terms to Your New Programs + +If you develop a new program, and you want it to be of the greatest possible use to the public, the best way to achieve this is to make it free software which everyone can redistribute and change under these terms. + +To do so, attach the following notices to the program. It is safest to attach them to the start of each source file to most effectively state the exclusion of warranty; and each file should have at least the “copyright” line and a pointer to where the full notice is found. + + + Copyright (C) + + This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version. + + This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along with this program. If not, see . + +Also add information on how to contact you by electronic and paper mail. + +If the program does terminal interaction, make it output a short notice like this when it starts in an interactive mode: + + Copyright (C) + This program comes with ABSOLUTELY NO WARRANTY; for details type `show w'. + This is free software, and you are welcome to redistribute it under certain conditions; type `show c' for details. + +The hypothetical commands `show w' and `show c' should show the appropriate parts of the General Public License. Of course, your program's commands might be different; for a GUI interface, you would use an “about box”. + +You should also get your employer (if you work as a programmer) or school, if any, to sign a “copyright disclaimer” for the program, if necessary. For more information on this, and how to apply and follow the GNU GPL, see . + +The GNU General Public License does not permit incorporating your program into proprietary programs. If your program is a subroutine library, you may consider it more useful to permit linking proprietary applications with the library. If this is what you want to do, use the GNU Lesser General Public License instead of this License. But first, please read . diff --git a/LICENSES/MIT.txt b/LICENSES/MIT.txt new file mode 100644 index 00000000..2071b23b --- /dev/null +++ b/LICENSES/MIT.txt @@ -0,0 +1,9 @@ +MIT License + +Copyright (c) + +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/Makefile b/Makefile new file mode 100644 index 00000000..a1b4e732 --- /dev/null +++ b/Makefile @@ -0,0 +1,285 @@ +.PHONY: pretty clean ChangeLog.md release + +########################################################################## +# configuration +########################################################################## + +# find GNU sed to use `-i` parameter +SED:=$(shell command -v gsed || which sed) + + +########################################################################## +# source files +########################################################################## + +# the list of sources in the include folder +SRCS=$(shell find include -type f | sort) + +# the list of sources in the tests folder +TESTS_SRCS=$(shell find tests -type f \( -name '*.hpp' -o -name '*.cpp' -o -name '*.cu' \) -not -path 'tests/thirdparty/*' -not -path 'tests/abi/include/nlohmann/*' | sort) + +# the single headers (amalgamated from the source files) +AMALGAMATED_FILE=single_include/nlohmann/json.hpp +AMALGAMATED_FWD_FILE=single_include/nlohmann/json_fwd.hpp + + +########################################################################## +# documentation of the Makefile's targets +########################################################################## + +# main target +all: + @echo "amalgamate - amalgamate files single_include/nlohmann/json{,_fwd}.hpp from the include/nlohmann sources" + @echo "ChangeLog.md - generate ChangeLog file" + @echo "check-amalgamation - check whether sources have been amalgamated" + @echo "clean - remove built files" + @echo "doctest - compile example files and check their output" + @echo "fuzz_testing - prepare fuzz testing of the JSON parser" + @echo "fuzz_testing_bson - prepare fuzz testing of the BSON parser" + @echo "fuzz_testing_cbor - prepare fuzz testing of the CBOR parser" + @echo "fuzz_testing_msgpack - prepare fuzz testing of the MessagePack parser" + @echo "fuzz_testing_ubjson - prepare fuzz testing of the UBJSON parser" + @echo "pretty - beautify code with Artistic Style" + @echo "run_benchmarks - build and run benchmarks" + + +########################################################################## +# documentation tests +########################################################################## + +# compile example files and check output +doctest: + $(MAKE) check_output -C docs + + +########################################################################## +# benchmarks +########################################################################## + +run_benchmarks: + rm -fr cmake-build-benchmarks + mkdir cmake-build-benchmarks + cd cmake-build-benchmarks ; cmake ../tests/benchmarks -GNinja -DCMAKE_BUILD_TYPE=Release + cd cmake-build-benchmarks ; ninja + cd cmake-build-benchmarks ; ./json_benchmarks + + +########################################################################## +# fuzzing +########################################################################## + +# the overall fuzz testing target +fuzz_testing: + rm -fr fuzz-testing + mkdir -p fuzz-testing fuzz-testing/testcases fuzz-testing/out + $(MAKE) parse_afl_fuzzer -C tests CXX=afl-clang++ + mv tests/parse_afl_fuzzer fuzz-testing/fuzzer + find tests/data/json_tests -size -5k -name *json | xargs -I{} cp "{}" fuzz-testing/testcases + @echo "Execute: afl-fuzz -i fuzz-testing/testcases -o fuzz-testing/out fuzz-testing/fuzzer" + +fuzz_testing_bson: + rm -fr fuzz-testing + mkdir -p fuzz-testing fuzz-testing/testcases fuzz-testing/out + $(MAKE) parse_bson_fuzzer -C tests CXX=afl-clang++ + mv tests/parse_bson_fuzzer fuzz-testing/fuzzer + find tests/data -size -5k -name *.bson | xargs -I{} cp "{}" fuzz-testing/testcases + @echo "Execute: afl-fuzz -i fuzz-testing/testcases -o fuzz-testing/out fuzz-testing/fuzzer" + +fuzz_testing_cbor: + rm -fr fuzz-testing + mkdir -p fuzz-testing fuzz-testing/testcases fuzz-testing/out + $(MAKE) parse_cbor_fuzzer -C tests CXX=afl-clang++ + mv tests/parse_cbor_fuzzer fuzz-testing/fuzzer + find tests/data -size -5k -name *.cbor | xargs -I{} cp "{}" fuzz-testing/testcases + @echo "Execute: afl-fuzz -i fuzz-testing/testcases -o fuzz-testing/out fuzz-testing/fuzzer" + +fuzz_testing_msgpack: + rm -fr fuzz-testing + mkdir -p fuzz-testing fuzz-testing/testcases fuzz-testing/out + $(MAKE) parse_msgpack_fuzzer -C tests CXX=afl-clang++ + mv tests/parse_msgpack_fuzzer fuzz-testing/fuzzer + find tests/data -size -5k -name *.msgpack | xargs -I{} cp "{}" fuzz-testing/testcases + @echo "Execute: afl-fuzz -i fuzz-testing/testcases -o fuzz-testing/out fuzz-testing/fuzzer" + +fuzz_testing_ubjson: + rm -fr fuzz-testing + mkdir -p fuzz-testing fuzz-testing/testcases fuzz-testing/out + $(MAKE) parse_ubjson_fuzzer -C tests CXX=afl-clang++ + mv tests/parse_ubjson_fuzzer fuzz-testing/fuzzer + find tests/data -size -5k -name *.ubjson | xargs -I{} cp "{}" fuzz-testing/testcases + @echo "Execute: afl-fuzz -i fuzz-testing/testcases -o fuzz-testing/out fuzz-testing/fuzzer" + +fuzzing-start: + afl-fuzz -S fuzzer1 -i fuzz-testing/testcases -o fuzz-testing/out fuzz-testing/fuzzer > /dev/null & + afl-fuzz -S fuzzer2 -i fuzz-testing/testcases -o fuzz-testing/out fuzz-testing/fuzzer > /dev/null & + afl-fuzz -S fuzzer3 -i fuzz-testing/testcases -o fuzz-testing/out fuzz-testing/fuzzer > /dev/null & + afl-fuzz -S fuzzer4 -i fuzz-testing/testcases -o fuzz-testing/out fuzz-testing/fuzzer > /dev/null & + afl-fuzz -S fuzzer5 -i fuzz-testing/testcases -o fuzz-testing/out fuzz-testing/fuzzer > /dev/null & + afl-fuzz -S fuzzer6 -i fuzz-testing/testcases -o fuzz-testing/out fuzz-testing/fuzzer > /dev/null & + afl-fuzz -S fuzzer7 -i fuzz-testing/testcases -o fuzz-testing/out fuzz-testing/fuzzer > /dev/null & + afl-fuzz -M fuzzer0 -i fuzz-testing/testcases -o fuzz-testing/out fuzz-testing/fuzzer + +fuzzing-stop: + -killall fuzzer + -killall afl-fuzz + + +########################################################################## +# Static analysis +########################################################################## + +# call PVS-Studio Analyzer +pvs_studio: + rm -fr cmake-build-pvs-studio + mkdir cmake-build-pvs-studio + cd cmake-build-pvs-studio ; cmake .. -DCMAKE_EXPORT_COMPILE_COMMANDS=On -DJSON_MultipleHeaders=ON + cd cmake-build-pvs-studio ; pvs-studio-analyzer analyze -j 10 + cd cmake-build-pvs-studio ; plog-converter -a'GA:1,2;64:1;CS' -t fullhtml PVS-Studio.log -o pvs + open cmake-build-pvs-studio/pvs/index.html + + +########################################################################## +# Code format and source amalgamation +########################################################################## + +# call the Artistic Style pretty printer on all source files +pretty: + astyle \ + --style=allman \ + --indent=spaces=4 \ + --indent-modifiers \ + --indent-switches \ + --indent-preproc-block \ + --indent-preproc-define \ + --indent-col1-comments \ + --pad-oper \ + --pad-header \ + --align-pointer=type \ + --align-reference=type \ + --add-braces \ + --squeeze-lines=2 \ + --convert-tabs \ + --close-templates \ + --lineend=linux \ + --preserve-date \ + --suffix=none \ + --formatted \ + $(SRCS) $(TESTS_SRCS) $(AMALGAMATED_FILE) $(AMALGAMATED_FWD_FILE) docs/examples/*.cpp + +# call the Clang-Format on all source files +pretty_format: + for FILE in $(SRCS) $(TESTS_SRCS) $(AMALGAMATED_FILE) docs/examples/*.cpp; do echo $$FILE; clang-format -i $$FILE; done + +# create single header files and pretty print +amalgamate: $(AMALGAMATED_FILE) $(AMALGAMATED_FWD_FILE) + $(MAKE) pretty + +# call the amalgamation tool for json.hpp +$(AMALGAMATED_FILE): $(SRCS) + tools/amalgamate/amalgamate.py -c tools/amalgamate/config_json.json -s . --verbose=yes + +# call the amalgamation tool for json_fwd.hpp +$(AMALGAMATED_FWD_FILE): $(SRCS) + tools/amalgamate/amalgamate.py -c tools/amalgamate/config_json_fwd.json -s . --verbose=yes + +# check if file single_include/nlohmann/json.hpp has been amalgamated from the nlohmann sources +# Note: this target is called by Travis +check-amalgamation: + @mv $(AMALGAMATED_FILE) $(AMALGAMATED_FILE)~ + @mv $(AMALGAMATED_FWD_FILE) $(AMALGAMATED_FWD_FILE)~ + @$(MAKE) amalgamate + @diff $(AMALGAMATED_FILE) $(AMALGAMATED_FILE)~ || (echo "===================================================================\n Amalgamation required! Please read the contribution guidelines\n in file .github/CONTRIBUTING.md.\n===================================================================" ; mv $(AMALGAMATED_FILE)~ $(AMALGAMATED_FILE) ; false) + @diff $(AMALGAMATED_FWD_FILE) $(AMALGAMATED_FWD_FILE)~ || (echo "===================================================================\n Amalgamation required! Please read the contribution guidelines\n in file .github/CONTRIBUTING.md.\n===================================================================" ; mv $(AMALGAMATED_FWD_FILE)~ $(AMALGAMATED_FWD_FILE) ; false) + @mv $(AMALGAMATED_FILE)~ $(AMALGAMATED_FILE) + @mv $(AMALGAMATED_FWD_FILE)~ $(AMALGAMATED_FWD_FILE) + +BUILD.bazel: $(SRCS) + cmake -P cmake/scripts/gen_bazel_build_file.cmake + +########################################################################## +# ChangeLog +########################################################################## + +# Create a ChangeLog based on the git log using the GitHub Changelog Generator +# (). + +# variable to control the diffs between the last released version and the current repository state +NEXT_VERSION ?= "unreleased" + +ChangeLog.md: + github_changelog_generator -o ChangeLog.md --user nlohmann --project json --simple-list --release-url https://github.com/nlohmann/json/releases/tag/%s --future-release $(NEXT_VERSION) + $(SED) -i 's|https://github.com/nlohmann/json/releases/tag/HEAD|https://github.com/nlohmann/json/tree/HEAD|' ChangeLog.md + $(SED) -i '2i All notable changes to this project will be documented in this file. This project adheres to [Semantic Versioning](http://semver.org/).' ChangeLog.md + + +########################################################################## +# Release files +########################################################################## + +# Create a tar.gz archive that contains sufficient files to be used as CMake project (e.g., using FetchContent). The +# archive is created according to the advices of . +json.tar.xz: + mkdir json + rsync -R $(shell find LICENSE.MIT nlohmann_json.natvis CMakeLists.txt cmake/*.in include single_include -type f) json + gtar --sort=name --mtime="@$(shell git log -1 --pretty=%ct)" --owner=0 --group=0 --numeric-owner --pax-option=exthdr.name=%d/PaxHeaders/%f,delete=atime,delete=ctime --create --file - json | xz --compress -9e --threads=2 - > json.tar.xz + rm -fr json + +# We use `-X` to make the resulting ZIP file reproducible, see +# . +include.zip: BUILD.bazel + zip -9 --recurse-paths -X include.zip $(SRCS) $(AMALGAMATED_FILE) $(AMALGAMATED_FWD_FILE) BUILD.bazel WORKSPACE.bazel meson.build LICENSE.MIT + +# Create the files for a release and add signatures and hashes. +release: include.zip json.tar.xz + rm -fr release_files + mkdir release_files + gpg --armor --detach-sig include.zip + gpg --armor --detach-sig $(AMALGAMATED_FILE) + gpg --armor --detach-sig $(AMALGAMATED_FWD_FILE) + gpg --armor --detach-sig json.tar.xz + cp $(AMALGAMATED_FILE) release_files + cp $(AMALGAMATED_FWD_FILE) release_files + mv $(AMALGAMATED_FILE).asc $(AMALGAMATED_FWD_FILE).asc json.tar.xz json.tar.xz.asc include.zip include.zip.asc release_files + cd release_files ; shasum -a 256 json.hpp include.zip json.tar.xz > hashes.txt + + +########################################################################## +# Maintenance +########################################################################## + +# clean up +clean: + rm -fr fuzz fuzz-testing *.dSYM tests/*.dSYM + rm -fr benchmarks/files/numbers/*.json + rm -fr cmake-build-benchmarks fuzz-testing cmake-build-pvs-studio release_files + $(MAKE) clean -Cdocs + + +########################################################################## +# Thirdparty code +########################################################################## + +update_hedley: + rm -f include/nlohmann/thirdparty/hedley/hedley.hpp include/nlohmann/thirdparty/hedley/hedley_undef.hpp + curl https://raw.githubusercontent.com/nemequ/hedley/master/hedley.h -o include/nlohmann/thirdparty/hedley/hedley.hpp + $(SED) -i 's/HEDLEY_/JSON_HEDLEY_/g' include/nlohmann/thirdparty/hedley/hedley.hpp + grep "[[:blank:]]*#[[:blank:]]*undef" include/nlohmann/thirdparty/hedley/hedley.hpp | grep -v "__" | sort | uniq | $(SED) 's/ //g' | $(SED) 's/undef/undef /g' > include/nlohmann/thirdparty/hedley/hedley_undef.hpp + $(SED) -i '1s/^/#pragma once\n\n/' include/nlohmann/thirdparty/hedley/hedley.hpp + $(SED) -i '1s/^/#pragma once\n\n/' include/nlohmann/thirdparty/hedley/hedley_undef.hpp + $(MAKE) amalgamate + +########################################################################## +# serve_header.py +########################################################################## + +serve_header: + ./tools/serve_header/serve_header.py --make $(MAKE) + +########################################################################## +# REUSE +########################################################################## + +reuse: + pipx run reuse addheader --recursive single_include include -tjson --license MIT --copyright "Niels Lohmann " --year "2013-2022" + pipx run reuse addheader $(TESTS_SRCS) --style=c -tjson_support --license MIT --copyright "Niels Lohmann " --year "2013-2022" + pipx run reuse lint diff --git a/Package.swift b/Package.swift new file mode 100644 index 00000000..2f9c4a1f --- /dev/null +++ b/Package.swift @@ -0,0 +1,22 @@ +// swift-tools-version: 5.9 +// The swift-tools-version declares the minimum version of Swift required to build this package. + +import PackageDescription + +let package = Package( + name: "nlohmann-json", + platforms: [ + .iOS(.v12), .macOS(.v10_13), .tvOS(.v12), .watchOS(.v4) + ], + products: [ + .library(name: "json", targets: ["json"]) + ], + targets: [ + .target( + name: "json", + path: "single_include/nlohmann", + publicHeadersPath: "." + ) + ], + cxxLanguageStandard: .cxx11 +) diff --git a/README.md b/README.md new file mode 100644 index 00000000..91090270 --- /dev/null +++ b/README.md @@ -0,0 +1,1891 @@ +[![JSON for Modern C++](docs/json.gif)](https://github.com/nlohmann/json/releases) + +[![Build Status](https://ci.appveyor.com/api/projects/status/1acb366xfyg3qybk/branch/develop?svg=true)](https://ci.appveyor.com/project/nlohmann/json) +[![Ubuntu](https://github.com/nlohmann/json/workflows/Ubuntu/badge.svg)](https://github.com/nlohmann/json/actions?query=workflow%3AUbuntu) +[![macOS](https://github.com/nlohmann/json/workflows/macOS/badge.svg)](https://github.com/nlohmann/json/actions?query=workflow%3AmacOS) +[![Windows](https://github.com/nlohmann/json/workflows/Windows/badge.svg)](https://github.com/nlohmann/json/actions?query=workflow%3AWindows) +[![Coverage Status](https://coveralls.io/repos/github/nlohmann/json/badge.svg?branch=develop)](https://coveralls.io/github/nlohmann/json?branch=develop) +[![Coverity Scan Build Status](https://scan.coverity.com/projects/5550/badge.svg)](https://scan.coverity.com/projects/nlohmann-json) +[![Codacy Badge](https://app.codacy.com/project/badge/Grade/e0d1a9d5d6fd46fcb655c4cb930bb3e8)](https://www.codacy.com/gh/nlohmann/json/dashboard?utm_source=github.com&utm_medium=referral&utm_content=nlohmann/json&utm_campaign=Badge_Grade) +[![Cirrus CI](https://api.cirrus-ci.com/github/nlohmann/json.svg)](https://cirrus-ci.com/github/nlohmann/json) +[![Fuzzing Status](https://oss-fuzz-build-logs.storage.googleapis.com/badges/json.svg)](https://bugs.chromium.org/p/oss-fuzz/issues/list?sort=-opened&can=1&q=proj:json) +[![Try online](https://img.shields.io/badge/try-online-blue.svg)](https://wandbox.org/permlink/1mp10JbaANo6FUc7) +[![Documentation](https://img.shields.io/badge/docs-mkdocs-blue.svg)](https://json.nlohmann.me) +[![GitHub license](https://img.shields.io/badge/license-MIT-blue.svg)](https://raw.githubusercontent.com/nlohmann/json/master/LICENSE.MIT) +[![GitHub Releases](https://img.shields.io/github/release/nlohmann/json.svg)](https://github.com/nlohmann/json/releases) +[![Vcpkg Version](https://img.shields.io/vcpkg/v/nlohmann-json)](https://vcpkg.link/ports/nlohmann-json) +[![Packaging status](https://repology.org/badge/tiny-repos/nlohmann-json.svg)](https://repology.org/project/nlohmann-json/versions) +[![GitHub Downloads](https://img.shields.io/github/downloads/nlohmann/json/total)](https://github.com/nlohmann/json/releases) +[![GitHub Issues](https://img.shields.io/github/issues/nlohmann/json.svg)](https://github.com/nlohmann/json/issues) +[![Average time to resolve an issue](https://isitmaintained.com/badge/resolution/nlohmann/json.svg)](https://isitmaintained.com/project/nlohmann/json "Average time to resolve an issue") +[![CII Best Practices](https://bestpractices.coreinfrastructure.org/projects/289/badge)](https://bestpractices.coreinfrastructure.org/projects/289) +[![GitHub Sponsors](https://img.shields.io/badge/GitHub-Sponsors-ff69b4)](https://github.com/sponsors/nlohmann) +[![REUSE status](https://api.reuse.software/badge/github.com/nlohmann/json)](https://api.reuse.software/info/github.com/nlohmann/json) +[![Discord](https://img.shields.io/discord/1003743314341793913)](https://discord.gg/6mrGXKvX7y) + +- [Design goals](#design-goals) +- [Sponsors](#sponsors) +- [Support](#support) ([documentation](https://json.nlohmann.me), [FAQ](https://json.nlohmann.me/home/faq/), [discussions](https://github.com/nlohmann/json/discussions), [API](https://json.nlohmann.me/api/basic_json/), [bug issues](https://github.com/nlohmann/json/issues)) +- [Examples](#examples) + - [Read JSON from a file](#read-json-from-a-file) + - [Creating `json` objects from JSON literals](#creating-json-objects-from-json-literals) + - [JSON as first-class data type](#json-as-first-class-data-type) + - [Serialization / Deserialization](#serialization--deserialization) + - [STL-like access](#stl-like-access) + - [Conversion from STL containers](#conversion-from-stl-containers) + - [JSON Pointer and JSON Patch](#json-pointer-and-json-patch) + - [JSON Merge Patch](#json-merge-patch) + - [Implicit conversions](#implicit-conversions) + - [Conversions to/from arbitrary types](#arbitrary-types-conversions) + - [Specializing enum conversion](#specializing-enum-conversion) + - [Binary formats (BSON, CBOR, MessagePack, UBJSON, and BJData)](#binary-formats-bson-cbor-messagepack-ubjson-and-bjdata) +- [Supported compilers](#supported-compilers) +- [Integration](#integration) + - [CMake](#cmake) + - [Package Managers](#package-managers) + - [Pkg-config](#pkg-config) +- [License](#license) +- [Contact](#contact) +- [Thanks](#thanks) +- [Used third-party tools](#used-third-party-tools) +- [Projects using JSON for Modern C++](#projects-using-json-for-modern-c) +- [Notes](#notes) +- [Execute unit tests](#execute-unit-tests) + +## Design goals + +There are myriads of [JSON](https://json.org) libraries out there, and each may even have its reason to exist. Our class had these design goals: + +- **Intuitive syntax**. In languages such as Python, JSON feels like a first class data type. We used all the operator magic of modern C++ to achieve the same feeling in your code. Check out the [examples below](#examples) and you'll know what I mean. + +- **Trivial integration**. Our whole code consists of a single header file [`json.hpp`](https://github.com/nlohmann/json/blob/develop/single_include/nlohmann/json.hpp). That's it. No library, no subproject, no dependencies, no complex build system. The class is written in vanilla C++11. All in all, everything should require no adjustment of your compiler flags or project settings. + +- **Serious testing**. Our code is heavily [unit-tested](https://github.com/nlohmann/json/tree/develop/tests/src) and covers [100%](https://coveralls.io/r/nlohmann/json) of the code, including all exceptional behavior. Furthermore, we checked with [Valgrind](https://valgrind.org) and the [Clang Sanitizers](https://clang.llvm.org/docs/index.html) that there are no memory leaks. [Google OSS-Fuzz](https://github.com/google/oss-fuzz/tree/master/projects/json) additionally runs fuzz tests against all parsers 24/7, effectively executing billions of tests so far. To maintain high quality, the project is following the [Core Infrastructure Initiative (CII) best practices](https://bestpractices.coreinfrastructure.org/projects/289). + +Other aspects were not so important to us: + +- **Memory efficiency**. Each JSON object has an overhead of one pointer (the maximal size of a union) and one enumeration element (1 byte). The default generalization uses the following C++ data types: `std::string` for strings, `int64_t`, `uint64_t` or `double` for numbers, `std::map` for objects, `std::vector` for arrays, and `bool` for Booleans. However, you can template the generalized class `basic_json` to your needs. + +- **Speed**. There are certainly [faster JSON libraries](https://github.com/miloyip/nativejson-benchmark#parsing-time) out there. However, if your goal is to speed up your development by adding JSON support with a single header, then this library is the way to go. If you know how to use a `std::vector` or `std::map`, you are already set. + +See the [contribution guidelines](https://github.com/nlohmann/json/blob/master/.github/CONTRIBUTING.md#please-dont) for more information. + + +## Sponsors + +You can sponsor this library at [GitHub Sponsors](https://github.com/sponsors/nlohmann). + +### :office: Corporate Sponsor + +[![](https://upload.wikimedia.org/wikipedia/commons/thumb/9/9e/Codacy-logo-black.svg/320px-Codacy-logo-black.svg.png)](https://github.com/codacy/About) + +### :label: Named Sponsors + +- [Michael Hartmann](https://github.com/reFX-Mike) +- [Stefan Hagen](https://github.com/sthagen) +- [Steve Sperandeo](https://github.com/homer6) +- [Robert Jefe Lindstädt](https://github.com/eljefedelrodeodeljefe) +- [Steve Wagner](https://github.com/ciroque) +- [Lion Yang](https://github.com/LionNatsu) + +Thanks everyone! + +## Support + +:question: If you have a **question**, please check if it is already answered in the [**FAQ**](https://json.nlohmann.me/home/faq/) or the [**Q&A**](https://github.com/nlohmann/json/discussions/categories/q-a) section. If not, please [**ask a new question**](https://github.com/nlohmann/json/discussions/new) there. + +:books: If you want to **learn more** about how to use the library, check out the rest of the [**README**](#examples), have a look at [**code examples**](https://github.com/nlohmann/json/tree/develop/docs/examples), or browse through the [**help pages**](https://json.nlohmann.me). + +:construction: If you want to understand the **API** better, check out the [**API Reference**](https://json.nlohmann.me/api/basic_json/). + +:bug: If you found a **bug**, please check the [**FAQ**](https://json.nlohmann.me/home/faq/) if it is a known issue or the result of a design decision. Please also have a look at the [**issue list**](https://github.com/nlohmann/json/issues) before you [**create a new issue**](https://github.com/nlohmann/json/issues/new/choose). Please provide as much information as possible to help us understand and reproduce your issue. + +There is also a [**docset**](https://github.com/Kapeli/Dash-User-Contributions/tree/master/docsets/JSON_for_Modern_C%2B%2B) for the documentation browsers [Dash](https://kapeli.com/dash), [Velocity](https://velocity.silverlakesoftware.com), and [Zeal](https://zealdocs.org) that contains the full [documentation](https://json.nlohmann.me) as offline resource. + +## Examples + +Here are some examples to give you an idea how to use the class. + +Beside the examples below, you may want to: + +→ Check the [documentation](https://json.nlohmann.me/)\ +→ Browse the [standalone example files](https://github.com/nlohmann/json/tree/develop/docs/examples) + +Every API function (documented in the [API Documentation](https://json.nlohmann.me/api/basic_json/)) has a corresponding standalone example file. For example, the [`emplace()`](https://json.nlohmann.me/api/basic_json/emplace/) function has a matching [emplace.cpp](https://github.com/nlohmann/json/blob/develop/docs/examples/emplace.cpp) example file. + +### Read JSON from a file + +The `json` class provides an API for manipulating a JSON value. To create a `json` object by reading a JSON file: + +```cpp +#include +#include +using json = nlohmann::json; + +// ... + +std::ifstream f("example.json"); +json data = json::parse(f); +``` + +### Creating `json` objects from JSON literals + +Assume you want to create hard-code this literal JSON value in a file, as a `json` object: + +```json +{ + "pi": 3.141, + "happy": true +} +``` + +There are various options: + +```cpp +// Using (raw) string literals and json::parse +json ex1 = json::parse(R"( + { + "pi": 3.141, + "happy": true + } +)"); + +// Using user-defined (raw) string literals +using namespace nlohmann::literals; +json ex2 = R"( + { + "pi": 3.141, + "happy": true + } +)"_json; + +// Using initializer lists +json ex3 = { + {"happy", true}, + {"pi", 3.141}, +}; +``` + +### JSON as first-class data type + +Here are some examples to give you an idea how to use the class. + +Assume you want to create the JSON object + +```json +{ + "pi": 3.141, + "happy": true, + "name": "Niels", + "nothing": null, + "answer": { + "everything": 42 + }, + "list": [1, 0, 2], + "object": { + "currency": "USD", + "value": 42.99 + } +} +``` + +With this library, you could write: + +```cpp +// create an empty structure (null) +json j; + +// add a number that is stored as double (note the implicit conversion of j to an object) +j["pi"] = 3.141; + +// add a Boolean that is stored as bool +j["happy"] = true; + +// add a string that is stored as std::string +j["name"] = "Niels"; + +// add another null object by passing nullptr +j["nothing"] = nullptr; + +// add an object inside the object +j["answer"]["everything"] = 42; + +// add an array that is stored as std::vector (using an initializer list) +j["list"] = { 1, 0, 2 }; + +// add another object (using an initializer list of pairs) +j["object"] = { {"currency", "USD"}, {"value", 42.99} }; + +// instead, you could also write (which looks very similar to the JSON above) +json j2 = { + {"pi", 3.141}, + {"happy", true}, + {"name", "Niels"}, + {"nothing", nullptr}, + {"answer", { + {"everything", 42} + }}, + {"list", {1, 0, 2}}, + {"object", { + {"currency", "USD"}, + {"value", 42.99} + }} +}; +``` + +Note that in all these cases, you never need to "tell" the compiler which JSON value type you want to use. If you want to be explicit or express some edge cases, the functions [`json::array()`](https://json.nlohmann.me/api/basic_json/array/) and [`json::object()`](https://json.nlohmann.me/api/basic_json/object/) will help: + +```cpp +// a way to express the empty array [] +json empty_array_explicit = json::array(); + +// ways to express the empty object {} +json empty_object_implicit = json({}); +json empty_object_explicit = json::object(); + +// a way to express an _array_ of key/value pairs [["currency", "USD"], ["value", 42.99]] +json array_not_object = json::array({ {"currency", "USD"}, {"value", 42.99} }); +``` + +### Serialization / Deserialization + +#### To/from strings + +You can create a JSON value (deserialization) by appending `_json` to a string literal: + +```cpp +// create object from string literal +json j = "{ \"happy\": true, \"pi\": 3.141 }"_json; + +// or even nicer with a raw string literal +auto j2 = R"( + { + "happy": true, + "pi": 3.141 + } +)"_json; +``` + +Note that without appending the `_json` suffix, the passed string literal is not parsed, but just used as JSON string +value. That is, `json j = "{ \"happy\": true, \"pi\": 3.141 }"` would just store the string +`"{ "happy": true, "pi": 3.141 }"` rather than parsing the actual object. + +The string literal should be brought into scope with `using namespace nlohmann::literals;` +(see [`json::parse()`](https://json.nlohmann.me/api/operator_literal_json/)). + +The above example can also be expressed explicitly using [`json::parse()`](https://json.nlohmann.me/api/basic_json/parse/): + +```cpp +// parse explicitly +auto j3 = json::parse(R"({"happy": true, "pi": 3.141})"); +``` + +You can also get a string representation of a JSON value (serialize): + +```cpp +// explicit conversion to string +std::string s = j.dump(); // {"happy":true,"pi":3.141} + +// serialization with pretty printing +// pass in the amount of spaces to indent +std::cout << j.dump(4) << std::endl; +// { +// "happy": true, +// "pi": 3.141 +// } +``` + +Note the difference between serialization and assignment: + +```cpp +// store a string in a JSON value +json j_string = "this is a string"; + +// retrieve the string value +auto cpp_string = j_string.template get(); +// retrieve the string value (alternative when a variable already exists) +std::string cpp_string2; +j_string.get_to(cpp_string2); + +// retrieve the serialized value (explicit JSON serialization) +std::string serialized_string = j_string.dump(); + +// output of original string +std::cout << cpp_string << " == " << cpp_string2 << " == " << j_string.template get() << '\n'; +// output of serialized value +std::cout << j_string << " == " << serialized_string << std::endl; +``` + +[`.dump()`](https://json.nlohmann.me/api/basic_json/dump/) returns the originally stored string value. + +Note the library only supports UTF-8. When you store strings with different encodings in the library, calling [`dump()`](https://json.nlohmann.me/api/basic_json/dump/) may throw an exception unless `json::error_handler_t::replace` or `json::error_handler_t::ignore` are used as error handlers. + +#### To/from streams (e.g. files, string streams) + +You can also use streams to serialize and deserialize: + +```cpp +// deserialize from standard input +json j; +std::cin >> j; + +// serialize to standard output +std::cout << j; + +// the setw manipulator was overloaded to set the indentation for pretty printing +std::cout << std::setw(4) << j << std::endl; +``` + +These operators work for any subclasses of `std::istream` or `std::ostream`. Here is the same example with files: + +```cpp +// read a JSON file +std::ifstream i("file.json"); +json j; +i >> j; + +// write prettified JSON to another file +std::ofstream o("pretty.json"); +o << std::setw(4) << j << std::endl; +``` + +Please note that setting the exception bit for `failbit` is inappropriate for this use case. It will result in program termination due to the `noexcept` specifier in use. + +#### Read from iterator range + +You can also parse JSON from an iterator range; that is, from any container accessible by iterators whose `value_type` is an integral type of 1, 2 or 4 bytes, which will be interpreted as UTF-8, UTF-16 and UTF-32 respectively. For instance, a `std::vector`, or a `std::list`: + +```cpp +std::vector v = {'t', 'r', 'u', 'e'}; +json j = json::parse(v.begin(), v.end()); +``` + +You may leave the iterators for the range [begin, end): + +```cpp +std::vector v = {'t', 'r', 'u', 'e'}; +json j = json::parse(v); +``` + +#### Custom data source + +Since the parse function accepts arbitrary iterator ranges, you can provide your own data sources by implementing the `LegacyInputIterator` concept. + +```cpp +struct MyContainer { + void advance(); + const char& get_current(); +}; + +struct MyIterator { + using difference_type = std::ptrdiff_t; + using value_type = char; + using pointer = const char*; + using reference = const char&; + using iterator_category = std::input_iterator_tag; + + MyIterator& operator++() { + MyContainer.advance(); + return *this; + } + + bool operator!=(const MyIterator& rhs) const { + return rhs.target != target; + } + + reference operator*() const { + return target.get_current(); + } + + MyContainer* target = nullptr; +}; + +MyIterator begin(MyContainer& tgt) { + return MyIterator{&tgt}; +} + +MyIterator end(const MyContainer&) { + return {}; +} + +void foo() { + MyContainer c; + json j = json::parse(c); +} +``` + +#### SAX interface + +The library uses a SAX-like interface with the following functions: + +```cpp +// called when null is parsed +bool null(); + +// called when a boolean is parsed; value is passed +bool boolean(bool val); + +// called when a signed or unsigned integer number is parsed; value is passed +bool number_integer(number_integer_t val); +bool number_unsigned(number_unsigned_t val); + +// called when a floating-point number is parsed; value and original string is passed +bool number_float(number_float_t val, const string_t& s); + +// called when a string is parsed; value is passed and can be safely moved away +bool string(string_t& val); +// called when a binary value is parsed; value is passed and can be safely moved away +bool binary(binary_t& val); + +// called when an object or array begins or ends, resp. The number of elements is passed (or -1 if not known) +bool start_object(std::size_t elements); +bool end_object(); +bool start_array(std::size_t elements); +bool end_array(); +// called when an object key is parsed; value is passed and can be safely moved away +bool key(string_t& val); + +// called when a parse error occurs; byte position, the last token, and an exception is passed +bool parse_error(std::size_t position, const std::string& last_token, const detail::exception& ex); +``` + +The return value of each function determines whether parsing should proceed. + +To implement your own SAX handler, proceed as follows: + +1. Implement the SAX interface in a class. You can use class `nlohmann::json_sax` as base class, but you can also use any class where the functions described above are implemented and public. +2. Create an object of your SAX interface class, e.g. `my_sax`. +3. Call `bool json::sax_parse(input, &my_sax)`; where the first parameter can be any input like a string or an input stream and the second parameter is a pointer to your SAX interface. + +Note the `sax_parse` function only returns a `bool` indicating the result of the last executed SAX event. It does not return a `json` value - it is up to you to decide what to do with the SAX events. Furthermore, no exceptions are thrown in case of a parse error - it is up to you what to do with the exception object passed to your `parse_error` implementation. Internally, the SAX interface is used for the DOM parser (class `json_sax_dom_parser`) as well as the acceptor (`json_sax_acceptor`), see file [`json_sax.hpp`](https://github.com/nlohmann/json/blob/develop/include/nlohmann/detail/input/json_sax.hpp). + +### STL-like access + +We designed the JSON class to behave just like an STL container. In fact, it satisfies the [**ReversibleContainer**](https://en.cppreference.com/w/cpp/named_req/ReversibleContainer) requirement. + +```cpp +// create an array using push_back +json j; +j.push_back("foo"); +j.push_back(1); +j.push_back(true); + +// also use emplace_back +j.emplace_back(1.78); + +// iterate the array +for (json::iterator it = j.begin(); it != j.end(); ++it) { + std::cout << *it << '\n'; +} + +// range-based for +for (auto& element : j) { + std::cout << element << '\n'; +} + +// getter/setter +const auto tmp = j[0].template get(); +j[1] = 42; +bool foo = j.at(2); + +// comparison +j == R"(["foo", 1, true, 1.78])"_json; // true + +// other stuff +j.size(); // 4 entries +j.empty(); // false +j.type(); // json::value_t::array +j.clear(); // the array is empty again + +// convenience type checkers +j.is_null(); +j.is_boolean(); +j.is_number(); +j.is_object(); +j.is_array(); +j.is_string(); + +// create an object +json o; +o["foo"] = 23; +o["bar"] = false; +o["baz"] = 3.141; + +// also use emplace +o.emplace("weather", "sunny"); + +// special iterator member functions for objects +for (json::iterator it = o.begin(); it != o.end(); ++it) { + std::cout << it.key() << " : " << it.value() << "\n"; +} + +// the same code as range for +for (auto& el : o.items()) { + std::cout << el.key() << " : " << el.value() << "\n"; +} + +// even easier with structured bindings (C++17) +for (auto& [key, value] : o.items()) { + std::cout << key << " : " << value << "\n"; +} + +// find an entry +if (o.contains("foo")) { + // there is an entry with key "foo" +} + +// or via find and an iterator +if (o.find("foo") != o.end()) { + // there is an entry with key "foo" +} + +// or simpler using count() +int foo_present = o.count("foo"); // 1 +int fob_present = o.count("fob"); // 0 + +// delete an entry +o.erase("foo"); +``` + + +### Conversion from STL containers + +Any sequence container (`std::array`, `std::vector`, `std::deque`, `std::forward_list`, `std::list`) whose values can be used to construct JSON values (e.g., integers, floating point numbers, Booleans, string types, or again STL containers described in this section) can be used to create a JSON array. The same holds for similar associative containers (`std::set`, `std::multiset`, `std::unordered_set`, `std::unordered_multiset`), but in these cases the order of the elements of the array depends on how the elements are ordered in the respective STL container. + +```cpp +std::vector c_vector {1, 2, 3, 4}; +json j_vec(c_vector); +// [1, 2, 3, 4] + +std::deque c_deque {1.2, 2.3, 3.4, 5.6}; +json j_deque(c_deque); +// [1.2, 2.3, 3.4, 5.6] + +std::list c_list {true, true, false, true}; +json j_list(c_list); +// [true, true, false, true] + +std::forward_list c_flist {12345678909876, 23456789098765, 34567890987654, 45678909876543}; +json j_flist(c_flist); +// [12345678909876, 23456789098765, 34567890987654, 45678909876543] + +std::array c_array {{1, 2, 3, 4}}; +json j_array(c_array); +// [1, 2, 3, 4] + +std::set c_set {"one", "two", "three", "four", "one"}; +json j_set(c_set); // only one entry for "one" is used +// ["four", "one", "three", "two"] + +std::unordered_set c_uset {"one", "two", "three", "four", "one"}; +json j_uset(c_uset); // only one entry for "one" is used +// maybe ["two", "three", "four", "one"] + +std::multiset c_mset {"one", "two", "one", "four"}; +json j_mset(c_mset); // both entries for "one" are used +// maybe ["one", "two", "one", "four"] + +std::unordered_multiset c_umset {"one", "two", "one", "four"}; +json j_umset(c_umset); // both entries for "one" are used +// maybe ["one", "two", "one", "four"] +``` + +Likewise, any associative key-value containers (`std::map`, `std::multimap`, `std::unordered_map`, `std::unordered_multimap`) whose keys can construct an `std::string` and whose values can be used to construct JSON values (see examples above) can be used to create a JSON object. Note that in case of multimaps only one key is used in the JSON object and the value depends on the internal order of the STL container. + +```cpp +std::map c_map { {"one", 1}, {"two", 2}, {"three", 3} }; +json j_map(c_map); +// {"one": 1, "three": 3, "two": 2 } + +std::unordered_map c_umap { {"one", 1.2}, {"two", 2.3}, {"three", 3.4} }; +json j_umap(c_umap); +// {"one": 1.2, "two": 2.3, "three": 3.4} + +std::multimap c_mmap { {"one", true}, {"two", true}, {"three", false}, {"three", true} }; +json j_mmap(c_mmap); // only one entry for key "three" is used +// maybe {"one": true, "two": true, "three": true} + +std::unordered_multimap c_ummap { {"one", true}, {"two", true}, {"three", false}, {"three", true} }; +json j_ummap(c_ummap); // only one entry for key "three" is used +// maybe {"one": true, "two": true, "three": true} +``` + +### JSON Pointer and JSON Patch + +The library supports **JSON Pointer** ([RFC 6901](https://tools.ietf.org/html/rfc6901)) as alternative means to address structured values. On top of this, **JSON Patch** ([RFC 6902](https://tools.ietf.org/html/rfc6902)) allows describing differences between two JSON values - effectively allowing patch and diff operations known from Unix. + +```cpp +// a JSON value +json j_original = R"({ + "baz": ["one", "two", "three"], + "foo": "bar" +})"_json; + +// access members with a JSON pointer (RFC 6901) +j_original["/baz/1"_json_pointer]; +// "two" + +// a JSON patch (RFC 6902) +json j_patch = R"([ + { "op": "replace", "path": "/baz", "value": "boo" }, + { "op": "add", "path": "/hello", "value": ["world"] }, + { "op": "remove", "path": "/foo"} +])"_json; + +// apply the patch +json j_result = j_original.patch(j_patch); +// { +// "baz": "boo", +// "hello": ["world"] +// } + +// calculate a JSON patch from two JSON values +json::diff(j_result, j_original); +// [ +// { "op":" replace", "path": "/baz", "value": ["one", "two", "three"] }, +// { "op": "remove","path": "/hello" }, +// { "op": "add", "path": "/foo", "value": "bar" } +// ] +``` + +### JSON Merge Patch + +The library supports **JSON Merge Patch** ([RFC 7386](https://tools.ietf.org/html/rfc7386)) as a patch format. Instead of using JSON Pointer (see above) to specify values to be manipulated, it describes the changes using a syntax that closely mimics the document being modified. + +```cpp +// a JSON value +json j_document = R"({ + "a": "b", + "c": { + "d": "e", + "f": "g" + } +})"_json; + +// a patch +json j_patch = R"({ + "a":"z", + "c": { + "f": null + } +})"_json; + +// apply the patch +j_document.merge_patch(j_patch); +// { +// "a": "z", +// "c": { +// "d": "e" +// } +// } +``` + +### Implicit conversions + +Supported types can be implicitly converted to JSON values. + +It is recommended to **NOT USE** implicit conversions **FROM** a JSON value. +You can find more details about this recommendation [here](https://www.github.com/nlohmann/json/issues/958). +You can switch off implicit conversions by defining `JSON_USE_IMPLICIT_CONVERSIONS` to `0` before including the `json.hpp` header. When using CMake, you can also achieve this by setting the option `JSON_ImplicitConversions` to `OFF`. + +```cpp +// strings +std::string s1 = "Hello, world!"; +json js = s1; +auto s2 = js.template get(); +// NOT RECOMMENDED +std::string s3 = js; +std::string s4; +s4 = js; + +// Booleans +bool b1 = true; +json jb = b1; +auto b2 = jb.template get(); +// NOT RECOMMENDED +bool b3 = jb; +bool b4; +b4 = jb; + +// numbers +int i = 42; +json jn = i; +auto f = jn.template get(); +// NOT RECOMMENDED +double f2 = jb; +double f3; +f3 = jb; + +// etc. +``` + +Note that `char` types are not automatically converted to JSON strings, but to integer numbers. A conversion to a string must be specified explicitly: + +```cpp +char ch = 'A'; // ASCII value 65 +json j_default = ch; // stores integer number 65 +json j_string = std::string(1, ch); // stores string "A" +``` + +### Arbitrary types conversions + +Every type can be serialized in JSON, not just STL containers and scalar types. Usually, you would do something along those lines: + +```cpp +namespace ns { + // a simple struct to model a person + struct person { + std::string name; + std::string address; + int age; + }; +} + +ns::person p = {"Ned Flanders", "744 Evergreen Terrace", 60}; + +// convert to JSON: copy each value into the JSON object +json j; +j["name"] = p.name; +j["address"] = p.address; +j["age"] = p.age; + +// ... + +// convert from JSON: copy each value from the JSON object +ns::person p { + j["name"].template get(), + j["address"].template get(), + j["age"].template get() +}; +``` + +It works, but that's quite a lot of boilerplate... Fortunately, there's a better way: + +```cpp +// create a person +ns::person p {"Ned Flanders", "744 Evergreen Terrace", 60}; + +// conversion: person -> json +json j = p; + +std::cout << j << std::endl; +// {"address":"744 Evergreen Terrace","age":60,"name":"Ned Flanders"} + +// conversion: json -> person +auto p2 = j.template get(); + +// that's it +assert(p == p2); +``` + +#### Basic usage + +To make this work with one of your types, you only need to provide two functions: + +```cpp +using json = nlohmann::json; + +namespace ns { + void to_json(json& j, const person& p) { + j = json{{"name", p.name}, {"address", p.address}, {"age", p.age}}; + } + + void from_json(const json& j, person& p) { + j.at("name").get_to(p.name); + j.at("address").get_to(p.address); + j.at("age").get_to(p.age); + } +} // namespace ns +``` + +That's all! When calling the `json` constructor with your type, your custom `to_json` method will be automatically called. +Likewise, when calling `template get()` or `get_to(your_type&)`, the `from_json` method will be called. + +Some important things: + +* Those methods **MUST** be in your type's namespace (which can be the global namespace), or the library will not be able to locate them (in this example, they are in namespace `ns`, where `person` is defined). +* Those methods **MUST** be available (e.g., proper headers must be included) everywhere you use these conversions. Look at [issue 1108](https://github.com/nlohmann/json/issues/1108) for errors that may occur otherwise. +* When using `template get()`, `your_type` **MUST** be [DefaultConstructible](https://en.cppreference.com/w/cpp/named_req/DefaultConstructible). (There is a way to bypass this requirement described later.) +* In function `from_json`, use function [`at()`](https://json.nlohmann.me/api/basic_json/at/) to access the object values rather than `operator[]`. In case a key does not exist, `at` throws an exception that you can handle, whereas `operator[]` exhibits undefined behavior. +* You do not need to add serializers or deserializers for STL types like `std::vector`: the library already implements these. + +#### Simplify your life with macros + +If you just want to serialize/deserialize some structs, the `to_json`/`from_json` functions can be a lot of boilerplate. + +There are two macros to make your life easier as long as you (1) want to use a JSON object as serialization and (2) want to use the member variable names as object keys in that object: + +- `NLOHMANN_DEFINE_TYPE_NON_INTRUSIVE(name, member1, member2, ...)` is to be defined inside the namespace of the class/struct to create code for. +- `NLOHMANN_DEFINE_TYPE_INTRUSIVE(name, member1, member2, ...)` is to be defined inside the class/struct to create code for. This macro can also access private members. + +In both macros, the first parameter is the name of the class/struct, and all remaining parameters name the members. + +##### Examples + +The `to_json`/`from_json` functions for the `person` struct above can be created with: + +```cpp +namespace ns { + NLOHMANN_DEFINE_TYPE_NON_INTRUSIVE(person, name, address, age) +} +``` + +Here is an example with private members, where `NLOHMANN_DEFINE_TYPE_INTRUSIVE` is needed: + +```cpp +namespace ns { + class address { + private: + std::string street; + int housenumber; + int postcode; + + public: + NLOHMANN_DEFINE_TYPE_INTRUSIVE(address, street, housenumber, postcode) + }; +} +``` + +#### How do I convert third-party types? + +This requires a bit more advanced technique. But first, let's see how this conversion mechanism works: + +The library uses **JSON Serializers** to convert types to json. +The default serializer for `nlohmann::json` is `nlohmann::adl_serializer` (ADL means [Argument-Dependent Lookup](https://en.cppreference.com/w/cpp/language/adl)). + +It is implemented like this (simplified): + +```cpp +template +struct adl_serializer { + static void to_json(json& j, const T& value) { + // calls the "to_json" method in T's namespace + } + + static void from_json(const json& j, T& value) { + // same thing, but with the "from_json" method + } +}; +``` + +This serializer works fine when you have control over the type's namespace. However, what about `boost::optional` or `std::filesystem::path` (C++17)? Hijacking the `boost` namespace is pretty bad, and it's illegal to add something other than template specializations to `std`... + +To solve this, you need to add a specialization of `adl_serializer` to the `nlohmann` namespace, here's an example: + +```cpp +// partial specialization (full specialization works too) +namespace nlohmann { + template + struct adl_serializer> { + static void to_json(json& j, const boost::optional& opt) { + if (opt == boost::none) { + j = nullptr; + } else { + j = *opt; // this will call adl_serializer::to_json which will + // find the free function to_json in T's namespace! + } + } + + static void from_json(const json& j, boost::optional& opt) { + if (j.is_null()) { + opt = boost::none; + } else { + opt = j.template get(); // same as above, but with + // adl_serializer::from_json + } + } + }; +} +``` + +#### How can I use `get()` for non-default constructible/non-copyable types? + +There is a way, if your type is [MoveConstructible](https://en.cppreference.com/w/cpp/named_req/MoveConstructible). You will need to specialize the `adl_serializer` as well, but with a special `from_json` overload: + +```cpp +struct move_only_type { + move_only_type() = delete; + move_only_type(int ii): i(ii) {} + move_only_type(const move_only_type&) = delete; + move_only_type(move_only_type&&) = default; + + int i; +}; + +namespace nlohmann { + template <> + struct adl_serializer { + // note: the return type is no longer 'void', and the method only takes + // one argument + static move_only_type from_json(const json& j) { + return {j.template get()}; + } + + // Here's the catch! You must provide a to_json method! Otherwise, you + // will not be able to convert move_only_type to json, since you fully + // specialized adl_serializer on that type + static void to_json(json& j, move_only_type t) { + j = t.i; + } + }; +} +``` + +#### Can I write my own serializer? (Advanced use) + +Yes. You might want to take a look at [`unit-udt.cpp`](https://github.com/nlohmann/json/blob/develop/tests/src/unit-udt.cpp) in the test suite, to see a few examples. + +If you write your own serializer, you'll need to do a few things: + +- use a different `basic_json` alias than `nlohmann::json` (the last template parameter of `basic_json` is the `JSONSerializer`) +- use your `basic_json` alias (or a template parameter) in all your `to_json`/`from_json` methods +- use `nlohmann::to_json` and `nlohmann::from_json` when you need ADL + +Here is an example, without simplifications, that only accepts types with a size <= 32, and uses ADL. + +```cpp +// You should use void as a second template argument +// if you don't need compile-time checks on T +template::type> +struct less_than_32_serializer { + template + static void to_json(BasicJsonType& j, T value) { + // we want to use ADL, and call the correct to_json overload + using nlohmann::to_json; // this method is called by adl_serializer, + // this is where the magic happens + to_json(j, value); + } + + template + static void from_json(const BasicJsonType& j, T& value) { + // same thing here + using nlohmann::from_json; + from_json(j, value); + } +}; +``` + +Be **very** careful when reimplementing your serializer, you can stack overflow if you don't pay attention: + +```cpp +template +struct bad_serializer +{ + template + static void to_json(BasicJsonType& j, const T& value) { + // this calls BasicJsonType::json_serializer::to_json(j, value); + // if BasicJsonType::json_serializer == bad_serializer ... oops! + j = value; + } + + template + static void to_json(const BasicJsonType& j, T& value) { + // this calls BasicJsonType::json_serializer::from_json(j, value); + // if BasicJsonType::json_serializer == bad_serializer ... oops! + value = j.template get(); // oops! + } +}; +``` + +### Specializing enum conversion + +By default, enum values are serialized to JSON as integers. In some cases this could result in undesired behavior. If an enum is modified or re-ordered after data has been serialized to JSON, the later de-serialized JSON data may be undefined or a different enum value than was originally intended. + +It is possible to more precisely specify how a given enum is mapped to and from JSON as shown below: + +```cpp +// example enum type declaration +enum TaskState { + TS_STOPPED, + TS_RUNNING, + TS_COMPLETED, + TS_INVALID=-1, +}; + +// map TaskState values to JSON as strings +NLOHMANN_JSON_SERIALIZE_ENUM( TaskState, { + {TS_INVALID, nullptr}, + {TS_STOPPED, "stopped"}, + {TS_RUNNING, "running"}, + {TS_COMPLETED, "completed"}, +}) +``` + +The `NLOHMANN_JSON_SERIALIZE_ENUM()` macro declares a set of `to_json()` / `from_json()` functions for type `TaskState` while avoiding repetition and boilerplate serialization code. + +**Usage:** + +```cpp +// enum to JSON as string +json j = TS_STOPPED; +assert(j == "stopped"); + +// json string to enum +json j3 = "running"; +assert(j3.template get() == TS_RUNNING); + +// undefined json value to enum (where the first map entry above is the default) +json jPi = 3.14; +assert(jPi.template get() == TS_INVALID ); +``` + +Just as in [Arbitrary Type Conversions](#arbitrary-types-conversions) above, +- `NLOHMANN_JSON_SERIALIZE_ENUM()` MUST be declared in your enum type's namespace (which can be the global namespace), or the library will not be able to locate it, and it will default to integer serialization. +- It MUST be available (e.g., proper headers must be included) everywhere you use the conversions. + +Other Important points: +- When using `template get()`, undefined JSON values will default to the first pair specified in your map. Select this default pair carefully. +- If an enum or JSON value is specified more than once in your map, the first matching occurrence from the top of the map will be returned when converting to or from JSON. + +### Binary formats (BSON, CBOR, MessagePack, UBJSON, and BJData) + +Though JSON is a ubiquitous data format, it is not a very compact format suitable for data exchange, for instance over a network. Hence, the library supports [BSON](https://bsonspec.org) (Binary JSON), [CBOR](https://cbor.io) (Concise Binary Object Representation), [MessagePack](https://msgpack.org), [UBJSON](https://ubjson.org) (Universal Binary JSON Specification) and [BJData](https://neurojson.org/bjdata) (Binary JData) to efficiently encode JSON values to byte vectors and to decode such vectors. + +```cpp +// create a JSON value +json j = R"({"compact": true, "schema": 0})"_json; + +// serialize to BSON +std::vector v_bson = json::to_bson(j); + +// 0x1B, 0x00, 0x00, 0x00, 0x08, 0x63, 0x6F, 0x6D, 0x70, 0x61, 0x63, 0x74, 0x00, 0x01, 0x10, 0x73, 0x63, 0x68, 0x65, 0x6D, 0x61, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 + +// roundtrip +json j_from_bson = json::from_bson(v_bson); + +// serialize to CBOR +std::vector v_cbor = json::to_cbor(j); + +// 0xA2, 0x67, 0x63, 0x6F, 0x6D, 0x70, 0x61, 0x63, 0x74, 0xF5, 0x66, 0x73, 0x63, 0x68, 0x65, 0x6D, 0x61, 0x00 + +// roundtrip +json j_from_cbor = json::from_cbor(v_cbor); + +// serialize to MessagePack +std::vector v_msgpack = json::to_msgpack(j); + +// 0x82, 0xA7, 0x63, 0x6F, 0x6D, 0x70, 0x61, 0x63, 0x74, 0xC3, 0xA6, 0x73, 0x63, 0x68, 0x65, 0x6D, 0x61, 0x00 + +// roundtrip +json j_from_msgpack = json::from_msgpack(v_msgpack); + +// serialize to UBJSON +std::vector v_ubjson = json::to_ubjson(j); + +// 0x7B, 0x69, 0x07, 0x63, 0x6F, 0x6D, 0x70, 0x61, 0x63, 0x74, 0x54, 0x69, 0x06, 0x73, 0x63, 0x68, 0x65, 0x6D, 0x61, 0x69, 0x00, 0x7D + +// roundtrip +json j_from_ubjson = json::from_ubjson(v_ubjson); +``` + +The library also supports binary types from BSON, CBOR (byte strings), and MessagePack (bin, ext, fixext). They are stored by default as `std::vector` to be processed outside the library. + +```cpp +// CBOR byte string with payload 0xCAFE +std::vector v = {0x42, 0xCA, 0xFE}; + +// read value +json j = json::from_cbor(v); + +// the JSON value has type binary +j.is_binary(); // true + +// get reference to stored binary value +auto& binary = j.get_binary(); + +// the binary value has no subtype (CBOR has no binary subtypes) +binary.has_subtype(); // false + +// access std::vector member functions +binary.size(); // 2 +binary[0]; // 0xCA +binary[1]; // 0xFE + +// set subtype to 0x10 +binary.set_subtype(0x10); + +// serialize to MessagePack +auto cbor = json::to_msgpack(j); // 0xD5 (fixext2), 0x10, 0xCA, 0xFE +``` + + +## Supported compilers + +Though it's 2023 already, the support for C++11 is still a bit sparse. Currently, the following compilers are known to work: + +- GCC 4.8 - 12.0 (and possibly later) +- Clang 3.4 - 15.0 (and possibly later) +- Apple Clang 9.1 - 13.1 (and possibly later) +- Intel C++ Compiler 17.0.2 (and possibly later) +- Nvidia CUDA Compiler 11.0.221 (and possibly later) +- Microsoft Visual C++ 2015 / Build Tools 14.0.25123.0 (and possibly later) +- Microsoft Visual C++ 2017 / Build Tools 15.5.180.51428 (and possibly later) +- Microsoft Visual C++ 2019 / Build Tools 16.3.1+1def00d3d (and possibly later) +- Microsoft Visual C++ 2022 / Build Tools 19.30.30709.0 (and possibly later) + +I would be happy to learn about other compilers/versions. + +Please note: + +- GCC 4.8 has a bug [57824](https://gcc.gnu.org/bugzilla/show_bug.cgi?id=57824)): multiline raw strings cannot be the arguments to macros. Don't use multiline raw strings directly in macros with this compiler. +- Android defaults to using very old compilers and C++ libraries. To fix this, add the following to your `Application.mk`. This will switch to the LLVM C++ library, the Clang compiler, and enable C++11 and other features disabled by default. + + ``` + APP_STL := c++_shared + NDK_TOOLCHAIN_VERSION := clang3.6 + APP_CPPFLAGS += -frtti -fexceptions + ``` + + The code compiles successfully with [Android NDK](https://developer.android.com/ndk/index.html?hl=ml), Revision 9 - 11 (and possibly later) and [CrystaX's Android NDK](https://www.crystax.net/en/android/ndk) version 10. + +- For GCC running on MinGW or Android SDK, the error `'to_string' is not a member of 'std'` (or similarly, for `strtod` or `strtof`) may occur. Note this is not an issue with the code, but rather with the compiler itself. On Android, see above to build with a newer environment. For MinGW, please refer to [this site](https://tehsausage.com/mingw-to-string) and [this discussion](https://github.com/nlohmann/json/issues/136) for information on how to fix this bug. For Android NDK using `APP_STL := gnustl_static`, please refer to [this discussion](https://github.com/nlohmann/json/issues/219). + +- Unsupported versions of GCC and Clang are rejected by `#error` directives. This can be switched off by defining `JSON_SKIP_UNSUPPORTED_COMPILER_CHECK`. Note that you can expect no support in this case. + +The following compilers are currently used in continuous integration at [AppVeyor](https://ci.appveyor.com/project/nlohmann/json), [Cirrus CI](https://cirrus-ci.com/github/nlohmann/json), and [GitHub Actions](https://github.com/nlohmann/json/actions): + +| Compiler | Operating System | CI Provider | +|--------------------------------------------------------------------------------------------------------|--------------------|----------------| +| Apple Clang 11.0.3 (clang-1103.0.32.62); Xcode 11.7 | macOS 11.7.1 | GitHub Actions | +| Apple Clang 12.0.0 (clang-1200.0.32.29); Xcode 12.4 | macOS 11.7.1 | GitHub Actions | +| Apple Clang 12.0.5 (clang-1205.0.22.11); Xcode 12.5.1 | macOS 11.7.1 | GitHub Actions | +| Apple Clang 13.0.0 (clang-1300.0.29.3); Xcode 13.0 | macOS 11.7.1 | GitHub Actions | +| Apple Clang 13.0.0 (clang-1300.0.29.3); Xcode 13.1 | macOS 12.6.1 | GitHub Actions | +| Apple Clang 13.0.0 (clang-1300.0.29.30); Xcode 13.2.1 | macOS 12.6.1 | GitHub Actions | +| Apple Clang 13.1.6 (clang-1316.0.21.2.3); Xcode 13.3.1 | macOS 12.6.1 | GitHub Actions | +| Apple Clang 13.1.6 (clang-1316.0.21.2.5); Xcode 13.4.1 | macOS 12.6.1 | GitHub Actions | +| Apple Clang 14.0.0 (clang-1400.0.29.102); Xcode 14.0 | macOS 12.6.1 | GitHub Actions | +| Apple Clang 14.0.0 (clang-1400.0.29.102); Xcode 14.0.1 | macOS 12.6.1 | GitHub Actions | +| Apple Clang 14.0.0 (clang-1400.0.29.202); Xcode 14.1 | macOS 12.6.1 | GitHub Actions | +| Clang 3.5.2 | Ubuntu 20.04.3 LTS | GitHub Actions | +| Clang 3.6.2 | Ubuntu 20.04.3 LTS | GitHub Actions | +| Clang 3.7.1 | Ubuntu 20.04.3 LTS | GitHub Actions | +| Clang 3.8.1 | Ubuntu 20.04.3 LTS | GitHub Actions | +| Clang 3.9.1 | Ubuntu 20.04.3 LTS | GitHub Actions | +| Clang 4.0.1 | Ubuntu 20.04.3 LTS | GitHub Actions | +| Clang 5.0.2 | Ubuntu 20.04.3 LTS | GitHub Actions | +| Clang 6.0.1 | Ubuntu 20.04.3 LTS | GitHub Actions | +| Clang 7.0.1 | Ubuntu 20.04.3 LTS | GitHub Actions | +| Clang 8.0.0 | Ubuntu 20.04.3 LTS | GitHub Actions | +| Clang 9.0.0 | Ubuntu 20.04.3 LTS | GitHub Actions | +| Clang 10.0.0 | Ubuntu 20.04.3 LTS | GitHub Actions | +| Clang 10.0.0 with GNU-like command-line | Windows-10.0.17763 | GitHub Actions | +| Clang 11.0.0 with GNU-like command-line | Windows-10.0.17763 | GitHub Actions | +| Clang 11.0.0 with MSVC-like command-line | Windows-10.0.17763 | GitHub Actions | +| Clang 11.0.0 | Ubuntu 20.04.3 LTS | GitHub Actions | +| Clang 12.0.0 | Ubuntu 20.04.3 LTS | GitHub Actions | +| Clang 12.0.0 with GNU-like command-line | Windows-10.0.17763 | GitHub Actions | +| Clang 13.0.0 | Ubuntu 20.04.3 LTS | GitHub Actions | +| Clang 13.0.0 with GNU-like command-line | Windows-10.0.17763 | GitHub Actions | +| Clang 14.0.0 | Ubuntu 20.04.3 LTS | GitHub Actions | +| Clang 14.0.0 with GNU-like command-line | Windows-10.0.17763 | GitHub Actions | +| Clang 15.0.0 with GNU-like command-line | Windows-10.0.17763 | GitHub Actions | +| Clang 15.0.4 | Ubuntu 20.04.3 LTS | GitHub Actions | +| Clang 16.0.0 (16.0.0-++20221031071727+500876226c60-1~exp1~20221031071831.439) | Ubuntu 20.04.3 LTS | GitHub Actions | +| GCC 4.8.5 (Ubuntu 4.8.5-4ubuntu2) | Ubuntu 20.04.3 LTS | GitHub Actions | +| GCC 4.9.4 | Ubuntu 20.04.3 LTS | GitHub Actions | +| GCC 5.5.0 | Ubuntu 20.04.3 LTS | GitHub Actions | +| GCC 6.5.0 | Ubuntu 20.04.3 LTS | GitHub Actions | +| GCC 7.5.0 | Ubuntu 20.04.3 LTS | GitHub Actions | +| GCC 8.1.0 (i686-posix-dwarf-rev0, Built by MinGW-W64 project) | Windows-10.0.17763 | GitHub Actions | +| GCC 8.1.0 (x86_64-posix-seh-rev0, Built by MinGW-W64 project) | Windows-10.0.17763 | GitHub Actions | +| GCC 8.5.0 | Ubuntu 20.04.3 LTS | GitHub Actions | +| GCC 9.5.0 | Ubuntu 20.04.3 LTS | GitHub Actions | +| GCC 10.4.0 | Ubuntu 20.04.3 LTS | GitHub Actions | +| GCC 11.1.0 | Ubuntu (aarch64) | Cirrus CI | +| GCC 11.3.0 | Ubuntu 20.04.3 LTS | GitHub Actions | +| GCC 12.2.0 | Ubuntu 20.04.3 LTS | GitHub Actions | +| GCC 13.0.0 20220605 (experimental) | Ubuntu 20.04.3 LTS | GitHub Actions | +| Intel C++ Compiler 2021.5.0.20211109 | Ubuntu 20.04.3 LTS | GitHub Actions | +| NVCC 11.0.221 | Ubuntu 20.04.3 LTS | GitHub Actions | +| Visual Studio 14 2015 MSVC 19.0.24241.7 (Build Engine version 14.0.25420.1) | Windows-6.3.9600 | AppVeyor | +| Visual Studio 15 2017 MSVC 19.16.27035.0 (Build Engine version 15.9.21+g9802d43bc3 for .NET Framework) | Windows-10.0.14393 | AppVeyor | +| Visual Studio 16 2019 MSVC 19.28.29912.0 (Build Engine version 16.9.0+57a23d249 for .NET Framework) | Windows-10.0.17763 | GitHub Actions | +| Visual Studio 16 2019 MSVC 19.28.29912.0 (Build Engine version 16.9.0+57a23d249 for .NET Framework) | Windows-10.0.17763 | AppVeyor | +| Visual Studio 17 2022 MSVC 19.30.30709.0 (Build Engine version 17.0.31804.368 for .NET Framework) | Windows-10.0.20348 | GitHub Actions | + + +## Integration + +[`json.hpp`](https://github.com/nlohmann/json/blob/develop/single_include/nlohmann/json.hpp) is the single required file in `single_include/nlohmann` or [released here](https://github.com/nlohmann/json/releases). You need to add + +```cpp +#include + +// for convenience +using json = nlohmann::json; +``` + +to the files you want to process JSON and set the necessary switches to enable C++11 (e.g., `-std=c++11` for GCC and Clang). + +You can further use file [`include/nlohmann/json_fwd.hpp`](https://github.com/nlohmann/json/blob/develop/include/nlohmann/json_fwd.hpp) for forward-declarations. The installation of json_fwd.hpp (as part of cmake's install step), can be achieved by setting `-DJSON_MultipleHeaders=ON`. + +### CMake + +You can also use the `nlohmann_json::nlohmann_json` interface target in CMake. This target populates the appropriate usage requirements for `INTERFACE_INCLUDE_DIRECTORIES` to point to the appropriate include directories and `INTERFACE_COMPILE_FEATURES` for the necessary C++11 flags. + +#### External + +To use this library from a CMake project, you can locate it directly with `find_package()` and use the namespaced imported target from the generated package configuration: + +```cmake +# CMakeLists.txt +find_package(nlohmann_json 3.2.0 REQUIRED) +... +add_library(foo ...) +... +target_link_libraries(foo PRIVATE nlohmann_json::nlohmann_json) +``` + +The package configuration file, `nlohmann_jsonConfig.cmake`, can be used either from an install tree or directly out of the build tree. + +#### Embedded + +To embed the library directly into an existing CMake project, place the entire source tree in a subdirectory and call `add_subdirectory()` in your `CMakeLists.txt` file: + +```cmake +# Typically you don't care so much for a third party library's tests to be +# run from your own project's code. +set(JSON_BuildTests OFF CACHE INTERNAL "") + +# If you only include this third party in PRIVATE source files, you do not +# need to install it when your main project gets installed. +# set(JSON_Install OFF CACHE INTERNAL "") + +# Don't use include(nlohmann_json/CMakeLists.txt) since that carries with it +# unintended consequences that will break the build. It's generally +# discouraged (although not necessarily well documented as such) to use +# include(...) for pulling in other CMake projects anyways. +add_subdirectory(nlohmann_json) +... +add_library(foo ...) +... +target_link_libraries(foo PRIVATE nlohmann_json::nlohmann_json) +``` + +##### Embedded (FetchContent) + +Since CMake v3.11, +[FetchContent](https://cmake.org/cmake/help/v3.11/module/FetchContent.html) can +be used to automatically download a release as a dependency at configure time. + +Example: +```cmake +include(FetchContent) + +FetchContent_Declare(json URL https://github.com/nlohmann/json/releases/download/v3.11.3/json.tar.xz) +FetchContent_MakeAvailable(json) + +target_link_libraries(foo PRIVATE nlohmann_json::nlohmann_json) +``` + +**Note**: It is recommended to use the URL approach described above which is supported as of version 3.10.0. See + for more information. + +#### Supporting Both + +To allow your project to support either an externally supplied or an embedded JSON library, you can use a pattern akin to the following: + +``` cmake +# Top level CMakeLists.txt +project(FOO) +... +option(FOO_USE_EXTERNAL_JSON "Use an external JSON library" OFF) +... +add_subdirectory(thirdparty) +... +add_library(foo ...) +... +# Note that the namespaced target will always be available regardless of the +# import method +target_link_libraries(foo PRIVATE nlohmann_json::nlohmann_json) +``` +```cmake +# thirdparty/CMakeLists.txt +... +if(FOO_USE_EXTERNAL_JSON) + find_package(nlohmann_json 3.2.0 REQUIRED) +else() + set(JSON_BuildTests OFF CACHE INTERNAL "") + add_subdirectory(nlohmann_json) +endif() +... +``` + +`thirdparty/nlohmann_json` is then a complete copy of this source tree. + +### Package Managers + +:beer: If you are using OS X and [Homebrew](https://brew.sh), just type `brew install nlohmann-json` and you're set. If you want the bleeding edge rather than the latest release, use `brew install nlohmann-json --HEAD`. See [nlohmann-json](https://formulae.brew.sh/formula/nlohmann-json) for more information. + +If you are using the [Meson Build System](https://mesonbuild.com), add this source tree as a [meson subproject](https://mesonbuild.com/Subprojects.html#using-a-subproject). You may also use the `include.zip` published in this project's [Releases](https://github.com/nlohmann/json/releases) to reduce the size of the vendored source tree. Alternatively, you can get a wrap file by downloading it from [Meson WrapDB](https://wrapdb.mesonbuild.com/nlohmann_json), or simply use `meson wrap install nlohmann_json`. Please see the meson project for any issues regarding the packaging. + +The provided `meson.build` can also be used as an alternative to CMake for installing `nlohmann_json` system-wide in which case a pkg-config file is installed. To use it, simply have your build system require the `nlohmann_json` pkg-config dependency. In Meson, it is preferred to use the [`dependency()`](https://mesonbuild.com/Reference-manual.html#dependency) object with a subproject fallback, rather than using the subproject directly. + +If you are using [Bazel](https://bazel.build/) you can simply reference this repository using `http_archive` or `git_repository` and depend on `@nlohmann_json//:json`. + +If you are using [Conan](https://www.conan.io/) to manage your dependencies, merely add [`nlohmann_json/x.y.z`](https://conan.io/center/nlohmann_json) to your `conanfile`'s requires, where `x.y.z` is the release version you want to use. Please file issues [here](https://github.com/conan-io/conan-center-index/issues) if you experience problems with the packages. + +If you are using [Spack](https://www.spack.io/) to manage your dependencies, you can use the [`nlohmann-json` package](https://spack.readthedocs.io/en/latest/package_list.html#nlohmann-json). Please see the [spack project](https://github.com/spack/spack) for any issues regarding the packaging. + +If you are using [hunter](https://github.com/cpp-pm/hunter) on your project for external dependencies, then you can use the [nlohmann_json package](https://hunter.readthedocs.io/en/latest/packages/pkg/nlohmann_json.html). Please see the hunter project for any issues regarding the packaging. + +If you are using [Buckaroo](https://buckaroo.pm), you can install this library's module with `buckaroo add github.com/buckaroo-pm/nlohmann-json`. Please file issues [here](https://github.com/buckaroo-pm/nlohmann-json). There is a demo repo [here](https://github.com/njlr/buckaroo-nholmann-json-example). + +If you are using [vcpkg](https://github.com/Microsoft/vcpkg/) on your project for external dependencies, then you can install the [nlohmann-json package](https://github.com/Microsoft/vcpkg/tree/master/ports/nlohmann-json) with `vcpkg install nlohmann-json` and follow the then displayed descriptions. Please see the vcpkg project for any issues regarding the packaging. + +If you are using [cget](https://cget.readthedocs.io/en/latest/), you can install the latest development version with `cget install nlohmann/json`. A specific version can be installed with `cget install nlohmann/json@v3.1.0`. Also, the multiple header version can be installed by adding the `-DJSON_MultipleHeaders=ON` flag (i.e., `cget install nlohmann/json -DJSON_MultipleHeaders=ON`). + +If you are using [CocoaPods](https://cocoapods.org), you can use the library by adding pod `"nlohmann_json", '~>3.1.2'` to your podfile (see [an example](https://bitbucket.org/benman/nlohmann_json-cocoapod/src/master/)). Please file issues [here](https://bitbucket.org/benman/nlohmann_json-cocoapod/issues?status=new&status=open). + +If you are using [Swift Package Manager](https://swift.org/package-manager/), you can use the library by adding a package dependency to this repository. And target dependency as `.product(name: "nlohmann-json", package: "json")`. + +If you are using [NuGet](https://www.nuget.org), you can use the package [nlohmann.json](https://www.nuget.org/packages/nlohmann.json/). Please check [this extensive description](https://github.com/nlohmann/json/issues/1132#issuecomment-452250255) on how to use the package. Please file issues [here](https://github.com/hnkb/nlohmann-json-nuget/issues). + +If you are using [conda](https://conda.io/), you can use the package [nlohmann_json](https://github.com/conda-forge/nlohmann_json-feedstock) from [conda-forge](https://conda-forge.org) executing `conda install -c conda-forge nlohmann_json`. Please file issues [here](https://github.com/conda-forge/nlohmann_json-feedstock/issues). + +If you are using [MSYS2](https://www.msys2.org/), you can use the [mingw-w64-nlohmann-json](https://packages.msys2.org/base/mingw-w64-nlohmann-json) package, just type `pacman -S mingw-w64-i686-nlohmann-json` or `pacman -S mingw-w64-x86_64-nlohmann-json` for installation. Please file issues [here](https://github.com/msys2/MINGW-packages/issues/new?title=%5Bnlohmann-json%5D) if you experience problems with the packages. + +If you are using [MacPorts](https://ports.macports.org), execute `sudo port install nlohmann-json` to install the [nlohmann-json](https://ports.macports.org/port/nlohmann-json/) package. + +If you are using [`build2`](https://build2.org), you can use the [`nlohmann-json`](https://cppget.org/nlohmann-json) package from the public repository https://cppget.org or directly from the [package's sources repository](https://github.com/build2-packaging/nlohmann-json). In your project's `manifest` file, just add `depends: nlohmann-json` (probably with some [version constraints](https://build2.org/build2-toolchain/doc/build2-toolchain-intro.xhtml#guide-add-remove-deps)). If you are not familiar with using dependencies in `build2`, [please read this introduction](https://build2.org/build2-toolchain/doc/build2-toolchain-intro.xhtml). +Please file issues [here](https://github.com/build2-packaging/nlohmann-json) if you experience problems with the packages. + +If you are using [`wsjcpp`](https://wsjcpp.org), you can use the command `wsjcpp install "https://github.com/nlohmann/json:develop"` to get the latest version. Note you can change the branch ":develop" to an existing tag or another branch. + +If you are using [`CPM.cmake`](https://github.com/TheLartians/CPM.cmake), you can check this [`example`](https://github.com/TheLartians/CPM.cmake/tree/master/examples/json). After [adding CPM script](https://github.com/TheLartians/CPM.cmake#adding-cpm) to your project, implement the following snippet to your CMake: + +```cmake +CPMAddPackage( + NAME nlohmann_json + GITHUB_REPOSITORY nlohmann/json + VERSION 3.9.1) +``` + +### Pkg-config + +If you are using bare Makefiles, you can use `pkg-config` to generate the include flags that point to where the library is installed: + +```sh +pkg-config nlohmann_json --cflags +``` + +Users of the Meson build system will also be able to use a system-wide library, which will be found by `pkg-config`: + +```meson +json = dependency('nlohmann_json', required: true) +``` + + +## License + + + +The class is licensed under the [MIT License](https://opensource.org/licenses/MIT): + +Copyright © 2013-2022 [Niels Lohmann](https://nlohmann.me) + +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. + +* * * + +The class contains the UTF-8 Decoder from Bjoern Hoehrmann which is licensed under the [MIT License](https://opensource.org/licenses/MIT) (see above). Copyright © 2008-2009 [Björn Hoehrmann](https://bjoern.hoehrmann.de/) + +The class contains a slightly modified version of the Grisu2 algorithm from Florian Loitsch which is licensed under the [MIT License](https://opensource.org/licenses/MIT) (see above). Copyright © 2009 [Florian Loitsch](https://florian.loitsch.com/) + +The class contains a copy of [Hedley](https://nemequ.github.io/hedley/) from Evan Nemerson which is licensed as [CC0-1.0](https://creativecommons.org/publicdomain/zero/1.0/). + +The class contains parts of [Google Abseil](https://github.com/abseil/abseil-cpp) which is licensed under the [Apache 2.0 License](https://opensource.org/licenses/Apache-2.0). + +## Contact + +If you have questions regarding the library, I would like to invite you to [open an issue at GitHub](https://github.com/nlohmann/json/issues/new/choose). Please describe your request, problem, or question as detailed as possible, and also mention the version of the library you are using as well as the version of your compiler and operating system. Opening an issue at GitHub allows other users and contributors to this library to collaborate. For instance, I have little experience with MSVC, and most issues in this regard have been solved by a growing community. If you have a look at the [closed issues](https://github.com/nlohmann/json/issues?q=is%3Aissue+is%3Aclosed), you will see that we react quite timely in most cases. + +Only if your request would contain confidential information, please [send me an email](mailto:mail@nlohmann.me). For encrypted messages, please use [this key](https://keybase.io/nlohmann/pgp_keys.asc). + +## Security + +[Commits by Niels Lohmann](https://github.com/nlohmann/json/commits) and [releases](https://github.com/nlohmann/json/releases) are signed with this [PGP Key](https://keybase.io/nlohmann/pgp_keys.asc?fingerprint=797167ae41c0a6d9232e48457f3cea63ae251b69). + +## Thanks + +I deeply appreciate the help of the following people. + + + +1. [Teemperor](https://github.com/Teemperor) implemented CMake support and lcov integration, realized escape and Unicode handling in the string parser, and fixed the JSON serialization. +2. [elliotgoodrich](https://github.com/elliotgoodrich) fixed an issue with double deletion in the iterator classes. +3. [kirkshoop](https://github.com/kirkshoop) made the iterators of the class composable to other libraries. +4. [wancw](https://github.com/wanwc) fixed a bug that hindered the class to compile with Clang. +5. Tomas Åblad found a bug in the iterator implementation. +6. [Joshua C. Randall](https://github.com/jrandall) fixed a bug in the floating-point serialization. +7. [Aaron Burghardt](https://github.com/aburgh) implemented code to parse streams incrementally. Furthermore, he greatly improved the parser class by allowing the definition of a filter function to discard undesired elements while parsing. +8. [Daniel Kopeček](https://github.com/dkopecek) fixed a bug in the compilation with GCC 5.0. +9. [Florian Weber](https://github.com/Florianjw) fixed a bug in and improved the performance of the comparison operators. +10. [Eric Cornelius](https://github.com/EricMCornelius) pointed out a bug in the handling with NaN and infinity values. He also improved the performance of the string escaping. +11. [易思龙](https://github.com/likebeta) implemented a conversion from anonymous enums. +12. [kepkin](https://github.com/kepkin) patiently pushed forward the support for Microsoft Visual studio. +13. [gregmarr](https://github.com/gregmarr) simplified the implementation of reverse iterators and helped with numerous hints and improvements. In particular, he pushed forward the implementation of user-defined types. +14. [Caio Luppi](https://github.com/caiovlp) fixed a bug in the Unicode handling. +15. [dariomt](https://github.com/dariomt) fixed some typos in the examples. +16. [Daniel Frey](https://github.com/d-frey) cleaned up some pointers and implemented exception-safe memory allocation. +17. [Colin Hirsch](https://github.com/ColinH) took care of a small namespace issue. +18. [Huu Nguyen](https://github.com/whoshuu) correct a variable name in the documentation. +19. [Silverweed](https://github.com/silverweed) overloaded `parse()` to accept an rvalue reference. +20. [dariomt](https://github.com/dariomt) fixed a subtlety in MSVC type support and implemented the `get_ref()` function to get a reference to stored values. +21. [ZahlGraf](https://github.com/ZahlGraf) added a workaround that allows compilation using Android NDK. +22. [whackashoe](https://github.com/whackashoe) replaced a function that was marked as unsafe by Visual Studio. +23. [406345](https://github.com/406345) fixed two small warnings. +24. [Glen Fernandes](https://github.com/glenfe) noted a potential portability problem in the `has_mapped_type` function. +25. [Corbin Hughes](https://github.com/nibroc) fixed some typos in the contribution guidelines. +26. [twelsby](https://github.com/twelsby) fixed the array subscript operator, an issue that failed the MSVC build, and floating-point parsing/dumping. He further added support for unsigned integer numbers and implemented better roundtrip support for parsed numbers. +27. [Volker Diels-Grabsch](https://github.com/vog) fixed a link in the README file. +28. [msm-](https://github.com/msm-) added support for American Fuzzy Lop. +29. [Annihil](https://github.com/Annihil) fixed an example in the README file. +30. [Themercee](https://github.com/Themercee) noted a wrong URL in the README file. +31. [Lv Zheng](https://github.com/lv-zheng) fixed a namespace issue with `int64_t` and `uint64_t`. +32. [abc100m](https://github.com/abc100m) analyzed the issues with GCC 4.8 and proposed a [partial solution](https://github.com/nlohmann/json/pull/212). +33. [zewt](https://github.com/zewt) added useful notes to the README file about Android. +34. [Róbert Márki](https://github.com/robertmrk) added a fix to use move iterators and improved the integration via CMake. +35. [Chris Kitching](https://github.com/ChrisKitching) cleaned up the CMake files. +36. [Tom Needham](https://github.com/06needhamt) fixed a subtle bug with MSVC 2015 which was also proposed by [Michael K.](https://github.com/Epidal). +37. [Mário Feroldi](https://github.com/thelostt) fixed a small typo. +38. [duncanwerner](https://github.com/duncanwerner) found a really embarrassing performance regression in the 2.0.0 release. +39. [Damien](https://github.com/dtoma) fixed one of the last conversion warnings. +40. [Thomas Braun](https://github.com/t-b) fixed a warning in a test case and adjusted MSVC calls in the CI. +41. [Théo DELRIEU](https://github.com/theodelrieu) patiently and constructively oversaw the long way toward [iterator-range parsing](https://github.com/nlohmann/json/issues/290). He also implemented the magic behind the serialization/deserialization of user-defined types and split the single header file into smaller chunks. +42. [Stefan](https://github.com/5tefan) fixed a minor issue in the documentation. +43. [Vasil Dimov](https://github.com/vasild) fixed the documentation regarding conversions from `std::multiset`. +44. [ChristophJud](https://github.com/ChristophJud) overworked the CMake files to ease project inclusion. +45. [Vladimir Petrigo](https://github.com/vpetrigo) made a SFINAE hack more readable and added Visual Studio 17 to the build matrix. +46. [Denis Andrejew](https://github.com/seeekr) fixed a grammar issue in the README file. +47. [Pierre-Antoine Lacaze](https://github.com/palacaze) found a subtle bug in the `dump()` function. +48. [TurpentineDistillery](https://github.com/TurpentineDistillery) pointed to [`std::locale::classic()`](https://en.cppreference.com/w/cpp/locale/locale/classic) to avoid too much locale joggling, found some nice performance improvements in the parser, improved the benchmarking code, and realized locale-independent number parsing and printing. +49. [cgzones](https://github.com/cgzones) had an idea how to fix the Coverity scan. +50. [Jared Grubb](https://github.com/jaredgrubb) silenced a nasty documentation warning. +51. [Yixin Zhang](https://github.com/qwename) fixed an integer overflow check. +52. [Bosswestfalen](https://github.com/Bosswestfalen) merged two iterator classes into a smaller one. +53. [Daniel599](https://github.com/Daniel599) helped to get Travis execute the tests with Clang's sanitizers. +54. [Jonathan Lee](https://github.com/vjon) fixed an example in the README file. +55. [gnzlbg](https://github.com/gnzlbg) supported the implementation of user-defined types. +56. [Alexej Harm](https://github.com/qis) helped to get the user-defined types working with Visual Studio. +57. [Jared Grubb](https://github.com/jaredgrubb) supported the implementation of user-defined types. +58. [EnricoBilla](https://github.com/EnricoBilla) noted a typo in an example. +59. [Martin Hořeňovský](https://github.com/horenmar) found a way for a 2x speedup for the compilation time of the test suite. +60. [ukhegg](https://github.com/ukhegg) found proposed an improvement for the examples section. +61. [rswanson-ihi](https://github.com/rswanson-ihi) noted a typo in the README. +62. [Mihai Stan](https://github.com/stanmihai4) fixed a bug in the comparison with `nullptr`s. +63. [Tushar Maheshwari](https://github.com/tusharpm) added [cotire](https://github.com/sakra/cotire) support to speed up the compilation. +64. [TedLyngmo](https://github.com/TedLyngmo) noted a typo in the README, removed unnecessary bit arithmetic, and fixed some `-Weffc++` warnings. +65. [Krzysztof Woś](https://github.com/krzysztofwos) made exceptions more visible. +66. [ftillier](https://github.com/ftillier) fixed a compiler warning. +67. [tinloaf](https://github.com/tinloaf) made sure all pushed warnings are properly popped. +68. [Fytch](https://github.com/Fytch) found a bug in the documentation. +69. [Jay Sistar](https://github.com/Type1J) implemented a Meson build description. +70. [Henry Lee](https://github.com/HenryRLee) fixed a warning in ICC and improved the iterator implementation. +71. [Vincent Thiery](https://github.com/vthiery) maintains a package for the Conan package manager. +72. [Steffen](https://github.com/koemeet) fixed a potential issue with MSVC and `std::min`. +73. [Mike Tzou](https://github.com/Chocobo1) fixed some typos. +74. [amrcode](https://github.com/amrcode) noted a misleading documentation about comparison of floats. +75. [Oleg Endo](https://github.com/olegendo) reduced the memory consumption by replacing `` with ``. +76. [dan-42](https://github.com/dan-42) cleaned up the CMake files to simplify including/reusing of the library. +77. [Nikita Ofitserov](https://github.com/himikof) allowed for moving values from initializer lists. +78. [Greg Hurrell](https://github.com/wincent) fixed a typo. +79. [Dmitry Kukovinets](https://github.com/DmitryKuk) fixed a typo. +80. [kbthomp1](https://github.com/kbthomp1) fixed an issue related to the Intel OSX compiler. +81. [Markus Werle](https://github.com/daixtrose) fixed a typo. +82. [WebProdPP](https://github.com/WebProdPP) fixed a subtle error in a precondition check. +83. [Alex](https://github.com/leha-bot) noted an error in a code sample. +84. [Tom de Geus](https://github.com/tdegeus) reported some warnings with ICC and helped to fix them. +85. [Perry Kundert](https://github.com/pjkundert) simplified reading from input streams. +86. [Sonu Lohani](https://github.com/sonulohani) fixed a small compilation error. +87. [Jamie Seward](https://github.com/jseward) fixed all MSVC warnings. +88. [Nate Vargas](https://github.com/eld00d) added a Doxygen tag file. +89. [pvleuven](https://github.com/pvleuven) helped to fix a warning in ICC. +90. [Pavel](https://github.com/crea7or) helped to fix some warnings in MSVC. +91. [Jamie Seward](https://github.com/jseward) avoided unnecessary string copies in `find()` and `count()`. +92. [Mitja](https://github.com/Itja) fixed some typos. +93. [Jorrit Wronski](https://github.com/jowr) updated the Hunter package links. +94. [Matthias Möller](https://github.com/TinyTinni) added a `.natvis` for the MSVC debug view. +95. [bogemic](https://github.com/bogemic) fixed some C++17 deprecation warnings. +96. [Eren Okka](https://github.com/erengy) fixed some MSVC warnings. +97. [abolz](https://github.com/abolz) integrated the Grisu2 algorithm for proper floating-point formatting, allowing more roundtrip checks to succeed. +98. [Vadim Evard](https://github.com/Pipeliner) fixed a Markdown issue in the README. +99. [zerodefect](https://github.com/zerodefect) fixed a compiler warning. +100. [Kert](https://github.com/kaidokert) allowed to template the string type in the serialization and added the possibility to override the exceptional behavior. +101. [mark-99](https://github.com/mark-99) helped fixing an ICC error. +102. [Patrik Huber](https://github.com/patrikhuber) fixed links in the README file. +103. [johnfb](https://github.com/johnfb) found a bug in the implementation of CBOR's indefinite length strings. +104. [Paul Fultz II](https://github.com/pfultz2) added a note on the cget package manager. +105. [Wilson Lin](https://github.com/wla80) made the integration section of the README more concise. +106. [RalfBielig](https://github.com/ralfbielig) detected and fixed a memory leak in the parser callback. +107. [agrianius](https://github.com/agrianius) allowed to dump JSON to an alternative string type. +108. [Kevin Tonon](https://github.com/ktonon) overworked the C++11 compiler checks in CMake. +109. [Axel Huebl](https://github.com/ax3l) simplified a CMake check and added support for the [Spack package manager](https://spack.io). +110. [Carlos O'Ryan](https://github.com/coryan) fixed a typo. +111. [James Upjohn](https://github.com/jammehcow) fixed a version number in the compilers section. +112. [Chuck Atkins](https://github.com/chuckatkins) adjusted the CMake files to the CMake packaging guidelines and provided documentation for the CMake integration. +113. [Jan Schöppach](https://github.com/dns13) fixed a typo. +114. [martin-mfg](https://github.com/martin-mfg) fixed a typo. +115. [Matthias Möller](https://github.com/TinyTinni) removed the dependency from `std::stringstream`. +116. [agrianius](https://github.com/agrianius) added code to use alternative string implementations. +117. [Daniel599](https://github.com/Daniel599) allowed to use more algorithms with the `items()` function. +118. [Julius Rakow](https://github.com/jrakow) fixed the Meson include directory and fixed the links to [cppreference.com](cppreference.com). +119. [Sonu Lohani](https://github.com/sonulohani) fixed the compilation with MSVC 2015 in debug mode. +120. [grembo](https://github.com/grembo) fixed the test suite and re-enabled several test cases. +121. [Hyeon Kim](https://github.com/simnalamburt) introduced the macro `JSON_INTERNAL_CATCH` to control the exception handling inside the library. +122. [thyu](https://github.com/thyu) fixed a compiler warning. +123. [David Guthrie](https://github.com/LEgregius) fixed a subtle compilation error with Clang 3.4.2. +124. [Dennis Fischer](https://github.com/dennisfischer) allowed to call `find_package` without installing the library. +125. [Hyeon Kim](https://github.com/simnalamburt) fixed an issue with a double macro definition. +126. [Ben Berman](https://github.com/rivertam) made some error messages more understandable. +127. [zakalibit](https://github.com/zakalibit) fixed a compilation problem with the Intel C++ compiler. +128. [mandreyel](https://github.com/mandreyel) fixed a compilation problem. +129. [Kostiantyn Ponomarenko](https://github.com/koponomarenko) added version and license information to the Meson build file. +130. [Henry Schreiner](https://github.com/henryiii) added support for GCC 4.8. +131. [knilch](https://github.com/knilch0r) made sure the test suite does not stall when run in the wrong directory. +132. [Antonio Borondo](https://github.com/antonioborondo) fixed an MSVC 2017 warning. +133. [Dan Gendreau](https://github.com/dgendreau) implemented the `NLOHMANN_JSON_SERIALIZE_ENUM` macro to quickly define an enum/JSON mapping. +134. [efp](https://github.com/efp) added line and column information to parse errors. +135. [julian-becker](https://github.com/julian-becker) added BSON support. +136. [Pratik Chowdhury](https://github.com/pratikpc) added support for structured bindings. +137. [David Avedissian](https://github.com/davedissian) added support for Clang 5.0.1 (PS4 version). +138. [Jonathan Dumaresq](https://github.com/dumarjo) implemented an input adapter to read from `FILE*`. +139. [kjpus](https://github.com/kjpus) fixed a link in the documentation. +140. [Manvendra Singh](https://github.com/manu-chroma) fixed a typo in the documentation. +141. [ziggurat29](https://github.com/ziggurat29) fixed an MSVC warning. +142. [Sylvain Corlay](https://github.com/SylvainCorlay) added code to avoid an issue with MSVC. +143. [mefyl](https://github.com/mefyl) fixed a bug when JSON was parsed from an input stream. +144. [Millian Poquet](https://github.com/mpoquet) allowed to install the library via Meson. +145. [Michael Behrns-Miller](https://github.com/moodboom) found an issue with a missing namespace. +146. [Nasztanovics Ferenc](https://github.com/naszta) fixed a compilation issue with libc 2.12. +147. [Andreas Schwab](https://github.com/andreas-schwab) fixed the endian conversion. +148. [Mark-Dunning](https://github.com/Mark-Dunning) fixed a warning in MSVC. +149. [Gareth Sylvester-Bradley](https://github.com/garethsb-sony) added `operator/` for JSON Pointers. +150. [John-Mark](https://github.com/johnmarkwayve) noted a missing header. +151. [Vitaly Zaitsev](https://github.com/xvitaly) fixed compilation with GCC 9.0. +152. [Laurent Stacul](https://github.com/stac47) fixed compilation with GCC 9.0. +153. [Ivor Wanders](https://github.com/iwanders) helped to reduce the CMake requirement to version 3.1. +154. [njlr](https://github.com/njlr) updated the Buckaroo instructions. +155. [Lion](https://github.com/lieff) fixed a compilation issue with GCC 7 on CentOS. +156. [Isaac Nickaein](https://github.com/nickaein) improved the integer serialization performance and implemented the `contains()` function. +157. [past-due](https://github.com/past-due) suppressed an unfixable warning. +158. [Elvis Oric](https://github.com/elvisoric) improved Meson support. +159. [Matěj Plch](https://github.com/Afforix) fixed an example in the README. +160. [Mark Beckwith](https://github.com/wythe) fixed a typo. +161. [scinart](https://github.com/scinart) fixed bug in the serializer. +162. [Patrick Boettcher](https://github.com/pboettch) implemented `push_back()` and `pop_back()` for JSON Pointers. +163. [Bruno Oliveira](https://github.com/nicoddemus) added support for Conda. +164. [Michele Caini](https://github.com/skypjack) fixed links in the README. +165. [Hani](https://github.com/hnkb) documented how to install the library with NuGet. +166. [Mark Beckwith](https://github.com/wythe) fixed a typo. +167. [yann-morin-1998](https://github.com/yann-morin-1998) helped to reduce the CMake requirement to version 3.1. +168. [Konstantin Podsvirov](https://github.com/podsvirov) maintains a package for the MSYS2 software distro. +169. [remyabel](https://github.com/remyabel) added GNUInstallDirs to the CMake files. +170. [Taylor Howard](https://github.com/taylorhoward92) fixed a unit test. +171. [Gabe Ron](https://github.com/Macr0Nerd) implemented the `to_string` method. +172. [Watal M. Iwasaki](https://github.com/heavywatal) fixed a Clang warning. +173. [Viktor Kirilov](https://github.com/onqtam) switched the unit tests from [Catch](https://github.com/philsquared/Catch) to [doctest](https://github.com/onqtam/doctest) +174. [Juncheng E](https://github.com/ejcjason) fixed a typo. +175. [tete17](https://github.com/tete17) fixed a bug in the `contains` function. +176. [Xav83](https://github.com/Xav83) fixed some cppcheck warnings. +177. [0xflotus](https://github.com/0xflotus) fixed some typos. +178. [Christian Deneke](https://github.com/chris0x44) added a const version of `json_pointer::back`. +179. [Julien Hamaide](https://github.com/crazyjul) made the `items()` function work with custom string types. +180. [Evan Nemerson](https://github.com/nemequ) updated fixed a bug in Hedley and updated this library accordingly. +181. [Florian Pigorsch](https://github.com/flopp) fixed a lot of typos. +182. [Camille Bégué](https://github.com/cbegue) fixed an issue in the conversion from `std::pair` and `std::tuple` to `json`. +183. [Anthony VH](https://github.com/AnthonyVH) fixed a compile error in an enum deserialization. +184. [Yuriy Vountesmery](https://github.com/ua-code-dragon) noted a subtle bug in a preprocessor check. +185. [Chen](https://github.com/dota17) fixed numerous issues in the library. +186. [Antony Kellermann](https://github.com/aokellermann) added a CI step for GCC 10.1. +187. [Alex](https://github.com/gistrec) fixed an MSVC warning. +188. [Rainer](https://github.com/rvjr) proposed an improvement in the floating-point serialization in CBOR. +189. [Francois Chabot](https://github.com/FrancoisChabot) made performance improvements in the input adapters. +190. [Arthur Sonzogni](https://github.com/ArthurSonzogni) documented how the library can be included via `FetchContent`. +191. [Rimas Misevičius](https://github.com/rmisev) fixed an error message. +192. [Alexander Myasnikov](https://github.com/alexandermyasnikov) fixed some examples and a link in the README. +193. [Hubert Chathi](https://github.com/uhoreg) made CMake's version config file architecture-independent. +194. [OmnipotentEntity](https://github.com/OmnipotentEntity) implemented the binary values for CBOR, MessagePack, BSON, and UBJSON. +195. [ArtemSarmini](https://github.com/ArtemSarmini) fixed a compilation issue with GCC 10 and fixed a leak. +196. [Evgenii Sopov](https://github.com/sea-kg) integrated the library to the wsjcpp package manager. +197. [Sergey Linev](https://github.com/linev) fixed a compiler warning. +198. [Miguel Magalhães](https://github.com/magamig) fixed the year in the copyright. +199. [Gareth Sylvester-Bradley](https://github.com/garethsb-sony) fixed a compilation issue with MSVC. +200. [Alexander “weej” Jones](https://github.com/alex-weej) fixed an example in the README. +201. [Antoine Cœur](https://github.com/Coeur) fixed some typos in the documentation. +202. [jothepro](https://github.com/jothepro) updated links to the Hunter package. +203. [Dave Lee](https://github.com/kastiglione) fixed link in the README. +204. [Joël Lamotte](https://github.com/Klaim) added instruction for using Build2's package manager. +205. [Paul Jurczak](https://github.com/pauljurczak) fixed an example in the README. +206. [Sonu Lohani](https://github.com/sonulohani) fixed a warning. +207. [Carlos Gomes Martinho](https://github.com/gocarlos) updated the Conan package source. +208. [Konstantin Podsvirov](https://github.com/podsvirov) fixed the MSYS2 package documentation. +209. [Tridacnid](https://github.com/Tridacnid) improved the CMake tests. +210. [Michael](https://github.com/MBalszun) fixed MSVC warnings. +211. [Quentin Barbarat](https://github.com/quentin-dev) fixed an example in the documentation. +212. [XyFreak](https://github.com/XyFreak) fixed a compiler warning. +213. [TotalCaesar659](https://github.com/TotalCaesar659) fixed links in the README. +214. [Tanuj Garg](https://github.com/tanuj208) improved the fuzzer coverage for UBSAN input. +215. [AODQ](https://github.com/AODQ) fixed a compiler warning. +216. [jwittbrodt](https://github.com/jwittbrodt) made `NLOHMANN_DEFINE_TYPE_NON_INTRUSIVE` inline. +217. [pfeatherstone](https://github.com/pfeatherstone) improved the upper bound of arguments of the `NLOHMANN_DEFINE_TYPE_NON_INTRUSIVE`/`NLOHMANN_DEFINE_TYPE_INTRUSIVE` macros. +218. [Jan Procházka](https://github.com/jprochazk) fixed a bug in the CBOR parser for binary and string values. +219. [T0b1-iOS](https://github.com/T0b1-iOS) fixed a bug in the new hash implementation. +220. [Matthew Bauer](https://github.com/matthewbauer) adjusted the CBOR writer to create tags for binary subtypes. +221. [gatopeich](https://github.com/gatopeich) implemented an ordered map container for `nlohmann::ordered_json`. +222. [Érico Nogueira Rolim](https://github.com/ericonr) added support for pkg-config. +223. [KonanM](https://github.com/KonanM) proposed an implementation for the `NLOHMANN_DEFINE_TYPE_NON_INTRUSIVE`/`NLOHMANN_DEFINE_TYPE_INTRUSIVE` macros. +224. [Guillaume Racicot](https://github.com/gracicot) implemented `string_view` support and allowed C++20 support. +225. [Alex Reinking](https://github.com/alexreinking) improved CMake support for `FetchContent`. +226. [Hannes Domani](https://github.com/ssbssa) provided a GDB pretty printer. +227. Lars Wirzenius reviewed the README file. +228. [Jun Jie](https://github.com/ongjunjie) fixed a compiler path in the CMake scripts. +229. [Ronak Buch](https://github.com/rbuch) fixed typos in the documentation. +230. [Alexander Karzhenkov](https://github.com/karzhenkov) fixed a move constructor and the Travis builds. +231. [Leonardo Lima](https://github.com/leozz37) added CPM.Cmake support. +232. [Joseph Blackman](https://github.com/jbzdarkid) fixed a warning. +233. [Yaroslav](https://github.com/YarikTH) updated doctest and implemented unit tests. +234. [Martin Stump](https://github.com/globberwops) fixed a bug in the CMake files. +235. [Jaakko Moisio](https://github.com/jasujm) fixed a bug in the input adapters. +236. [bl-ue](https://github.com/bl-ue) fixed some Markdown issues in the README file. +237. [William A. Wieselquist](https://github.com/wawiesel) fixed an example from the README. +238. [abbaswasim](https://github.com/abbaswasim) fixed an example from the README. +239. [Remy Jette](https://github.com/remyjette) fixed a warning. +240. [Fraser](https://github.com/frasermarlow) fixed the documentation. +241. [Ben Beasley](https://github.com/musicinmybrain) updated doctest. +242. [Doron Behar](https://github.com/doronbehar) fixed pkg-config.pc. +243. [raduteo](https://github.com/raduteo) fixed a warning. +244. [David Pfahler](https://github.com/theShmoo) added the possibility to compile the library without I/O support. +245. [Morten Fyhn Amundsen](https://github.com/mortenfyhn) fixed a typo. +246. [jpl-mac](https://github.com/jpl-mac) allowed to treat the library as a system header in CMake. +247. [Jason Dsouza](https://github.com/jasmcaus) fixed the indentation of the CMake file. +248. [offa](https://github.com/offa) added a link to Conan Center to the documentation. +249. [TotalCaesar659](https://github.com/TotalCaesar659) updated the links in the documentation to use HTTPS. +250. [Rafail Giavrimis](https://github.com/grafail) fixed the Google Benchmark default branch. +251. [Louis Dionne](https://github.com/ldionne) fixed a conversion operator. +252. [justanotheranonymoususer](https://github.com/justanotheranonymoususer) made the examples in the README more consistent. +253. [Finkman](https://github.com/Finkman) suppressed some `-Wfloat-equal` warnings. +254. [Ferry Huberts](https://github.com/fhuberts) fixed `-Wswitch-enum` warnings. +255. [Arseniy Terekhin](https://github.com/senyai) made the GDB pretty-printer robust against unset variable names. +256. [Amir Masoud Abdol](https://github.com/amirmasoudabdol) updated the Homebrew command as nlohmann/json is now in homebrew-core. +257. [Hallot](https://github.com/Hallot) fixed some `-Wextra-semi-stmt warnings`. +258. [Giovanni Cerretani](https://github.com/gcerretani) fixed `-Wunused` warnings on `JSON_DIAGNOSTICS`. +259. [Bogdan Popescu](https://github.com/Kapeli) hosts the [docset](https://github.com/Kapeli/Dash-User-Contributions/tree/master/docsets/JSON_for_Modern_C%2B%2B) for offline documentation viewers. +260. [Carl Smedstad](https://github.com/carlsmedstad) fixed an assertion error when using `JSON_DIAGNOSTICS`. +261. [miikka75](https://github.com/miikka75) provided an important fix to compile C++17 code with Clang 9. +262. [Maarten Becker](https://github.com/kernie) fixed a warning for shadowed variables. +263. [Cristi Vîjdea](https://github.com/axnsan12) fixed typos in the `operator[]` documentation. +264. [Alex Beregszaszi](https://github.com/axic) fixed spelling mistakes in comments. +265. [Dirk Stolle](https://github.com/striezel) fixed typos in documentation. +266. [Daniel Albuschat](https://github.com/daniel-kun) corrected the parameter name in the `parse` documentation. +267. [Prince Mendiratta](https://github.com/Prince-Mendiratta) fixed a link to the FAQ. +268. [Florian Albrechtskirchinger](https://github.com/falbrechtskirchinger) implemented `std::string_view` support for object keys and made dozens of other improvements. +269. [Qianqian Fang](https://github.com/fangq) implemented the Binary JData (BJData) format. +270. [pketelsen](https://github.com/pketelsen) added macros `NLOHMANN_DEFINE_TYPE_INTRUSIVE_WITH_DEFAULT` and `NLOHMANN_DEFINE_TYPE_NON_INTRUSIVE_WITH_DEFAULT`. +271. [DarkZeros](https://github.com/DarkZeros) adjusted to code to not clash with Arduino defines. +272. [flagarde](https://github.com/flagarde) fixed the output of `meta()` for MSVC. +273. [Giovanni Cerretani](https://github.com/gcerretani) fixed a check for `std::filesystem`. +274. [Dimitris Apostolou](https://github.com/rex4539) fixed a typo. +275. [Ferry Huberts](https://github.com/fhuberts) fixed a typo. +276. [Michael Nosthoff](https://github.com/heinemml) fixed a typo. +277. [JungHoon Lee](https://github.com/jhnlee) fixed a typo. +278. [Faruk D.](https://github.com/fdiblen) fixed the CITATION.CFF file. +279. [Andrea Cocito](https://github.com/puffetto) added a clarification on macro usage to the documentation. +280. [Krzysiek Karbowiak](https://github.com/kkarbowiak) refactored the tests to use `CHECK_THROWS_WITH_AS`. +281. [Chaoqi Zhang](https://github.com/prncoprs) fixed a typo. +282. [ivanovmp](https://github.com/ivanovmp) fixed a whitespace error. +283. [KsaNL](https://github.com/KsaNL) fixed a build error when including ``. +284. [Andrea Pappacoda](https://github.com/Tachi107) moved `.pc` and `.cmake` files to `share` directory. +285. [Wolf Vollprecht](https://github.com/wolfv) added the `patch_inplace` function. +286. [Jake Zimmerman](https://github.com/jez) highlighted common usage patterns in the README file. +287. [NN](https://github.com/NN---) added the Visual Studio output directory to `.gitignore`. +288. [Romain Reignier](https://github.com/romainreignier) improved the performance the vector output adapter. +289. [Mike](https://github.com/Mike-Leo-Smith) fixed the `std::iterator_traits`. +290. [Richard Hozák](https://github.com/zxey) added macro `JSON_NO_ENUM` to disable default enum conversions. +291. [vakokako](https://github.com/vakokako) fixed tests when compiling with C++20. +292. [Alexander “weej” Jones](https://github.com/alexweej) fixed an example in the README. +293. [Eli Schwartz](https://github.com/eli-schwartz) added more files to the `include.zip` archive. +294. [Kevin Lu](https://github.com/kevinlul) fixed a compilation issue when typedefs with certain names were present. +295. [Trevor Hickey](https://github.com/luxe) improved the description of an example. +296. [Jef LeCompte](https://github.com/jef) updated the year in the README file. +297. [Alexandre Hamez](https://github.com/ahamez) fixed a warning. +298. [Maninderpal Badhan](https://github.com/mbadhan) fixed a typo. +299. [kevin--](https://github.com/kevin--) added a note to an example in the README file. +300. [I](https://github.com/wx257osn2) fixed a typo. +301. [Gregorio Litenstein](https://github.com/Lord-Kamina) fixed the Clang detection. +302. [Andreas Smas](https://github.com/andoma) added a Doozer badge. +303. [WanCW](https://github.com/wancw) fixed the string conversion with Clang. +304. [zhaohuaxishi](https://github.com/zhaohuaxishi) fixed a Doxygen error. +305. [emvivre](https://github.com/emvivre) removed an invalid parameter from CMake. +306. [Tobias Hermann](https://github.com/Dobiasd) fixed a link in the README file. +307. [Michael](https://github.com/traits) fixed a warning. +308. [Ryan Mulder](https://github.com/ryanjmulder) added `ensure_ascii` to the `dump` function. +309. [Muri Nicanor](https://github.com/murinicanor) fixed the `sed` discovery in the Makefile. +310. [David Avedissian](https://github.com/dgavedissian) implemented SFINAE-friendly `iterator_traits`. +311. [AQNOUCH Mohammed](https://github.com/aqnouch) fixed a typo in the README. +312. [Gareth Sylvester-Bradley](https://github.com/garethsb) added `operator/=` and `operator/` to construct JSON pointers. +313. [Michael Macnair](https://github.com/mykter) added support for afl-fuzz testing. +314. [Berkus Decker](https://github.com/berkus) fixed a typo in the README. +315. [Illia Polishchuk](https://github.com/effolkronium) improved the CMake testing. +316. [Ikko Ashimine](https://github.com/eltociear) fixed a typo. +317. [Raphael Grimm](https://github.com/barcode) added the possibility to define a custom base class. +318. [tocic](https://github.com/tocic) fixed typos in the documentation. +319. [Vertexwahn](https://github.com/Vertexwahn) added Bazel build support. +320. [Dirk Stolle](https://github.com/striezel) fixed typos in the documentation. +321. [DavidKorczynski](https://github.com/DavidKorczynski) added a CIFuzz CI GitHub action. +322. [Finkman](https://github.com/Finkman) fixed the debug pretty-printer. +323. [Florian Segginger](https://github.com/floriansegginger) bumped the years in the README. +324. [haadfida](https://github.com/haadfida) cleaned up the badges of used services. +325. [Arsen Arsenović](https://github.com/ArsenArsen) fixed a build error. +326. [theevilone45](https://github.com/theevilone45) fixed a typo in a CMake file. +327. [Sergei Trofimovich](https://github.com/trofi) fixed the custom allocator support. +328. [Joyce](https://github.com/joycebrum) fixed some security issues in the GitHub workflows. +329. [Nicolas Jakob](https://github.com/njakob) add vcpkg version badge. +330. [Tomerkm](https://github.com/Tomerkm) added tests. +331. [No.](https://github.com/tusooa) fixed the use of `get<>` calls. +332. [taro](https://github.com/tarolling) fixed a typo in the `CODEOWNERS` file. +333. [Ikko Eltociear Ashimine](https://github.com/eltociear) fixed a typo. +334. [Felix Yan](https://github.com/felixonmars) fixed a typo in the README. +335. [HO-COOH](https://github.com/HO-COOH) fixed a parentheses in the documentation. +336. [Ivor Wanders](https://github.com/iwanders) fixed the examples to catch exception by `const&`. +337. [miny1233](https://github.com/miny1233) fixed a parentheses in the documentation. +338. [tomalakgeretkal](https://github.com/tomalakgeretkal) fixed a compilation error. +339. [alferov](https://github.com/ALF-ONE) fixed a compilation error. +340. [Craig Scott](https://github.com/craigscott-crascit) fixed a deprecation warning in CMake. +341. [Vyacheslav Zhdanovskiy](https://github.com/ZeronSix) added macros for serialization-only types. +342. [Mathieu Westphal](https://github.com/mwestphal) fixed typos. +343. [scribam](https://github.com/scribam) fixed the MinGW workflow. +344. [Aleksei Sapitskii](https://github.com/aleksproger) added support for Apple's Swift Package Manager. +345. [Benjamin Buch](https://github.com/bebuch) fixed the installation path in CMake. +346. [Colby Haskell](https://github.com/colbychaskell) clarified the parse error message in case a file cannot be opened. + +Thanks a lot for helping out! Please [let me know](mailto:mail@nlohmann.me) if I forgot someone. + + +## Used third-party tools + +The library itself consists of a single header file licensed under the MIT license. However, it is built, tested, documented, and whatnot using a lot of third-party tools and services. Thanks a lot! + +- [**amalgamate.py - Amalgamate C source and header files**](https://github.com/edlund/amalgamate) to create a single header file +- [**American fuzzy lop**](https://lcamtuf.coredump.cx/afl/) for fuzz testing +- [**AppVeyor**](https://www.appveyor.com) for [continuous integration](https://ci.appveyor.com/project/nlohmann/json) on Windows +- [**Artistic Style**](http://astyle.sourceforge.net) for automatic source code indentation +- [**Clang**](https://clang.llvm.org) for compilation with code sanitizers +- [**CMake**](https://cmake.org) for build automation +- [**Codacy**](https://www.codacy.com) for further [code analysis](https://www.codacy.com/app/nlohmann/json) +- [**Coveralls**](https://coveralls.io) to measure [code coverage](https://coveralls.io/github/nlohmann/json) +- [**Coverity Scan**](https://scan.coverity.com) for [static analysis](https://scan.coverity.com/projects/nlohmann-json) +- [**cppcheck**](http://cppcheck.sourceforge.net) for static analysis +- [**doctest**](https://github.com/onqtam/doctest) for the unit tests +- [**git-update-ghpages**](https://github.com/rstacruz/git-update-ghpages) to upload the documentation to gh-pages +- [**GitHub Changelog Generator**](https://github.com/skywinder/github-changelog-generator) to generate the [ChangeLog](https://github.com/nlohmann/json/blob/develop/ChangeLog.md) +- [**Google Benchmark**](https://github.com/google/benchmark) to implement the benchmarks +- [**Hedley**](https://nemequ.github.io/hedley/) to avoid re-inventing several compiler-agnostic feature macros +- [**lcov**](http://ltp.sourceforge.net/coverage/lcov.php) to process coverage information and create an HTML view +- [**libFuzzer**](https://llvm.org/docs/LibFuzzer.html) to implement fuzz testing for OSS-Fuzz +- [**Material for MkDocs**](https://squidfunk.github.io/mkdocs-material/) for the style of the documentation site +- [**MkDocs**](https://www.mkdocs.org) for the documentation site +- [**OSS-Fuzz**](https://github.com/google/oss-fuzz) for continuous fuzz testing of the library ([project repository](https://github.com/google/oss-fuzz/tree/master/projects/json)) +- [**Probot**](https://probot.github.io) for automating maintainer tasks such as closing stale issues, requesting missing information, or detecting toxic comments. +- [**Valgrind**](https://valgrind.org) to check for correct memory management + + +## Projects using JSON for Modern C++ + +The library is currently used in Apple macOS Sierra-Monterey and iOS 10-15. I am not sure what they are using the library for, but I am happy that it runs on so many devices. + + +## Notes + +### Character encoding + +The library supports **Unicode input** as follows: + +- Only **UTF-8** encoded input is supported which is the default encoding for JSON according to [RFC 8259](https://tools.ietf.org/html/rfc8259.html#section-8.1). +- `std::u16string` and `std::u32string` can be parsed, assuming UTF-16 and UTF-32 encoding, respectively. These encodings are not supported when reading from files or other input containers. +- Other encodings such as Latin-1 or ISO 8859-1 are **not** supported and will yield parse or serialization errors. +- [Unicode noncharacters](https://www.unicode.org/faq/private_use.html#nonchar1) will not be replaced by the library. +- Invalid surrogates (e.g., incomplete pairs such as `\uDEAD`) will yield parse errors. +- The strings stored in the library are UTF-8 encoded. When using the default string type (`std::string`), note that its length/size functions return the number of stored bytes rather than the number of characters or glyphs. +- When you store strings with different encodings in the library, calling [`dump()`](https://json.nlohmann.me/api/basic_json/dump/) may throw an exception unless `json::error_handler_t::replace` or `json::error_handler_t::ignore` are used as error handlers. +- To store wide strings (e.g., `std::wstring`), you need to convert them to a UTF-8 encoded `std::string` before, see [an example](https://json.nlohmann.me/home/faq/#wide-string-handling). + +### Comments in JSON + +This library does not support comments by default. It does so for three reasons: + +1. Comments are not part of the [JSON specification](https://tools.ietf.org/html/rfc8259). You may argue that `//` or `/* */` are allowed in JavaScript, but JSON is not JavaScript. +2. This was not an oversight: Douglas Crockford [wrote on this](https://plus.google.com/118095276221607585885/posts/RK8qyGVaGSr) in May 2012: + + > I removed comments from JSON because I saw people were using them to hold parsing directives, a practice which would have destroyed interoperability. I know that the lack of comments makes some people sad, but it shouldn't. + + > Suppose you are using JSON to keep configuration files, which you would like to annotate. Go ahead and insert all the comments you like. Then pipe it through JSMin before handing it to your JSON parser. + +3. It is dangerous for interoperability if some libraries would add comment support while others don't. Please check [The Harmful Consequences of the Robustness Principle](https://tools.ietf.org/html/draft-iab-protocol-maintenance-01) on this. + +However, you can pass set parameter `ignore_comments` to true in the `parse` function to ignore `//` or `/* */` comments. Comments will then be treated as whitespace. + +### Order of object keys + +By default, the library does not preserve the **insertion order of object elements**. This is standards-compliant, as the [JSON standard](https://tools.ietf.org/html/rfc8259.html) defines objects as "an unordered collection of zero or more name/value pairs". + +If you do want to preserve the insertion order, you can try the type [`nlohmann::ordered_json`](https://github.com/nlohmann/json/issues/2179). Alternatively, you can use a more sophisticated ordered map like [`tsl::ordered_map`](https://github.com/Tessil/ordered-map) ([integration](https://github.com/nlohmann/json/issues/546#issuecomment-304447518)) or [`nlohmann::fifo_map`](https://github.com/nlohmann/fifo_map) ([integration](https://github.com/nlohmann/json/issues/485#issuecomment-333652309)). + +### Memory Release + +We checked with Valgrind and the Address Sanitizer (ASAN) that there are no memory leaks. + +If you find that a parsing program with this library does not release memory, please consider the following case, and it may be unrelated to this library. + +**Your program is compiled with glibc.** There is a tunable threshold that glibc uses to decide whether to actually return memory to the system or whether to cache it for later reuse. If in your program you make lots of small allocations and those small allocations are not a contiguous block and are presumably below the threshold, then they will not get returned to the OS. +Here is a related issue [#1924](https://github.com/nlohmann/json/issues/1924). + +### Further notes + +- The code contains numerous debug **assertions** which can be switched off by defining the preprocessor macro `NDEBUG`, see the [documentation of `assert`](https://en.cppreference.com/w/cpp/error/assert). In particular, note [`operator[]`](https://json.nlohmann.me/api/basic_json/operator%5B%5D/) implements **unchecked access** for const objects: If the given key is not present, the behavior is undefined (think of a dereferenced null pointer) and yields an [assertion failure](https://github.com/nlohmann/json/issues/289) if assertions are switched on. If you are not sure whether an element in an object exists, use checked access with the [`at()` function](https://json.nlohmann.me/api/basic_json/at/). Furthermore, you can define `JSON_ASSERT(x)` to replace calls to `assert(x)`. +- As the exact number type is not defined in the [JSON specification](https://tools.ietf.org/html/rfc8259.html), this library tries to choose the best fitting C++ number type automatically. As a result, the type `double` may be used to store numbers which may yield [**floating-point exceptions**](https://github.com/nlohmann/json/issues/181) in certain rare situations if floating-point exceptions have been unmasked in the calling code. These exceptions are not caused by the library and need to be fixed in the calling code, such as by re-masking the exceptions prior to calling library functions. +- The code can be compiled without C++ **runtime type identification** features; that is, you can use the `-fno-rtti` compiler flag. +- **Exceptions** are used widely within the library. They can, however, be switched off with either using the compiler flag `-fno-exceptions` or by defining the symbol `JSON_NOEXCEPTION`. In this case, exceptions are replaced by `abort()` calls. You can further control this behavior by defining `JSON_THROW_USER` (overriding `throw`), `JSON_TRY_USER` (overriding `try`), and `JSON_CATCH_USER` (overriding `catch`). Note that `JSON_THROW_USER` should leave the current scope (e.g., by throwing or aborting), as continuing after it may yield undefined behavior. Note the explanatory [`what()`](https://en.cppreference.com/w/cpp/error/exception/what) string of exceptions is not available for MSVC if exceptions are disabled, see [#2824](https://github.com/nlohmann/json/discussions/2824). + +## Execute unit tests + +To compile and run the tests, you need to execute + +```sh +$ mkdir build +$ cd build +$ cmake .. -DJSON_BuildTests=On +$ cmake --build . +$ ctest --output-on-failure +``` + +Note that during the `ctest` stage, several JSON test files are downloaded from an [external repository](https://github.com/nlohmann/json_test_data). If policies forbid downloading artifacts during testing, you can download the files yourself and pass the directory with the test files via `-DJSON_TestDataDirectory=path` to CMake. Then, no Internet connectivity is required. See [issue #2189](https://github.com/nlohmann/json/issues/2189) for more information. + +If the test suite is not found, several test suites will fail like this: + +``` +=============================================================================== +json/tests/src/make_test_data_available.hpp:21: +TEST CASE: check test suite is downloaded + +json/tests/src/make_test_data_available.hpp:23: FATAL ERROR: REQUIRE( utils::check_testsuite_downloaded() ) is NOT correct! + values: REQUIRE( false ) + logged: Test data not found in 'json/cmake-build-debug/json_test_data'. + Please execute target 'download_test_data' before running this test suite. + See for more information. + +=============================================================================== +``` + +In case you have downloaded the library rather than checked out the code via Git, test `cmake_fetch_content_configure` will fail. Please execute `ctest -LE git_required` to skip these tests. See [issue #2189](https://github.com/nlohmann/json/issues/2189) for more information. + +Some tests change the installed files and hence make the whole process not reproducible. Please execute `ctest -LE not_reproducible` to skip these tests. See [issue #2324](https://github.com/nlohmann/json/issues/2324) for more information. + +Note you need to call `cmake -LE "not_reproducible|git_required"` to exclude both labels. See [issue #2596](https://github.com/nlohmann/json/issues/2596) for more information. + +As Intel compilers use unsafe floating point optimization by default, the unit tests may fail. Use flag [`/fp:precise`](https://software.intel.com/content/www/us/en/develop/documentation/cpp-compiler-developer-guide-and-reference/top/compiler-reference/compiler-options/compiler-option-details/floating-point-options/fp-model-fp.html) then. diff --git a/WORKSPACE.bazel b/WORKSPACE.bazel new file mode 100644 index 00000000..2b2ae9db --- /dev/null +++ b/WORKSPACE.bazel @@ -0,0 +1 @@ +workspace(name = "nlohmann_json") diff --git a/cmake/ci.cmake b/cmake/ci.cmake new file mode 100644 index 00000000..bbb2d4cb --- /dev/null +++ b/cmake/ci.cmake @@ -0,0 +1,983 @@ +# number of parallel jobs for CTest +set(N 10) + +############################################################################### +# Needed tools. +############################################################################### + +include(FindPython3) +find_package(Python3 COMPONENTS Interpreter) + +find_program(ASTYLE_TOOL NAMES astyle) +execute_process(COMMAND ${ASTYLE_TOOL} --version OUTPUT_VARIABLE ASTYLE_TOOL_VERSION ERROR_VARIABLE ASTYLE_TOOL_VERSION) +string(REGEX MATCH "[0-9]+(\\.[0-9]+)+" ASTYLE_TOOL_VERSION "${ASTYLE_TOOL_VERSION}") +message(STATUS "🔖 Artistic Style ${ASTYLE_TOOL_VERSION} (${ASTYLE_TOOL})") + +find_program(CLANG_TOOL NAMES clang++-HEAD clang++ clang++-17 clang++-16 clang++-15 clang++-14 clang++-13 clang++-12 clang++-11 clang++) +execute_process(COMMAND ${CLANG_TOOL} --version OUTPUT_VARIABLE CLANG_TOOL_VERSION ERROR_VARIABLE CLANG_TOOL_VERSION) +string(REGEX MATCH "[0-9]+(\\.[0-9]+)+" CLANG_TOOL_VERSION "${CLANG_TOOL_VERSION}") +message(STATUS "🔖 Clang ${CLANG_TOOL_VERSION} (${CLANG_TOOL})") + +find_program(CLANG_TIDY_TOOL NAMES clang-tidy-17 clang-tidy-16 clang-tidy-15 clang-tidy-14 clang-tidy-13 clang-tidy-12 clang-tidy-11 clang-tidy) +execute_process(COMMAND ${CLANG_TIDY_TOOL} --version OUTPUT_VARIABLE CLANG_TIDY_TOOL_VERSION ERROR_VARIABLE CLANG_TIDY_TOOL_VERSION) +string(REGEX MATCH "[0-9]+(\\.[0-9]+)+" CLANG_TIDY_TOOL_VERSION "${CLANG_TIDY_TOOL_VERSION}") +message(STATUS "🔖 Clang-Tidy ${CLANG_TIDY_TOOL_VERSION} (${CLANG_TIDY_TOOL})") + +message(STATUS "🔖 CMake ${CMAKE_VERSION} (${CMAKE_COMMAND})") + +find_program(CPPCHECK_TOOL NAMES cppcheck) +execute_process(COMMAND ${CPPCHECK_TOOL} --version OUTPUT_VARIABLE CPPCHECK_TOOL_VERSION ERROR_VARIABLE CPPCHECK_TOOL_VERSION) +string(REGEX MATCH "[0-9]+(\\.[0-9]+)+" CPPCHECK_TOOL_VERSION "${CPPCHECK_TOOL_VERSION}") +message(STATUS "🔖 Cppcheck ${CPPCHECK_TOOL_VERSION} (${CPPCHECK_TOOL})") + +find_program(GCC_TOOL NAMES g++-latest g++-HEAD g++-13 g++-12 g++-11 g++-10) +execute_process(COMMAND ${GCC_TOOL} --version OUTPUT_VARIABLE GCC_TOOL_VERSION ERROR_VARIABLE GCC_TOOL_VERSION) +string(REGEX MATCH "[0-9]+(\\.[0-9]+)+" GCC_TOOL_VERSION "${GCC_TOOL_VERSION}") +message(STATUS "🔖 GCC ${GCC_TOOL_VERSION} (${GCC_TOOL})") + +find_program(GCOV_TOOL NAMES gcov-HEAD gcov-11 gcov-10 gcov) +execute_process(COMMAND ${GCOV_TOOL} --version OUTPUT_VARIABLE GCOV_TOOL_VERSION ERROR_VARIABLE GCOV_TOOL_VERSION) +string(REGEX MATCH "[0-9]+(\\.[0-9]+)+" GCOV_TOOL_VERSION "${GCOV_TOOL_VERSION}") +message(STATUS "🔖 GCOV ${GCOV_TOOL_VERSION} (${GCOV_TOOL})") + +find_program(GIT_TOOL NAMES git) +execute_process(COMMAND ${GIT_TOOL} --version OUTPUT_VARIABLE GIT_TOOL_VERSION ERROR_VARIABLE GIT_TOOL_VERSION) +string(REGEX MATCH "[0-9]+(\\.[0-9]+)+" GIT_TOOL_VERSION "${GIT_TOOL_VERSION}") +message(STATUS "🔖 Git ${GIT_TOOL_VERSION} (${GIT_TOOL})") + +find_program(IWYU_TOOL NAMES include-what-you-use iwyu) +execute_process(COMMAND ${IWYU_TOOL} --version OUTPUT_VARIABLE IWYU_TOOL_VERSION ERROR_VARIABLE IWYU_TOOL_VERSION) +string(REGEX MATCH "[0-9]+(\\.[0-9]+)+" IWYU_TOOL_VERSION "${IWYU_TOOL_VERSION}") +message(STATUS "🔖 include-what-you-use ${IWYU_TOOL_VERSION} (${IWYU_TOOL})") + +find_program(INFER_TOOL NAMES infer) +execute_process(COMMAND ${INFER_TOOL} --version OUTPUT_VARIABLE INFER_TOOL_VERSION ERROR_VARIABLE INFER_TOOL_VERSION) +string(REGEX MATCH "[0-9]+(\\.[0-9]+)+" INFER_TOOL_VERSION "${INFER_TOOL_VERSION}") +message(STATUS "🔖 Infer ${INFER_TOOL_VERSION} (${INFER_TOOL})") + +find_program(LCOV_TOOL NAMES lcov) +execute_process(COMMAND ${LCOV_TOOL} --version OUTPUT_VARIABLE LCOV_TOOL_VERSION ERROR_VARIABLE LCOV_TOOL_VERSION) +string(REGEX MATCH "[0-9]+(\\.[0-9]+)+" LCOV_TOOL_VERSION "${LCOV_TOOL_VERSION}") +message(STATUS "🔖 LCOV ${LCOV_TOOL_VERSION} (${LCOV_TOOL})") + +find_program(NINJA_TOOL NAMES ninja) +execute_process(COMMAND ${NINJA_TOOL} --version OUTPUT_VARIABLE NINJA_TOOL_VERSION ERROR_VARIABLE NINJA_TOOL_VERSION) +string(REGEX MATCH "[0-9]+(\\.[0-9]+)+" NINJA_TOOL_VERSION "${NINJA_TOOL_VERSION}") +message(STATUS "🔖 Ninja ${NINJA_TOOL_VERSION} (${NINJA_TOOL})") + +find_program(OCLINT_TOOL NAMES oclint-json-compilation-database) +find_program(OCLINT_VERSION_TOOL NAMES oclint) +execute_process(COMMAND ${OCLINT_VERSION_TOOL} --version OUTPUT_VARIABLE OCLINT_TOOL_VERSION ERROR_VARIABLE OCLINT_TOOL_VERSION) +string(REGEX MATCH "[0-9]+(\\.[0-9]+)+" OCLINT_TOOL_VERSION "${OCLINT_TOOL_VERSION}") +message(STATUS "🔖 OCLint ${OCLINT_TOOL_VERSION} (${OCLINT_TOOL})") + +find_program(VALGRIND_TOOL NAMES valgrind) +execute_process(COMMAND ${VALGRIND_TOOL} --version OUTPUT_VARIABLE VALGRIND_TOOL_VERSION ERROR_VARIABLE VALGRIND_TOOL_VERSION) +string(REGEX MATCH "[0-9]+(\\.[0-9]+)+" VALGRIND_TOOL_VERSION "${VALGRIND_TOOL_VERSION}") +message(STATUS "🔖 Valgrind ${VALGRIND_TOOL_VERSION} (${VALGRIND_TOOL})") + +find_program(GENHTML_TOOL NAMES genhtml) +find_program(PLOG_CONVERTER_TOOL NAMES plog-converter) +find_program(PVS_STUDIO_ANALYZER_TOOL NAMES pvs-studio-analyzer) +find_program(SCAN_BUILD_TOOL NAMES scan-build-15 scan-build-14 scan-build-13 scan-build-12 scan-build-11 scan-build) + +# the individual source files +file(GLOB_RECURSE SRC_FILES ${PROJECT_SOURCE_DIR}/include/nlohmann/*.hpp) + +############################################################################### +# Thorough check with recent compilers +############################################################################### + +# Ignored Clang warnings: +# -Wno-c++98-compat The library targets C++11. +# -Wno-c++98-compat-pedantic The library targets C++11. +# -Wno-deprecated-declarations The library contains annotations for deprecated functions. +# -Wno-extra-semi-stmt The library uses std::assert which triggers this warning. +# -Wno-padded We do not care about padding warnings. +# -Wno-covered-switch-default All switches list all cases and a default case. +# -Wno-unsafe-buffer-usage Otherwise Doctest would not compile. +# -Wno-weak-vtables The library is header-only. +# -Wreserved-identifier See https://github.com/onqtam/doctest/issues/536. + +set(CLANG_CXXFLAGS + -Werror + -Weverything + -Wno-c++98-compat + -Wno-c++98-compat-pedantic + -Wno-deprecated-declarations + -Wno-extra-semi-stmt + -Wno-padded + -Wno-covered-switch-default + -Wno-unsafe-buffer-usage + -Wno-weak-vtables + -Wno-reserved-identifier +) + +# Warning flags determined for GCC 13.0 (experimental) with https://github.com/nlohmann/gcc_flags: +# Ignored GCC warnings: +# -Wno-abi-tag We do not care about ABI tags. +# -Wno-aggregate-return The library uses aggregate returns. +# -Wno-long-long The library uses the long long type to interface with system functions. +# -Wno-namespaces The library uses namespaces. +# -Wno-padded We do not care about padding warnings. +# -Wno-system-headers We do not care about warnings in system headers. +# -Wno-templates The library uses templates. + +set(GCC_CXXFLAGS + -pedantic + -Werror + --all-warnings + --extra-warnings + -W + -WNSObject-attribute + -Wno-abi-tag + -Waddress + -Waddress-of-packed-member + -Wno-aggregate-return + -Waggressive-loop-optimizations + -Waligned-new=all + -Wall + -Walloc-zero + -Walloca + -Wanalyzer-double-fclose + -Wanalyzer-double-free + -Wanalyzer-exposure-through-output-file + -Wanalyzer-file-leak + -Wanalyzer-free-of-non-heap + -Wanalyzer-malloc-leak + -Wanalyzer-mismatching-deallocation + -Wanalyzer-null-argument + -Wanalyzer-null-dereference + -Wanalyzer-possible-null-argument + -Wanalyzer-possible-null-dereference + -Wanalyzer-shift-count-negative + -Wanalyzer-shift-count-overflow + -Wanalyzer-stale-setjmp-buffer + -Wanalyzer-tainted-allocation-size + -Wanalyzer-tainted-array-index + -Wanalyzer-tainted-divisor + -Wanalyzer-tainted-offset + -Wanalyzer-tainted-size + -Wanalyzer-too-complex + -Wanalyzer-unsafe-call-within-signal-handler + -Wanalyzer-use-after-free + -Wanalyzer-use-of-pointer-in-stale-stack-frame + -Wanalyzer-use-of-uninitialized-value + -Wanalyzer-va-arg-type-mismatch + -Wanalyzer-va-list-exhausted + -Wanalyzer-va-list-leak + -Wanalyzer-va-list-use-after-va-end + -Wanalyzer-write-to-const + -Wanalyzer-write-to-string-literal + -Warith-conversion + -Warray-bounds=2 + -Warray-compare + -Warray-parameter=2 + -Wattribute-alias=2 + -Wattribute-warning + -Wattributes + -Wbool-compare + -Wbool-operation + -Wbuiltin-declaration-mismatch + -Wbuiltin-macro-redefined + -Wc++0x-compat + -Wc++11-compat + -Wc++11-extensions + -Wc++14-compat + -Wc++14-extensions + -Wc++17-compat + -Wc++17-extensions + -Wc++1z-compat + -Wc++20-compat + -Wc++20-extensions + -Wc++23-extensions + -Wc++2a-compat + -Wcannot-profile + -Wcast-align + -Wcast-align=strict + -Wcast-function-type + -Wcast-qual + -Wcatch-value=3 + -Wchar-subscripts + -Wclass-conversion + -Wclass-memaccess + -Wclobbered + -Wcomma-subscript + -Wcomment + -Wcomments + -Wconditionally-supported + -Wconversion + -Wconversion-null + -Wcoverage-invalid-line-number + -Wcoverage-mismatch + -Wcpp + -Wctad-maybe-unsupported + -Wctor-dtor-privacy + -Wdangling-else + -Wdangling-pointer=2 + -Wdate-time + -Wdelete-incomplete + -Wdelete-non-virtual-dtor + -Wdeprecated + -Wdeprecated-copy + -Wdeprecated-copy-dtor + -Wdeprecated-declarations + -Wdeprecated-enum-enum-conversion + -Wdeprecated-enum-float-conversion + -Wdisabled-optimization + -Wdiv-by-zero + -Wdouble-promotion + -Wduplicated-branches + -Wduplicated-cond + -Weffc++ + -Wempty-body + -Wendif-labels + -Wenum-compare + -Wenum-conversion + -Wexceptions + -Wexpansion-to-defined + -Wextra + -Wextra-semi + -Wfloat-conversion + -Wfloat-equal + -Wformat-diag + -Wformat-overflow=2 + -Wformat-signedness + -Wformat-truncation=2 + -Wformat=2 + -Wframe-address + -Wfree-nonheap-object + -Whsa + -Wif-not-aligned + -Wignored-attributes + -Wignored-qualifiers + -Wimplicit-fallthrough=5 + -Winaccessible-base + -Winfinite-recursion + -Winherited-variadic-ctor + -Winit-list-lifetime + -Winit-self + -Winline + -Wint-in-bool-context + -Wint-to-pointer-cast + -Winterference-size + -Winvalid-imported-macros + -Winvalid-memory-model + -Winvalid-offsetof + -Winvalid-pch + -Wliteral-suffix + -Wlogical-not-parentheses + -Wlogical-op + -Wno-long-long + -Wlto-type-mismatch + -Wmain + -Wmaybe-uninitialized + -Wmemset-elt-size + -Wmemset-transposed-args + -Wmisleading-indentation + -Wmismatched-dealloc + -Wmismatched-new-delete + -Wmismatched-tags + -Wmissing-attributes + -Wmissing-braces + -Wmissing-declarations + -Wmissing-field-initializers + -Wmissing-include-dirs + -Wmissing-profile + -Wmissing-requires + -Wmissing-template-keyword + -Wmultichar + -Wmultiple-inheritance + -Wmultistatement-macros + -Wno-namespaces + -Wnarrowing + -Wnoexcept + -Wnoexcept-type + -Wnon-template-friend + -Wnon-virtual-dtor + -Wnonnull + -Wnonnull-compare + -Wnormalized=nfkc + -Wnull-dereference + -Wodr + -Wold-style-cast + -Wopenacc-parallelism + -Wopenmp-simd + -Woverflow + -Woverlength-strings + -Woverloaded-virtual + -Wpacked + -Wpacked-bitfield-compat + -Wpacked-not-aligned + -Wno-padded + -Wparentheses + -Wpedantic + -Wpessimizing-move + -Wplacement-new=2 + -Wpmf-conversions + -Wpointer-arith + -Wpointer-compare + -Wpragmas + -Wprio-ctor-dtor + -Wpsabi + -Wrange-loop-construct + -Wredundant-decls + -Wredundant-move + -Wredundant-tags + -Wregister + -Wreorder + -Wrestrict + -Wreturn-local-addr + -Wreturn-type + -Wscalar-storage-order + -Wsequence-point + -Wshadow=compatible-local + -Wshadow=global + -Wshadow=local + -Wshift-count-negative + -Wshift-count-overflow + -Wshift-negative-value + -Wshift-overflow=2 + -Wsign-compare + -Wsign-conversion + -Wsign-promo + -Wsized-deallocation + -Wsizeof-array-argument + -Wsizeof-array-div + -Wsizeof-pointer-div + -Wsizeof-pointer-memaccess + -Wstack-protector + -Wstrict-aliasing=3 + -Wstrict-null-sentinel + -Wno-strict-overflow + -Wstring-compare + -Wstringop-overflow=4 + -Wstringop-overread + -Wstringop-truncation + -Wsubobject-linkage + -Wsuggest-attribute=cold + -Wsuggest-attribute=const + -Wsuggest-attribute=format + -Wsuggest-attribute=malloc + -Wsuggest-attribute=noreturn + -Wsuggest-attribute=pure + -Wsuggest-final-methods + -Wsuggest-final-types + -Wsuggest-override + -Wswitch + -Wswitch-bool + -Wswitch-default + -Wswitch-enum + -Wswitch-outside-range + -Wswitch-unreachable + -Wsync-nand + -Wsynth + -Wno-system-headers + -Wtautological-compare + -Wno-templates + -Wterminate + -Wtrampolines + -Wtrigraphs + -Wtrivial-auto-var-init + -Wtsan + -Wtype-limits + -Wundef + -Wuninitialized + -Wunknown-pragmas + -Wunreachable-code + -Wunsafe-loop-optimizations + -Wunused + -Wunused-but-set-parameter + -Wunused-but-set-variable + -Wunused-const-variable=2 + -Wunused-function + -Wunused-label + -Wunused-local-typedefs + -Wunused-macros + -Wunused-parameter + -Wunused-result + -Wunused-value + -Wunused-variable + -Wuse-after-free=3 + -Wuseless-cast + -Wvarargs + -Wvariadic-macros + -Wvector-operation-performance + -Wvexing-parse + -Wvirtual-inheritance + -Wvirtual-move-assign + -Wvla + -Wvla-parameter + -Wvolatile + -Wvolatile-register-var + -Wwrite-strings + -Wzero-as-null-pointer-constant + -Wzero-length-bounds +) + +add_custom_target(ci_test_gcc + COMMAND CXX=${GCC_TOOL} CXXFLAGS="${GCC_CXXFLAGS}" ${CMAKE_COMMAND} + -DCMAKE_BUILD_TYPE=Debug -GNinja + -DJSON_BuildTests=ON + -S${PROJECT_SOURCE_DIR} -B${PROJECT_BINARY_DIR}/build_gcc + COMMAND ${CMAKE_COMMAND} --build ${PROJECT_BINARY_DIR}/build_gcc + COMMAND cd ${PROJECT_BINARY_DIR}/build_gcc && ${CMAKE_CTEST_COMMAND} --parallel ${N} --output-on-failure + COMMENT "Compile and test with GCC using maximal warning flags" +) + +add_custom_target(ci_test_clang + COMMAND CXX=${CLANG_TOOL} CXXFLAGS="${CLANG_CXXFLAGS}" ${CMAKE_COMMAND} + -DCMAKE_BUILD_TYPE=Debug -GNinja + -DJSON_BuildTests=ON + -S${PROJECT_SOURCE_DIR} -B${PROJECT_BINARY_DIR}/build_clang + COMMAND ${CMAKE_COMMAND} --build ${PROJECT_BINARY_DIR}/build_clang + COMMAND cd ${PROJECT_BINARY_DIR}/build_clang && ${CMAKE_CTEST_COMMAND} --parallel ${N} --output-on-failure + COMMENT "Compile and test with Clang using maximal warning flags" +) + +############################################################################### +# Different C++ Standards. +############################################################################### + +foreach(CXX_STANDARD 11 14 17 20 23) + add_custom_target(ci_test_gcc_cxx${CXX_STANDARD} + COMMAND CXX=${GCC_TOOL} CXXFLAGS="${GCC_CXXFLAGS}" ${CMAKE_COMMAND} + -DCMAKE_BUILD_TYPE=Debug -GNinja + -DJSON_BuildTests=ON -DJSON_FastTests=ON + -DJSON_TestStandards=${CXX_STANDARD} + -S${PROJECT_SOURCE_DIR} -B${PROJECT_BINARY_DIR}/build_gcc_cxx${CXX_STANDARD} + COMMAND ${CMAKE_COMMAND} --build ${PROJECT_BINARY_DIR}/build_gcc_cxx${CXX_STANDARD} + COMMAND cd ${PROJECT_BINARY_DIR}/build_gcc_cxx${CXX_STANDARD} && ${CMAKE_CTEST_COMMAND} --parallel ${N} --output-on-failure + COMMENT "Compile and test with GCC for C++${CXX_STANDARD}" + ) + + add_custom_target(ci_test_clang_cxx${CXX_STANDARD} + COMMAND CXX=${CLANG_TOOL} CXXFLAGS="${CLANG_CXXFLAGS}" ${CMAKE_COMMAND} + -DCMAKE_BUILD_TYPE=Debug -GNinja + -DJSON_BuildTests=ON -DJSON_FastTests=ON + -DJSON_TestStandards=${CXX_STANDARD} + -S${PROJECT_SOURCE_DIR} -B${PROJECT_BINARY_DIR}/build_clang_cxx${CXX_STANDARD} + COMMAND ${CMAKE_COMMAND} --build ${PROJECT_BINARY_DIR}/build_clang_cxx${CXX_STANDARD} + COMMAND cd ${PROJECT_BINARY_DIR}/build_clang_cxx${CXX_STANDARD} && ${CMAKE_CTEST_COMMAND} --parallel ${N} --output-on-failure + COMMENT "Compile and test with Clang for C++${CXX_STANDARD}" + ) +endforeach() + +############################################################################### +# Disable exceptions. +############################################################################### + +add_custom_target(ci_test_noexceptions + COMMAND ${CMAKE_COMMAND} + -DCMAKE_BUILD_TYPE=Debug -GNinja + -DJSON_BuildTests=ON -DCMAKE_CXX_FLAGS=-DJSON_NOEXCEPTION -DDOCTEST_TEST_FILTER=--no-throw + -S${PROJECT_SOURCE_DIR} -B${PROJECT_BINARY_DIR}/build_noexceptions + COMMAND ${CMAKE_COMMAND} --build ${PROJECT_BINARY_DIR}/build_noexceptions + COMMAND cd ${PROJECT_BINARY_DIR}/build_noexceptions && ${CMAKE_CTEST_COMMAND} --parallel ${N} --output-on-failure + COMMENT "Compile and test with exceptions switched off" +) + +############################################################################### +# Disable implicit conversions. +############################################################################### + +add_custom_target(ci_test_noimplicitconversions + COMMAND ${CMAKE_COMMAND} + -DCMAKE_BUILD_TYPE=Debug -GNinja + -DJSON_BuildTests=ON -DJSON_ImplicitConversions=OFF + -S${PROJECT_SOURCE_DIR} -B${PROJECT_BINARY_DIR}/build_noimplicitconversions + COMMAND ${CMAKE_COMMAND} --build ${PROJECT_BINARY_DIR}/build_noimplicitconversions + COMMAND cd ${PROJECT_BINARY_DIR}/build_noimplicitconversions && ${CMAKE_CTEST_COMMAND} --parallel ${N} --output-on-failure + COMMENT "Compile and test with implicit conversions switched off" +) + +############################################################################### +# Enable improved diagnostics. +############################################################################### + +add_custom_target(ci_test_diagnostics + COMMAND ${CMAKE_COMMAND} + -DCMAKE_BUILD_TYPE=Debug -GNinja + -DJSON_BuildTests=ON -DJSON_Diagnostics=ON + -S${PROJECT_SOURCE_DIR} -B${PROJECT_BINARY_DIR}/build_diagnostics + COMMAND ${CMAKE_COMMAND} --build ${PROJECT_BINARY_DIR}/build_diagnostics + COMMAND cd ${PROJECT_BINARY_DIR}/build_diagnostics && ${CMAKE_CTEST_COMMAND} --parallel ${N} --output-on-failure + COMMENT "Compile and test with improved diagnostics enabled" +) + +############################################################################### +# Enable legacy discarded value comparison. +############################################################################### + +add_custom_target(ci_test_legacycomparison + COMMAND ${CMAKE_COMMAND} + -DCMAKE_BUILD_TYPE=Debug -GNinja + -DJSON_BuildTests=ON -DJSON_LegacyDiscardedValueComparison=ON + -S${PROJECT_SOURCE_DIR} -B${PROJECT_BINARY_DIR}/build_legacycomparison + COMMAND ${CMAKE_COMMAND} --build ${PROJECT_BINARY_DIR}/build_legacycomparison + COMMAND cd ${PROJECT_BINARY_DIR}/build_legacycomparison && ${CMAKE_CTEST_COMMAND} --parallel ${N} --output-on-failure + COMMENT "Compile and test with legacy discarded value comparison enabled" +) + +############################################################################### +# Disable global UDLs. +############################################################################### + +add_custom_target(ci_test_noglobaludls + COMMAND ${CMAKE_COMMAND} + -DCMAKE_BUILD_TYPE=Debug -GNinja + -DJSON_BuildTests=ON -DJSON_FastTests=ON -DJSON_GlobalUDLs=OFF + -DCMAKE_CXX_FLAGS=-DJSON_TEST_NO_GLOBAL_UDLS + -S${PROJECT_SOURCE_DIR} -B${PROJECT_BINARY_DIR}/build_noglobaludls + COMMAND ${CMAKE_COMMAND} --build ${PROJECT_BINARY_DIR}/build_noglobaludls + COMMAND cd ${PROJECT_BINARY_DIR}/build_noglobaludls && ${CMAKE_CTEST_COMMAND} --parallel ${N} --output-on-failure + COMMENT "Compile and test with global UDLs disabled" +) + +############################################################################### +# Coverage. +############################################################################### + +add_custom_target(ci_test_coverage + COMMAND CXX=g++ ${CMAKE_COMMAND} + -DCMAKE_BUILD_TYPE=Debug -GNinja -DCMAKE_CXX_FLAGS="--coverage;-fprofile-arcs;-ftest-coverage" + -DJSON_BuildTests=ON + -S${PROJECT_SOURCE_DIR} -B${PROJECT_BINARY_DIR}/build_coverage + COMMAND ${CMAKE_COMMAND} --build ${PROJECT_BINARY_DIR}/build_coverage + COMMAND cd ${PROJECT_BINARY_DIR}/build_coverage && ${CMAKE_CTEST_COMMAND} --parallel ${N} --output-on-failure + + COMMAND CXX=g++ ${CMAKE_COMMAND} + -DCMAKE_BUILD_TYPE=Debug -GNinja -DCMAKE_CXX_FLAGS="-m32;--coverage;-fprofile-arcs;-ftest-coverage" + -DJSON_BuildTests=ON -DJSON_32bitTest=ONLY + -S${PROJECT_SOURCE_DIR} -B${PROJECT_BINARY_DIR}/build_coverage32 + COMMAND ${CMAKE_COMMAND} --build ${PROJECT_BINARY_DIR}/build_coverage32 + COMMAND cd ${PROJECT_BINARY_DIR}/build_coverage32 && ${CMAKE_CTEST_COMMAND} --parallel ${N} --output-on-failure + + COMMAND ${LCOV_TOOL} --directory . --capture --output-file json.info --rc lcov_branch_coverage=1 + COMMAND ${LCOV_TOOL} -e json.info ${SRC_FILES} --output-file json.info.filtered --rc lcov_branch_coverage=1 + COMMAND ${CMAKE_SOURCE_DIR}/tests/thirdparty/imapdl/filterbr.py json.info.filtered > json.info.filtered.noexcept + COMMAND genhtml --title "JSON for Modern C++" --legend --demangle-cpp --output-directory html --show-details --branch-coverage json.info.filtered.noexcept + + COMMENT "Compile and test with coverage" +) + +############################################################################### +# Sanitizers. +############################################################################### + +set(CLANG_CXX_FLAGS_SANITIZER "-g -O1 -fsanitize=address -fsanitize=undefined -fsanitize=integer -fsanitize=nullability -fno-omit-frame-pointer -fno-sanitize-recover=all -fno-sanitize=unsigned-integer-overflow -fno-sanitize=unsigned-shift-base") + +add_custom_target(ci_test_clang_sanitizer + COMMAND CXX=${CLANG_TOOL} CXXFLAGS=${CLANG_CXX_FLAGS_SANITIZER} ${CMAKE_COMMAND} + -DCMAKE_BUILD_TYPE=Debug -GNinja + -DJSON_BuildTests=ON + -S${PROJECT_SOURCE_DIR} -B${PROJECT_BINARY_DIR}/build_clang_sanitizer + COMMAND ${CMAKE_COMMAND} --build ${PROJECT_BINARY_DIR}/build_clang_sanitizer + COMMAND cd ${PROJECT_BINARY_DIR}/build_clang_sanitizer && ${CMAKE_CTEST_COMMAND} --parallel ${N} --output-on-failure + COMMENT "Compile and test with sanitizers" +) + +############################################################################### +# Check if header is amalgamated and sources are properly indented. +############################################################################### + +set(ASTYLE_FLAGS --style=allman --indent=spaces=4 --indent-modifiers --indent-switches --indent-preproc-block --indent-preproc-define --indent-col1-comments --pad-oper --pad-header --align-pointer=type --align-reference=type --add-brackets --convert-tabs --close-templates --lineend=linux --preserve-date --formatted) + +file(GLOB_RECURSE INDENT_FILES + ${PROJECT_SOURCE_DIR}/include/nlohmann/*.hpp + ${PROJECT_SOURCE_DIR}/tests/src/*.cpp + ${PROJECT_SOURCE_DIR}/tests/src/*.hpp + ${PROJECT_SOURCE_DIR}/tests/benchmarks/src/benchmarks.cpp + ${PROJECT_SOURCE_DIR}/docs/examples/*.cpp +) + +set(include_dir ${PROJECT_SOURCE_DIR}/single_include/nlohmann) +set(tool_dir ${PROJECT_SOURCE_DIR}/tools/amalgamate) +add_custom_target(ci_test_amalgamation + COMMAND rm -fr ${include_dir}/json.hpp~ ${include_dir}/json_fwd.hpp~ + COMMAND cp ${include_dir}/json.hpp ${include_dir}/json.hpp~ + COMMAND cp ${include_dir}/json_fwd.hpp ${include_dir}/json_fwd.hpp~ + + COMMAND ${Python3_EXECUTABLE} ${tool_dir}/amalgamate.py -c ${tool_dir}/config_json.json -s . + COMMAND ${Python3_EXECUTABLE} ${tool_dir}/amalgamate.py -c ${tool_dir}/config_json_fwd.json -s . + COMMAND ${ASTYLE_TOOL} ${ASTYLE_FLAGS} --suffix=none --quiet ${include_dir}/json.hpp ${include_dir}/json_fwd.hpp + + COMMAND diff ${include_dir}/json.hpp~ ${include_dir}/json.hpp + COMMAND diff ${include_dir}/json_fwd.hpp~ ${include_dir}/json_fwd.hpp + + COMMAND ${ASTYLE_TOOL} ${ASTYLE_FLAGS} ${INDENT_FILES} + COMMAND for FILE in `find . -name '*.orig'`\; do false \; done + + WORKING_DIRECTORY ${PROJECT_SOURCE_DIR} + COMMENT "Check amalgamation and indentation" +) + +############################################################################### +# Build and test using the amalgamated header +############################################################################### + +add_custom_target(ci_test_single_header + COMMAND CXX=${GCC_TOOL} CXXFLAGS="${GCC_CXXFLAGS}" ${CMAKE_COMMAND} + -DCMAKE_BUILD_TYPE=Debug -GNinja + -DJSON_BuildTests=ON -DJSON_MultipleHeaders=OFF -DJSON_FastTests=ON + -S${PROJECT_SOURCE_DIR} -B${PROJECT_BINARY_DIR}/build_single_header + COMMAND ${CMAKE_COMMAND} --build ${PROJECT_BINARY_DIR}/build_single_header + COMMAND cd ${PROJECT_BINARY_DIR}/build_single_header && ${CMAKE_CTEST_COMMAND} --parallel ${N} --output-on-failure + COMMENT "Compile and test single-header version" +) + +############################################################################### +# Valgrind. +############################################################################### + +add_custom_target(ci_test_valgrind + COMMAND CXX=${GCC_TOOL} ${CMAKE_COMMAND} + -DCMAKE_BUILD_TYPE=Debug -GNinja + -DJSON_BuildTests=ON -DJSON_Valgrind=ON + -S${PROJECT_SOURCE_DIR} -B${PROJECT_BINARY_DIR}/build_valgrind + COMMAND ${CMAKE_COMMAND} --build ${PROJECT_BINARY_DIR}/build_valgrind + COMMAND cd ${PROJECT_BINARY_DIR}/build_valgrind && ${CMAKE_CTEST_COMMAND} -L valgrind --parallel ${N} --output-on-failure + COMMENT "Compile and test with Valgrind" +) + +############################################################################### +# Check code with Clang Static Analyzer. +############################################################################### + +set(CLANG_ANALYZER_CHECKS "fuchsia.HandleChecker,nullability.NullableDereferenced,nullability.NullablePassedToNonnull,nullability.NullableReturnedFromNonnull,optin.cplusplus.UninitializedObject,optin.cplusplus.VirtualCall,optin.mpi.MPI-Checker,optin.osx.OSObjectCStyleCast,optin.osx.cocoa.localizability.EmptyLocalizationContextChecker,optin.osx.cocoa.localizability.NonLocalizedStringChecker,optin.performance.GCDAntipattern,optin.performance.Padding,optin.portability.UnixAPI,security.FloatLoopCounter,security.insecureAPI.DeprecatedOrUnsafeBufferHandling,security.insecureAPI.bcmp,security.insecureAPI.bcopy,security.insecureAPI.bzero,security.insecureAPI.rand,security.insecureAPI.strcpy,valist.CopyToSelf,valist.Uninitialized,valist.Unterminated,webkit.NoUncountedMemberChecker,webkit.RefCntblBaseVirtualDtor,core.CallAndMessage,core.DivideZero,core.NonNullParamChecker,core.NullDereference,core.StackAddressEscape,core.UndefinedBinaryOperatorResult,core.VLASize,core.uninitialized.ArraySubscript,core.uninitialized.Assign,core.uninitialized.Branch,core.uninitialized.CapturedBlockVariable,core.uninitialized.UndefReturn,cplusplus.InnerPointer,cplusplus.Move,cplusplus.NewDelete,cplusplus.NewDeleteLeaks,cplusplus.PlacementNew,cplusplus.PureVirtualCall,deadcode.DeadStores,nullability.NullPassedToNonnull,nullability.NullReturnedFromNonnull,osx.API,osx.MIG,osx.NumberObjectConversion,osx.OSObjectRetainCount,osx.ObjCProperty,osx.SecKeychainAPI,osx.cocoa.AtSync,osx.cocoa.AutoreleaseWrite,osx.cocoa.ClassRelease,osx.cocoa.Dealloc,osx.cocoa.IncompatibleMethodTypes,osx.cocoa.Loops,osx.cocoa.MissingSuperCall,osx.cocoa.NSAutoreleasePool,osx.cocoa.NSError,osx.cocoa.NilArg,osx.cocoa.NonNilReturnValue,osx.cocoa.ObjCGenerics,osx.cocoa.RetainCount,osx.cocoa.RunLoopAutoreleaseLeak,osx.cocoa.SelfInit,osx.cocoa.SuperDealloc,osx.cocoa.UnusedIvars,osx.cocoa.VariadicMethodTypes,osx.coreFoundation.CFError,osx.coreFoundation.CFNumber,osx.coreFoundation.CFRetainRelease,osx.coreFoundation.containers.OutOfBounds,osx.coreFoundation.containers.PointerSizedValues,security.insecureAPI.UncheckedReturn,security.insecureAPI.decodeValueOfObjCType,security.insecureAPI.getpw,security.insecureAPI.gets,security.insecureAPI.mkstemp,security.insecureAPI.mktemp,security.insecureAPI.vfork,unix.API,unix.Malloc,unix.MallocSizeof,unix.MismatchedDeallocator,unix.Vfork,unix.cstring.BadSizeArg,unix.cstring.NullArg") + +add_custom_target(ci_clang_analyze + COMMAND CXX=${CLANG_TOOL} ${CMAKE_COMMAND} + -DCMAKE_BUILD_TYPE=Debug -GNinja + -DJSON_BuildTests=ON + -S${PROJECT_SOURCE_DIR} -B${PROJECT_BINARY_DIR}/build_clang_analyze + COMMAND cd ${PROJECT_BINARY_DIR}/build_clang_analyze && ${SCAN_BUILD_TOOL} -enable-checker ${CLANG_ANALYZER_CHECKS} --use-c++=${CLANG_TOOL} -analyze-headers -o ${PROJECT_BINARY_DIR}/report ninja + COMMENT "Check code with Clang Analyzer" +) + +############################################################################### +# Check code with Cppcheck. +############################################################################### + +add_custom_target(ci_cppcheck + COMMAND ${CPPCHECK_TOOL} --enable=warning --suppress=missingReturn --inline-suppr --inconclusive --force --std=c++11 ${PROJECT_SOURCE_DIR}/single_include/nlohmann/json.hpp --error-exitcode=1 + COMMENT "Check code with Cppcheck" +) + +############################################################################### +# Check code with cpplint. +############################################################################### + +add_custom_target(ci_cpplint + COMMAND ${Python3_EXECUTABLE} -mvenv venv_cpplint + COMMAND venv_cpplint/bin/pip3 --quiet install cpplint + COMMAND venv_cpplint/bin/cpplint --filter=-whitespace,-legal,-runtime/references,-runtime/explicit,-runtime/indentation_namespace,-readability/casting,-readability/nolint --quiet --recursive ${SRC_FILES} + COMMENT "Check code with cpplint" + WORKING_DIRECTORY ${PROJECT_BINARY_DIR} +) + +############################################################################### +# Check code with OCLint. +############################################################################### + +file(COPY ${PROJECT_SOURCE_DIR}/single_include/nlohmann/json.hpp DESTINATION ${PROJECT_BINARY_DIR}/src_single) +file(RENAME ${PROJECT_BINARY_DIR}/src_single/json.hpp ${PROJECT_BINARY_DIR}/src_single/all.cpp) +file(APPEND "${PROJECT_BINARY_DIR}/src_single/all.cpp" "\n\nint main()\n{}\n") + +add_executable(single_all ${PROJECT_BINARY_DIR}/src_single/all.cpp) +target_compile_features(single_all PRIVATE cxx_std_11) + +add_custom_target(ci_oclint + COMMAND ${CMAKE_COMMAND} + -DCMAKE_BUILD_TYPE=Debug + -DCMAKE_EXPORT_COMPILE_COMMANDS=ON + -DJSON_BuildTests=OFF -DJSON_CI=ON + -S${PROJECT_SOURCE_DIR} -B${PROJECT_BINARY_DIR}/build_oclint + COMMAND ${OCLINT_TOOL} -i ${PROJECT_BINARY_DIR}/build_oclint/src_single/all.cpp -p ${PROJECT_BINARY_DIR}/build_oclint -- + -report-type html -enable-global-analysis --max-priority-1=0 --max-priority-2=1000 --max-priority-3=2000 + --disable-rule=MultipleUnaryOperator + --disable-rule=DoubleNegative + --disable-rule=ShortVariableName + --disable-rule=GotoStatement + --disable-rule=LongLine + -o ${PROJECT_BINARY_DIR}/build_oclint/oclint_report.html + COMMENT "Check code with OCLint" +) + +############################################################################### +# Check code with Clang-Tidy. +############################################################################### + +add_custom_target(ci_clang_tidy + COMMAND CXX=${CLANG_TOOL} ${CMAKE_COMMAND} + -DCMAKE_BUILD_TYPE=Debug -GNinja + -DCMAKE_EXPORT_COMPILE_COMMANDS=ON -DCMAKE_CXX_CLANG_TIDY=${CLANG_TIDY_TOOL} + -DJSON_BuildTests=ON + -S${PROJECT_SOURCE_DIR} -B${PROJECT_BINARY_DIR}/build_clang_tidy + COMMAND ${CMAKE_COMMAND} --build ${PROJECT_BINARY_DIR}/build_clang_tidy + COMMENT "Check code with Clang-Tidy" +) + +############################################################################### +# Check code with PVS-Studio Analyzer . +############################################################################### + +add_custom_target(ci_pvs_studio + COMMAND CXX=${CLANG_TOOL} ${CMAKE_COMMAND} + -DCMAKE_BUILD_TYPE=Debug + -DCMAKE_EXPORT_COMPILE_COMMANDS=ON + -DJSON_BuildTests=ON + -S${PROJECT_SOURCE_DIR} -B${PROJECT_BINARY_DIR}/build_pvs_studio + COMMAND cd ${PROJECT_BINARY_DIR}/build_pvs_studio && ${PVS_STUDIO_ANALYZER_TOOL} analyze -j 10 + COMMAND cd ${PROJECT_BINARY_DIR}/build_pvs_studio && ${PLOG_CONVERTER_TOOL} -a'GA:1,2;64:1;CS' -t fullhtml PVS-Studio.log -o pvs + COMMENT "Check code with PVS Studio" +) + +############################################################################### +# Check code with Infer static analyzer. +############################################################################### + +add_custom_target(ci_infer + COMMAND mkdir -p ${PROJECT_BINARY_DIR}/build_infer + COMMAND cd ${PROJECT_BINARY_DIR}/build_infer && ${INFER_TOOL} compile -- ${CMAKE_COMMAND} -DCMAKE_BUILD_TYPE=Debug ${PROJECT_SOURCE_DIR} -DJSON_BuildTests=ON + COMMAND cd ${PROJECT_BINARY_DIR}/build_infer && ${INFER_TOOL} run -- make + COMMENT "Check code with Infer" +) + +############################################################################### +# Run test suite with previously downloaded test data. +############################################################################### + +add_custom_target(ci_offline_testdata + COMMAND mkdir -p ${PROJECT_BINARY_DIR}/build_offline_testdata/test_data + COMMAND cd ${PROJECT_BINARY_DIR}/build_offline_testdata/test_data && ${GIT_TOOL} clone -c advice.detachedHead=false --branch v3.1.0 https://github.com/nlohmann/json_test_data.git --quiet --depth 1 + COMMAND ${CMAKE_COMMAND} + -DCMAKE_BUILD_TYPE=Debug -GNinja + -DJSON_BuildTests=ON -DJSON_FastTests=ON -DJSON_TestDataDirectory=${PROJECT_BINARY_DIR}/build_offline_testdata/test_data/json_test_data + -S${PROJECT_SOURCE_DIR} -B${PROJECT_BINARY_DIR}/build_offline_testdata + COMMAND ${CMAKE_COMMAND} --build ${PROJECT_BINARY_DIR}/build_offline_testdata + COMMAND cd ${PROJECT_BINARY_DIR}/build_offline_testdata && ${CMAKE_CTEST_COMMAND} --parallel ${N} --output-on-failure + COMMENT "Check code with previously downloaded test data" +) + +############################################################################### +# Run test suite when project was not checked out from Git +############################################################################### + +add_custom_target(ci_non_git_tests + COMMAND git config --global --add safe.directory ${PROJECT_SOURCE_DIR} + COMMAND mkdir -p ${PROJECT_BINARY_DIR}/build_non_git_tests/sources + COMMAND cd ${PROJECT_SOURCE_DIR} && for FILE in `${GIT_TOOL} ls-tree --name-only HEAD`\; do cp -r $$FILE ${PROJECT_BINARY_DIR}/build_non_git_tests/sources \; done + COMMAND ${CMAKE_COMMAND} + -DCMAKE_BUILD_TYPE=Debug -GNinja + -DJSON_BuildTests=ON -DJSON_FastTests=ON + -S${PROJECT_BINARY_DIR}/build_non_git_tests/sources -B${PROJECT_BINARY_DIR}/build_non_git_tests + COMMAND ${CMAKE_COMMAND} --build ${PROJECT_BINARY_DIR}/build_non_git_tests + COMMAND cd ${PROJECT_BINARY_DIR}/build_non_git_tests && ${CMAKE_CTEST_COMMAND} --parallel ${N} -LE git_required --output-on-failure + COMMENT "Check code when project was not checked out from Git" +) + +############################################################################### +# Run test suite and exclude tests that change installed files +############################################################################### + +add_custom_target(ci_reproducible_tests + COMMAND ${CMAKE_COMMAND} + -DCMAKE_BUILD_TYPE=Debug -GNinja + -DJSON_BuildTests=ON -DJSON_FastTests=ON + -S${PROJECT_SOURCE_DIR} -B${PROJECT_BINARY_DIR}/build_reproducible_tests + COMMAND ${CMAKE_COMMAND} --build ${PROJECT_BINARY_DIR}/build_reproducible_tests + COMMAND cd ${PROJECT_BINARY_DIR}/build_reproducible_tests && ${CMAKE_CTEST_COMMAND} --parallel ${N} -LE not_reproducible --output-on-failure + COMMENT "Check code and exclude tests that change installed files" +) + +############################################################################### +# Check if every header in the include folder includes sufficient headers to +# be compiled individually. +############################################################################### + +set(iwyu_path_and_options ${IWYU_TOOL} -Xiwyu --max_line_length=300) + +foreach(SRC_FILE ${SRC_FILES}) + # get relative path of the header file + file(RELATIVE_PATH RELATIVE_SRC_FILE "${PROJECT_SOURCE_DIR}/include/nlohmann" "${SRC_FILE}") + # replace slashes and strip suffix + string(REPLACE "/" "_" RELATIVE_SRC_FILE "${RELATIVE_SRC_FILE}") + string(REPLACE ".hpp" "" RELATIVE_SRC_FILE "${RELATIVE_SRC_FILE}") + # create code file + file(WRITE "${PROJECT_BINARY_DIR}/src_single/${RELATIVE_SRC_FILE}.cpp" "#include \"${SRC_FILE}\" // IWYU pragma: keep\n\nint main()\n{}\n") + # create executable + add_executable(single_${RELATIVE_SRC_FILE} EXCLUDE_FROM_ALL ${PROJECT_BINARY_DIR}/src_single/${RELATIVE_SRC_FILE}.cpp) + target_include_directories(single_${RELATIVE_SRC_FILE} PRIVATE ${PROJECT_SOURCE_DIR}/include) + target_compile_features(single_${RELATIVE_SRC_FILE} PRIVATE cxx_std_11) + set_property(TARGET single_${RELATIVE_SRC_FILE} PROPERTY CXX_INCLUDE_WHAT_YOU_USE "${iwyu_path_and_options}") + # remember binary for ci_single_binaries target + list(APPEND single_binaries single_${RELATIVE_SRC_FILE}) +endforeach() + +add_custom_target(ci_single_binaries + DEPENDS ${single_binaries} + COMMENT "Check if headers are self-contained" +) + +############################################################################### +# Benchmarks +############################################################################### + +add_custom_target(ci_benchmarks + COMMAND ${CMAKE_COMMAND} + -DCMAKE_BUILD_TYPE=Release -GNinja + -S${PROJECT_SOURCE_DIR}/benchmarks -B${PROJECT_BINARY_DIR}/build_benchmarks + COMMAND ${CMAKE_COMMAND} --build ${PROJECT_BINARY_DIR}/build_benchmarks --target json_benchmarks + COMMAND cd ${PROJECT_BINARY_DIR}/build_benchmarks && ./json_benchmarks + COMMENT "Run benchmarks" +) + +############################################################################### +# CMake flags +############################################################################### + +function(ci_get_cmake version var) + set(${var} ${PROJECT_BINARY_DIR}/cmake-${version}/bin/cmake) + add_custom_command( + OUTPUT ${${var}} + COMMAND wget -nc https://github.com/Kitware/CMake/releases/download/v${version}/cmake-${version}.tar.gz + COMMAND tar xfz cmake-${version}.tar.gz + COMMAND rm cmake-${version}.tar.gz + COMMAND ${CMAKE_COMMAND} -S cmake-${version} -B cmake-${version} + COMMAND ${CMAKE_COMMAND} --build cmake-${version} --parallel 10 + WORKING_DIRECTORY ${PROJECT_BINARY_DIR} + COMMENT "Download CMake ${version}" + ) + set(${var} ${${var}} PARENT_SCOPE) +endfunction() + +ci_get_cmake(3.1.0 CMAKE_3_1_0_BINARY) +ci_get_cmake(3.13.0 CMAKE_3_13_0_BINARY) + +set(JSON_CMAKE_FLAGS_3_1_0 JSON_Diagnostics JSON_GlobalUDLs JSON_ImplicitConversions JSON_DisableEnumSerialization + JSON_LegacyDiscardedValueComparison JSON_Install JSON_MultipleHeaders JSON_SystemInclude JSON_Valgrind) +set(JSON_CMAKE_FLAGS_3_13_0 JSON_BuildTests) + +function(ci_add_cmake_flags_targets flag min_version) + string(TOLOWER "ci_cmake_flag_${flag}" flag_target) + string(REPLACE . _ min_version_var ${min_version}) + set(cmake_binary ${CMAKE_${min_version_var}_BINARY}) + add_custom_target(${flag_target} + COMMENT "Check CMake flag ${flag} (CMake ${CMAKE_VERSION})" + COMMAND ${CMAKE_COMMAND} + -Werror=dev + -D${flag}=ON + -S${PROJECT_SOURCE_DIR} -B${PROJECT_BINARY_DIR}/build_${flag_target} + ) + add_custom_target(${flag_target}_${min_version_var} + COMMENT "Check CMake flag ${JSON_CMAKE_FLAG} (CMake ${min_version})" + COMMAND mkdir -pv ${PROJECT_BINARY_DIR}/build_${flag_target}_${min_version_var} + COMMAND cd ${PROJECT_BINARY_DIR}/build_${flag_target}_${min_version_var} + && ${cmake_binary} -Werror=dev ${PROJECT_SOURCE_DIR} -D${flag}=ON + DEPENDS ${cmake_binary} + ) + list(APPEND JSON_CMAKE_FLAG_TARGETS ${JSON_CMAKE_FLAG_TARGET} ${flag_target}_${min_version_var}) + list(APPEND JSON_CMAKE_FLAG_BUILD_DIRS ${PROJECT_BINARY_DIR}/build_${flag_target} ${PROJECT_BINARY_DIR}/build_${flag_target}_${min_version_var}) + set(JSON_CMAKE_FLAG_TARGETS ${JSON_CMAKE_FLAG_TARGETS} PARENT_SCOPE) + set(JSON_CMAKE_FLAG_BUILD_DIRS ${JSON_CMAKE_FLAG_BUILD_DIRS} PARENT_SCOPE) +endfunction() + +foreach(JSON_CMAKE_FLAG ${JSON_CMAKE_FLAGS_3_1_0}) + ci_add_cmake_flags_targets(${JSON_CMAKE_FLAG} 3.1.0) +endforeach() + +foreach(JSON_CMAKE_FLAG ${JSON_CMAKE_FLAGS_3_13_0}) + ci_add_cmake_flags_targets(${JSON_CMAKE_FLAG} 3.13.0) +endforeach() + +add_custom_target(ci_cmake_flags + DEPENDS ${JSON_CMAKE_FLAG_TARGETS} + COMMENT "Check CMake flags" +) + +############################################################################### +# Use more installed compilers. +############################################################################### + +foreach(COMPILER g++-4.8 g++-4.9 g++-5 g++-6 g++-7 g++-8 g++-9 g++-10 g++-11 clang++-3.5 clang++-3.6 clang++-3.7 clang++-3.8 clang++-3.9 clang++-4.0 clang++-5.0 clang++-6.0 clang++-7 clang++-8 clang++-9 clang++-10 clang++-11 clang++-12 clang++-13 clang++-14 clang++-15 clang++-16 clang++-17) + find_program(COMPILER_TOOL NAMES ${COMPILER}) + if (COMPILER_TOOL) + unset(ADDITIONAL_FLAGS) + + add_custom_target(ci_test_compiler_${COMPILER} + COMMAND CXX=${COMPILER} ${CMAKE_COMMAND} + -DCMAKE_BUILD_TYPE=Debug -GNinja + -DJSON_BuildTests=ON -DJSON_FastTests=ON + -S${PROJECT_SOURCE_DIR} -B${PROJECT_BINARY_DIR}/build_compiler_${COMPILER} + ${ADDITIONAL_FLAGS} + COMMAND ${CMAKE_COMMAND} --build ${PROJECT_BINARY_DIR}/build_compiler_${COMPILER} + COMMAND cd ${PROJECT_BINARY_DIR}/build_compiler_${COMPILER} && ${CMAKE_CTEST_COMMAND} --parallel ${N} --exclude-regex "test-unicode" --output-on-failure + COMMENT "Compile and test with ${COMPILER}" + ) + endif() + unset(COMPILER_TOOL CACHE) +endforeach() + +add_custom_target(ci_test_compiler_default + COMMAND ${CMAKE_COMMAND} + -DCMAKE_BUILD_TYPE=Debug -GNinja + -DJSON_BuildTests=ON -DJSON_FastTests=ON + -S${PROJECT_SOURCE_DIR} -B${PROJECT_BINARY_DIR}/build_compiler_default + ${ADDITIONAL_FLAGS} + COMMAND ${CMAKE_COMMAND} --build ${PROJECT_BINARY_DIR}/build_compiler_default --parallel ${N} + COMMAND cd ${PROJECT_BINARY_DIR}/build_compiler_default && ${CMAKE_CTEST_COMMAND} --parallel ${N} --exclude-regex "test-unicode" -LE git_required --output-on-failure + COMMENT "Compile and test with default C++ compiler" +) + +############################################################################### +# CUDA example +############################################################################### + +add_custom_target(ci_cuda_example + COMMAND ${CMAKE_COMMAND} + -DCMAKE_BUILD_TYPE=Debug -GNinja + -DCMAKE_CUDA_HOST_COMPILER=g++-8 + -S${PROJECT_SOURCE_DIR}/tests/cuda_example -B${PROJECT_BINARY_DIR}/build_cuda_example + COMMAND ${CMAKE_COMMAND} --build ${PROJECT_BINARY_DIR}/build_cuda_example +) + +############################################################################### +# Intel C++ Compiler +############################################################################### + +add_custom_target(ci_icpc + COMMAND ${CMAKE_COMMAND} + -DCMAKE_BUILD_TYPE=Debug -GNinja + -DCMAKE_C_COMPILER=icc -DCMAKE_CXX_COMPILER=icpc + -DJSON_BuildTests=ON -DJSON_FastTests=ON + -S${PROJECT_SOURCE_DIR} -B${PROJECT_BINARY_DIR}/build_icpc + COMMAND ${CMAKE_COMMAND} --build ${PROJECT_BINARY_DIR}/build_icpc + COMMAND cd ${PROJECT_BINARY_DIR}/build_icpc && ${CMAKE_CTEST_COMMAND} --parallel ${N} --exclude-regex "test-unicode" --output-on-failure + COMMENT "Compile and test with ICPC" +) + +############################################################################### +# test documentation +############################################################################### + +add_custom_target(ci_test_examples + COMMAND make CXX="${GCC_TOOL}" check_output_portable -j8 + WORKING_DIRECTORY ${PROJECT_SOURCE_DIR}/docs + COMMENT "Check that all examples compile and create the desired output" +) + +add_custom_target(ci_test_api_documentation + COMMAND ${Python3_EXECUTABLE} scripts/check_structure.py + WORKING_DIRECTORY ${PROJECT_SOURCE_DIR}/docs/mkdocs + COMMENT "Lint the API documentation" +) + +############################################################################### +# Clean up all generated files. +############################################################################### + +add_custom_target(ci_clean + COMMAND rm -fr ${PROJECT_BINARY_DIR}/build_* cmake-3.1.0-Darwin64 ${JSON_CMAKE_FLAG_BUILD_DIRS} ${single_binaries} + COMMENT "Clean generated directories" +) diff --git a/cmake/config.cmake.in b/cmake/config.cmake.in new file mode 100644 index 00000000..9a17a7d7 --- /dev/null +++ b/cmake/config.cmake.in @@ -0,0 +1,15 @@ +include(FindPackageHandleStandardArgs) +set(${CMAKE_FIND_PACKAGE_NAME}_CONFIG ${CMAKE_CURRENT_LIST_FILE}) +find_package_handle_standard_args(@PROJECT_NAME@ CONFIG_MODE) + +if(NOT TARGET @PROJECT_NAME@::@NLOHMANN_JSON_TARGET_NAME@) + include("${CMAKE_CURRENT_LIST_DIR}/@NLOHMANN_JSON_TARGETS_EXPORT_NAME@.cmake") + if((NOT TARGET @NLOHMANN_JSON_TARGET_NAME@) AND + (NOT @PROJECT_NAME@_FIND_VERSION OR + @PROJECT_NAME@_FIND_VERSION VERSION_LESS 3.2.0)) + add_library(@NLOHMANN_JSON_TARGET_NAME@ INTERFACE IMPORTED) + set_target_properties(@NLOHMANN_JSON_TARGET_NAME@ PROPERTIES + INTERFACE_LINK_LIBRARIES @PROJECT_NAME@::@NLOHMANN_JSON_TARGET_NAME@ + ) + endif() +endif() diff --git a/cmake/download_test_data.cmake b/cmake/download_test_data.cmake new file mode 100644 index 00000000..1bb998da --- /dev/null +++ b/cmake/download_test_data.cmake @@ -0,0 +1,56 @@ +set(JSON_TEST_DATA_URL https://github.com/nlohmann/json_test_data) +set(JSON_TEST_DATA_VERSION 3.1.0) + +# if variable is set, use test data from given directory rather than downloading them +if(JSON_TestDataDirectory) + message(STATUS "Using test data in ${JSON_TestDataDirectory}.") + add_custom_target(download_test_data) + file(WRITE ${CMAKE_BINARY_DIR}/include/test_data.hpp "#define TEST_DATA_DIRECTORY \"${JSON_TestDataDirectory}\"\n") +else() + find_package(Git) + # target to download test data + add_custom_target(download_test_data + COMMAND test -d json_test_data || ${GIT_EXECUTABLE} clone -c advice.detachedHead=false --branch v${JSON_TEST_DATA_VERSION} ${JSON_TEST_DATA_URL}.git --quiet --depth 1 + COMMENT "Downloading test data from ${JSON_TEST_DATA_URL} (v${JSON_TEST_DATA_VERSION})" + WORKING_DIRECTORY ${CMAKE_BINARY_DIR} + ) + # create a header with the path to the downloaded test data + file(WRITE ${CMAKE_BINARY_DIR}/include/test_data.hpp "#define TEST_DATA_DIRECTORY \"${CMAKE_BINARY_DIR}/json_test_data\"\n") +endif() + +# determine the operating system (for debug and support purposes) +find_program(UNAME_COMMAND uname) +find_program(VER_COMMAND ver) +find_program(LSB_RELEASE_COMMAND lsb_release) +find_program(SW_VERS_COMMAND sw_vers) +set(OS_VERSION_STRINGS "${CMAKE_SYSTEM}") +if (VER_COMMAND) + execute_process(COMMAND ${VER_COMMAND} OUTPUT_VARIABLE VER_COMMAND_RESULT OUTPUT_STRIP_TRAILING_WHITESPACE) + set(OS_VERSION_STRINGS "${OS_VERSION_STRINGS}; ${VER_COMMAND_RESULT}") +endif() +if (SW_VERS_COMMAND) + execute_process(COMMAND ${SW_VERS_COMMAND} OUTPUT_VARIABLE SW_VERS_COMMAND_RESULT OUTPUT_STRIP_TRAILING_WHITESPACE ERROR_QUIET) + string(REGEX REPLACE "[ ]*\n" "; " SW_VERS_COMMAND_RESULT "${SW_VERS_COMMAND_RESULT}") + set(OS_VERSION_STRINGS "${OS_VERSION_STRINGS}; ${SW_VERS_COMMAND_RESULT}") +endif() +if (LSB_RELEASE_COMMAND) + execute_process(COMMAND ${LSB_RELEASE_COMMAND} -a OUTPUT_VARIABLE LSB_RELEASE_COMMAND_RESULT OUTPUT_STRIP_TRAILING_WHITESPACE ERROR_QUIET) + string(REGEX REPLACE "[ ]*\n" "; " LSB_RELEASE_COMMAND_RESULT "${LSB_RELEASE_COMMAND_RESULT}") + set(OS_VERSION_STRINGS "${OS_VERSION_STRINGS}; ${LSB_RELEASE_COMMAND_RESULT}") +endif() +if (UNAME_COMMAND) + execute_process(COMMAND ${UNAME_COMMAND} -a OUTPUT_VARIABLE UNAME_COMMAND_RESULT OUTPUT_STRIP_TRAILING_WHITESPACE ERROR_QUIET) + set(OS_VERSION_STRINGS "${OS_VERSION_STRINGS}; ${UNAME_COMMAND_RESULT}") +endif() + +message(STATUS "Operating system: ${OS_VERSION_STRINGS}") + +# determine the compiler (for debug and support purposes) +if (MSVC) + execute_process(COMMAND ${CMAKE_CXX_COMPILER} OUTPUT_VARIABLE CXX_VERSION_RESULT OUTPUT_STRIP_TRAILING_WHITESPACE ERROR_VARIABLE CXX_VERSION_RESULT ERROR_STRIP_TRAILING_WHITESPACE) + set(CXX_VERSION_RESULT "${CXX_VERSION_RESULT}; MSVC_VERSION=${MSVC_VERSION}; MSVC_TOOLSET_VERSION=${MSVC_TOOLSET_VERSION}") +else() + execute_process(COMMAND ${CMAKE_CXX_COMPILER} --version OUTPUT_VARIABLE CXX_VERSION_RESULT OUTPUT_STRIP_TRAILING_WHITESPACE) +endif() +string(REGEX REPLACE "[ ]*\n" "; " CXX_VERSION_RESULT "${CXX_VERSION_RESULT}") +message(STATUS "Compiler: ${CXX_VERSION_RESULT}") diff --git a/cmake/nlohmann_jsonConfigVersion.cmake.in b/cmake/nlohmann_jsonConfigVersion.cmake.in new file mode 100644 index 00000000..10910859 --- /dev/null +++ b/cmake/nlohmann_jsonConfigVersion.cmake.in @@ -0,0 +1,20 @@ +# This is essentially cmake's BasicConfigVersion-SameMajorVersion.cmake.in but +# without the 32/64-bit check. Since json is a header-only library, it doesn't +# matter if it was built on a different platform than what it is used on (see +# https://github.com/nlohmann/json/issues/1697). +set(PACKAGE_VERSION "@PROJECT_VERSION@") + +if(PACKAGE_VERSION VERSION_LESS PACKAGE_FIND_VERSION) + set(PACKAGE_VERSION_COMPATIBLE FALSE) +else() + + if(PACKAGE_FIND_VERSION_MAJOR STREQUAL "@PROJECT_VERSION_MAJOR@") + set(PACKAGE_VERSION_COMPATIBLE TRUE) + else() + set(PACKAGE_VERSION_COMPATIBLE FALSE) + endif() + + if(PACKAGE_FIND_VERSION STREQUAL PACKAGE_VERSION) + set(PACKAGE_VERSION_EXACT TRUE) + endif() +endif() diff --git a/cmake/pkg-config.pc.in b/cmake/pkg-config.pc.in new file mode 100644 index 00000000..d36317f0 --- /dev/null +++ b/cmake/pkg-config.pc.in @@ -0,0 +1,4 @@ +Name: ${PROJECT_NAME} +Description: JSON for Modern C++ +Version: ${PROJECT_VERSION} +Cflags: -I${CMAKE_INSTALL_FULL_INCLUDEDIR} diff --git a/cmake/scripts/gen_bazel_build_file.cmake b/cmake/scripts/gen_bazel_build_file.cmake new file mode 100644 index 00000000..e754d387 --- /dev/null +++ b/cmake/scripts/gen_bazel_build_file.cmake @@ -0,0 +1,24 @@ +# generate Bazel BUILD file + +set(PROJECT_ROOT "${CMAKE_CURRENT_LIST_DIR}/../..") +set(BUILD_FILE "${PROJECT_ROOT}/BUILD.bazel") + +file(GLOB_RECURSE HEADERS LIST_DIRECTORIES false RELATIVE "${PROJECT_ROOT}" "include/*.hpp") + +file(WRITE "${BUILD_FILE}" [=[ +cc_library( + name = "json", + hdrs = [ +]=]) + +foreach(header ${HEADERS}) + file(APPEND "${BUILD_FILE}" " \"${header}\",\n") +endforeach() + +file(APPEND "${BUILD_FILE}" [=[ + ], + includes = ["include"], + visibility = ["//visibility:public"], + alwayslink = True, +) +]=]) diff --git a/cmake/test.cmake b/cmake/test.cmake new file mode 100644 index 00000000..7105b97c --- /dev/null +++ b/cmake/test.cmake @@ -0,0 +1,273 @@ +set(_json_test_cmake_list_file ${CMAKE_CURRENT_LIST_FILE}) + +############################################################################# +# download test data +############################################################################# + +include(download_test_data) + +# test fixture to download test data +add_test(NAME "download_test_data" COMMAND ${CMAKE_COMMAND} --build ${CMAKE_BINARY_DIR} + --target download_test_data +) +set_tests_properties(download_test_data PROPERTIES FIXTURES_SETUP TEST_DATA) + +if(JSON_Valgrind) + find_program(CMAKE_MEMORYCHECK_COMMAND valgrind) + message(STATUS "Executing test suite with Valgrind (${CMAKE_MEMORYCHECK_COMMAND})") + set(memcheck_command "${CMAKE_MEMORYCHECK_COMMAND} ${CMAKE_MEMORYCHECK_COMMAND_OPTIONS} --error-exitcode=1 --leak-check=full") + separate_arguments(memcheck_command) +endif() + +############################################################################# +# detect standard support +############################################################################# + +# C++11 is the minimum required +set(compiler_supports_cpp_11 TRUE) + +foreach(feature ${CMAKE_CXX_COMPILE_FEATURES}) + if (${feature} STREQUAL cxx_std_14) + set(compiler_supports_cpp_14 TRUE) + elseif (${feature} STREQUAL cxx_std_17) + set(compiler_supports_cpp_17 TRUE) + elseif (${feature} STREQUAL cxx_std_20) + set(compiler_supports_cpp_20 TRUE) + elseif (${feature} STREQUAL cxx_std_23) + set(compiler_supports_cpp_23 TRUE) + endif() +endforeach() + +############################################################################# +# test functions +############################################################################# + +############################################################################# +# json_test_set_test_options( +# all| +# [CXX_STANDARDS all|...] +# [COMPILE_DEFINITIONS ...] +# [COMPILE_FEATURES ...] +# [COMPILE_OPTIONS ...] +# [LINK_LIBRARIES ...] +# [LINK_OPTIONS ...] +# [TEST_PROPERTIES ...]) +# +# Supply test- and standard-specific build settings and/or test properties. +# Specify multiple tests using a list e.g., "test-foo;test-bar". +# +# Must be called BEFORE the test is created. +############################################################################# + +function(json_test_set_test_options tests) + cmake_parse_arguments(args "" "" + "CXX_STANDARDS;COMPILE_DEFINITIONS;COMPILE_FEATURES;COMPILE_OPTIONS;LINK_LIBRARIES;LINK_OPTIONS;TEST_PROPERTIES" + ${ARGN}) + + if(NOT args_CXX_STANDARDS) + set(args_CXX_STANDARDS "all") + endif() + + foreach(test ${tests}) + if("${test}" STREQUAL "all") + set(test "") + endif() + + foreach(cxx_standard ${args_CXX_STANDARDS}) + if("${cxx_standard}" STREQUAL "all") + if("${test}" STREQUAL "") + message(FATAL_ERROR "Not supported. Change defaults in: ${_json_test_cmake_list_file}") + endif() + set(test_interface _json_test_interface_${test}) + else() + set(test_interface _json_test_interface_${test}_cpp_${cxx_standard}) + endif() + + if(NOT TARGET ${test_interface}) + add_library(${test_interface} INTERFACE) + endif() + + target_compile_definitions(${test_interface} INTERFACE ${args_COMPILE_DEFINITIONS}) + target_compile_features(${test_interface} INTERFACE ${args_COMPILE_FEATURES}) + target_compile_options(${test_interface} INTERFACE ${args_COMPILE_OPTIONS}) + target_link_libraries (${test_interface} INTERFACE ${args_LINK_LIBRARIES}) + target_link_options(${test_interface} INTERFACE ${args_LINK_OPTIONS}) + #set_target_properties(${test_interface} PROPERTIES JSON_TEST_PROPERTIES "${args_TEST_PROPERTIES}") + set_property(DIRECTORY PROPERTY + ${test_interface}_TEST_PROPERTIES "${args_TEST_PROPERTIES}" + ) + endforeach() + endforeach() +endfunction() + +# for internal use by _json_test_add_test() +function(_json_test_apply_test_properties test_target properties_target) + #get_target_property(test_properties ${properties_target} JSON_TEST_PROPERTIES) + get_property(test_properties DIRECTORY PROPERTY ${properties_target}_TEST_PROPERTIES) + if(test_properties) + set_tests_properties(${test_target} PROPERTIES ${test_properties}) + endif() +endfunction() + +# for internal use by json_test_add_test_for() +function(_json_test_add_test test_name file main cxx_standard) + set(test_target ${test_name}_cpp${cxx_standard}) + + if(TARGET ${test_target}) + message(FATAL_ERROR "Target ${test_target} has already been added.") + endif() + + add_executable(${test_target} ${file}) + target_link_libraries(${test_target} PRIVATE ${main}) + + # set and require C++ standard + set_target_properties(${test_target} PROPERTIES + CXX_STANDARD ${cxx_standard} + CXX_STANDARD_REQUIRED ON + ) + + # apply standard-specific build settings + if(TARGET _json_test_interface__cpp_${cxx_standard}) + target_link_libraries(${test_target} PRIVATE _json_test_interface__cpp_${cxx_standard}) + endif() + + # apply test-specific build settings + if(TARGET _json_test_interface_${test_name}) + target_link_libraries(${test_target} PRIVATE _json_test_interface_${test_name}) + endif() + + # apply test- and standard-specific build settings + if(TARGET _json_test_interface_${test_name}_cpp_${cxx_standard}) + target_link_libraries(${test_target} PRIVATE + _json_test_interface_${test_name}_cpp_${cxx_standard} + ) + endif() + + if (JSON_FastTests) + add_test(NAME ${test_target} + COMMAND ${test_target} ${DOCTEST_TEST_FILTER} + WORKING_DIRECTORY ${CMAKE_SOURCE_DIR} + ) + else() + add_test(NAME ${test_target} + COMMAND ${test_target} ${DOCTEST_TEST_FILTER} --no-skip + WORKING_DIRECTORY ${CMAKE_SOURCE_DIR} + ) + endif() + set_tests_properties(${test_target} PROPERTIES LABELS "all" FIXTURES_REQUIRED TEST_DATA) + + # apply standard-specific test properties + if(TARGET _json_test_interface__cpp_${cxx_standard}) + _json_test_apply_test_properties(${test_target} _json_test_interface__cpp_${cxx_standard}) + endif() + + # apply test-specific test properties + if(TARGET _json_test_interface_${test_name}) + _json_test_apply_test_properties(${test_target} _json_test_interface_${test_name}) + endif() + + # apply test- and standard-specific test properties + if(TARGET _json_test_interface_${test_name}_cpp_${cxx_standard}) + _json_test_apply_test_properties(${test_target} + _json_test_interface_${test_name}_cpp_${cxx_standard} + ) + endif() + + if(JSON_Valgrind) + add_test(NAME ${test_target}_valgrind + COMMAND ${memcheck_command} $ ${DOCTEST_TEST_FILTER} + WORKING_DIRECTORY ${CMAKE_SOURCE_DIR} + ) + set_tests_properties(${test_target}_valgrind PROPERTIES + LABELS "valgrind" FIXTURES_REQUIRED TEST_DATA + ) + endif() +endfunction() + +############################################################################# +# json_test_add_test_for( +# +# [NAME ] +# MAIN
+# [CXX_STANDARDS ...] [FORCE]) +# +# Given a unit-foo.cpp, produces +# +# test-foo_cpp +# +# if C++ standard is supported by the compiler and the +# source file contains JSON_HAS_CPP_. +# Use NAME to override the filename-derived test name. +# Use FORCE to create the test regardless of the file containing +# JSON_HAS_CPP_. +# Test targets are linked against
. +# CXX_STANDARDS defaults to "11". +############################################################################# + +function(json_test_add_test_for file) + cmake_parse_arguments(args "FORCE" "MAIN;NAME" "CXX_STANDARDS" ${ARGN}) + + if("${args_MAIN}" STREQUAL "") + message(FATAL_ERROR "Required argument MAIN
missing.") + endif() + + if("${args_NAME}" STREQUAL "") + get_filename_component(file_basename ${file} NAME_WE) + string(REGEX REPLACE "unit-([^$]+)" "test-\\1" test_name ${file_basename}) + else() + set(test_name ${args_NAME}) + if(NOT test_name MATCHES "test-[^$]+") + message(FATAL_ERROR "Test name must start with 'test-'.") + endif() + endif() + + if("${args_CXX_STANDARDS}" STREQUAL "") + set(args_CXX_STANDARDS 11) + endif() + + file(READ ${file} file_content) + foreach(cxx_standard ${args_CXX_STANDARDS}) + if(NOT compiler_supports_cpp_${cxx_standard}) + continue() + endif() + + # add unconditionally if C++11 (default) or forced + if(NOT ("${cxx_standard}" STREQUAL 11 OR args_FORCE)) + string(FIND "${file_content}" JSON_HAS_CPP_${cxx_standard} has_cpp_found) + if(${has_cpp_found} EQUAL -1) + continue() + endif() + endif() + + _json_test_add_test(${test_name} ${file} ${args_MAIN} ${cxx_standard}) + endforeach() +endfunction() + +############################################################################# +# json_test_should_build_32bit_test( +# ) +# +# Check if the 32bit unit test should be built based on the value of +# and store the result in the variables and +# . +############################################################################# + +function(json_test_should_build_32bit_test build_32bit_var build_32bit_only_var input) + set(${build_32bit_only_var} OFF PARENT_SCOPE) + string(TOUPPER "${input}" ${build_32bit_var}) + if("${${build_32bit_var}}" STREQUAL AUTO) + # check if compiler is targeting 32bit by default + include(CheckTypeSize) + check_type_size("size_t" sizeof_size_t LANGUAGE CXX) + if(${sizeof_size_t} AND ${sizeof_size_t} EQUAL 4) + message(STATUS "Auto-enabling 32bit unit test.") + set(${build_32bit_var} ON) + else() + set(${build_32bit_var} OFF) + endif() + elseif("${${build_32bit_var}}" STREQUAL ONLY) + set(${build_32bit_only_var} ON PARENT_SCOPE) + endif() + + set(${build_32bit_var} "${${build_32bit_var}}" PARENT_SCOPE) +endfunction() diff --git a/docs/Makefile b/docs/Makefile new file mode 100644 index 00000000..35c30dae --- /dev/null +++ b/docs/Makefile @@ -0,0 +1,45 @@ +SRCDIR = ../single_include + +all: create_output + +########################################################################## +# example files +########################################################################## + +# where are the example cpp files +EXAMPLES = $(wildcard examples/*.cpp) + +cxx_standard = $(lastword c++11 $(filter c++%, $(subst ., ,$1))) + +# create output from a stand-alone example file +%.output: %.cpp + @echo "standard $(call cxx_standard $(<:.cpp=))" + $(MAKE) $(<:.cpp=) \ + CPPFLAGS="-I $(SRCDIR) -DJSON_USE_GLOBAL_UDLS=0" \ + CXXFLAGS="-std=$(call cxx_standard,$(<:.cpp=)) -Wno-deprecated-declarations" + ./$(<:.cpp=) > $@ + rm $(<:.cpp=) + +# compare created output with current output of the example files +%.test: %.cpp + $(MAKE) $(<:.cpp=) \ + CPPFLAGS="-I $(SRCDIR) -DJSON_USE_GLOBAL_UDLS=0" \ + CXXFLAGS="-std=$(call cxx_standard,$(<:.cpp=)) -Wno-deprecated-declarations" + ./$(<:.cpp=) > $@ + diff $@ $(<:.cpp=.output) + rm $(<:.cpp=) $@ + +# create output from all stand-alone example files +create_output: $(EXAMPLES:.cpp=.output) + +# check output of all stand-alone example files +check_output: $(EXAMPLES:.cpp=.test) + +# check output of all stand-alone example files (exclude files with platform-dependent output.) +# This target is used in the CI (ci_test_documentation). +check_output_portable: $(filter-out examples/meta.test examples/max_size.test examples/std_hash.test examples/basic_json__CompatibleType.test,$(EXAMPLES:.cpp=.test)) + +clean: + rm -fr $(EXAMPLES:.cpp=) + $(MAKE) clean -C docset + $(MAKE) clean -C mkdocs diff --git a/docs/README.md b/docs/README.md new file mode 100644 index 00000000..b39d54e0 --- /dev/null +++ b/docs/README.md @@ -0,0 +1,20 @@ +# Documentation + +## Generate documentation + +Note on documentation: The source files contain links to the online documentation at https://json.nlohmann.me. This URL +contains the most recent documentation and should also be applicable to previous versions; documentation for deprecated +functions is not removed, but marked deprecated. + +If you want to see the documentation for a specific tag or commit hash, you can generate it as follows (here for tag +`v3.10.2`): + +```shell +git clone https://github.com/nlohmann/json.git +cd json +git checkout v3.10.2 +make install_venv serve -C docs/mkdocs +``` + +Open URL in your browser. Replace from any URL from the source code `https://json.nlohmann.me` +with `http://127.0.0.1:8000` to see the documentation for your tag or commit hash. diff --git a/docs/avatars.png b/docs/avatars.png new file mode 100644 index 0000000000000000000000000000000000000000..25429f34aa1ebaf1f30c9c3e6096960098d06236 GIT binary patch literal 1703752 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≶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 z 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%0DC&eI; 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

gAQCLIi^lxPFVNpP?M48rKT+= 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%0D7+Hxhyx%MC@J-4!K*Nhkc&0)~P)YUQ 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

*v1T9`X7v?p_D(q&xhczuI2WaC5QV`Qqm> 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�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%0DNycO$2CUre|XAGzOZ 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

kP^DT?#HU2+({_p4e|JL6Bxi$W8 z@6DSp1CAd#)+oX#@X_wfdHtGqoBRJ<_+9rP{@;81-?sO^J2MD4{XZT5=ZbvYo80i>tc6`~J^!<@-KgyZv5eE>lQHUAYPj_Fw7k1aLdqPz2v0JxZCHLEYUAn&JZ?gRF!`J=h`c7JNc_x#XnA?$6TK)32 ze-7LKIc)#Ec>jYr#+{WP?)~2XVXOW-+u!du>%@pjKi%kR^^=p4^;MdC=!Yrl)0{bY z&P>`aEX?$KjqW;)=JJkRSF=ik{Mi8o$o{eqh@qvRIJeNRFPu?xcvk z^;zaW{(aw{|2A3rg|^%~4z_Q02@^z~psm~K7Z}*Yj4=jAK_=;By6|M%nm&)xOU zw^`@?54Zone&3&?$J>rJG)xIQb3jM_$AR`;bI*O>_uck=&Gp0cfBaCl`#n>ir@c9C z^WC>)QoXI`Yrb*UKeqoVE&uDn`jTD2iywa2`P{GmRloi3o#$(Slo$q!i0-lv8m16mktQbXf;*ki^-JbwhHgBeJrzB8E@dfnD>%=sMs_u$IStJlx7Hh%HlDzZ4+V8b=Jx$}2F zeKB$IX?8ySbEThpX3qWQefNy)o->+j64RGRWTbxvy{ks1D&i|if^Y?yV{{L0{@00&utT+5TxBTwX z-kmG{3SJ9$W^Q1RRA`y-bm#Yn^8Xjl4~^n3p0za7ELgw4$t%-=&#~_N;`$%a@;_zQ zmTtZ|W9H0m)BESzl-v7izkQDX8D0N+|IX+0s_ULF-v9fP_j(?8*FEoT@{cWzfAEN- zMA66B_ip+B+S$^t-&efIwYJ_H|MLO+xwZ3dSFf7S)7ri6k7~2aG2#EJhm-br+vZxX zpAxlu!!gfI1qqhf-TYI3EZP*BHOq6>krS%D&9}Q2B$n8F9<>t4+$JUXdSZIz`s>?U z<@?%n@^(#LX=7jTVOccaJ=I3j&Ft&;PVwArrq9Hb72dJ^pF!E9$KgE^P5vdz@6Hp7 zUX!=)+sE^JZ@evAHe2>}&HC%op{e;6r%IU^{np1gJh8|Aj7_|* z<*T+iaGEk`xXhV7JL{S6Qfak|o|7~tYs}4b^=RQ(5}?`Zr5O^Xn)0cvT+8=!+UCwF zmJVWpUX{`FZ2o%Hryt%>ka|%(p?kyTTOLuKw_;YitzVPF?^9eH@@2+kw{3Nao2|Fs zv95l2;OyVTX?bBwou(_)yqxRi-HSO|Lt`du@Ub@VH#a+O8C3c z#O}LlP0acNnTYJeiaS<$&5l)g?DEO4N%6&+i?4IzBi?fIou7B_+~+G9ml~P9-mI_L zsIsYz;Yu)XufBv&T(rIU_4*!E=g?WLOfIsp{)!&LJXRM4o(ux zu^hr|u@R@2RIiRc7sb0oD0#2@qnRt;g=m{b31&WE=o4iyog8QUT)M?tA^2Ej>SxCOF3eu z9u{&*o?yska?7T0Z||wni%(_OwYTC`P^(SV{Kq;Z*FURH&_3x-`3f@sX~`l%rsZ178DOzoLRn&<$|TU zQm>AA@3qV4=S_Z-wEeQ^u(P7A&*7fj@6wB%6gU}0oXal9}qYOa`4R*-@K z({j%wp=1-=|94K$3{&rui!)INV?rVxK5D zU6N5a`QM}d|E_`ycb#7T=S%$m)$+f3`#n|&RvPjZ?BweWe{2!q`pT}LkS)xkV@68n zHMeY0=Ptz!#frY3EL*P4bACF9yHsWJF~(DORo{M`y=qJOy`smy>V6?pLr*a{M24OA z_Wpjq`h57jnnyz0KM2h^|1Nu7zxl`XvRoYonZxsTpXFr{IB=?s;lQ4A~XF;;_}`qX&$w-v>=Ln`CnG>*nXDir3rz z+qV1ty!Z%<+E*n{-OllDRgyU`BjmlA!8sw(q3iAPSL_)=bJI9GHVCg<`Cdek(P_E$ z-yg!~&y*}rTRy!?v?0)C!PKx>6I6VSgWO)4_|CF2^wM4%ytMd0f>G(eKgaa{ezSj{ zJJ+`Q*HnG`Pdj%pKbbLK*D6>dT-1@#z)QNvHKC&=iY18YL{gTMi>b7+)@j0Y!e=p;)m-MaHC|2j zwa@N6m;d=EzV5qir{D6ZSiXD9GZ$supPt!>zXN@jKX--|jYh<-BAnDhO zUC+-*C}qbc^vOhMg+_<|+v)%3+gkU@zwdu~(E3^1+xv8CWKP~%zINuNvW^o9B_<#D zxoFThp;=*)LBWI>j0VRPlvaAwDBXIo#q?|E`Pzr+b-#|kx2>w4U#zlb`s4>4A(LL} zWE%-D7CNv=!|m|Gpo)iQuC?2J(BAv?@)V7<`58`Umhk0p_s-Q|bUSdPE{I{~qY{~w zKR6;I^u#LJ9`1g>OZoh+b6aI0`fVV?m%Q|8f`P*gQ~CI^Cm%ar@mJUXYv2F> z+3b9s?xrh8MLQ$6m_5E&vGdsbYoAV^S!Kn#Q#)`^wc`$zJ4_0P_TDR7eR<6)AqIwn z*4ZVmoC@Z3_84Yz*s)Dhy6v0b=-|4lBz2O;(twuEE!P@O2?TM-H99geWoSG0T7FY{ z8PxNKgMq{M3y*=&tfYh>t=V()&YnBhx9XvCe8rRQ_+LTht+V@NSK6d!9(&Y${lvbj zS!ymTJ*OCY&JvPzSh_XrRD)XJtChu}@|TW8i}9WDTA8*vlSAj({GWfOubw+S?b*Kf ze|Ao7{V6HnC$x6!J%ibM|G9Ofs3<5Ip5ZroXxwC#6Fv2u)%sq~O+GW44Jz2ZG8emt zaxQVZ_V=Ou|BLnC!u!Ru|4zD?vNJ<#6_<-q?xiIw=A>Vq@L=_(>ls_zoqv94uX}q` zT+aWpi4%j$x3bwPMh}&u*ZO>6dG%>mgpc6#YL|}2TR%?S|F&(r%X^z$x?YJKi>=>R zeR%(O@BZKS|6Tv@TweCe=;;g|RvG0ty@rL?dP2W>2`-XY{Mi5AZ;2;YqZFA0r?{F* z@E%TeHJk4DUunhEcVElp{;dPG9_lhoq+I%zRy}ibY>L%8rONUAWMNt6wl{5OkAC#= zVswx&f9bU6#4bK1mnY5_Iy1MK|xlFxK3yo zeYskESl9OMsdm>$#ZA|4Ni-`t^{%gbdsP4b$M$>Q@4bIra!XuqO+kS-J6}$2o>=J3 zw`BsE7BW4jWLx*K^}3f8IyfbDnr@r8SzRSF=`=7sov*s-Zh z<}X9q%FC8tiNSRGSo0B|quNk;&hFGrM?Qp3=eA?06>XOV!@3 zXLVo4>Kxs3>5b%S<@aB<%k6l7@Ba_=|6Gm@5ovp~r_Q+ZX{q(0bu<5N^4?eTxZ~rj zH{lAmN z&%@+*z2E1yDu35Qwxv`2c-XJ0g?b4u5pmH>6-qAA+A6GjOv16^P0s(CmC?T6ZW)Mo z8Y)dnjWpdf|M#VEyIyehtzp%EC`o(ul&&vR4hdzi<23vvo&C^n`R|qb^|e*Iey`iUw>C9-a_%}I zS1;|QQZqGAD^|STlXvc1&8y(~6<;p;t8rdsZ01~2ektw8q@BUXzGpu5Jg{nR?J9Y? zck9vb`<~CW|0Z5%(q=Gq(djSYuQ<}yo_TD#>Rf%S;R>~z8w)2`vHd>2PoU?0%^nwq zCXGX9*SR&bnM$QKA0G`T#sUB7rPd;)oKOf!eW@c*o_oMx4Y;x33N_TdZuvTAnV*26U+PeZLvD@d`eSdXjYJy z=2~8+ey;B)l;i*Q^8ddSyZ!FhbM5>6U6S;#nfRWcXKOCQ*C%g3Z`sRRw`N_Fn#ho1 zATedzs#RKNC&gUMu-J64+2xjx-s!|?sw+e{v!n%aaYVW>XDyv;aX4$0>F?X}ze{#s z-SvIjZ?h`p)LB9&6)a6APZ9XtJh#98(dqd=-^gp$7H;h8;ZZWIsQ7uh&p2}0)6bu| z&xYNO+P-avUT8L_LgehMir;<&Ku zO!N$iz+)26o#(wQ+r4<}GX=NjZ~c~QwCO0TTv{^GC7XxQF(AM~gJta&$0KLY`o34L z6_%Ujdw#v>M#hp=CP{2Bjf=&VhC+RtCl!XhJGRD2tE>TsX()LgqoNbtFgX3&Z$K}`qN zbTFCklK(Te|E%9uf0><`rJDoP`0W%DALd+oF(Q zp%BB%52G6V8Yqeuz-Q7*+BEs zF&X=+FaJN9*FOrce|xy!_M42cO6H+}?`yk!94n`7^w`odr&zII@kN1z*E&kS1b#K! zHRR;v+<4Gy=B3$_x_qOSc&mcmB%4)ik+b&wmF53;;QQX+Ck{HhhE6ivIDdYSg!Lw0 zozgqGx8kMV@4vLHYu$tsDm{I>4P$q3FA)72AS~f)_ap7vsY_cVM7<`iJvDdkSvO^Q z9v4lHjAUhg2B)A|CX2$X7!p4iO3BSwI(upH-JH_HN@_ZMflSPXOkUgXUK2XT8P}tG z^Xj()(^40xoRnU6HA^6ITH2`<)8i}cc6_+d%x@}Hx&5+j;h!S~H{R#2GnJA(e=lnF zmTNkO3s)t%ZQCd7vxQG#|F4_JZ?)&mdbO>5+xE>i*If=jGc(kwKxUF1LRjSaPCzzNu7b=sc^^th~H+H?tUd0+w9OTAIn$aBUaU>ayLYrlwnW zZhbi?+=HvoWYr`UW3|q?&y)Tr?vq=)b*q?wbmpb+SNH$?%Kvxn|3CI|Gc5OPjEoTD zpI|1neqP;I{(m3Jebp*&N%p#F@GN3@Rkuo*Uw_}}lYiPdT()f8yL0Es27&bSb<(Qb zlbp_;(_A?1Tr|H;fqX;zjGluMH$?F;M<@2`RzZ9R(&w00F zmCSGTO}F3VnMQxVUwpq>?%%rTyuGc=;@d8@xkz{_Uh6&O$|35rrEL4W_-Fs#rLxA# z$n8${4R7mYahb@(;Ce-#r@U(K&7GD@Jv6^4=H%uYde2f?6ml)?oTpB1*OT{3oCS(! z?j?R;OS!V$e_upl!qitU&-s|Xk!;G_p6kuC?t&?MBZITRk;I2{kCrW;{d8xTRmJ+r zErPrkzkKP@UVV1$+t1n7d*9|Z78T~jt-9v7{(fEthvRZiwFO(4jz~ODOXQoQu{Tm= z|EG)RYim<~tN;6Sck#mj>1K|@7dKqZZ1&i{!GCX2;@_>uZw24Ae!pwBh-9)>_CyU| zk4&cn2PS1aZr;0L(rn&@|75 zr6iW;h@!y5D9BfYao4@;ITk>i4>G72x&uFjTSCyE%cGJ0^4Nb0rW)lwVUZgeo z$`N&YYtz!(XU%owBVwXvo!=DFBx7CoWG?^y}|8Si;Iu* z$y*jaI&$YvOj6HUErx(o0$PlnI<`uT94X;RR=-yM_We2C(ltD<*mFm4%Jl|C2ESf5 zMwO+l{`0MFzAT%(Ch@dUP@T)|^HJU&Em|ipFVYB5IX(GeK}KZFhXX!`WF{v$+|uAX zcY7iOzq@rE2N#R!OU^Y77dVzVu5wd8x!G;euu36dH+S}R-?g3U zelWNHaQXkm^BFTs8SDQx@2`AzW@YP9SI!qVRXrD3&7HfJcU|%v8BI~W_R4b#?w=`UYPqTH`is~l^q)m+dNtiq(-(KSlQ^}l)%>Nmi?`d zSzv?OVVR_Ri5Ko)yH)W#AoG%EWK_+Q?)hEsGv^#zxqfk9djIqjKdO#RulQ)(6JJ#F zAR^+}6Q}7HXTFhp{jp*9M%&UGrTRCD_tviU6Ym%P{_CRsf8%hw7q5$A1>A=xflRX;>-yHY(@?(+Pd$~`$y{|vKWOFX>cm5;4qlf*(uHLO@Iq%XgKv;l39HkaT`|+m)h5q+Fyq?fyIp$IUr#?V zLyk%R?3@ACg~^bb2j4z1GS7{;J2XH#)|zzI9~V&OcTyhSxIR z{qxI`h&`jwH+80dQhDHn6!S-2GZ!w?n30g2FiEXNyLbM_+W1v(J60TPJbF6MpZTAr zS+9#)!zo+Vhf>$|AFW@-)Ux8+e^G}+EuYffb02t;wfnH?x_IFS>vX2e`SjZV6%!=NTBJD3QvZ0TOrO=wp`_@vCUaNP z)0r-F)txzx=lyzDuGvww@|@9%2O1YGt8*R1@qUQy+D z=FgJHv2MQCUtB+3ZobrdXK4%l#Z-0iaH{BN~>e_I?;Oes9dH1VX>bm>ZtJk<18b{>sJ=!)9vKGpR+h>b{I`@DS4UG z9>NeF>dF;oMkJAO(d)~B7io3(8X0vN|IfKAD#ls3p zOBTJCna*v>nByz+^u|uzu}_i6cEry0lV*V}AsaN2Y1t2A$B)BPDuLXJu69zLwO+`nG^ zRZXVhq0}wn&3X*gd0&FaMKyS3+q_s-+qacbrIz12P3r{q-UT%UG* z^L6vTKdkQQ#;$u*)Ozf?QC{Iz?%m=mWsjE$a~iZqJYYIhdPPoU+tS`(E92^V!~Y7q z3zS_%j>VWfj&bSmJDPG@;7`Qw|6h*RtUEnF>teXpuTHcDV(&~Us_ z{XVc^=ITW{r;An@>vlRW4lua3`qa8};=)Vk_blaH^T23&!kd470-|9QJ#Z#s`{ z2NxXr8u~z}a<2d5U(UNVqz)WECJ+#9oxC|^6K9-I)nSRJM;3@|vs#;!yj-Kp#Mk_~ znUm^+%Ghi!FW7bChGg%#{5AK>@8@pbe0lG^2F~aHGBa&=sQ4Icd!sy; zlObVCi-X!<@fL;y-5hVW9Z%W6prdB@{f~9w-+TiDdU(Et&tu9iTeO;6X@!S$jvN5$V&|Hx(UlXZ5DN!Hx3%y`KSxiBSX zLFR;<1hdE~$8s_@uoo-z#XqS_ypaF(_FerDdCAS|)-HIgcdT08nEJ{$lW}j;kxF3O!4>C`QO}fn>=6d2#|g#!KqZP zC})tiyW-MQ1{aNmpO>GTQ}^j-R{Di=MLd(zpM5x(tmY~4^3cwySGlu8UtX^|eD+{L z!c8OAhR?5O_t!18D9Wi^bybSjJ^Ok1tl+ul?({HptT5c-xI?dJ?+o*f&>a(}_@xA` zVR$8Uhr8>?w>#fWmdmf=Owku-(lht}AAjiT_A`|SRzBUo;PTPEA|ebe>)N(B3fkYT zNLQ~HNPPb~ePtNC{5}3v3=B++7vET(V2wz;wp#9Oc>K;&yl2er&tJjXxOct$!&e>) zvpJOZd_GvS%-inGM>dxOZyF!&*pZ*G^Z&OeebSR{@5?DgsLTJac{pd!zw6e1Er}|} zofy*6*clDe1-4d3nEd@Bh8a-Y-{rtx4DX{2Z&Fhq$e+ z_pbd{keZvkT*KVGEH_|X&h4*pfqP2QmR-&=d3a^zW%vBukr53HCz)M*_gA=2{;0F{ zZhz?y4u+)c-=`lMESfBNVCTle%pH@BVqR^2MrXOps0nZ5RlRS8ChCduFA z_A)r=w03Y;pTGZc-8wtZ#U1Gdzw;YA=lOqKSi4T1QHk@uxt?)s)Ew2<4~_abCHKGI zP|p<1VzqXbU|N5-^NKgp0e>|f+c5Y&NDW`7#8e_{%bvQePgG6SJM{_vY<>-uQd=+i5+SEQLOXl^?y-E(Wo5Fb6U+ z#Jst^{dj6z?!VvHeE)>cc`9vp{q@d&`D-WtJ!|y+yPeg(xZ?WvcN6cw{&lQxrLt_i z%EOL}7i_oIPns^ez+i*ss#BleygAdjv(@={{)|_87U``5BAQc|^q#x2g*BUf%iGqY z)j|RsqMw+z-`TP=m^XIg2Aldf&!j!H`mFF7idJzsbFz$4a;?l)|2x?d8gIehwV z=}x`r-F-3B#2;&a-4d;SXoh~Quz(XsC^Wyr`9QvV1jlZ{kK{4fa;;xf?RpPBQV9)OvFC3195;!;F zmGsMZ41ye68JtoYMW5};l{~dnM)vyCU3&^IPSbA4h*9?T4Kd=|#m!J~_QnAP9jA^P zCwE8Qk`PS|oqBCrSVrSEdb0r3rVhKl{b7LoeT}HKW@+iL!;cz&{yAYH!13_Lua(~F%CC4k7Q{8Puy7QVmxu_uPIz_Y ztK7y{tDic>g-<+imHn!z?Ab!cL-URweBJy_s_3lGHS_YT*B7bZQ8DS;c3sv+DT3EE zX}v3pkb~NWgK-holQmwMSbb*aPknpt*QuTEbW^xp?(%lTchvEUC8=Q^;C$wQ!NR+4oeqoC4^iif4GDK%o#?RA&1 zIKDkAUidZZW0cE}tc5`?rC%47E}0V2oZ9b^n!~7@6MsDQ54)Djf~!|WY*==BEqWj= zz{@2Nc=G7J3ecA-ShdgawyeNooJ~TXaIx-2{7OO=a21JVE{#c`d%RtGI(xvIczMNHI*R`MCZBfdyiHkiyQ8YiLd(r7^?*iCX8EtT_CNkb z%kB95@A&+RKd=2`BjR(*t@!WNznA@f=l+~{s{*mvoSwA4n8Zkzm!WEtZ( zuX-w7Kd~mC6Mt3X@MqmW1qH8lTN)Swl~p}X{(JUsyBJS<#<$3X4gbFGdZXWwVDiqK zp{Ft5N_JTv@0H`s3Q>hDIy%?9AAUHrLdB_QVfLLOV@3X_7s6a!mCdE{*i3@G zdv#84xzx=*O>Fsc_oE8urRPb`nSY>5&vF0T&FkK-nsvX~?Dejg>G=^R6WJIXqz*4! zsAlQncj@Q3FMA`4SBCR;2j0xvx=BYm)cJU#$tt$cmutQ%o+(+zb#UMMv|rYTr^mmF z-LYZwrhQv?e*Dn?mzDQn>-w6Dxo=}E%C#w1D*s5TA=dFzUQn#lIHi!xLcHWZXaZ7z_ z!NYd-gji~1=GyYM#cu1omuSsh9Wl4^n`L;PRdKPk`uTs?^#A`>kFWc8y9t6=|{u2We{Wj^1!7Iu64HuGz`Udr=7oz;Aq zf4BJa+so>Gb8qY_K9b5}67uv!hN%?qW*gPTyqWTQID*#xi1@7gZqdG7ITAiqtS2fq z?l{L&7<+HYi;Q>73``XT2ZFo3`OB84r(0JpJCifbfBUJgbN`(R&?^#-b_)U83){ z%=Qvw=P`Wg%F>`vHKT)RQN^=k$^5c51s;mk z0>^t8?%HI|&|G>Y>ZRE>_P7)at=xys6XxFA7UZS8dsWMUZ5!6DIw$(~-IX`S{`Oyg zJm0^i@|8~}`0%+DxmO9}Q2` zX3tzDJ^6jrEQ@&;lfUo$C_MAZsT1$=GtO+PxcQeu{LOETM0r>Dpqp2_{U&_Vt`=SL zWR}#Kx-IhCmu+}zu1FyZ8;Xj=Y(groy_|>CV5UDfee&bj|&5vGeDTXtC$~(R>vz5333?a2}MKnYlmb z#nRyHYnw~AN%UzHa6B!zpx<7*jkQInRq$$?w%&&MpP%kL`16_1YSXE#&d&M256dyW z^4o1`tJ?TFX#K~vk1Tdt7q;pbGP@*%zvsE>{5w$P$=%;RRSe(GTv1~B{qULcp}h6W zH9E9*^se13f8%|k;sk9!#dp)$*cfuo)@?VsyO%3nP(|bN-S-bZSp8z=C{V8s2n_zl zaGP`Cx<5Z1zkZn~a)CqQh}opsQqS1#Eq@YzAivkHx%7I6_ClHP*Zd#USOuLX?9BWc z%b(Kq&7(!J>3dOu=iY_0zGrt`TjD(7ar^tom>mb%mviV>mpQ%J!>`xDzg=c_w0@Vk z-&$>zZwqC3*XqYac6@)-yuK!sXZG4OYyjsbG`AxAZ z-wr4J&i-wy!{}(T!(M=cVbicZ0aUagk>SET>lnEPFaf1BUjx>6IVCXJ<~9$y}vJ+6ExL|}~};3{<(T^$@N$K2ZAc( z-kjuiIiqtmluvHzjbhQ16V;!YL_0VgA4|XE|Dbl1y&&$vCr^uc_DWOs-&708OY@W2 zDQ&zuxw(k@;Lyh}R7Dnd@(DS|9$ZV*lf*juNkLmgg|_ zvLA@Ea{9ela*v$+m(puIZ}h)L#__XXySIFQSbamMaEpIUv|>X_T>3xB_BPTsU3#_E#ZrHv0< z*R9?-?RX^P(qmo^^4{*xa(TZiW_osa8s{5^&YJq!9xuzR3p7r3%}icCZR3VgK8Kc& z?UQXQ&ig($+rC!UeeuG$-5U!3z41Q$?`-qIre!sSk~i27&Ye5AYD(`Tz~GpWz|gcYHQspd(Q}3ZzmLZVeQfc}sJcF3g>d5Umc#2$msZYoT6|Ezqayq8 zzHg5*idzi=mpCqw=xr+JU^w$;@AkgE>GB7RSuD4i7+*cLcB@CjBQL>=KZ{qVAKLjj zO8fcR?|uwrWxrNk{NmlMpR?}oq4jl7I!o=qrw7jYz6v4H(V5ejjT97DBw0*YSr-5N=z@wj z+Wvq3{QtFn|F;vt{`GHn7VFRDof;nHD*ssNdh}UOMJ93SMCC?_zp5f16*$ z{kY1xmk)l8e7q>*<~z;TA-593fA&sYYrH;{TYUzDh^L{}X(ov&LFYp6vCGS_pLWd2 z^w-%Y@0(J*m%npXUTMPa@00C63j5c-3f9lfKcjO;XixI{sZNQS?FY}u7yZ&c_WAVr zd4I0||8#%a(~Qc*R}0JU*8i?8*Oj%4U_IVg{(OIe%)=>#bL-BAm`pQV{CNI{$G40f z{;KO#to_Fj&K~^W^$Y$Fx>F=tZW+&tJZ!K|ZrQ#03}2;}xT!q%nb-C7k}_X=#I7w9 z+a2?t&s1M{)y(^I==w(jEHw`FL} zsTV2ejIyx!I{)2v{id5zwZE>O{Xg^Dt0l7AAO4-q9~1kb^uu>+_4&V&UjCJ<@#}bC zt8-@6cl$l%N(!GZ-4vfsZ%#hNsZ)bTYRvfYS+fSyZ*%l-YfY2_Uum0Z;g@y*;YC? zU8AZp>ll&_U#*QlVXmOm;WklChFNJ^;(1MhNF5E2uLu8@x%vqD zPI&mQ)2zZcY{DMCe|687ZYom!$f*>;e=hd%N-O@QdovW{D<`}(zftdCY`lp>D^RUK zVTpoMrS{=db1iKnEN!FWXYP7k=PA8z%_JSesEq{<7jBtsezRM??stCOGjFZ6M}Bc% z6Y^T&c5bJ_)N2kiGL}l-sE)t+>c_^%>utX;`fm5FN&J2F;YSV%sv+Ol*4O-9`E+)_ zzKq=qMkeE*U4Nx?V!mtOl8!g-F{05cYH#0t_xHn@i#yu?Rx4bwGWf>0PqoPR z-@i`&f~V`N>;AWyIoBNi%f96ro1p53uvu#tIHl`Wv@q=0n00>NG~F}l?0g>eB5SsW ziaHhCV`fqmTQUA+W%h}ujkq3UVMDI^x0(vD-@lDr++tM(TICyRI~ZXEV~2q zqh^W(zfr$mB>ya^<@Zwi+RceJ;g+Xg+fRRH^ZdZF#1_^mW*m>4FP!0%aI!Lyn`3wV_8rT*=WFlo)O@b9;EF8Iw^#Q+=Fab3 zf4Y2Efa-x`JZn}vaB*D7P?`I3%hiQ0)gP8!Y*|#a`uXbM^uGy54mNXSCNa1>gH~Zn~$Acw`Bq6)?)%4iU!f|`E<|A#?PyJd8TSw+O^#e6ATVDDqVprX3e7%9>}*o3v(S z={=j06BET*Z>e+!bsBn3QaPru!fkQwp9h~-lx+KQkj-V4XU@&)?Dpn^=f3qRWtmC2 z&91AT@Z_iL_d9QAG6qiUD&A?(vB0qMS_Xgn;;>ndPvp(Ds{Yp+e)?gDhhxGsfnZe~ zodZh33P($K>fK+Eq159M;F7b=Dr|PbT3*Lg&NSa=2Q~=qaj0jha}Q;G?z?x(iU<}3 zU!xNTy?6Zow_CpYH&PyK?2rMN(=r5(1>3Uwg){UGXE>* z-haRS=5~&abzdLvpC`M2@A3WD0>61P??2~uGrV-!{)s*YN?B`X&YUTlxi%e7JR`DDXySt=Gq$Z(g-;&%|2-=IZ|eQuF8SFr zQY|%~{yAY8e)ClIde5aCT_+;d6^lJIyjiSurhwJ)%U0JTT(@nzPqn@^{k@{AB9VK^x2z!kd^>xE z2d--xsvcjH?Ylj@&bq(ew@~ienoO59ho^^&pMS9DLY(VihUtbc_vl>|SeWK@l}DgK zX+>z%)aFGJM!ydlh~_T1>~~}4me%6p%+=ZMe*;1r7wT}SNl9(Bxoc}<{C#S$_M5rI zcBePHEjGS;O)fUSdbI?f=_IdUw-0(1z3zSUD_*_!-+9W|*vY`kx5R77?YVi2Z+^P! zp?yfj)Kl+KPT-q0Ii_OPE@#f@eEm?-{CPh^(jDbex+^B@#(rf;n)LI6Mcq^% zgLku2YGcDQuH>Zk2`;-oq3M^4eqD5b{aR-QowHiI!$Yfi9-c2-|IN!aVO8(x&$njO zvLBe&BNV<{MV?ErGgMzmXb%6m$nZ*Ysl0sF_l%;({^!pu()}|txGdn(n?>h+MP(X< z1m$BA&Q1Au$yop2zs2VrIHaYepBA(*1kWwY-sR}V`Ydq$dWO<@GhI?=<}G{KDWtU%;rKg);53~4i=8q6_7^qm7u)^@F$MT{BNH07gApYHkRPn>uYfH(Waw)>qP`vyLnCnwRgi^qJRIhE*=NoLgWQ_15`XMR|CuSmgjxEhqizSUObJopM zT&M3`Qd09`*m5m%);6nLrMWAn@pQ^GdrZhT6MM1iPrJI+w7u;DO0RmHuV{;jxy)Un z>*^)FeoNW4X@?tqg=}}<5DD%5b;!r-YOJrI>7`tCKKoBMg7ZIZc^;VqJc;gLcc?w{KNW_hxQtI5{Ds!=uyll8UtG z(}EqE_g?#{z4BMuS{M5-r<+f4Lx%x3ce?<0&#nWE1Vxi?(llnL9N#Ge3PfSKgJ^{{H8;q(z;1 z!>pMrHk~h2Gjd z^}3F~vl;c6!~_K$dNcpC=(#Su#@bMNB4-mfX9Dkcx$t^Lp`Fl)biX|^BTxZ=gT%CD# zK1(U5`X&QG!_DRML|PbTh3x5>QTfNrc60tFpIzY(pGI8ZJbqR6*8cAIrb@e0ua|QK z6svf@5$xiyc*on-(c;j#!bHNh`0%GoA+O&guWvc4o5Z@Jg`v53?!2XK^~E}xE((n6 z+@n(-h&0(ZN?pj`%c035!_X)q_@L#4sz=9t?X`;+y1N7({X64>clO$jEtiy-Hs+Rh z$YwW41h~u)UMh6ykVn^+OI?B7md|?(y)<9P$ap9T%!vJdvA&J>e3y)ke(w7pwHbtp z669?XVx24%=X^dWJaO5IzcMueQL!=d9cr(g7ljCL+9@P;6e#n>F*RzWUSNIh%;Dt4 zoxpG{WlE5eka*Xu#~lGo3VvP|*^^g3QxaEDN>fy6V{qvB(tE|YX0^BB{Rg{5w1dk< z-}WvKk?j9)YtG8$zfNW{D45w!y_+*Fxz5SuXrZm(Du2edju|GCn1WV>CS)!@dV62~ zPhsgdzmMM04bIEn@b^>Z6-`bCYr%#YpWQmwFO6eYTdKNAT>4%4G>hktuDqMm{qRcE zTMp3`2Nv!NS31ww>e8~MY2#9%CiAG>0&~7cX)-1VP7{a`U{n!hY7Sy?I&{x)QG(Z^ z02dqfR<6d521XG2!u+~pI@z9`FAatbRm3b=A4`G(FBwcPeV)X71iXG(C#4_SK#28Adi zMHZ*NHs6{X9U2?&L~6Ql$nea{SjnEo63}t(WA(kS7w#N-<8JrsV^V~gr;{A>B83GB z1%8SvOgMQi#!Sf zN*_PG-tX;_^!%FLFTri!qAy8%u}nz2_jzwxT3POtzZf9ii}>o)y3uI$3I#V zEB5M{x;b$Acv(K5tRl)Y)7f47qTm4pPD6pYX4pOLlQ^ykgy^S1>8T!c4v zC`c?7)ns&J;n&e<2$`BX@A>EA;^5%5X{)o>-hKH!EG%sGrKwA=s?AIYf9=(FLut;v z6I=}%ieKdaS82F;guf2_z}v+k;A{J(@A}b&dw=g@SaQ#mL9?vHp=H)X9<_4?Ce0iy zs=GEn-piPDMV2wZpskK0kTJtW)nh?`K%n4C7n8tQ#gmHW$yr^ie9`!AZ}E?dYY$Cl zTGO@ zBFA^-d^w}ENaW_J@~E@7^Y*ve?)h`-^oDI$v$l3^vM9;esnHdz?!TFXC1lZKrdFn? ziL%u#`5qeQSsz53Gu&Ij->^dA7{8jZWnAXR{;AOd`m<~emN7ZGJgJ(c#K^+LlGMtu zalRfSgBH`$z=@}dGELuCUjLN6`qQ-U_dXPSHtzp(==i^1{r~I#9~ZCU+^W#}=nmg1 zkw*+J%@O5yg_uO#9?oKko1##E+`Vyz<*~1Vg2x@@BsMSCSUS@+d+pYB%?r;Q{5|6> zGlTq}Lx1*MoF%{~8^D0)3mCxsLC;Sjd0f_xm0$uX}cF=HlQrJd(^_oQe~i zE;&rp@!`}^oOQ)aVa59&j0!^9M;kgs0>7{;yxNuUg~h_aSbOc`!OG^Fq*zGY9@wIQC z%-l0kIZ@#GO*1Lp_szw1rMabP%O2NC9`Jvm>(r6^XW!?IJ{PY{EbRFFh)L-2H?9dP zZhv0$atLs~+NpKRhDj^SevzBW0+UH>UK31Kv21mm+TeFkVycGYk4x9vp8NAoI{*KT z{Xc2@Pq*d&H5*Icw*OyV_w4v{`JJUFXPPVzS$u7QaDdwsv89fg7uhsdDlgeRBX!?n zc84eH+Fo4D&h6opaakzfx37Prg3}k7H7sE-9FvkZtXg%dFK^e+A195|dp(~oyL~Ra zciBa+x%RuKs&w+-W9NU|#@P_SYOdktm7VMJA@S#d#>Bu-M&D~WrnBFc?Y{g{VUgi2 ziOYH0&(E<;?wL7n-nMJUxclNP6u4`+t@ZwScFu}0Dcac1(|dV4%K`yWrQXcA#qQoR z&RiFT6&!*(Iw$mTYfm`TVsKIG;uMt>p;Vz%A+JdSXM7&zTTl6S?fAYQr)F|TX}|s> zzVFXf|N0-y&&|G^@^a*DcGH}zl{+P9fk{TQmg8InNf+G(teyf7&O68{6euj6^F4D` z*y6yuS2_a>jh%7@6|6CbCapJ!R}p+Q!3V@oe9jZ z*U!|pWY@0vd@OlcTu=wg)|>Mg1cg;2AIn$;J3)Rs;u-ezrjH#Uo>t$7nq`>ovPI!YpoFP{765SX_1?B_KXbLQ>e z@Tm62y<1j0c5KatpnCCDWE{b$y25>S}o=1wl@R{@f)JY?F4_ zYcVo&I5l{z*rGA_{I;mmm&L>Gy!~F*9as5p$FI_6mDPnbB_JZ-fvmeZw;TxJTF&v%l{vo&bNFe@1d?Ru8WPu^M9QQS3B;Of2aH{bH7dK`tZ#*$~=1-7`hXt zJrxR&aj(pK{q@y}8y_|%AAg)B6298y;iaU_mrr(tEWfOH$mY1;rLEVbgr7t<&YBXY zbm#%=9N%+{X}UjITbMc=8l)yn`1OU&Yaw5Nq^ZS+ zW#8Z5uyqr@%q;)!bn4VO+>c&7x1Vq|>+12eRkz!PmS4X8|DF9i9o^c8r};yYJ`3A_ zYOcQblX>;=&DQo3_7y9N{@%+7-ty!AKlWc`^F*gfx|{Rg`EzaM`ZL>NCJHk&=~bK5 z?G}0PF@0YBtDEB2?%gYTT)O>!$=~fyy_n8bD(PfbaLw-KV5&%5Dk3m-MypVZv&WOa z{eLffuXz9exO|O`@8+nzQmsow6r8r-=4BFn^};y*&#kT1>(kyx&+SXsSrgnS_OU~V z#Z6PdQS4=j^{EwiEORw{H_KX=%iGu8nb9!8MItagGR#7oLHV%q#K6pHu7!8uvjZ{#CS;ewcSjRe^y;iGfL#sb#6{ zI+2M^t*2Njj~```-(hKA`()?;>(=JBdnzBC{CRQZug2;7{#gHBx9j1_|6iYTKc8m5 z_Xbmvi^wtkyWbByfB*Z}HC^GKM{bnYpYJd2doO=`XZf37(dT5W3O{dkUTfx|E0gI^ zdpcva$K9;WJ{vnfh=w&R+OYrsMgO>6e^;i*YkYn9{@)4q<^wS|yOS~>Rj=RTwzN~_ zvt`vvmbSo%9V}^8$5p-@w*S$n(DmMBBrx&6_XzEV{wKsc8AW+2QsfArl$5tW6pf*=+MFhrbIsDNt&bfBl#h==9><`qX_Zl6!IsfHG z^ViBr`!6mO3TV(sy|aJ0R*0U62S=BSW&QM86@`opRMsn`2Uaiz3-2```c_?|L9yK z)0~$pY^&SSpWQL9tnuSm1&V5ypmVx2pCt`u}@fA&``7u{HD0?|5HR;qOO` zJnIwco8!K5d8niip^gpaW0(y*@;QXg=uYsWNr@^kFkvXy#D>h zKaY5)&%0Hh@<3SL*1Z1PM)i4`Q)h6nR*7hAS{Ll{^Zh3;Zim13{=dJ!@AvP0-=Ek0 z`v2pD{r~#;7RA4o*ME9%v-bbVlZU;NY$pjV5mGNdD)L~e$Nyh**H7X5qOjRTDQU_q z3Aw1Ks4_p1CJT9~V5y~jsh5{ctbVue?fL(I_UW8Fob_O@I9r)ad)4)AYh4fa+wc6p zYVK{fW5;ae8H}zeZ(vSX8@e5NQvdaRx=g5zQ@n`_H0SL-IulY;B&F(;?vvP z+s*v_+eMifdXG7*zItv`&i{XZ&urSVBWQK#_MCYdx-8GvaA=jfiaQJPG!^_Z`pfHL zz_TJqG_i)4#cH}_$13}?(>L{|UXf>M0T z_O}V{RSxQEoY=5-@AGrg{qrnpA3WITwbb#!Ty2{ly0g{Z?RtD|(Fyt5PpvbHi_@Qp zJ+k<8h~?I1-N#?f{glqz@$kvX$;bQWcQpkBtl8XrHA}T`?}v@T>Sgcl2!=n-+deyG zC7hb2xZuohZ)Rij>+$~w^6UI+uV3F^XlB4-si_j*)VI!K{@v>e zf7gFL@ReDx^|XUbl-|B?z3pr@DLSb=UvH+*yBg)|*B3Qi zaN_1X-Br2@t5>g{>nF|Fq!1CCYbI6tJZAfC)g^h`v)9T>O5WU6di%nK0Fk3!Qzz!f zKGTZ(FTCSR=bk(Fw_ei&1j{gCUD-sG0AosOCjnZGtZwdXB|;onF9sL4t?L zsLf|V6GMrGh3S|6ecc}y#_z9sc{%?7<@^6npZ~vft6xOi+s#6Zf?-~!;nQb%uRJ1r zMssF^sL?8+uV3Z{2rTYc63@J#v*qc5Zufo}>$3OO_db2Ef0Zv^_wvTV#hdSm+J9Ya z|L3FszoTzn-fa9h@zBn!lzZR$c5lm_S@-Mab8)eAxijTnE}44t>N1XrLhmIn3L8!o zn=(l&AuX+}s_K^IxlJMyr(C@DOs&IuwRTm_mbmpAm#*&k^=I?%?{9AIEWU2`K6drY z(%qhMPt^VAX-zKbjap;6EYh*-X0b$T{oV8LOZkHs6gu|4j1dT(dDUo%h<5B<6T5BM zKb|BX&ovfgcFJJYejM5`a=um z-f-XdF+#QP-LBW)vcKij-rxORPG0iQzxTE8_5Zx_XPH(0e$FrU`uFYSd2{pDu6uWH z>+e46y!*RytFp2-358dwF23RZLn%P=l32pC;N^b4ets^2N0b63SQ`Uf?iEi`$(+U3 zsM(d0lvJ|yrpuv|D^EUs`t;$$hn*ie(_@zgr9NAv;Sso=(V}VV`srDp*Vig2&3#|( zwZdcq(bZuM2z`m&b z?vwnxF+6^`$stOI)>}twAiSze1yF0Ob zIpg(m;lqX2_ew6$-5yi_>B-HfN3U*>lCvx{TH|s}_4@nWRdr9-CA<4?w_g4A*8%V2 zelk`?cUY!g%UV7AnH5))L+1n!&Pa!bP1nwFW;mqgn%Udi8yXd*l}&4~UYjTLf}wW% z)>Ryn^U`Z-_7s16bL2)v@lwx2fijzZ81OV5U|Cpp?@8plJ=)Epu7MJt-|D{qwOYc1 zN5P{*%HeCX4c8PUu7;kz=3fC@zJI&8)3`MC&YhEaTeIF(-hQ@x{(Bw0LYH&Z&(0__ zWnN==~F z_Lz4)gTkRVfhVdj&Jrlh$vGnW&Hvw*;MwN+x3=ZpzVqkN=kxmu9$ffXYaa7?WB>i| zm7(d+&dFMQc(hM?-F+KFQ?s};^Q@S?Az)s)`7;tncI0=Yh`@6MBv zm6VbZcxZDrGNB-)q%2L1=kUdc2Q|8;1Qn|0ncsG1-n#MQ#hIJA=lZ4BBj^6d#9@PC@TwHzm_MRT!sMEs2lOv~X zjnZ8kV*c{hA_K3dk#fhUPMsQ>oh#6C#$m-wPZy4>Z2Q-rczyKs{yz`z8~ytE$-Lm@ zLywLw1qUMs4v!T)na#Hvt~qot&a<9p^Q%PdYiNi^rL>wFXIlCn$#urxmO++9J}-9&E`&~^Qseh z_k7&wz|_!kt=hM%(?!2ix+idRa`Qp!XXRGziu~=%-k&sxsSnU4qYrFmD&aMhqzvoYqcz9Ht@6U_f`@dYa zFMa<1m;UF!kN&=I&*WF*F1d7!G(>l9zF6BU|HPE{J!S7Z2CDp zo4;?2m+(x{h*e_Qa86H8zn7nXLvh=RyLtJywq%C+ZMVMr_I7!QR^j&BU+=v%$SJpK zc4qGO?sn1Y)5@F_w)jT1KiABKIom1^PFM8mm*1@Iy}~SEr@N9K*GFkn$M^E@cHg}g z+#mlga$#6mCFj(tnWYOpKjQwm({g7?t`p0*RYASw@Akc5X9#I(X>noe43NIaR=PmT ztz^U3TN8C}O9x+;(ut`)yfuF3|BYLn&!0(W_+Y*NZ##d@L+||`wD&*C``;+I`O}TZ z{$Dyaty5v-Y4Q-5ap>`zjiJ+1TWr64la6Pc;Gqy8#pxtm^Wpct^wQF=`ui*5-`NUO zvEO2z_^NEu$Bid1ya<~lXI=K^#K+59qeKPgp7`_V(y6S|o7Z1|RsXv7{k++8FCNR8 zHP5c%$q#0JTSvF4xtRj39ES}`&KVt=xwE+X+Z&n85V0stg_6zRp6OmzV0vNg87{Eq zbE3$^i=ML-f+Soj!+3ajOlJG0r6~$jH!^iB2s-O7pJn@z;p_vZe6XC6B(4VZoUTcmj8uJ_#2e}{A_-P)J@`6$-{MiBu8K@HVY3@;mXlMe>m zi8>XMVI^~??(&0qH~s%kum5EIn_osxeT}J`8iPVmyWhFLuk`R4~zVP#`gR`&A7LGgGO)z+<*vv~N-qSlrPv{X)fe{=Km zFK=>YovD1UJ+&e=Rnn_RWzqI&oNrZ44Of`5DY6|*J^Oe1be<#mjxt}?vT&bGy&$Q2 zq_4LudjRSUjOg8xV2`IeNatn8$;89C!y7wie+OvI2Lhq?Vl8}VE?+r(@S); zM7%!#dAU5E;h6%*+O3B)lnw=*W9atg?r7oLYUrSG=3Hd5Qftej2o}$`_7!gqESwz2 z#dNeGV$pq%%(WdeY^&c-STS40%HX))oO^qVe}B2+l2)0S>ZxgL2fCu{(v@R@GAvrY zm-EzRrDUvXe{K2f8pHW{Prt#VSH{{P>J@AFu)NB^^&`1~bLp8WpB{Qdnc!=iZ_Pq}(G z*>l`;b9SS=iKTs-YS4o}aTkzh>*a+3^8ht%(65t}@5BX>3|^ILCE^1{d2h z^E%&cM+{d8FdektJbsF z`tkAqr}zKZ&Tsq4grVlA_jhKY1EE`BL+iS&)(4y*>ZW0sVa}-(~8* z#jIG6aQ*q~UwsSQbg~!CJ$+GubLs|;ly?UY3(o!Q(zRiU=Jv~zA8)_A#sBz4b-UkF z%XUYvHWgs(w9vfwdE4%Lf1cg8`~35FpS<+JlUAFs@0eZM!*s!wTl^!qy}K3rHSTzoh0(z|(CTW^KGy*GEu?&hrr zXBwyP`FyHnm;1SY$Kn~QRCe^-SiHbhfI;a%>74CfxKg4RCNTW$YOD7O3lh|BQ7NjE zc8EOnvn{+~)18f9W_q0}%D%Z-VyWc9oZsq7w_cR3uD*M9cmD3DyPDbi?f#wlcSdaS z;pB6>3^=0SKK;Ju^}F49yWg7E|33Wrbgr;Q>#siPycPUBcH95EZf!GV3h)xG6r8yr zZoO|0@7Xz)kLSqCOGmveahap&qPip@F?HwNGalKl7ItR%? z|M?Cu>Att$xrkX*?gxvperTzWhUp~oIC#)40#ibs4t#WLalBn+b&nioq6c&8< zak;khkhNlpNcP(Aaw1mmmmPDz_dPbh`pZT2KAHJ-Mgde^DKV+ z`8WO6+mwMi zae|1@-evY**KX8JHT!KkZ@ymY(q}f)ZQ5-P>ol9R>TGgK!S#RHUF1P#tuiPv|Rp;hQ zuUlQ_dpKEA6WCp}i_S$0E}O);>^i?&%j&Bi_P*cyePR3jx{nVodL>MI_T2ufc>T?+ zXMw6ZpOPw;II_*J_~z=6Al$mmAAo z=1!F=yIk_^&YP>%<>iy}wuWu)<9^-CIoYJL?tkO$_d9l8ez)oS?QQRi>?{laY~g#f zX)X`rx``*^KE!^yQX2K-Z?@K5p)0eRPG6T$@Cy8~s6sbbXOYNG|4H5YFS+!JTh=&C z?C21>{mSmk&fvRGP0V*~tG$x=^N)&IBG*XYSe zXCL8SE8_j{leU=zLwdj5jJj~!{;XxQzwHv(^RH>f{J$&Z>ufW&UEkj}#jUcFQ}jZM z7x&`l4%x@w%+dbz=-KQ1xZJhx>P``cG5^eCNw6BD`V#&1QDK!NbGcelQNWtZnV$QJPx0-n zbrlIgE?!Sv%YJ-#=(c#@_gAa;eD}Ahn=pm(h3V9nUsdAm1&;py)w{h#ICzD5gHuhn zVw2j5wDTqN>hlgC7Q86#`gPUbsduY)oQO9yG+k7&o}Eqq-aB2Pri?U2#Scwv(dp9) z)-BdP#+nwhwBPRX%$uKT|9`pu?$6@?AH2WUzP(tw{f>7_?B?26&+DGX*BI~3+-zHZ z_1<0X{`dPgaVao$7}?+FJ7@cAUwQ23pZ2kf_|2 zg?^Hct4$bFm~QP(|E_NTd+EiE2R9y^s2jb!f8H!jU&eQ#HcH&_TdS|z=I{IZ<>phH z^1zmB-*4Rt_Ka+JFh_R2%zVq*UAJF`t!}=n!pxB9S3LVkU&w|{clee!HM*(l=V(u~ z;1Ls_<~QH6`oo99a0{igO4+<;PR-sQ!8P;s@4Q2^^Q(0W9n!cCKNIdRpI4psSXN-E zhSu)&Qq||nciPnZ>Y4@ID4rI(!B@tB%djI!!6{8Z$We^VUuUzv&Rol>_kUdbaBpqh z|IO_8YL2f>RzBQs`{_i|@jm{mOhNa*Hh$mt^zZ%OKU<~cs{XvW{q5-QyuF_ns(2KBO@86Lm=`d9oqHN#=4#{MGH9Zg#_0>mP!1ERR6KifJ*=SfFO&od=< z5#a!tqdU*qefxO6>6)Veql2f)!#Sym&!0T$ygAwU^RX9uG?Z`(C1$9ynSybJ85!FPhWSrHrF=IYjWyev5$NL69qe2w+M8IGfbFd z>!Wxxz|yYV?B%To@BiN@@7?#4{p+>c`^uj#UH{Mi|I2Oif7>T7W;TBNB02q-d`*R2 zz^gMdwg30kHWx0PnHFBatD&7%{(kqnil=wy|2QnJ%*1Z{bk`)i151mm}6odpQ`2%+K!ov6MY* zdU$#6?V7woMhB^{vlP~>TbC7d%_=ltuUNj6H1CO$$svI&jpYQVUSgP{(%O-cJZ<{y zXtUff29`V7r>?EO@leR;*8arA^HGo4z8XwdaEbp}vDNQG_MS7Y&O5}t5*gSOS&qud zOx2C&u~xsmJv496(uG<({;Jo173N=d-fqXAbGz67I$8g@{@=Cci`x=D{bTo&t^4Sq zY|{7QNa6NBebM`V|F-*ZvHu^Z=2k|HuUqdbD=?|uJ@@t9$=P{xEDHYHFd5eU{>*Sc z?;?AH&S@{9;xv)xy=wQ>C%n8GtZh|T_3+3`%OI`OIUCNozcKyzb>9gqM}d~a3whfY zuSn~$+-?v*ZC6*pyysKB4D9T#y)EI&E)}SJe|=Vsk+Jb~-;7UtUToWJH2M6Y8>a&~ zg61Ds9iG+6;pBB%dY{6Y<6pF$8ul$|(V4uDiNodIuZNwd&X)JfT5tIwzdx(@+0MzC zA;HO0Z`J<^`rFC=EGZ)8^~Iek=cinod%|T(uDto-!_22opVfZK$?-dCYuUReC(jAX z|D68+&HlfSW=_3%Jo?96#&$QS^M090uURj0Pg}HK?_9t)xo`)sOt&MOvb7o*ervDqpv zNA52BckKEzvGb{Ud8Upmf+~ew79Td;`unW7;(K-7%XIa;fA9ZaU%w>sqPkS=+r@7l zZO(muPX5MBMU> z7VuU+yzw>nAJ%_)H{1F5)R+2x`sdascURg&zgAn!g<*<10UwLQ0{<()ea z=fG(9dueiq6CX>Y086Jw<7d7P+Wvhm(Pw_#bXHj-Akh)eZpE?DUHN9(*$#|7;Irl&i1$|8nMLh7GAzufEOxUb|cG^5eyfjyiLcug*@nzNpuB z9@BZHr!9J29edN$l-|xMJ=OeuUSLc1)m5Kczh9d%W9D9i#G4nTL|)#pWJ`EI_xlQy z-d3Gp&WaK%d{c8%JZ?$<^%sA+|Jr%~F);gB?5$Oya0u zeZjE8c=L{uCpu!54*p`26S;(17UevRD{9MP6S=Qj_O5mQ?$l>1gFkuye|NwB^FIB$ zr>EnqQv(+DvQK21DF5T*{C9W$bobZPsl74_Kew%RIrE7JlIwM(N)j`lPM-hwQrqqM zRqqbmy3JpAzWSJ3+qx^Rr^DW~oY3*`S}9knq8a3JriVlI+w7U%PFI5j1UVaA=7{rc zEo>ELSiEKHx-AR#eD~6HU{rDSa%r(usut6q*CKGzc=|83Hz#K}S#U5dMRmEX=>i)0ZJ zd$V<^PIck#11}~WS*9VQ$Ti*P!H#*mB^WlS9BkjD=DCkqgyGke3)%jnjFK)5je<)B zS|3bd@Vu$X?;+3<&>#?TLQ!ym+Q%RbmYMcjf81R9r}6k)sTH%z?|!~pe_Fma@&Cie z#!7W(w^skO){?asWSCfeujuz=|GhtM%m3P1|9Ab1ciaD-ai2Gj^I|0%i~a-FxboRo z@@@Vc$*=$6AHVa%}J?|;3XKkwd^{0++mI`_UWxqWp*o7cwj)C;>!dYIN$ zpKY5sXR}MhwZmUl7M)7#xN`n?my<&x%ZGc>+3RzjzK%cbATU8lgOx$y5JQiW0>h(L z?h>&YzB!Y(p9ovRQ21!ihU9IB=Iv!Z*Q#5g-|GInNok|EuSQq7&)i=p>i_w-_s{=z z?|tR@x%s;`<~vN|b<8}wzo}H^VaU3xP0Uwcu-83luYYp?&#$f3+x+`@mPT5cx$MrH zt+8jy!b}1F^_N+y{_b(m-&gYG==8pQ^Y%zAVh`z>a_xyFzi8Ow4U;3(9XwcnUz(wK zXx~TWE{@I_H?5xUO>Yg9@b&k1zk2HC&z-^Qe$OnmgH$urPZzQ7DLyWi8nF6aP;k}N zfMZsjQ=Fd7@u+-$$>ig_h4YW;tdF}D6P4}q@!sK|dH2?T{`vQ7f81j4iCg(RE@d}{ z8Lgk{;>>Y`iK}sf%Lbo`3ltWKI|{l5_B`^~v%nxL_F%5{;mtw2|IJ!kDEjW#Kl#NE z*IuuCcUb=ai{ra8zh4RpigfR{Gcs}TvH$1&f6t9S*Y5wS`t$w&;d;|I{^hU3<6FI+N|3B#e??U!j21O1J{zqMj0VgNj5!W+l z6FlwL^OWfkca zCcS?9Is5t-OQ(hjPn@GY-&A|)ob=bZ0xXFMQeUf7*O^$~ymX0c%8~q3L6Jp4yWTTo zG;A`JP+aw%AgOsp1xCGtX-W~_>e&++_!m^~y%~5xc#4LV=3Qp?13WBi z8s?tvl8t_}{q2U^|NrUV^-Jd8A7WEi^hAE|cV^RAp17^=PwLl}{d@E1Pf_%dv*&a* zoP!_FX1IIJclNSnZ0qa)`)~8#XRx>S&viNO^D-76C!TZI{B~tu{;MtXem#rSonRci z-tUR&PX=!9)ARqlsSW>Pc&pWyCp!)op zS1&qmdM!T4w}<_CQTAHHkdB>)#mv$(B`mAh@!msrtyrLo5s{mK>>PX8e*H`bw4gAbS%-D%)BcUd!pX8w-waaL?tD3mzrO70kK(x&=bmkQeX_d#*~iTn@9i%>zV6hA+{3Ho|Nj4XdgjhbrJCov z-|zf-{D1%P{-V1o^Q|N96kIi3m^rWd-;`G>{ z+Sg+Q)h_L2J9b~N`B!A& z#JcOo?{+%yG(0-}Nt=Oj!RNAx0uAD41O;rHjDqx}9~>0lcC+%0e*eFtHHBw;ojuJT zA2s3q+Wv2i)2?LShuK%u#M=-sULsfbnd(Hc~ zNaNRn^K$(j=l=zA-B6tOy=T8JuhG9O_k73KuFVVPC#j2QakrdS;VqDV7E;Bq_l98O z1_cGp4|^MoI#_j2KFUhpnEU9#(fksRz>EgtsU=0il3kB|gCD+SK3@0tWBb$~r8S}( zFU(Aruls-g?*rrb_YTXGcdtCJyJ`9%<7&aO%uBYVVn-HjeHQ=H2VspHx+zxgR>*F3x-nxt!$_VG~9Ar7%U?D`yXE~m8ihks=LBkJ-0R%_f& zzK$tRgPS_IJQH2WhrDG~PU_B`m)>P1`$%NA9-Cp}d%7s4 z?7^PmdyN4>CToGm%JBHMThnkzIig>N*LE67#bU&uCU{I`rZ&E2IzNy%&F zrJej$OO#I>VtTZ9{yd4DulvkxH~;@B9%p4@XLvCx*Xq3Ia#KUYYZ5YZX3p0Av__*# z_V#ub!*_S=3Xjj-K6j?=a;DEW7W>b)ES@ITt8{9OaiYe(&EFk%l{^<&d$vGh5v#XL znLLxq((nksqE$Xp8cMDz3itMYTqyA1_eKAfdE7m=B?0G^nuN;3`aW%(;!*10%A})k z;zoATn+C=WPmZU#=qfb$=rA}P(9w8tzogh^@6KH&AI|@~X>0%UXZ-*D^XeaMjQ_E| z{zJR}m2yYD%x9lumI{P-Su-0~sXubHF;bp(lErO8_(rBbQ+@wuPp@w6W>}Q|ZGlf@ zhPIpGlr!ar6jHs6xUTq`zp4Gxsm>>7_vhXBJ=)%%pFb0SY_aR{wOZlHkI&ndYrIU+ zy5Qv;m{Ps&R@&x2N5%W?_x^X-J-gg$u0hw7APxtvi&dewj2-S7PHS7+P|P=hrDcl3 z_dRj%YiBAui}3rfutcyqZMh_O_w)vpJ>Lp=|Udp^>ay$nn>OJ30YhK#D9j<{IOCRre6eGRhy6c)FbF{8!|&D>7-k5Uk297gH+iTaxgBVFaI{n=* z|9T63?U}I|H_OCp74LCXr?l(5v0b45@{+@jm~KX|)vu>&9*F<=Wq;Yl@GTq*7&Hn~ zIR9OogtgObJ{i zfByVy_S`&K<(y%-wxV(M`8PMMo44Ea^yYR$}LpPfwB+lQqw>{7= zAZYEsDt+}=ady{Nr+ghcl-8`;n(>>@L|R~h@?`UXz@5{?7Dt+iY&8G)042^CdoOL*Xnj` zv)Y zObuQfl%@Rq&APk0H`|<--2d@{@>##_cfD49^_aNn9P1gLoTde{)6UCV1!eO%PMqfA z?6t5|&P%Rr>FE<%f-CLjFtXTGC-!!9b$qOO*j>DCkKtNZO(sE=OS`Tszu|h$D6mxH z(cIl;@Bg$;zdv#Fo35+QOkbSspF6Ivjo)!5|0_d1M?(|SrPt#85!>cyNlGu+pD;&X zTI+5`3WLA~4VHCp?mcU1v?*9vdcaZSPEqjR?C*0|w-)`jHnaV*(yw}F=e_3dC;W~~ zXXE#jmuXM^$+v#u`MnQC8z$^2XE{}M{sHqPhY*o_k*{s1Pi5G;!)X78l1EQg9$mWZ zYZKRFFV&7@*JbA1njhaxV3>Ms7Q^X7hWbp`tk^U^hef@%IiI+81NX$e?6M3R&*zGl ztW*DzT2pnmS#LFiK&Of3M^}f2S&M%3-dEp|zI}?mWP?|{k4pf@ub+%Zwh9PNS;P8t zVaJW*0aN-u-+JY;w1~sVt8?zQM^hIxd}rdCa(c$Szt`NdmwvrcYkVhg`lhoe`uho3p$o=s| z&?nO=TMHI6O$}4GDA(JVBl*ZHCg_*K!eT$or6QSYMVPJnIZizKv_~ZDThdz9wWne} zNo|xg&R%;uVwRGSLg1{q+C)AGgPG&9D6TK(sPoed3-;-ka6m zvu-d^Qr&Lm8!UJ+%9%6Ld5c`%e9$$uOblse$1GlZy-Rv;%kiVhS+tYET76z%04H0E zm!ja5R?`-aGf&S4O2uYx+s6=beqDIM<>)VSiy2gT{1^i)|9`LJb70tTPHnot+P#ME z{GB(?*BLjsr#P_bJiq&|PI|%5rS0ObFTS$8+qzDGK`cSUQFGyGog~Mc&beYAn=kjy ze0=umO|d1ivrCVr9h&(=U7tg>NI+H1W3VY^K0*`;-Uw-K{))^fpuRh-uTyPt~g@+Tul7gv}MQIr(9CvxiP!+SJs8s zT`^)I9Sz@E6>C1E*Z(|m@bBv5^DbOrHeu zRh7r-!ybfBE)$?*0!Oy8So3d)%vE!uj#g zFW#b$yfGiX{e1C%U8vT*D5azG0&nbYX}noHFSRLQO5$whhT?Vdq6|vg^o-R~zNy+Y z336qNuGBeu$Uw#QKoFb6p5l(Sy#Xgp4)|#5NFuTOFHORZ$<$XYq^yiNHZ-u+Bpet2v+ZtCs96Lf92!+Zq}K}ku5sY>sw zQ(r3e9I%oz=)HLALB>4G@Fkw_oP?V?CoNg5z}~MSka@&mXOqB57Osg?E-^jW%kL90 zO<}63SBr~Fl;iuYOgbkwZxFA2e^BYPOjAd(pPtZD?ti--e#EyPS#N!jP5r-Ey1;f??KZwQMd1jJLOJJ=e_>x=A%sx=R;SAW?P=G zFPeeXnn|{74R?+3rNlQVM)JI2;hHbve>$73e zrHvmQbCaIete&kARH&-P(=zjDCEJIbDQZSiTa{A89KST2Smas#JVM4uJE`?it!E&! z4o`=d=5#S{b^kq8tQD1;zc$S{aO`;epWiVxZQ+u#?hA~z-Kf^~2yn`;{Ci~asb3|I zP6A?TjGAjw-`%QV?d|AD>NHVo+@z7jlq{l|rq(j)Lu8S)g+M_H=ybzn5Vhqi{gHe#^gI7xp{(UohWsLG@b50?!>U8l_!kNFMpdXy4Pqb<)~> z3BwYWF69O`UMD{prHu=?lAR_;Th%;yGSj#?Ja%h(;mXQ)cWR#g*m?2dMZfKj=dvD& zS{l{)c+2fOn{sy<3QSBgSXHv+ptVww4#$G2g_Vkr1Z9<&A{+v}jH}b!7zE=dXq42w z`?5NW;mX6)9xFOH_Q%|oR|($cvGb1SjJK<`rn)*^YM8~r+F~lIj)p@xA)0YCI;0L_a-k= z;82PG{^h};>(V#hiSL=lyFEYU@18r7r^>}W|D2X|dc8hp$}_tk=Z&?O&fUszsXXyw zb^I~eHCwa)F!D|tFxPz%$}uSS5~v^vR@Bp`0Z^sW7EWzPWirP z)2+^u(-JW^>r*OH9Hcpujcx8oNJ(B?v8UW?0>{m#4Pqy|7krm<+^DZ9T;=P@vP7fn z;IRXx)#dw&SOr{?;^$a@IR5B!uV=)~nXjIlSob~t8B5ctHFN%C?W*Yr*>TZHfx%?g z?`ogaHBV&fQqA3#UcIPqCG^~OitMcwXLe~jsC-i43Y@+c_TMn#8CMG0=EPAr+`yY?eH&*kk|A^23b0h!%x%UhEKJDpPefa9J z59V_9g_oZ^S^IlkWW+4tlT*}K;;YnMT23%j`M#c59kJ$;vdw=Dy_fvk>khqdH#l|u zxq4fIvi9GQnRNQ@;a$cZUuLj#I0!Vl3U~@mt;?0!n#GBD!&nT!yDPLC*+ImHrf3p*R92zyN~i`uektHxVBf4^J0 z(c9S<3Kcf!Oc0(LVV)osH0$Q~&%%5EFmbXmJh-&~^Y;5+SA{W%d|P|deb3vZn+1QH z_yc3)`rqtb!^EHvw5ulL>zC_OSLR*e@MXAq;oA1uua0Q%SHEPqQh{q@(8{A*tCABA z++t#!$?Dk2(43rh{0vWI+>I^L;nLB0HJ{(Tz9-e5yt(~-xrvE|QPO6U{JE=nuSCz? zQczZq5}?hi##9Cz>Or2cDvx0k)OIe&VJx8+mo=UanXVyup@I#SEQwOL6kdsC+gck={JsqWK9 z|1rAfI%_H!-dbRE&1>RQrhR`_1%a`?q*SA;mf3e$}?#y)PGI^~RQ72e)V8NEaRcE|}f^v>+zx(5+{ol3c zYkplmFF)t5i2#4t)=SOaXZ09zZyS|7pSzvUWRY-t|GWRUl;2mL-ny!U(KWzDFng^_ zfK0|xmzI;$^R&Nyydd5Axb;)*OwrGi{Pitf6}A04CVuP0t%=@zJ5G4NRF`p`!5FB` zn>1Cc^?dgip(#(NyD(^0el6Ls<4WH4UFv@N`rD)87HAkb`MP+{YH?gK^;MZwhV@_9h^;WZss zqCz&D@v6|5li4F?v86!%a{0y2I%i+!x0;A(mfx;mt@vsh6uGHMYHjPH+l6hadXDui z9P@0L6f{&s7!r%Wp8bB#6Z-`?KF&(D9= zS@_kjD__njFBjjHDa7J9(RyvDB;QdXDPNyBo^RC=OjE91X#HIM{^GtvD{GtY>Sb@8 zZ~t$T`u>tx`yZToT^61GcTJ)#gF{27NHo900VmZ*XR9X&O*pw^gT|hNQSa^?_P3E^ zGri8;taV9id!*+@^+%UgxI-T74WHFvqV#N=z|llgukO5gw+~KC+@=?D@l()m@Aw_{ zub(}fop+=A!Cr%IaRDVk#@2-=ekR$RS32Mj)wt+=gIZo}trT1vygJ2$w9bFN znzmh|%VO0P_Eq~%l->WcO#IoC?RH;w2PSApNi5n?aP-ruQ>VPDD=HFdQXa(r`LzDc z-QB;_>)t&#_kFW$!?n0rR-Y3RCt^fec?up}xaqW*DWvg~4tK=UJ-$Z9g3qoM&stQl zpxG~PYfx*2Q|KkethEQ2nrGLHsY*&*y=9;xlnIvbo{7A^xI-#_*_fm_KPrH6t z`2Wwsyh-OoXO^F{TprqRWTMf-h}z6l&7%p=j(j{{`{eq)zw@k@e~+7=<}*hzD1m93 z)1{?Mf)^^?l_Xjn=XF=u?cNk68zm<#o7lAHgxIal@24a}+@`QO1pdvFUE*PASp8De z?d$3ziOH{%{{9Hdd&j2sn{D^h_xdY6Dp~X19c^DzyTxv|OV^QVhmvg?uMh1pFp50c zsM{$f5Ry3Q#AN?B=erI`yq$agGn2qpqsXW!J2y;n_sb3yarG>Ey!ZQ?$Oui@MUgMd zl7w&MMKc>Wa4hB&eA21jckaxY{XgH;3I{XKeW#>ha)9B%UgITm%7fUNT0{dAYbDI? zec*ENnB@^5+}NNX)Zjct!9aMj@|i^e;+el!&Awk(aW6z$^xC$J%%D|v1{=0)kZ?`B zzT5e@U!IiY-m2eMY_Gq~(6Fw56|+=K%u^^#L@8M^Nq3j1YNxx~$|F-7qe|D^jyref zP0;5%hYp?HZLTgi-`2|7z{JK%;QTrxA!Wgd8Z53|0o@DFIgO4EJ_yhWAG`4|zC zRa32kHyT|3`Kq>m@AKO7tFKI-_1t9cx)kBmJmk}) zCAKBvKU(Tm%@L`*E<5AS#?154-{0K%d2RRl`!=RU*Jt0`l6(7G^}EW~vE_Fo*M{*v z`0~O-xyicBFHd@P?oAuBOC6uTWw|DMDy$W$3^0#3{qU_YqovV+C+u}j@rF#9w&t(D z9u=i8d>q8-*#R||F-^$EPnUjbN#Y~_56RMqsrMd zBkQhfJ(yAZ-$KDj;KQ2$#pc3AQL?|!{Bv&an^*PkX!D!BhR0q6yw)%f&9-I8SbJDO zCC2$sq5#XaTN-@~3ISFQZ`ZPaoT?EuH@ZXR|JC}>!PjF=Cz*%y?v7d-wD#KV+};0g zDo3>{ES((Mak^usK<5USTZOdiv9m7YpW8b4;H>Z;Q0?d@!AT7}Lnj$JmJf3KT2@0N|BU5I1i(#`-y zPQk2Pmm-%iu8W;Nj96GW7QOgWQ*+a^>TdS8OREp=G7!@ezhVFS9+$&RQGL%%oD2)y zH`YviUpO&+&%xW=YqyljPq&yOl&5`%(FS}3?WZk_RKJlvMG3R;?JY389(ks zEe)CV?3|(|^NSghjhY5tnhEDV%Q$FFH8{W7qHpUpuaz1cOA59XbgYV7&lCDncYE%? z=zRJ6w!i-Vpa1{cQTKV4S0$u!udr{@nLj%=E;je-Yn6Qog&c9&K3r@J&toGx#im`- zzxzF7_19zH8E;r=3$;eIYz-3?-mt)3ATjWf?E5_rb+2BGjlA^hO}gFx55etIg6=K< z{5gH=rAl+@HOIJW*9OV1yKdtd(CfDB*qX1EmrCC_FWq9sXQ1?6Yxb-xpPN%(UR)Tl z`;g<_FzHopYs-XM-R7)quS!Z1iQ#6Q8pNUcYuB13iY(enAw@@-xELJy*KUcsWoGuM z+Iqt(uFc`KKjf!e{jufQmoMCTzZ*6P@x(o`d%Z(Pe15Y**5YOlM#aySwb91EpH9-a z;&$!I&+A1Ov`k3vFtC!E^m z`h4mCqFWUY*Uo((^ISkl@yndX&s?4=B?tQUD!t}XPItIk=j^xg&HFE6g)o^WI1T5F$DnF;$p>^y(=tghO*`2D#_4x)xD*L_to z2r;~^*1noi*0N-aSomizLFqN_YEn`rjjpau4lYSeH9y~kn!mkQ`+Dx(tCzLs+PKH~ zZZbJN(?{Ss+v?D;k3q&WC4xj+L?nW|W(#z%shh2CbNY6#TI^|Pj^H8t(;B;7FcF`uG2Tcy%dD zbrnlj*zH`woeLahCfTwVZYYp?_j~g5eedgcAO5{b^5WCuRblf?w?{BAbQB!lnryvJ z*81zYrR)E!S6&|PvwCZWYzSL|bM79KC@uzumV1lKJNmY4)be`Eu99Nz7eTDh=lMd#{JsSJY~hn~(nD;&SXEc5rC!za6Z!@9P- z-PCt>x7quu+q$33#5=VoaVHru1c|-!jNG|RPl5Tt9C<0Zx@X$Y{bX&Ii+t1he){j) z-c4G9)jWnFM&CDYn7+2!t?t+Td;g}%&&Vp@rK7;{w`phH7Ir;O$&;)HHN-ypF^Fg{ zb#3Fi7xbdm_}i|sU15QT z_%*5It~=SXLJNbo?7C$8`1tWBEhwJ8IPBg=ZJUmW z*-t%R6~F%U?OAN_=hJ7SmIkinn_=OXBY5QD0f*iY3k$0-&Z&$YCYpyXt#eh<`28Ts zb3vyI*F-PQ*GC<$w<;_Rm(%{skYUfF$-pw}_58nk(;4HKvr_IFE31TB9sF`m{?>0> z`|Z0Ymw0z9i;M_3X7}qqU;gDz)}kwpLxOsTCz9IvmYqyZ7$e zbt`ZC{SRCUS_%3qeYxK|vV;N#yOA>^=UInsneDnsq3q^U-!jdGrj9K8cKo^} zyS4GwpGQuUw#?CHxw>=d)SZ5HcWvKuAG>d|eb%fArVEw$RaE~APm9y%5S-8;7?||? z3ybZ+sMBmQ6S!Wq-}crlxflNW>P_)(_x(jHe9ZRFa}SpaJX3VrdfVRb%gak9u?YO! zv&Oq#@zwofKUr7p*}LhAp3)`8q!}s6Gp8%3hgj=&CF%L|KYuCA-K{>uC|72osMAu0 z15w>gs-d1US92crXcl|FC;hyR4u`<;!fP-2j(zmlduZof6T`Cav%mTBxCAfmUHa2C zq(vgFGVa*qya^Rut+FbrTm;8yD){iu9YbN4h(grsPd4I=PD0OwB(E(F z->G4_H7z#A;Oo3_&hs&Ad1_xOv)?|;BDgev>xo-RMGt?7_46;x+4yJL_qV%#oog)9 zW7|_%lG?7pq!<5gWOjfqX~cbA`cv1OiLzFXH}O{mhw zPBBA=sT2BS?fy>vJ@0K)t{_*sr^&*5ds6SP=*+t)d2VMMZ`s>>v(jYKa;~&*;j()B zg?Bx}SGSP-5clKmY;3R2=)KiRpWC`-r^Yq`-*ejp8BeC%oqDpf^Z#G@|8L&ioxMG8 z=Dl5&O>=pD1G;;iw%O%x-7WlB`R&w7&oG%=I&ZtSEBLT@Eevz%n&RXta>dLy|86L6 zi9pM>mA2-4f2#j~Xn%WO@%iU=zmHCzS6z~(`E#v(ZCCrZ-kjZ*tNNE_rfqK7YwV`I zG{8p5nCaWBFKagI{n}Lb^8T!91%`Q+9VPpu?tV}Iy-{WPyUliw-I#xg?T^XZ`GRr# z!&>`N-&Bqm#Z7sNllIBY+ur@4sb<5Et7{@^uHSyYBk%dQnmWspNzWor?K$+%qdHYG zCwvZjLfN4>?WZ@DHfR?GX)r})JGnAVG;3Mm_$rZMo5VWF`K5~^`1$x5Zu?H|eS7)q z(w{T)(){N~I?sN-{1YX9%V zd>&r@^YbkXs{dRJk&BOu*s?BLMI}T@X`W+e`M*Uge!Ko${`uj>(o3)Btmo&k`StVW z>w6_>x90_>SATKImVB_aR#360_hQ=FJ58mPOcwj4jZR<4D7}Ao@%=xai?<%+s*bB) z_4#{6;0dn-j}Mjaf4w&UUiI0_`~N*JTlutGLGUDVsmj}PnO3JWmvKtms8-?W`FKuI z(Lh-1b;FiMCDr$B?QT=WrZ2gwkhfrO-R~Ql*{u?{DxT{s?=`4;v+!@g1uyMH*Wl=7 zO%DCN?kPgYbJli0e$ghq{_mB={EQ4j9qG?yHiviFL|^LZ;+~y5SL(irT}@Wm(J23} zlQCXBs+$5|vVI9_NmV`2X7afsRrj=;!~cIXt54)d9TzV+>G^A7KX3VgPajI1Co{S@ zcZnEweD4ccB64+knO5lM8zKw>LV`gr7*>DPWLmpUsiXT9C|vF(SxdS3ly+1=}RuD!HETK3Ps z_kX|rTRuOB$K=zV4(*F8g+bfy>#A;Vo14G$dG7nl^ZfZYzpp#@=+4aPa@M6UZst_Z z-0QYfK#{}eUj44=4g7j_zg{8$TP8!)?r@Y?Gu5;?dfruTSZ(W@I z?$*A_-w{8pa~3c&C=|TDyKI1f4Akftk|MAV=7hLl{n)dhu_m8DxP zty&`At=Zb=IrB!Un*JQM0;Ow_JElnTm3pkun`*=07{Z{CbMxtzKv#*~JS|gK=9O49 zaJ&>?xUsb5m67ViStV(-YqO@dXA08qQyJRc7>}b+*P>Da6wA& zM8h?PPY=ZR{dn^DJo^%@jdD_J+!|MgJbJzEzV)`!?yI}B`6fs>Y9=n6)MqWVbDdSy z=}SqQ{%<^9mUr9QW@G5p<^FTL-_^bEJ9gp2nVB=!*MIHqTA{(^QnJoKt?Jdubot5` z7x(`;lWzBkegF4oyYK&5Z2zyk+pS1xw&&*(Z(WuAxeu0>?TYcR*<@$9p{_82ajD4< z$K7u}--)lO_@67F)o)~+-)~p??VtagTeZcH+v}e7J=}O~sZ~RZlEL2EjMMjioqXQC zV%5$33A{T}8k@32Os7B7Ham6utjXJqyfqqDkt%DWzJ{!xyHL^S4cGgFcE<9oKUGN^p447e?lu>St>rH4G1-Lm=I`}r)N zo)zOHj&S$&?w6*YDcmc+bMuFoYcm_YqZ*kPZMdGe*Qn;}ud{JGRAPgdxUh5v#^u{_bY$TV`OA= z*%xumd{(V~O~_tZ7nTK9i`MThlUSL<+WopPzoX*8#idI$w_2=lo@=}R$JwXx)?cU2 z|8Jfzf8V5JB_9X3)}6|`A0DRrwI@7rn!5Xi*tL6No^01{t-I_M$+Ws)C9({haY_)Vd-<+9J zK^ya2Mdn$QK8r1Xzqji2fjgZu8&6if2>3n6*jsQ}rkJ~;qDA&rF4m1foHJKya0LoJ zZ`w6W2lS#M9o&Pd9)V4nUkLOl6yO+)9adDx7L}wQsWT(lYCx& zp3LsN%Mq&n-TQXLTWrtUz{GGuYO^*2gOJEh`Fn2mU;4kre)9f$tkd~^Ozek7rbK>* zTY{DW;3_QK=O=oys*FHO)_?U%ZZ}Rl&zzFVHF)j+aUm``! z<{B?LnPk2_DqBHo4zH-8(&CQOz9LK>Ckp;<`*rnlS@7F8?Du4|Y{cKqtoXO`srg+4 zo0z$^$D?2O@4pZg_br`o?%vG%FHC>C&ENU|MPF{?#H@5v^GR73q;BrYTWn`%d9mZs zU)hUI28L!)DX#b4vSl3zjEJbc|CfJjk-WK-df(h{>lhjqc}&o2bW)JKr13g)HWmcmEU$GItBkSRr|}} zH&6WVV&~)Ytjj;_oVhyx#u=T|q>8^15`7Ud|2ujg^1qH(zpHv8_c-g+i;US@bT?@4 zIJIel${L@_D zv;21_hVt6iWfX1^ykB~Fn!3F0*6iy~?yWvr`r4g;?%B_&sWs-_i@a=#jp{!vd~W;T z$d@BKcW#cnW;UzM-JR?Cj7QG;b3JAB*O#QHi(e@ANU$}^xVb{3F80UUOZ{Q13sh5&=9mP^?=p8inxaxMl3k0b8w|n{d(Jtw4N1J(j zx7jWEocHW=N@Yx(*ojrM;I+glZ9 zJ*&R|d0X-3^pez)e|KsUq?mhsW2g4?{hXaQD=KF@pPa?BnuSw}@_L=_GJm<^kbU{F zd0OHFzef%+{l_-`FS!19`^6=@^Hwti%rBqw>)|{MK)p-nq4t zUQ|U)wAp&kX!Bn_hQk~6SEdDIKMmYC_1BFuS-z@oT_LyT)IWQ;eop1f6VKj83oH=2 z-pZB8#KqOixbUFI0paQ|eI7Te<5Ny+YoBdx6+b63zxqjQl&M|yyE&x=Z%wa2z! z-tRwg-{j8SPuzB=Na4Z=N#1eP-7cIgCjsMwvh&Y0k-%xu-^ zY%USJCf7rzL6JM~NMX+Br9Lc&ZasJ@K5Nypc#D6JuFK7kT;paQo4Wnom9^IvT{H-g zjrDxCC1T1Br;_JqfAekc)8AD8zWV;BGs5g;?`{U=&Pbaye_m{4?$ftn?nWQYVq@Ym zw_5Wla4isG&#z#0&|?Yk5S-#Go?1|({zZ0*cw9x5>B;5g?_9Qd?w%akrycrCMkMi$ zL7;BPvKMovCbc?l+)$iXnfdd|%$;{mIs3njkIh>4)=#39DN@(TiR+M;@%h=^vImz= zo%&?={eR~!D$cNe%D#M?uI<;SHpLQ(f<~Jw;>%dmo_lJ(-+S$E*u_Vel?wSTUQ~Uu zgW66@KU{dCo;W9@TS5IH3l7V&Bv~JCx1R& zb=4=L@nT}y=8GpATZPlj!rS|{e~Q?_AkQW2E%3@mV5TTj)cP5FpLF$zwJG)cE@=$p z>UEqrnXBi=9ge0|8@P6@P38NsYPH*=go@8c-o3nd?Zbk(^E0nYH-$*74b)(f2`QYn zBk|1oyCG|{%FI@}8Pume%f4Tuw((X~AJa`ED_b)Y1A{eX@9*v|t;(sYDkv(tEFH%< z<@>TPJ`+S3W-hpNgJ*9^e|)Z<+TE+Uv&%!Zwx0U1LGqT!v5mgblhUt7IlG4nEqxqy z%T9O#S5rZ0Vdl5i!_Q}#eZHbAqm{&xzn0@lcIh{}^LH;Ey?I7-gVAf_S0$73)K`aU zEl=~m_q}z!RP6V2UpW>!2rOVJn;3LKI6dV(;{h=ZpGLEqjY|t99d{pL(a#S0@wC^g z<*Q^2gMz^MOYGA526G-S`Ve?Q_?LH+y?9Xow?-Fh&hnd5yjr)HtKa&yCA-uu(DX*y zgNx!C>n`aYb7Wi@AnkZUaGJ>P4yOY*5?F6OXKmYQ#9-FQ_}du#Fj zEQ1@{R|bl#T)ynUqc79WCZ-yc7Z)lQFtJ?;ShDZmQ+4TpzZd8K{b>C8x!)YCPuuN& zd<(l&b)S9z>LA%wZV{_5C+syeHIuo@z{Gy&fy@u{x^{_gtj!EfVO|ZT5r$I>85~ri zOQuhs#uQx4Q@D23R;G_Lzb{z4!$^VSoN?oeV+mXDZK%B7#gfd(+gEnZEc&hwYn$Rn zjW;SLj!UCNA1WXBe`~*W700ejF^#_~{r}uF-~a0V=XJZ;)tL|M&bE?V#r#LQS3)fw7|F+D1Ry6U+)D=<^y&fD}49c%{UU|*z?7Vo}3#C^E zTnicIi&frpn$o({c-sV>t*h70)9CKlE_3~nMbFJscP@EVr*hud_+4$y9E(4HKA+cr zZ(ov@QBhJ@w{yu{o!sZ#2jx ztJ72E+RFYh-dmP|(JDNq{Pniew&$O=>KU)?Ps$OQ9kqPR8_ot1iw#?SowGK@&3PTh zY1W?T%qnxdJ93w*LG>Yne6@SxzPy>UI)&UkFDcEEQWQ&jU$nGY!DvzEs;yZv4f+Kc z3J#lhTl#cWV2E1V26l^$5N{`swFCt5yEb>Uz^$)e*cpH=ik2hf8U+l6*tQ= z>bl!GQJIEfyAUpc&;>^;l@~B2=Q{p~n(IUZ5wu4oUfD%)oM)qkaAOd zt!RiuS5~q?-|9q(9fzt;bDTKSm%BBpvsvN%Td&oRYYyJi3^4OvTO7D`(~eEM?sze! zp7NW&;oS2t_qdHU7~g!gR|#rxII$$)z*p^}k55x-_qMIEJ->-F`+tenly3$3p18QRa2*)?_M&yV%_V`+vdyF zZ!PcBxpsT!x$dw_a%}e&ot<*SY2t=cM?@L88cd`36K$DJhQu8S?OMdKH{7c=P=sy9 z(sKzXINk&cvxyWmgw1r)3}KT9W>;BH$EfcZ&B+Dsr zyDp}pZ3TQfj15Y2pL1qy`t#~!;Y6lO3lAJEP!Lp;WmK7GipM=E)8HDg1E)!U_u&)YNVr9V1&QBYriZP)BA)@Q{Gxy1`} z!{ct4oIYgG@wkicvB}1>Y0)#JnM<9V5*DkZCr*q~HJi2TuHWvt4ISzIOTuPzpL>2H zC4^zYp6^dt_%CEL*UG(YP&%Wk%Q;Et`JSmNXSG^tmrf5#)0eK9(rvOxeL;=qo=;8b zezu3^2mOjw^t|@(^ zHfkN=BXRk%o`(!6E`o~8gBem)+nk9T#>TF0?Wz2>!Y&xUKagj5did$A>) zaVm!)cfyFGVbwk>=W@_c9T&2Hmf7qis`3LLZU9oM*<@t|VctFTLp zQm?r9oLQHx>LlAxdaY=ofr5%Gi_)8;n>sp}KXo{8O>xWJ@@dgTqi<{W$Z@9ERR2D= z_WHiZ>uMNgr$=8pw`yUb?Dd?qUbk4r8+#Tg6!fvmYM%HRYJKq1%=)xst_+urk*R-v zo!$O#@oAT5GkPrl{#dUozu%v|^k&5-_e&R7uliNhh8x^~b=g5JXYH#UcfYJNf3~IB*3{+6i%ni@xGld~Jn30x+?DL96BjNF zQ+MT&jB2{`uFUlaV|5xsz>-Z{-fo&AVEaYmpWw>;p8@yZe+>wmv?1d%H;W-RLzTv~ zTVWSYvd zyv5E~D7S=L;^N7wYmb(dpK2*}>k&9m)&9a%L*!awzzwI?HYTSfi!`pq zXtN~FH`=s$W0}hXp;KQ?o2~6DUT;h(E2ybSxc%hQMd69edOA(n=guFW>NQbZ*?9j@|sREObvWlDO%E56B%lQSZ!=&QqM@1U2t*EV$pT{ycOHlo@u-4 zrFd^4hsXBYsfi3CX+ctg-HSfF@thmaeqAW~0`sb`XXM2kosxOhxyrdRB$Q?@ye+fy z#qBt~ca;;rUNoPr=NUG)UWSH?^<`VbriT&E;@mPpf;8oqlM= zqw9gJu_6-(5FdisRU7xbUKsm6@;A&P!>ZzjR2i;16wT74AOyC`jVUp>-j1 z)+$`rlqhhO`LH;*I_aeUx}d$!KA$+|qTnD&QIwvFL?1}?kiVBY$Ik;bMbx7!$ zkSx4;P&MjxktqJ6?crPp18u(+@ zFXo&-jNhyZ-QBe)LH_!q0~y(Ge;l}`utxN5 zs8dX)-bB9k$62elN^CZbV&w{)t-!O~%y<16?eHg8%a%{RnKwyOLGWDe!#To<4WG0f z0-rGP9a+;J`YpU+UU}4^`;49w4}D(AARur)rzb4ScglJDrPDX=e3&FCa$fqn?X>MB z?|*-rcYh}92chHJ_r&Ti`QSaj^5KcbcOO1pZtp6}{)g&EA%UP2X}&f@QAXW;=_VwW4WDw_LR1@Y#K}?3}i1%Z#+hY0vjg za!qsDvP~ti@zPU`{ItC~M$3e+F&6%6)KD!8n7#j&);n5Ur zol!YkUFNu`TlQSh)QPORDLcCtIXG}OB&$boSeGd($XMIFF5PMv#*m?Zu~GcoyE}Vs zW^=JBB~LQb7JRRxs2DVB>8%&$HNFKqS8d+0!7AmE;0xouH)OhOcn_^8=wsXzcDi)d zVP{h(2gbFbD-KNM+oG^RE9mtc?VP+=y(L|Tw%)$`=?_D~+O5|Xedb``xL5t2%Q5!c zDkY^Rr5$3EUp70iGM>73kYQC$RKz`#uUQq(alozupnNy=< z)xGT8EvG%~VgU(jOI;gR%&5Kj%eSSILvZF!`TtKgY3JHIH=Wx#$yeTC%f)Mv&rUyy z*59;Cztq9i>uB_8<~?m2pYi_xmv8sy&EmTgFD5?!^K;*w=`lYSIlP&*fBsWX69W!~ zM|;ZGohWt{VY@Zu=}r}gqff3}colHNa&m}Iz}Lo7%PiRqQl~E8Zf9GmUA%ej#DxLb z%^h4K8;s(Vg06X|TXH)YO;kLp!jd5temQ07U5OR51!N-2F8LOnzUmvzCKh(-`TUu? zpG`YEvCwPs`J5X8Z&c3*>!yBf(h&3u{%H3-zs6)mP=iO8>MB1b0VZY!=GPVyaF>gjo;604Bw?w`u48pOBQC1%|Ghq+X-seGO`q$n-ruPHf6%5J5`qUjq&Gh z?09l{>xPLZo*pdFw?DNzsH^MHzkB&Mf0o+Yo12+s&2>KT+3nhCC&%kk7788pTA8*x za%D)4x_8vu9YKyx&(~C>n~0v(YcvUw3HOmp3fr;Z#8kdL$;uXI^fGmO!ygdwIJi9@JQ)DA{*7qW#v-Il=vmEr|l*uP5!kIkR=iUYVm&k}VEeU)z$V-u|*{ zwL71Tm)yT+Z@%2iNZGV6x5mos>#|tIZG|Gy;T+v;PjmYk7XIT)XjNbg(U|q9kb&Wa zY1oFHv9YnK`Q2-TStb|ODy-{2%4}e>Z^G}VDknt}FP+`9-F2RV^Q5(F*65_oy=rrE zTKMFdH!F{?6AyAa88cC|Z-UF34!tg)0Er!QIAY5ZOCx7VEp`=P z*kV?h`1#Pr1u+(z*Zr11fBKgjr_r0q8v9m#smwH*=(P03mz78Ve~g#2`{83~WtO!! ze)3P=Cw0vl0r~#Z)s{@?R$-T)d4cCz_ns4*eHN+S)7>%+x8Gc7_sGiF;*|8bz<{gmOvB}n zx65=d&1zzBT5>=`%=2i}?$qB`%;!h;wKenU5` zGiGwSA2Y%9efil4@o!I$^zY5domIAne@kaa$VvT_waM?VEA@%*+%7J1Bu7R?XhP9e z!EZ`SH(&f+crEbpx7H|zDX$8fx7|KDzy8fl{kmUEd{-YM#Opac4)8kr3NvOnzHidO=TeJMmJes7! zx*&l4phIry!V}#}JllBq`nFAedi7gS!W31N*ArCF7b(cH2sW_aRN!i9;0nl9c~SIn z{l{EM)xBLYHOw3huP%Kt?)r9Um)$yF->MH~j14=k1!!%1R1(4((x|prdF|?t2WIe{ ze|bS-O^Nl&pjATGn1n-Su03zNJ4{=5S~|;>fW_0&&VJICHe&CWyJ=$Mb7b9p5sw`` zN4^&cE}a|fck;{|o9}zV-V0vP$Sn>RnQOo^mw$`l8^;zsuNKAwt()pE?&fyO{C`FI z;nSKJjopQ7-kyK=fV=qqpI;x<fekKKgc~_RcQB{Gne!Vtdhe?q1M7ja%+rlN8TCEhb+TmkTdP}Vx%>ia^(MYKwOxMQl~s;&El-LF zE;X)HEtNUWQ~4zPZ`IncwZ%fRJKy{$@iY&xy(MOr+|%JPIkAlSP}>i^j!Pzc<8!0M z6pU?O^_nN#-sZOI+Nu)ufA-qR_C97%)RS3-<4BaSM2p(A{3R-DwFZLuzK^})_XN;mIR$L zQSW24*c9P*GR3G*mEqd!ud~+cG;R&Dxv>=&-8zWquXJ2KxYH}~_L`(8=YtDp+ z%M@8|9a{A(aqFw{XSd(_Jil`%hbimiJk^&u?x$w1zM6GJ=g}IeE3(Jk9QH@`*Tj3K zR(hW1by<5vVpW82)3qxT&sy?{cg#AmY4Q>^N%3RMVQrNgW=;<3+T$WLQTh3TsZ$h_ zowNg@D&r0n?kUQYYJ5IP^5ApxhRK`v^w;n^9z9q8uOcLPiRLC*k0mXSixg+fbdy+- zQi66 zd6};*?mdx5iBYj(c1h#rm}Tv|^Bf9Qln+))w062MHMS;7xGoIoQcUK_z0Rk;xTMR| ze$~{~vU_)0Ok4N#RK(IfE)gql^m#Klb!c=6+`OnJkjbg?(4v{aa^;H(`M>jJmLyLS zT*>j}qwzQQ*=|9F)^9B;nG(3|g1oduE#v+$O%IeWZFFg};7U(VFUrmR znsxWl97DC3?Q!d)oisd;%y5v~Y;k{Xc6^A$9n)>u1@-ySf}wy-&C*sgZkoT6F6^+m6@H@O_SAZbe1h8Jjq8n_M|v*oMZTun|q+aP%ZV%^;K1WBQuipE54(~e}`}I{$%&gDdmscboQ|wBW`Qfwp z%B+qSfn{#f7!K`tcdT*sVwR4^8aXbVX&WE!k_<0c%Eh@nMC7C0Yz;kyOSg6< zdm1iaW9Sjh$m`g}vR&4iQ844Nk@S@{Jb{};_gcFC3#?ot%o_dRhHKH8#IqUa4g20~ zOgj^Ja`WRIJCD~rt+>qGQ9IwdOvH7GX3x@uIhH+~5152A{j*h5-(1&TcUniSqvZal zcUQmOI=JwmtpA(1`gbo61S~pL{%u;@^Hn)Ya~}wVwyLTy7@Xd^*MMWr646y1+zUH9 z7Cw#$lrTCrQ$ex8!o1G+o%LHEqM;sL-FvH$Lbpfsbm?zf6KSo&t$eoejJ^R9YNobKdYf4}p$ZV9b8^;Ah*rm^^(snMk< z!RK?fS8X>?Sh!@()MdwyO}*msBqD6m=1X_hTOB2866C9Tt&ES`Ir zHkvO<(J^hDvO-69N5S1CK|$H9E{Q6+YUgaLe>(V^buAK8`M?qBZeeuK^8c%&XO{fb zdDopQdu5mB@lN}_SDsz|g|0#vo_CYv*K>AU3a#H{J*5SDon?}M|CH&N^46@^fIYmL92Jge~;1U zVLrFBAos8Z8_!~kX+~u^(ZZYu4;uvSyTnx+pSF4Bl7hBl?H91bkUre11@ z@mg7W=0^R0Rsqkqs=FEc8Wt!qG3b9;tNlf1{gh)CKa!K#Umabk!p*+e@_zpm7S`U1 zrD{DZX70Ll<>tN6V54c5KI!Zi(O7yX<<{0U8hwWhK4hyp?mKH>##j>+q_uXb08^u+ z>HQzIm%KEWW*H{W`P}wIaINHty*ZCJ-RmonX+1KR^=m?J;TDm3Et9LJT$p!ahULDU z|C82zJ7g?lIsI9ig5xpAnC?e0>v$O+Yozfo+<0;%MQx^tlZ%m`_$SA`ixgdEtLkj8 z&wT&oiBHxhBWt5~=f6#G_bI&YUA8XfO?&7RL9dsEo)e2?&u^1mDx$Ds9=k)2qQK5R z;a{c43lAAM=v~V6)?^il>@yDMT($4by8@wkL541ZI~_XiTw${`OK(V&QNA2C`Ro5i zpMo_z-=_8d78F!0zO+-7VS~>0pyPFWHeUL7=I(9z`kbm|I>{$R6qS@y6Jlkis7cA+ zjqeQ+2{f9x<)Ui}hg1lMmQ&D@C9QWJX!S zeqhu0^3wFRzdujcpQ&}N>+1nAv58iCQeRrK{<*GB_bX^y%=+C`XWinuhdoW< zp9XNK^Jq-mV!M8w=@G+BC8sZo1AgywlVuM)<*jk4FZbxz#})_mP5quMG`m;hd0sUB z%?bOvC*^ESc0X%c%;`K^J^O($gFs+`_E}x^+xI4(5N+XKk#uZ=aodU3x1BCg5q)8+ zqV)XVRn!%w9ojtC!&7?31Bv4kU$&oP3>Nc`F4Ud3Kj+xYupsTT921odt{rG>+Gt|o zoN~zRoaBU_CXKF%g-X1-eCJq`7jFKkzKh*`UoF$>yMO5beF=P4hrGj1r+RZFa^B|`2-JMgWBA00Lo?asnC$hfl_C1^jPdE9U#vHWP%FNo7^U%p>o4qub%rN9|mOLGBblS6~ z=tF*~YeTj@#bYNjh znNzH1p`I|cN<_HJYSWrv6}6}4;=JbM$&ZiL zY(E<7WPSEPXx^f|%k#4`>Rq&+MkPvAb+!a~Wk2d+PFRz4e3K-5!Cnn6-P_krEHdb8 zK2dzP$nw)`h6GE!>sDbxDJ=|3rj!ZkExRU`X{@L|TLj=dJA|-tA!SpQ!=LkUe;h7-dXlRcGh<%m#XwCy zdApJYZ`==k+c9;EOtjbiZ?0=iL{C`sC8=&rn|A30>yq1>o_bmKtqEG8p8oun&2II_ ziixTzRufnM6n5O3cav|T(-8$e?NZS;Lq!FyJ`Ej5?&zzA!8!~XoinCfQ&}q3!*H>n z`CNSU* z`kjmro~X*QJ*O*0;#AevSp~M?5p_GG)`!bRuaDTJG3nuh4?VBd#C5$Vt#IvG*n3CR z@$9q{Ef4z6KKC*$F_^C1(5CSzcxA}apw2@lHt8@F$+#a2D(F_4;&tt{5ts7$(%fj~ zMe;uwIxYI9hIJ@BwqV;Ld~!pOzlu=L|L^@wH_MnF9MxIyY{8{FDO+C|d$?(B%bniY zk{o>?z-xZ{M3cLYsV-d{A_hTTt5*oh$j)5tH^o`>wNJEO>%%*DbeMgE+=4tMv(^eq zK5pXXV`!4TGGXOJc81G6B7!R;K5f0kv!zkjbmu~GF~x2Fwm&%9wAy-M`-eyA7N1g% z8&-&A)kbK%bhi@qE#CBXW7w?XV+@{Jy&6-!s^m0dS6`Jm-nr;NVgk3EYoOj-rKPXy zcqI${WRkBJZr0>iGOb>*XNCIuIVU!>rcOG!B5M7WRWnsyNC?f#UKqPJtdo&z^)vRE zh^s+MgI1Q6Z1G;Id;8h~8S~JOD`VDeeQKG&;-#*mIJIxfqbTX1&MB`sk1-r9zOy0f zx4!7n|M6xr=NC`g|68f~1b@>3{zlGYl8@&U=2>d`p4w<6ww^s;Dp%u-FfT7ot4AIz zm$vQ9Ej%bGsG+p>>ysxBExzUExdy6;DkeK|xSW$Px*XnPcx*-^=hhuf7cMBd8fv<_ za71N0ZCl`Y%k=ZvlqRmY`g&S!=1La#V>6}~T5E*-aI)||C_a;hgr7&Np+n7LtA2PUYgn@slXz= zDM}6rJ;xgi4Nm)hIM5%mWJ=l*Pc4>Q?k%jVi?_723S=-GjNBP>WeMwJmlHb^-15zS z6&oI#aYd*@!b~exK>F(bWyWQPHcCA9YM&)B$?ecI9l3U?k1MVpH*FEC`}atwe#^Dx zi~B4OCa$#?*PHxP@MxDuc$O){qn@RcRw{5v7@OE_d@zSITJvp{pGu_en%jMA9e1vr zGR109gj-QU;O{p-?woi~vP$`(Ma+UrK3WIomT2jmUm|p*P0MwItJ>8ty|XNivbusT8!s&q3(=X>m;5_XL_3ndRw>ALOpkk&;*%!{8@5eL{^$_lq~V>#SGeS&NzQS$_a2M6^-Va8 z1shgKavWoGU(#7Em2Kb0ymZGUE&<7+V;0FPrtm3Uy}Iv2(i+d}KFbas{SzX-$7MU6gK77H@HGBDeVLAgjq|j}^Lj9WRt&akQGdEhjo#^|6EN#A`-f zOlKo_yc8CyPKpcCl>Hg1d(d@X($NFoWPhh0PqV&sSAx|`+k467+?f(iuCt0C{!Mt)t((%fc!qJ_ z3PTPLuair1-e(-=zyHU}`N~1d{J=XIYa1sRE}UY-U%Ie&;nvJY*z@|Ut zn!w_Q2<_8l&%M4f|K|66x-3XmEl-rqab?J-zYf{C(M;lqg&CkCx#VVLQ&Z29u^goFjVcULDQBs>(~o_BXw{{4N@ z`Fk#g7@JR6%YEcQ$}!*fHSL*xrzMKcNgra0iD2US%VFL*pDkjd@iEKrHfM$d2{RZO zB&F`UoVf5ILqWlmD`w%xX_99qFdC%rHl0x8Wml5Yl3F???9v8-jJpXdI+Inmayi@g zB`-~p(U#17?Hl~XO*BxHJ)7kTrp?6d0rQTfv2|ON*0*aZebF3Y{ZCmT_ zcRpnD%Rlp&A3Hwq);!2iK2^ox;Do}W*uspA6C3CD)qFoCdV0F+A95cT3mTJk_>*Zfk3sUwJzE zoZas?jg5?oF0U{7#r%W^lL^^O}SU zWf$#{YyY(J=dzzl>1PTK6&~x!Wnh@5=2UP@-Rtn-%U5?v&F55dbvUx~!JKR-r*)>9 zy-f?_zr{|!emEiR*@4D`54-iOlCQp6r?GDF6qlZ2whr}O#=WuajHYJ<6fT@N(=uCX zQRXD`Q&(o+S7KPo^WexliTM>(r?&;IG_kOV&=HHju{F6W%j)*Dw{PBT$*sP;%y)Wh z*~(`)QyZ7(g_Vp1Pm8PFw8nklpKBc8|X3V&;v-tVl^80@e^4EQ6mjCm>-R{%G z?R%c;IttXh&5r;5=efPTsp;3-_y2u+ZvX%1v$M1HcRraU|K|bwy4Um0@I;Fjy{Vda zUpIQ^iJ$cwJe3(3T5e33UCGPT8@pg;PhQ>~76zW16L+ynzwuf7JNaJ5t>WHFlWihT zF5HMPX%t&)d*x18^4l4gv=5gi-?RVZX0o2K!$HtM$tlFeL8CK(S$#vto9El!uMJ67 zjB#yX@-3ftLnVaMSHmsyWX^6mHxHecOPTlES=w%|y4%q8YMnro`Gd3SU0>y!)$(q= z=8^V&(z`K@W9h7;d{NmMQ<$MHpjab*~|qOZ?QiszdEhU^3_qp$@VJ~ z=LtUlbKL&l$F`Z?W6}rpVV7kyas{YpH6Apf8Tk& z_I33As`u6Re;>F1SNQSK(f=Ri{|BxO`~LoZ{k6#Sy`QG8|I@wyNB6mNeu_st_0F*t z-cfeDoRu-5zR_@2W}WtR_xh!!{u>e#%!_M#qb?td6lB;kYrDI^#|lLjrX=qFW)g`E z8IA%SCQ2RCz6b{f|LR@K<8bWG{BUMn{(}~5zDJjtW}MUU)e1697Gp5Vlb<)k&cNbO zt9Z7-a<;=0)|g5jJttwb%<)K2;X%m{0huCYOB@-QpG-^D^z<@)a%;iq4q;`JaKrTh z(T-hW6J|u!OEIsk^k($TzWr^&!#8)nIP=^6cr5=nr6y;N;W85sRo&ZaO%anguX3L@ z>Wyt{YqS4*e*3qtU-v&czwX~>`~St)zt-G;9y4Rkj)$EY%MwgYY*dZAS!ZQ7Zmrb0 zdD5Ft`ER1czK6W|5|WZHU%$S+G5NUhd7I*^q2aNGM@5599h;S7w;;JS!mG2x{BFr* z?f9Rkr1STDyyz~^+ED*{dwulwyt~JGrPuHK^(sd1`|`6dSr-4y$WVOt)Ma}0oUfO! zXtnjeJMwX@a_;0~_Pn~+Z&>?f*h*YpsQGt8!g;HA%`@+B73}delz-x;aN)p(O}ZjB zYO8)7G`?N#wKkx@AtXvL!y$oZ=YvB+F$FFcc()a>Jl5x2$hgSDOu{qwi@mc+xd6IXTazmoCJdKQO~>k(+y5me68z zk7}`1f2NtcGW=>$Dx8zJq`s!6=JGP%IiL0Gf1X~vc=7yyUzXQ@+dN;^q9Eb(v$M~cTk|39wJxv}A4==!QqyZQfj z@Bh8qceYvWBjNcC%P#+~&zP~?q2x(@!I64*8UH1mDidd|-<&tM<;%yVpF85S7`Zj{L>p?V zE|NnWOo|Yz8^R(Yt=_+B6RpiR7r)UQ2~o4xXB-y?)1|E>Z2Un)lWBqkm}s{{H^|@%lf< z`Rjiip8xYq`WgLsPrm%?@Bi=Akg%{r?&+p|9SPh_Mo*48 z=dOV=Kk7t|-+45tdAf)9(snnuWYx(lTM8B#@a2m1SO|KGZtqCut+Xg$_vx5xGSTHy znz;FvId1=@17^DME-|_6KEuHzKV(7YQS&?V+g`ao?on!D<4w8w?fbsZcMmHszB@N| z>w>uTu2I?NB$8vynu4F~%6q`RWQv>L0S=V~T**laEC~`B*M;kB|NO6gsU0j_od5sy z_G_<1k5wwG-1!iG=5T^~)wHu`A1;|!{JJc*`t8>Iio?=&Usw7cEu3@y`Tf7|%Ip8W zj%RNW)eb8uE3^CgWODqkOVhu-y}dp0a9iguP5sEH!ofkJihU!;WYjDf1vv6l=k{RKhM|y+jV{KIhI*|X>I?f z^KAaDI@wdPB{ecopXOqhraGv<#)a4LyqPS(A($itBndPTQI+Vz`aRL5abm>Yi}F z{l1?Yj~mVOk#OCbb>IS<0~6Z{VbA4ZYmXbPyZZVBYv$T5ZYq5zOuHGBbSH8itdP+1 zHJW_#-q+c?!`8=E{`>j-+Uu`j|GTICtd2Q;_sA+~$Ay!t*SQ?Atbbp9|MtCm|5p0f zYVkN9FRc5vdA{V!{Vx`Eo8{d25MKW^{Pwoo>c`Uee{5Y}o4ZhUe}Jsfv8w9o`(Kus z?|tc;|La4${hyoX>%g_U`M!_6*Z00Fz3`;?`JDP+m*@X`z5n0q@V&1>r&d{33pPQ2;W*jFlY zWx>M-%z|8b+Dmh1Gb$*b-Ql~UBhzW=QYBs8FFV3I($-H{VaaS%IW>Y=z@V+9g}H%a z&a9OUX=gSDKIdaN&@tuK??c@7{|qbloJ;n(hE{C=)iYRhQIWU7; z!c(+3(UZ5QkZ0+%i9#FiZypy`1#1(Eeb6O zDnWv>XKPFLB({9&RG+uw@3-6W6%Se0Ze96k$BRYXWp8eLocq4!`M2Bo{|~U+eRyWR z|K~+_`L8zo&n}mJPX1?S>bwG!(bw&KHmkq>&*S$M$F1M(d_E6UM0dIzir`M4SDB_X zamV96>%1Kg+y1-FW)S@P{d;`b&D2DRw9Pk7v#+g*-~X>ueO|}o9bv0|eSKxGi)C3H ztZFpN-Dlx=N04E{LIFpCx3{Y&m>4~gVO6|*>y5$@iOsqXcj_g3L>0BonH`|1z?9r; z>@9h;(8FbkiKdb(kHy5kWXte1T1{g6yiP?-4vO*;W!5x~joOeQxbfs=`}b$%C+=0d zwZHy;`2Js0KYlE9NmEXinzU}JZ*}XI>od!&jWVaGm@LiBE-Vi}ws9(-r1{NU1sAp{ zTXr5jv(zcasA`F1^8H`m%evCKfG!F+_R*l>SN2};Q7C< z=x)C=>HPDRGdI6~^Co70-QUCf_HTB*1BH!$?W^E<&$mwcb%*6(Sx_#wJO=ZrhUQcgjuiyK6-EP04y#M-rVG2hI=XC4u+p&7}>rbck z_rKY6+Q+{A+_`iA{{5S(9scdh7a8GG`8*d-1kO&;k_wmbvH0@in0ABHmRSB|Q5M1H z)266cTwjv3wsB%u5c92VqHYrtcygne4UXkVZ@JbM6q$Wi!jOe`mWf%EUO~r}FFNH# ztG2vu-8(&|B<#iX9RfX{pB*x_kW*o~yG6-oJ?G^E4|kZKs4?ehI&N-nW^A1uIqlQo z9HZ9>TWzQJJ+heZ$N%N~dn=2m_2GdX>$W+?mp|ubPu1)w^8ehYz%o7Svbw@x~5M`BJ+&g*My z-`9QLz4>O2yL`?c*RBJ_!1G52XZSM3{{Q^T0EX3Xei3a$j;U?IcTHWrd9=} zV=ZqhP8jwnH~*U8#l(<&W|PcPkCQVxOq`XHxP!WnpPDL=R8Uax`Pp%yb<2}aPF9*- zJiRoXdu594hv_=6%5$sV-)mlXRPyE5?rPcD{Z=-a$r7(54vI2uVOtt|Fqge^%h`i& z)*YNv`WBri3H^1_|6lUWRa2R}*?8_Oe)&{r0-HmI+Y9M+S5EROzu5op>v~Y%C&egJ zCCE#&<;Rqp&)fcbvG`@lEt#@S>bZQIqj>JT4xaxj#NYq?x3{>~@iZz@hJ+3N0|krTAszTo4ElGT6i+L$$;VpL($ZCD?( z=SS!Ad216^?!7SYOVG4b?WN5M98Cu{O?iAHQ0K5l-=YA)ETy$m9{FgloRa3Fy>`o` z6_)9Tp0Mg3v`ptosH%Fl^R2bDwNR^5T!A>FiN@qj*=_+n!F_84@8&icJr{n{kalR+ zvgOPE6`Z%-8nkln1-=ATn|s&q&YW;%Vo|BqL~pgMue$_P8p6Jme|@%jYt>rq>GO2L z8bnUrc;q9jAfPqV>lV|&t*z6%I5?(kvM}$BTQ&95wdM2Tc9qN&WGeo?#mt3GYO7UU z^|9$y#~3!`-rjb7-?y#2=N&Z_kAV87`~O}4U-fF`@}4jM-_Lm2c3}1H-M`;#KELnp zx7+_;t^fDR_I>5~e}8}bTRsJCw_Uh?{rjV=*F6>%F6fn(I&NsX^VlN`v)Ao?UQGYy zOUxi*1hF8;bLChg(@2gUiD*Yu?rg{})* z9MLxMl1ripQ^EC8NoUPe30B7k?2Yky)3dJb;@UDrYl5J{t-hm@Mvqqd7y%~N1)N!wTny%f@Jy8A5MXm?aN#i9t~K@4hlK~1yk^iy z>}))`SM&VErB!M()h=ojo>R%ywUUlKhWvtA-S~E**j~7{< zR@>tx5E^lJD+}8S4iN?+&6V5oDu1mCk9ljA=PWqO(hgT40K-d_4-PaQ?G{g7 ztf(`4?%dk%yYK%!EdOsqfX0lw5B$aFDYtFx_qYH1rJ0>yFM8V>(e)KaPnS~sVt1f%yLXm&d zuQzwTDk&+6DZLtcH0k1l|7WVY7iAO_d|0#jTv4of-(%x*7Roby?7rPdwl05X^UbDd zA%j7#H*ZGU)mw2rPV9?P}I(p1>09=A3qmc&DUf1^M_dPn!SrJ z+`rA-@m0Z3CB|1{s#D5TuU4r!TMH%Ju10N*TYW6B$54@3NmW^Pb%$akgRt-p0YuT1l?k_i>D;wj=hzy8N1!I?|Me@*bNl02Sd<+EE( z^8<^2deDl$K{A?a71Weu|^K5p0-QCx5<@YL|Z(TBf7U#3aR{PYgEOk1>6dqMRpZk5W{NIj_x=)km zPdWXxzwXOoc7C~*>60$5Tet4tzkl9(J5%oND&1Z7R%@!4_jJ8bue~1*af8YxdS*N6Aq_TE)KZ_uP^vj3O?yDVZKH$OZ*?rT? zljZ6(uQ{c^mif*We13fi10w^2r;B5VSTGgJPoT=~+r`rA~k(l!C@0ERiH4VF#@ z$s)#V>yoY4y|v79vT!O$>eyCb%fF>>F^9-iEyuNb$&uSxrfQ|?xoAy(cF2h>O0(In z{a8%26Tfd@b{y*_gC4$j_s=uz6qr^J!>F0KHu4Jp)LCzLb^l^_b8ElF{qxBS4}ZJc z(>|mKsOOr`{&GvG?CScP8Ovps%d~2GKMBfvp?z@XS%-oXDz^8h@9RlgtEzFlu>0tx z4;Nl^rLI1ec=C#liNc}_Cyt&?=XkMnp+g#@kFW34(@&3G7J4+%U9R%k%=CTV_r8}r zy{nf9& zd3w{$HwT;9xm%s|rtkjosN3Dm?cJ`|>-JWEfA;z3y?b$wH^|vk6qJ-)`Chv@Mm$YR z>|dC%K{3mcEnk-fWnEt8D;`&|F!%QIxn)r@$Ja_v@>{-p*RCl+Pm6wjczC#5OgCy@ zO=Wa+w6?~c535)mHd~4aK0kBgX3#N)69+G)1eB(HC||Zo(M?U1vu)aj6q#d*Qzsa% zo38UVVp(oqcAEFo>iY8f1tt-3rahvFtfO2N^v)U5|)N^o*1HzS1Orwb&i2nu?T+ zjE>?ymaZ$0{{6drZJln4(a#j7iRzP2E_vdClR zAkHat_VW-OvEFMYOus-q#{B=^@?)>(?wqYQ@AHSl{MTQ9UA=CX7f0bD(*&2ZH72&U zvMi4E_4ThWyC_ZcP+7qFL`GhI{q@%uzD)Hu`Sts^{*DJt3l}c**56x_kdTm;mUeQI zs+BQ7HV4rSQ-VIIwqY=$XnDy@nMTh5JOLtoEO$}T3 z+DLB~SL@Q#)2sVV|Egly9wJft?MqL8&zJJj;|uizo?Z%*I6Cin$@X$CySEz(wuR(s zr`*<=x3R@#q380TlQ9yvWHxzDbh4hK*&4V+B(l%c)Xvb_diKebMH)?RPiLtm>}m{1 zy3)e1cgfnMd6VD&_FB1dJ|uJE`u=}kqx1KgPW4(EwDS9& z=eFDLRlWXtJwAWQ!ww%0;n#J~=a$#~`#e9~%d+pV<^ONn_vdOI{q(cOXr>9%^WXpG z*;en`y*qm19O1KObN!}!Ej`*T9zD&}%xu|KGe=L&RHKf6f zdegP1c1-YTg&zCP>E`Dau|J!V}Q+CoBks}fwiz|cHWF|2wC_A{MIo#w4%yv+e zNS+upO?6I+)7djmi*jey{JwnNHvSv)mbW(!?T~w3G}mYfN8+W8vgdYoS!68Sdg+$f zI@K8hD@-mk^cb%!5jo=2p}_ITVw(=PWt30Bv5Cb@kD9huNyb3>!&zsbqI45O8h$E#9FxX-0oXktv#ny@48%iZ1ha# zlIL={)|*SxH|Ow7dVWdBb!FK6)xQKaB~NQ~)!fgY_2%r{S~~+%dCp4DDUCn31ZXfE zIC6xA!RF70!^`Isd1=4epM8BDXhK4N&xb?0+wXij$X|D%^zQrG_tp8eucJX-mHMC4 z>mz>%AFI|A>o&h%^I5sy=F_+B`~Tj3UsrB7|Njej`(MY*_kDcWF7I|EL@RZ}wZ6x9 z>i_>WHa0#zUBCWhsFjJy5ed-z$gyL`#B`%l_Ix{c?p%t|%#$fSoZ%}&Ix-#~>wP}I z{vT+B>Hsr;Pha1+uV3euUW)`-R=)rD-IXgf&s8c-eDUIigtWA_2$##2l9!jZ@B6y8 zolkbwj2SDgX4%@>wmLoBy1w>p?f1LaZ{FOQcXwC#o=2j~8ag{b#k*)tv4t=4j0NeY|x!;c&zop63zpKV%sWhZ>`AXw($=}2bYxD*Eg>8ruF9B#=>-l#yG#V$&Tr@W+3>OJ!9Z!u-4s|eyu zNakDXaPo6y4D{a0ma`Uq}#pfcoW?g-EclTq9v>r+BSL=4aJN2|^XN=zb z^RsWwJ*~e#hGXK{wAkx=Uo7foV`Jl!wVHDJsm=N7x7qQ#OI}`j_b%_)jf2hX;p<{< z-o72ZHthA+s*Mp-f^Kb_>!TKX-L~MtfqQ$aeYxHoXkXTXvcCtV~{IkKv_DF1w?C*55Tq zoakVjqF$o(T-h-r>C&9ywV{WKTT`#Dx>_dMG|fTEQn+t!-f5#NMt!9Ms*^is#TVwz zD|%}%rL)C-i4vb!_7;gtPl_0QiXT>WnPfhTXu4qHcD2>%U}@~q66a=pfv>Dx|CcZ+ zbVwX8bay|_Zug;)UA{(u;ndSlk?C_&bEMaP72p5ERe9F2No)-UJpPtXr=-uX{TBcK zYkYfKTiBY2i$?2(JCAJN|MxAo-i`w@$7cTomHAs^^t6}SobO)5A(*}O*0Zy-*YA8b ztN5Jd^3asxMF%bC&z&nPCl|LRLy+OimoGj(J{IR{9(x@xv^jr!L!xtheEiOsbz!TG zjg5E4m{r{)>^*^s%xw6o?{haOhm~)j@bN$pNr_ZZY zV^|Zn*J}QG`(G~>Kc82ols`ylQ9TN@oIV|e!%I$ltA5HZZ`%6y%`ycydshd7@k$}X?jLgo-`@6p8LM$ z!NTMJKCk=jWorM{GPg5i;o{=|^X~RFzYZ@|2zT1yc;x$Axs5ZEmKbrKb0}hD+Nl^? ze1}D0+tXVY%0zB#44Nfkwq4nU%|+@;)0#Vi7nv=D`0^~S3rHw+FWnN`9(kus=3r#R z`po@YjvZ0Wsm+%T%$R%5W39^rZ?!uHbNOCv^|GA%VUk|uy65b6%Dh_F8YV@q6v?<0 zwAjgsA+fXO)W!+Ndkp*L&W&C7x-Id>t*CzC&uVN-;xBP3D4pJvwe{BC@AtAbc0E-WuX{cNe((o@G$7`+6mK-+NHi z{P&pozQWIE&G%QVVife{sk^!=R9ILzZU3x!^WMFEdo{{iQ}%e|u9B4#wKY?h2JHm( zWIoS*uM@YY;_9lwhh;+Pg2~;-abA;c1(1ipNzb&OTdKTDo)H?##<-lOv6% z?+4NG-peoV|9Ljw?%T$G+uv_CuX{af>F&hCZSU*<|CTn-`%=3ST~U*7-cseZpfqm`A_hDf{gNU`ir%jeUM_VVU#2>txS>Cu4+jU~40qxg+} zo_l})-|Fi6{~J`EsqHPY-0|$w^!e4dmbH8O^}i2y)Qm5fy2`LbV?`j#$~BXHth}zW zDz7}bY0{Z8@2x+2N>}S1?=?|0_E5anQkJEZ(DN~E?h3cbfkxZxOmg0&wQT&E!oaa) zitOE3=F`*9`ueNt92eEF@J|m~AX3ogvcOb>fw$>qP#qhp%?bsv;pA-m9-mg`X70UKcsbq4@3X?eMi>@)ZvnyY+UxsJ{RE-g5iD zFXjJzXwR>@JUfns*U;El*fmgqMeS{<*3_E&_ji?M>rJ=*e8$*#W>4p?S+f%&uie_3 z4eGhhFFt1p>M@z+-b#rKGn(1+ID#WkYbp;z_1|A#+4*E7WMxfP+fF|%xq4HC&axoQ z;@Il%@BUtBx7(6^eI01_BRszL>z6Mkg0_D?90t|p{&k-wzkB!Y=FOWECr+F zZo`jdm;GaR6@^N;2N~xXUUE^J$$jJ2M2lp#)ZmT!pz4y|_3|Oi5=lniQlq zX=US5@2<x=+P6o!q&StH@`2>Woy${_@1Y^59?M_iC#q$~JU7 zve@@_+wHuaPp54@XZ8Bc=JR!bJ|4e)`!;B_?UaOWpvc~zXY=cxYR6~pd7{9PmX-#Z z0y!Q3@6$wgIY~J=vx^SGdFFbVcJuk095knTsN~!(lR19pcGTK!xwp-P(`Dr4>;HT_ z4w{3~job5sJO0O^)akKlb50AdWlT0IEh~$fHudz=9)3#$g9TgbzFc(w{rh+L+Ni5s z=YH&~|9-dp{MoayRWFzBjLG}{?(V+#>O!5qv(2u)E)D*Wxoyh3ckiOsPV-Rl@p%5> z;o(k~LoF7J3SEoV*S^i3>h<(mbpGGn`+x7gruY3_`TpO1*6)6R=3+t1gw*t>`KYO@ zscp-<%f-OXCu33bV?*xksMpulDdpTYi8V5;3qHMkHjn)0_tDb~SYvLrcrjWo+HhlW zzfIZqz5OaiejB60&IIlI7E}IxUoEq2u64Y`%sB$f=UN?@sl52c)2f>e)wUO$3`DO# z_E_a{_3wd`YU}s>dKJ1l{Or_IQdG4J?_j*{6}VV<;!4XWS5DMz zouuijB4w8J;co2S^Na#3QZ7aBN-^A?BiZg$T)(WMq9CKDO6igo&!ViQlLTgLU_Ei+ zSxZlAUBJrgT&+#(zm(|8=!d#@9qoL%%0#xbN!f@cE_JBBQ`_fYICYw(4a6{q;5Kbu&AE-6PPH z`*FLnE8_aQ-xx7il)ShgeeXlt+1cjeT&QRKefs0tM9(H`+3s;->dNbRu@w`Uw{^QWygJ< z6{2NoXLs-Z{ri_MC--bo^`2()_siw4Rew|Ut0k4*-QNEG+wFXPv2IWc{lbL{*VaaZ zCYj|e3KXV#t&Q5cYV+pLx%t)6<>lpi)4i8pUiOAjaQX7(+w&Ad7Fw4yI!x`{c_ptQ%^swi`{+5;LZE@@!N84e!U)l-tzz1{JPJ(uJ85BwzaUZ zFg8xU{jHIio#)!({rmr4Sm?a=*9eB$wb3@ zgF@HoX5ps~HU^*naDMNDoCOwBOpmEN_BuUdVe&RbrehNYi+Fh~lvNog7%uZP=lUFd za_O;D6O~@Wb)CC*@1A^e$|OYrwP48v4H@-Wv#S4`RNt0UTa~oVBwFk2*>k(58DF?O zb*rn{Z1 zzCFI~=hOW9-?zov*w1XASM%xQ&6_t@uiy6z)cOuz6H)l<-K-+bf6 z$H#Je6Te-a|L@D3;&Yk#`SWMaeEH%<#FmVU4-dE3-nW0dXkOP>YMDf)aE?* z;ex8FTMUOTzx;CMjL*V=6KR{BI<{tCUl+GmO7Q;AbLDoQPACU?o&S9A$1(G|FN@{p z&YCrA=1j|q4+{$UWsXbA$z6+@o$xv`eQv0ZSbAETRIW{-GkNb8T~kSnbQ5IxK;mH|}jbSi88LIbml^^}6PpP0MX>m&q=jqBdjh?Aa?> z8lA3hOO~weyQ_7>-Nh+K;6cG0_Y8?`B@K_oj!1OYf4S)1-roNE*RP(38_V9_nmJQa zDJwr;UP9u;^Uud7=DN06JfHvfP5S=NbKloIQI=nM{k5#DEGY5FSHCgTOs%fo{d(6- zA2x<%%a+;w|9Rg2^BH4M+W5ck``-0Wmu0UFUMV6d+U+V_+oYz$B>4L4ug(o7ZlU=% zH>G}mcUL^VW}~N~w2|B6PN~Ps!&ZB0n&;iA`1NwR{f7h0_J3dc=kNJ=EIM!J(*67I zN0F*iV~=%EX+%&+-mL1&YT6$R7@@p0>CC_q~@JFZyUDuau~@ zS9Y^a|&2=12-?lWFAYmNsN<%CY+6E+8iZe z_wUPQc0S(v54GQlEACSlE_{ic*gbrzpLw zeD`o6^Sp+vtviZuPj2lyckkc6z8brUK78^v5js=b+}yIBZeqK8@$%NHvr^Z+>)-#j z=W`Nu*`@QkcJEs`$DL9ke`dMO(Vd(e8OJoaGbCCs`6iR{OwV+y-PYmjV}(!dFrE2R z<3f|mjKt4Z9S-y-ht6g#xE@H7TcYWpA?0J>XBo&XGHNXGou>3!Ri5@key6Bnte#zq>&zw0U zTYl%`zVCa_pSd96y6^q`s#hzY&#Qh1TH6vPx|8$n9uDuWne$R3gHA16xbWV+dpmdT ztlFDbG+kC!R&BzrnxCJ7R!%wpoL|P`!`l4X*QV<$&zkT1$a}nSk;bgqvx{S|f8Jx7 zeN88J*O%`2KZ_nt?_0ED^XAVN7CPrw-@eVp#&%|{w3L*VSogm7>tlCsTfY4GrZuzk z_w5W@Eo)Ws;={wkpw(kD)92m1cdxGl)b;2(`e(|_S zdn|blw_VS+$-bs?EU8CP>QH{-qj?Oy@aHh1`x(FkI ztE(++pOizEV_1b*irmDMK+7Go_0*sI9#2ebDO%$3ac4pJ*uNkXCzAr7Cbh2~h z&UU#frvmmZ481326qfn6Pd%o4ysh<{(#Mz2?ARDQj@)(m_2{&|?b|n-Z~qRz^ZyF> z?Co!TIHE&qXCJ)xyj(_ZenrypfB$QqoLv5$M^0{j)w`Q-ofj{bx_R{Zyua(D5Q?su|1#mz9yZG{M_cUjb;>{1Q9MNg~7Nh+(lCOQ+4zsVv+ZRQ(a_9XK zV@YU`k!=1cRl&QYQJ_DcHE}cB0T=a^onPL(eG3{JS>)P1ujZ5I{qN78Jp-+wSsT6m z+?g{B4qKy2W4}+H|L4gE5ZG|>j$7_*hc1Dn^Yd&UKYr}g(XGGl#teT3153-F?e>2b zM(DI9Mrera`}0(P`Q?`V%zRt!>-)ZayPaPy^ZaJ|{HJsFKN4NP zLFaVo-F55M&6_uG=1j@sg=y*O>S}8D{{Q>FK5p+Xkj5WBD)RH+Z@nJ(yRUrDW8eI$ z%klr7#_t2QtpC1_zkl!EzdxVP^Yihoi`f~(VQ6iw-6A0`pP!!}zo()wJw4rO?z1`T zV|QOmn1946_UQ9&{^-70X4lM2Uo;DF2(U0{EoHv%uWozrz~&vy26i?jJAz7Ny(d4K zleu)sq`)=S)m1xlWo-&J#Pv@#(#e`t?B-Corh_{{rXytyXF^HJo%P4X%5}~y>FeQL zwk7XKt$?6pgPPT@O^ki)>s=W<6JEcV60>eY-QC0ewpHI|O24!E@aD}MmFFgwcHhoi z_Ak+oo*upB#|P&6h-;UxPCJwF_WIus)A#?p>ubK}TIZ_b_Pwq%pD^#{D-p4hTruaZ zQ<&kAcPU0sRF*D@;AE|BJ#^y5jZHPrepc6O8g)LM9;3b5)nJ>%;bp&DxL+%LJTa#x zdq%6RrRC1Lzg08zFScFwvpyTbdZ+gLT{f-HQ`gr#mA?Pu7&E_3!lh`?ScBgFKSifE zowItq=G(V#&h30N87A(`KAQCL^ZfsRHl?1v_v_krz4(29{{4P$9@#4Y_k}yC^ABqL z2K!m2f|ktAc?BAWJo{W#TX*S{;^JcapC|pTtgS)C_uJds*T?MKw15BpwQJXgXiYu+ zw6Blvu=|vgDZ6&>7T1rnF)(m&0hL~Lzi;16obcXyY^*Z=(rT0k zxlvm{P*f?ZZ|;XnxstM;nxR{zD*7bkrS-Ho$+~Ag{k`w4Mc?CNfhw}M*I$=8sCw+H z#j^t)B9~n}cs!UqmP$Tv$cX%Q^_f0# zRWFx5`wN;#x_tREXvLo1o)1p2w#{nV6LP`0()Gzq<3ExmpjculuUq{L*9j zWj2S66(1jM+qO+Qe^24bNvdj*x9{Dn`+7Beef0Lcj0_L2m%G+o`xUC(n=g*$~`sItw?>C!Ymh9TR*|_gN7+f15N9QK|0 z_Scx(n=B$^P9GIYp0>g9YF1CN?}DwF+Gi~kg$!I{3XT_c7f&_lsnlA?IgvBNWV-Ry z32r?FiuQ75I!eMtnR;z(du=k-+NuZM{PQ8DGU@8>`_oU0|F>h2?1z0HRM%%G91@9*y3zJLF|*3;iF{p)|NE8m;_^3u}sdzI=+ z_p0CTWfNj&I6Y1G_rLG^|DOuqw`uX>$8FMi7oxxmwy%cA=f>Qq|M$G!?)#nM^?SeF znw__+vxDc=Nr{j9-Y>tLDco#7@r&@p_rKlVgE|tRAqUVv*S>xGHg4Qlv@_@SHpUg6 zn%i@4tF=^Io_%ji>gj3K@ArQHbXwoM^PZ1d@lnz6Ifch084~KIcla1poSdW@DDw9H z{{0a;%Pzl6Jw0vanJ+hPL?}({cwCW{)n%A=yG+Ejjq`kn(T{!mb8c?>`0?XX@9B1b zJ{i(w#Ypmc>E)MSUcAUy8M5m^6SvFeR)6PHlF4lDhbJ&6Uvao9)g*iQ&om{L zwOnySD5$)w+Pf29+i?BYz=YA`8d=bY{X>vzwa{y|1HRqJIhk6cI6*|#j^GD1db zZX8j<0!1#}2gIDRUA?$&J4I_O?YW$Id)k!+Ta$9`ZB=zvWbge}%3Y?*FeBfKy?27L zkYSL~?AK5FuFgJRlu~*h#I~$s?r4c%6!##((CFt3l>pJQmN0 z4CX$&t6;`@(2VN#yJfe3{HRDzUmoc5v!?FiBG=X7>+7!XzPB~$XqQG;Py6+t^UG9f zetvqo@BRM2Z$Ukf9nWTE^L%^#_kI2Uo9Xlag6fg{f6wxtJ$p84{{QLX+ z|C{swM!LHn2URP+v(0ql_t{MJkg+Oxv2OP}tH(XYK`TSnhJCitpM7>-;W0@zhrA2b z$9nmi4t(BIwfEk=dv)J#rrUqL68!k_<7uf=Pd|0-7Mr;wTEum#*U=4?)$_tvhR7Vx z%+8jUl#JY8w>K#3`np&(?t3?HTAG`ezgoGxudgpmYbvPfI6u!eP=vE_kKk;#6gHU) z35EyMehK?5<78}D$dHzKmVxE*%^ba+B*hAq<{CxK?oiFY2Gf`}n1p}a6CyEDX_`m+ znye*_63&VhI==jwk6D=-uQhZ{39_266oii3jM=UUv z=Df~!VZqWx3@q;26PqmFok?FZ<*v6_YL200O-4@5qNvrai6P(rUW&QMcJJ!d$(w># zPvc7w(p)jsvGHik1)qqd!tii`Rt6tN#SA|~CXRzL=N}(Rn-jcd#}%Is8XukuhOgy_ z-n>bKvFF8Q&J8tb^&ZPFUymt13!2+IU-xaZ+w;)XSNUrmFn9boSH5p^)Y^X!*zIS` zo_%|J{`~_78X6Z*^;$Y}=FI5)y`=>O1z%rX1r6*+U)}CKU9a}TL3aC36Z>txUJ0Ha zQ{)*QejT(BHsa#(XH zj?{Ct9s)HUH_!ij=0>2u&Br6JuC89beEIR?$5&r{wJLOV*U?9n&*!#x1d4DT+-bJ) zT&sg<#)^mpx2H@d9IFKdWS*=r(XzBP>|_Y?(rZb0QjmJOAzDmBh4*REf{vYeRsY{G z-e13T(oKis3zBt9g(Ka27zJIl%v}5?c3B2b3}RWPbo|O=3BI}jwhs+QB$HjdvY9Sh zvzeM+oX$Ou%VDun>kQRRFF!nBv^9D*x2mmYkxTXOq`dN{T*;5y)78>c%Eg{rx8^RL z{PNyE)i{6spNymgzV8)}Ex8!%Z(DjTGTk+>Ryjzq`Nw zzij!P#2Maa4qnaL8n#+ec8-V2y`SgG^vgk&PP-kIlGvw%_j8i&Imz=T|7g3Ud;*= z0WCk#+g|(o+sBU|Lsy4IPBXQ(&b}79GbV0NMd9AK`Lkz7@2mOwxZl3+-_Pgb-ACum zoA-Qv{k)E}^z{DbPtg%u^4BbGl{U@16jiKrdYiMo#&qr2SlOjPorc~9(F@XgxDP(M zu>R@}0SiOJxb>{t-m(Nbq!iv;5S`Od+0o%~?9wKkCn+~_7i*;S9F5xS*1TA4p{d#0 zYPKbw=1i5k3l0h%y7DC}qUAx^m&m}%=-+CrITu&)uobj9v+n!u`?W8<kMpcYEJ8Jk10GV+A+gJrAYy_!BkV&*r4zIWPiI%sYRuwrM-Q9>*DwS zyRgvt^5x6f*VoYjGmAgL*N`hx$C&Xp@)8g#V?aGbDoHn}A=Yh@eT)%GASZ&#NnXMvV8 zEqvk@ecWm+QIoGNyX~-g>g7L%-285B5?XifE_arl+EntMp|G8!=GN6D-1j{ z1)MU^PR?ZL7F2)2;$h)`!MkCWz(JF#)f+ce1grj76~6b?s@3au{dm+3T2pnu{{P=O zpZogyc%{vb6z1Iiw*TMj{h*3eSXh{?BB$lXkM(mtSHIhN{K`bf%b}@f>+HQ&TJ$ZQ z^84G{>aVNg|6bd^@9K^FQLk68-zUZJ>({SWU#tB6`yH?Bsqk!&^wK=N>DH}VYU=9l zZf@&#zuTp~ZpWiV-FjSy3tnDYT3cKDv!?FsEK|_3qpeYQ_toxx|GUj|Y0%1&(o#up z&B-UvoINWUlDRTu){Gejx~sP3-2Ak$zxEAi3iI#x`~RQU|9cKfJZWiZJpYZAo)uX# zbG(21)>lR7WyvhVXO(d>$M=E(Xcgwhq@$mnp7#BD?&0C~(@#I8PLKaL>vi1iCi~5- zL3sr%p93yTtIsK8UTc~ex^l|3_0hG5dDnX`jaATntnqM{=kaY4!W`Qi);_9QE5(+m zHPi4y{N!6XcYSljv?I5%URcoYs48Bif?|FpJ{V@Nm2So)1oo_xGNh=(n8l!QA&X>N*;J^&byP ztiJwQSy|bs1Jnjv8Itw<+}xWv*9zyT&#P$axOMB6m9=&E(WI?WtPH0&`RqHx(9S1k z1Ddx9ST}j{`|e-8ntJ;iXchpp6%#b0Jo#iwdV0FueDf6xtKaVx7i@0>0k5S& z3j-pyWCYgN|6d*d_tn0A`=(V3upE5xBE#R`-){c-6r-6w$I9ktuiKGyaZ=;OlOHR0 z&M#-2B@mD`>6zY+ex8mA4aQ%D!j>9kb24?wwhN!s;PBLH-`tX27!u{majMv6nPH#k z^B$i12;+6Dwl*qUWC~)~qLY?2QLs=kt*m48a}~p*JSDGZZQXfuXVl6k=cj)A`_25a^)|N!+K#o$EX*y8 zYBEwPR#_~U>|T81d#!5d6V@+dEszaQ*pO?SAb<{F`UrnXn zbZJS+m#yz}{`$Ii?_O}5>&?2@-DSM|{MLP!FJ27Pn|kW$r*m(uwKlsh zoMIHSR_fVSz2q}X9%SyzPx)NSa@r}t@Of6&vkzz9JTzD}VH%I)vBtxZ3ZADslnYsW z1&$YrcqAH}D-X3izLoRn=kwJ|U%J@M zeE+T`_FKrxMUvg7Q(rk=DxNweR9;qHQRkAw#w$xsewmlJWKGGswe=2eLCVfeZr-z# z_ZBm-)cGvl@puiRl91D%AII&@Dh-(<_B?EpzW4hcXm!TlkNx$3j;PxePMMnY&qr-? zb8~Z=^NyFxW`lNf?f-jwzwIlJ;(v$R`Rl(dmj4Udjtkl^>MZ|DfI(&QNmcJ@68R5P zuGD99n^kNDO~T$OJ|DZk?(aO?>TmDvRv(j0=i%Y`^5u)omkZANdp;bxwA7pNfWnP! zd3Rq`-n+Ea`}VC{T2oKWv#q|iCNlYy)Y2)S*45nddq3|KpPyTPuX4`kZvA}~FE1_q zSz|ZXZ+*nZM+X|2=l{O*{NJzj|9>5p|M#Kt`CM~z^K_9$PQ{eXH+|HCSBB)=&dbiO z{`d3w)@#bj%9AHg-uJ%0uTM`hVou54#d9CD&0#dTpnZiWM#eE^0i&v8h^GJa)5i0T zcO6~zeCyTMm(sSqj&j_1Vq(m7PNfy?g2~$iY%VoEIAM`~LL&Wa!4D@3hQec($BTB} z;W=Qo?8+LgndQ09AAZsGzIA5zMi!|*r#mucv0UN$x#sG#BO5ny&Qw!1iUI_}#hjjn5Jqpx4PRyK*RA#jTKbiK7e z{W^C1`0m}i&)O~6`tJ2>bS36;d`7o0#}AqRaG%4Oh3JK`*zSK(SM-z7@#?oy?bkaetNp> z%+eS=X(uihlk9|(lT_0tTfW_L`P3LC`r>7`4vHRXm zJ{ZQ}b-ZtZ!V1yTmrM7**|li@{@o#5ha%;5y|d?fsU6O;on+XQ;4n)hS*C;0IZyHN zfeD&TYME0w-(_SR`4PGI+3Xj~0>2##U}8vEwx3~}7`tHM=HJqX7KzTlc`VajU1eyScZux$ml~vi>cWZdH}EVOCnv%5f zMdiGcw#LV@wnmkge}8v(x9`-O4<0ON^vu7p;o$e${+B5y+5TGOP$+J z9ckq7Y)n#-@bH|N&UwAG!GLS4fS97>eEyCK?+hQAYfDbdVyIUB-uvuE?~H)Sx_6gY zG&CHscyVr3{Cqie>D^&pf^FGkGbQ`^`rq8#p8oRI*45W@Uu3*57rv?R;qb2a)4ifj z_LW>q+xGUBSdl%~)}Tb0Mz_p|DO+dwshKo}xFp`Fy!CVTx|*ra%9`8nT{*Y0&HU;U z`DlfY6+u^ir!nT--Bo&Vk?ZU0>+Aphe6GLu%O$6UAKq*}f3NIz?(wS^+@ha;{`vde z?)=x+*0Oy{c$L?0yPwm%_CvFL&8L&<^3`uPg4Tz(B_FzRLEXtg=DRrW`&kR~ISzk# z*e*YB&YUx8n@>;IzrQKfyS)7Six(?`w0I70+qTWQov(7<^?Uc?G(`AhED|gN`Q&UQ zSQ&&E!F#j@+28n_G6uzxtv=}jm~vCb|lQ& z=kdhMD4}DCNl{5lz(ya{%bO=(e(KfhF?m|g%_}+g_ZBeCijrBD_Udy(wejs|b_{B_ zQ|?X4=-uHF+nwV$muI4(ldN`q#S@4BU82(QWqI!B9qeXvH(7KsbtSJ&DX(@noB64E zL(sYakw6horNo;oGq%Jm+sfpdu)s&le8U;9bnT-;Mk;r2IBbkuzRdG+&1aj8eYHW? zSQ&hLeK{4ct&g97{`vk-Q`hhL|M&g>_WB>~VaFR5_vN!TSy@~AMr{6iu2A{cv66q^ z>;He3wJw`ee9n>~p-D^Ma{D!dZ*5aHtzNx)^XBC1>%_mkzd!xtlI^*-vofrztE#+~ zUYciH?Q?zF+uPfxdo4Y!x4XwMOh?S}`Ana*w6wIMqN2CAwx%)l+k849eeVO?1n#Rw`Pko z{5k*sr+xXmJA$r>8!g1!4oaraQ4^bFBAYnz@}8xIXPy?F{?xR=>A{w#yR!Efl~rtu z3U(1Vb#TbPxQIT4uHD~pauUSeDjc!Zbu3wrLdOg9^W)>=?-!r9-Cg+DP4jWk%9LLf)$_jpc-%j~_S?;4di;kAE-rGt znsxQcT7Eu0sn@ALKRxZ)c=P5>(6KKS4_nt)9M#U+I*ZX-bLp>NziRHA8?U+kdaa6~ ziR<(Z9z$h@BZW4WmYE7}Q@xHxd}?lPep;kC*RQm^ytK6RSfEPBl1dSd1+!H@bnuvJ z+r7UM|d>@M25Eo-YBo1(kQrA0q8qA#tV!lb0evZ3{4rto3Y zw{xYE7<`X*s=0GJv;{gfGp*}zI$62IV`Ylk?aTW$)`fa+KHC1S{=>xQe06V>)ch>8{1o1hzQF_%udpIbtYX`QR4B5nNtKCw+YSkNuNJu)x(QA z9WpYC#~oa*EV*lE`I+f}$MbEuw--dpeK4>8Y`!-AzLeXw{U2KOYaTGmTRfc-theXG zAyMrxg-3VpfLaYdx2~_vO-gzMT2yx2{$F7&PqBuM$27(RXU?3N|AcwVlq(-TeCU(4 zzP3L8{>6(sQ%?sU^VzPGos@KF!H4VXVx#q@^RBr3;H&KMm+#-3^A!rPv>i|U`s!-i z|JtIWO9BncF2C&S>(h+qP}BzrU#pbQ1U&zf*kw@jm(GbDA6Km zm;M+ZQB=Dq@!9?B*UMjAQ2e}{vsq>?d!+xNbX zeLri)j32+Q@2^{-03;$8)xC-P+sNm$kNcpSk_Tn>Qt0 z1(S0=K04a7QGp}Mt>|=wLFLD)y?G~^d}1=v(vDqeVtTzE}WdaH1q$m+4uh*yT1QppLLyb zt=FNfTP)yS$<{ghe)b>vP`vXB|n}Sq4)~`c#g1=~%}~GjGsc zy*EI@+9v44*7XrPe=VN>=fpi->u-PSPUmDAZ7tG#yeDk7^sU{y<9OB7(wDZ)Tc@Y~ zaAm-xlO~y$JOn?zD_!n=H{tM=&$SBDrw`;T?Y&wVQ**qt-7@FprKMB7mPW0W+BSdj z7jsi<&YauZ-Zrw!8JsxPnp{>UCYZnP=d;h}?f+kNmv0rGFmLu}AAkSzXU<5hIy`xf zib-g`L|gQBJ6)FB`|JO2N3rqB0X z8g#7LYx(8JkK47UW~~hQR%_p<+<0JiY$%6h`!TCL$0gF&^Z#TA%g;?ny1v=^|Bn;R zg#w%c%Fc_6jgS7jS10NAv`F^C*Tq~}J5vImFH)7gdTY)UN3}+&ESFV_Z6nvMyjW=8 zaZ)JEDz&;Vc~9T^_&vP)M(i zq?vh(+hb{kmbTYEJOP<%9>NYS!KqP1&+doYdsBDN^&38FyF8z|LLv^-#G(?GcIq-IcOtccI(EBH-*ld z7Dn#-u;{SO^>gR^E>}OA66|NWE@l?{|9Ri{9N)qxAt(3mY<``v>qN$TB3!MY(d@SA z3t5$I%Opa7-M;^C+w$ehT_fv^F5SOnYh`Vnz4cckbF+9{#m48AP7$3gvrliWoHyNX zc~w=_>8GEH&)ZHvnUZsx@9>78l@hCz)|R@vvp=`tXsX&f&ub}9-~Am*jsi0h{A7-& zF&o;wdvvth+RAF#vSmJ}4t@W7EzQWxEKMV{$Ld6iQFC*%w0WM-^2?VmU+xyum6D&o zA=i5bUpL2sl^3hleavXsFtaAt#h|0(#OFQ7{}=qf=5BsH`|FhFJEsNDnkg+OBNegh zP9aOt{uo`x$==h%rty?a_qy!GzU`>7-j7Y|1d3LcxX+#X+NUMuCdYzj&(fM5)Pl_> z3EaA-CHEqlMM~y$-=iBI_OoT9}L(@EO1s&$zVx*L@cI&3#2GQ8{ zMYmr{M@;irzJo#Z>dv`ER>s|Cc`64ECp$l_y878BG4knxxNt*;{M6XBk4XgBM-1D=7MPb%wdLSBdwXwx-t+L`!>g;qtLLdd%MDiYm0H2cp?b7|dE%uu7BPtp zDTjXF-MjzxpWp2oeW@bFTPB_C>3aCw{^!Y`;xR2E#&X)Ky4;_C<_Lsr`6AhDF=^dn zw!pcIV^@WFP3?Mo>qN_yO<`X-PZqVR9phv;)RG=s`81WGhhyhe51ZMGeuVW)3BQ=b z|IK8t{O7F1O_yahH(WiO!XY7)slIUct}Aa?g!e37?%d#zWOXg-+LkpZR=i3MS!$6K zvTn*BgN~^xjbcR?R3w!O54zr6uM@eo?BlE8RadK4f0*v$uac4=)1M|YO{`;IWViZD zmf7oL%5J8Dj?(EbjqBePvDxt3w{QPmxZ7L3x-9-v&!qN+_4_@WL$v1B|ND8oZAM(m z4A-Sw%`P)9On;d@D1iY39tCA3qjO ze(?JBYwMaH1^)j0W-Bdxl{z{moqTd>skd*}_7JU5t*HkOI!+EY4(mL4IQQ$AVWYm+$*Vb#SAAgyw@eSG812WF~JanbUG;)yWFUDi39 z(%GhYmajG}-oq3nU~R|bRk0_LuY1u8(83AOlK$Ct-s;BNTkT^tM0l>B`0$}%VZaBQ z{Hv>`%F53Dey8|-t9aao{QLVF8(pWR{(U6A-$O;n*4Fm)bbWbA$(x(g`!kJRmnLb{cXG0}2(zT{`J-#8raP@VmW~xNnvRy|D=j_~R8LYf&O4PoZohK~? zE?!$3ZTY;_>EVZmhiCez%|83?#>U0FcUyBX2|Fh7%oG$~E3Ps_LRsOQfW*YU+n4Um z6QB3{ZvOi>FHflDux;$u5)n9mu1{OG!t=EEt)9h?)dbgA1O;kLRr8hF!Pe90?G&o< zM0R>BV+&)q)7mMMw9MX~l}PR=xHdC=?^E6UoYQFx9S+&44+J_IdJ4_@6|cH?n>tLk z;f_Ah{PT*VvT2V?id1Q9SBj2c;FoU>M!kK!p8e{vB0euIR)h*{i#^|&;G|j{$-algH7u{y^^1`-D>hliAQrU``g>{9KM~u-?r~@&bG7P zn@^s6=`R2GahIreRdu!g&L@-3&NdI%ntHgMzk1$rOY<-J?EG>va&q(L%(=5YfByU5 zOM^0NYHCtaj-*`hT6*aT2rPLiEpYtfySuxm2Bod^@%2@FbZV-$_Eax-_v1f)RICiK zDtR$Mk)tZ{yPjt11NN^`dqcETC!aLn@x7P3?{5oZhq*q-lu2ABtEi&JWmw+?QbqN<=2`TkYbWsyqHi&vvPwk};Xqh&+#%H?X$Ew*zwtcsY(GJ(bD z`n`Gir&rA2o){#wblM%K)0=h*bVPCd&dsmB9RKHNsgHrC^4*l6gcAamCXctOT`oDp zWU!UXw}IuQnAf76Y*JzEYL}L&unRbF>Yu#z>4;?E!q%gES_*9JJ4%;qUb(H$NpbqQ zigntlIXi?*oEC)YPE!;x%)4DC(-PzsIr&vDS))cd;cyE`h*ysGV72-@g0)$8c@zdmZl*4DERUhC zuUGy@z5bbEbo2Ukb3;Qz1A`4oN4Yegwu;APRNU%#ai{qF+gGoCeO+IlYxd{eyLTx@ zky=xE+?y3AbU&_mdTQ#|s=YxgCCbb%E0tAM-P&^4C|2;**IkMSjHcu-TOJ{E+~4l! zl7lB(6K`C+xUv5Kzi;2Zf%b>&oZ`1U_~n&vbFHg>|JFTy>iOrnbLR>R3%5<)dvu2x zf1R5{LQnKGL0NmQP7klHq@yiISvJdDyL`9Pqy0Evzi$seAAfJZ@0l}aGp}?_d8@K) zdG^&VA)D6`k>^iGE2$<|m#zDD<+AnR2)9C(6D_&Sk55QA3$iSHyy5Tf@6)tZ6$4&+ zWV0R+U=@6&cCYf@`NfNKc(Nw3zGUOO65-OaY<0Y`TIP>f2klEyj9CFf6F<5HxlNoh z@sUq-o>KUO&LwO;i!C^qT-tgvTXtP5U7MXK!q#|p=UGXG6&t=yet)m*f9-eHtx?VC zM^&^NRs>GEudvx*_GG5JE7B__Hl29PD?GjC{_lI@Z4Y&~-?^03@;6wu^r7zLpr~nI z4>0qCs{Hp=*LUChJn#FT>r3Pra&FI?H7ja!8t?O(v^2G;UcG&Nam8m%=M-O7$xlc) z@FGpgsFsDh)d_SUq1E)$cT2Cwx@pKBH}vI+da3K2pYck1_0_DUL5A~-&V{dyN_BFp z{`Tf%iqYP^dlMzfN=s)(r9bW#f8KRI=WbiW(x8_Q9ylr<`S$j<@ys4iOXKAKGi;i6 zo_6AJ4sSX##m&`bs@|O6pS;iQ|Il?+`rHPgNZp)=suxOIr(Za+e7X15tdMmq+ukm@ z?5E?L7uoRb$`W~2u@`5qRBUHUp(gcZyTi zG%4^T>oPiD*_w5A{co?80mtrabzao4Kx?Ud`@9Xldna8>xLI+3?*1RQ`DhL z|KF449#@o17lf@zSBzS@ku#8a)8FMh!ViC5U0?V0MsokmV*)*f!MuN#pUT!g^9fY5 zU-H)fJOBUZ`ntE-@z!Ed<)0Qut(A)VKX0Dg;ZzelyLlce({!WDUM`((_vM0fa&q## z=UcaK741G+wRd06O(Ws;ceZ3szP2kur?02SC2&jn`FY#6ZHv*H?xVK(=9-tRW>!{G z$2TT!H@%~^G{`gi?!9~a(#}dLMeQtF`cf%Xh^d`V_SO6M@%!s+lh-U?p8oXIRAXaf zwcZ)0pYj~MC;#sQ``WKHOqC0_c6BWA^bDFbg(<~v+lAdVXP5b=#})j%dVTG^il~MK zGmh@v!sM7>n5KPlQ2-ZvPPog&k~K$;q|`p|yZH8eug(7Anwlf)!`G}^H_x?ubC0mF zpl}zr;tp;WCysNGI?2aozP`m0wbElUi_;~J&wsgk=H=h`;QRWJgeA{J<)SRNUXuwy zRSV}P$kd*zs9soGmX=hN#nTWNayd|T3X6mJ)N36}vsT8eJ|pJ6@Y2F*b{av za?Qu5>e3sYG{5>u6J~n*sZHMh`|f);H#fcAZ#L;hZ=0dyu=rf`l@3r}ckfR1dOD~0+|Kv=eos1?;_lw=d5w>k zS5>IfYiZJ&4;L?9%-UM@Y-T!_BIw+d``_E!+dDH-QkF!mm8!dwV-~G7)km{O@MDQp z?k;wTl&ud#Ok|mF-M$_F_f@!XV0yax^FN@o(7xSFmrQ;>w|rji?WI8{x4n&8drU%m z`f1Sq8Pn@Amm5xOvpTkA4x^IOlb8q=oohNBE2WNomDrneTr+)6>9d{BwMC}Q{xIpL zi&3=Jb(Z4aRlhkNom=-UC%SD0!=t5})=cYk)VhA{_WkX*wgsJ@u75UVu19M_RCYj+ za6@WjpiJ?xEtkAbYjE)_Tobg!G;^u%{3<1-pe54Vm^X#FuqHS@IKL;rOLq!eud zHpXq;d19F@BbW4-D@!^J*W3v0&u;`6Rt*>`&%iX?xyZw&` z&9btx3>zvwK6?4`W$o{8rKP1yFTY&5awTXM$2Ii!-MhACW@*pzcLbez`sMp~=`St< zEUiwAg3Ssi(m-1W0yHGNrY3Eiar&vw>8gjV;#O8xufG2J@#9CZzip}&SN`p7xhW|s zv(IWR1)Yb&Jk3uzx%(v^!4@l zl83G7^ZstS_wS!Y&tHXrW!rh#eWj#d^w?J>Y<74LI#LdFMEw1#*K5u16dXQq;K0x4 z^Y>?6T?N{IcAz5aT21zI!)IqfCrN?UjxB7L+x2qU?0+BS|6eSe^MBLb`YUU!tgU-> z;z};M{{HsXIIH6HG~H#Xf0Fxc%RU|zmwua_;heqo)*{#LZ}0EtTb=&?^=oNK$&GEX zD??(g&z(Knd->&k@2&fiwf3l~srmd^9ig)>YU`;B>t`RinYny!noaMvZQBfZjvqUA z$iU|Hn$3?a?(HmI?pQV5Yw6bP>t34jH6I*<12?3c6iS@aDVBWZ(9{K@6V3LVy(N&O z$YgMd>#v4Y>f>Vzo7opd?G0O1vCg-nE`WRaqAcAx+H6~^I_?O~iQeY1D{N_0XUQ4K z&5_HNU$8Tkos<^iutv$nPm1MM)UUqB5+;V?W=vUYO*Df#Iu=AvbWvHmblQzGSI%hH zt(_Xu%a`tQEYNRh(AKKA6WQhde9!-P`?0^>$F^?&pXavkXOU%Hs?^uhF=1iP)JZ`R zGE3R=p6;sN<8sJXwN-o0nH|RAS0)SFtWeLry=}%bjjduXVo^PYYef}2E-VbTrhey_fBkD735Um3J_T*<6*Dz4vka80ezOs@Is&wSV(Ij_Utcc!>ql?n z@e5G;yqr(z)br0rlMHA2%qu#j$#(ei&6}V_ExbHDPl|Tlym`}U;f9)@pX~pA?2nC& z-5K+4-|u(MN4~zkKD+B7cvFD5e%u?2zW2XnWo6s>#-YOzI^%j z_xI$JDuSV_L)UIyX>7)6asG2p@`A1J-n}b}HJ|Bo?%X-h#)Zq5FSBLsNcmBr zQ(Tyv6dV~?I2P(oBMw@%YO-2ln+3?0j;6zUBWv;LL9qu{OMG(E~^0dF!irrmwnq@gjfykHZWf`2Rn&x2gX2 z=KQ}m=fM~5xc`44zxV&&_xwyh=l{O*yza4i-Qzz$Ki~gsd;jxi`~RPfjg1)u?kvo| z^NW!|FnaB^dwZ+T&$TXpzxTUa;Fjd$eRUG~j~i zF&VoWi-K~ix##xP{+^^#`RC(t=G$xxQoU|3BxSZNc)$DozS`g4_I^0Ty?F6r$LiNl zr^jClZ!ih>mTZ4yxrZL?uvBs z-Lhw=n{va%BA56+T)Wxqb?K#BSH4{N;`V)!o5`~E=lz!0G#E}a>zX-Ncj~1Tzk4m) z!Y%$JM%#x4bT)Jyl-On#ar|#yKp7@IW z+O33%j0{@2-r0MYodmw!JL-8Q$3#2uj@DeE&M8U9?^UwMa0T$HEu0gVB^no`JZ~@8 zXR*ean-^V(3cVCEBfjS0&+vGge>aug_x)vlU;jWi-}BLpw(Nh$bn-2D53R5M_U5Pg z|7Z92e7WQ;|NF-Ay3gkI#!pVGtE<<)T3+|+_Wr-Ong3W+{Ha%3Chu0EAuTPfzwbxV zB$b70^Os*1oR~hZa@pOycGWdEbJ#X6a0s|_>sHb;ZgD-9hpVn$z1naew9L`@iikqt z!sxiYaq`mA+NU>ZbbbB$^|)NMj!8iGq8D#&Zg#BKOK8`N-?wMWmMa-1PW!fAez_#` z)tqb-DbNa`_{yhKXU>#d`*mgT^0f5ykK*+Y3vz;OMYU;q9qPMMN$ zL&9W3PyF#MGA~}8TEJ5=7M~`Xg_Q-eDvhQ^@)m$zJYV~$5^IG*-Bgl)hJ6Yc)Fobc5Ldkr!ttKlq zn-;y{h){YfTcJNsQb43oCUfbQOI(a=lFJmB=H2``K|hh@*Vp(zhwWcS|KR2A4NsWz zAx(RK)}D_Q`#Fz3SpQd4>i54Bp(Q130TBWVxOf=D6F?m&^3D&H77qI3kM1VgQK zmCkL}K4|@+uhIEq6vF{#@tx`KI~F-C^H^otsyWHcX>sY+TRpz3M2-b+y?pnB-FLZ9 zXR6YIT%I@@bcs~EIi-D&o6%@lqT%AQdF`1a+pq2T#ofaC<5hh8@mMa`xdNSCCti#2 z{&Mj;_|NgBzc$0G!!uYJBmx*XSr)FBU~155-XzVlh*yfM=36F%<961zry&9^rU~pd z+5LBqm*wZJWqzKwcXp|%M`E~<*#n`noP)({wy++V;bkARC`rLhCwJoWb5q~2>{X7g z%0FoRMaSh32ZNn>io$Ew34#iqTIU)+>lsP77S8Hnkd8KTyY(U}C1-i|&Bm>*>C-Mv zPHI??@ph)`WX}2eN{0@-naXr9|L5=ZtlLihYio^&>))_f>TreWk)`=Fn3X&VCMGYQ zqV(SR=GBgZI5D1{6;8)>m=ZaI8=APdABirO&(U+9JAdDDkv*obc1Oow-%&R=<3sAY z&;O)-c18DOo11r?3%i-M{lvs_hq9&fGWaKcnlz*3be`9&9-*akBfoCc+D!z1oXv#aWogLF;(3*61z|Fq zi{msMzbFQtKBGG2k!QnUuNQNe9oC+X{o4Uqah?kGw{}^S zptM$0w6g5gpQmTTb_e;YEmsSle%)uuxA*t;8=ub0mm3v2OV7M*okYeW_`6-W#zp$Zui~H=+|>UM}|eDGdgIpxD_@mVaoAmvDrOAQ`6h~2-Eew zGq+o$C?pyDNxUtd^LzRF>K6}>vpPL|J^fF1-2G5F`!*$=iCsy1x9$3K#`wJL-z%4= z>+65tWaB$&i%|LQnPIPPY*hY!zyAC~=k~0vv$poNaIcXMc6wJf%Yk5wr3y}!Nig?7+gJU`kUA&V8Hl073HNWAq*ypw9s^XrUv&=sj9X{<^^>Lm@ zOw0K@XE<5TXts9g+ETpka^BIvPL^v{f_L9-xvb*kaK2VyL-Dy=Mkn+*l215%|9FUp z`Pj;e_qN6r=grq4WL@pBkK|7iRDN|Lc|Omigg(-fgln z_^bVHJBQ0e&C`#v<10ajh+Jvq?!Kkrf3{Qi@U*O63k7zE6)qP9I4$1qdSrFX zZN<&0aV$3rr-`4ldVjMzjW6lm-)kGsC@6JFFmlXn6%~p&c}h=NVzKLz%QxSYws3f^ zys&Zk{nW#iYH9szX6(&ayZ3X)iY-!8Qf^fDbKI+Q?!1!7YWyTcTukix_3Qldb|rIP zxj6X7-xYs!cKyz!sez9Rw!U4zTc+X2`rk*)XUcwy{H&p%7No6xy5H{8QTtzSlwIT8 zCh`@eIt8&YdSvS!nria0Wb^ZR^-q^h_uu#F)N1*EC%*gopHGVv+x3)l0>dJKMJ@hp zJW@)ETN<=4e=03m6+MqHWsy0{@5B9~OQbD47*_DQ8qUo2Yl!Y;+;unaVeI*-OSPNB zGj=|Akf~rv5nIZ7LDTn0$2Gyp6=&}?6yHldSDpC9F65PSD@$NNz(S4+Ri!3{Bl7}9 zn3X2FE!?nS5r=g@!;%);X7O)+Hq6Y*o#_gUuOnL~OgPG2{hZ}MwZ6_P=@U#R7bN>S znAdz+EN@-??M?jeZ2N6nul_reZuk4k<@0+!om&01D))Hb&ZxC!`;(8~`eh|3YgLj_ zSoqPs?n!%-(j)V@W7nAFIGs-L$8X&fKehGE`Xh&(FR90PMtRPw{xc>W$e2( zpXCHPJiMOowaDkRaabfVLFHh?SA5{`D)hMpp`a1p9I&x)UO2{?fUlEj7>U=G@i}QPX7FCAtOg4E0cw7K@;=ZvKKA! zQ~7!Sy9PvM`kuRK|L;xu|I_t9GuBV9e{t_HzwFMnk*lAa+h6nQ&&s1)eNT6NXg;3S zCwIft&@9gTvP#hX|8ifaiu?cleE-*-ovly*|LETT<&?L6{rmdwbCu5qzP=-%T(eZ8 ze5uR|I6Wq_F)TIFN}A}gI%<~0+O3zo7IGVLUb9-> zcm`pev5_3y`&P<27@9uAQU+r;Z^Y*wq)$e!L{_i_k z|7msok1sD<&;R`>e#z_8!}q`UP2l;Yp|Ws~=%@cmm-OGRIFR=6pP9k|op7ed`F9mr z7Md|BwQ#WrSTID(7Ch9^3~J!>7Sr}?47lJC>}4n{X!=UoEAzaV!y=FE)~ZUu5n46% zv$;H88uS=?t@fCmwUz6LSD=jK`_S!^1t)F2XZdx42%}uD#Ry_Lp3@EwB5secuEX&WU-~UZ30PXa4zIZ*Q;G+UwV^nM~9# zN63)T1veh2wu5T0C7(Z&A?w-_w-&Yvz@X z<;#}2&r)8Oan`rbRV_7NROw|)%+1rA_7+e6|DoOf$K(HRu5X-G_le(rbNTmm?Cf>pZRqwYWv-PH;&uMsZZ?|KR4H+ zv`O-IbnNq+hTRS_?n-x}Bh;4Oh+JyW>7!brw0T{)#rvAAQJs^%Tx#9Czxdyu_y7ON z|Jl3$yYc<6vGPm|-~K)0bq?3g+%L)f_3_yWlcuj`aI!ez%f(U6_F=ld{@QhGW?M-0 zezop<_o}SA?S#NlPt~qTD(fZ%{r-04z*f%;H&{J#G0 z$4ZsH`IXOFZ|B=bt-ivda^VK&;h&l-CJ6~BC>kkgg>*DYd~k?A{`dc9({<-6+kdXx z^3Iv(M&)xEsn!KEJOmhf%=lzG#9JRV6-BO`5_lwPGDBqcp3e(YxE+=RYIg}wR+)G) zD$~%-`Z>eiON)F1Qa7hYMnp$(pJ`ekx~RdGMJXt1b1_R(16P1zrl?27f)8Rz4GRli zE%lyW_U=yQrzd)gqCnnc_|`8!JV;?g+SEAo6eSN(jB zcDK^$P46yU;xe{A7%SWxCBnEMNGh;VK`VK#@<%QK2ScVwY4Jje8m$wMiZtDk#o94h|W`nB?5m(!ZkZC@Onnhy_A~Csn}`4EYPGBnWr=;t-FImcq>%Z3imaBf$IX${iCVAEj3&-?>+!J||o;tL6ExfeIgo&d$ zd`ZBBo9UI2VoN{kY46;i#Ba1HokNd*gr+4G>)_zUWPCI4AeonD#v)>F(hs?DcGjs)*vff8JaI|Jb2a)tFA_*|NMyMx-oUZFS%OuNT{et;=|%>l+Q}QHSg1eR9v~pM+!Gw$iU+tnVY$d1#lK=kr1W|d!xcBP zOj5)8->!>InX9JZz$KJFwODR$x_sq(1__5LueSeX(LcADq2hV$NmtEtUYR>Lm@PSS zxcFL^04FP>4U+&T(;_y7j}JN-TJml@6J-$Cc=@Hxr=RC*zm(hmdlG!UWcS^vQ?Ht= z%;gTV|K28jj**x7%BC+{XU({|JK^WHf_p~njn@MfK67wPcrWOw zykz6HZC_m7L?)ZvI-=&c^^zOsreYl)sU87kr!`xZg1n^D)UR=$xZL5@fq@<+^eZ>(cgel)Mok8KnvkYmyCI3rNOr|`&|ouT8=9%n}p_IuseJiJ^KCpfMN;dzyD{K=hj zVdD%oM7wrg|Q+qgZEpL+j z$E6zAG7fCq;H+|AzjtAn)K;#5h{TJtdafPQVDL+7)yfR1YFB&u(KTh7k^aTWKRO)N zytUNVIdo>}WRJ`HWUXgUElJ&4T2;Dn?^WrQW_Dku-`l-)HuFgIFGQB)Kkh+!fT)aW^inhb{M$jr3}D!9!K%#rxJL&(2!wJ0*Rmc*3(q8kbfD zu3%U&YsT5LXY2ph|9}1e_49vEzj|^<$!xZGzxVT-*q3X!@7tqv*HEXLtAT@AI3qhY za@xYIH3ExOLa$!bJO0G<`=>=ZowcgIkG)oH+0?3ABk1ZSsl23Gbzw(oO3B$7Md#nR zDED?>>g(wV@Tg=9bCmy4)9Pb(;{7+q>W*fMpT1>m9`#cD{%t+B)vvafJ6P+&CPo31 zAQly+eP1jR_>TtWl&mtgimp;b)pHwYqQ9%7r&NO~STaKX-c3^MC^ZUOd}W z&Y!B*k`14H%DLL@dyloNw1MsJKTAtjy{!LP{Quv9gS&Gsnoj(;a{iy&|JVQj{Qqb4 z{_ojmqhvir1ScwRbqjyfVR|rAw}DT~RHAHsHoxG-sQO?0{~vs}`xSjRPVDH$@)Z*% z-4Ix~`HhWxRQ36D#YtN(sx+L5%T{HQemn0{)~2wP3+@|QM)fW}n&-&kcY@K(B*h^$ zbMIy^X@yItHhe!OA@=cF?zC?|#rxK;U+Z`NOx$w6HEXr^7SEf@Z^576`dinJ?Y1OPM&hHYU`Dg;`6M7#Zt|+d#+V4JO0hz|BPSH)mgnJUJW6cr>{M` zmbALKvNn6=)m2MQ&a<^vcYnpMcG=cCt<0}C_sc22nX!8wV6(X~bK^!g4SDOI=5427j4SpiEtw3UvYXxZ4zr6I0bcr&;3 zmgE#J2c!5KI{ICQel{I-RkO01C^Jjr)1{4_OSgQ#U--ZO&y)LicP8II_G?z(qpe$) z#{Vk+|0;O?pSw{(uKsS>zJ?18qQuk_T5AJb1RN8E1QU*AFMr5%BeC$|r*OIIoZ8yE zM*^2$?d$2A?4fcZn|;Z2hK4Y$J`;wPl}o2+c~z&>J<_dSUS^`*c`@KwxAbgb(OSFS zaI2dxuK8u%O4{nurVm46Zf;!Du>Dr7-=!^+($2;2*z;pu`QGHBqEpq&vco&J>YhHZ zQ7Uw zjO~h^?~ASecE;bwPdhj^Zdb*lGdsPdW!)5%LX^vjcOL!en)OC5v&U3RDXHg}osNj0 z(_ZmHfirDe<=anO)IM-E|K~!FDMnJt1w4FH7Knwcu&oeMQP>oxDSbg*<;79sCh?Cv z=Qat)d%3`mDM>ldH?_2R#!i^SmRaN-X-N(FaKo6*BDlvZ!VtM zy7ua6_w?`P8!zfwO;xFS({KOzef`J(c7@McRvuOH@bKz!^KD@8@|ZFA=%GsWrb8zd zh%Sz~YVqZ4b4S;r6=B(x^CDkg(zwMC=+(;J-Y{#!^P3t>4zgQ3n!ed4xjtt8Jo&xV zp5i_8td?kauGxAu>&u^+tv99a>`gY(uD$Mc{TGwc)4Af2SzC{5eeI6kYMdP{x>)$( zREu8+<$pa~5W#c3Ehpo=-Gb=D{EA$APt{LzU`l#t?VMQN(IfV4t3{_$?B;jpexBSZ zYc19L>(-;Er>E<0wYoX;^K95Pucn2OPlJp+0xF|&Qvt>YL3Z; z4VS7`-(7hvE8Mx^*M%k54{m18`}Rt?KB!@f{pm(N9?4d=2G$ufE^fZGpmUB!BICzd z4vkJ?^P}@^IHoY1*{9LHNZ@&J^ouA}zbWytcdW{u@3sH%*ZxP}_Wg^))+>AGF8THI ze9gXo=ZzOJ}ZIzyHrw_qz8l?&kmg`u~SK=q%|@v&qVrm!5TL zhzt;6)LiRe!eNnqkvl@<8^;Qbg3<%=(RZUnmSZgw?__DCS z{m&o8;$hQwzk6{pIe+ik-w)=tC-K&Qcwrnee^2uFJ03o%6IcIRB(LCJ>+CKg^3+MV zK|ADZ_LJZHm$Fr_zi>oi^Ax2cF--;wuSE$mS0@BKI#QTfELe1J!~0aeJwd0McTB3D zX_4;LHgn}m`CpCJ|G%C8(_FRJ(`%>EcRn${`TzFD|J-T(Jnr}E`<1`T_iO)KtUtfv zer@sD&Z>=(bLyY&y#HhB{kYiM5}7_z)}1-kvxg;%M>9p`ttdlPVmwo{(?t!Q2N$bZ zTJODny=%b|5e6CCvfah!D%YtM=J0qsOyT0_FSK9)CwTN&kniCT~(`Ed$gJTU1!Mm)%`UO z`>Nm1lUzN&?%&e+HUAGMuiSOxW=_cKmR0^tul!rJ!}?Arl}!Cy%>3@$_9GRycmKPk zeZDqq^D>Q1lf+Z`YCGKnmjrOQwx(Y=FEIVkp^kYbM$U0lR!c`0isa_x?fv`q{k`%R zZzHoye;&$A(ac@1VSRl6m#5WyeRJ%@=f}K}yED;k(fGe8z+=I}0^){vT}Kx^d;wv&B(+kd6%RihdUNNiQUb$;+SBjWe`aWoO5J~c;Q@!_;5H^L zSN++aT|*B>@U-*4o4e{!^gDw?OJ-k=oM@W#_^5sDt2cK#s$VZ4D|&Rc=^4N1ovU zW6HDFve!>vy5qC*hnxOx*X?hfoIG0n{`b7_dHi_;yD?^~)!%9@*#L+}v#O?Os!Q!qc@(DhjP#9RZvQ z1_B0cQoUhbuGeQXJT&z6JwM@6YG!sP=cJ}t0fH|BE(kd=xTfqiKepgfiv;8EO;6K+zfIO2(_1|uWUI{0?W?mU*;XgkmX>Dc?wqJ}tZk*y zsKK&a!@^mEGp6XOE*V%xAyd`#l8(us%w8N zS`%`4uJv)ol;=Mpet%jt>%Q=bHRmF~&Fc~4_|u#iA>^kGXPn;c*7nCbrU zn#sKz$$xpbpS?2c;}4zK#g}xH%Ci4XGi#ja_UEa(oNDuTnZMi8_y3CSafq@^S>(_p z*4omb!>3Zhz>`qG+i~i}x3u!L8TZSdGrxX4`}q8NtFD{B4plQH?!Oirb+6{x)9L*_ zecP+%T7N&Yr)cB$E5*fIU)1uysrt3lxc%Fn)Vt3sb4*#QSXr7HmE?{7IEh?%;nC8? zA-Gq8{i|_LknnQz2h1$@4&C|Vr?lxD|8gUxDd!{u&i!0e(zkQgkrh|&o&4pp_mGF$ z+E*4#3<>>eY%T(9?{7ZuXgRf^{E=6HnqQEBKzLWd&C@oQV&(tXF)*;C$v=_0SCi;0 zd?|d*i>{B~h3D7aRc4f6a5^Lw$gq9w8yQ*onez(nUc2;B-!erubh1TI+pX2oqPOps z-ZpgU+TtcCRR3XH^G3VaCy_$S7oUCh0e<%ZN=B6k6)iSXl^dx{=TZ(#7gsaVrkxwxWst-itnb8pF5IHA3gtf+l^1p?EgGk zy7c#Zi%)Ng`_t||>a)K8|J3IFZ$nw9rm?W8@$|$y6f`)wG<1n5F49n7eJ!oM_1Kv& z9#5Bw$L%Wkc0EJ6$-_Str}*V(8+HWR*WAwCyToJGVlTLIy5^jy!(?&I;1F%~a3 z-8+`F+cJ{9@m|=nu)?e*H}5=fkKel^`B&Ngi+!(NU2yq&B*@O}QQqy?^ILCkDtms< z(4kf541)|u{F@E?B^EhdTH>B9`_=iAASHVz$bzP6Y{uDM6W&G+Y*k?w$+?GE@7>9f-}m=j)zV1MtaDHIZO}V^d5NKs(aiMd*V(5hPMp|z@mR*Bxa^=!PBvL(S+HbS)Y+TMgau_uq`7THD1hCXv}wXc8mDfaiXY3FtB?o0o6#qIgY&9C3rJ^#mk zOzL^m%y*TFx;$r?7NtyJ;y=j1C?qIUl(DIYhv7*hhv&pyf;TJ{T)6et?}f#xUcQy{ zR%V@1IDL0ha0JuKl%M-Lf7STDwD8Klx+Co3tVLU-!dIzziEMhES86p^-|qLNUt#K< zi>_!a_Sigk-Yl89P3NAu?VXjdRnb%Tb?N78QfJ<96g-m7JGv|XZ+L+{vqV#a0b_x^ z#f$g60x_3$pQpJe?SFAS%sfmlUPtQgmLTD8r^U~I-IPv`0T|wUxK!$H>r3sc(&~Jzx@6GJ$8Km zrp;#v)YY&}ti5w5`tI*1)9cjz>}wvpunrTSpES8+L(qb)fl--DAKehBO3yX*yPV=A z9kFN6qRn!v4v8-nnxAUvc&GSoO=R=YIj2>^zQ4Ksu{HQ~eBRuO7uz!XKc4ga_2cpK zS(hh&zhh@@CHDNKhVZYtqTtSs_n)2Fv=biWd^6nXyf9os#B;ql6RVEzWS!GeS5@@y zHl94@{_eiLt?9d}yUYFJ{;U<(Tc5X0`O9y&V`;}{c`jb}_y%XG@#)IjYjbti(R4ozy0oew`@~yYe`k)!#i2l*2RU1Ruj3^{o`Zq&6qW-#450`<|&uUI{*GF zf49oFyYL=cZL~y+LdnGUHS3P%&bi@(vpse&+j}rcl+GF z4|jsk+fQ$f+EtU7oxM1E!~DlP7R z@7Py~eYVm#Qa?L6X_3_t3*WPS%R=j(T$W#bt?tKxg}bjsr+2(sQ1juCa_W|27Jc&j zzVCi-^QmCT2HjU`&NCPx>byE<`wVR(Q5BQJElz+o3&M~diIj37f;T7 z=286b!NsS&*V4+f)2^S3N`7+U9`o5O+uo3%&RJPoN_O_G+#)M7X~idZ_46VNlGd^| z{JOQ>;7CHeZi!*U@Ak<}|D@wv&Wo>_T=uOFS6-vq7R$JzTkct_|Ku*#JEu;a z*g02utE}*1{WbZvHl~TP{by8)OYcP4b_eSExvkl*5XH7tPG&`X9IvI!oBe-7I$3o7 zmvK%r=YRk6#>U&?da)})v^;svJ$sBSK9^NIyw0y%>lShUtF+GF#>J;N{`NgHIMB?bp%BP(?ucxIMgG<7Qd!CD zZi`OqyK94DVpiYzeeZilvf8m@)AZ)KvR+y7UJ}s zGy878O`EH`G&3zHC2tMmxql~q-+T0!t7FFE@_nC|Ilo^Nv8+}y11OwYY<7j~bI zkCRv#%Fy=Zp!87&=F4mh2_G30dW;sFY*}P}AaoAHOLtxlrxitwZ9#8xm!Fw$Ut4#4 zU95Y*jPIqWSE{b2d0A)oZg1YexL86y6P-a!i#dHWNh90{Z&on3`29h z*~&}@ZrphB#N44yQYhKlgleh z*XD-ae7fnb;hWcmA)SwA%6{Gz^}2M|xt-6BxCpKepI7_r#>Lu0zvrBAJJ-zmxAXx! zg8<|6m?ffdip(*cZR@r8_Pm^?d~oZY#j|IcT-Q&&`$727&HH~g{cGL(u|h`rg}V5! z^~?f?UbNT$VgCQ?x!te%^>4ZDf12M9_l(m%J?ZMYt9w%4rd@nA_c-5ny>2ThMLuOU-`u*mIot7wE;^m&``1kX>-S2;$3g1_il=J4#&(EuE zPkU)jcy*=cl2!iN+iSwthAq8aG5#@%_d zZtWVTpe1K>cR!EG>|SGTA65G-rSjDmO{3{*bsyZZeyz*bs>in9@6N2QdAsy;$fGM)axOkjS{?pH@6FAv z)z{xKYpv~Se5JDd)j^fDnTxl3ZI8?H&3f>a=g@?GGZ&=4k6d>&Z3mY^$yLYbUyIz& z+}{3RuUgB)Rn}#>FN+x%(r$j6++MH0DSL(gZ>U}kjwlAt!^=|s--gCR}e-tPc-@a|yHY17IKAU^r z&6~OE;W@X}bB`=rwRF+NGc(;5S3Wzky1Klt@7koV#@yU%&5{zcf>xVoRhMs4VtTjz zwjhV^ash^^8x|%W)UtFx#@?11|M^wMd>Z8}BOpg|) z=M-6WJ>GLh+$-4Vh}7ZF@Acm_h3}kwZ?myb>|SG@BG>$`_kyiEHx=*C>sfT^I@6yO zOE%d~c4pbC8Kz%;ZcoeY<7Fq-t$BB6{<|HyzoXW3Ov;k0P53P)-Ekmp=~i9PEuzWAKd<#lh(>uO(Knz`oow7ZWlYwGX)6Un?| zrnupyh)1W2bUW8}bkFg;skHlK=KeR|Ep@DiUhyPr=U3%*s&$ZTX<^7rCS{RtMvE%xbd=k{oQTF`7!Hfm;`=3bz|L1 zx2UtxsX;3_rqBGEt#|3wsa5>Uf*l7BGdO&_*UfnAopnyJkHy`>=+x&2vzPC0$*o-L z%P=u!`(4}LTvD6QW>2tqKl4~d>T|`$q~GV&vt;&tk6O;=An@$E_vSC<4G-B9?q613 zn$zEZck_Gs|DVhC*5>{FbN>JJr`^vldnlZ)`@gYu>(-y|_uu{!wR&->msZ)=plzSm z@|#Vu{eGl)!UV0UDXzEmL~cdK_nbGGzP;w=-5Z9Irds=SYCoTl{d)V`w0nvdMYl>$ z5ttDB^!t~&cOQx`ayTi_6rC9&8llO~FQ+u|v-I75yKisq-`&alSS8oYLo-}#;d{kv zZZUx=+1VZ}Os6t#zphMYym<4{w_Ato3^t$gn|-s~?Anyhk~vyR^S@SY`x2SIIypPo zdTXcCZk8Q<(nfdcIdnEWxZvT@z{@k&xsru#-TwwH`8y0^0)>w*tH{Z()cn@E)$Vm( zYUG?5C5wLD*(rQn-0$k^tGD@NElf(;wa!$_x^yb*UTa)=;Ms;p4T>M$cF$*j%>N)h z?cOo&U1?R}IVZ34pIdi3N~lw#D=^=lvB7rIzPf~?u4QxgGws=ER#|#_vcPke)((aB zE*B48etvuY&ol3(b+SvZM#T#Be}8}c_p@o6eP5OwRM~Lz)vT4Zm%q!+@($S=X#4ZW z%HH7apU=W_LN;g4F}|A`?yu_0wIP*lv9;We<-5{%>Bw}uzxe+3&2~w?j}Ja@t>3lE zyoPs?f@BGIXUEyI*N#04Q#I<}SG4fsNBupo-!cFG{zhlB9D_x)QG;jj`mNiS>T?I( zvQB)r{=|danW+cPY}2Wl`FWkCWoBzt<+hC*5~PwpYn*<5KGe=;84%L1Ulg`z>Y#u5zk77GK}- zHN4|U{CkO(ANl{7c{+-&OK-oiTU3;@;sHY$>x+D*1tB4~?#loFy1ZZB{^AC@zL!M(+8t;@QvrgJQI;-u_%%{&v^zg^km1Z?FDVb2X*n z?uF*HHy3j-@J{=GaMk%o>(~6&Q95wok?m%K4Haqn9G{JY{pISH7MQJ6V_2aP?Dh8E z-tcTu)m@fmQLEKGmrP+4*`R8Yb+xJIvyaMwLycdLFkSKgY|PwhXR7ot=I@?!2W+SQ ziz@X#_U(D0f?;*^OBsCtY4qW&zQG2`%d07Z*}pW&guI4H_8e> z+~r@heogR_eSeN#zcpKU>a2NlrRUG{udSadn-IJ1OM~;o3A3&{?&M}{w)w5+8;Ph>cb&9mX+P-d%r@IithVS*U%u9Eff z*VzO1=l}IGXkg{}F8*txm_y*LtYEtjvB{4&C#zlBm!k0F;rxpG`~QZ||M7GF-|zOH z_y0NaaQlNR4_iG z*?H|&)kM*&Rdda^X`BiTx}4eUV{YbIo%{3K_xg&G>$z`imEvO6_sU6y{IZVyP<`l` ze9t}O&EFr2%kzCJXMA{J`q}C-C##@_9r@qSb#r?k_n&vU#bLu#@tc=~+yX<^2F55g z8wFl_TWY;`<;OtbqajZ^7Kl_H&){%1Xi;cpaA0w5Sh4@R0PnRWAMXB=*qi@Tw?S39 zV(vX&H3o(Wmz0Zp4~e2YiZdV7BahYfrRDXntShbed%l%~nJJxA1 zdd$8tZSRVUBF~u%+gN=jO_}Q#v-ap!uUk3W%(rJLFLpFPD{9O5MQQKUrLT^hc`N_t zgTc}A$r_Cpen})M{FgLQnz8eK^#$wqbNM-HpRXyu7WsP3)@zmiT~jX2vhBX&?#B0K z=KYB1>Q769m+R@o#pUOJ>)Lwt>eR1S_vp+>&CGrK=uy_*u(j7;sb0=djkKkYi#hfoDr}~l4AbhqZ%=%>Q2sIt|BLAPd<@fy)ptHUQ<$fyy<~Rr@&|tJw(YvP zZ0echlP?-~oY7VObHsoD{|~X*_P_W4e;@z*amo2B(pE$I1srCE$Y&=ypd&TarR3szs z_neQPGkdnIwCv2eb8U(W>K8|)D}H2BssEYF{{Lsb{l^!}tat1-v^9Mt!`&d&@R>nk z<9!AHbs;fqov&6WZOVU{IG4F3PNv(S;+^;{0S1=2LaGvqQVfo&*BGmQY1{vsXS+N8 z*VOo5_xtvL_*?&Yxn0qFS!wQW{qkMf+qQUUJYZfJp?y_mX6exrE5*C~-oJU6EPQR| z^m(Cszx{fXwgIr8buz#7)*=}Zb;O~bA*UBGgbUk}k z_UDlPpZ2R)uimXL+n*mUB^^4UQ>4^9O#1Wg$zH~{Z+%HUcW<#%Dvy@v(#-PBSHEXX z2#^##{yg69-rWfK`E%47=jQ)DaPRm1y3l-yn`V_?pDkn$kmu3!tKXY?{>|LaOg$
J8$;;BC!*wwqYxdGb?~N)hZ$4V*qNpJENd4HY0SGKc9adPZ0-8na0g{=+ZA9|lp_pdu_|1Zzhh>xeEqmh5($GlqqKfnJQ zRe#C8klA$YQugVc;)?M{Y>)3j$a-oO9<{-2twv-)K0!{z_9-q}4^7rV&XPUGA% z{~FsJ-xu%M#jxS;u|8#nin<4TP9&XgQr4A{ZN51cg={Al$B0bj za=rg~yW8*mp%H~MB`R2h*%|NW2x|!cKE-`t=6g$dlPkwAq+ZIcGOoV!%BE`J=HDu( zxF>zN_26er{M4P?7jCum{(N&J`Pn1Sz5mn9EtB=;Pdh6bU{^kSS?pEo@63~S7kP1s zGK93hoAAuajWsjB!L;iA*-P18Qn!z;&dO+NVz{`yH&s-0v-^If>E|1+85p%*-u+j( z{0Dp9LR<5fA2mPK+$qzz9Wgb1pITjl|K108OZeaJw)}m!eopPv`!8eLU!Dz&2%M+y z@K+}`a?b3%6(_$xxiK&H@KT#bV>7$buc!W8irN?=p()a}(4DW=L9}h&rKpvR^=D^a zT(zCGV8NeHT+s*k4_g26;;mSE-Sk^@gmkfXchSS6AD;g&tNO>1#ou?Q^=s(7{VY=z zZ@)ivN#{w|fkV&d9bH(s+BS3D?z5tEEPFELS(a?fdFFR{E&q$z_jF&MUbmM~JA9?p zv9F;QI<2R(jk{)^P;$IrO>;Qhi0UZOp}BNuj^`F3mPgBQL2XQW~h|Hdq|vPzU*y-aGY zsTB8Hx20hxEZ-dYTede&_sKUOA0F{fF1xOJPd3?j%__V5CzHTQ-n4mD?DaT8v-c~%ZT7#hmvfA{@dosUzCC#_GYXUZNLX?=~7t+5qwbh&ziW73kFIY-`}eK~Pq_4eL_&(iEm>)t$Ca`IT%;TpU7 z**hEz*Xio>KQF3#k(wKP>glQO=bOdlzBlccl-c=pe_`~Cw@kU>`p(6{UZ$7i+$v?H znBRIA2lwV4uIY@He$sBSE%uuD(yfe<%gWv@d8P3r``gd<#GKi6*W1tTe17NIq*LN| zpK-BFT-Ccf@ABFC!H<(!7T%87_O`A3OYE*F?{I&Q{ZGx5J{?ZTnzcKy=A%iA;*+ik z#{^t1Vcc=ys}<-3n+XJsAlmEmDwbnt&& zGr@G)>77mrbN8lhz0kCA=3mRDx%%gR?$pqCKH&a6^l%J^pUT!Qfg?|C_J?RrpI!RG zgn^-f@t$YT@4)u9PXZCj+1+}*8$%9%nvk^%S@-A8z?Y%znPvzfnFZS+vMiW-eQz0h`VI$q~O~w{Oevx7Tc4wf*q|DfuG}oPQ7O z`5+*-TRc1Y(t9S6{5u&63>UuW-Ogg!Hnp^RQsh+aT_W|DYx;plJwk=v=3u0Uu^70vk0TI|?K&>^YN>RQ^^*>#6)s<=RKm0jo|PGdfaxqmV)S@Sbf)q_ZQW zpI%dow`^4^t7+f$mieHqysG|!EZ)a`mCqdCe~5kd+LPsx4+w3 zFU6g6{>aR)JQd7#VZ6r@^wyWj2Ayi&^8VWND_8WsFz>Eloyxw~tlT>5 zc-{XSyEh$;eDOW-NLriJ>T{Ml{Hqrhek*==EAor-|8xAswVJc{uh}La(9*LcYjKkC z#%pKek1XW;q8w+j-fdaND}gQMSNfRCeoB3@o}qo=VD!?R=Xy;))H1p(U2uECSy3(} z&*XhynBr}j-}Zh;u9qtnxbt`8lkEK`UvuA^w|M>Cqt}@k7ic{1?^*Je?OD-0-$_+6 z)7%%w%)I`rWb1@)yYBjFpW<(o(^|@KuxYc##?xE)c4QYGFI#%wDqTbI*`n9~Jy~ky zzwqug-CI|&g85U&{}P)B2c}OpHNDR=mo(U@J6$g>+1L0jLucBKyCH#$pH-(H%laJ` zs#Q3r;af&kyY=@q^-uJq?$66z^UBt}F!|=3>ah3w&u)9gk~8nes{i-=tA8$fd;QK! z^~#)C%}wW~PkFzbd-~GY@OjJo?i}u(e#3HS6c+-nuUTuTs=)Le!N;DY?Tjg4xLyJCyD_ za5R70`)R|gE4m$?m$uxUb}C@+?!d0DudBtq8^ax5qRF_m`*b|H2mF zF?(6@y6rPM_rAOR=JoTQ3k)7dH(8vX9>-#Tpr$c8xBBOljQRTeI=+_P&J?od`0VGB zd*A)=>bzpnu=NkG$nAZuw(r9p?oU-|^H=s1EZ5@}-)VE``nd(kyDKEOzis3`@0=R( z-ZpLCAF1>43;yU%(001x?Ps%0J?#Q_K}yggz54IoD{4R1Y-pRyd+&en&g%L#uX{4{ z9PTWg{cgE)`LFW2hOWwuOlPw0pRKC6b8gUD;awY8Yw4SfO^qR!RnZl>%Y?omtaVjx%A%q{|>F*!#&l> ze}5>qgTuVnF%xyKO}4+vCSx#L_)@9vOvco_UJqG$>hfAoGjaJ@b9?UO%MVy@M3_oy(|9UXv_LhI2>o;$IU-9kEVUu0H@2z}xDoHT5&WKuXG{yG2Y<qD=;OGnh2j=1DJ3aGrw zU)$EEUXa4{VC`vkCzt=B-7WWCSvMRDR}QZ7Ri4Knx=%{_*6Y1&86URptPy%-=TfP_ zI=3x?*-_(pJj?9HhX3#6`|Z9J|2_ZT+UHk>uJv;D@4GhpANzHzAKXrp;M+Mu{u?h5Xw)i@%**|M&>cQ>_i36?%OVFEyXc6%h-N?_EE~$+hH% z-}YS%9uIz-SS`&CEnKi@L&g2}x3%(VOeG4E9n2{W8ehJ@@!j`xcZ_sx?A}`62MMpZ zUKlLzND?iGxDzHlJ?*alN%u)v8&BUX(w`S_>vQl&rt~A72@8WPYP!{G@6LVM-nG4| zYroZ#r}g)K2KoSI^ft0ZY4b@;l32BP%f=ITr|o~gW47&6 zF}>vC-fi!vss!FHTO4+;kNM^))B5X-B9o`M8)z*M|M5FNE&c8v*T@|=e%*S$$ok&< z@KcNSzFU0XQJ;hF{<5ytgBRO7Rw#ULJpV&DpG%uX;f0f8u+?<^En(C3=f&zsG`YF& z4C(fEHcS2&u=K>arE`vi1toSB-QrxZNBB=wwd3v6>Pzn*{3uz#HcNVeZD7>8xy_nxOKqI}`rz5`D}#D#_%~g-I(ujIw-d7+b^ACN z95-eycB+53NdC~ak0;-}+T}h^%wzKsp~{F(of&p)o~PFAT^Fpnr19TR?F+y5Hp>SJ z=$~C=sM4fhVWjDK#=n;Pm#xN>gd+9|#u*~3l($`XXEZhQtdQsDMt2>wTgZ3$>Z~o+tSoiUdt6}7p*RJmbbE)gp^@;tc2i|N5_)U+w?T_&t)%O$rPFa&vi3ZS}Li8L|J` zp>x4+f3Dv4@@k0v+wxt7S+SGS3TIul_S8Mnu=#%*x8nU{7cOLP4w~>~;XbyvY7Gsa zGHPbmU1vX=|6hJbt$v$p$L|%jx9==aIJ96*xm?-vd1mVKKi>b!F!j{S?RM>NZY;@q zE?EB7hE)|zMPn8w6o0g^_rb&`AR*jUOY-`X8Kgi+9tVT@~4Q%-k%Av%f49e;1i)lajvtX`HmHTR2u?QeC|4?(@2FM%~2+ z@5=M$?NtByseaP8HkDeRUwNt1X1_k;_iFXaH<41a&GhZW-rRUDzbDf7{iJWpUVlHC zaxwS2_bijTr^^>^?0ajq=lA1PW@*;GCz347k4CDWOS*Kt^X;#1@{gaj%?P>G`{s~m z&!?B$>*X1$_J91&z5m#O zYyRNXxPdXx!g>)KgGX`!8%u-ak;>}+7qj2LwfiD^LTFX5pNP+#@ ziiw&GC42R{R#e*`?61FQ`(O56#6kn1v^OTI@kPbrcOL1adH#Q8x#imH(ktr@*Su|t z-I-SZHvjZ5E|Y7D)2IL1Rr@CUUbX$g)1lL~KYU;bbyv{xn6~1hq|TI%DGVOz#n5AXN;7cy^Rbzy1DwJ!7Xe^>G5Q&YF_#%s?_c&5lNpX)QH z^SkKYxx%5M>6yzv?(i}Hf7#sr>t*?yJ9B&L7{VtUS-EBR1BpBJwin}f#U_jFy~R_g zQ}~A~mPz2CLPI!ji>E%@v)5}FojikI?mu)mUqC`7^>bG)^M}B@H*}nNl?0wDzH^w= z@Z52dtNf2lEmoU)$q0q`YmNs~WDTdyWfiy}mvMBjT^7G*=gFA$D_1Z6`P=?xY`n;H>(6@~TtJ(&CcaF}h~zxj>N8#!7mzn|IO zcwqP2y(T8B(!MnoKhp7i>*lh%V(KSXkE(TBI}g1SuVdb&`*)uIrGJkPZrq*!AmUHB z0OOJ6@fC&lzihcv_2%XCxQM8?l8^7C`7fMea^E)euDRhv)k`m~%ggS1Icxjtb$_k@ zy_C26)&K8Jb=TE}=1yY08s~m)mkXS%ykPI^Gl4D}%>KT+oTMXA=dU1oG%8g0H~*eV z8M77y-Ryq;=8;j=_3C{L0&VYiHlI>0eCIEp#PL8T)NB3v;QQtR7dXXBb}awUlrV*gSA;k-1~x-!+O5iryDvvb*|kwBl1nw zOnpAvdFI3dJ^@F~??;+972K?TpdPyO)hp?cRf`Oso;rBZ`pnYH&z=Zx`K@7j{H$;1 z?sqHmpVa*e-;=!k-h{v(!4d^`{>As(em`3OxBlN={yQ}VY3`O>V(VgiZ|hF}Qp}az z!n$@h=k|lq7Jp7&KKp=~-A!(0?!Cyc`StHkrN7h8UVD!tP;YbnXT=?VZ+uN(uJ%&> zrSN&jv~~GOhRI7sYMhv*SC~8=w9YA8dj04Mj&sX{&YE7!$cb_|Gu1dQ*XO;ZR-t?T?QWN<>x!3e znoM#OI=z*9!s+I%MmCLRFY6zgzn#p_q{Pv1mVt8$)6&X1v%i1#e|-0QNBwv9jUiiK zdzU41&V0L4eUbIO;D0mYz4m>bdTf9GqYpFwT}V%Oe|GNwAN2?R{(s@tdz3-R$z{2i z`MG&J=3JFtu7B>`ZL>bUW9?ZH98(Hr%~&(}Ywn&XiGP1X_g7c_6@Rz;<;JJ~7^mt? zS2LS$SzEHJIW(YHJl-h1Az?{Af8X@BLIOwt0-n@ptVe*Xhii zH{-Q#gJa9%vwPSKJkH$wD$SNO@ow)o(`=8Vgf@c~oz{t-@89uj1--l^8aMa&D}xX> zgR=)N&p9?p^-`|KdQFEVHeAI_i?$p;_TbRc56gDnU3q+Sel6de%~l__z4g-Dqwsn9 z!pQXOtFiJIu4Yxe^2{*5lk@7CUPEzo+Oq>oHj4=yynG>Zmj3@f>#rhj?U?4atzLif z*rvMk>W6pBotRfWM@#wDiMhWXoc;Ad_N8)t#o@nw%vnc{x_!QVe(tT#XVJx*pL5>~ zu{`5oQGDyAg=wUY7-L)6yq8b))|_$Q^|vJXyGPE)17GeK7t2>(UswOBHT|9B{({>R z?{2@hhy7x?(w5Nd548;+e(m1PaN&C)d+k(CEvBxx-(^lLT?cCA-`5m>(7L%G-)**u z1anlgyps^S{Qu8YY5vMdb#yj5ELb+NpM|H1Vy z-T2x#7@}U=eO~?l^~2m`Yc1Ewr_bx@t<8UP!Zk}lHeW`1X?XT-`Sq*wc0aDJtE~-w zcAanU`)T*9-@Hoa>$kCy-`#2&Jz@E|^Yh}eYd*|NetcA^Sy-*A-QbHmKT92hm*aZh z+uxtt{r%4}c~{xtQfmj6!XCBKLjOl{m9vU06P}s0DI8H~i4knx6CHo;@$N4tM0Q`< zGF#x;lKYL{+P>VnlX>cw5R2lJtY=q(i=Ih-f3y9~&Ggh<#vaD(2FZv6h7sl;0vU`s zm=!cwqnfWBV0vu)Z{zNQr&6JA8gIQ)Ioj1XS_$3#tXTZ*NUs!!;Knm8KYrh@`txY# z>O$q%Pww_Vlix?)UvXad-0mw!|E{@wTF2O5zQSyV;sURo3vB8ua(>L*tiJ!#kDvaz z`g1>be>E20{#E(^F#P@VAQ&aF+BA4T-fGb^=NDzJ7qY$=s4<~g(A>Vc_yLw_IR zb6b9O;_buz|77%Ij(wU?{~&DYw}qEA{v2Ar>15UZulxT#a8`)clfTk+>+g@^`*n{N z%l~{(etz!GqED=x$G_KnGVbKcy_4cL`J00Lyqwo%yH9F&Z{726^LzVafg2|uy0rB3 zT(88xhd%LT_}{Dfqb)AIZFZmdo-G1@kLS<-aj1B?-&sA)Mdov*zsc_L%h0;|=X?FF zxZMx#f0Q#WXT5Rp#g0>=j0~%tFWnQF>{ZCICULUov{fr@pWV3}6My)XMw=pQWx-5~ z(+u}sERmbP?X&oTt&D+uO&lEyLfNyoZ7W{8@G`^FMvg5^%hq0UJfeHwc>fb8`5Uf* z_x>;aZ}>s6?uoX+##sM%6Hd*TZTr6ViSf(rcGK;C=0-%Shqm}AQ>#B$it3kKzFA-JYQIfYrFd-2 zp63VH^R0UnbR6ER^#03mc+FmSD$efh{^!RH#Tf;)a>br)_7kp=KbB_EYv|2*(vsU{ zL9KDMRL7pX?icwF8dfl7^k$0BNsL|4DQjTWyL8qTGfl3e{7ZEvEW2>0Auj#&<4oR; zhD!_|j&nB%M8tWCi!(4DpP+wJ|L^V(>HlWg?`3YiDOLW@QbT0s+MkF1t6F`K`!VzS z?Zlg1)ADXUKC~|HDgXX&E_V;+tZ8dg4^=IHbWoiCPM!OuTYH{<5KMo#F!=NK_xqGJ zo}F8Iv{<{KWJdPYS4q1~LwWtref{p+|5c~|%h}xDhtAtoKC3O4|Nm;~v561=eCD28 z&9opn_`coNfBy`vPG4;1pZ}?M=i6(|uJ#kkKP{^_S>Wo@6KH;S{=CYt8!L-?#r02q zGBsfHTw%qfHZ{+Am#)-&#`MIetM1inPir?gv-{}ko8A2k(OaL-*q_@kvFz^g2d^q4 z=dy>q3EEM?m-SenC4uKlwFApM_G1l73@qCoR7MxaYC14JcVH1<5WUu>`f}2xy~p=S zzOz3ycUpF?lfcPalghu`yQKe5_WGL5d+esmbPFs>HQ&DHUeUXsUw14j=C?0jHDQT0 zpPz4gz{&9Qv3vIvXKjkrv^2kKY*YM&K{QN!`m^ld_VuxQjEs%%_*PE7!mj=)eDS5U z{U4LJ%UZKP+*kN{ZtIh83m+ZU)%cz(z4v?X@71l3jQ!(oN}iONdc5MALM_mYTGzzP{;wouK=&%nX^V;E+{b(*n*N ze_5NAvs`7?u4>hV9%M~C^&Vq#*kG?4t@U1z)WphQBuqenG=_4|J< zvC)A`_grceICO*0)UJ~|yfn3?bM^JoxoeFI4*hdDFg+t9 z{y+P6yQ!Uf^L&q<-lJ)M;`4gvzSsA^7p~~NHPv!euX40`Ib-CVUrIjj7R0s-woXrP z6lhmlaJxxIl;QLI|DD#~eLlS0?|A%vZw@2prX$;4EtoRzPNth$^Y=O}iz;g+fn6C( zw*CD7uX}=;z_SM34Ax^#Le1Y4J}LS#vdmD7zvTW-qwdr5%AZl&BEthYGUFR^_KV;9 zl2@N(r5RQtQNf3qAQs>R+P9?krEd;9dm zS-H7|r4_$FEajHIS{p38`j(&DsjG35HXf_ViCs5AeE#d%JGXofet+|4zJF=#z8#Do z&(8IgkiRLN9<03cr-F>$#qG}?+ZWe-zg{gQu&h%vhyVQC*q<-X?*4bTc>29y$-5jy zchl}`c1@rW7&s!wfCtfah!he4wr zulD2D0t@Qx|F!PyPQUj^qiCuc>{vHZkcmQ)OJyx1v+>g-PrkR@XfneGY6g zdhch?8pU4!?){@Ha@Ef?1Ejo7LsuoOJ8*1*e9@)jCu7V0ac$r%d-uZbPs0E1{mk>s zR~WFJXI4$n-Ees0T@#aIo1Y(yT+zGhsP^CW^>O_@%j19LeqgTs!8iTbx~ngiue2_j zZNJy~n%E4DA0N`!Y`w^Azpz~H^f~+gwPkXQVZWYzEY8;StSx+eZD!Cc?X@Mhk}Kb@ z-1#+GwBBx8a^=gC-;GLB^)-%PP0Zh$FQVqT{jZLg`TpIPJ{_vz@Dx`$rT;Cb>YLZv zIj^^We6j7((J<#lvu^n;%W`)2`r@Kv?EEzUjIPPKbN+Qd)}5Z2edX~Z58czdc4~B8 z=KFT{P}S#B9flj9LSN>tSL;$%N{EkK7249a$|9(Gt9r!uHeo&1B`XdK?V0EIxAXk3 z7pAfLf{)|-6}uUP&pCZM{-?DVFchu->bVe`?N_x$d! zxVY#Eb>Y4KyPvh?=**hjfAE>sTbm_z|GWd_9xc_*N@{ak#>jbVwnmdzcq8_r5y3TmHYRbittu zQqyl&I=EE4)9KIK{x08;5C@M)lft|25`Xhtj%oyb6;*xNw^H%4$?k2U&u{1P zt0V^}Z(g2md;hh6&x^13HqU+*tK90{xV}4Z|K5A^Wqkc|-|Q{@Gn;>%{GQhlwx;fC zZI`ZwW?t7_p4+o*?*iSly3KVZ&yT$R`%k6%Xv#_5J-?pizRf=KPX0~aI~Rs~9y^>J zI67Qki0a6&s5mehK3cQGd>6yNlJ8qMm=*GM7Cv8j_xO^1N%MYLg}8maSibWs>r0ah z{5$VX;MPC!GX2Aawo9OiJBy*n0j@RrV>8|iyy*1mDQccrY$`tSW8$1SW}t@%B~ z78l<<8oX*_=KNZh-u(87p5>1WZ@+Hk@>$L;u*a>xk@dsJoyRU!m0KO!8C2)mo_ytX zV#MVyceXxFzMXY`UD>-kW@T%WS6?%ou=TmW*rKg|Vdp2^o0=*euwLF@^iP`3Tb)~B zr{}*(zi(^)Klt~tXJL<`)xG`okM4Ewuf8|+-?5J;?;Mt$#rd>ybye9;(d9~diRbQJaQn?{)qgMLzVN<3=cRwX`Tq4_`1J=BdoN5`zv1kT zeN1OdHLk9RXuZakbvARpO}yK(J8v>?L_8ChV@$XcF{NAo(z?SNtX@~eo}5~c5p(~S zUFi$H4^A()-#uoOqFGf}^(?deYm-UXomTNi0S`uF9udE_cUQeSVPt5w<2NHu@ui#@ zf25>WcTfFtD>77P=4Jop9Y0p)x7{xL`MYm+_wtH&P0{gzhbPbYnp&*7bCSQG4cq&_ zOT%BzV~Cijy?U?Tu@^6ePp^&1E?yU|C3WUfitVTG+4HXc6x=*fr1)Xl@}Mu~k4%(e z{P))AttrmmwP@GYhl|ejhJI??*09N2JlbHZ4ZAu-TEixs7vO{lDXUerNc6_g8$p)c)>X@jlIe7d&=so449!*}Nl;8}{s~d~tUDx+?bdoSWY6 zij6&B5OR6@LPiq{#bw4}~ zyYs@@zN^c*&cr52LS9Z*_sXi)fR%p_x31i%u=Vc4mmhDQVQxy4U+vslJiAw1f31oB z`QF8rWtXpfKD%XFn*Cl|Eyd}A-kI{3ZscBzowHQd_{gTkVhMUh@2_0kfAxY$i%#F| z(zvdKx)Tp{~b9N+%(@A1r}a9c z$XI*vl;WG28gXH9XPwtfJyx}`XUZ(`>8p(=pFNV+u#+icxs&gz`8!&(d-bMIUNVE* zUpJTU=*=4zXV&Y6+)Dd@cXx@~W3$?ty%*mtJFM)?J$K)_X<<@jw@>{#@#KYk+?$%3 zs^ZSYr2(CbEY8e~xhdKebV@I0+un{@v2~_>`^!H#H?mC*C=IbHjoUeG+v_K+CWg+A z2eP?0)rfkVM$TeA-+WforY8Db^8Po!Y^SR|JG1%HJ(kIy$-y@9vb)32%Pcu1(Udq@ zsVQ7%Lc`qMd!}CgW+bn*+ukptJnwaQQ1rgsGJ%!@d~2A46c}!?pFe)J((=Ddi{O#i z;!lOwUwiG&n_qv#_Se$z_i>j__WAkh=B?ArzFwvFVd`h)r@__x42>s6M>TB>de=I2 z>TNad>q49NI`yjkKG*pm%KU2OY0sRj$A%h{wRadSHkhMR9dEtga%U~O#e=g~V>FiL zRVz)8_I$e{<#t)m)=y9K=SA=M`k|-)XztcKB^#q1WyJI{=jr{Ln^%8iTX*XMgDBGn z_YyDsiraIE^*dW!&3~0GUv^!%_n>TUoBGb3dHVCO{LW{)bRpt#9Q(EKic-ex$1y8E z&P=aJzWV>if9I>mF7_v!FU(lyx%=(3^q(*DmrRcj5#D{}ob!y++*yn##n$cG$-Tf- zW9w69SrsPDy-&Lx7>*|hUy!Pim-*lMv@yY`faeyoOXk(fS5r>}UC;ge$MsHakN*61 zHE+_J?SF@_zrEV=!uGjK^ke2_uiC)w*tq6u#nzi^Qlj`|p6=XgVZTTywQI-n;4`Nz zZFg^*Chd0JSH(Q;lG(wey>X0k>wfLdzF2eTny04v!Pm{hVfg(;{}onDw^bfDy7Wa z5bC9DynJKjx9BaOJ7(SStV>ud)br*`UVVe~>OI>Ua#D+1Q(aj1Mc?(2|K0V)>cQ^` zDhv!_+nPQcWB7Bu)%%>|9rmS;njT344ENbp5*X7P16mS4Dls@Le;Foz==S}|X4k9l z|80A-`{`6RApxngeb1}ys!d!_XQobO`R6cGySHV1 z)ZWei|Az}qVAxx@e^Fp;`!rSq(aGVBcLLaq&Ytz1b;I%Ls=ZZwT+R~ZOKul=U%$X# zSSz^6<^P}cA2#1F>JB%EUzA&Y;5_4m6&H@yeo$g5;}&;huR5;ya{HzF&)+v#J=*{M za#n`VZ$~x;wdSDKQ_d5X?%Bt&;(&AvLxT3sWCsi50%5_%??HRFacHncHKsCDt}MH^ zIs9CTevSB+`Df=HbKl2eUwOH7m#M@;r*|t`&$*;TOP@WnxaLlA;L_Xge>x=xZ{2M8 zW_1Ne-LsPwmKo0%-+Jce@4C-q_eA?SGZMC%hklxVqP%$R$0)_OUiFnrvkMmm?Aa6| zuWr73hhfrT?c%SsiY3=(AC9ZZRn`@6{#4)^W}Yv}^-NFyPSnc19tNALmupQ(km zUF82UQGeC!cWeKwt#f`CT$u1ZM|^@ce)E zzwPfb4hO~l$<~b=UZL-8=Lg*WzU$}dxczhO{_%SJdeDA=FNm#W?c1o8YadAjE#T;3 zE{qQS-130M$4rBpb#m%?TeiN$TF$qnhZiX^DHRpk-hJELxyknF1Em!kAKrPn`StGd zKJ~f#^nUCtTO1<$a?9@8*%{NawNLgX6{M~#)ac(l`|G>3Tl*@`YEQ|zEX6D0F{fy` z_EB7tyKDt=>=<&H)Z5wu+ocr4RpX{Fi$0_YDO`B1djHR#?`4?}82)}c`n2`zj|U&;hU={^7f4u#-thV_0hFisN9&D50d8=@qf$zad#d2^~PnlG-gc+U$=9rrAP7wxt_e|tJ9yf9xq7CFZj;9?B;u2 zJ%^2NWcOPCy1D=5TN@22OU9Y=1Q{wj7rFTyTD$Ca%(NQ8$#T9qhhMF@RqAodS?2rO zmFl4q&))stVQ+W&pZS078$4%DN3Q2!c%aj9Yg5xUny=HvxercNxwml6 z`_?^_&2FFnv81-PG*8#uYVEDe*xz&YVs4*Nb9YbvP}S&tXn|;(U-jvE z*F#G7&0nWtnEC(Nf{|D9h*n=`(-l=8^|tTfgrpKfQZz^gCne>}~fo@6?o+ zzfIp0egFA;yCZHEsf;4rJR4G%GAs~(wXtyav9esd8M7WPS-xs<#JZ2KY-Y4*E8l!t zeDiAe&e``}Z-4)=^Lc{8)Wds1TMsfn)nHMNw*I>yYo17j+>(>mZk;f?z{PPeg@NJd z>lqi7ik41powrTqbK2t*9uIY9KP)Qv_36~XjSth~=d6D(k-KQ!^F^n<-^Q4BRi`aJ zKlMcP`*df=lwKc}8NVieX0kPmTJw}!bbn6D;qvNbZNKmOnLhVlEd8}0oUe>+#+6Sy z15&p}{-FTQm)owZ`uvNAh& z{mZi;-hIv2napON-M)+0UZC#%=Kpbuh8@@B6uAtP6sj5yC2@9mFe@=}87x@vz~S&* z4+aqi$QBwnoHe}A78cjszT3}=iG|cZZ1Lh z#IAEc^e(Sp6O)iBP||tS;>Z$_5+KHNA#3~pU;6)!ZZG;#m#`%&zs=($KY#x32o*)9 zMkiJdo{lGs20SgR0{Ok_B^ww7JY5(h9hCV#9byffsKCt}B=U5QX=GY>_%!3>YtzEa z%wDOTzIOf9X>V?iE{DXzNu8=sIKuK!QiVai^GIQ zN0*8XCISu-5)DtPJA!_=&$D`3`q}nh#^bm98925r*(t!uDahz?fKls)lDbRlfdd^< zM;TW!`bvLHC{APKYBKPgq&+bw#53HWy1A$s(c3GZCiuxMcnom zn?7yYp%}l(dZJy`{IV7`uYI3JNwQ3cdsf2eBy!WLtbu)^tYeU$#NE@XAM4+ollJ*5 z|M%t7Il-@V!*1_utS}Zku=@C`ypk{NB8rU6iVKwrZ5CK6y08ds(4VQI@MZ$XL^d@J zp$#1j6L%CZ_p|+dW3%}B7-O@yM>m$v;ja~Y?jm{ED?8!DCXIqMVoob4++Q%{y&Uv(Rc*M(@wT9v$DuR4|ORusRt+y24v{p{uyj0ysas-C7TYS_Io zDvE=pp+V^liy&u1<%05F1tk`iJzx186YDbdj3z%1+i}r-f{c+9j@ATUX zw*I>s|MzPA&#Cc_N6fFO@Wg#8|G(0oKQ2+=b5^m8Ez8$aPAyDHaq$z6^6qBg?r>T^ zS#M2g{F2w}8B6ByJ>?HwTuf0`q-ZYz}^v6d8Dizk4N@@4GR=?1`f3v5R*O*C3Q=~*MS-?N@ z`JDB8H9pz8CMVyv`*G4g=l<^QNDc=!Hi0Il6bT(CfkgE+6K)tze6?j({a5k-j~YDw zPIQ;s`F`K;wzjs87f;{TZ{T^bRQb`RG<2h2V~L3)7Fz{<3O*RV%|zhN>ICvefP7Cj78nBC)}Be)R8>o6_HpocM0JKko@= zgU8C;+%J9tzwYm55I9j_{=ApxDW6s4Qq@1Z6fG12U6!(o{XcLZyycNZBLnNtR5e)_ z!36bN*R{Ee>wi?&7d*Ws)9N^B$HB5}pHn;xjEW4L6PI&tl}~AFa&hx4+8_xfm@AyS50kq#a?@zSwYco&YOjqsX3=dpyso zw%<-oTYBZdxo@@d4F8^#{T5r-c+lzW)1v$hyc|hOKNp-Y{b^;b(zHZKjw`;9k)fgK zhtH*dZtYzx_oIL5Ge~L4>%`TU{{4Tm`n|=@Rm!)>xu|4M!Wy^bWdp7cZOY$+ZY&HnwY$=kjFXvH5sT=<+%K;`P0<*SzNC-`_rH)2(4-*y?cO&IXGg zMm(OkdYBjTgsu>I?2~m$uhmPze1h^sksf6s?x`jcVNB<@zPaP@fAROb)p4H=r6h+< zN?~Z^DrxX*S>e&^%D}`ip?O06dX{W%o~DM5Lj`N>!q$c{9x&j!Y_gR-Nutdz$oub| zzkfrHi!Yrrr8;fyjnxVpG?W`Y@*YqTyLp=3Q980`qlWbI&vDDQemCsgaR2JWj5W(l z&xyG%h;tR$+~35)QswXZgh9j8C}`K3Wm9C7yPX8Qm<$g;yZie3ow~=ewa&_IiJ{F5 zg1Lv84n(a`+Ll-#e6d8?@b(t&se%k@p#p7oLdvR)GoAVrM3vOzxScLPxRd167AN4A zyE*^(G~R4;*}M0&nj8cb6d5&rQ(S|h8I&eA35e`*npyVscjEIZ`L>09J&X;8%ibO| z=&3S$_BDrl_uj|SdiCY(<-7am*3XK_c%JxJ>cGDB%Uu`OTX04H#{b>S;t$N`Av^x++o(z8+%{tzivEkcmIB)8v8y*0VX3Q-}1wP z3>O1DIJg)&83Pym9Xgcvu$fzH~~E7Y8FlTVlktrQch2nfb5T_qEkts<&!hc=_s* z6|yXi_pxR1Ql17Jnk1F@68n5)Rn*Bg#(@i$U3DT0GT{4GzU6n3&JdP4Gmnd*Z;;~$~P+z-6 z-|1ncT%*#1ppO$LE_`=3no;9RtrLspQjs8!lm#9OgA`OXCo$yI^He*#Xr^wB(iQ7I znzS)!^xg*j;8HSzrONL zWv*j)P-5|1lE`{whvNbdt)MQ$Weg6JT%6K)zQ2vwmLe%7;gyl$(I{dRvSQ7Y%pHA+ zxBZ-xlQrkhH>uQGv0;Y(v1HC;JnhnVj66@q)P?+9^z1r=h=3=TiU1Rrri4;vf_$)7 zphTCccGwx~Bsq5%Pa#iDmo^D5Ri~A)l~0yjse8zJ>7~co-9e|K);_D8mpN-&?rU2| zuSolZHwzWDmOeW>`}<4(`d@R3&q+#3MsCTt_~FBb%vnLFl>00mCCmT5ac5_-{nwTL zx{;fnY+YW<$71=QoPkwg>O0153<3cYgIW$)FbPd^h%Hgt_-5x(=ABG}GyINhlzHc} zHo|7IU+U(SE=IR6TsYF0DitNQ$#-SQ;VGHM)@r3&wrw#pF;$invn3uoaj1$;Nb=G&oHo~u!L^GyYt6CO(_@XD ze$96jnBuk6Yw4p(x#XPf9^!({3NPNgvHAb!Gvk7lD_?5I|MXfIkkBJrb|Z0mT-D3n z_r9*PEPht=`}X~7d{_6qWj1+u-rnKc)4Sg**$>#>;^`GlRsS_b>f@T1dyntud#k)z zWs&Ec=3|Qt)kGB@NSx{s5b$JteCHH@%tp z+{!w-laa~2HH+uT;t2v4?n|dkN@7yF{a4XZfW`5_?|r$qr=`A~WpB#!_}}mM_xIIS zS6A;Acy!5IfA8;iyMO=sW%u)>|GesVJNq6pICy(^=e}>PEGoY^S?2iaAjSKZ_sacW z{m{})d30HF0i(jP(;P2P{XYFQdp@tjgzfFSl>(M%Trv6jShk5{jt9q6&QIS`7|8rYm#%)-7jd z6tYZwem%=!Q;cTSJpEJ+=Be^>t6J+Mx)v^6I4PX>Yex7j&of;;g0EgQaY(p(UgBpE zoRPXNdi%a=@AFqAV;4?nSfIkhP;{=t!9!EkxaV&-*UiZVM#$WWduZ(D(So)mX2YK5F&9Z{Oed|L^%_ow}_;2|HKt`22&CML%t91|3oq+FOLcnZlRlvG%ln;hX)SU6`#s&s(%)J2^Y z0u`M;$y&E3_PHxxT*1S9xZ`NjM_%datd1NmPY* zGRT~hJvsBkX|I(A98-BD(z|vDG4W25eziI@Ygu-qNJmGHr>2C`i(gv=6#g%KQSb7_ zMxTS}da3Mj$0J@#KYd+a|Mz_Tzhb3{E3~UthWxto-0u7I{ePCOT)8rCa@|xXxs#KW zB-RHkW#HYQHuD=#wZHZkiCMY*;q04_8r-b#@@|kxiJa)ZY0a@lC4~v@A-DfNTCd7> zqnW+`*YsOF$M*l-_}GH!_GP{e>%TL%aH;gPitp0mS;D}$l#5Z&Qu^f6RdK!25-dzQ zr@v=4q}*H=zcy;yY>y?T~n#-&S- ze*atR*KFkA{5_`Uv-$%E#)@Bchk z9#?RX^|);LoNu2@xk9}vFS?5B#_jphCY{&ews<}3PvgP~UAzD6VVfDT^VP4d%cUz? zWj>TLI6OJgIEAIPhgon!P=iO+D;sy#!_1X^Vg_vjRi@_+&P3P*o_xOZVD4elyBrPt z3CcpjT{D+8AJM&Bn)KAkkM(KN(h$9;G1`x$1kJ^k+qmV1Ylf~9lRe#cLs0MOfeQ&5 zhf_A~ba3uFSrgB}ytinEw8Wb^chGA%}1Q#0aDWrO8gRe;^w|Yg<%5M6eZQEUzin{Tosm1$#-DiaP9iJbLSrS+uI3s z{`u>u$kgz9SJdq3`tkQ}-CA|g&n97<;C#egoJ>=#6t(x>&EZdBB618D<{vw5Sy7k$CT=p zrb+k(7bhPno4~^OxGYBC{pQhBs7L`$r{=oruG#I~ac6g-zPZq3r=SSrA%xm1L6zZ#3CYfy_* z$8}a+x$l_@N{`;$+ze{>+$}iF`~T1R|7#TacYU$Wy|tzO|M&X+PbPVHyx94CUiJOo z_qNyl{k3}izF#Ml`~TcLUl+DAL~qZBL+o-D4u`uIUCdCL7~r+HcY1w=^bQ9nwiOaZ zK?ZHiqEfO8PCTi3eN9)|?AwG*9#<7ssNL}}I>x2!th{*Xw{_>PJzM9qY^DXbDo^fB z1A`0E8c&>9Z=PA=IXQi~)U24aiBmenI1?LA$^?7P3|JQw@_ALC?D7>NN*zW$$CLNP zhk7x3l_%}-14o+L-MG)*TQ6yJrySa_EWejMk|BvICc>ek2ms_4! z_V)JP|MzXX{>~?pGA}Qy{m?A`=Y_ldtqT_pSpEmq7atDuM^AfNIj^n8OSALDCLP5i z>h?c9W!2vVbH2ISb!(|=f<4#UHyStGZ>BQ`h`cI#ul=v7%gMFcGh2Yub)nL>VBnt+caNB|*o}q?jC9qTuOfvT%w) z?+TO7rYwd@hSI*bOBXwCc{SaQ`)Lpd8xyBu*3}?^79PflhUc7A1sOX9Cr$`jRcp-P za;4y@RbHj}lg;l|?|HZDwcY=p=l$o|Sn?e1*5CJI6tK`h}+tR;ZJ`4Hax+aWue>1b-AM+CzW>WP*R5n=m>IIfLqM@XX-eGAC_S;gSrMAk zBpb3_om+!eI#eXCkdn4q<~Q%)6fTapA~JDRFB9R!`l#A?)j^#&FG0ZqxNDOvSfz#`qv1vxE=GX2j_P;kSD;W81j?jrKy&78otXlX%BC42g=6pXjk%f}IEmKbw++Q~D-PX8-YX?3w&kC1u zeYjM3<4xmqPgUoIBAu(k`Fy=ay&A>&o|Jw0`i<`?yZ6(g7r%p8*wQz4+`Ta)aMIN5 zg^B_#CYGCHy|=F|;QQsQsFWPjcxySE-r5CykI&37Oun@xb6YMyKmYz8kGh?mouxj+ z*t@y!y&hlxclZ6j@4oMSU+dHnqQ%PK#BtbQ-{-mSYrgNkZ|b`_?vd+}TDLuW%^Vq; z?)-mtJiqgfyf{0{mVz3SdvZ@2_?tYnm|B;3`ip2bu3)@$${<2XwAU&v{qh-wFJ^1v zq7&H`&d$uS_%h)z5A%V9JI9i)9^UY5x_9%=gd@2(tagMxDb9U6nd@#em-F7q>1XnC z-y~%yB_~Quabst1uio}G=QRIwud7^2MaR3;CTTcu=9d&0ObD99qS^B3Wl2=0fw{>I zvz5XcDlF%C7(#>?0voHQvMn&Rmg)uhV9%3D-hB3d3a*#ho{!#H^tArZ@%l9p8yE3? zZkemwr>m>WZ};QD&Gh+eFaEiuwQkR+Q~7nDXYbD1|LynxiF4yK_8ycq`~Aa`uZCG+ zq4fFVVj)k0G?_N|u3otEEu zE$@vwufJUO|NrN?{r|r5J&XS>@9XQ^wr!iRpM_)k>#e*lN)szTKYRJ~{h=MK4iCm6CDtP*FQQH{Nan=s&rI2J#ZvR2%Yoh> zp3iG`z4)4c@53WUpZ@x#byUdP?~~HYq@_3PcPL8w&xpCzm+QJ{S)%YYpVLkOPor*b z3UYL4O;VKV74SHw%j6WqCE(He@5hZ#yRJ;+{`~Ch?<4AVAN$JpIEVAU>UiqRZ~JA% z;=ZaE3)@Tn9WR{Yt+(?@?fdHchg!K!CpbQyUwhx2=dpMEuONxG_@Af3zfAIX*_Hj~ z?cA61Blvze%?O%RCc|i=){P7Z^@ zISHdQDZ#v5)81NyiA)iyYYaT=B+9n%?KU&hv);#yJ9nfix-0HjwBVWYsuHcsmajK> zs6~HrRlOG=<{1Be+r@{9qAgsEjUt}*JSiG&?e5|Geq4I+V8ipPOQtxrESNHd#l@*@ z{j;CKfzHl{f8YDQFWAr0RlPFjww$Eo#mrL&4<0nlzV_nod6TmW9DP==R$TVC-+NBE zR`}HO__B&NrelWFvRX>ES>Be| zu5;Oet;MP6AuF4+xm3T3^`$j)`dT`dEqSQ6b3^-~rb%+o^%kf&1q5lhxVSEqHk_cr zvo!OTil~6WF%K^$-;4X)R|+4JEj%Lld~W%?#}+|eibv}IJ+F@|zgudYe(nz_k>0-l zZ`<8D&L!8EGXKw5$d|bZ&_ubd)cJnbTnG*l+)AVKqj>8|aLa%2-MyJUzxLV8^m`SL zdlxTWe2ewhsqlS4Ys2<`?9FF5pkMc~`|9fO=xM2u*Zx1g#h=g2tl*%)dPKlO(V+7L zhk#0=&di*=?7mxpho88a2%Fx_P}O%*?FrD(>|AnbN*7B8gTd(n3xjn`=VaO1R{c7` zpfSOR$%}`zvqA7i*_AHC%bQwLnw(r0#;;aPU-?Yz*aQKc!yc;26ITSU3z<@6G_yr% z<&=;hL7~E!9`OY+YdLz02YU7(luHALNZ{N>)$95q&ucK@=bHO?D+*>7I zuZA->WX`hUcs8g0^X&UI&t|5ty87y}zdbKQ)z5n8Nq^a=>|tZBSbV*w)_1a|l7nx< zYWLMzzWQ=piCfD}PESgdEL*|k)ZVNg>LC$2iAmFUDTlzs9b5;^E~dO-JXIkPHk0wl z)D>bbYuna!PZNp@ozlgz#Gx>uv*YAh76$PLtREvZvJziZU!BzWB*I3hKTUem+G!^( zi;l(IW=m*T;L+g1%EZ{&zwo$l} zH5&{cJGwgXc(l}+Ow(c)n3CP5&*;;3!a{(FktIk%C6J{@QNSocVF^cTz(S=D&8y<2 z0vD?u-l}stXkowsp3~cWo0sS_$zR;SyCsJ`!sSH8N~p|Qcjkh4p~(5bKCj*Ra2b+I4+e0kPfp~N<)wX4HW!D(p=SLgv&!^Bx_9F8oF zANB;fo^W6by>(B%bNQN#Lp^CTQd^e>rp@ZixMVc~;II2>~Zx9>${xl4~AGt17)nhFd-tAez?e#xo+H#2?rExwu8Oto*#F`T<% z%8DIEOr9~VHX=PUyOwZF;n8|pvvh(v$EuwRRjk}rEnMQXS!%|@K&@%D`fGkAzF>Dc zm9;c!(NW&n97{y%Ua%^0{856SDs77g9LBAiN^GcFTPkW(Ed>8N4p}a~R+JzPIS}{F)p-HjT60t}RZJ5^u#$ zR`2C|U-9Ur_4|608T%i+DWCt{PR%*Vj8U-D!BdRmsLq7Ch?P^_*acZ;t!qh$&SMXC zzm{9Oa%F0j+3d9;U8eOVpLcDYT63;9YG3?kzguFR6{eG?ca-amZHy@7AvuZ#NYgTCEl_;Tgjc0bqI44ol~(93DpqTcs42K>0Q>Efmahm``%%(?7LjB_+TIIS1zKl*mX z=^26>A2HvF-TUjN#rDvE%EYU;7B)6!Rc;B9@o|5YcSY67^^EYmNg-do}|JgkD*EyH6tFQd$a9qL9cPEx(!u$H`zZ?9Uy*xXrjFf{plAn~fFnBne^tooD z92*-u$JW>&LSa#Wr@}dl^`YFGrg@u`2(drvG464T>6TnLrSbXoJ(C3cP5mrSly2(U zbMe#$j;_Q+jZDdt8Ap1Lt9sh6Xgf7QXqD;t^_5B=Vh_tn%IZwtt9f~u(xeGYoyO~y zI4LEuwRtHDJa3z~c9fmBXdO>*OB~Lypv~K~g708$~8gNL-<` zP|3S#p$5;MO_`QzO$S@P>}jmoS)UTUGGs-V*1Yg@;ayWFEq9UdOqpBaym6ZO+l);s zFZNh)H7R`YY*{Gs)Ju_PRZLfa=Vhbi=W~3QPFCVE@fO!)nbKvbs^Z+%qq$VX^IReS zpUnE{MLXC0tz(#BS)AtX?p|L0eO=mu&$EM0wY9Z%>+O1R$y?u7ZF0}X*?GHOn(zO4 zR-5;kuK4eLH;WEPH^jNH3TQD2bS%5aG)1W8jzRA|SzG19%54jsBCjTUujUGDVOg<5 zRkTP@LzK(Uwsv+^`>(bl>q8D!Wg%KeFUq}&elPCb*~YgeGQ+aAHSls_v@E*>$4l-* zUQ3@`&vIGF;k;q4GoQW9t0*T{7Os+dBLmk18c*hE2YD=zV4N^%LAzAH_LkzJ53jDS zK5zH?jRDW%i!VMNm*1azdt24|u-M<5Z@#I%_j#Uw-KWX2va&rJK@(8I^M9}~?Af$5 zR-FA_SL6b7PreF+ISL9-npgw`HyH3Zt#mImbQSPbNs}qLkmxRR&u-<}XKe>}a4(loiI1E+}O=|PdCZV-tEepqnzC2t+;g2$(NJU&&{(^&0FwxVs7-| zp9}XbYz*4?B0M{8ZIJHt&XkoAD;rHq&)rEeS~@{lQT}tp)@DAQKusrx)~<}4bvKWM z+_)86`Qu^xYsuODbzc_ms^32E{*<7yva-4t&hnt)bMxe5JT7nEzu*6$iTl*kPxFqg zdZqW{fBY7i4{Qx5rYec75SSX&CE>iR!$VMOLgIo3#w73R>zwNH*G>0!2WYu2de-T{ zXyEB|N#I{tvYg6gTwO1-ldb)7aZ=qVHkA5-eiWf8be&XCI+n#VOZHYxiadaxNg*zs;^nS zWp+QGOt$~`vH!IU-*cO}e)9_sanAqyCVl^pqx$D&nRXjaJOBK=_4_@(v(4UeK3g!m zA$x0-ZAsnYeKVL{;$AYnH59aDT=~CF?@TYw!Cz=%!}firjvSlL4-t% zy~&;MZ%uQqYjYiyYT;tA>5!Fvr1*GtcJUjXMHe0Zk!Geo6{*n6k^HJ9sH6 zDJmK=aCW$?u)M4;aM)ng)mNbM6y&X0+dmw)|M&6E&f@91(Z?+3TNXe2cwF8-|DMhD zQq!%sTgBsk{P}!7J6rO5Qe#b$5jtwF9XvCgoZ9BR=KRLR;h|LE zo3hHG$Yp7I*?V7E6Q(c6r1Ndw@A<5^=Y!Mv&x{p+VkXJ54+lf_wv>6|9%U5e0pBkIomVxH?A^tEZk}P zKVsdkV+TIIJk973w4uG0p|d61v}~#0?ZayY7hR05(0ZTyD5JN!mg&}%-O`0I*BL}x z0#}#*I=%bT@jc0^j{fC}EDTH&R3sNoS~7#_Ww??%fBARytlDo^oQs(6nwje=80^R{ zlDyU;`%ulCqf@18Ly+Xl)gp-%wk&oUrZG2dtS;HVnrbNLnI7Dh+g8^pBg`>Hs3~RH zQq^f4+L}8O1sa*0+JcN!lqM|j@c*bb!NDa%z(c|9$dX&Tm%Uooa9VHo853XIiyj<; z{l{P5^WGWr@1=kJuebU2w?FUUy!P*|i&v!9)JGpJ-mG8sVfEwp@Bgn?3|(A!V|M(0 z0fy#f{^{Q{{~fTfZU~UuaM!kXm(K&%%v&9u&zU98D9&0jLtV4sqqs_lh}SJyYlT(@ z&IX=<7eb~B=eZqR^3FVP!4km_Ys`PmX*E6EW2EMF^kIok=b?<;xo12I4;%3uTbgua zXX5IL0F7_u&$spP@U-vCZxE^z@H*eOyW_#{eTlb%+MGD!S=vN$ednXRdVd@|S9Z8)sAxR= z{c>5@u>g*fzHKK2IXgQFRXGh7R@Jbze@$ z|0_B-$8z24Ygt=MUtgQ*rOI%@CGYo>lP{W01C+$NUru@bI$z+nb^U*7o!?gV4}53x zZ?JbYULc^Uz+fvFWa#R$z+?NV$qF2u3a4hGv)64w$$_-dU4g$_H*#su<1IHLI3xL-MrrO#@*%q_f8G5 z?zi)6A6)(LegDEu{h!(SemF@8GIA<09Ah*wWD)RSa#2{gM5(Rip-26e+J*MJH0|ej zyC`pTDPCx?XKQtE_Ga;}9%0AHqADg6zeH^8IB~GA@YtJ*S*@XAn!g-*Kha76|Y@`JHH9BI(zQN^ufA&w7vwgsO;5*aptzQdlR2h#=Sa6`R zrOi#4L8&499PhE^`;${HFYVl7`0BhtTIcf3ZHcLCV+?an_wJgQv1;eem0P!JN|rXX z1U;M)>^f(Hz)q)DmxejU>)6xYzkXh8`}!}-qR&p-a(Ay=ExYRPKe2pY%Llv)D_9#j zE;=+DGW$+o*=2Q1#B;7ds)Fmjh;Kjn+TLDV_n58inu(gsZO<)!vlO?jxwUWY?hwA9 znQGGQsU-HaHE6-q(R>+cWW~K&3hJ}+{{hN|cFWV=3`|`|^?Be9&V4Eaq4;2vMK%<^PA6|ZHX?tdLa^B0ummo zwUSyKQ>UEBIc+j8`p+Zb^J{ZnbhSFET#mJso~PCClR3j=d()+LUw8PJZTIy(5^Q_h z{QI{&(S-*C3Ip0w10@7ngC;D}nk2AQL0}%cfQP#9X|^B85$aTQ zKE~Mb>F~}!9t*2y-@Y*=H`7Z+Sujm2K!ek>*lEwyvW8gEyWeYVH9U>m-}xKQNZ4~^ zURK0oIkR`7-(uI6nKyL){H?xk>veni2c|LhQxuhqcQ87%FmUXPH{OvbwJhM%&F5h@ z-~UAQiK%m~KAdrU)@{DmH@9t>^FBLk{_A76b*>#+&FrUh(Qvcj)VsHK=Uz^@zs+f@ zlb4|hgP?#T%cPnFwWz$cL7i&R7Rmbp@{A&1#V*${X?VLNm0js*gP>qz(h0$X>wnyh z{#9MZvrOpYvbG8}(O#F>wp%m*?>3J=|2ZSH`tsp`xeAw*pP4o<(lgz2PFnhOV4wN1 zDK@vV=S^{1BsI}cu4lqAX@~vhl`|RNOx<7abd&!xW8C4dQ?K~$y!2!agR`WY^2MZu zo09$>>y7?ZRoy);QER_cThNcxr8U;qE?B+ncy~|SY<;!Syew}MpDq_^Z?{>YTr+%* zFEb6?qIKL&-x7YrptwQxC(~Cd3)|g$kz2R7Hvxb4u;Kuc`#52!7 z|1S6u?Z5Bm+5avs2|ONN4IWqCzLt&pa^z9&-oqz!(+u2#SQgHnTX;hA{q_S)=ErtM zYxDE*jOAU3~QH z^ZETBu3Xkm@tAg4RC7WQqmjv~qYIOkzL~}2biUxxHc9{VsF|5lx{emb$4fTqFi&-Q z;xmcoPylCML3hprp_$3*QZk3XX)O)fdH>lQX)`UJ)2ynh*ZemG}SKccTe=&8DdP&B*quU?6-D_s~ zfY-r;lSk*+(kcA5pRSy`Dy=im#AnJWXQK%M0gR6Wr1idj|KJ(BY1-zg6YeNH*_d%{ ztn2=zQx95)NgrI$2U(WjK^V9sd-nZE@AJ`le zbT8{o@#44r^JSZC?K)XjRxeGK=3|$7xflgBw%595ebPCQwbDvQK(gR)iSMz;A46;= z3SN!c8n%Yjl-WVaLvq$cj^dmTd$S_Gvi)|cyiukUw&&m@G0Cu@E&*f@fLN$^LQ+^Flu%1Xjt;OIC-tj5)RSKRo+Gd zs)~YI49h&7CYto*msj52A;#X7;O~Eab}j#U?^&~EZOgy^Z~Fc}srU9&9+xRTvn}`b ztXZ?-YCayFsvW-Xb?p11*y|=|ofdw$zW?9WsI{Q}C0A3z>1n#_Ui-~9J6jrS8@kkQ zN2I^wHCL}l_NVNQ0p$!O`CQ39=dYc8TIBMi^4^CJAJ#-}W;n3z?b_(=&p!W*(VKoY z?fSY{>(o;shYi&H=gsk3UVH!gf!Pr{-=5hWxUPBfiG@#_i_paPFXul#weGmc?`ewt z$7ZMb)^xoSoAqH^#s%BHJ}ddHxbft3P19qC z%+q+*Z)j(}$53fcyoQW@tZqbU#jBmgRZ+|Z=IF5=aS9iSv&U3+kbs|M)HNn*KND@cSL;ba@%u7mKIjGLi2Xht|If(A#-{w;oqPB0l~~n& zI;sA9-~R{A{CxcU@kJ+99R==Gy@5HDg!`;nv%Y-Vqn+6#w;=oWw#-@cp1<^T znd;>#-5eIY_S!A2SGMg{AC9auzP7dW>TjXf=~oxB>?k(cy^l%BO=;rv+If5PxbsUU zZ0I-tP$b^LQ1Cii1J^R-^|4;M$ej2XOd-d+0Bjwxd zzW$BavvOtWxp=u#_y2A$T9SKaN)wx)lp({**A8J-{SiryI}Y3>f?Q~?6M^j=809k zUc24y!vSXXxg|kbQ(wJ&8M(9Q=``JFvz!|RcM6Yh-MTe%)q!7X3qtLMI$0by)cpKp zntkodw{K~iZ?KpKrG-`B+=(>09Z??*E-P+5Y$WWQIzY3TcT3x!*c18dJTd zrIwbJ>Ba4-I6X~wS5^J}+V3-$S=Rsi6YOt$_50snTI-hc+}vhsVe#Y5=JR@yn^K;h zni{q6Yvl4dMW=o~pMU?}y?4L&ZJQjv=tJT2imbICf1UbTxz}Y$W$xDV!SO#z-!Cd_ zk89IZa5}7Ezx~GTTW58+kGVckR`atucw&jiiNE_r6@nz5z27;%DPc~x@+5&YXS2FT zA0N;6W8wIjd*1Y%Rq>^!{=Awu?6Wqpc^q3bQDK^FOmX@3L;i+&FMFG&I2|*$|G4+g zhQQEQ{7O+Ej7>$#u%*8lB_+??h+)9C2;zZoXCZr)rep8U4=O0d=UJH_Xd z`)#k?zc1gm@b#`J<)Hi*3{{!W z=VZGWCa;NF>!u{gtEoNJ>+8-vUzbeQThqsx{BPRYsjA+QDx1`qJ7o7V7%;D|syk%I zq2v)+S;%@d>+u_>jwkHrrmVA-WKd#m=wp>PoqOcNG56}}f9x(_XyIDg{^u^{GW?kbLR%X z&Uaig<;t}FSz8&8e^5_|-m`M&#gEhGTbNJJo%dzkyIb$yrJmnovZ>_jHP+(gN0yb{ z-BI&5@ba^oAD88$KRu6rR{vqql_h1d`{tiuxM$_r#d&QPyL`=s&wIXoE0cZmisS2? z;&Yj~xvUItpJ&Kk{l8Ubb%f5kn4OdHdqt3+A8l_ z*^2y}@BUelIzox-cB?a2EKX*4wyR3H`f0TAbBlvHsxAsoRifOt+3kJVsIAo5HhtTa zW!rYW+@UIBq#}3H;4llr1^N9kdUuP~8wyk=-TYdAXUpUK2P%uc95L2r-~J`%mF}F1 zDWCn-`8GUkU-)^xr)P?l;PDCXPuiz2Y)C%aJn#J!+j#}6L;D#oMzZ@x8b`=U+)QhG z_$(l2w$aY7J*|87_e_~}Wu1tj-9pA2Z{#l?*%Kbf@Nk~=mnMZ7w$J*q9-fw!H8*Ft^qv`vjV~6gn zJh{w=WlF)MwNV0#1pH6u9u9Md!H}ijM zo2G8`R&Dy;!=GBuPSrd9>!a5P;`_u>Z`O<{Y}d-PwgP}>5QGkzD&KkM1Jckid)_W%EUHlEp&dwXlt+nMR}G^d|- zm#a)snz&-MGDF7y-C?V3zg`IjO=i4!u|h56vdP9Eufqm0*K>1ne3k||3cTQTTrOKO z<<8x^wQsjxm#coW(Oss{#cJ-lt68P-@!DGwC1&MZ_`D}-?Xvjm%Fn!(F6z#6>e#n$ zUy9Mn^J_!2{@+ml<;JDy5GEH9D;bp??b)|#^Uc_umNl8h3s-xsTVrN+j)_4?Q7Y`+ zz1`FP|Lga5dvZrIxbEZY*W1_Kd}L9!^qISAXs(6bQMt~Q*5b#FPiCDzJ6}>``PtwK+eyuN6>&fBkmp z&Yc(?vFPY%+w-qqytrW95ag9_3fk0R|IG29Gt1OT*7N@Uyzs%put&zwc3x++Z)WxJ z4f`vPzxblIJM-B~28KHf4g0L$-j8IMi=cCr2F_HW_ac|#Z`D4u)gC1ZKMBJJsgU;k#k ztf$n<|ciUm*^Yr~Tf3LJ=i`!a1_`OuAKJjOlrMu3S9PW%m3KoYNB|oUW zXJDAf+5O`5bbbA)UfN-6I1U#a>ycbOuWA*a_UqEH>!sCIRiG8eId^s#PW1S(FaCV& zt1n9vCC;8btE;Q))M3E0_1N{StySyXG)3DIb;OhxWo@mxox9!k-;c+j1{T&YYDSBVb%*d)&E|Gac( zyU+WaF5Ay{KHZyDB>RYAY1f=9wZcc^U3j{rn?2zovt^2d{&6I84_BH3O?%)6WPxpB~X185t zJi=zF+EuIn_$ct({dn;Cy#0I+6+hdrS3aM!)}QE+(I4~sZ(HJ;*xlc5Wv_qx?%g(> z)iHXn*X;TB;Om|j*RF-}PP`BxKlkGm-o~9V>-O)rpMLtKXfE^x3c`!g4?x3G#{}v zKJe9a=6K0^%JAo$lOLUztIjq)mvAq7=T3v2rdB&uS9N6VyK^VnvEgv~65Vdq#bIYs z1HJQvb<|HXrK%^b{{Q{ml-#=K`}fP--SKq6GO^p+JTwn5+w)d^I;n1MZtg$J#8bU^ z%l)KT%YsgAT4S1h?M}gA-k&x1w&kwo{@|(n{`q08 z;o}rJCWfMIU;EmFR$mhpv#meDzmL1Rmyu7z^4E*Sx~DJIu8w+H8m2DPxh7)cqg}7p zUGA=`EoEnTd*54AT3Y(@%Pm2xmM?dIoh{LJ%XfOvvBw{~^>$^Pn`4{QizfeCeAoZYmwq{C zcgkdz=DW%>I(c`^HWZz04gYU-^XAGaDLsd8A7Ci)Q6u2apTgZMa_@j-rnBd*QX}L`F4B3x!U{dL$s#H6rBuomlb7ce7);sN!76) z$*&uB1Zcdt@bi+lzU{*n;dMJ6b%DYNGzn|@d`_^2h?~26>GO)c0UK5y4(^{F&l~Z5 zs#Dy8EK`od=7$(g-2VNiy^uwaq06>g^x!Vpr#qT2-%dWcLb6{X=+Xs-?77u;3YWjH zp4i4dzx>qU`@jFKivP3nYYXdSJ)7N^?r#3MzPl&FMKhH-=i#2~?aNfo%$F4uVtn~D zpViUh#9tf3VfEgEHO5ZD%E4Z+`D@yYI^GpRO;ytexpr z@!_NTdE3foOO)H)x7$yhS90ebccO6Zlj~)-T0Y%U%3V68tYXWn*QRxsm-+7hc{ac6 z=%UP7Q7^Z?^V0lUvf$XUV;(9°V(-;Y}vV$u}#JiTP?scmmrxy2Y7o>#Ud8XWVv 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 z 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

7<{6;(H9Lg9a-Tk3v%ovp)zSFD|vYSK(!3-L`q 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%0AFcBDDsQjb|L;rlQm1E){&)Vn%l~%&`03Z# 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%0D+Yx!%pd|fsDdfdN+ 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 z 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

^{S*GO)*ZE)j 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 z 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

VsZ22GJ8B1Sr`UpEfR2=buH%_ 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

C8d#`bK>1#G?U8((V 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%0DX}R>uVSf8R+55j`?~ThZD-&Z_ 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 literal 0 HcmV?d00001 diff --git a/docs/docset/Info.plist b/docs/docset/Info.plist new file mode 100644 index 00000000..772ec08a --- /dev/null +++ b/docs/docset/Info.plist @@ -0,0 +1,20 @@ + + + + + CFBundleIdentifier + nlohmann_json + CFBundleName + JSON for Modern C++ + DocSetPlatformFamily + json + isDashDocset + + dashIndexFilePath + index.html + DashDocSetFallbackURL + https://nlohmann.github.io/json/ + isJavaScriptEnabled + + + diff --git a/docs/docset/Makefile b/docs/docset/Makefile new file mode 100644 index 00000000..eb1cfd38 --- /dev/null +++ b/docs/docset/Makefile @@ -0,0 +1,87 @@ +SHELL=/usr/bin/env bash +SED ?= $(shell which gsed 2>/dev/null || which sed) + +MKDOCS_PAGES=$(shell cd ../mkdocs/docs/ && find * -type f -name '*.md' | sort) + +.PHONY: all +all: JSON_for_Modern_C++.tgz + +docSet.dsidx: docSet.sql + # generate index + sqlite3 docSet.dsidx > "$$(ls JSON_for_Modern_C++.docset/Contents/Resources/Documents/assets/stylesheets/main.*.min.css)" + # fix spacing + echo -e "\n\ndiv.md-sidebar div.md-sidebar--secondary, div.md-main__inner { top: 0; margin-top: 0 }" >> "$$(ls JSON_for_Modern_C++.docset/Contents/Resources/Documents/assets/stylesheets/main.*.min.css)" + # remove "JSON for Modern C++" from page titles (fallback) + find JSON_for_Modern_C++.docset/Contents/Resources/Documents -type f -exec $(SED) -i 's| - JSON for Modern C++||' {} + + # replace page titles with name from index, if available + for page in $(MKDOCS_PAGES); do \ + case "$$page" in \ + */index.md) path=$${page/\/index.md/} ;; \ + *) path=$${page/.md/} ;; \ + esac; \ + title=$$(sqlite3 docSet.dsidx "SELECT name FROM searchIndex WHERE path='$$path/index.html'" | tr '\n' ',' | $(SED) -e 's/,/, /g' -e 's/, $$/\n/'); \ + if [ "x$$title" != "x" ]; then \ + $(SED) -i "s%.*%$$title%" "JSON_for_Modern_C++.docset/Contents/Resources/Documents/$$path/index.html"; \ + fi \ + done + # clean up + rm JSON_for_Modern_C++.docset/Contents/Resources/Documents/sitemap.* + # copy index + cp docSet.dsidx JSON_for_Modern_C++.docset/Contents/Resources/ + +JSON_for_Modern_C++.tgz: JSON_for_Modern_C++.docset + tar --exclude='.DS_Store' -cvzf JSON_for_Modern_C++.tgz JSON_for_Modern_C++.docset + +# install docset for Zeal documentation browser (https://zealdocs.org/) +.PHONY: install_docset_zeal +install_docset_zeal: JSON_for_Modern_C++.docset + docset_root=$${XDG_DATA_HOME:-$$HOME/.local/share}/Zeal/Zeal/docsets; \ + rm -rf $$docset_root/JSON_for_Modern_C++.docset; \ + mkdir -p $$docset_root; \ + cp -r JSON_for_Modern_C++.docset $$docset_root/ + +# list mkdocs pages missing from the docset index +.PHONY: list_missing_pages +list_missing_pages: docSet.dsidx + @for page in $(MKDOCS_PAGES); do \ + case "$$page" in \ + */index.md) path=$${page/\/index.md/} ;; \ + *) path=$${page/.md/} ;; \ + esac; \ + if [ "x$$page" != "xindex.md" -a "x$$(sqlite3 docSet.dsidx "SELECT COUNT(*) FROM searchIndex WHERE path='$$path/index.html'")" = "x0" ]; then \ + echo $$page; \ + fi \ + done + +# list paths in the docset index without a corresponding mkdocs page +.PHONY: list_removed_paths +list_removed_paths: docSet.dsidx + @for path in $$(sqlite3 docSet.dsidx "SELECT path FROM searchIndex"); do \ + page=$${path/\/index.html/.md}; \ + page_index=$${path/index.html/index.md}; \ + page_found=0; \ + for p in $(MKDOCS_PAGES); do \ + if [ "x$$p" = "x$$page" -o "x$$p" = "x$$page_index" ]; then \ + page_found=1; \ + fi \ + done; \ + if [ "x$$page_found" = "x0" ]; then \ + echo $$path; \ + fi \ + done + +.PHONY: clean +clean: + rm -f docSet.dsidx + rm -fr JSON_for_Modern_C++.docset JSON_for_Modern_C++.tgz diff --git a/docs/docset/README.md b/docs/docset/README.md new file mode 100644 index 00000000..79a778eb --- /dev/null +++ b/docs/docset/README.md @@ -0,0 +1,19 @@ +# docset + +The folder contains the required files to create a [docset](https://kapeli.com/docsets) which can be used in +documentation browsers like [Dash](https://kapeli.com/dash), [Velocity](https://velocity.silverlakesoftware.com), or +[Zeal](https://zealdocs.org). + +The docset can be created with + +```sh +make nlohmann_json.docset +``` + +The generated folder `nlohmann_json.docset` can then be opened in the documentation browser. + +A recent version is also part of the [Dash user contributions](https://github.com/Kapeli/Dash-User-Contributions/tree/master/docsets/JSON_for_Modern_C%2B%2B). + +## Licenses + +The [JSON logo](https://commons.wikimedia.org/wiki/File:JSON_vector_logo.svg) is public domain. diff --git a/docs/docset/docSet.sql b/docs/docset/docSet.sql new file mode 100644 index 00000000..ea6b4f28 --- /dev/null +++ b/docs/docset/docSet.sql @@ -0,0 +1,234 @@ +DROP TABLE IF EXISTS searchIndex; +CREATE TABLE searchIndex(id INTEGER PRIMARY KEY, name TEXT, type TEXT, path TEXT); +CREATE UNIQUE INDEX anchor ON searchIndex (name, type, path); + +-- API +INSERT INTO searchIndex(name, type, path) VALUES ('adl_serializer', 'Class', 'api/adl_serializer/index.html'); +INSERT INTO searchIndex(name, type, path) VALUES ('adl_serializer::from_json', 'Function', 'api/adl_serializer/from_json/index.html'); +INSERT INTO searchIndex(name, type, path) VALUES ('adl_serializer::to_json', 'Function', 'api/adl_serializer/to_json/index.html'); +INSERT INTO searchIndex(name, type, path) VALUES ('byte_container_with_subtype', 'Class', 'api/byte_container_with_subtype/index.html'); +INSERT INTO searchIndex(name, type, path) VALUES ('byte_container_with_subtype::byte_container_with_subtype', 'Constructor', 'api/byte_container_with_subtype/byte_container_with_subtype/index.html'); +INSERT INTO searchIndex(name, type, path) VALUES ('byte_container_with_subtype::clear_subtype', 'Method', 'api/byte_container_with_subtype/clear_subtype/index.html'); +INSERT INTO searchIndex(name, type, path) VALUES ('byte_container_with_subtype::has_subtype', 'Method', 'api/byte_container_with_subtype/has_subtype/index.html'); +INSERT INTO searchIndex(name, type, path) VALUES ('byte_container_with_subtype::set_subtype', 'Method', 'api/byte_container_with_subtype/set_subtype/index.html'); +INSERT INTO searchIndex(name, type, path) VALUES ('byte_container_with_subtype::subtype', 'Method', 'api/byte_container_with_subtype/subtype/index.html'); +INSERT INTO searchIndex(name, type, path) VALUES ('basic_json', 'Class', 'api/basic_json/index.html'); +INSERT INTO searchIndex(name, type, path) VALUES ('basic_json::accept', 'Function', 'api/basic_json/accept/index.html'); +INSERT INTO searchIndex(name, type, path) VALUES ('basic_json::array', 'Function', 'api/basic_json/array/index.html'); +INSERT INTO searchIndex(name, type, path) VALUES ('basic_json::array_t', 'Type', 'api/basic_json/array_t/index.html'); +INSERT INTO searchIndex(name, type, path) VALUES ('basic_json::at', 'Method', 'api/basic_json/at/index.html'); +INSERT INTO searchIndex(name, type, path) VALUES ('basic_json::back', 'Method', 'api/basic_json/back/index.html'); +INSERT INTO searchIndex(name, type, path) VALUES ('basic_json::basic_json', 'Constructor', 'api/basic_json/basic_json/index.html'); +INSERT INTO searchIndex(name, type, path) VALUES ('basic_json::begin', 'Method', 'api/basic_json/begin/index.html'); +INSERT INTO searchIndex(name, type, path) VALUES ('basic_json::binary', 'Function', 'api/basic_json/binary/index.html'); +INSERT INTO searchIndex(name, type, path) VALUES ('basic_json::binary_t', 'Type', 'api/basic_json/binary_t/index.html'); +INSERT INTO searchIndex(name, type, path) VALUES ('basic_json::boolean_t', 'Type', 'api/basic_json/boolean_t/index.html'); +INSERT INTO searchIndex(name, type, path) VALUES ('basic_json::cbegin', 'Method', 'api/basic_json/cbegin/index.html'); +INSERT INTO searchIndex(name, type, path) VALUES ('basic_json::cbor_tag_handler_t', 'Enum', 'api/basic_json/cbor_tag_handler_t/index.html'); +INSERT INTO searchIndex(name, type, path) VALUES ('basic_json::cend', 'Method', 'api/basic_json/cend/index.html'); +INSERT INTO searchIndex(name, type, path) VALUES ('basic_json::clear', 'Method', 'api/basic_json/clear/index.html'); +INSERT INTO searchIndex(name, type, path) VALUES ('basic_json::contains', 'Method', 'api/basic_json/contains/index.html'); +INSERT INTO searchIndex(name, type, path) VALUES ('basic_json::count', 'Method', 'api/basic_json/count/index.html'); +INSERT INTO searchIndex(name, type, path) VALUES ('basic_json::crbegin', 'Method', 'api/basic_json/crbegin/index.html'); +INSERT INTO searchIndex(name, type, path) VALUES ('basic_json::crend', 'Method', 'api/basic_json/crend/index.html'); +INSERT INTO searchIndex(name, type, path) VALUES ('basic_json::default_object_comparator_t', 'Type', 'api/basic_json/default_object_comparator_t/index.html'); +INSERT INTO searchIndex(name, type, path) VALUES ('basic_json::diff', 'Function', 'api/basic_json/diff/index.html'); +INSERT INTO searchIndex(name, type, path) VALUES ('basic_json::dump', 'Method', 'api/basic_json/dump/index.html'); +INSERT INTO searchIndex(name, type, path) VALUES ('basic_json::emplace', 'Method', 'api/basic_json/emplace/index.html'); +INSERT INTO searchIndex(name, type, path) VALUES ('basic_json::emplace_back', 'Method', 'api/basic_json/emplace_back/index.html'); +INSERT INTO searchIndex(name, type, path) VALUES ('basic_json::empty', 'Method', 'api/basic_json/empty/index.html'); +INSERT INTO searchIndex(name, type, path) VALUES ('basic_json::end', 'Method', 'api/basic_json/end/index.html'); +INSERT INTO searchIndex(name, type, path) VALUES ('basic_json::erase', 'Method', 'api/basic_json/erase/index.html'); +INSERT INTO searchIndex(name, type, path) VALUES ('basic_json::error_handler_t', 'Enum', 'api/basic_json/error_handler_t/index.html'); +INSERT INTO searchIndex(name, type, path) VALUES ('basic_json::exception', 'Class', 'api/basic_json/exception/index.html'); +INSERT INTO searchIndex(name, type, path) VALUES ('basic_json::find', 'Method', 'api/basic_json/find/index.html'); +INSERT INTO searchIndex(name, type, path) VALUES ('basic_json::flatten', 'Method', 'api/basic_json/flatten/index.html'); +INSERT INTO searchIndex(name, type, path) VALUES ('basic_json::from_bjdata', 'Function', 'api/basic_json/from_bjdata/index.html'); +INSERT INTO searchIndex(name, type, path) VALUES ('basic_json::from_bson', 'Function', 'api/basic_json/from_bson/index.html'); +INSERT INTO searchIndex(name, type, path) VALUES ('basic_json::from_cbor', 'Function', 'api/basic_json/from_cbor/index.html'); +INSERT INTO searchIndex(name, type, path) VALUES ('basic_json::from_msgpack', 'Function', 'api/basic_json/from_msgpack/index.html'); +INSERT INTO searchIndex(name, type, path) VALUES ('basic_json::from_ubjson', 'Function', 'api/basic_json/from_ubjson/index.html'); +INSERT INTO searchIndex(name, type, path) VALUES ('basic_json::front', 'Method', 'api/basic_json/front/index.html'); +INSERT INTO searchIndex(name, type, path) VALUES ('basic_json::get', 'Method', 'api/basic_json/get/index.html'); +INSERT INTO searchIndex(name, type, path) VALUES ('basic_json::get_allocator', 'Function', 'api/basic_json/get_allocator/index.html'); +INSERT INTO searchIndex(name, type, path) VALUES ('basic_json::get_binary', 'Method', 'api/basic_json/get_binary/index.html'); +INSERT INTO searchIndex(name, type, path) VALUES ('basic_json::get_ptr', 'Method', 'api/basic_json/get_ptr/index.html'); +INSERT INTO searchIndex(name, type, path) VALUES ('basic_json::get_ref', 'Method', 'api/basic_json/get_ref/index.html'); +INSERT INTO searchIndex(name, type, path) VALUES ('basic_json::get_to', 'Method', 'api/basic_json/get_to/index.html'); +INSERT INTO searchIndex(name, type, path) VALUES ('basic_json::input_format_t', 'Enum', 'api/basic_json/input_format_t/index.html'); +INSERT INTO searchIndex(name, type, path) VALUES ('basic_json::insert', 'Method', 'api/basic_json/insert/index.html'); +INSERT INTO searchIndex(name, type, path) VALUES ('basic_json::invalid_iterator', 'Class', 'api/basic_json/invalid_iterator/index.html'); +INSERT INTO searchIndex(name, type, path) VALUES ('basic_json::is_array', 'Method', 'api/basic_json/is_array/index.html'); +INSERT INTO searchIndex(name, type, path) VALUES ('basic_json::is_binary', 'Method', 'api/basic_json/is_binary/index.html'); +INSERT INTO searchIndex(name, type, path) VALUES ('basic_json::is_boolean', 'Method', 'api/basic_json/is_boolean/index.html'); +INSERT INTO searchIndex(name, type, path) VALUES ('basic_json::is_discarded', 'Method', 'api/basic_json/is_discarded/index.html'); +INSERT INTO searchIndex(name, type, path) VALUES ('basic_json::is_null', 'Method', 'api/basic_json/is_null/index.html'); +INSERT INTO searchIndex(name, type, path) VALUES ('basic_json::is_number', 'Method', 'api/basic_json/is_number/index.html'); +INSERT INTO searchIndex(name, type, path) VALUES ('basic_json::is_number_float', 'Method', 'api/basic_json/is_number_float/index.html'); +INSERT INTO searchIndex(name, type, path) VALUES ('basic_json::is_number_integer', 'Method', 'api/basic_json/is_number_integer/index.html'); +INSERT INTO searchIndex(name, type, path) VALUES ('basic_json::is_number_unsigned', 'Method', 'api/basic_json/is_number_unsigned/index.html'); +INSERT INTO searchIndex(name, type, path) VALUES ('basic_json::is_object', 'Method', 'api/basic_json/is_object/index.html'); +INSERT INTO searchIndex(name, type, path) VALUES ('basic_json::is_primitive', 'Method', 'api/basic_json/is_primitive/index.html'); +INSERT INTO searchIndex(name, type, path) VALUES ('basic_json::is_string', 'Method', 'api/basic_json/is_string/index.html'); +INSERT INTO searchIndex(name, type, path) VALUES ('basic_json::is_structured', 'Method', 'api/basic_json/is_structured/index.html'); +INSERT INTO searchIndex(name, type, path) VALUES ('basic_json::items', 'Method', 'api/basic_json/items/index.html'); +INSERT INTO searchIndex(name, type, path) VALUES ('basic_json::json_serializer', 'Class', 'api/basic_json/json_serializer/index.html'); +INSERT INTO searchIndex(name, type, path) VALUES ('basic_json::max_size', 'Method', 'api/basic_json/max_size/index.html'); +INSERT INTO searchIndex(name, type, path) VALUES ('basic_json::merge_patch', 'Method', 'api/basic_json/merge_patch/index.html'); +INSERT INTO searchIndex(name, type, path) VALUES ('basic_json::meta', 'Function', 'api/basic_json/meta/index.html'); +INSERT INTO searchIndex(name, type, path) VALUES ('basic_json::number_float_t', 'Type', 'api/basic_json/number_float_t/index.html'); +INSERT INTO searchIndex(name, type, path) VALUES ('basic_json::number_integer_t', 'Type', 'api/basic_json/number_integer_t/index.html'); +INSERT INTO searchIndex(name, type, path) VALUES ('basic_json::number_unsigned_t', 'Type', 'api/basic_json/number_unsigned_t/index.html'); +INSERT INTO searchIndex(name, type, path) VALUES ('basic_json::object', 'Function', 'api/basic_json/object/index.html'); +INSERT INTO searchIndex(name, type, path) VALUES ('basic_json::object_comparator_t', 'Type', 'api/basic_json/object_comparator_t/index.html'); +INSERT INTO searchIndex(name, type, path) VALUES ('basic_json::object_t', 'Type', 'api/basic_json/object_t/index.html'); +INSERT INTO searchIndex(name, type, path) VALUES ('basic_json::operator ValueType', 'Operator', 'api/basic_json/operator_ValueType/index.html'); +INSERT INTO searchIndex(name, type, path) VALUES ('basic_json::operator value_t', 'Operator', 'api/basic_json/operator_value_t/index.html'); +INSERT INTO searchIndex(name, type, path) VALUES ('basic_json::operator[]', 'Operator', 'api/basic_json/operator[]/index.html'); +INSERT INTO searchIndex(name, type, path) VALUES ('basic_json::operator=', 'Operator', 'api/basic_json/operator=/index.html'); +INSERT INTO searchIndex(name, type, path) VALUES ('basic_json::operator+=', 'Operator', 'api/basic_json/operator+=/index.html'); +INSERT INTO searchIndex(name, type, path) VALUES ('basic_json::operator==', 'Operator', 'api/basic_json/operator_eq/index.html'); +INSERT INTO searchIndex(name, type, path) VALUES ('basic_json::operator!=', 'Operator', 'api/basic_json/operator_ne/index.html'); +INSERT INTO searchIndex(name, type, path) VALUES ('basic_json::operator<', 'Operator', 'api/basic_json/operator_lt/index.html'); +INSERT INTO searchIndex(name, type, path) VALUES ('basic_json::operator<=', 'Operator', 'api/basic_json/operator_le/index.html'); +INSERT INTO searchIndex(name, type, path) VALUES ('basic_json::operator>', 'Operator', 'api/basic_json/operator_gt/index.html'); +INSERT INTO searchIndex(name, type, path) VALUES ('basic_json::operator>=', 'Operator', 'api/basic_json/operator_ge/index.html'); +INSERT INTO searchIndex(name, type, path) VALUES ('basic_json::operator<=>', 'Operator', 'api/basic_json/operator_spaceship/index.html'); +INSERT INTO searchIndex(name, type, path) VALUES ('basic_json::out_of_range', 'Class', 'api/basic_json/out_of_range/index.html'); +INSERT INTO searchIndex(name, type, path) VALUES ('basic_json::other_error', 'Class', 'api/basic_json/other_error/index.html'); +INSERT INTO searchIndex(name, type, path) VALUES ('basic_json::parse', 'Function', 'api/basic_json/parse/index.html'); +INSERT INTO searchIndex(name, type, path) VALUES ('basic_json::parse_error', 'Class', 'api/basic_json/parse_error/index.html'); +INSERT INTO searchIndex(name, type, path) VALUES ('basic_json::parse_event_t', 'Enum', 'api/basic_json/parse_event_t/index.html'); +INSERT INTO searchIndex(name, type, path) VALUES ('basic_json::parser_callback_t', 'Type', 'api/basic_json/parser_callback_t/index.html'); +INSERT INTO searchIndex(name, type, path) VALUES ('basic_json::patch', 'Method', 'api/basic_json/patch/index.html'); +INSERT INTO searchIndex(name, type, path) VALUES ('basic_json::patch_inplace', 'Method', 'api/basic_json/patch_inplace/index.html'); +INSERT INTO searchIndex(name, type, path) VALUES ('basic_json::push_back', 'Method', 'api/basic_json/push_back/index.html'); +INSERT INTO searchIndex(name, type, path) VALUES ('basic_json::rbegin', 'Method', 'api/basic_json/rbegin/index.html'); +INSERT INTO searchIndex(name, type, path) VALUES ('basic_json::rend', 'Method', 'api/basic_json/rend/index.html'); +INSERT INTO searchIndex(name, type, path) VALUES ('basic_json::sax_parse', 'Function', 'api/basic_json/sax_parse/index.html'); +INSERT INTO searchIndex(name, type, path) VALUES ('basic_json::size', 'Method', 'api/basic_json/size/index.html'); +INSERT INTO searchIndex(name, type, path) VALUES ('basic_json::string_t', 'Type', 'api/basic_json/string_t/index.html'); +INSERT INTO searchIndex(name, type, path) VALUES ('basic_json::swap', 'Method', 'api/basic_json/swap/index.html'); +INSERT INTO searchIndex(name, type, path) VALUES ('basic_json::type', 'Method', 'api/basic_json/type/index.html'); +INSERT INTO searchIndex(name, type, path) VALUES ('basic_json::type_error', 'Class', 'api/basic_json/type_error/index.html'); +INSERT INTO searchIndex(name, type, path) VALUES ('basic_json::type_name', 'Method', 'api/basic_json/type_name/index.html'); +INSERT INTO searchIndex(name, type, path) VALUES ('basic_json::unflatten', 'Method', 'api/basic_json/unflatten/index.html'); +INSERT INTO searchIndex(name, type, path) VALUES ('basic_json::update', 'Method', 'api/basic_json/update/index.html'); +INSERT INTO searchIndex(name, type, path) VALUES ('basic_json::to_bjdata', 'Function', 'api/basic_json/to_bjdata/index.html'); +INSERT INTO searchIndex(name, type, path) VALUES ('basic_json::to_bson', 'Function', 'api/basic_json/to_bson/index.html'); +INSERT INTO searchIndex(name, type, path) VALUES ('basic_json::to_cbor', 'Function', 'api/basic_json/to_cbor/index.html'); +INSERT INTO searchIndex(name, type, path) VALUES ('basic_json::to_msgpack', 'Function', 'api/basic_json/to_msgpack/index.html'); +INSERT INTO searchIndex(name, type, path) VALUES ('basic_json::to_string', 'Method', 'api/basic_json/to_string/index.html'); +INSERT INTO searchIndex(name, type, path) VALUES ('basic_json::to_ubjson', 'Function', 'api/basic_json/to_ubjson/index.html'); +INSERT INTO searchIndex(name, type, path) VALUES ('basic_json::value', 'Method', 'api/basic_json/value/index.html'); +INSERT INTO searchIndex(name, type, path) VALUES ('basic_json::value_t', 'Enum', 'api/basic_json/value_t/index.html'); +INSERT INTO searchIndex(name, type, path) VALUES ('basic_json::~basic_json', 'Method', 'api/basic_json/~basic_json/index.html'); +INSERT INTO searchIndex(name, type, path) VALUES ('json', 'Class', 'api/json/index.html'); +INSERT INTO searchIndex(name, type, path) VALUES ('json_pointer', 'Class', 'api/json_pointer/index.html'); +INSERT INTO searchIndex(name, type, path) VALUES ('json_pointer::back', 'Method', 'api/json_pointer/back/index.html'); +INSERT INTO searchIndex(name, type, path) VALUES ('json_pointer::empty', 'Method', 'api/json_pointer/empty/index.html'); +INSERT INTO searchIndex(name, type, path) VALUES ('json_pointer::json_pointer', 'Constructor', 'api/json_pointer/json_pointer/index.html'); +INSERT INTO searchIndex(name, type, path) VALUES ('json_pointer::operator==', 'Operator', 'api/json_pointer/operator_eq/index.html'); +INSERT INTO searchIndex(name, type, path) VALUES ('json_pointer::operator!=', 'Operator', 'api/json_pointer/operator_ne/index.html'); +INSERT INTO searchIndex(name, type, path) VALUES ('json_pointer::operator/', 'Operator', 'api/json_pointer/operator_slash/index.html'); +INSERT INTO searchIndex(name, type, path) VALUES ('json_pointer::operator/=', 'Operator', 'api/json_pointer/operator_slasheq/index.html'); +INSERT INTO searchIndex(name, type, path) VALUES ('json_pointer::operator string_t', 'Operator', 'api/json_pointer/operator_string_t/index.html'); +INSERT INTO searchIndex(name, type, path) VALUES ('json_pointer::parent_pointer', 'Method', 'api/json_pointer/parent_pointer/index.html'); +INSERT INTO searchIndex(name, type, path) VALUES ('json_pointer::pop_back', 'Method', 'api/json_pointer/pop_back/index.html'); +INSERT INTO searchIndex(name, type, path) VALUES ('json_pointer::push_back', 'Method', 'api/json_pointer/push_back/index.html'); +INSERT INTO searchIndex(name, type, path) VALUES ('json_pointer::string_t', 'Type', 'api/json_pointer/string_t/index.html'); +INSERT INTO searchIndex(name, type, path) VALUES ('json_pointer::to_string', 'Method', 'api/json_pointer/to_string/index.html'); +INSERT INTO searchIndex(name, type, path) VALUES ('json_sax', 'Class', 'api/json_sax/index.html'); +INSERT INTO searchIndex(name, type, path) VALUES ('json_sax::binary', 'Method', 'api/json_sax/binary/index.html'); +INSERT INTO searchIndex(name, type, path) VALUES ('json_sax::boolean', 'Method', 'api/json_sax/boolean/index.html'); +INSERT INTO searchIndex(name, type, path) VALUES ('json_sax::end_array', 'Method', 'api/json_sax/end_array/index.html'); +INSERT INTO searchIndex(name, type, path) VALUES ('json_sax::end_object', 'Method', 'api/json_sax/end_object/index.html'); +INSERT INTO searchIndex(name, type, path) VALUES ('json_sax::key', 'Method', 'api/json_sax/key/index.html'); +INSERT INTO searchIndex(name, type, path) VALUES ('json_sax::null', 'Method', 'api/json_sax/null/index.html'); +INSERT INTO searchIndex(name, type, path) VALUES ('json_sax::number_float', 'Method', 'api/json_sax/number_float/index.html'); +INSERT INTO searchIndex(name, type, path) VALUES ('json_sax::number_integer', 'Method', 'api/json_sax/number_integer/index.html'); +INSERT INTO searchIndex(name, type, path) VALUES ('json_sax::number_unsigned', 'Method', 'api/json_sax/number_unsigned/index.html'); +INSERT INTO searchIndex(name, type, path) VALUES ('json_sax::parse_error', 'Method', 'api/json_sax/parse_error/index.html'); +INSERT INTO searchIndex(name, type, path) VALUES ('json_sax::start_array', 'Method', 'api/json_sax/start_array/index.html'); +INSERT INTO searchIndex(name, type, path) VALUES ('json_sax::start_object', 'Method', 'api/json_sax/start_object/index.html'); +INSERT INTO searchIndex(name, type, path) VALUES ('json_sax::string', 'Method', 'api/json_sax/string/index.html'); +INSERT INTO searchIndex(name, type, path) VALUES ('operator""_json', 'Literal', 'api/operator_literal_json/index.html'); +INSERT INTO searchIndex(name, type, path) VALUES ('operator""_json_pointer', 'Literal', 'api/operator_literal_json_pointer/index.html'); +INSERT INTO searchIndex(name, type, path) VALUES ('operator<<', 'Operator', 'api/operator_ltlt/index.html'); +INSERT INTO searchIndex(name, type, path) VALUES ('operator>>', 'Operator', 'api/operator_gtgt/index.html'); +INSERT INTO searchIndex(name, type, path) VALUES ('ordered_json', 'Class', 'api/ordered_json/index.html'); +INSERT INTO searchIndex(name, type, path) VALUES ('ordered_map', 'Class', 'api/ordered_map/index.html'); +INSERT INTO searchIndex(name, type, path) VALUES ('std::hash', 'Class', 'api/basic_json/std_hash/index.html'); +INSERT INTO searchIndex(name, type, path) VALUES ('std::swap', 'Function', 'api/basic_json/std_swap/index.html'); + +-- Features +INSERT INTO searchIndex(name, type, path) VALUES ('Arbitrary Type Conversions', 'Guide', 'features/arbitrary_types/index.html'); +INSERT INTO searchIndex(name, type, path) VALUES ('Binary Formats', 'Guide', 'features/binary_formats/index.html'); +INSERT INTO searchIndex(name, type, path) VALUES ('Binary Formats: BJData', 'Guide', 'features/binary_formats/bjdata/index.html'); +INSERT INTO searchIndex(name, type, path) VALUES ('Binary Formats: BSON', 'Guide', 'features/binary_formats/bson/index.html'); +INSERT INTO searchIndex(name, type, path) VALUES ('Binary Formats: CBOR', 'Guide', 'features/binary_formats/cbor/index.html'); +INSERT INTO searchIndex(name, type, path) VALUES ('Binary Formats: MessagePack', 'Guide', 'features/binary_formats/messagepack/index.html'); +INSERT INTO searchIndex(name, type, path) VALUES ('Binary Formats: UBJSON', 'Guide', 'features/binary_formats/ubjson/index.html'); +INSERT INTO searchIndex(name, type, path) VALUES ('Binary Values', 'Guide', 'features/binary_values/index.html'); +INSERT INTO searchIndex(name, type, path) VALUES ('Comments', 'Guide', 'features/comments/index.html'); +INSERT INTO searchIndex(name, type, path) VALUES ('Element Access', 'Guide', 'features/element_access/index.html'); +INSERT INTO searchIndex(name, type, path) VALUES ('Element Access: Access with default value: value', 'Guide', 'features/element_access/default_value/index.html'); +INSERT INTO searchIndex(name, type, path) VALUES ('Element Access: Checked access: at', 'Guide', 'features/element_access/checked_access/index.html'); +INSERT INTO searchIndex(name, type, path) VALUES ('Element Access: Unchecked access: operator[]', 'Guide', 'features/element_access/unchecked_access/index.html'); +INSERT INTO searchIndex(name, type, path) VALUES ('Integration: Migration Guide', 'Guide', 'integration/migration_guide/index.html'); +INSERT INTO searchIndex(name, type, path) VALUES ('Integration: CMake', 'Guide', 'integration/cmake/index.html'); +INSERT INTO searchIndex(name, type, path) VALUES ('Integration: Header only', 'Guide', 'integration/index.html'); +INSERT INTO searchIndex(name, type, path) VALUES ('Integration: Package Managers', 'Guide', 'integration/package_managers/index.html'); +INSERT INTO searchIndex(name, type, path) VALUES ('Integration: Pkg-config', 'Guide', 'integration/pkg-config/index.html'); +INSERT INTO searchIndex(name, type, path) VALUES ('Iterators', 'Guide', 'features/iterators/index.html'); +INSERT INTO searchIndex(name, type, path) VALUES ('JSON Merge Patch', 'Guide', 'features/merge_patch/index.html'); +INSERT INTO searchIndex(name, type, path) VALUES ('JSON Patch and Diff', 'Guide', 'features/json_patch/index.html'); +INSERT INTO searchIndex(name, type, path) VALUES ('JSON Pointer', 'Guide', 'features/json_pointer/index.html'); +INSERT INTO searchIndex(name, type, path) VALUES ('nlohmann Namespace', 'Guide', 'features/namespace/index.html'); +INSERT INTO searchIndex(name, type, path) VALUES ('Types', 'Guide', 'features/types/index.html'); +INSERT INTO searchIndex(name, type, path) VALUES ('Types: Number Handling', 'Guide', 'features/types/number_handling/index.html'); +INSERT INTO searchIndex(name, type, path) VALUES ('Object Order', 'Guide', 'features/object_order/index.html'); +INSERT INTO searchIndex(name, type, path) VALUES ('Parsing', 'Guide', 'features/parsing/index.html'); +INSERT INTO searchIndex(name, type, path) VALUES ('Parsing: JSON Lines', 'Guide', 'features/parsing/json_lines/index.html'); +INSERT INTO searchIndex(name, type, path) VALUES ('Parsing: Parser Callbacks', 'Guide', 'features/parsing/parser_callbacks/index.html'); +INSERT INTO searchIndex(name, type, path) VALUES ('Parsing: Parsing and Exceptions', 'Guide', 'features/parsing/parse_exceptions/index.html'); +INSERT INTO searchIndex(name, type, path) VALUES ('Parsing: SAX Interface', 'Guide', 'features/parsing/sax_interface/index.html'); +INSERT INTO searchIndex(name, type, path) VALUES ('Runtime Assertions', 'Guide', 'features/assertions/index.html'); +INSERT INTO searchIndex(name, type, path) VALUES ('Specializing enum conversion', 'Guide', 'features/enum_conversion/index.html'); +INSERT INTO searchIndex(name, type, path) VALUES ('Supported Macros', 'Guide', 'features/macros/index.html'); + +-- Macros +INSERT INTO searchIndex(name, type, path) VALUES ('JSON_ASSERT', 'Macro', 'api/macros/json_assert/index.html'); +INSERT INTO searchIndex(name, type, path) VALUES ('JSON_CATCH_USER', 'Macro', 'api/macros/json_throw_user/index.html'); +INSERT INTO searchIndex(name, type, path) VALUES ('JSON_DIAGNOSTICS', 'Macro', 'api/macros/json_diagnostics/index.html'); +INSERT INTO searchIndex(name, type, path) VALUES ('JSON_DISABLE_ENUM_SERIALIZATION', 'Macro', 'api/macros/json_disable_enum_serialization/index.html'); +INSERT INTO searchIndex(name, type, path) VALUES ('JSON_HAS_CPP_11', 'Macro', 'api/macros/json_has_cpp_11/index.html'); +INSERT INTO searchIndex(name, type, path) VALUES ('JSON_HAS_CPP_14', 'Macro', 'api/macros/json_has_cpp_11/index.html'); +INSERT INTO searchIndex(name, type, path) VALUES ('JSON_HAS_CPP_17', 'Macro', 'api/macros/json_has_cpp_11/index.html'); +INSERT INTO searchIndex(name, type, path) VALUES ('JSON_HAS_CPP_20', 'Macro', 'api/macros/json_has_cpp_11/index.html'); +INSERT INTO searchIndex(name, type, path) VALUES ('JSON_HAS_EXPERIMENTAL_FILESYSTEM', 'Macro', 'api/macros/json_has_filesystem/index.html'); +INSERT INTO searchIndex(name, type, path) VALUES ('JSON_HAS_FILESYSTEM', 'Macro', 'api/macros/json_has_filesystem/index.html'); +INSERT INTO searchIndex(name, type, path) VALUES ('JSON_HAS_RANGES', 'Macro', 'api/macros/json_has_ranges/index.html'); +INSERT INTO searchIndex(name, type, path) VALUES ('JSON_HAS_THREE_WAY_COMPARISON', 'Macro', 'api/macros/json_has_three_way_comparison/index.html'); +INSERT INTO searchIndex(name, type, path) VALUES ('JSON_NOEXCEPTION', 'Macro', 'api/macros/json_noexception/index.html'); +INSERT INTO searchIndex(name, type, path) VALUES ('JSON_NO_IO', 'Macro', 'api/macros/json_no_io/index.html'); +INSERT INTO searchIndex(name, type, path) VALUES ('JSON_SKIP_LIBRARY_VERSION_CHECK', 'Macro', 'api/macros/json_skip_library_version_check/index.html'); +INSERT INTO searchIndex(name, type, path) VALUES ('JSON_SKIP_UNSUPPORTED_COMPILER_CHECK', 'Macro', 'api/macros/json_skip_unsupported_compiler_check/index.html'); +INSERT INTO searchIndex(name, type, path) VALUES ('JSON_THROW_USER', 'Macro', 'api/macros/json_throw_user/index.html'); +INSERT INTO searchIndex(name, type, path) VALUES ('JSON_TRY_USER', 'Macro', 'api/macros/json_throw_user/index.html'); +INSERT INTO searchIndex(name, type, path) VALUES ('JSON_USE_GLOBAL_UDLS', 'Macro', 'api/macros/json_use_global_udls/index.html'); +INSERT INTO searchIndex(name, type, path) VALUES ('JSON_USE_IMPLICIT_CONVERSIONS', 'Macro', 'api/macros/json_use_implicit_conversions/index.html'); +INSERT INTO searchIndex(name, type, path) VALUES ('JSON_USE_LEGACY_DISCARDED_VALUE_COMPARISON', 'Macro', 'api/macros/json_use_legacy_discarded_value_comparison/index.html'); +INSERT INTO searchIndex(name, type, path) VALUES ('Macros', 'Macro', 'api/macros/index.html'); +INSERT INTO searchIndex(name, type, path) VALUES ('NLOHMANN_DEFINE_TYPE_INTRUSIVE', 'Macro', 'api/macros/nlohmann_define_type_intrusive/index.html'); +INSERT INTO searchIndex(name, type, path) VALUES ('NLOHMANN_DEFINE_TYPE_INTRUSIVE_WITH_DEFAULT', 'Macro', 'api/macros/nlohmann_define_type_intrusive/index.html'); +INSERT INTO searchIndex(name, type, path) VALUES ('NLOHMANN_DEFINE_TYPE_NON_INTRUSIVE', 'Macro', 'api/macros/nlohmann_define_type_non_intrusive/index.html'); +INSERT INTO searchIndex(name, type, path) VALUES ('NLOHMANN_DEFINE_TYPE_NON_INTRUSIVE_WITH_DEFAULT', 'Macro', 'api/macros/nlohmann_define_type_non_intrusive/index.html'); +INSERT INTO searchIndex(name, type, path) VALUES ('NLOHMANN_JSON_NAMESPACE', 'Macro', 'api/macros/nlohmann_json_namespace/index.html'); +INSERT INTO searchIndex(name, type, path) VALUES ('NLOHMANN_JSON_NAMESPACE_BEGIN', 'Macro', 'api/macros/nlohmann_json_namespace_begin/index.html'); +INSERT INTO searchIndex(name, type, path) VALUES ('NLOHMANN_JSON_NAMESPACE_END', 'Macro', 'api/macros/nlohmann_json_namespace_begin/index.html'); +INSERT INTO searchIndex(name, type, path) VALUES ('NLOHMANN_JSON_NAMESPACE_NO_VERSION', 'Macro', 'api/macros/nlohmann_json_namespace_no_version/index.html'); +INSERT INTO searchIndex(name, type, path) VALUES ('NLOHMANN_JSON_SERIALIZE_ENUM', 'Macro', 'api/macros/nlohmann_json_serialize_enum/index.html'); +INSERT INTO searchIndex(name, type, path) VALUES ('NLOHMANN_JSON_VERSION_MAJOR', 'Macro', 'api/macros/nlohmann_json_version_major/index.html'); +INSERT INTO searchIndex(name, type, path) VALUES ('NLOHMANN_JSON_VERSION_MINOR', 'Macro', 'api/macros/nlohmann_json_version_major/index.html'); +INSERT INTO searchIndex(name, type, path) VALUES ('NLOHMANN_JSON_VERSION_PATCH', 'Macro', 'api/macros/nlohmann_json_version_major/index.html'); diff --git a/docs/docset/docset.json b/docs/docset/docset.json new file mode 100644 index 00000000..bc08d283 --- /dev/null +++ b/docs/docset/docset.json @@ -0,0 +1,10 @@ +{ + "name": "JSON for Modern C++", + "version": "3.11.3", + "archive": "JSON_for_Modern_C++.tgz", + "author": { + "name": "Niels Lohmann", + "link": "https://twitter.com/nlohmann" + }, + "aliases": ["nlohmann/json"] +} diff --git a/docs/docset/icon.png b/docs/docset/icon.png new file mode 100644 index 0000000000000000000000000000000000000000..7197d0a7549bc0768c3aec04c499527af0964ab8 GIT binary patch literal 700 zcmeAS@N?(olHy`uVBq!ia0y~yU=RRd4i*LmhONKMUokK+u%tWsIx;Y9?C1WI$jZRL zppfhlGxb*Jsu<5P0bNKdr#C&;8}ey~a~lPIuqFkGDOegB<%`OU=~E&TlN8?Vjh%nz6yK9Y zMIxqB`_5V(WId`eU2@^y!~5b6rhf_j;=Rbj@Wtjn8@Zw;&Zrx6|2CVse|VMUE_BIt zasN&u;Q%Gq$xGInbRTkD%BWe&XF){jakM`7%RPmCR!&`|_}L zA2Zt}{ns>*eWOduhNoUT<|^yStoUYd^L5ROyYKfD@bdiNFT1<#`rP?ZXBik6R7+eV zN>UO_QmvAUQWHy38H@~!40R1Gbd8Kd3{9+zOsxz}v<(cb3=B-ZKg&YVkei>9nO2Eg VgX^leYYYqw44$rjF6*2UngBMg9zOs8 literal 0 HcmV?d00001 diff --git a/docs/docset/icon@2x.png b/docs/docset/icon@2x.png new file mode 100644 index 0000000000000000000000000000000000000000..5f2fac87aabddaa6fcbf29ce239ff9e992e624c0 GIT binary patch literal 1362 zcmeAS@N?(olHy`uVBq!ia0y~yU{C;I4i*LmhMUEk>KPaqSkfJR9T^xl_H+M9WCckk zdj$D1FjT2AFf_CD1_s&`_CU_0?~;UYluL%y;gn zOnz^(YH+XFva~Sad%YhHiZm@cU%LqChb_}y7XsnwtidMUi;0mde0o@?z3_K-$&oyzVH97(~4h%TQok2%zm1+)lE07 zxJ1wStVi(q;(9%+iS~c<`wz2pt<~%at}N(Wacs+}@~3L1@!73z3om9YyBL(SdzyXB zpTr-#m@D4sJiNm)@2L7J-tt}ZPxn^sDidDewzxs@XMFNmt*wTW4nFl<-zNTYjevzq zi;I8f->mjkSD#MRPG;*puVGr6v^VqXZuj?+anF2w9t89&#yqQA9;Wp?@k0v>Po#Rr z#&HrYn~nWYOY>3 zb?F(GN4$6bZPQ+S|8i-jtU*KjLB3nQb4qKMXRVK!?c=pO2|}?bg5Jr`Y$&DXgxx`5Wgj@ZXlsDfZiQmgVN^U%To;!_`0VEbd7% zym5RHpW^jZ%UI?mGUrxE_&lk9SoZ73lM_MpCY$YLmmf;lFym(0+K69w~g0AVLgbgkU8$E0#vnQkohxL4rmhpMzEG+0d zU6nieOVY-TSDP->u3F+4GAB_it7N9af(I{JJv+AV2yc?kS$|>roz>{3YMMnat9&dgRx;_1;H+F1?q1N1P0o9z16rKQq;` zuCeUr(s|LWf6ghkd7JUF{eSTz^!v{XvR7t@nr#c@yp-^4##gsB5i@T;x69ml*3i#z zTGQ=)3ETI)&N(W)^ZXUP)@4;*LWL`r&1y*erKxgJb?>K@ej>6p;>g~5z z@A^`7H^Q~iNp+cf&$smnyI*j1a1=hYdFydSwl?bgX}uMNZKv|&8STaP>F;X(a<#0D zcg@1|1+P{}ozh>iS~f}L<%!=9ZU5~nSpV5yIXU?KF+Z`1M>S_{-uZZ|@@DB7W=h9D zUQ)SskB5(C_h0aj_ z7B@tm)xWOxd4B3j>0bs02GtVRh?11Vl2ohYqSVBaR0bmhBST#S3tc1Q5JM9yBU39w q6Kw+nD+2?Q@6WPOH00)|WTsW(*5JA-?ivFF1B0ilpUXO@geCynE_fvX literal 0 HcmV?d00001 diff --git a/docs/examples/README.cpp b/docs/examples/README.cpp new file mode 100644 index 00000000..2d641e58 --- /dev/null +++ b/docs/examples/README.cpp @@ -0,0 +1,39 @@ +#include +#include +#include + +using json = nlohmann::json; + +int main() +{ + // create a JSON object + json j = + { + {"pi", 3.141}, + {"happy", true}, + {"name", "Niels"}, + {"nothing", nullptr}, + { + "answer", { + {"everything", 42} + } + }, + {"list", {1, 0, 2}}, + { + "object", { + {"currency", "USD"}, + {"value", 42.99} + } + } + }; + + // add new values + j["new"]["key"]["value"] = {"another", "list"}; + + // count elements + auto s = j.size(); + j["size"] = s; + + // pretty print with indent of 4 spaces + std::cout << std::setw(4) << j << '\n'; +} diff --git a/docs/examples/README.output b/docs/examples/README.output new file mode 100644 index 00000000..31188d45 --- /dev/null +++ b/docs/examples/README.output @@ -0,0 +1,27 @@ +{ + "answer": { + "everything": 42 + }, + "happy": true, + "list": [ + 1, + 0, + 2 + ], + "name": "Niels", + "new": { + "key": { + "value": [ + "another", + "list" + ] + } + }, + "nothing": null, + "object": { + "currency": "USD", + "value": 42.99 + }, + "pi": 3.141, + "size": 8 +} diff --git a/docs/examples/accept__string.cpp b/docs/examples/accept__string.cpp new file mode 100644 index 00000000..8eb3d9b7 --- /dev/null +++ b/docs/examples/accept__string.cpp @@ -0,0 +1,26 @@ +#include +#include +#include + +using json = nlohmann::json; + +int main() +{ + // a valid JSON text + auto valid_text = R"( + { + "numbers": [1, 2, 3] + } + )"; + + // an invalid JSON text + auto invalid_text = R"( + { + "strings": ["extra", "comma", ] + } + )"; + + std::cout << std::boolalpha + << json::accept(valid_text) << ' ' + << json::accept(invalid_text) << '\n'; +} diff --git a/docs/examples/accept__string.output b/docs/examples/accept__string.output new file mode 100644 index 00000000..836a5934 --- /dev/null +++ b/docs/examples/accept__string.output @@ -0,0 +1 @@ +true false diff --git a/docs/examples/array.cpp b/docs/examples/array.cpp new file mode 100644 index 00000000..139b5ef1 --- /dev/null +++ b/docs/examples/array.cpp @@ -0,0 +1,19 @@ +#include +#include + +using json = nlohmann::json; + +int main() +{ + // create JSON arrays + json j_no_init_list = json::array(); + json j_empty_init_list = json::array({}); + json j_nonempty_init_list = json::array({1, 2, 3, 4}); + json j_list_of_pairs = json::array({ {"one", 1}, {"two", 2} }); + + // serialize the JSON arrays + std::cout << j_no_init_list << '\n'; + std::cout << j_empty_init_list << '\n'; + std::cout << j_nonempty_init_list << '\n'; + std::cout << j_list_of_pairs << '\n'; +} diff --git a/docs/examples/array.output b/docs/examples/array.output new file mode 100644 index 00000000..4e75a1b6 --- /dev/null +++ b/docs/examples/array.output @@ -0,0 +1,4 @@ +[] +[] +[1,2,3,4] +[["one",1],["two",2]] diff --git a/docs/examples/array_t.cpp b/docs/examples/array_t.cpp new file mode 100644 index 00000000..0964857b --- /dev/null +++ b/docs/examples/array_t.cpp @@ -0,0 +1,10 @@ +#include +#include +#include + +using json = nlohmann::json; + +int main() +{ + std::cout << std::boolalpha << std::is_same, json::array_t>::value << std::endl; +} diff --git a/docs/examples/array_t.output b/docs/examples/array_t.output new file mode 100644 index 00000000..27ba77dd --- /dev/null +++ b/docs/examples/array_t.output @@ -0,0 +1 @@ +true diff --git a/docs/examples/at__json_pointer.cpp b/docs/examples/at__json_pointer.cpp new file mode 100644 index 00000000..15e91433 --- /dev/null +++ b/docs/examples/at__json_pointer.cpp @@ -0,0 +1,103 @@ +#include +#include + +using json = nlohmann::json; +using namespace nlohmann::literals; + +int main() +{ + // create a JSON value + json j = + { + {"number", 1}, {"string", "foo"}, {"array", {1, 2}} + }; + + // read-only access + + // output element with JSON pointer "/number" + std::cout << j.at("/number"_json_pointer) << '\n'; + // output element with JSON pointer "/string" + std::cout << j.at("/string"_json_pointer) << '\n'; + // output element with JSON pointer "/array" + std::cout << j.at("/array"_json_pointer) << '\n'; + // output element with JSON pointer "/array/1" + std::cout << j.at("/array/1"_json_pointer) << '\n'; + + // writing access + + // change the string + j.at("/string"_json_pointer) = "bar"; + // output the changed string + std::cout << j["string"] << '\n'; + + // change an array element + j.at("/array/1"_json_pointer) = 21; + // output the changed array + std::cout << j["array"] << '\n'; + + // out_of_range.106 + try + { + // try to use an array index with leading '0' + json::reference ref = j.at("/array/01"_json_pointer); + } + catch (const json::parse_error& e) + { + std::cout << e.what() << '\n'; + } + + // out_of_range.109 + try + { + // try to use an array index that is not a number + json::reference ref = j.at("/array/one"_json_pointer); + } + catch (const json::parse_error& e) + { + std::cout << e.what() << '\n'; + } + + // out_of_range.401 + try + { + // try to use an invalid array index + json::reference ref = j.at("/array/4"_json_pointer); + } + catch (const json::out_of_range& e) + { + std::cout << e.what() << '\n'; + } + + // out_of_range.402 + try + { + // try to use the array index '-' + json::reference ref = j.at("/array/-"_json_pointer); + } + catch (const json::out_of_range& e) + { + std::cout << e.what() << '\n'; + } + + // out_of_range.403 + try + { + // try to use a JSON pointer to a nonexistent object key + json::const_reference ref = j.at("/foo"_json_pointer); + } + catch (const json::out_of_range& e) + { + std::cout << e.what() << '\n'; + } + + // out_of_range.404 + try + { + // try to use a JSON pointer that cannot be resolved + json::reference ref = j.at("/number/foo"_json_pointer); + } + catch (const json::out_of_range& e) + { + std::cout << e.what() << '\n'; + } +} diff --git a/docs/examples/at__json_pointer.output b/docs/examples/at__json_pointer.output new file mode 100644 index 00000000..1d29893e --- /dev/null +++ b/docs/examples/at__json_pointer.output @@ -0,0 +1,12 @@ +1 +"foo" +[1,2] +2 +"bar" +[1,21] +[json.exception.parse_error.106] parse error: array index '01' must not begin with '0' +[json.exception.parse_error.109] parse error: array index 'one' is not a number +[json.exception.out_of_range.401] array index 4 is out of range +[json.exception.out_of_range.402] array index '-' (2) is out of range +[json.exception.out_of_range.403] key 'foo' not found +[json.exception.out_of_range.404] unresolved reference token 'foo' diff --git a/docs/examples/at__json_pointer_const.cpp b/docs/examples/at__json_pointer_const.cpp new file mode 100644 index 00000000..ab026e07 --- /dev/null +++ b/docs/examples/at__json_pointer_const.cpp @@ -0,0 +1,80 @@ +#include +#include + +using json = nlohmann::json; +using namespace nlohmann::literals; + +int main() +{ + // create a JSON value + const json j = + { + {"number", 1}, {"string", "foo"}, {"array", {1, 2}} + }; + + // read-only access + + // output element with JSON pointer "/number" + std::cout << j.at("/number"_json_pointer) << '\n'; + // output element with JSON pointer "/string" + std::cout << j.at("/string"_json_pointer) << '\n'; + // output element with JSON pointer "/array" + std::cout << j.at("/array"_json_pointer) << '\n'; + // output element with JSON pointer "/array/1" + std::cout << j.at("/array/1"_json_pointer) << '\n'; + + // out_of_range.109 + try + { + // try to use an array index that is not a number + json::const_reference ref = j.at("/array/one"_json_pointer); + } + catch (const json::parse_error& e) + { + std::cout << e.what() << '\n'; + } + + // out_of_range.401 + try + { + // try to use an invalid array index + json::const_reference ref = j.at("/array/4"_json_pointer); + } + catch (const json::out_of_range& e) + { + std::cout << e.what() << '\n'; + } + + // out_of_range.402 + try + { + // try to use the array index '-' + json::const_reference ref = j.at("/array/-"_json_pointer); + } + catch (const json::out_of_range& e) + { + std::cout << e.what() << '\n'; + } + + // out_of_range.403 + try + { + // try to use a JSON pointer to a nonexistent object key + json::const_reference ref = j.at("/foo"_json_pointer); + } + catch (const json::out_of_range& e) + { + std::cout << e.what() << '\n'; + } + + // out_of_range.404 + try + { + // try to use a JSON pointer that cannot be resolved + json::const_reference ref = j.at("/number/foo"_json_pointer); + } + catch (const json::out_of_range& e) + { + std::cout << e.what() << '\n'; + } +} diff --git a/docs/examples/at__json_pointer_const.output b/docs/examples/at__json_pointer_const.output new file mode 100644 index 00000000..aaf8f187 --- /dev/null +++ b/docs/examples/at__json_pointer_const.output @@ -0,0 +1,9 @@ +1 +"foo" +[1,2] +2 +[json.exception.parse_error.109] parse error: array index 'one' is not a number +[json.exception.out_of_range.401] array index 4 is out of range +[json.exception.out_of_range.402] array index '-' (2) is out of range +[json.exception.out_of_range.403] key 'foo' not found +[json.exception.out_of_range.404] unresolved reference token 'foo' diff --git a/docs/examples/at__keytype.c++17.cpp b/docs/examples/at__keytype.c++17.cpp new file mode 100644 index 00000000..032506ac --- /dev/null +++ b/docs/examples/at__keytype.c++17.cpp @@ -0,0 +1,49 @@ +#include +#include +#include + +using namespace std::string_view_literals; +using json = nlohmann::json; + +int main() +{ + // create JSON object + json object = + { + {"the good", "il buono"}, + {"the bad", "il cattivo"}, + {"the ugly", "il brutto"} + }; + + // output element with key "the ugly" using string_view + std::cout << object.at("the ugly"sv) << '\n'; + + // change element with key "the bad" using string_view + object.at("the bad"sv) = "il cattivo"; + + // output changed array + std::cout << object << '\n'; + + // exception type_error.304 + try + { + // use at() with string_view on a non-object type + json str = "I am a string"; + str.at("the good"sv) = "Another string"; + } + catch (const json::type_error& e) + { + std::cout << e.what() << '\n'; + } + + // exception out_of_range.401 + try + { + // try to write at a nonexisting key using string_view + object.at("the fast"sv) = "il rapido"; + } + catch (const json::out_of_range& e) + { + std::cout << e.what() << '\n'; + } +} diff --git a/docs/examples/at__keytype.c++17.output b/docs/examples/at__keytype.c++17.output new file mode 100644 index 00000000..b544b729 --- /dev/null +++ b/docs/examples/at__keytype.c++17.output @@ -0,0 +1,4 @@ +"il brutto" +{"the bad":"il cattivo","the good":"il buono","the ugly":"il brutto"} +[json.exception.type_error.304] cannot use at() with string +[json.exception.out_of_range.403] key 'the fast' not found diff --git a/docs/examples/at__keytype_const.c++17.cpp b/docs/examples/at__keytype_const.c++17.cpp new file mode 100644 index 00000000..b08cd17b --- /dev/null +++ b/docs/examples/at__keytype_const.c++17.cpp @@ -0,0 +1,43 @@ +#include +#include +#include + +using namespace std::string_view_literals; +using json = nlohmann::json; + +int main() +{ + // create JSON object + const json object = + { + {"the good", "il buono"}, + {"the bad", "il cattivo"}, + {"the ugly", "il brutto"} + }; + + // output element with key "the ugly" using string_view + std::cout << object.at("the ugly"sv) << '\n'; + + // exception type_error.304 + try + { + // use at() with string_view on a non-object type + const json str = "I am a string"; + std::cout << str.at("the good"sv) << '\n'; + } + catch (const json::type_error& e) + { + std::cout << e.what() << '\n'; + } + + // exception out_of_range.401 + try + { + // try to read from a nonexisting key using string_view + std::cout << object.at("the fast"sv) << '\n'; + } + catch (const json::out_of_range) + { + std::cout << "out of range" << '\n'; + } +} diff --git a/docs/examples/at__keytype_const.c++17.output b/docs/examples/at__keytype_const.c++17.output new file mode 100644 index 00000000..40ca3f09 --- /dev/null +++ b/docs/examples/at__keytype_const.c++17.output @@ -0,0 +1,3 @@ +"il brutto" +[json.exception.type_error.304] cannot use at() with string +out of range diff --git a/docs/examples/at__object_t_key_type.cpp b/docs/examples/at__object_t_key_type.cpp new file mode 100644 index 00000000..e1f33cec --- /dev/null +++ b/docs/examples/at__object_t_key_type.cpp @@ -0,0 +1,47 @@ +#include +#include + +using json = nlohmann::json; + +int main() +{ + // create JSON object + json object = + { + {"the good", "il buono"}, + {"the bad", "il cattivo"}, + {"the ugly", "il brutto"} + }; + + // output element with key "the ugly" + std::cout << object.at("the ugly") << '\n'; + + // change element with key "the bad" + object.at("the bad") = "il cattivo"; + + // output changed array + std::cout << object << '\n'; + + // exception type_error.304 + try + { + // use at() on a non-object type + json str = "I am a string"; + str.at("the good") = "Another string"; + } + catch (const json::type_error& e) + { + std::cout << e.what() << '\n'; + } + + // exception out_of_range.401 + try + { + // try to write at a nonexisting key + object.at("the fast") = "il rapido"; + } + catch (const json::out_of_range& e) + { + std::cout << e.what() << '\n'; + } +} diff --git a/docs/examples/at__object_t_key_type.output b/docs/examples/at__object_t_key_type.output new file mode 100644 index 00000000..b544b729 --- /dev/null +++ b/docs/examples/at__object_t_key_type.output @@ -0,0 +1,4 @@ +"il brutto" +{"the bad":"il cattivo","the good":"il buono","the ugly":"il brutto"} +[json.exception.type_error.304] cannot use at() with string +[json.exception.out_of_range.403] key 'the fast' not found diff --git a/docs/examples/at__object_t_key_type_const.cpp b/docs/examples/at__object_t_key_type_const.cpp new file mode 100644 index 00000000..b37bbd48 --- /dev/null +++ b/docs/examples/at__object_t_key_type_const.cpp @@ -0,0 +1,41 @@ +#include +#include + +using json = nlohmann::json; + +int main() +{ + // create JSON object + const json object = + { + {"the good", "il buono"}, + {"the bad", "il cattivo"}, + {"the ugly", "il brutto"} + }; + + // output element with key "the ugly" + std::cout << object.at("the ugly") << '\n'; + + // exception type_error.304 + try + { + // use at() on a non-object type + const json str = "I am a string"; + std::cout << str.at("the good") << '\n'; + } + catch (const json::type_error& e) + { + std::cout << e.what() << '\n'; + } + + // exception out_of_range.401 + try + { + // try to read from a nonexisting key + std::cout << object.at("the fast") << '\n'; + } + catch (const json::out_of_range) + { + std::cout << "out of range" << '\n'; + } +} diff --git a/docs/examples/at__object_t_key_type_const.output b/docs/examples/at__object_t_key_type_const.output new file mode 100644 index 00000000..40ca3f09 --- /dev/null +++ b/docs/examples/at__object_t_key_type_const.output @@ -0,0 +1,3 @@ +"il brutto" +[json.exception.type_error.304] cannot use at() with string +out of range diff --git a/docs/examples/at__size_type.cpp b/docs/examples/at__size_type.cpp new file mode 100644 index 00000000..6527c6b1 --- /dev/null +++ b/docs/examples/at__size_type.cpp @@ -0,0 +1,42 @@ +#include +#include + +using json = nlohmann::json; + +int main() +{ + // create JSON array + json array = {"first", "2nd", "third", "fourth"}; + + // output element at index 2 (third element) + std::cout << array.at(2) << '\n'; + + // change element at index 1 (second element) to "second" + array.at(1) = "second"; + + // output changed array + std::cout << array << '\n'; + + // exception type_error.304 + try + { + // use at() on a non-array type + json str = "I am a string"; + str.at(0) = "Another string"; + } + catch (const json::type_error& e) + { + std::cout << e.what() << '\n'; + } + + // exception out_of_range.401 + try + { + // try to write beyond the array limit + array.at(5) = "sixth"; + } + catch (const json::out_of_range& e) + { + std::cout << e.what() << '\n'; + } +} diff --git a/docs/examples/at__size_type.output b/docs/examples/at__size_type.output new file mode 100644 index 00000000..54026436 --- /dev/null +++ b/docs/examples/at__size_type.output @@ -0,0 +1,4 @@ +"third" +["first","second","third","fourth"] +[json.exception.type_error.304] cannot use at() with string +[json.exception.out_of_range.401] array index 5 is out of range diff --git a/docs/examples/at__size_type_const.cpp b/docs/examples/at__size_type_const.cpp new file mode 100644 index 00000000..2080387a --- /dev/null +++ b/docs/examples/at__size_type_const.cpp @@ -0,0 +1,36 @@ +#include +#include + +using json = nlohmann::json; + +int main() +{ + // create JSON array + const json array = {"first", "2nd", "third", "fourth"}; + + // output element at index 2 (third element) + std::cout << array.at(2) << '\n'; + + // exception type_error.304 + try + { + // use at() on a non-array type + const json str = "I am a string"; + std::cout << str.at(0) << '\n'; + } + catch (const json::type_error& e) + { + std::cout << e.what() << '\n'; + } + + // exception out_of_range.401 + try + { + // try to read beyond the array limit + std::cout << array.at(5) << '\n'; + } + catch (const json::out_of_range& e) + { + std::cout << e.what() << '\n'; + } +} diff --git a/docs/examples/at__size_type_const.output b/docs/examples/at__size_type_const.output new file mode 100644 index 00000000..8135a27a --- /dev/null +++ b/docs/examples/at__size_type_const.output @@ -0,0 +1,3 @@ +"third" +[json.exception.type_error.304] cannot use at() with string +[json.exception.out_of_range.401] array index 5 is out of range diff --git a/docs/examples/back.cpp b/docs/examples/back.cpp new file mode 100644 index 00000000..45342db1 --- /dev/null +++ b/docs/examples/back.cpp @@ -0,0 +1,38 @@ +#include +#include + +using json = nlohmann::json; + +int main() +{ + // create JSON values + json j_boolean = true; + json j_number_integer = 17; + json j_number_float = 23.42; + json j_object = {{"one", 1}, {"two", 2}}; + json j_object_empty(json::value_t::object); + json j_array = {1, 2, 4, 8, 16}; + json j_array_empty(json::value_t::array); + json j_string = "Hello, world"; + + // call back() + std::cout << j_boolean.back() << '\n'; + std::cout << j_number_integer.back() << '\n'; + std::cout << j_number_float.back() << '\n'; + std::cout << j_object.back() << '\n'; + //std::cout << j_object_empty.back() << '\n'; // undefined behavior + std::cout << j_array.back() << '\n'; + //std::cout << j_array_empty.back() << '\n'; // undefined behavior + std::cout << j_string.back() << '\n'; + + // back() called on a null value + try + { + json j_null; + j_null.back(); + } + catch (const json::invalid_iterator& e) + { + std::cout << e.what() << '\n'; + } +} diff --git a/docs/examples/back.output b/docs/examples/back.output new file mode 100644 index 00000000..2990dbf0 --- /dev/null +++ b/docs/examples/back.output @@ -0,0 +1,7 @@ +true +17 +23.42 +2 +16 +"Hello, world" +[json.exception.invalid_iterator.214] cannot get value diff --git a/docs/examples/basic_json__CompatibleType.cpp b/docs/examples/basic_json__CompatibleType.cpp new file mode 100644 index 00000000..f0d0cc1e --- /dev/null +++ b/docs/examples/basic_json__CompatibleType.cpp @@ -0,0 +1,214 @@ +#include +#include +#include +#include +#include +#include +#include +#include +#include + +using json = nlohmann::json; + +int main() +{ + // ============ + // object types + // ============ + + // create an object from an object_t value + json::object_t object_value = { {"one", 1}, {"two", 2} }; + json j_object_t(object_value); + + // create an object from std::map + std::map c_map + { + {"one", 1}, {"two", 2}, {"three", 3} + }; + json j_map(c_map); + + // create an object from std::unordered_map + std::unordered_map c_umap + { + {"one", 1.2}, {"two", 2.3}, {"three", 3.4} + }; + json j_umap(c_umap); + + // create an object from std::multimap + std::multimap c_mmap + { + {"one", true}, {"two", true}, {"three", false}, {"three", true} + }; + json j_mmap(c_mmap); // only one entry for key "three" is used + + // create an object from std::unordered_multimap + std::unordered_multimap c_ummap + { + {"one", true}, {"two", true}, {"three", false}, {"three", true} + }; + json j_ummap(c_ummap); // only one entry for key "three" is used + + // serialize the JSON objects + std::cout << j_object_t << '\n'; + std::cout << j_map << '\n'; + std::cout << j_umap << '\n'; + std::cout << j_mmap << '\n'; + std::cout << j_ummap << "\n\n"; + + // =========== + // array types + // =========== + + // create an array from an array_t value + json::array_t array_value = {"one", "two", 3, 4.5, false}; + json j_array_t(array_value); + + // create an array from std::vector + std::vector c_vector {1, 2, 3, 4}; + json j_vec(c_vector); + + // create an array from std::valarray + std::valarray c_valarray {10, 9, 8, 7}; + json j_valarray(c_valarray); + + // create an array from std::deque + std::deque c_deque {1.2, 2.3, 3.4, 5.6}; + json j_deque(c_deque); + + // create an array from std::list + std::list c_list {true, true, false, true}; + json j_list(c_list); + + // create an array from std::forward_list + std::forward_list c_flist {12345678909876, 23456789098765, 34567890987654, 45678909876543}; + json j_flist(c_flist); + + // create an array from std::array + std::array c_array {{1, 2, 3, 4}}; + json j_array(c_array); + + // create an array from std::set + std::set c_set {"one", "two", "three", "four", "one"}; + json j_set(c_set); // only one entry for "one" is used + + // create an array from std::unordered_set + std::unordered_set c_uset {"one", "two", "three", "four", "one"}; + json j_uset(c_uset); // only one entry for "one" is used + + // create an array from std::multiset + std::multiset c_mset {"one", "two", "one", "four"}; + json j_mset(c_mset); // both entries for "one" are used + + // create an array from std::unordered_multiset + std::unordered_multiset c_umset {"one", "two", "one", "four"}; + json j_umset(c_umset); // both entries for "one" are used + + // serialize the JSON arrays + std::cout << j_array_t << '\n'; + std::cout << j_vec << '\n'; + std::cout << j_valarray << '\n'; + std::cout << j_deque << '\n'; + std::cout << j_list << '\n'; + std::cout << j_flist << '\n'; + std::cout << j_array << '\n'; + std::cout << j_set << '\n'; + std::cout << j_uset << '\n'; + std::cout << j_mset << '\n'; + std::cout << j_umset << "\n\n"; + + // ============ + // string types + // ============ + + // create string from a string_t value + json::string_t string_value = "The quick brown fox jumps over the lazy dog."; + json j_string_t(string_value); + + // create a JSON string directly from a string literal + json j_string_literal("The quick brown fox jumps over the lazy dog."); + + // create string from std::string + std::string s_stdstring = "The quick brown fox jumps over the lazy dog."; + json j_stdstring(s_stdstring); + + // serialize the JSON strings + std::cout << j_string_t << '\n'; + std::cout << j_string_literal << '\n'; + std::cout << j_stdstring << "\n\n"; + + // ============ + // number types + // ============ + + // create a JSON number from number_integer_t + json::number_integer_t value_integer_t = -42; + json j_integer_t(value_integer_t); + + // create a JSON number from number_unsigned_t + json::number_integer_t value_unsigned_t = 17; + json j_unsigned_t(value_unsigned_t); + + // create a JSON number from an anonymous enum + enum { enum_value = 17 }; + json j_enum(enum_value); + + // create values of different integer types + short n_short = 42; + int n_int = -23; + long n_long = 1024; + int_least32_t n_int_least32_t = -17; + uint8_t n_uint8_t = 8; + + // create (integer) JSON numbers + json j_short(n_short); + json j_int(n_int); + json j_long(n_long); + json j_int_least32_t(n_int_least32_t); + json j_uint8_t(n_uint8_t); + + // create values of different floating-point types + json::number_float_t v_ok = 3.141592653589793; + json::number_float_t v_nan = NAN; + json::number_float_t v_infinity = INFINITY; + + // create values of different floating-point types + float n_float = 42.23; + float n_float_nan = 1.0f / 0.0f; + double n_double = 23.42; + + // create (floating point) JSON numbers + json j_ok(v_ok); + json j_nan(v_nan); + json j_infinity(v_infinity); + json j_float(n_float); + json j_float_nan(n_float_nan); + json j_double(n_double); + + // serialize the JSON numbers + std::cout << j_integer_t << '\n'; + std::cout << j_unsigned_t << '\n'; + std::cout << j_enum << '\n'; + std::cout << j_short << '\n'; + std::cout << j_int << '\n'; + std::cout << j_long << '\n'; + std::cout << j_int_least32_t << '\n'; + std::cout << j_uint8_t << '\n'; + std::cout << j_ok << '\n'; + std::cout << j_nan << '\n'; + std::cout << j_infinity << '\n'; + std::cout << j_float << '\n'; + std::cout << j_float_nan << '\n'; + std::cout << j_double << "\n\n"; + + // ============= + // boolean types + // ============= + + // create boolean values + json j_truth = true; + json j_falsity = false; + + // serialize the JSON booleans + std::cout << j_truth << '\n'; + std::cout << j_falsity << '\n'; +} diff --git a/docs/examples/basic_json__CompatibleType.output b/docs/examples/basic_json__CompatibleType.output new file mode 100644 index 00000000..2337e81f --- /dev/null +++ b/docs/examples/basic_json__CompatibleType.output @@ -0,0 +1,39 @@ +{"one":1,"two":2} +{"one":1,"three":3,"two":2} +{"one":1.2,"three":3.4,"two":2.3} +{"one":true,"three":false,"two":true} +{"one":true,"three":false,"two":true} + +["one","two",3,4.5,false] +[1,2,3,4] +[10,9,8,7] +[1.2,2.3,3.4,5.6] +[true,true,false,true] +[12345678909876,23456789098765,34567890987654,45678909876543] +[1,2,3,4] +["four","one","three","two"] +["four","three","two","one"] +["four","one","one","two"] +["four","two","one","one"] + +"The quick brown fox jumps over the lazy dog." +"The quick brown fox jumps over the lazy dog." +"The quick brown fox jumps over the lazy dog." + +-42 +17 +17 +42 +-23 +1024 +-17 +8 +3.141592653589793 +null +null +42.22999954223633 +null +23.42 + +true +false diff --git a/docs/examples/basic_json__InputIt_InputIt.cpp b/docs/examples/basic_json__InputIt_InputIt.cpp new file mode 100644 index 00000000..dec693c8 --- /dev/null +++ b/docs/examples/basic_json__InputIt_InputIt.cpp @@ -0,0 +1,32 @@ +#include +#include + +using json = nlohmann::json; + +int main() +{ + // create JSON values + json j_array = {"alpha", "bravo", "charly", "delta", "easy"}; + json j_number = 42; + json j_object = {{"one", "eins"}, {"two", "zwei"}}; + + // create copies using iterators + json j_array_range(j_array.begin() + 1, j_array.end() - 2); + json j_number_range(j_number.begin(), j_number.end()); + json j_object_range(j_object.begin(), j_object.find("two")); + + // serialize the values + std::cout << j_array_range << '\n'; + std::cout << j_number_range << '\n'; + std::cout << j_object_range << '\n'; + + // example for an exception + try + { + json j_invalid(j_number.begin() + 1, j_number.end()); + } + catch (const json::invalid_iterator& e) + { + std::cout << e.what() << '\n'; + } +} diff --git a/docs/examples/basic_json__InputIt_InputIt.output b/docs/examples/basic_json__InputIt_InputIt.output new file mode 100644 index 00000000..bfb01778 --- /dev/null +++ b/docs/examples/basic_json__InputIt_InputIt.output @@ -0,0 +1,4 @@ +["bravo","charly"] +42 +{"one":"eins"} +[json.exception.invalid_iterator.204] iterators out of range diff --git a/docs/examples/basic_json__basic_json.cpp b/docs/examples/basic_json__basic_json.cpp new file mode 100644 index 00000000..17136f43 --- /dev/null +++ b/docs/examples/basic_json__basic_json.cpp @@ -0,0 +1,17 @@ +#include +#include + +using json = nlohmann::json; + +int main() +{ + // create a JSON array + json j1 = {"one", "two", 3, 4.5, false}; + + // create a copy + json j2(j1); + + // serialize the JSON array + std::cout << j1 << " = " << j2 << '\n'; + std::cout << std::boolalpha << (j1 == j2) << '\n'; +} diff --git a/docs/examples/basic_json__basic_json.output b/docs/examples/basic_json__basic_json.output new file mode 100644 index 00000000..ee93a41c --- /dev/null +++ b/docs/examples/basic_json__basic_json.output @@ -0,0 +1,2 @@ +["one","two",3,4.5,false] = ["one","two",3,4.5,false] +true diff --git a/docs/examples/basic_json__copyassignment.cpp b/docs/examples/basic_json__copyassignment.cpp new file mode 100644 index 00000000..2d865740 --- /dev/null +++ b/docs/examples/basic_json__copyassignment.cpp @@ -0,0 +1,18 @@ +#include +#include + +using json = nlohmann::json; + +int main() +{ + // create JSON values + json a = 23; + json b = 42; + + // copy-assign a to b + b = a; + + // serialize the JSON arrays + std::cout << a << '\n'; + std::cout << b << '\n'; +} diff --git a/docs/examples/basic_json__copyassignment.output b/docs/examples/basic_json__copyassignment.output new file mode 100644 index 00000000..c1eee210 --- /dev/null +++ b/docs/examples/basic_json__copyassignment.output @@ -0,0 +1,2 @@ +23 +23 diff --git a/docs/examples/basic_json__list_init_t.cpp b/docs/examples/basic_json__list_init_t.cpp new file mode 100644 index 00000000..78611e1a --- /dev/null +++ b/docs/examples/basic_json__list_init_t.cpp @@ -0,0 +1,21 @@ +#include +#include + +using json = nlohmann::json; + +int main() +{ + // create JSON values + json j_empty_init_list = json({}); + json j_object = { {"one", 1}, {"two", 2} }; + json j_array = {1, 2, 3, 4}; + json j_nested_object = { {"one", {1}}, {"two", {1, 2}} }; + json j_nested_array = { {{1}, "one"}, {{1, 2}, "two"} }; + + // serialize the JSON value + std::cout << j_empty_init_list << '\n'; + std::cout << j_object << '\n'; + std::cout << j_array << '\n'; + std::cout << j_nested_object << '\n'; + std::cout << j_nested_array << '\n'; +} diff --git a/docs/examples/basic_json__list_init_t.output b/docs/examples/basic_json__list_init_t.output new file mode 100644 index 00000000..d38f5b84 --- /dev/null +++ b/docs/examples/basic_json__list_init_t.output @@ -0,0 +1,5 @@ +{} +{"one":1,"two":2} +[1,2,3,4] +{"one":[1],"two":[1,2]} +[[[1],"one"],[[1,2],"two"]] diff --git a/docs/examples/basic_json__moveconstructor.cpp b/docs/examples/basic_json__moveconstructor.cpp new file mode 100644 index 00000000..48b68f61 --- /dev/null +++ b/docs/examples/basic_json__moveconstructor.cpp @@ -0,0 +1,17 @@ +#include +#include + +using json = nlohmann::json; + +int main() +{ + // create a JSON value + json a = 23; + + // move contents of a to b + json b(std::move(a)); + + // serialize the JSON arrays + std::cout << a << '\n'; + std::cout << b << '\n'; +} diff --git a/docs/examples/basic_json__moveconstructor.output b/docs/examples/basic_json__moveconstructor.output new file mode 100644 index 00000000..911b5b1a --- /dev/null +++ b/docs/examples/basic_json__moveconstructor.output @@ -0,0 +1,2 @@ +null +23 diff --git a/docs/examples/basic_json__nullptr_t.cpp b/docs/examples/basic_json__nullptr_t.cpp new file mode 100644 index 00000000..7a436665 --- /dev/null +++ b/docs/examples/basic_json__nullptr_t.cpp @@ -0,0 +1,16 @@ +#include +#include + +using json = nlohmann::json; + +int main() +{ + // implicitly create a JSON null value + json j1; + + // explicitly create a JSON null value + json j2(nullptr); + + // serialize the JSON null value + std::cout << j1 << '\n' << j2 << '\n'; +} diff --git a/docs/examples/basic_json__nullptr_t.output b/docs/examples/basic_json__nullptr_t.output new file mode 100644 index 00000000..c1e4b6c1 --- /dev/null +++ b/docs/examples/basic_json__nullptr_t.output @@ -0,0 +1,2 @@ +null +null diff --git a/docs/examples/basic_json__size_type_basic_json.cpp b/docs/examples/basic_json__size_type_basic_json.cpp new file mode 100644 index 00000000..9ec76772 --- /dev/null +++ b/docs/examples/basic_json__size_type_basic_json.cpp @@ -0,0 +1,18 @@ +#include +#include + +using json = nlohmann::json; + +int main() +{ + // create an array by creating copies of a JSON value + json value = "Hello"; + json array_0 = json(0, value); + json array_1 = json(1, value); + json array_5 = json(5, value); + + // serialize the JSON arrays + std::cout << array_0 << '\n'; + std::cout << array_1 << '\n'; + std::cout << array_5 << '\n'; +} diff --git a/docs/examples/basic_json__size_type_basic_json.output b/docs/examples/basic_json__size_type_basic_json.output new file mode 100644 index 00000000..f4c59b34 --- /dev/null +++ b/docs/examples/basic_json__size_type_basic_json.output @@ -0,0 +1,3 @@ +[] +["Hello"] +["Hello","Hello","Hello","Hello","Hello"] diff --git a/docs/examples/basic_json__value_t.cpp b/docs/examples/basic_json__value_t.cpp new file mode 100644 index 00000000..c306731a --- /dev/null +++ b/docs/examples/basic_json__value_t.cpp @@ -0,0 +1,25 @@ +#include +#include + +using json = nlohmann::json; + +int main() +{ + // create the different JSON values with default values + json j_null(json::value_t::null); + json j_boolean(json::value_t::boolean); + json j_number_integer(json::value_t::number_integer); + json j_number_float(json::value_t::number_float); + json j_object(json::value_t::object); + json j_array(json::value_t::array); + json j_string(json::value_t::string); + + // serialize the JSON values + std::cout << j_null << '\n'; + std::cout << j_boolean << '\n'; + std::cout << j_number_integer << '\n'; + std::cout << j_number_float << '\n'; + std::cout << j_object << '\n'; + std::cout << j_array << '\n'; + std::cout << j_string << '\n'; +} diff --git a/docs/examples/basic_json__value_t.output b/docs/examples/basic_json__value_t.output new file mode 100644 index 00000000..ea542cae --- /dev/null +++ b/docs/examples/basic_json__value_t.output @@ -0,0 +1,7 @@ +null +false +0 +0.0 +{} +[] +"" diff --git a/docs/examples/begin.cpp b/docs/examples/begin.cpp new file mode 100644 index 00000000..654835b0 --- /dev/null +++ b/docs/examples/begin.cpp @@ -0,0 +1,16 @@ +#include +#include + +using json = nlohmann::json; + +int main() +{ + // create an array value + json array = {1, 2, 3, 4, 5}; + + // get an iterator to the first element + json::iterator it = array.begin(); + + // serialize the element that the iterator points to + std::cout << *it << '\n'; +} diff --git a/docs/examples/begin.output b/docs/examples/begin.output new file mode 100644 index 00000000..d00491fd --- /dev/null +++ b/docs/examples/begin.output @@ -0,0 +1 @@ +1 diff --git a/docs/examples/binary.cpp b/docs/examples/binary.cpp new file mode 100644 index 00000000..617ce609 --- /dev/null +++ b/docs/examples/binary.cpp @@ -0,0 +1,16 @@ +#include +#include + +using json = nlohmann::json; + +int main() +{ + // create a binary vector + std::vector vec = {0xCA, 0xFE, 0xBA, 0xBE}; + + // create a binary JSON value with subtype 42 + json j = json::binary(vec, 42); + + // output type and subtype + std::cout << "type: " << j.type_name() << ", subtype: " << j.get_binary().subtype() << std::endl; +} diff --git a/docs/examples/binary.output b/docs/examples/binary.output new file mode 100644 index 00000000..74b05d23 --- /dev/null +++ b/docs/examples/binary.output @@ -0,0 +1 @@ +type: binary, subtype: 42 diff --git a/docs/examples/binary_t.cpp b/docs/examples/binary_t.cpp new file mode 100644 index 00000000..bfaee5ca --- /dev/null +++ b/docs/examples/binary_t.cpp @@ -0,0 +1,10 @@ +#include +#include +#include + +using json = nlohmann::json; + +int main() +{ + std::cout << std::boolalpha << std::is_same>, json::binary_t>::value << std::endl; +} diff --git a/docs/examples/binary_t.output b/docs/examples/binary_t.output new file mode 100644 index 00000000..27ba77dd --- /dev/null +++ b/docs/examples/binary_t.output @@ -0,0 +1 @@ +true diff --git a/docs/examples/boolean_t.cpp b/docs/examples/boolean_t.cpp new file mode 100644 index 00000000..75b8c99f --- /dev/null +++ b/docs/examples/boolean_t.cpp @@ -0,0 +1,10 @@ +#include +#include +#include + +using json = nlohmann::json; + +int main() +{ + std::cout << std::boolalpha << std::is_same::value << std::endl; +} diff --git a/docs/examples/boolean_t.output b/docs/examples/boolean_t.output new file mode 100644 index 00000000..27ba77dd --- /dev/null +++ b/docs/examples/boolean_t.output @@ -0,0 +1 @@ +true diff --git a/docs/examples/byte_container_with_subtype__byte_container_with_subtype.cpp b/docs/examples/byte_container_with_subtype__byte_container_with_subtype.cpp new file mode 100644 index 00000000..1c10be5c --- /dev/null +++ b/docs/examples/byte_container_with_subtype__byte_container_with_subtype.cpp @@ -0,0 +1,23 @@ +#include +#include + +// define a byte container based on std::vector +using byte_container_with_subtype = nlohmann::byte_container_with_subtype>; + +using json = nlohmann::json; + +int main() +{ + // (1) create empty container + auto c1 = byte_container_with_subtype(); + + std::vector bytes = {{0xca, 0xfe, 0xba, 0xbe}}; + + // (2) create container + auto c2 = byte_container_with_subtype(bytes); + + // (3) create container with subtype + auto c3 = byte_container_with_subtype(bytes, 42); + + std::cout << json(c1) << "\n" << json(c2) << "\n" << json(c3) << std::endl; +} diff --git a/docs/examples/byte_container_with_subtype__byte_container_with_subtype.output b/docs/examples/byte_container_with_subtype__byte_container_with_subtype.output new file mode 100644 index 00000000..67ac1b2e --- /dev/null +++ b/docs/examples/byte_container_with_subtype__byte_container_with_subtype.output @@ -0,0 +1,3 @@ +{"bytes":[],"subtype":null} +{"bytes":[202,254,186,190],"subtype":null} +{"bytes":[202,254,186,190],"subtype":42} diff --git a/docs/examples/byte_container_with_subtype__clear_subtype.cpp b/docs/examples/byte_container_with_subtype__clear_subtype.cpp new file mode 100644 index 00000000..f9ce6842 --- /dev/null +++ b/docs/examples/byte_container_with_subtype__clear_subtype.cpp @@ -0,0 +1,21 @@ +#include +#include + +// define a byte container based on std::vector +using byte_container_with_subtype = nlohmann::byte_container_with_subtype>; + +using json = nlohmann::json; + +int main() +{ + std::vector bytes = {{0xca, 0xfe, 0xba, 0xbe}}; + + // create container with subtype + auto c1 = byte_container_with_subtype(bytes, 42); + + std::cout << "before calling clear_subtype(): " << json(c1) << '\n'; + + c1.clear_subtype(); + + std::cout << "after calling clear_subtype(): " << json(c1) << '\n'; +} diff --git a/docs/examples/byte_container_with_subtype__clear_subtype.output b/docs/examples/byte_container_with_subtype__clear_subtype.output new file mode 100644 index 00000000..9d821294 --- /dev/null +++ b/docs/examples/byte_container_with_subtype__clear_subtype.output @@ -0,0 +1,2 @@ +before calling clear_subtype(): {"bytes":[202,254,186,190],"subtype":42} +after calling clear_subtype(): {"bytes":[202,254,186,190],"subtype":null} diff --git a/docs/examples/byte_container_with_subtype__has_subtype.cpp b/docs/examples/byte_container_with_subtype__has_subtype.cpp new file mode 100644 index 00000000..61c21eaa --- /dev/null +++ b/docs/examples/byte_container_with_subtype__has_subtype.cpp @@ -0,0 +1,19 @@ +#include +#include + +// define a byte container based on std::vector +using byte_container_with_subtype = nlohmann::byte_container_with_subtype>; + +int main() +{ + std::vector bytes = {{0xca, 0xfe, 0xba, 0xbe}}; + + // create container + auto c1 = byte_container_with_subtype(bytes); + + // create container with subtype + auto c2 = byte_container_with_subtype(bytes, 42); + + std::cout << std::boolalpha << "c1.has_subtype() = " << c1.has_subtype() + << "\nc2.has_subtype() = " << c2.has_subtype() << std::endl; +} diff --git a/docs/examples/byte_container_with_subtype__has_subtype.output b/docs/examples/byte_container_with_subtype__has_subtype.output new file mode 100644 index 00000000..f4aade2a --- /dev/null +++ b/docs/examples/byte_container_with_subtype__has_subtype.output @@ -0,0 +1,2 @@ +c1.has_subtype() = false +c2.has_subtype() = true diff --git a/docs/examples/byte_container_with_subtype__set_subtype.cpp b/docs/examples/byte_container_with_subtype__set_subtype.cpp new file mode 100644 index 00000000..b2694c54 --- /dev/null +++ b/docs/examples/byte_container_with_subtype__set_subtype.cpp @@ -0,0 +1,22 @@ +#include +#include + +// define a byte container based on std::vector +using byte_container_with_subtype = nlohmann::byte_container_with_subtype>; + +using json = nlohmann::json; + +int main() +{ + std::vector bytes = {{0xca, 0xfe, 0xba, 0xbe}}; + + // create container without subtype + auto c = byte_container_with_subtype(bytes); + + std::cout << "before calling set_subtype(42): " << json(c) << '\n'; + + // set the subtype + c.set_subtype(42); + + std::cout << "after calling set_subtype(42): " << json(c) << '\n'; +} diff --git a/docs/examples/byte_container_with_subtype__set_subtype.output b/docs/examples/byte_container_with_subtype__set_subtype.output new file mode 100644 index 00000000..648b3ef2 --- /dev/null +++ b/docs/examples/byte_container_with_subtype__set_subtype.output @@ -0,0 +1,2 @@ +before calling set_subtype(42): {"bytes":[202,254,186,190],"subtype":null} +after calling set_subtype(42): {"bytes":[202,254,186,190],"subtype":42} diff --git a/docs/examples/byte_container_with_subtype__subtype.cpp b/docs/examples/byte_container_with_subtype__subtype.cpp new file mode 100644 index 00000000..cd230ade --- /dev/null +++ b/docs/examples/byte_container_with_subtype__subtype.cpp @@ -0,0 +1,22 @@ +#include +#include + +// define a byte container based on std::vector +using byte_container_with_subtype = nlohmann::byte_container_with_subtype>; + +int main() +{ + std::vector bytes = {{0xca, 0xfe, 0xba, 0xbe}}; + + // create container + auto c1 = byte_container_with_subtype(bytes); + + // create container with subtype + auto c2 = byte_container_with_subtype(bytes, 42); + + std::cout << "c1.subtype() = " << c1.subtype() + << "\nc2.subtype() = " << c2.subtype() << std::endl; + + // in case no subtype is set, return special value + assert(c1.subtype() == static_cast(-1)); +} diff --git a/docs/examples/byte_container_with_subtype__subtype.output b/docs/examples/byte_container_with_subtype__subtype.output new file mode 100644 index 00000000..47955277 --- /dev/null +++ b/docs/examples/byte_container_with_subtype__subtype.output @@ -0,0 +1,2 @@ +c1.subtype() = 18446744073709551615 +c2.subtype() = 42 diff --git a/docs/examples/cbegin.cpp b/docs/examples/cbegin.cpp new file mode 100644 index 00000000..bed2b372 --- /dev/null +++ b/docs/examples/cbegin.cpp @@ -0,0 +1,16 @@ +#include +#include + +using json = nlohmann::json; + +int main() +{ + // create an array value + const json array = {1, 2, 3, 4, 5}; + + // get an iterator to the first element + json::const_iterator it = array.cbegin(); + + // serialize the element that the iterator points to + std::cout << *it << '\n'; +} diff --git a/docs/examples/cbegin.output b/docs/examples/cbegin.output new file mode 100644 index 00000000..d00491fd --- /dev/null +++ b/docs/examples/cbegin.output @@ -0,0 +1 @@ +1 diff --git a/docs/examples/cbor_tag_handler_t.cpp b/docs/examples/cbor_tag_handler_t.cpp new file mode 100644 index 00000000..38d168ca --- /dev/null +++ b/docs/examples/cbor_tag_handler_t.cpp @@ -0,0 +1,28 @@ +#include +#include + +using json = nlohmann::json; + +int main() +{ + // tagged byte string + std::vector vec = {{0xd8, 0x42, 0x44, 0xcA, 0xfe, 0xba, 0xbe}}; + + // cbor_tag_handler_t::error throws + try + { + auto b_throw_on_tag = json::from_cbor(vec, true, true, json::cbor_tag_handler_t::error); + } + catch (const json::parse_error& e) + { + std::cout << e.what() << std::endl; + } + + // cbor_tag_handler_t::ignore ignores the tag + auto b_ignore_tag = json::from_cbor(vec, true, true, json::cbor_tag_handler_t::ignore); + std::cout << b_ignore_tag << std::endl; + + // cbor_tag_handler_t::store stores the tag as binary subtype + auto b_store_tag = json::from_cbor(vec, true, true, json::cbor_tag_handler_t::store); + std::cout << b_store_tag << std::endl; +} diff --git a/docs/examples/cbor_tag_handler_t.output b/docs/examples/cbor_tag_handler_t.output new file mode 100644 index 00000000..18920b13 --- /dev/null +++ b/docs/examples/cbor_tag_handler_t.output @@ -0,0 +1,3 @@ +[json.exception.parse_error.112] parse error at byte 1: syntax error while parsing CBOR value: invalid byte: 0xD8 +{"bytes":[202,254,186,190],"subtype":null} +{"bytes":[202,254,186,190],"subtype":66} diff --git a/docs/examples/cend.cpp b/docs/examples/cend.cpp new file mode 100644 index 00000000..3050f500 --- /dev/null +++ b/docs/examples/cend.cpp @@ -0,0 +1,19 @@ +#include +#include + +using json = nlohmann::json; + +int main() +{ + // create an array value + json array = {1, 2, 3, 4, 5}; + + // get an iterator to one past the last element + json::const_iterator it = array.cend(); + + // decrement the iterator to point to the last element + --it; + + // serialize the element that the iterator points to + std::cout << *it << '\n'; +} diff --git a/docs/examples/cend.output b/docs/examples/cend.output new file mode 100644 index 00000000..7ed6ff82 --- /dev/null +++ b/docs/examples/cend.output @@ -0,0 +1 @@ +5 diff --git a/docs/examples/clear.cpp b/docs/examples/clear.cpp new file mode 100644 index 00000000..f081e7ed --- /dev/null +++ b/docs/examples/clear.cpp @@ -0,0 +1,34 @@ +#include +#include + +using json = nlohmann::json; + +int main() +{ + // create JSON values + json j_null; + json j_boolean = true; + json j_number_integer = 17; + json j_number_float = 23.42; + json j_object = {{"one", 1}, {"two", 2}}; + json j_array = {1, 2, 4, 8, 16}; + json j_string = "Hello, world"; + + // call clear() + j_null.clear(); + j_boolean.clear(); + j_number_integer.clear(); + j_number_float.clear(); + j_object.clear(); + j_array.clear(); + j_string.clear(); + + // serialize the cleared values() + std::cout << j_null << '\n'; + std::cout << j_boolean << '\n'; + std::cout << j_number_integer << '\n'; + std::cout << j_number_float << '\n'; + std::cout << j_object << '\n'; + std::cout << j_array << '\n'; + std::cout << j_string << '\n'; +} diff --git a/docs/examples/clear.output b/docs/examples/clear.output new file mode 100644 index 00000000..ea542cae --- /dev/null +++ b/docs/examples/clear.output @@ -0,0 +1,7 @@ +null +false +0 +0.0 +{} +[] +"" diff --git a/docs/examples/contains__json_pointer.cpp b/docs/examples/contains__json_pointer.cpp new file mode 100644 index 00000000..14d8514b --- /dev/null +++ b/docs/examples/contains__json_pointer.cpp @@ -0,0 +1,43 @@ +#include +#include + +using json = nlohmann::json; +using namespace nlohmann::literals; + +int main() +{ + // create a JSON value + json j = + { + {"number", 1}, {"string", "foo"}, {"array", {1, 2}} + }; + + std::cout << std::boolalpha + << j.contains("/number"_json_pointer) << '\n' + << j.contains("/string"_json_pointer) << '\n' + << j.contains("/array"_json_pointer) << '\n' + << j.contains("/array/1"_json_pointer) << '\n' + << j.contains("/array/-"_json_pointer) << '\n' + << j.contains("/array/4"_json_pointer) << '\n' + << j.contains("/baz"_json_pointer) << std::endl; + + try + { + // try to use an array index with leading '0' + j.contains("/array/01"_json_pointer); + } + catch (const json::parse_error& e) + { + std::cout << e.what() << '\n'; + } + + try + { + // try to use an array index that is not a number + j.contains("/array/one"_json_pointer); + } + catch (const json::parse_error& e) + { + std::cout << e.what() << '\n'; + } +} diff --git a/docs/examples/contains__json_pointer.output b/docs/examples/contains__json_pointer.output new file mode 100644 index 00000000..dd1eb38c --- /dev/null +++ b/docs/examples/contains__json_pointer.output @@ -0,0 +1,7 @@ +true +true +true +true +false +false +false diff --git a/docs/examples/contains__keytype.c++17.cpp b/docs/examples/contains__keytype.c++17.cpp new file mode 100644 index 00000000..43b62fab --- /dev/null +++ b/docs/examples/contains__keytype.c++17.cpp @@ -0,0 +1,20 @@ +#include +#include +#include + +using namespace std::string_view_literals; +using json = nlohmann::json; +using namespace nlohmann::literals; + +int main() +{ + // create some JSON values + json j_object = R"( {"key": "value"} )"_json; + json j_array = R"( [1, 2, 3] )"_json; + + // call contains + std::cout << std::boolalpha << + "j_object contains 'key': " << j_object.contains("key"sv) << '\n' << + "j_object contains 'another': " << j_object.contains("another"sv) << '\n' << + "j_array contains 'key': " << j_array.contains("key"sv) << std::endl; +} diff --git a/docs/examples/contains__keytype.c++17.output b/docs/examples/contains__keytype.c++17.output new file mode 100644 index 00000000..14ad177b --- /dev/null +++ b/docs/examples/contains__keytype.c++17.output @@ -0,0 +1,3 @@ +j_object contains 'key': true +j_object contains 'another': false +j_array contains 'key': false diff --git a/docs/examples/contains__object_t_key_type.cpp b/docs/examples/contains__object_t_key_type.cpp new file mode 100644 index 00000000..a8bc8143 --- /dev/null +++ b/docs/examples/contains__object_t_key_type.cpp @@ -0,0 +1,18 @@ +#include +#include + +using json = nlohmann::json; +using namespace nlohmann::literals; + +int main() +{ + // create some JSON values + json j_object = R"( {"key": "value"} )"_json; + json j_array = R"( [1, 2, 3] )"_json; + + // call contains + std::cout << std::boolalpha << + "j_object contains 'key': " << j_object.contains("key") << '\n' << + "j_object contains 'another': " << j_object.contains("another") << '\n' << + "j_array contains 'key': " << j_array.contains("key") << std::endl; +} diff --git a/docs/examples/contains__object_t_key_type.output b/docs/examples/contains__object_t_key_type.output new file mode 100644 index 00000000..14ad177b --- /dev/null +++ b/docs/examples/contains__object_t_key_type.output @@ -0,0 +1,3 @@ +j_object contains 'key': true +j_object contains 'another': false +j_array contains 'key': false diff --git a/docs/examples/count__keytype.c++17.cpp b/docs/examples/count__keytype.c++17.cpp new file mode 100644 index 00000000..ec6de060 --- /dev/null +++ b/docs/examples/count__keytype.c++17.cpp @@ -0,0 +1,20 @@ +#include +#include +#include + +using namespace std::string_view_literals; +using json = nlohmann::json; + +int main() +{ + // create a JSON object + json j_object = {{"one", 1}, {"two", 2}}; + + // call count() + auto count_two = j_object.count("two"sv); + auto count_three = j_object.count("three"sv); + + // print values + std::cout << "number of elements with key \"two\": " << count_two << '\n'; + std::cout << "number of elements with key \"three\": " << count_three << '\n'; +} diff --git a/docs/examples/count__keytype.c++17.output b/docs/examples/count__keytype.c++17.output new file mode 100644 index 00000000..d816fcb2 --- /dev/null +++ b/docs/examples/count__keytype.c++17.output @@ -0,0 +1,2 @@ +number of elements with key "two": 1 +number of elements with key "three": 0 diff --git a/docs/examples/count__object_t_key_type.cpp b/docs/examples/count__object_t_key_type.cpp new file mode 100644 index 00000000..a8d54b9d --- /dev/null +++ b/docs/examples/count__object_t_key_type.cpp @@ -0,0 +1,18 @@ +#include +#include + +using json = nlohmann::json; + +int main() +{ + // create a JSON object + json j_object = {{"one", 1}, {"two", 2}}; + + // call count() + auto count_two = j_object.count("two"); + auto count_three = j_object.count("three"); + + // print values + std::cout << "number of elements with key \"two\": " << count_two << '\n'; + std::cout << "number of elements with key \"three\": " << count_three << '\n'; +} diff --git a/docs/examples/count__object_t_key_type.output b/docs/examples/count__object_t_key_type.output new file mode 100644 index 00000000..d816fcb2 --- /dev/null +++ b/docs/examples/count__object_t_key_type.output @@ -0,0 +1,2 @@ +number of elements with key "two": 1 +number of elements with key "three": 0 diff --git a/docs/examples/crbegin.cpp b/docs/examples/crbegin.cpp new file mode 100644 index 00000000..dc3209cf --- /dev/null +++ b/docs/examples/crbegin.cpp @@ -0,0 +1,16 @@ +#include +#include + +using json = nlohmann::json; + +int main() +{ + // create an array value + json array = {1, 2, 3, 4, 5}; + + // get an iterator to the reverse-beginning + json::const_reverse_iterator it = array.crbegin(); + + // serialize the element that the iterator points to + std::cout << *it << '\n'; +} diff --git a/docs/examples/crbegin.output b/docs/examples/crbegin.output new file mode 100644 index 00000000..7ed6ff82 --- /dev/null +++ b/docs/examples/crbegin.output @@ -0,0 +1 @@ +5 diff --git a/docs/examples/crend.cpp b/docs/examples/crend.cpp new file mode 100644 index 00000000..dff26093 --- /dev/null +++ b/docs/examples/crend.cpp @@ -0,0 +1,19 @@ +#include +#include + +using json = nlohmann::json; + +int main() +{ + // create an array value + json array = {1, 2, 3, 4, 5}; + + // get an iterator to the reverse-end + json::const_reverse_iterator it = array.crend(); + + // increment the iterator to point to the first element + --it; + + // serialize the element that the iterator points to + std::cout << *it << '\n'; +} diff --git a/docs/examples/crend.output b/docs/examples/crend.output new file mode 100644 index 00000000..d00491fd --- /dev/null +++ b/docs/examples/crend.output @@ -0,0 +1 @@ +1 diff --git a/docs/examples/default_object_comparator_t.cpp b/docs/examples/default_object_comparator_t.cpp new file mode 100644 index 00000000..9f200fe6 --- /dev/null +++ b/docs/examples/default_object_comparator_t.cpp @@ -0,0 +1,11 @@ +#include +#include + +using json = nlohmann::json; + +int main() +{ + std::cout << std::boolalpha + << "one < two : " << json::default_object_comparator_t{}("one", "two") << "\n" + << "three < four : " << json::default_object_comparator_t{}("three", "four") << std::endl; +} diff --git a/docs/examples/default_object_comparator_t.output b/docs/examples/default_object_comparator_t.output new file mode 100644 index 00000000..b1daf3b9 --- /dev/null +++ b/docs/examples/default_object_comparator_t.output @@ -0,0 +1,2 @@ +one < two : true +three < four : false diff --git a/docs/examples/diagnostics_extended.cpp b/docs/examples/diagnostics_extended.cpp new file mode 100644 index 00000000..3b9f484b --- /dev/null +++ b/docs/examples/diagnostics_extended.cpp @@ -0,0 +1,22 @@ +#include + +# define JSON_DIAGNOSTICS 1 +#include + +using json = nlohmann::json; + +int main() +{ + json j; + j["address"]["street"] = "Fake Street"; + j["address"]["housenumber"] = "12"; + + try + { + int housenumber = j["address"]["housenumber"]; + } + catch (const json::exception& e) + { + std::cout << e.what() << '\n'; + } +} diff --git a/docs/examples/diagnostics_extended.output b/docs/examples/diagnostics_extended.output new file mode 100644 index 00000000..f142927a --- /dev/null +++ b/docs/examples/diagnostics_extended.output @@ -0,0 +1 @@ +[json.exception.type_error.302] (/address/housenumber) type must be number, but is string diff --git a/docs/examples/diagnostics_standard.cpp b/docs/examples/diagnostics_standard.cpp new file mode 100644 index 00000000..eae61a4a --- /dev/null +++ b/docs/examples/diagnostics_standard.cpp @@ -0,0 +1,20 @@ +#include +#include + +using json = nlohmann::json; + +int main() +{ + json j; + j["address"]["street"] = "Fake Street"; + j["address"]["housenumber"] = "12"; + + try + { + int housenumber = j["address"]["housenumber"]; + } + catch (const json::exception& e) + { + std::cout << e.what() << '\n'; + } +} diff --git a/docs/examples/diagnostics_standard.output b/docs/examples/diagnostics_standard.output new file mode 100644 index 00000000..79707a0c --- /dev/null +++ b/docs/examples/diagnostics_standard.output @@ -0,0 +1 @@ +[json.exception.type_error.302] type must be number, but is string diff --git a/docs/examples/diff.cpp b/docs/examples/diff.cpp new file mode 100644 index 00000000..ef01332a --- /dev/null +++ b/docs/examples/diff.cpp @@ -0,0 +1,37 @@ +#include +#include +#include + +using json = nlohmann::json; +using namespace nlohmann::literals; + +int main() +{ + // the source document + json source = R"( + { + "baz": "qux", + "foo": "bar" + } + )"_json; + + // the target document + json target = R"( + { + "baz": "boo", + "hello": [ + "world" + ] + } + )"_json; + + // create the patch + json patch = json::diff(source, target); + + // roundtrip + json patched_source = source.patch(patch); + + // output patch and roundtrip result + std::cout << std::setw(4) << patch << "\n\n" + << std::setw(4) << patched_source << std::endl; +} diff --git a/docs/examples/diff.output b/docs/examples/diff.output new file mode 100644 index 00000000..7dc79791 --- /dev/null +++ b/docs/examples/diff.output @@ -0,0 +1,25 @@ +[ + { + "op": "replace", + "path": "/baz", + "value": "boo" + }, + { + "op": "remove", + "path": "/foo" + }, + { + "op": "add", + "path": "/hello", + "value": [ + "world" + ] + } +] + +{ + "baz": "boo", + "hello": [ + "world" + ] +} diff --git a/docs/examples/dump.cpp b/docs/examples/dump.cpp new file mode 100644 index 00000000..009c95fd --- /dev/null +++ b/docs/examples/dump.cpp @@ -0,0 +1,48 @@ +#include +#include + +using json = nlohmann::json; + +int main() +{ + // create JSON values + json j_object = {{"one", 1}, {"two", 2}}; + json j_array = {1, 2, 4, 8, 16}; + json j_string = "Hellö 😀!"; + + // call dump() + std::cout << "objects:" << '\n' + << j_object.dump() << "\n\n" + << j_object.dump(-1) << "\n\n" + << j_object.dump(0) << "\n\n" + << j_object.dump(4) << "\n\n" + << j_object.dump(1, '\t') << "\n\n"; + + std::cout << "arrays:" << '\n' + << j_array.dump() << "\n\n" + << j_array.dump(-1) << "\n\n" + << j_array.dump(0) << "\n\n" + << j_array.dump(4) << "\n\n" + << j_array.dump(1, '\t') << "\n\n"; + + std::cout << "strings:" << '\n' + << j_string.dump() << '\n' + << j_string.dump(-1, ' ', true) << '\n'; + + // create JSON value with invalid UTF-8 byte sequence + json j_invalid = "ä\xA9ü"; + try + { + std::cout << j_invalid.dump() << std::endl; + } + catch (const json::type_error& e) + { + std::cout << e.what() << std::endl; + } + + std::cout << "string with replaced invalid characters: " + << j_invalid.dump(-1, ' ', false, json::error_handler_t::replace) + << "\nstring with ignored invalid characters: " + << j_invalid.dump(-1, ' ', false, json::error_handler_t::ignore) + << '\n'; +} diff --git a/docs/examples/dump.output b/docs/examples/dump.output new file mode 100644 index 00000000..43009fe6 --- /dev/null +++ b/docs/examples/dump.output @@ -0,0 +1,55 @@ +objects: +{"one":1,"two":2} + +{"one":1,"two":2} + +{ +"one": 1, +"two": 2 +} + +{ + "one": 1, + "two": 2 +} + +{ + "one": 1, + "two": 2 +} + +arrays: +[1,2,4,8,16] + +[1,2,4,8,16] + +[ +1, +2, +4, +8, +16 +] + +[ + 1, + 2, + 4, + 8, + 16 +] + +[ + 1, + 2, + 4, + 8, + 16 +] + +strings: +"Hellö 😀!" +"Hell\u00f6 \ud83d\ude00!" +[json.exception.type_error.316] invalid UTF-8 byte at index 2: 0xA9 +string with replaced invalid characters: "ä�ü" +string with ignored invalid characters: "äü" diff --git a/docs/examples/emplace.cpp b/docs/examples/emplace.cpp new file mode 100644 index 00000000..a5314910 --- /dev/null +++ b/docs/examples/emplace.cpp @@ -0,0 +1,31 @@ +#include +#include + +using json = nlohmann::json; + +int main() +{ + // create JSON values + json object = {{"one", 1}, {"two", 2}}; + json null; + + // print values + std::cout << object << '\n'; + std::cout << null << '\n'; + + // add values + auto res1 = object.emplace("three", 3); + null.emplace("A", "a"); + null.emplace("B", "b"); + + // the following call will not add an object, because there is already + // a value stored at key "B" + auto res2 = null.emplace("B", "c"); + + // print values + std::cout << object << '\n'; + std::cout << *res1.first << " " << std::boolalpha << res1.second << '\n'; + + std::cout << null << '\n'; + std::cout << *res2.first << " " << std::boolalpha << res2.second << '\n'; +} diff --git a/docs/examples/emplace.output b/docs/examples/emplace.output new file mode 100644 index 00000000..83d6f773 --- /dev/null +++ b/docs/examples/emplace.output @@ -0,0 +1,6 @@ +{"one":1,"two":2} +null +{"one":1,"three":3,"two":2} +3 true +{"A":"a","B":"b"} +"b" false diff --git a/docs/examples/emplace_back.cpp b/docs/examples/emplace_back.cpp new file mode 100644 index 00000000..e979a945 --- /dev/null +++ b/docs/examples/emplace_back.cpp @@ -0,0 +1,24 @@ +#include +#include + +using json = nlohmann::json; + +int main() +{ + // create JSON values + json array = {1, 2, 3, 4, 5}; + json null; + + // print values + std::cout << array << '\n'; + std::cout << null << '\n'; + + // add values + array.emplace_back(6); + null.emplace_back("first"); + null.emplace_back(3, "second"); + + // print values + std::cout << array << '\n'; + std::cout << null << '\n'; +} diff --git a/docs/examples/emplace_back.output b/docs/examples/emplace_back.output new file mode 100644 index 00000000..bdd80d82 --- /dev/null +++ b/docs/examples/emplace_back.output @@ -0,0 +1,4 @@ +[1,2,3,4,5] +null +[1,2,3,4,5,6] +["first",["second","second","second"]] diff --git a/docs/examples/empty.cpp b/docs/examples/empty.cpp new file mode 100644 index 00000000..6ef6e40e --- /dev/null +++ b/docs/examples/empty.cpp @@ -0,0 +1,30 @@ +#include +#include + +using json = nlohmann::json; + +int main() +{ + // create JSON values + json j_null; + json j_boolean = true; + json j_number_integer = 17; + json j_number_float = 23.42; + json j_object = {{"one", 1}, {"two", 2}}; + json j_object_empty(json::value_t::object); + json j_array = {1, 2, 4, 8, 16}; + json j_array_empty(json::value_t::array); + json j_string = "Hello, world"; + + // call empty() + std::cout << std::boolalpha; + std::cout << j_null.empty() << '\n'; + std::cout << j_boolean.empty() << '\n'; + std::cout << j_number_integer.empty() << '\n'; + std::cout << j_number_float.empty() << '\n'; + std::cout << j_object.empty() << '\n'; + std::cout << j_object_empty.empty() << '\n'; + std::cout << j_array.empty() << '\n'; + std::cout << j_array_empty.empty() << '\n'; + std::cout << j_string.empty() << '\n'; +} diff --git a/docs/examples/empty.output b/docs/examples/empty.output new file mode 100644 index 00000000..d071a398 --- /dev/null +++ b/docs/examples/empty.output @@ -0,0 +1,9 @@ +true +false +false +false +false +true +false +true +false diff --git a/docs/examples/end.cpp b/docs/examples/end.cpp new file mode 100644 index 00000000..47beedb7 --- /dev/null +++ b/docs/examples/end.cpp @@ -0,0 +1,19 @@ +#include +#include + +using json = nlohmann::json; + +int main() +{ + // create an array value + json array = {1, 2, 3, 4, 5}; + + // get an iterator to one past the last element + json::iterator it = array.end(); + + // decrement the iterator to point to the last element + --it; + + // serialize the element that the iterator points to + std::cout << *it << '\n'; +} diff --git a/docs/examples/end.output b/docs/examples/end.output new file mode 100644 index 00000000..7ed6ff82 --- /dev/null +++ b/docs/examples/end.output @@ -0,0 +1 @@ +5 diff --git a/docs/examples/erase__IteratorType.cpp b/docs/examples/erase__IteratorType.cpp new file mode 100644 index 00000000..f0d4ec6f --- /dev/null +++ b/docs/examples/erase__IteratorType.cpp @@ -0,0 +1,31 @@ +#include +#include + +using json = nlohmann::json; + +int main() +{ + // create JSON values + json j_boolean = true; + json j_number_integer = 17; + json j_number_float = 23.42; + json j_object = {{"one", 1}, {"two", 2}}; + json j_array = {1, 2, 4, 8, 16}; + json j_string = "Hello, world"; + + // call erase() + j_boolean.erase(j_boolean.begin()); + j_number_integer.erase(j_number_integer.begin()); + j_number_float.erase(j_number_float.begin()); + j_object.erase(j_object.find("two")); + j_array.erase(j_array.begin() + 2); + j_string.erase(j_string.begin()); + + // print values + std::cout << j_boolean << '\n'; + std::cout << j_number_integer << '\n'; + std::cout << j_number_float << '\n'; + std::cout << j_object << '\n'; + std::cout << j_array << '\n'; + std::cout << j_string << '\n'; +} diff --git a/docs/examples/erase__IteratorType.output b/docs/examples/erase__IteratorType.output new file mode 100644 index 00000000..e392f8ea --- /dev/null +++ b/docs/examples/erase__IteratorType.output @@ -0,0 +1,6 @@ +null +null +null +{"one":1} +[1,2,8,16] +null diff --git a/docs/examples/erase__IteratorType_IteratorType.cpp b/docs/examples/erase__IteratorType_IteratorType.cpp new file mode 100644 index 00000000..392511ff --- /dev/null +++ b/docs/examples/erase__IteratorType_IteratorType.cpp @@ -0,0 +1,31 @@ +#include +#include + +using json = nlohmann::json; + +int main() +{ + // create JSON values + json j_boolean = true; + json j_number_integer = 17; + json j_number_float = 23.42; + json j_object = {{"one", 1}, {"two", 2}}; + json j_array = {1, 2, 4, 8, 16}; + json j_string = "Hello, world"; + + // call erase() + j_boolean.erase(j_boolean.begin(), j_boolean.end()); + j_number_integer.erase(j_number_integer.begin(), j_number_integer.end()); + j_number_float.erase(j_number_float.begin(), j_number_float.end()); + j_object.erase(j_object.find("two"), j_object.end()); + j_array.erase(j_array.begin() + 1, j_array.begin() + 3); + j_string.erase(j_string.begin(), j_string.end()); + + // print values + std::cout << j_boolean << '\n'; + std::cout << j_number_integer << '\n'; + std::cout << j_number_float << '\n'; + std::cout << j_object << '\n'; + std::cout << j_array << '\n'; + std::cout << j_string << '\n'; +} diff --git a/docs/examples/erase__IteratorType_IteratorType.output b/docs/examples/erase__IteratorType_IteratorType.output new file mode 100644 index 00000000..5d01f008 --- /dev/null +++ b/docs/examples/erase__IteratorType_IteratorType.output @@ -0,0 +1,6 @@ +null +null +null +{"one":1} +[1,8,16] +null diff --git a/docs/examples/erase__keytype.c++17.cpp b/docs/examples/erase__keytype.c++17.cpp new file mode 100644 index 00000000..c5e4bed5 --- /dev/null +++ b/docs/examples/erase__keytype.c++17.cpp @@ -0,0 +1,20 @@ +#include +#include +#include + +using namespace std::string_view_literals; +using json = nlohmann::json; + +int main() +{ + // create a JSON object + json j_object = {{"one", 1}, {"two", 2}}; + + // call erase() + auto count_one = j_object.erase("one"sv); + auto count_three = j_object.erase("three"sv); + + // print values + std::cout << j_object << '\n'; + std::cout << count_one << " " << count_three << '\n'; +} diff --git a/docs/examples/erase__keytype.c++17.output b/docs/examples/erase__keytype.c++17.output new file mode 100644 index 00000000..28d79391 --- /dev/null +++ b/docs/examples/erase__keytype.c++17.output @@ -0,0 +1,2 @@ +{"two":2} +1 0 diff --git a/docs/examples/erase__object_t_key_type.cpp b/docs/examples/erase__object_t_key_type.cpp new file mode 100644 index 00000000..2fd84c86 --- /dev/null +++ b/docs/examples/erase__object_t_key_type.cpp @@ -0,0 +1,18 @@ +#include +#include + +using json = nlohmann::json; + +int main() +{ + // create a JSON object + json j_object = {{"one", 1}, {"two", 2}}; + + // call erase() + auto count_one = j_object.erase("one"); + auto count_three = j_object.erase("three"); + + // print values + std::cout << j_object << '\n'; + std::cout << count_one << " " << count_three << '\n'; +} diff --git a/docs/examples/erase__object_t_key_type.output b/docs/examples/erase__object_t_key_type.output new file mode 100644 index 00000000..28d79391 --- /dev/null +++ b/docs/examples/erase__object_t_key_type.output @@ -0,0 +1,2 @@ +{"two":2} +1 0 diff --git a/docs/examples/erase__size_type.cpp b/docs/examples/erase__size_type.cpp new file mode 100644 index 00000000..81006238 --- /dev/null +++ b/docs/examples/erase__size_type.cpp @@ -0,0 +1,16 @@ +#include +#include + +using json = nlohmann::json; + +int main() +{ + // create a JSON array + json j_array = {0, 1, 2, 3, 4, 5}; + + // call erase() + j_array.erase(2); + + // print values + std::cout << j_array << '\n'; +} diff --git a/docs/examples/erase__size_type.output b/docs/examples/erase__size_type.output new file mode 100644 index 00000000..4ad74061 --- /dev/null +++ b/docs/examples/erase__size_type.output @@ -0,0 +1 @@ +[0,1,3,4,5] diff --git a/docs/examples/error_handler_t.cpp b/docs/examples/error_handler_t.cpp new file mode 100644 index 00000000..b4718d7e --- /dev/null +++ b/docs/examples/error_handler_t.cpp @@ -0,0 +1,24 @@ +#include +#include + +using json = nlohmann::json; + +int main() +{ + // create JSON value with invalid UTF-8 byte sequence + json j_invalid = "ä\xA9ü"; + try + { + std::cout << j_invalid.dump() << std::endl; + } + catch (const json::type_error& e) + { + std::cout << e.what() << std::endl; + } + + std::cout << "string with replaced invalid characters: " + << j_invalid.dump(-1, ' ', false, json::error_handler_t::replace) + << "\nstring with ignored invalid characters: " + << j_invalid.dump(-1, ' ', false, json::error_handler_t::ignore) + << '\n'; +} diff --git a/docs/examples/error_handler_t.output b/docs/examples/error_handler_t.output new file mode 100644 index 00000000..718d62be --- /dev/null +++ b/docs/examples/error_handler_t.output @@ -0,0 +1,3 @@ +[json.exception.type_error.316] invalid UTF-8 byte at index 2: 0xA9 +string with replaced invalid characters: "ä�ü" +string with ignored invalid characters: "äü" diff --git a/docs/examples/exception.cpp b/docs/examples/exception.cpp new file mode 100644 index 00000000..3e5a23b3 --- /dev/null +++ b/docs/examples/exception.cpp @@ -0,0 +1,20 @@ +#include +#include + +using json = nlohmann::json; + +int main() +{ + try + { + // calling at() for a non-existing key + json j = {{"foo", "bar"}}; + json k = j.at("non-existing"); + } + catch (const json::exception& e) + { + // output exception information + std::cout << "message: " << e.what() << '\n' + << "exception id: " << e.id << std::endl; + } +} diff --git a/docs/examples/exception.output b/docs/examples/exception.output new file mode 100644 index 00000000..fa20df6e --- /dev/null +++ b/docs/examples/exception.output @@ -0,0 +1,2 @@ +message: [json.exception.out_of_range.403] key 'non-existing' not found +exception id: 403 diff --git a/docs/examples/find__keytype.c++17.cpp b/docs/examples/find__keytype.c++17.cpp new file mode 100644 index 00000000..da94cf0a --- /dev/null +++ b/docs/examples/find__keytype.c++17.cpp @@ -0,0 +1,22 @@ +#include +#include +#include + +using namespace std::string_view_literals; +using json = nlohmann::json; + +int main() +{ + // create a JSON object + json j_object = {{"one", 1}, {"two", 2}}; + + // call find + auto it_two = j_object.find("two"sv); + auto it_three = j_object.find("three"sv); + + // print values + std::cout << std::boolalpha; + std::cout << "\"two\" was found: " << (it_two != j_object.end()) << '\n'; + std::cout << "value at key \"two\": " << *it_two << '\n'; + std::cout << "\"three\" was found: " << (it_three != j_object.end()) << '\n'; +} diff --git a/docs/examples/find__keytype.c++17.output b/docs/examples/find__keytype.c++17.output new file mode 100644 index 00000000..509bb42d --- /dev/null +++ b/docs/examples/find__keytype.c++17.output @@ -0,0 +1,3 @@ +"two" was found: true +value at key "two": 2 +"three" was found: false diff --git a/docs/examples/find__object_t_key_type.cpp b/docs/examples/find__object_t_key_type.cpp new file mode 100644 index 00000000..685ba776 --- /dev/null +++ b/docs/examples/find__object_t_key_type.cpp @@ -0,0 +1,20 @@ +#include +#include + +using json = nlohmann::json; + +int main() +{ + // create a JSON object + json j_object = {{"one", 1}, {"two", 2}}; + + // call find + auto it_two = j_object.find("two"); + auto it_three = j_object.find("three"); + + // print values + std::cout << std::boolalpha; + std::cout << "\"two\" was found: " << (it_two != j_object.end()) << '\n'; + std::cout << "value at key \"two\": " << *it_two << '\n'; + std::cout << "\"three\" was found: " << (it_three != j_object.end()) << '\n'; +} diff --git a/docs/examples/find__object_t_key_type.output b/docs/examples/find__object_t_key_type.output new file mode 100644 index 00000000..509bb42d --- /dev/null +++ b/docs/examples/find__object_t_key_type.output @@ -0,0 +1,3 @@ +"two" was found: true +value at key "two": 2 +"three" was found: false diff --git a/docs/examples/flatten.cpp b/docs/examples/flatten.cpp new file mode 100644 index 00000000..83f3ff6c --- /dev/null +++ b/docs/examples/flatten.cpp @@ -0,0 +1,32 @@ +#include +#include +#include + +using json = nlohmann::json; + +int main() +{ + // create JSON value + json j = + { + {"pi", 3.141}, + {"happy", true}, + {"name", "Niels"}, + {"nothing", nullptr}, + { + "answer", { + {"everything", 42} + } + }, + {"list", {1, 0, 2}}, + { + "object", { + {"currency", "USD"}, + {"value", 42.99} + } + } + }; + + // call flatten() + std::cout << std::setw(4) << j.flatten() << '\n'; +} diff --git a/docs/examples/flatten.output b/docs/examples/flatten.output new file mode 100644 index 00000000..33bd4c4b --- /dev/null +++ b/docs/examples/flatten.output @@ -0,0 +1,12 @@ +{ + "/answer/everything": 42, + "/happy": true, + "/list/0": 1, + "/list/1": 0, + "/list/2": 2, + "/name": "Niels", + "/nothing": null, + "/object/currency": "USD", + "/object/value": 42.99, + "/pi": 3.141 +} diff --git a/docs/examples/from_bjdata.cpp b/docs/examples/from_bjdata.cpp new file mode 100644 index 00000000..961164c2 --- /dev/null +++ b/docs/examples/from_bjdata.cpp @@ -0,0 +1,20 @@ +#include +#include +#include + +using json = nlohmann::json; + +int main() +{ + // create byte vector + std::vector v = {0x7B, 0x69, 0x07, 0x63, 0x6F, 0x6D, 0x70, 0x61, + 0x63, 0x74, 0x54, 0x69, 0x06, 0x73, 0x63, 0x68, + 0x65, 0x6D, 0x61, 0x69, 0x00, 0x7D + }; + + // deserialize it with BJData + json j = json::from_bjdata(v); + + // print the deserialized JSON value + std::cout << std::setw(2) << j << std::endl; +} diff --git a/docs/examples/from_bjdata.output b/docs/examples/from_bjdata.output new file mode 100644 index 00000000..259f63bd --- /dev/null +++ b/docs/examples/from_bjdata.output @@ -0,0 +1,4 @@ +{ + "compact": true, + "schema": 0 +} diff --git a/docs/examples/from_bson.cpp b/docs/examples/from_bson.cpp new file mode 100644 index 00000000..c9d9fdfa --- /dev/null +++ b/docs/examples/from_bson.cpp @@ -0,0 +1,21 @@ +#include +#include +#include + +using json = nlohmann::json; + +int main() +{ + // create byte vector + std::vector v = {0x1b, 0x00, 0x00, 0x00, 0x08, 0x63, 0x6f, 0x6d, + 0x70, 0x61, 0x63, 0x74, 0x00, 0x01, 0x10, 0x73, + 0x63, 0x68, 0x65, 0x6d, 0x61, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00 + }; + + // deserialize it with BSON + json j = json::from_bson(v); + + // print the deserialized JSON value + std::cout << std::setw(2) << j << std::endl; +} diff --git a/docs/examples/from_bson.output b/docs/examples/from_bson.output new file mode 100644 index 00000000..259f63bd --- /dev/null +++ b/docs/examples/from_bson.output @@ -0,0 +1,4 @@ +{ + "compact": true, + "schema": 0 +} diff --git a/docs/examples/from_cbor.cpp b/docs/examples/from_cbor.cpp new file mode 100644 index 00000000..e685329e --- /dev/null +++ b/docs/examples/from_cbor.cpp @@ -0,0 +1,20 @@ +#include +#include +#include + +using json = nlohmann::json; + +int main() +{ + // create byte vector + std::vector v = {0xa2, 0x67, 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x63, + 0x74, 0xf5, 0x66, 0x73, 0x63, 0x68, 0x65, 0x6d, + 0x61, 0x00 + }; + + // deserialize it with CBOR + json j = json::from_cbor(v); + + // print the deserialized JSON value + std::cout << std::setw(2) << j << std::endl; +} diff --git a/docs/examples/from_cbor.output b/docs/examples/from_cbor.output new file mode 100644 index 00000000..259f63bd --- /dev/null +++ b/docs/examples/from_cbor.output @@ -0,0 +1,4 @@ +{ + "compact": true, + "schema": 0 +} diff --git a/docs/examples/from_json__default_constructible.cpp b/docs/examples/from_json__default_constructible.cpp new file mode 100644 index 00000000..07d71ac9 --- /dev/null +++ b/docs/examples/from_json__default_constructible.cpp @@ -0,0 +1,37 @@ +#include +#include + +using json = nlohmann::json; + +namespace ns +{ +// a simple struct to model a person +struct person +{ + std::string name; + std::string address; + int age; +}; +} // namespace ns + +namespace ns +{ +void from_json(const json& j, person& p) +{ + j.at("name").get_to(p.name); + j.at("address").get_to(p.address); + j.at("age").get_to(p.age); +} +} // namespace ns + +int main() +{ + json j; + j["name"] = "Ned Flanders"; + j["address"] = "744 Evergreen Terrace"; + j["age"] = 60; + + auto p = j.template get(); + + std::cout << p.name << " (" << p.age << ") lives in " << p.address << std::endl; +} diff --git a/docs/examples/from_json__default_constructible.output b/docs/examples/from_json__default_constructible.output new file mode 100644 index 00000000..b9245232 --- /dev/null +++ b/docs/examples/from_json__default_constructible.output @@ -0,0 +1 @@ +Ned Flanders (60) lives in 744 Evergreen Terrace diff --git a/docs/examples/from_json__non_default_constructible.cpp b/docs/examples/from_json__non_default_constructible.cpp new file mode 100644 index 00000000..ec8206ea --- /dev/null +++ b/docs/examples/from_json__non_default_constructible.cpp @@ -0,0 +1,53 @@ +#include +#include + +using json = nlohmann::json; + +namespace ns +{ +// a simple struct to model a person (not default constructible) +struct person +{ + person(std::string n, std::string a, int aa) + : name(std::move(n)), address(std::move(a)), age(aa) + {} + + std::string name; + std::string address; + int age; +}; +} // namespace ns + +namespace nlohmann +{ +template <> +struct adl_serializer +{ + static ns::person from_json(const json& j) + { + return {j.at("name"), j.at("address"), j.at("age")}; + } + + // Here's the catch! You must provide a to_json method! Otherwise, you + // will not be able to convert person to json, since you fully + // specialized adl_serializer on that type + static void to_json(json& j, ns::person p) + { + j["name"] = p.name; + j["address"] = p.address; + j["age"] = p.age; + } +}; +} // namespace nlohmann + +int main() +{ + json j; + j["name"] = "Ned Flanders"; + j["address"] = "744 Evergreen Terrace"; + j["age"] = 60; + + auto p = j.template get(); + + std::cout << p.name << " (" << p.age << ") lives in " << p.address << std::endl; +} diff --git a/docs/examples/from_json__non_default_constructible.output b/docs/examples/from_json__non_default_constructible.output new file mode 100644 index 00000000..b9245232 --- /dev/null +++ b/docs/examples/from_json__non_default_constructible.output @@ -0,0 +1 @@ +Ned Flanders (60) lives in 744 Evergreen Terrace diff --git a/docs/examples/from_msgpack.cpp b/docs/examples/from_msgpack.cpp new file mode 100644 index 00000000..5c2183f1 --- /dev/null +++ b/docs/examples/from_msgpack.cpp @@ -0,0 +1,20 @@ +#include +#include +#include + +using json = nlohmann::json; + +int main() +{ + // create byte vector + std::vector v = {0x82, 0xa7, 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x63, + 0x74, 0xc3, 0xa6, 0x73, 0x63, 0x68, 0x65, 0x6d, + 0x61, 0x00 + }; + + // deserialize it with MessagePack + json j = json::from_msgpack(v); + + // print the deserialized JSON value + std::cout << std::setw(2) << j << std::endl; +} diff --git a/docs/examples/from_msgpack.output b/docs/examples/from_msgpack.output new file mode 100644 index 00000000..259f63bd --- /dev/null +++ b/docs/examples/from_msgpack.output @@ -0,0 +1,4 @@ +{ + "compact": true, + "schema": 0 +} diff --git a/docs/examples/from_ubjson.cpp b/docs/examples/from_ubjson.cpp new file mode 100644 index 00000000..1e85e4e3 --- /dev/null +++ b/docs/examples/from_ubjson.cpp @@ -0,0 +1,20 @@ +#include +#include +#include + +using json = nlohmann::json; + +int main() +{ + // create byte vector + std::vector v = {0x7B, 0x69, 0x07, 0x63, 0x6F, 0x6D, 0x70, 0x61, + 0x63, 0x74, 0x54, 0x69, 0x06, 0x73, 0x63, 0x68, + 0x65, 0x6D, 0x61, 0x69, 0x00, 0x7D + }; + + // deserialize it with UBJSON + json j = json::from_ubjson(v); + + // print the deserialized JSON value + std::cout << std::setw(2) << j << std::endl; +} diff --git a/docs/examples/from_ubjson.output b/docs/examples/from_ubjson.output new file mode 100644 index 00000000..259f63bd --- /dev/null +++ b/docs/examples/from_ubjson.output @@ -0,0 +1,4 @@ +{ + "compact": true, + "schema": 0 +} diff --git a/docs/examples/front.cpp b/docs/examples/front.cpp new file mode 100644 index 00000000..a0f63068 --- /dev/null +++ b/docs/examples/front.cpp @@ -0,0 +1,29 @@ +#include +#include + +using json = nlohmann::json; + +int main() +{ + // create JSON values + json j_null; + json j_boolean = true; + json j_number_integer = 17; + json j_number_float = 23.42; + json j_object = {{"one", 1}, {"two", 2}}; + json j_object_empty(json::value_t::object); + json j_array = {1, 2, 4, 8, 16}; + json j_array_empty(json::value_t::array); + json j_string = "Hello, world"; + + // call front() + //std::cout << j_null.front() << '\n'; // would throw + std::cout << j_boolean.front() << '\n'; + std::cout << j_number_integer.front() << '\n'; + std::cout << j_number_float.front() << '\n'; + std::cout << j_object.front() << '\n'; + //std::cout << j_object_empty.front() << '\n'; // undefined behavior + std::cout << j_array.front() << '\n'; + //std::cout << j_array_empty.front() << '\n'; // undefined behavior + std::cout << j_string.front() << '\n'; +} diff --git a/docs/examples/front.output b/docs/examples/front.output new file mode 100644 index 00000000..6301db53 --- /dev/null +++ b/docs/examples/front.output @@ -0,0 +1,6 @@ +true +17 +23.42 +1 +1 +"Hello, world" diff --git a/docs/examples/get__PointerType.cpp b/docs/examples/get__PointerType.cpp new file mode 100644 index 00000000..309c8dee --- /dev/null +++ b/docs/examples/get__PointerType.cpp @@ -0,0 +1,21 @@ +#include +#include + +using json = nlohmann::json; + +int main() +{ + // create a JSON number + json value = 17; + + // explicitly getting pointers + auto p1 = value.template get(); + auto p2 = value.template get(); + auto p3 = value.template get(); + auto p4 = value.template get(); + auto p5 = value.template get(); + + // print the pointees + std::cout << *p1 << ' ' << *p2 << ' ' << *p3 << ' ' << *p4 << '\n'; + std::cout << std::boolalpha << (p5 == nullptr) << '\n'; +} diff --git a/docs/examples/get__PointerType.output b/docs/examples/get__PointerType.output new file mode 100644 index 00000000..a15dd774 --- /dev/null +++ b/docs/examples/get__PointerType.output @@ -0,0 +1,2 @@ +17 17 17 17 +true diff --git a/docs/examples/get__ValueType_const.cpp b/docs/examples/get__ValueType_const.cpp new file mode 100644 index 00000000..db63791f --- /dev/null +++ b/docs/examples/get__ValueType_const.cpp @@ -0,0 +1,50 @@ +#include +#include +#include + +using json = nlohmann::json; + +int main() +{ + // create a JSON value with different types + json json_types = + { + {"boolean", true}, + { + "number", { + {"integer", 42}, + {"floating-point", 17.23} + } + }, + {"string", "Hello, world!"}, + {"array", {1, 2, 3, 4, 5}}, + {"null", nullptr} + }; + + // use explicit conversions + auto v1 = json_types["boolean"].template get(); + auto v2 = json_types["number"]["integer"].template get(); + auto v3 = json_types["number"]["integer"].template get(); + auto v4 = json_types["number"]["floating-point"].template get(); + auto v5 = json_types["number"]["floating-point"].template get(); + auto v6 = json_types["string"].template get(); + auto v7 = json_types["array"].template get>(); + auto v8 = json_types.template get>(); + + // print the conversion results + std::cout << v1 << '\n'; + std::cout << v2 << ' ' << v3 << '\n'; + std::cout << v4 << ' ' << v5 << '\n'; + std::cout << v6 << '\n'; + + for (auto i : v7) + { + std::cout << i << ' '; + } + std::cout << "\n\n"; + + for (auto i : v8) + { + std::cout << i.first << ": " << i.second << '\n'; + } +} diff --git a/docs/examples/get__ValueType_const.output b/docs/examples/get__ValueType_const.output new file mode 100644 index 00000000..5cd9cd3a --- /dev/null +++ b/docs/examples/get__ValueType_const.output @@ -0,0 +1,11 @@ +1 +42 42 +17.23 17 +Hello, world! +1 2 3 4 5 + +string: "Hello, world!" +number: {"floating-point":17.23,"integer":42} +null: null +boolean: true +array: [1,2,3,4,5] diff --git a/docs/examples/get_allocator.cpp b/docs/examples/get_allocator.cpp new file mode 100644 index 00000000..35079a10 --- /dev/null +++ b/docs/examples/get_allocator.cpp @@ -0,0 +1,18 @@ +#include +#include + +using json = nlohmann::json; + +int main() +{ + auto alloc = json::get_allocator(); + using traits_t = std::allocator_traits; + + json* j = traits_t::allocate(alloc, 1); + traits_t::construct(alloc, j, "Hello, world!"); + + std::cout << *j << std::endl; + + traits_t::destroy(alloc, j); + traits_t::deallocate(alloc, j, 1); +} diff --git a/docs/examples/get_allocator.output b/docs/examples/get_allocator.output new file mode 100644 index 00000000..8effb3e8 --- /dev/null +++ b/docs/examples/get_allocator.output @@ -0,0 +1 @@ +"Hello, world!" diff --git a/docs/examples/get_binary.cpp b/docs/examples/get_binary.cpp new file mode 100644 index 00000000..617ce609 --- /dev/null +++ b/docs/examples/get_binary.cpp @@ -0,0 +1,16 @@ +#include +#include + +using json = nlohmann::json; + +int main() +{ + // create a binary vector + std::vector vec = {0xCA, 0xFE, 0xBA, 0xBE}; + + // create a binary JSON value with subtype 42 + json j = json::binary(vec, 42); + + // output type and subtype + std::cout << "type: " << j.type_name() << ", subtype: " << j.get_binary().subtype() << std::endl; +} diff --git a/docs/examples/get_binary.output b/docs/examples/get_binary.output new file mode 100644 index 00000000..74b05d23 --- /dev/null +++ b/docs/examples/get_binary.output @@ -0,0 +1 @@ +type: binary, subtype: 42 diff --git a/docs/examples/get_ptr.cpp b/docs/examples/get_ptr.cpp new file mode 100644 index 00000000..564ce0f4 --- /dev/null +++ b/docs/examples/get_ptr.cpp @@ -0,0 +1,21 @@ +#include +#include + +using json = nlohmann::json; + +int main() +{ + // create a JSON number + json value = 17; + + // explicitly getting pointers + auto p1 = value.get_ptr(); + auto p2 = value.get_ptr(); + auto p3 = value.get_ptr(); + auto p4 = value.get_ptr(); + auto p5 = value.get_ptr(); + + // print the pointees + std::cout << *p1 << ' ' << *p2 << ' ' << *p3 << ' ' << *p4 << '\n'; + std::cout << std::boolalpha << (p5 == nullptr) << '\n'; +} diff --git a/docs/examples/get_ptr.output b/docs/examples/get_ptr.output new file mode 100644 index 00000000..a15dd774 --- /dev/null +++ b/docs/examples/get_ptr.output @@ -0,0 +1,2 @@ +17 17 17 17 +true diff --git a/docs/examples/get_ref.cpp b/docs/examples/get_ref.cpp new file mode 100644 index 00000000..0183a653 --- /dev/null +++ b/docs/examples/get_ref.cpp @@ -0,0 +1,27 @@ +#include +#include + +using json = nlohmann::json; + +int main() +{ + // create a JSON number + json value = 17; + + // explicitly getting references + auto r1 = value.get_ref(); + auto r2 = value.get_ref(); + + // print the values + std::cout << r1 << ' ' << r2 << '\n'; + + // incompatible type throws exception + try + { + auto r3 = value.get_ref(); + } + catch (const json::type_error& ex) + { + std::cout << ex.what() << '\n'; + } +} diff --git a/docs/examples/get_ref.output b/docs/examples/get_ref.output new file mode 100644 index 00000000..3811afa2 --- /dev/null +++ b/docs/examples/get_ref.output @@ -0,0 +1,2 @@ +17 17 +[json.exception.type_error.303] incompatible ReferenceType for get_ref, actual type is number diff --git a/docs/examples/get_to.cpp b/docs/examples/get_to.cpp new file mode 100644 index 00000000..358c8d43 --- /dev/null +++ b/docs/examples/get_to.cpp @@ -0,0 +1,59 @@ +#include +#include +#include + +using json = nlohmann::json; + +int main() +{ + // create a JSON value with different types + json json_types = + { + {"boolean", true}, + { + "number", { + {"integer", 42}, + {"floating-point", 17.23} + } + }, + {"string", "Hello, world!"}, + {"array", {1, 2, 3, 4, 5}}, + {"null", nullptr} + }; + + bool v1; + int v2; + short v3; + float v4; + int v5; + std::string v6; + std::vector v7; + std::unordered_map v8; + + // use explicit conversions + json_types["boolean"].get_to(v1); + json_types["number"]["integer"].get_to(v2); + json_types["number"]["integer"].get_to(v3); + json_types["number"]["floating-point"].get_to(v4); + json_types["number"]["floating-point"].get_to(v5); + json_types["string"].get_to(v6); + json_types["array"].get_to(v7); + json_types.get_to(v8); + + // print the conversion results + std::cout << v1 << '\n'; + std::cout << v2 << ' ' << v3 << '\n'; + std::cout << v4 << ' ' << v5 << '\n'; + std::cout << v6 << '\n'; + + for (auto i : v7) + { + std::cout << i << ' '; + } + std::cout << "\n\n"; + + for (auto i : v8) + { + std::cout << i.first << ": " << i.second << '\n'; + } +} diff --git a/docs/examples/get_to.output b/docs/examples/get_to.output new file mode 100644 index 00000000..5cd9cd3a --- /dev/null +++ b/docs/examples/get_to.output @@ -0,0 +1,11 @@ +1 +42 42 +17.23 17 +Hello, world! +1 2 3 4 5 + +string: "Hello, world!" +number: {"floating-point":17.23,"integer":42} +null: null +boolean: true +array: [1,2,3,4,5] diff --git a/docs/examples/insert.cpp b/docs/examples/insert.cpp new file mode 100644 index 00000000..4ee60987 --- /dev/null +++ b/docs/examples/insert.cpp @@ -0,0 +1,17 @@ +#include +#include + +using json = nlohmann::json; + +int main() +{ + // create a JSON array + json v = {1, 2, 3, 4}; + + // insert number 10 before number 3 + auto new_pos = v.insert(v.begin() + 2, 10); + + // output new array and result of insert call + std::cout << *new_pos << '\n'; + std::cout << v << '\n'; +} diff --git a/docs/examples/insert.output b/docs/examples/insert.output new file mode 100644 index 00000000..ed5cab1d --- /dev/null +++ b/docs/examples/insert.output @@ -0,0 +1,2 @@ +10 +[1,2,10,3,4] diff --git a/docs/examples/insert__count.cpp b/docs/examples/insert__count.cpp new file mode 100644 index 00000000..ce33b93e --- /dev/null +++ b/docs/examples/insert__count.cpp @@ -0,0 +1,17 @@ +#include +#include + +using json = nlohmann::json; + +int main() +{ + // create a JSON array + json v = {1, 2, 3, 4}; + + // insert number 7 copies of number 7 before number 3 + auto new_pos = v.insert(v.begin() + 2, 7, 7); + + // output new array and result of insert call + std::cout << *new_pos << '\n'; + std::cout << v << '\n'; +} diff --git a/docs/examples/insert__count.output b/docs/examples/insert__count.output new file mode 100644 index 00000000..294685ac --- /dev/null +++ b/docs/examples/insert__count.output @@ -0,0 +1,2 @@ +7 +[1,2,7,7,7,7,7,7,7,3,4] diff --git a/docs/examples/insert__ilist.cpp b/docs/examples/insert__ilist.cpp new file mode 100644 index 00000000..a20766a1 --- /dev/null +++ b/docs/examples/insert__ilist.cpp @@ -0,0 +1,17 @@ +#include +#include + +using json = nlohmann::json; + +int main() +{ + // create a JSON array + json v = {1, 2, 3, 4}; + + // insert range from v2 before the end of array v + auto new_pos = v.insert(v.end(), {7, 8, 9}); + + // output new array and result of insert call + std::cout << *new_pos << '\n'; + std::cout << v << '\n'; +} diff --git a/docs/examples/insert__ilist.output b/docs/examples/insert__ilist.output new file mode 100644 index 00000000..b2fc7eeb --- /dev/null +++ b/docs/examples/insert__ilist.output @@ -0,0 +1,2 @@ +7 +[1,2,3,4,7,8,9] diff --git a/docs/examples/insert__range.cpp b/docs/examples/insert__range.cpp new file mode 100644 index 00000000..92fe63b0 --- /dev/null +++ b/docs/examples/insert__range.cpp @@ -0,0 +1,20 @@ +#include +#include + +using json = nlohmann::json; + +int main() +{ + // create a JSON array + json v = {1, 2, 3, 4}; + + // create a JSON array to copy values from + json v2 = {"one", "two", "three", "four"}; + + // insert range from v2 before the end of array v + auto new_pos = v.insert(v.end(), v2.begin(), v2.end()); + + // output new array and result of insert call + std::cout << *new_pos << '\n'; + std::cout << v << '\n'; +} diff --git a/docs/examples/insert__range.output b/docs/examples/insert__range.output new file mode 100644 index 00000000..d50e9f63 --- /dev/null +++ b/docs/examples/insert__range.output @@ -0,0 +1,2 @@ +"one" +[1,2,3,4,"one","two","three","four"] diff --git a/docs/examples/insert__range_object.cpp b/docs/examples/insert__range_object.cpp new file mode 100644 index 00000000..97373d3b --- /dev/null +++ b/docs/examples/insert__range_object.cpp @@ -0,0 +1,21 @@ +#include +#include + +using json = nlohmann::json; + +int main() +{ + // create two JSON objects + json j1 = {{"one", "eins"}, {"two", "zwei"}}; + json j2 = {{"eleven", "elf"}, {"seventeen", "siebzehn"}}; + + // output objects + std::cout << j1 << '\n'; + std::cout << j2 << '\n'; + + // insert range from j2 to j1 + j1.insert(j2.begin(), j2.end()); + + // output result of insert call + std::cout << j1 << '\n'; +} diff --git a/docs/examples/insert__range_object.output b/docs/examples/insert__range_object.output new file mode 100644 index 00000000..a5985158 --- /dev/null +++ b/docs/examples/insert__range_object.output @@ -0,0 +1,3 @@ +{"one":"eins","two":"zwei"} +{"eleven":"elf","seventeen":"siebzehn"} +{"eleven":"elf","one":"eins","seventeen":"siebzehn","two":"zwei"} diff --git a/docs/examples/invalid_iterator.cpp b/docs/examples/invalid_iterator.cpp new file mode 100644 index 00000000..ecde12e6 --- /dev/null +++ b/docs/examples/invalid_iterator.cpp @@ -0,0 +1,21 @@ +#include +#include + +using json = nlohmann::json; + +int main() +{ + try + { + // calling iterator::key() on non-object iterator + json j = "string"; + json::iterator it = j.begin(); + auto k = it.key(); + } + catch (const json::invalid_iterator& e) + { + // output exception information + std::cout << "message: " << e.what() << '\n' + << "exception id: " << e.id << std::endl; + } +} diff --git a/docs/examples/invalid_iterator.output b/docs/examples/invalid_iterator.output new file mode 100644 index 00000000..8668c16d --- /dev/null +++ b/docs/examples/invalid_iterator.output @@ -0,0 +1,2 @@ +message: [json.exception.invalid_iterator.207] cannot use key() for non-object iterators +exception id: 207 diff --git a/docs/examples/is_array.cpp b/docs/examples/is_array.cpp new file mode 100644 index 00000000..8ecc4503 --- /dev/null +++ b/docs/examples/is_array.cpp @@ -0,0 +1,30 @@ +#include +#include + +using json = nlohmann::json; + +int main() +{ + // create JSON values + json j_null; + json j_boolean = true; + json j_number_integer = 17; + json j_number_unsigned_integer = 12345678987654321u; + json j_number_float = 23.42; + json j_object = {{"one", 1}, {"two", 2}}; + json j_array = {1, 2, 4, 8, 16}; + json j_string = "Hello, world"; + json j_binary = json::binary({1, 2, 3}); + + // call is_array() + std::cout << std::boolalpha; + std::cout << j_null.is_array() << '\n'; + std::cout << j_boolean.is_array() << '\n'; + std::cout << j_number_integer.is_array() << '\n'; + std::cout << j_number_unsigned_integer.is_array() << '\n'; + std::cout << j_number_float.is_array() << '\n'; + std::cout << j_object.is_array() << '\n'; + std::cout << j_array.is_array() << '\n'; + std::cout << j_string.is_array() << '\n'; + std::cout << j_binary.is_array() << '\n'; +} diff --git a/docs/examples/is_array.output b/docs/examples/is_array.output new file mode 100644 index 00000000..7b7ef3f1 --- /dev/null +++ b/docs/examples/is_array.output @@ -0,0 +1,9 @@ +false +false +false +false +false +false +true +false +false diff --git a/docs/examples/is_binary.cpp b/docs/examples/is_binary.cpp new file mode 100644 index 00000000..d7f049ec --- /dev/null +++ b/docs/examples/is_binary.cpp @@ -0,0 +1,30 @@ +#include +#include + +using json = nlohmann::json; + +int main() +{ + // create JSON values + json j_null; + json j_boolean = true; + json j_number_integer = 17; + json j_number_unsigned_integer = 12345678987654321u; + json j_number_float = 23.42; + json j_object = {{"one", 1}, {"two", 2}}; + json j_array = {1, 2, 4, 8, 16}; + json j_string = "Hello, world"; + json j_binary = json::binary({1, 2, 3}); + + // call is_binary() + std::cout << std::boolalpha; + std::cout << j_null.is_binary() << '\n'; + std::cout << j_boolean.is_binary() << '\n'; + std::cout << j_number_integer.is_binary() << '\n'; + std::cout << j_number_unsigned_integer.is_binary() << '\n'; + std::cout << j_number_float.is_binary() << '\n'; + std::cout << j_object.is_binary() << '\n'; + std::cout << j_array.is_binary() << '\n'; + std::cout << j_string.is_binary() << '\n'; + std::cout << j_binary.is_binary() << '\n'; +} diff --git a/docs/examples/is_binary.output b/docs/examples/is_binary.output new file mode 100644 index 00000000..505e76e4 --- /dev/null +++ b/docs/examples/is_binary.output @@ -0,0 +1,9 @@ +false +false +false +false +false +false +false +false +true diff --git a/docs/examples/is_boolean.cpp b/docs/examples/is_boolean.cpp new file mode 100644 index 00000000..0b798195 --- /dev/null +++ b/docs/examples/is_boolean.cpp @@ -0,0 +1,30 @@ +#include +#include + +using json = nlohmann::json; + +int main() +{ + // create JSON values + json j_null; + json j_boolean = true; + json j_number_integer = 17; + json j_number_unsigned_integer = 12345678987654321u; + json j_number_float = 23.42; + json j_object = {{"one", 1}, {"two", 2}}; + json j_array = {1, 2, 4, 8, 16}; + json j_string = "Hello, world"; + json j_binary = json::binary({1, 2, 3}); + + // call is_boolean() + std::cout << std::boolalpha; + std::cout << j_null.is_boolean() << '\n'; + std::cout << j_boolean.is_boolean() << '\n'; + std::cout << j_number_integer.is_boolean() << '\n'; + std::cout << j_number_unsigned_integer.is_boolean() << '\n'; + std::cout << j_number_float.is_boolean() << '\n'; + std::cout << j_object.is_boolean() << '\n'; + std::cout << j_array.is_boolean() << '\n'; + std::cout << j_string.is_boolean() << '\n'; + std::cout << j_binary.is_boolean() << '\n'; +} diff --git a/docs/examples/is_boolean.output b/docs/examples/is_boolean.output new file mode 100644 index 00000000..eace89d2 --- /dev/null +++ b/docs/examples/is_boolean.output @@ -0,0 +1,9 @@ +false +true +false +false +false +false +false +false +false diff --git a/docs/examples/is_discarded.cpp b/docs/examples/is_discarded.cpp new file mode 100644 index 00000000..09016655 --- /dev/null +++ b/docs/examples/is_discarded.cpp @@ -0,0 +1,30 @@ +#include +#include + +using json = nlohmann::json; + +int main() +{ + // create JSON values + json j_null; + json j_boolean = true; + json j_number_integer = 17; + json j_number_unsigned_integer = 12345678987654321u; + json j_number_float = 23.42; + json j_object = {{"one", 1}, {"two", 2}}; + json j_array = {1, 2, 4, 8, 16}; + json j_string = "Hello, world"; + json j_binary = json::binary({1, 2, 3}); + + // call is_discarded() + std::cout << std::boolalpha; + std::cout << j_null.is_discarded() << '\n'; + std::cout << j_boolean.is_discarded() << '\n'; + std::cout << j_number_integer.is_discarded() << '\n'; + std::cout << j_number_unsigned_integer.is_discarded() << '\n'; + std::cout << j_number_float.is_discarded() << '\n'; + std::cout << j_object.is_discarded() << '\n'; + std::cout << j_array.is_discarded() << '\n'; + std::cout << j_string.is_discarded() << '\n'; + std::cout << j_binary.is_discarded() << '\n'; +} diff --git a/docs/examples/is_discarded.output b/docs/examples/is_discarded.output new file mode 100644 index 00000000..14718f64 --- /dev/null +++ b/docs/examples/is_discarded.output @@ -0,0 +1,9 @@ +false +false +false +false +false +false +false +false +false diff --git a/docs/examples/is_null.cpp b/docs/examples/is_null.cpp new file mode 100644 index 00000000..8a843326 --- /dev/null +++ b/docs/examples/is_null.cpp @@ -0,0 +1,30 @@ +#include +#include + +using json = nlohmann::json; + +int main() +{ + // create JSON values + json j_null; + json j_boolean = true; + json j_number_integer = 17; + json j_number_unsigned_integer = 12345678987654321u; + json j_number_float = 23.42; + json j_object = {{"one", 1}, {"two", 2}}; + json j_array = {1, 2, 4, 8, 16}; + json j_string = "Hello, world"; + json j_binary = json::binary({1, 2, 3}); + + // call is_null() + std::cout << std::boolalpha; + std::cout << j_null.is_null() << '\n'; + std::cout << j_boolean.is_null() << '\n'; + std::cout << j_number_integer.is_null() << '\n'; + std::cout << j_number_unsigned_integer.is_null() << '\n'; + std::cout << j_number_float.is_null() << '\n'; + std::cout << j_object.is_null() << '\n'; + std::cout << j_array.is_null() << '\n'; + std::cout << j_string.is_null() << '\n'; + std::cout << j_binary.is_null() << '\n'; +} diff --git a/docs/examples/is_null.output b/docs/examples/is_null.output new file mode 100644 index 00000000..42bbee2a --- /dev/null +++ b/docs/examples/is_null.output @@ -0,0 +1,9 @@ +true +false +false +false +false +false +false +false +false diff --git a/docs/examples/is_number.cpp b/docs/examples/is_number.cpp new file mode 100644 index 00000000..f107a048 --- /dev/null +++ b/docs/examples/is_number.cpp @@ -0,0 +1,30 @@ +#include +#include + +using json = nlohmann::json; + +int main() +{ + // create JSON values + json j_null; + json j_boolean = true; + json j_number_integer = 17; + json j_number_unsigned_integer = 12345678987654321u; + json j_number_float = 23.42; + json j_object = {{"one", 1}, {"two", 2}}; + json j_array = {1, 2, 4, 8, 16}; + json j_string = "Hello, world"; + json j_binary = json::binary({1, 2, 3}); + + // call is_number() + std::cout << std::boolalpha; + std::cout << j_null.is_number() << '\n'; + std::cout << j_boolean.is_number() << '\n'; + std::cout << j_number_integer.is_number() << '\n'; + std::cout << j_number_unsigned_integer.is_number() << '\n'; + std::cout << j_number_float.is_number() << '\n'; + std::cout << j_object.is_number() << '\n'; + std::cout << j_array.is_number() << '\n'; + std::cout << j_string.is_number() << '\n'; + std::cout << j_binary.is_number() << '\n'; +} diff --git a/docs/examples/is_number.output b/docs/examples/is_number.output new file mode 100644 index 00000000..53ef340b --- /dev/null +++ b/docs/examples/is_number.output @@ -0,0 +1,9 @@ +false +false +true +true +true +false +false +false +false diff --git a/docs/examples/is_number_float.cpp b/docs/examples/is_number_float.cpp new file mode 100644 index 00000000..bba2b446 --- /dev/null +++ b/docs/examples/is_number_float.cpp @@ -0,0 +1,30 @@ +#include +#include + +using json = nlohmann::json; + +int main() +{ + // create JSON values + json j_null; + json j_boolean = true; + json j_number_integer = 17; + json j_number_unsigned_integer = 12345678987654321u; + json j_number_float = 23.42; + json j_object = {{"one", 1}, {"two", 2}}; + json j_array = {1, 2, 4, 8, 16}; + json j_string = "Hello, world"; + json j_binary = json::binary({1, 2, 3}); + + // call is_number_float() + std::cout << std::boolalpha; + std::cout << j_null.is_number_float() << '\n'; + std::cout << j_boolean.is_number_float() << '\n'; + std::cout << j_number_integer.is_number_float() << '\n'; + std::cout << j_number_unsigned_integer.is_number_float() << '\n'; + std::cout << j_number_float.is_number_float() << '\n'; + std::cout << j_object.is_number_float() << '\n'; + std::cout << j_array.is_number_float() << '\n'; + std::cout << j_string.is_number_float() << '\n'; + std::cout << j_binary.is_number_float() << '\n'; +} diff --git a/docs/examples/is_number_float.output b/docs/examples/is_number_float.output new file mode 100644 index 00000000..0e64601a --- /dev/null +++ b/docs/examples/is_number_float.output @@ -0,0 +1,9 @@ +false +false +false +false +true +false +false +false +false diff --git a/docs/examples/is_number_integer.cpp b/docs/examples/is_number_integer.cpp new file mode 100644 index 00000000..8d6a5ae1 --- /dev/null +++ b/docs/examples/is_number_integer.cpp @@ -0,0 +1,30 @@ +#include +#include + +using json = nlohmann::json; + +int main() +{ + // create JSON values + json j_null; + json j_boolean = true; + json j_number_integer = 17; + json j_number_unsigned_integer = 12345678987654321u; + json j_number_float = 23.42; + json j_object = {{"one", 1}, {"two", 2}}; + json j_array = {1, 2, 4, 8, 16}; + json j_string = "Hello, world"; + json j_binary = json::binary({1, 2, 3}); + + // call is_number_integer() + std::cout << std::boolalpha; + std::cout << j_null.is_number_integer() << '\n'; + std::cout << j_boolean.is_number_integer() << '\n'; + std::cout << j_number_integer.is_number_integer() << '\n'; + std::cout << j_number_unsigned_integer.is_number_integer() << '\n'; + std::cout << j_number_float.is_number_integer() << '\n'; + std::cout << j_object.is_number_integer() << '\n'; + std::cout << j_array.is_number_integer() << '\n'; + std::cout << j_string.is_number_integer() << '\n'; + std::cout << j_binary.is_number_integer() << '\n'; +} diff --git a/docs/examples/is_number_integer.output b/docs/examples/is_number_integer.output new file mode 100644 index 00000000..c1df310f --- /dev/null +++ b/docs/examples/is_number_integer.output @@ -0,0 +1,9 @@ +false +false +true +true +false +false +false +false +false diff --git a/docs/examples/is_number_unsigned.cpp b/docs/examples/is_number_unsigned.cpp new file mode 100644 index 00000000..b52ac6b3 --- /dev/null +++ b/docs/examples/is_number_unsigned.cpp @@ -0,0 +1,30 @@ +#include +#include + +using json = nlohmann::json; + +int main() +{ + // create JSON values + json j_null; + json j_boolean = true; + json j_number_integer = 17; + json j_number_unsigned_integer = 12345678987654321u; + json j_number_float = 23.42; + json j_object = {{"one", 1}, {"two", 2}}; + json j_array = {1, 2, 4, 8, 16}; + json j_string = "Hello, world"; + json j_binary = json::binary({1, 2, 3}); + + // call is_number_unsigned() + std::cout << std::boolalpha; + std::cout << j_null.is_number_unsigned() << '\n'; + std::cout << j_boolean.is_number_unsigned() << '\n'; + std::cout << j_number_integer.is_number_unsigned() << '\n'; + std::cout << j_number_unsigned_integer.is_number_unsigned() << '\n'; + std::cout << j_number_float.is_number_unsigned() << '\n'; + std::cout << j_object.is_number_unsigned() << '\n'; + std::cout << j_array.is_number_unsigned() << '\n'; + std::cout << j_string.is_number_unsigned() << '\n'; + std::cout << j_binary.is_number_unsigned() << '\n'; +} diff --git a/docs/examples/is_number_unsigned.output b/docs/examples/is_number_unsigned.output new file mode 100644 index 00000000..e6059d48 --- /dev/null +++ b/docs/examples/is_number_unsigned.output @@ -0,0 +1,9 @@ +false +false +false +true +false +false +false +false +false diff --git a/docs/examples/is_object.cpp b/docs/examples/is_object.cpp new file mode 100644 index 00000000..a0216fd2 --- /dev/null +++ b/docs/examples/is_object.cpp @@ -0,0 +1,30 @@ +#include +#include + +using json = nlohmann::json; + +int main() +{ + // create JSON values + json j_null; + json j_boolean = true; + json j_number_integer = 17; + json j_number_float = 23.42; + json j_number_unsigned_integer = 12345678987654321u; + json j_object = {{"one", 1}, {"two", 2}}; + json j_array = {1, 2, 4, 8, 16}; + json j_string = "Hello, world"; + json j_binary = json::binary({1, 2, 3}); + + // call is_object() + std::cout << std::boolalpha; + std::cout << j_null.is_object() << '\n'; + std::cout << j_boolean.is_object() << '\n'; + std::cout << j_number_integer.is_object() << '\n'; + std::cout << j_number_unsigned_integer.is_object() << '\n'; + std::cout << j_number_float.is_object() << '\n'; + std::cout << j_object.is_object() << '\n'; + std::cout << j_array.is_object() << '\n'; + std::cout << j_string.is_object() << '\n'; + std::cout << j_binary.is_object() << '\n'; +} diff --git a/docs/examples/is_object.output b/docs/examples/is_object.output new file mode 100644 index 00000000..d9a429f8 --- /dev/null +++ b/docs/examples/is_object.output @@ -0,0 +1,9 @@ +false +false +false +false +false +true +false +false +false diff --git a/docs/examples/is_primitive.cpp b/docs/examples/is_primitive.cpp new file mode 100644 index 00000000..af3968e8 --- /dev/null +++ b/docs/examples/is_primitive.cpp @@ -0,0 +1,30 @@ +#include +#include + +using json = nlohmann::json; + +int main() +{ + // create JSON values + json j_null; + json j_boolean = true; + json j_number_integer = 17; + json j_number_float = 23.42; + json j_number_unsigned_integer = 12345678987654321u; + json j_object = {{"one", 1}, {"two", 2}}; + json j_array = {1, 2, 4, 8, 16}; + json j_string = "Hello, world"; + json j_binary = json::binary({1, 2, 3}); + + // call is_primitive() + std::cout << std::boolalpha; + std::cout << j_null.is_primitive() << '\n'; + std::cout << j_boolean.is_primitive() << '\n'; + std::cout << j_number_integer.is_primitive() << '\n'; + std::cout << j_number_unsigned_integer.is_primitive() << '\n'; + std::cout << j_number_float.is_primitive() << '\n'; + std::cout << j_object.is_primitive() << '\n'; + std::cout << j_array.is_primitive() << '\n'; + std::cout << j_string.is_primitive() << '\n'; + std::cout << j_binary.is_primitive() << '\n'; +} diff --git a/docs/examples/is_primitive.output b/docs/examples/is_primitive.output new file mode 100644 index 00000000..77af24c0 --- /dev/null +++ b/docs/examples/is_primitive.output @@ -0,0 +1,9 @@ +true +true +true +true +true +false +false +true +true diff --git a/docs/examples/is_string.cpp b/docs/examples/is_string.cpp new file mode 100644 index 00000000..c89f550b --- /dev/null +++ b/docs/examples/is_string.cpp @@ -0,0 +1,30 @@ +#include +#include + +using json = nlohmann::json; + +int main() +{ + // create JSON values + json j_null; + json j_boolean = true; + json j_number_integer = 17; + json j_number_float = 23.42; + json j_number_unsigned_integer = 12345678987654321u; + json j_object = {{"one", 1}, {"two", 2}}; + json j_array = {1, 2, 4, 8, 16}; + json j_string = "Hello, world"; + json j_binary = json::binary({1, 2, 3}); + + // call is_string() + std::cout << std::boolalpha; + std::cout << j_null.is_string() << '\n'; + std::cout << j_boolean.is_string() << '\n'; + std::cout << j_number_integer.is_string() << '\n'; + std::cout << j_number_unsigned_integer.is_string() << '\n'; + std::cout << j_number_float.is_string() << '\n'; + std::cout << j_object.is_string() << '\n'; + std::cout << j_array.is_string() << '\n'; + std::cout << j_string.is_string() << '\n'; + std::cout << j_binary.is_string() << '\n'; +} diff --git a/docs/examples/is_string.output b/docs/examples/is_string.output new file mode 100644 index 00000000..6446f187 --- /dev/null +++ b/docs/examples/is_string.output @@ -0,0 +1,9 @@ +false +false +false +false +false +false +false +true +false diff --git a/docs/examples/is_structured.cpp b/docs/examples/is_structured.cpp new file mode 100644 index 00000000..41947b1b --- /dev/null +++ b/docs/examples/is_structured.cpp @@ -0,0 +1,30 @@ +#include +#include + +using json = nlohmann::json; + +int main() +{ + // create JSON values + json j_null; + json j_boolean = true; + json j_number_integer = 17; + json j_number_float = 23.42; + json j_number_unsigned_integer = 12345678987654321u; + json j_object = {{"one", 1}, {"two", 2}}; + json j_array = {1, 2, 4, 8, 16}; + json j_string = "Hello, world"; + json j_binary = json::binary({1, 2, 3}); + + // call is_structured() + std::cout << std::boolalpha; + std::cout << j_null.is_structured() << '\n'; + std::cout << j_boolean.is_structured() << '\n'; + std::cout << j_number_integer.is_structured() << '\n'; + std::cout << j_number_unsigned_integer.is_structured() << '\n'; + std::cout << j_number_float.is_structured() << '\n'; + std::cout << j_object.is_structured() << '\n'; + std::cout << j_array.is_structured() << '\n'; + std::cout << j_string.is_structured() << '\n'; + std::cout << j_binary.is_structured() << '\n'; +} diff --git a/docs/examples/is_structured.output b/docs/examples/is_structured.output new file mode 100644 index 00000000..625c124b --- /dev/null +++ b/docs/examples/is_structured.output @@ -0,0 +1,9 @@ +false +false +false +false +false +true +true +false +false diff --git a/docs/examples/items.cpp b/docs/examples/items.cpp new file mode 100644 index 00000000..9cd2b51b --- /dev/null +++ b/docs/examples/items.cpp @@ -0,0 +1,23 @@ +#include +#include + +using json = nlohmann::json; + +int main() +{ + // create JSON values + json j_object = {{"one", 1}, {"two", 2}}; + json j_array = {1, 2, 4, 8, 16}; + + // example for an object + for (auto& x : j_object.items()) + { + std::cout << "key: " << x.key() << ", value: " << x.value() << '\n'; + } + + // example for an array + for (auto& x : j_array.items()) + { + std::cout << "key: " << x.key() << ", value: " << x.value() << '\n'; + } +} diff --git a/docs/examples/items.output b/docs/examples/items.output new file mode 100644 index 00000000..89b09f52 --- /dev/null +++ b/docs/examples/items.output @@ -0,0 +1,7 @@ +key: one, value: 1 +key: two, value: 2 +key: 0, value: 1 +key: 1, value: 2 +key: 2, value: 4 +key: 3, value: 8 +key: 4, value: 16 diff --git a/docs/examples/json_base_class_t.cpp b/docs/examples/json_base_class_t.cpp new file mode 100644 index 00000000..d993522a --- /dev/null +++ b/docs/examples/json_base_class_t.cpp @@ -0,0 +1,88 @@ +#include +#include + +class visitor_adaptor_with_metadata +{ + public: + template + void visit(const Fnc& fnc) const; + + int metadata = 42; + private: + template + void do_visit(const Ptr& ptr, const Fnc& fnc) const; +}; + +using json = nlohmann::basic_json < + std::map, + std::vector, + std::string, + bool, + std::int64_t, + std::uint64_t, + double, + std::allocator, + nlohmann::adl_serializer, + std::vector, + visitor_adaptor_with_metadata + >; + +template +void visitor_adaptor_with_metadata::visit(const Fnc& fnc) const +{ + do_visit(json::json_pointer{}, fnc); +} + +template +void visitor_adaptor_with_metadata::do_visit(const Ptr& ptr, const Fnc& fnc) const +{ + using value_t = nlohmann::detail::value_t; + const json& j = *static_cast(this); + switch (j.type()) + { + case value_t::object: + fnc(ptr, j); + for (const auto& entry : j.items()) + { + entry.value().do_visit(ptr / entry.key(), fnc); + } + break; + case value_t::array: + fnc(ptr, j); + for (std::size_t i = 0; i < j.size(); ++i) + { + j.at(i).do_visit(ptr / std::to_string(i), fnc); + } + break; + case value_t::null: + case value_t::string: + case value_t::boolean: + case value_t::number_integer: + case value_t::number_unsigned: + case value_t::number_float: + case value_t::binary: + fnc(ptr, j); + break; + case value_t::discarded: + default: + break; + } +} + +int main() +{ + // create a json object + json j; + j["null"]; + j["object"]["uint"] = 1U; + j["object"].metadata = 21; + + // visit and output + j.visit( + [&](const json::json_pointer & p, + const json & j) + { + std::cout << (p.empty() ? std::string{"/"} : p.to_string()) + << " - metadata = " << j.metadata << " -> " << j.dump() << '\n'; + }); +} diff --git a/docs/examples/json_base_class_t.output b/docs/examples/json_base_class_t.output new file mode 100644 index 00000000..83ce1f69 --- /dev/null +++ b/docs/examples/json_base_class_t.output @@ -0,0 +1,4 @@ +/ - metadata = 42 -> {"null":null,"object":{"uint":1}} +/null - metadata = 42 -> null +/object - metadata = 21 -> {"uint":1} +/object/uint - metadata = 42 -> 1 diff --git a/docs/examples/json_lines.cpp b/docs/examples/json_lines.cpp new file mode 100644 index 00000000..233c81a4 --- /dev/null +++ b/docs/examples/json_lines.cpp @@ -0,0 +1,22 @@ +#include +#include +#include + +using json = nlohmann::json; + +int main() +{ + // JSON Lines (see https://jsonlines.org) + std::stringstream input; + input << R"({"name": "Gilbert", "wins": [["straight", "7♣"], ["one pair", "10♥"]]} +{"name": "Alexa", "wins": [["two pair", "4♠"], ["two pair", "9♠"]]} +{"name": "May", "wins": []} +{"name": "Deloise", "wins": [["three of a kind", "5♣"]]} +)"; + + std::string line; + while (std::getline(input, line)) + { + std::cout << json::parse(line) << std::endl; + } +} diff --git a/docs/examples/json_lines.output b/docs/examples/json_lines.output new file mode 100644 index 00000000..1b412248 --- /dev/null +++ b/docs/examples/json_lines.output @@ -0,0 +1,4 @@ +{"name":"Gilbert","wins":[["straight","7♣"],["one pair","10♥"]]} +{"name":"Alexa","wins":[["two pair","4♠"],["two pair","9♠"]]} +{"name":"May","wins":[]} +{"name":"Deloise","wins":[["three of a kind","5♣"]]} diff --git a/docs/examples/json_pointer.cpp b/docs/examples/json_pointer.cpp new file mode 100644 index 00000000..8705cf49 --- /dev/null +++ b/docs/examples/json_pointer.cpp @@ -0,0 +1,47 @@ +#include +#include + +using json = nlohmann::json; + +int main() +{ + // correct JSON pointers + json::json_pointer p1; + json::json_pointer p2(""); + json::json_pointer p3("/"); + json::json_pointer p4("//"); + json::json_pointer p5("/foo/bar"); + json::json_pointer p6("/foo/bar/-"); + json::json_pointer p7("/foo/~0"); + json::json_pointer p8("/foo/~1"); + + // error: JSON pointer does not begin with a slash + try + { + json::json_pointer p9("foo"); + } + catch (const json::parse_error& e) + { + std::cout << e.what() << '\n'; + } + + // error: JSON pointer uses escape symbol ~ not followed by 0 or 1 + try + { + json::json_pointer p10("/foo/~"); + } + catch (const json::parse_error& e) + { + std::cout << e.what() << '\n'; + } + + // error: JSON pointer uses escape symbol ~ not followed by 0 or 1 + try + { + json::json_pointer p11("/foo/~3"); + } + catch (const json::parse_error& e) + { + std::cout << e.what() << '\n'; + } +} diff --git a/docs/examples/json_pointer.output b/docs/examples/json_pointer.output new file mode 100644 index 00000000..9e027d6d --- /dev/null +++ b/docs/examples/json_pointer.output @@ -0,0 +1,3 @@ +[json.exception.parse_error.107] parse error at byte 1: JSON pointer must be empty or begin with '/' - was: 'foo' +[json.exception.parse_error.108] parse error: escape character '~' must be followed with '0' or '1' +[json.exception.parse_error.108] parse error: escape character '~' must be followed with '0' or '1' diff --git a/docs/examples/json_pointer__back.cpp b/docs/examples/json_pointer__back.cpp new file mode 100644 index 00000000..dd3b210b --- /dev/null +++ b/docs/examples/json_pointer__back.cpp @@ -0,0 +1,15 @@ +#include +#include + +using json = nlohmann::json; + +int main() +{ + // different JSON Pointers + json::json_pointer ptr1("/foo"); + json::json_pointer ptr2("/foo/0"); + + // call empty() + std::cout << "last reference token of \"" << ptr1 << "\" is \"" << ptr1.back() << "\"\n" + << "last reference token of \"" << ptr2 << "\" is \"" << ptr2.back() << "\"" << std::endl; +} diff --git a/docs/examples/json_pointer__back.output b/docs/examples/json_pointer__back.output new file mode 100644 index 00000000..a89357b4 --- /dev/null +++ b/docs/examples/json_pointer__back.output @@ -0,0 +1,2 @@ +last reference token of "/foo" is "foo" +last reference token of "/foo/0" is "0" diff --git a/docs/examples/json_pointer__empty.cpp b/docs/examples/json_pointer__empty.cpp new file mode 100644 index 00000000..57257e8b --- /dev/null +++ b/docs/examples/json_pointer__empty.cpp @@ -0,0 +1,20 @@ +#include +#include + +using json = nlohmann::json; + +int main() +{ + // different JSON Pointers + json::json_pointer ptr0; + json::json_pointer ptr1(""); + json::json_pointer ptr2("/foo"); + json::json_pointer ptr3("/foo/0"); + + // call empty() + std::cout << std::boolalpha + << "\"" << ptr0 << "\": " << ptr0.empty() << '\n' + << "\"" << ptr1 << "\": " << ptr1.empty() << '\n' + << "\"" << ptr2 << "\": " << ptr2.empty() << '\n' + << "\"" << ptr3 << "\": " << ptr3.empty() << std::endl; +} diff --git a/docs/examples/json_pointer__empty.output b/docs/examples/json_pointer__empty.output new file mode 100644 index 00000000..a7ee49c1 --- /dev/null +++ b/docs/examples/json_pointer__empty.output @@ -0,0 +1,4 @@ +"": true +"": true +"/foo": false +"/foo/0": false diff --git a/docs/examples/json_pointer__operator__equal.cpp b/docs/examples/json_pointer__operator__equal.cpp new file mode 100644 index 00000000..dce6df03 --- /dev/null +++ b/docs/examples/json_pointer__operator__equal.cpp @@ -0,0 +1,19 @@ +#include +#include + +using json = nlohmann::json; + +int main() +{ + // different JSON pointers + json::json_pointer ptr0; + json::json_pointer ptr1(""); + json::json_pointer ptr2("/foo"); + + // compare JSON pointers + std::cout << std::boolalpha + << "\"" << ptr0 << "\" == \"" << ptr0 << "\": " << (ptr0 == ptr0) << '\n' + << "\"" << ptr0 << "\" == \"" << ptr1 << "\": " << (ptr0 == ptr1) << '\n' + << "\"" << ptr1 << "\" == \"" << ptr2 << "\": " << (ptr1 == ptr2) << '\n' + << "\"" << ptr2 << "\" == \"" << ptr2 << "\": " << (ptr2 == ptr2) << std::endl; +} diff --git a/docs/examples/json_pointer__operator__equal.output b/docs/examples/json_pointer__operator__equal.output new file mode 100644 index 00000000..9a761258 --- /dev/null +++ b/docs/examples/json_pointer__operator__equal.output @@ -0,0 +1,4 @@ +"" == "": true +"" == "": true +"" == "/foo": false +"/foo" == "/foo": true diff --git a/docs/examples/json_pointer__operator__equal_stringtype.cpp b/docs/examples/json_pointer__operator__equal_stringtype.cpp new file mode 100644 index 00000000..af8ec5a2 --- /dev/null +++ b/docs/examples/json_pointer__operator__equal_stringtype.cpp @@ -0,0 +1,33 @@ +#include +#include +#include + +using json = nlohmann::json; + +int main() +{ + // different JSON pointers + json::json_pointer ptr0; + json::json_pointer ptr1(""); + json::json_pointer ptr2("/foo"); + + // different strings + std::string str0(""); + std::string str1("/foo"); + std::string str2("bar"); + + // compare JSON pointers and strings + std::cout << std::boolalpha + << "\"" << ptr0 << "\" == \"" << str0 << "\": " << (ptr0 == str0) << '\n' + << "\"" << str0 << "\" == \"" << ptr1 << "\": " << (str0 == ptr1) << '\n' + << "\"" << ptr2 << "\" == \"" << str1 << "\": " << (ptr2 == str1) << std::endl; + + try + { + std::cout << "\"" << str2 << "\" == \"" << ptr2 << "\": " << (str2 == ptr2) << std::endl; + } + catch (const json::parse_error& ex) + { + std::cout << ex.what() << std::endl; + } +} diff --git a/docs/examples/json_pointer__operator__equal_stringtype.output b/docs/examples/json_pointer__operator__equal_stringtype.output new file mode 100644 index 00000000..7fb299d3 --- /dev/null +++ b/docs/examples/json_pointer__operator__equal_stringtype.output @@ -0,0 +1,4 @@ +"" == "": true +"" == "": true +"/foo" == "/foo": true +"bar" == "/foo": [json.exception.parse_error.107] parse error at byte 1: JSON pointer must be empty or begin with '/' - was: 'bar' diff --git a/docs/examples/json_pointer__operator__notequal.cpp b/docs/examples/json_pointer__operator__notequal.cpp new file mode 100644 index 00000000..9bbdd531 --- /dev/null +++ b/docs/examples/json_pointer__operator__notequal.cpp @@ -0,0 +1,19 @@ +#include +#include + +using json = nlohmann::json; + +int main() +{ + // different JSON pointers + json::json_pointer ptr0; + json::json_pointer ptr1(""); + json::json_pointer ptr2("/foo"); + + // compare JSON pointers + std::cout << std::boolalpha + << "\"" << ptr0 << "\" != \"" << ptr0 << "\": " << (ptr0 != ptr0) << '\n' + << "\"" << ptr0 << "\" != \"" << ptr1 << "\": " << (ptr0 != ptr1) << '\n' + << "\"" << ptr1 << "\" != \"" << ptr2 << "\": " << (ptr1 != ptr2) << '\n' + << "\"" << ptr2 << "\" != \"" << ptr2 << "\": " << (ptr2 != ptr2) << std::endl; +} diff --git a/docs/examples/json_pointer__operator__notequal.output b/docs/examples/json_pointer__operator__notequal.output new file mode 100644 index 00000000..de891f0c --- /dev/null +++ b/docs/examples/json_pointer__operator__notequal.output @@ -0,0 +1,4 @@ +"" != "": false +"" != "": false +"" != "/foo": true +"/foo" != "/foo": false diff --git a/docs/examples/json_pointer__operator__notequal_stringtype.cpp b/docs/examples/json_pointer__operator__notequal_stringtype.cpp new file mode 100644 index 00000000..b9b89872 --- /dev/null +++ b/docs/examples/json_pointer__operator__notequal_stringtype.cpp @@ -0,0 +1,32 @@ +#include +#include + +using json = nlohmann::json; + +int main() +{ + // different JSON pointers + json::json_pointer ptr0; + json::json_pointer ptr1(""); + json::json_pointer ptr2("/foo"); + + // different strings + std::string str0(""); + std::string str1("/foo"); + std::string str2("bar"); + + // compare JSON pointers and strings + std::cout << std::boolalpha + << "\"" << ptr0 << "\" != \"" << str0 << "\": " << (ptr0 != str0) << '\n' + << "\"" << str0 << "\" != \"" << ptr1 << "\": " << (str0 != ptr1) << '\n' + << "\"" << ptr2 << "\" != \"" << str1 << "\": " << (ptr2 != str1) << std::endl; + + try + { + std::cout << "\"" << str2 << "\" != \"" << ptr2 << "\": " << (str2 != ptr2) << std::endl; + } + catch (const json::parse_error& ex) + { + std::cout << ex.what() << std::endl; + } +} diff --git a/docs/examples/json_pointer__operator__notequal_stringtype.output b/docs/examples/json_pointer__operator__notequal_stringtype.output new file mode 100644 index 00000000..61331b75 --- /dev/null +++ b/docs/examples/json_pointer__operator__notequal_stringtype.output @@ -0,0 +1,4 @@ +"" != "": false +"" != "": false +"/foo" != "/foo": false +"bar" != "/foo": [json.exception.parse_error.107] parse error at byte 1: JSON pointer must be empty or begin with '/' - was: 'bar' diff --git a/docs/examples/json_pointer__operator_add.cpp b/docs/examples/json_pointer__operator_add.cpp new file mode 100644 index 00000000..14bd7456 --- /dev/null +++ b/docs/examples/json_pointer__operator_add.cpp @@ -0,0 +1,23 @@ +#include +#include + +using json = nlohmann::json; + +int main() +{ + // create a JSON pointer + json::json_pointer ptr("/foo"); + std::cout << "\"" << ptr << "\"\n"; + + // append a JSON Pointer + ptr /= json::json_pointer("/bar/baz"); + std::cout << "\"" << ptr << "\"\n"; + + // append a string + ptr /= "fob"; + std::cout << "\"" << ptr << "\"\n"; + + // append an array index + ptr /= 42; + std::cout << "\"" << ptr << "\"" << std::endl; +} diff --git a/docs/examples/json_pointer__operator_add.output b/docs/examples/json_pointer__operator_add.output new file mode 100644 index 00000000..ae13afe2 --- /dev/null +++ b/docs/examples/json_pointer__operator_add.output @@ -0,0 +1,4 @@ +"/foo" +"/foo/bar/baz" +"/foo/bar/baz/fob" +"/foo/bar/baz/fob/42" diff --git a/docs/examples/json_pointer__operator_add_binary.cpp b/docs/examples/json_pointer__operator_add_binary.cpp new file mode 100644 index 00000000..d26a0d17 --- /dev/null +++ b/docs/examples/json_pointer__operator_add_binary.cpp @@ -0,0 +1,19 @@ +#include +#include + +using json = nlohmann::json; + +int main() +{ + // create a JSON pointer + json::json_pointer ptr("/foo"); + + // append a JSON Pointer + std::cout << "\"" << ptr / json::json_pointer("/bar/baz") << "\"\n"; + + // append a string + std::cout << "\"" << ptr / "fob" << "\"\n"; + + // append an array index + std::cout << "\"" << ptr / 42 << "\"" << std::endl; +} diff --git a/docs/examples/json_pointer__operator_add_binary.output b/docs/examples/json_pointer__operator_add_binary.output new file mode 100644 index 00000000..7536042c --- /dev/null +++ b/docs/examples/json_pointer__operator_add_binary.output @@ -0,0 +1,3 @@ +"/foo/bar/baz" +"/foo/fob" +"/foo/42" diff --git a/docs/examples/json_pointer__operator_string_t.cpp b/docs/examples/json_pointer__operator_string_t.cpp new file mode 100644 index 00000000..56f21302 --- /dev/null +++ b/docs/examples/json_pointer__operator_string_t.cpp @@ -0,0 +1,19 @@ +#include +#include + +using json = nlohmann::json; + +int main() +{ + // different JSON Pointers + json::json_pointer ptr1("/foo/0"); + json::json_pointer ptr2("/a~1b"); + + // implicit conversion to string + std::string s; + s += ptr1; + s += "\n"; + s += ptr2; + + std::cout << s << std::endl; +} diff --git a/docs/examples/json_pointer__operator_string_t.output b/docs/examples/json_pointer__operator_string_t.output new file mode 100644 index 00000000..ec6aba2c --- /dev/null +++ b/docs/examples/json_pointer__operator_string_t.output @@ -0,0 +1,2 @@ +/foo/0 +/a~1b diff --git a/docs/examples/json_pointer__parent_pointer.cpp b/docs/examples/json_pointer__parent_pointer.cpp new file mode 100644 index 00000000..ef9df453 --- /dev/null +++ b/docs/examples/json_pointer__parent_pointer.cpp @@ -0,0 +1,18 @@ +#include +#include + +using json = nlohmann::json; + +int main() +{ + // different JSON Pointers + json::json_pointer ptr1(""); + json::json_pointer ptr2("/foo"); + json::json_pointer ptr3("/foo/0"); + + // call parent_pointer() + std::cout << std::boolalpha + << "parent of \"" << ptr1 << "\" is \"" << ptr1.parent_pointer() << "\"\n" + << "parent of \"" << ptr2 << "\" is \"" << ptr2.parent_pointer() << "\"\n" + << "parent of \"" << ptr3 << "\" is \"" << ptr3.parent_pointer() << "\"" << std::endl; +} diff --git a/docs/examples/json_pointer__parent_pointer.output b/docs/examples/json_pointer__parent_pointer.output new file mode 100644 index 00000000..4cc6f3f1 --- /dev/null +++ b/docs/examples/json_pointer__parent_pointer.output @@ -0,0 +1,3 @@ +parent of "" is "" +parent of "/foo" is "" +parent of "/foo/0" is "/foo" diff --git a/docs/examples/json_pointer__pop_back.cpp b/docs/examples/json_pointer__pop_back.cpp new file mode 100644 index 00000000..fd077b7e --- /dev/null +++ b/docs/examples/json_pointer__pop_back.cpp @@ -0,0 +1,21 @@ +#include +#include + +using json = nlohmann::json; + +int main() +{ + // create empty JSON Pointer + json::json_pointer ptr("/foo/bar/baz"); + std::cout << "\"" << ptr << "\"\n"; + + // call pop_back() + ptr.pop_back(); + std::cout << "\"" << ptr << "\"\n"; + + ptr.pop_back(); + std::cout << "\"" << ptr << "\"\n"; + + ptr.pop_back(); + std::cout << "\"" << ptr << "\"\n"; +} diff --git a/docs/examples/json_pointer__pop_back.output b/docs/examples/json_pointer__pop_back.output new file mode 100644 index 00000000..b0468dc5 --- /dev/null +++ b/docs/examples/json_pointer__pop_back.output @@ -0,0 +1,4 @@ +"/foo/bar/baz" +"/foo/bar" +"/foo" +"" diff --git a/docs/examples/json_pointer__push_back.cpp b/docs/examples/json_pointer__push_back.cpp new file mode 100644 index 00000000..e6b59a12 --- /dev/null +++ b/docs/examples/json_pointer__push_back.cpp @@ -0,0 +1,21 @@ +#include +#include + +using json = nlohmann::json; + +int main() +{ + // create empty JSON Pointer + json::json_pointer ptr; + std::cout << "\"" << ptr << "\"\n"; + + // call push_back() + ptr.push_back("foo"); + std::cout << "\"" << ptr << "\"\n"; + + ptr.push_back("0"); + std::cout << "\"" << ptr << "\"\n"; + + ptr.push_back("bar"); + std::cout << "\"" << ptr << "\"\n"; +} diff --git a/docs/examples/json_pointer__push_back.output b/docs/examples/json_pointer__push_back.output new file mode 100644 index 00000000..92c019cd --- /dev/null +++ b/docs/examples/json_pointer__push_back.output @@ -0,0 +1,4 @@ +"" +"/foo" +"/foo/0" +"/foo/0/bar" diff --git a/docs/examples/json_pointer__string_t.cpp b/docs/examples/json_pointer__string_t.cpp new file mode 100644 index 00000000..fbe0f179 --- /dev/null +++ b/docs/examples/json_pointer__string_t.cpp @@ -0,0 +1,13 @@ +#include +#include + +using json = nlohmann::json; + +int main() +{ + json::json_pointer::string_t s = "This is a string."; + + std::cout << s << std::endl; + + std::cout << std::boolalpha << std::is_same::value << std::endl; +} diff --git a/docs/examples/json_pointer__string_t.output b/docs/examples/json_pointer__string_t.output new file mode 100644 index 00000000..d8711372 --- /dev/null +++ b/docs/examples/json_pointer__string_t.output @@ -0,0 +1,2 @@ +This is a string. +true diff --git a/docs/examples/json_pointer__to_string.cpp b/docs/examples/json_pointer__to_string.cpp new file mode 100644 index 00000000..31d35a72 --- /dev/null +++ b/docs/examples/json_pointer__to_string.cpp @@ -0,0 +1,34 @@ +#include +#include + +using json = nlohmann::json; + +int main() +{ + // different JSON Pointers + json::json_pointer ptr1(""); + json::json_pointer ptr2("/foo"); + json::json_pointer ptr3("/foo/0"); + json::json_pointer ptr4("/"); + json::json_pointer ptr5("/a~1b"); + json::json_pointer ptr6("/c%d"); + json::json_pointer ptr7("/e^f"); + json::json_pointer ptr8("/g|h"); + json::json_pointer ptr9("/i\\j"); + json::json_pointer ptr10("/k\"l"); + json::json_pointer ptr11("/ "); + json::json_pointer ptr12("/m~0n"); + + std::cout << "\"" << ptr1.to_string() << "\"\n" + << "\"" << ptr2.to_string() << "\"\n" + << "\"" << ptr3.to_string() << "\"\n" + << "\"" << ptr4.to_string() << "\"\n" + << "\"" << ptr5.to_string() << "\"\n" + << "\"" << ptr6.to_string() << "\"\n" + << "\"" << ptr7.to_string() << "\"\n" + << "\"" << ptr8.to_string() << "\"\n" + << "\"" << ptr9.to_string() << "\"\n" + << "\"" << ptr10.to_string() << "\"\n" + << "\"" << ptr11.to_string() << "\"\n" + << "\"" << ptr12.to_string() << "\"" << std::endl; +} diff --git a/docs/examples/json_pointer__to_string.output b/docs/examples/json_pointer__to_string.output new file mode 100644 index 00000000..3c441357 --- /dev/null +++ b/docs/examples/json_pointer__to_string.output @@ -0,0 +1,12 @@ +"" +"/foo" +"/foo/0" +"/" +"/a~1b" +"/c%d" +"/e^f" +"/g|h" +"/i\j" +"/k"l" +"/ " +"/m~0n" diff --git a/docs/examples/max_size.cpp b/docs/examples/max_size.cpp new file mode 100644 index 00000000..c2ffc546 --- /dev/null +++ b/docs/examples/max_size.cpp @@ -0,0 +1,25 @@ +#include +#include + +using json = nlohmann::json; + +int main() +{ + // create JSON values + json j_null; + json j_boolean = true; + json j_number_integer = 17; + json j_number_float = 23.42; + json j_object = {{"one", 1}, {"two", 2}}; + json j_array = {1, 2, 4, 8, 16}; + json j_string = "Hello, world"; + + // call max_size() + std::cout << j_null.max_size() << '\n'; + std::cout << j_boolean.max_size() << '\n'; + std::cout << j_number_integer.max_size() << '\n'; + std::cout << j_number_float.max_size() << '\n'; + std::cout << j_object.max_size() << '\n'; + std::cout << j_array.max_size() << '\n'; + std::cout << j_string.max_size() << '\n'; +} diff --git a/docs/examples/max_size.output b/docs/examples/max_size.output new file mode 100644 index 00000000..b8dcb4d0 --- /dev/null +++ b/docs/examples/max_size.output @@ -0,0 +1,7 @@ +0 +1 +1 +1 +115292150460684697 +576460752303423487 +1 diff --git a/docs/examples/merge_patch.cpp b/docs/examples/merge_patch.cpp new file mode 100644 index 00000000..f3fee1ed --- /dev/null +++ b/docs/examples/merge_patch.cpp @@ -0,0 +1,41 @@ +#include +#include +#include // for std::setw + +using json = nlohmann::json; +using namespace nlohmann::literals; + +int main() +{ + // the original document + json document = R"({ + "title": "Goodbye!", + "author": { + "givenName": "John", + "familyName": "Doe" + }, + "tags": [ + "example", + "sample" + ], + "content": "This will be unchanged" + })"_json; + + // the patch + json patch = R"({ + "title": "Hello!", + "phoneNumber": "+01-123-456-7890", + "author": { + "familyName": null + }, + "tags": [ + "example" + ] + })"_json; + + // apply the patch + document.merge_patch(patch); + + // output original and patched document + std::cout << std::setw(4) << document << std::endl; +} diff --git a/docs/examples/merge_patch.output b/docs/examples/merge_patch.output new file mode 100644 index 00000000..96adb7b3 --- /dev/null +++ b/docs/examples/merge_patch.output @@ -0,0 +1,11 @@ +{ + "author": { + "givenName": "John" + }, + "content": "This will be unchanged", + "phoneNumber": "+01-123-456-7890", + "tags": [ + "example" + ], + "title": "Hello!" +} diff --git a/docs/examples/meta.cpp b/docs/examples/meta.cpp new file mode 100644 index 00000000..a051575b --- /dev/null +++ b/docs/examples/meta.cpp @@ -0,0 +1,11 @@ +#include +#include +#include + +using json = nlohmann::json; + +int main() +{ + // call meta() + std::cout << std::setw(4) << json::meta() << '\n'; +} diff --git a/docs/examples/meta.output b/docs/examples/meta.output new file mode 100644 index 00000000..90390f96 --- /dev/null +++ b/docs/examples/meta.output @@ -0,0 +1,17 @@ +{ + "compiler": { + "c++": "201103", + "family": "gcc", + "version": "12.3.0" + }, + "copyright": "(C) 2013-2022 Niels Lohmann", + "name": "JSON for Modern C++", + "platform": "apple", + "url": "https://github.com/nlohmann/json", + "version": { + "major": 3, + "minor": 11, + "patch": 3, + "string": "3.11.3" + } +} diff --git a/docs/examples/nlohmann_define_type_intrusive_explicit.cpp b/docs/examples/nlohmann_define_type_intrusive_explicit.cpp new file mode 100644 index 00000000..de79bd37 --- /dev/null +++ b/docs/examples/nlohmann_define_type_intrusive_explicit.cpp @@ -0,0 +1,60 @@ +#include +#include + +using json = nlohmann::json; +using namespace nlohmann::literals; + +namespace ns +{ +class person +{ + private: + std::string name = "John Doe"; + std::string address = "123 Fake St"; + int age = -1; + + public: + person() = default; + person(std::string name_, std::string address_, int age_) + : name(std::move(name_)), address(std::move(address_)), age(age_) + {} + + friend void to_json(nlohmann::json& nlohmann_json_j, const person& nlohmann_json_t) + { + nlohmann_json_j["name"] = nlohmann_json_t.name; + nlohmann_json_j["address"] = nlohmann_json_t.address; + nlohmann_json_j["age"] = nlohmann_json_t.age; + } + + friend void from_json(const nlohmann::json& nlohmann_json_j, person& nlohmann_json_t) + { + nlohmann_json_t.name = nlohmann_json_j.at("name"); + nlohmann_json_t.address = nlohmann_json_j.at("address"); + nlohmann_json_t.age = nlohmann_json_j.at("age"); + } +}; +} // namespace ns + +int main() +{ + ns::person p = {"Ned Flanders", "744 Evergreen Terrace", 60}; + + // serialization: person -> json + json j = p; + std::cout << "serialization: " << j << std::endl; + + // deserialization: json -> person + json j2 = R"({"address": "742 Evergreen Terrace", "age": 40, "name": "Homer Simpson"})"_json; + auto p2 = j2.template get(); + + // incomplete deserialization: + json j3 = R"({"address": "742 Evergreen Terrace", "name": "Maggie Simpson"})"_json; + try + { + auto p3 = j3.template get(); + } + catch (const json::exception& e) + { + std::cout << "deserialization failed: " << e.what() << std::endl; + } +} diff --git a/docs/examples/nlohmann_define_type_intrusive_explicit.output b/docs/examples/nlohmann_define_type_intrusive_explicit.output new file mode 100644 index 00000000..37f4eb41 --- /dev/null +++ b/docs/examples/nlohmann_define_type_intrusive_explicit.output @@ -0,0 +1,2 @@ +serialization: {"address":"744 Evergreen Terrace","age":60,"name":"Ned Flanders"} +deserialization failed: [json.exception.out_of_range.403] key 'age' not found diff --git a/docs/examples/nlohmann_define_type_intrusive_macro.cpp b/docs/examples/nlohmann_define_type_intrusive_macro.cpp new file mode 100644 index 00000000..4ecd4294 --- /dev/null +++ b/docs/examples/nlohmann_define_type_intrusive_macro.cpp @@ -0,0 +1,48 @@ +#include +#include + +using json = nlohmann::json; +using namespace nlohmann::literals; + +namespace ns +{ +class person +{ + private: + std::string name = "John Doe"; + std::string address = "123 Fake St"; + int age = -1; + + public: + person() = default; + person(std::string name_, std::string address_, int age_) + : name(std::move(name_)), address(std::move(address_)), age(age_) + {} + + NLOHMANN_DEFINE_TYPE_INTRUSIVE(person, name, address, age) +}; +} // namespace ns + +int main() +{ + ns::person p = {"Ned Flanders", "744 Evergreen Terrace", 60}; + + // serialization: person -> json + json j = p; + std::cout << "serialization: " << j << std::endl; + + // deserialization: json -> person + json j2 = R"({"address": "742 Evergreen Terrace", "age": 40, "name": "Homer Simpson"})"_json; + auto p2 = j2.template get(); + + // incomplete deserialization: + json j3 = R"({"address": "742 Evergreen Terrace", "name": "Maggie Simpson"})"_json; + try + { + auto p3 = j3.template get(); + } + catch (const json::exception& e) + { + std::cout << "deserialization failed: " << e.what() << std::endl; + } +} diff --git a/docs/examples/nlohmann_define_type_intrusive_macro.output b/docs/examples/nlohmann_define_type_intrusive_macro.output new file mode 100644 index 00000000..37f4eb41 --- /dev/null +++ b/docs/examples/nlohmann_define_type_intrusive_macro.output @@ -0,0 +1,2 @@ +serialization: {"address":"744 Evergreen Terrace","age":60,"name":"Ned Flanders"} +deserialization failed: [json.exception.out_of_range.403] key 'age' not found diff --git a/docs/examples/nlohmann_define_type_intrusive_only_serialize_explicit.cpp b/docs/examples/nlohmann_define_type_intrusive_only_serialize_explicit.cpp new file mode 100644 index 00000000..ea422beb --- /dev/null +++ b/docs/examples/nlohmann_define_type_intrusive_only_serialize_explicit.cpp @@ -0,0 +1,38 @@ +#include +#include + +using json = nlohmann::json; +using namespace nlohmann::literals; + +namespace ns +{ +class person +{ + private: + std::string name = "John Doe"; + std::string address = "123 Fake St"; + int age = -1; + + public: + // No default constructor + person(std::string name_, std::string address_, int age_) + : name(std::move(name_)), address(std::move(address_)), age(age_) + {} + + friend void to_json(nlohmann::json& nlohmann_json_j, const person& nlohmann_json_t) + { + nlohmann_json_j["name"] = nlohmann_json_t.name; + nlohmann_json_j["address"] = nlohmann_json_t.address; + nlohmann_json_j["age"] = nlohmann_json_t.age; + } +}; +} // namespace ns + +int main() +{ + ns::person p = {"Ned Flanders", "744 Evergreen Terrace", 60}; + + // serialization: person -> json + json j = p; + std::cout << "serialization: " << j << std::endl; +} diff --git a/docs/examples/nlohmann_define_type_intrusive_only_serialize_explicit.output b/docs/examples/nlohmann_define_type_intrusive_only_serialize_explicit.output new file mode 100644 index 00000000..12f50330 --- /dev/null +++ b/docs/examples/nlohmann_define_type_intrusive_only_serialize_explicit.output @@ -0,0 +1 @@ +serialization: {"address":"744 Evergreen Terrace","age":60,"name":"Ned Flanders"} diff --git a/docs/examples/nlohmann_define_type_intrusive_only_serialize_macro.cpp b/docs/examples/nlohmann_define_type_intrusive_only_serialize_macro.cpp new file mode 100644 index 00000000..8213f906 --- /dev/null +++ b/docs/examples/nlohmann_define_type_intrusive_only_serialize_macro.cpp @@ -0,0 +1,33 @@ +#include +#include + +using json = nlohmann::json; +using namespace nlohmann::literals; + +namespace ns +{ +class person +{ + private: + std::string name = "John Doe"; + std::string address = "123 Fake St"; + int age = -1; + + public: + // No default constructor + person(std::string name_, std::string address_, int age_) + : name(std::move(name_)), address(std::move(address_)), age(age_) + {} + + NLOHMANN_DEFINE_TYPE_INTRUSIVE(person, name, address, age) +}; +} // namespace ns + +int main() +{ + ns::person p = {"Ned Flanders", "744 Evergreen Terrace", 60}; + + // serialization: person -> json + json j = p; + std::cout << "serialization: " << j << std::endl; +} diff --git a/docs/examples/nlohmann_define_type_intrusive_only_serialize_macro.output b/docs/examples/nlohmann_define_type_intrusive_only_serialize_macro.output new file mode 100644 index 00000000..12f50330 --- /dev/null +++ b/docs/examples/nlohmann_define_type_intrusive_only_serialize_macro.output @@ -0,0 +1 @@ +serialization: {"address":"744 Evergreen Terrace","age":60,"name":"Ned Flanders"} diff --git a/docs/examples/nlohmann_define_type_intrusive_with_default_explicit.cpp b/docs/examples/nlohmann_define_type_intrusive_with_default_explicit.cpp new file mode 100644 index 00000000..0fb2e1cb --- /dev/null +++ b/docs/examples/nlohmann_define_type_intrusive_with_default_explicit.cpp @@ -0,0 +1,55 @@ +#include +#include + +using json = nlohmann::json; +using namespace nlohmann::literals; + +namespace ns +{ +class person +{ + private: + std::string name = "John Doe"; + std::string address = "123 Fake St"; + int age = -1; + + public: + person() = default; + person(std::string name_, std::string address_, int age_) + : name(std::move(name_)), address(std::move(address_)), age(age_) + {} + + friend void to_json(nlohmann::json& nlohmann_json_j, const person& nlohmann_json_t) + { + nlohmann_json_j["name"] = nlohmann_json_t.name; + nlohmann_json_j["address"] = nlohmann_json_t.address; + nlohmann_json_j["age"] = nlohmann_json_t.age; + } + + friend void from_json(const nlohmann::json& nlohmann_json_j, person& nlohmann_json_t) + { + person nlohmann_json_default_obj; + nlohmann_json_t.name = nlohmann_json_j.value("name", nlohmann_json_default_obj.name); + nlohmann_json_t.address = nlohmann_json_j.value("address", nlohmann_json_default_obj.address); + nlohmann_json_t.age = nlohmann_json_j.value("age", nlohmann_json_default_obj.age); + } +}; +} // namespace ns + +int main() +{ + ns::person p = {"Ned Flanders", "744 Evergreen Terrace", 60}; + + // serialization: person -> json + json j = p; + std::cout << "serialization: " << j << std::endl; + + // deserialization: json -> person + json j2 = R"({"address": "742 Evergreen Terrace", "age": 40, "name": "Homer Simpson"})"_json; + auto p2 = j2.template get(); + + // incomplete deserialization: + json j3 = R"({"address": "742 Evergreen Terrace", "name": "Maggie Simpson"})"_json; + auto p3 = j3.template get(); + std::cout << "roundtrip: " << json(p3) << std::endl; +} diff --git a/docs/examples/nlohmann_define_type_intrusive_with_default_explicit.output b/docs/examples/nlohmann_define_type_intrusive_with_default_explicit.output new file mode 100644 index 00000000..1a255f65 --- /dev/null +++ b/docs/examples/nlohmann_define_type_intrusive_with_default_explicit.output @@ -0,0 +1,2 @@ +serialization: {"address":"744 Evergreen Terrace","age":60,"name":"Ned Flanders"} +roundtrip: {"address":"742 Evergreen Terrace","age":-1,"name":"Maggie Simpson"} diff --git a/docs/examples/nlohmann_define_type_intrusive_with_default_macro.cpp b/docs/examples/nlohmann_define_type_intrusive_with_default_macro.cpp new file mode 100644 index 00000000..52668516 --- /dev/null +++ b/docs/examples/nlohmann_define_type_intrusive_with_default_macro.cpp @@ -0,0 +1,42 @@ +#include +#include + +using json = nlohmann::json; +using namespace nlohmann::literals; + +namespace ns +{ +class person +{ + private: + std::string name = "John Doe"; + std::string address = "123 Fake St"; + int age = -1; + + public: + person() = default; + person(std::string name_, std::string address_, int age_) + : name(std::move(name_)), address(std::move(address_)), age(age_) + {} + + NLOHMANN_DEFINE_TYPE_INTRUSIVE_WITH_DEFAULT(person, name, address, age) +}; +} // namespace ns + +int main() +{ + ns::person p = {"Ned Flanders", "744 Evergreen Terrace", 60}; + + // serialization: person -> json + json j = p; + std::cout << "serialization: " << j << std::endl; + + // deserialization: json -> person + json j2 = R"({"address": "742 Evergreen Terrace", "age": 40, "name": "Homer Simpson"})"_json; + auto p2 = j2.template get(); + + // incomplete deserialization: + json j3 = R"({"address": "742 Evergreen Terrace", "name": "Maggie Simpson"})"_json; + auto p3 = j3.template get(); + std::cout << "roundtrip: " << json(p3) << std::endl; +} diff --git a/docs/examples/nlohmann_define_type_intrusive_with_default_macro.output b/docs/examples/nlohmann_define_type_intrusive_with_default_macro.output new file mode 100644 index 00000000..1a255f65 --- /dev/null +++ b/docs/examples/nlohmann_define_type_intrusive_with_default_macro.output @@ -0,0 +1,2 @@ +serialization: {"address":"744 Evergreen Terrace","age":60,"name":"Ned Flanders"} +roundtrip: {"address":"742 Evergreen Terrace","age":-1,"name":"Maggie Simpson"} diff --git a/docs/examples/nlohmann_define_type_non_intrusive_explicit.cpp b/docs/examples/nlohmann_define_type_non_intrusive_explicit.cpp new file mode 100644 index 00000000..a31a7eb8 --- /dev/null +++ b/docs/examples/nlohmann_define_type_non_intrusive_explicit.cpp @@ -0,0 +1,53 @@ +#include +#include + +using json = nlohmann::json; +using namespace nlohmann::literals; + +namespace ns +{ +struct person +{ + std::string name; + std::string address; + int age; +}; + +void to_json(nlohmann::json& nlohmann_json_j, const person& nlohmann_json_t) +{ + nlohmann_json_j["name"] = nlohmann_json_t.name; + nlohmann_json_j["address"] = nlohmann_json_t.address; + nlohmann_json_j["age"] = nlohmann_json_t.age; +} + +void from_json(const nlohmann::json& nlohmann_json_j, person& nlohmann_json_t) +{ + nlohmann_json_t.name = nlohmann_json_j.at("name"); + nlohmann_json_t.address = nlohmann_json_j.at("address"); + nlohmann_json_t.age = nlohmann_json_j.at("age"); +} +} // namespace ns + +int main() +{ + ns::person p = {"Ned Flanders", "744 Evergreen Terrace", 60}; + + // serialization: person -> json + json j = p; + std::cout << "serialization: " << j << std::endl; + + // deserialization: json -> person + json j2 = R"({"address": "742 Evergreen Terrace", "age": 40, "name": "Homer Simpson"})"_json; + auto p2 = j2.template get(); + + // incomplete deserialization: + json j3 = R"({"address": "742 Evergreen Terrace", "name": "Maggie Simpson"})"_json; + try + { + auto p3 = j3.template get(); + } + catch (const json::exception& e) + { + std::cout << "deserialization failed: " << e.what() << std::endl; + } +} diff --git a/docs/examples/nlohmann_define_type_non_intrusive_explicit.output b/docs/examples/nlohmann_define_type_non_intrusive_explicit.output new file mode 100644 index 00000000..37f4eb41 --- /dev/null +++ b/docs/examples/nlohmann_define_type_non_intrusive_explicit.output @@ -0,0 +1,2 @@ +serialization: {"address":"744 Evergreen Terrace","age":60,"name":"Ned Flanders"} +deserialization failed: [json.exception.out_of_range.403] key 'age' not found diff --git a/docs/examples/nlohmann_define_type_non_intrusive_macro.cpp b/docs/examples/nlohmann_define_type_non_intrusive_macro.cpp new file mode 100644 index 00000000..d11691b7 --- /dev/null +++ b/docs/examples/nlohmann_define_type_non_intrusive_macro.cpp @@ -0,0 +1,41 @@ +#include +#include + +using json = nlohmann::json; +using namespace nlohmann::literals; + +namespace ns +{ +struct person +{ + std::string name; + std::string address; + int age; +}; + +NLOHMANN_DEFINE_TYPE_NON_INTRUSIVE(person, name, address, age) +} // namespace ns + +int main() +{ + ns::person p = {"Ned Flanders", "744 Evergreen Terrace", 60}; + + // serialization: person -> json + json j = p; + std::cout << "serialization: " << j << std::endl; + + // deserialization: json -> person + json j2 = R"({"address": "742 Evergreen Terrace", "age": 40, "name": "Homer Simpson"})"_json; + auto p2 = j2.template get(); + + // incomplete deserialization: + json j3 = R"({"address": "742 Evergreen Terrace", "name": "Maggie Simpson"})"_json; + try + { + auto p3 = j3.template get(); + } + catch (const json::exception& e) + { + std::cout << "deserialization failed: " << e.what() << std::endl; + } +} diff --git a/docs/examples/nlohmann_define_type_non_intrusive_macro.output b/docs/examples/nlohmann_define_type_non_intrusive_macro.output new file mode 100644 index 00000000..37f4eb41 --- /dev/null +++ b/docs/examples/nlohmann_define_type_non_intrusive_macro.output @@ -0,0 +1,2 @@ +serialization: {"address":"744 Evergreen Terrace","age":60,"name":"Ned Flanders"} +deserialization failed: [json.exception.out_of_range.403] key 'age' not found diff --git a/docs/examples/nlohmann_define_type_non_intrusive_only_serialize_explicit.cpp b/docs/examples/nlohmann_define_type_non_intrusive_only_serialize_explicit.cpp new file mode 100644 index 00000000..8890e03a --- /dev/null +++ b/docs/examples/nlohmann_define_type_non_intrusive_only_serialize_explicit.cpp @@ -0,0 +1,31 @@ +#include +#include + +using json = nlohmann::json; +using namespace nlohmann::literals; + +namespace ns +{ +struct person +{ + std::string name; + std::string address; + int age; +}; + +void to_json(nlohmann::json& nlohmann_json_j, const person& nlohmann_json_t) +{ + nlohmann_json_j["name"] = nlohmann_json_t.name; + nlohmann_json_j["address"] = nlohmann_json_t.address; + nlohmann_json_j["age"] = nlohmann_json_t.age; +} +} // namespace ns + +int main() +{ + ns::person p = {"Ned Flanders", "744 Evergreen Terrace", 60}; + + // serialization: person -> json + json j = p; + std::cout << "serialization: " << j << std::endl; +} diff --git a/docs/examples/nlohmann_define_type_non_intrusive_only_serialize_explicit.output b/docs/examples/nlohmann_define_type_non_intrusive_only_serialize_explicit.output new file mode 100644 index 00000000..12f50330 --- /dev/null +++ b/docs/examples/nlohmann_define_type_non_intrusive_only_serialize_explicit.output @@ -0,0 +1 @@ +serialization: {"address":"744 Evergreen Terrace","age":60,"name":"Ned Flanders"} diff --git a/docs/examples/nlohmann_define_type_non_intrusive_only_serialize_macro.cpp b/docs/examples/nlohmann_define_type_non_intrusive_only_serialize_macro.cpp new file mode 100644 index 00000000..7aef23af --- /dev/null +++ b/docs/examples/nlohmann_define_type_non_intrusive_only_serialize_macro.cpp @@ -0,0 +1,26 @@ +#include +#include + +using json = nlohmann::json; +using namespace nlohmann::literals; + +namespace ns +{ +struct person +{ + std::string name; + std::string address; + int age; +}; + +NLOHMANN_DEFINE_TYPE_NON_INTRUSIVE_ONLY_SERIALIZE(person, name, address, age) +} // namespace ns + +int main() +{ + ns::person p = {"Ned Flanders", "744 Evergreen Terrace", 60}; + + // serialization: person -> json + json j = p; + std::cout << "serialization: " << j << std::endl; +} diff --git a/docs/examples/nlohmann_define_type_non_intrusive_only_serialize_macro.output b/docs/examples/nlohmann_define_type_non_intrusive_only_serialize_macro.output new file mode 100644 index 00000000..12f50330 --- /dev/null +++ b/docs/examples/nlohmann_define_type_non_intrusive_only_serialize_macro.output @@ -0,0 +1 @@ +serialization: {"address":"744 Evergreen Terrace","age":60,"name":"Ned Flanders"} diff --git a/docs/examples/nlohmann_define_type_non_intrusive_with_default_explicit.cpp b/docs/examples/nlohmann_define_type_non_intrusive_with_default_explicit.cpp new file mode 100644 index 00000000..855ab52b --- /dev/null +++ b/docs/examples/nlohmann_define_type_non_intrusive_with_default_explicit.cpp @@ -0,0 +1,53 @@ +#include +#include + +using json = nlohmann::json; +using namespace nlohmann::literals; + +namespace ns +{ +struct person +{ + std::string name = "John Doe"; + std::string address = "123 Fake St"; + int age = -1; + + person() = default; + person(std::string name_, std::string address_, int age_) + : name(std::move(name_)), address(std::move(address_)), age(age_) + {} +}; + +void to_json(nlohmann::json& nlohmann_json_j, const person& nlohmann_json_t) +{ + nlohmann_json_j["name"] = nlohmann_json_t.name; + nlohmann_json_j["address"] = nlohmann_json_t.address; + nlohmann_json_j["age"] = nlohmann_json_t.age; +} + +void from_json(const nlohmann::json& nlohmann_json_j, person& nlohmann_json_t) +{ + person nlohmann_json_default_obj; + nlohmann_json_t.name = nlohmann_json_j.value("name", nlohmann_json_default_obj.name); + nlohmann_json_t.address = nlohmann_json_j.value("address", nlohmann_json_default_obj.address); + nlohmann_json_t.age = nlohmann_json_j.value("age", nlohmann_json_default_obj.age); +} +} // namespace ns + +int main() +{ + ns::person p = {"Ned Flanders", "744 Evergreen Terrace", 60}; + + // serialization: person -> json + json j = p; + std::cout << "serialization: " << j << std::endl; + + // deserialization: json -> person + json j2 = R"({"address": "742 Evergreen Terrace", "age": 40, "name": "Homer Simpson"})"_json; + auto p2 = j2.template get(); + + // incomplete deserialization: + json j3 = R"({"address": "742 Evergreen Terrace", "name": "Maggie Simpson"})"_json; + auto p3 = j3.template get(); + std::cout << "roundtrip: " << json(p3) << std::endl; +} diff --git a/docs/examples/nlohmann_define_type_non_intrusive_with_default_explicit.output b/docs/examples/nlohmann_define_type_non_intrusive_with_default_explicit.output new file mode 100644 index 00000000..1a255f65 --- /dev/null +++ b/docs/examples/nlohmann_define_type_non_intrusive_with_default_explicit.output @@ -0,0 +1,2 @@ +serialization: {"address":"744 Evergreen Terrace","age":60,"name":"Ned Flanders"} +roundtrip: {"address":"742 Evergreen Terrace","age":-1,"name":"Maggie Simpson"} diff --git a/docs/examples/nlohmann_define_type_non_intrusive_with_default_macro.cpp b/docs/examples/nlohmann_define_type_non_intrusive_with_default_macro.cpp new file mode 100644 index 00000000..8c41c65e --- /dev/null +++ b/docs/examples/nlohmann_define_type_non_intrusive_with_default_macro.cpp @@ -0,0 +1,40 @@ +#include +#include + +using json = nlohmann::json; +using namespace nlohmann::literals; + +namespace ns +{ +struct person +{ + std::string name = "John Doe"; + std::string address = "123 Fake St"; + int age = -1; + + person() = default; + person(std::string name_, std::string address_, int age_) + : name(std::move(name_)), address(std::move(address_)), age(age_) + {} +}; + +NLOHMANN_DEFINE_TYPE_NON_INTRUSIVE_WITH_DEFAULT(person, name, address, age) +} // namespace ns + +int main() +{ + ns::person p = {"Ned Flanders", "744 Evergreen Terrace", 60}; + + // serialization: person -> json + json j = p; + std::cout << "serialization: " << j << std::endl; + + // deserialization: json -> person + json j2 = R"({"address": "742 Evergreen Terrace", "age": 40, "name": "Homer Simpson"})"_json; + auto p2 = j2.template get(); + + // incomplete deserialization: + json j3 = R"({"address": "742 Evergreen Terrace", "name": "Maggie Simpson"})"_json; + auto p3 = j3.template get(); + std::cout << "roundtrip: " << json(p3) << std::endl; +} diff --git a/docs/examples/nlohmann_define_type_non_intrusive_with_default_macro.output b/docs/examples/nlohmann_define_type_non_intrusive_with_default_macro.output new file mode 100644 index 00000000..1a255f65 --- /dev/null +++ b/docs/examples/nlohmann_define_type_non_intrusive_with_default_macro.output @@ -0,0 +1,2 @@ +serialization: {"address":"744 Evergreen Terrace","age":60,"name":"Ned Flanders"} +roundtrip: {"address":"742 Evergreen Terrace","age":-1,"name":"Maggie Simpson"} diff --git a/docs/examples/nlohmann_json_namespace.cpp b/docs/examples/nlohmann_json_namespace.cpp new file mode 100644 index 00000000..4bad91f4 --- /dev/null +++ b/docs/examples/nlohmann_json_namespace.cpp @@ -0,0 +1,14 @@ +#include +#include + +// possible use case: use NLOHMANN_JSON_NAMESPACE instead of nlohmann +using json = NLOHMANN_JSON_NAMESPACE::json; + +// macro needed to output the NLOHMANN_JSON_NAMESPACE as string literal +#define Q(x) #x +#define QUOTE(x) Q(x) + +int main() +{ + std::cout << QUOTE(NLOHMANN_JSON_NAMESPACE) << std::endl; +} diff --git a/docs/examples/nlohmann_json_namespace.output b/docs/examples/nlohmann_json_namespace.output new file mode 100644 index 00000000..5565deaf --- /dev/null +++ b/docs/examples/nlohmann_json_namespace.output @@ -0,0 +1 @@ +nlohmann::json_abi_v3_11_3 diff --git a/docs/examples/nlohmann_json_namespace_begin.c++17.cpp b/docs/examples/nlohmann_json_namespace_begin.c++17.cpp new file mode 100644 index 00000000..9385d593 --- /dev/null +++ b/docs/examples/nlohmann_json_namespace_begin.c++17.cpp @@ -0,0 +1,33 @@ +#include +#include +#include + +// partial specialization (see https://json.nlohmann.me/features/arbitrary_types/) +NLOHMANN_JSON_NAMESPACE_BEGIN +template +struct adl_serializer> +{ + static void to_json(json& j, const std::optional& opt) + { + if (opt == std::nullopt) + { + j = nullptr; + } + else + { + j = *opt; + } + } +}; +NLOHMANN_JSON_NAMESPACE_END + +int main() +{ + std::optional o1 = 1; + std::optional o2 = std::nullopt; + + NLOHMANN_JSON_NAMESPACE::json j; + j.push_back(o1); + j.push_back(o2); + std::cout << j << std::endl; +} diff --git a/docs/examples/nlohmann_json_namespace_begin.c++17.output b/docs/examples/nlohmann_json_namespace_begin.c++17.output new file mode 100644 index 00000000..b29d3b93 --- /dev/null +++ b/docs/examples/nlohmann_json_namespace_begin.c++17.output @@ -0,0 +1 @@ +[1,null] diff --git a/docs/examples/nlohmann_json_namespace_no_version.cpp b/docs/examples/nlohmann_json_namespace_no_version.cpp new file mode 100644 index 00000000..97948dd7 --- /dev/null +++ b/docs/examples/nlohmann_json_namespace_no_version.cpp @@ -0,0 +1,13 @@ +#include + +#define NLOHMANN_JSON_NAMESPACE_NO_VERSION 1 +#include + +// macro needed to output the NLOHMANN_JSON_NAMESPACE as string literal +#define Q(x) #x +#define QUOTE(x) Q(x) + +int main() +{ + std::cout << QUOTE(NLOHMANN_JSON_NAMESPACE) << std::endl; +} diff --git a/docs/examples/nlohmann_json_namespace_no_version.output b/docs/examples/nlohmann_json_namespace_no_version.output new file mode 100644 index 00000000..1c8f3132 --- /dev/null +++ b/docs/examples/nlohmann_json_namespace_no_version.output @@ -0,0 +1 @@ +nlohmann::json_abi diff --git a/docs/examples/nlohmann_json_serialize_enum.cpp b/docs/examples/nlohmann_json_serialize_enum.cpp new file mode 100644 index 00000000..a40db49e --- /dev/null +++ b/docs/examples/nlohmann_json_serialize_enum.cpp @@ -0,0 +1,59 @@ +#include +#include + +using json = nlohmann::json; + +namespace ns +{ +enum TaskState +{ + TS_STOPPED, + TS_RUNNING, + TS_COMPLETED, + TS_INVALID = -1 +}; + +NLOHMANN_JSON_SERIALIZE_ENUM(TaskState, +{ + { TS_INVALID, nullptr }, + { TS_STOPPED, "stopped" }, + { TS_RUNNING, "running" }, + { TS_COMPLETED, "completed" } +}) + +enum class Color +{ + red, green, blue, unknown +}; + +NLOHMANN_JSON_SERIALIZE_ENUM(Color, +{ + { Color::unknown, "unknown" }, { Color::red, "red" }, + { Color::green, "green" }, { Color::blue, "blue" } +}) +} // namespace ns + +int main() +{ + // serialization + json j_stopped = ns::TS_STOPPED; + json j_red = ns::Color::red; + std::cout << "ns::TS_STOPPED -> " << j_stopped + << ", ns::Color::red -> " << j_red << std::endl; + + // deserialization + json j_running = "running"; + json j_blue = "blue"; + auto running = j_running.template get(); + auto blue = j_blue.template get(); + std::cout << j_running << " -> " << running + << ", " << j_blue << " -> " << static_cast(blue) << std::endl; + + // deserializing undefined JSON value to enum + // (where the first map entry above is the default) + json j_pi = 3.14; + auto invalid = j_pi.template get(); + auto unknown = j_pi.template get(); + std::cout << j_pi << " -> " << invalid << ", " + << j_pi << " -> " << static_cast(unknown) << std::endl; +} diff --git a/docs/examples/nlohmann_json_serialize_enum.output b/docs/examples/nlohmann_json_serialize_enum.output new file mode 100644 index 00000000..f512563d --- /dev/null +++ b/docs/examples/nlohmann_json_serialize_enum.output @@ -0,0 +1,3 @@ +ns::TS_STOPPED -> "stopped", ns::Color::red -> "red" +"running" -> 1, "blue" -> 2 +3.14 -> -1, 3.14 -> 3 diff --git a/docs/examples/nlohmann_json_serialize_enum_2.cpp b/docs/examples/nlohmann_json_serialize_enum_2.cpp new file mode 100644 index 00000000..b35e94cc --- /dev/null +++ b/docs/examples/nlohmann_json_serialize_enum_2.cpp @@ -0,0 +1,33 @@ +#include +#include + +using json = nlohmann::json; + +namespace ns +{ +enum class Color +{ + red, green, blue, unknown +}; + +NLOHMANN_JSON_SERIALIZE_ENUM(Color, +{ + { Color::unknown, "unknown" }, { Color::red, "red" }, + { Color::green, "green" }, { Color::blue, "blue" }, + { Color::red, "rot" } // a second conversion for Color::red +}) +} + +int main() +{ + // serialization + json j_red = ns::Color::red; + std::cout << static_cast(ns::Color::red) << " -> " << j_red << std::endl; + + // deserialization + json j_rot = "rot"; + auto rot = j_rot.template get(); + auto red = j_red.template get(); + std::cout << j_rot << " -> " << static_cast(rot) << std::endl; + std::cout << j_red << " -> " << static_cast(red) << std::endl; +} diff --git a/docs/examples/nlohmann_json_serialize_enum_2.output b/docs/examples/nlohmann_json_serialize_enum_2.output new file mode 100644 index 00000000..5dec31b4 --- /dev/null +++ b/docs/examples/nlohmann_json_serialize_enum_2.output @@ -0,0 +1,3 @@ +0 -> "red" +"rot" -> 0 +"red" -> 0 diff --git a/docs/examples/nlohmann_json_version.cpp b/docs/examples/nlohmann_json_version.cpp new file mode 100644 index 00000000..ca5f5372 --- /dev/null +++ b/docs/examples/nlohmann_json_version.cpp @@ -0,0 +1,12 @@ +#include +#include + +using json = nlohmann::json; + +int main() +{ + std::cout << "JSON for Modern C++ version " + << NLOHMANN_JSON_VERSION_MAJOR << "." + << NLOHMANN_JSON_VERSION_MINOR << "." + << NLOHMANN_JSON_VERSION_PATCH << std::endl; +} diff --git a/docs/examples/nlohmann_json_version.output b/docs/examples/nlohmann_json_version.output new file mode 100644 index 00000000..75dbe847 --- /dev/null +++ b/docs/examples/nlohmann_json_version.output @@ -0,0 +1 @@ +JSON for Modern C++ version 3.11.3 diff --git a/docs/examples/number_float_t.cpp b/docs/examples/number_float_t.cpp new file mode 100644 index 00000000..21211dc5 --- /dev/null +++ b/docs/examples/number_float_t.cpp @@ -0,0 +1,10 @@ +#include +#include +#include + +using json = nlohmann::json; + +int main() +{ + std::cout << std::boolalpha << std::is_same::value << std::endl; +} diff --git a/docs/examples/number_float_t.output b/docs/examples/number_float_t.output new file mode 100644 index 00000000..27ba77dd --- /dev/null +++ b/docs/examples/number_float_t.output @@ -0,0 +1 @@ +true diff --git a/docs/examples/number_integer_t.cpp b/docs/examples/number_integer_t.cpp new file mode 100644 index 00000000..75ee57b6 --- /dev/null +++ b/docs/examples/number_integer_t.cpp @@ -0,0 +1,10 @@ +#include +#include +#include + +using json = nlohmann::json; + +int main() +{ + std::cout << std::boolalpha << std::is_same::value << std::endl; +} diff --git a/docs/examples/number_integer_t.output b/docs/examples/number_integer_t.output new file mode 100644 index 00000000..27ba77dd --- /dev/null +++ b/docs/examples/number_integer_t.output @@ -0,0 +1 @@ +true diff --git a/docs/examples/number_unsigned_t.cpp b/docs/examples/number_unsigned_t.cpp new file mode 100644 index 00000000..ff3b86df --- /dev/null +++ b/docs/examples/number_unsigned_t.cpp @@ -0,0 +1,10 @@ +#include +#include +#include + +using json = nlohmann::json; + +int main() +{ + std::cout << std::boolalpha << std::is_same::value << std::endl; +} diff --git a/docs/examples/number_unsigned_t.output b/docs/examples/number_unsigned_t.output new file mode 100644 index 00000000..27ba77dd --- /dev/null +++ b/docs/examples/number_unsigned_t.output @@ -0,0 +1 @@ +true diff --git a/docs/examples/object.cpp b/docs/examples/object.cpp new file mode 100644 index 00000000..ad167d4a --- /dev/null +++ b/docs/examples/object.cpp @@ -0,0 +1,28 @@ +#include +#include + +using json = nlohmann::json; + +int main() +{ + // create JSON objects + json j_no_init_list = json::object(); + json j_empty_init_list = json::object({}); + json j_list_of_pairs = json::object({ {"one", 1}, {"two", 2} }); + + // serialize the JSON objects + std::cout << j_no_init_list << '\n'; + std::cout << j_empty_init_list << '\n'; + std::cout << j_list_of_pairs << '\n'; + + // example for an exception + try + { + // can only create an object from a list of pairs + json j_invalid_object = json::object({{ "one", 1, 2 }}); + } + catch (const json::type_error& e) + { + std::cout << e.what() << '\n'; + } +} diff --git a/docs/examples/object.output b/docs/examples/object.output new file mode 100644 index 00000000..1a1d8140 --- /dev/null +++ b/docs/examples/object.output @@ -0,0 +1,4 @@ +{} +{} +{"one":1,"two":2} +[json.exception.type_error.301] cannot create object from initializer list diff --git a/docs/examples/object_comparator_t.cpp b/docs/examples/object_comparator_t.cpp new file mode 100644 index 00000000..6b82c7ca --- /dev/null +++ b/docs/examples/object_comparator_t.cpp @@ -0,0 +1,11 @@ +#include +#include + +using json = nlohmann::json; + +int main() +{ + std::cout << std::boolalpha + << "json::object_comparator_t(\"one\", \"two\") = " << json::object_comparator_t{}("one", "two") << "\n" + << "json::object_comparator_t(\"three\", \"four\") = " << json::object_comparator_t{}("three", "four") << std::endl; +} diff --git a/docs/examples/object_comparator_t.output b/docs/examples/object_comparator_t.output new file mode 100644 index 00000000..63620edb --- /dev/null +++ b/docs/examples/object_comparator_t.output @@ -0,0 +1,2 @@ +json::object_comparator_t("one", "two") = true +json::object_comparator_t("three", "four") = false diff --git a/docs/examples/object_t.cpp b/docs/examples/object_t.cpp new file mode 100644 index 00000000..85cfa3e3 --- /dev/null +++ b/docs/examples/object_t.cpp @@ -0,0 +1,10 @@ +#include +#include +#include + +using json = nlohmann::json; + +int main() +{ + std::cout << std::boolalpha << std::is_same, json::object_t>::value << std::endl; +} diff --git a/docs/examples/object_t.output b/docs/examples/object_t.output new file mode 100644 index 00000000..27ba77dd --- /dev/null +++ b/docs/examples/object_t.output @@ -0,0 +1 @@ +true diff --git a/docs/examples/operator__ValueType.cpp b/docs/examples/operator__ValueType.cpp new file mode 100644 index 00000000..e8a1d349 --- /dev/null +++ b/docs/examples/operator__ValueType.cpp @@ -0,0 +1,60 @@ +#include +#include +#include + +using json = nlohmann::json; + +int main() +{ + // create a JSON value with different types + json json_types = + { + {"boolean", true}, + { + "number", { + {"integer", 42}, + {"floating-point", 17.23} + } + }, + {"string", "Hello, world!"}, + {"array", {1, 2, 3, 4, 5}}, + {"null", nullptr} + }; + + // use implicit conversions + bool v1 = json_types["boolean"]; + int v2 = json_types["number"]["integer"]; + short v3 = json_types["number"]["integer"]; + float v4 = json_types["number"]["floating-point"]; + int v5 = json_types["number"]["floating-point"]; + std::string v6 = json_types["string"]; + std::vector v7 = json_types["array"]; + std::unordered_map v8 = json_types; + + // print the conversion results + std::cout << v1 << '\n'; + std::cout << v2 << ' ' << v3 << '\n'; + std::cout << v4 << ' ' << v5 << '\n'; + std::cout << v6 << '\n'; + + for (auto i : v7) + { + std::cout << i << ' '; + } + std::cout << "\n\n"; + + for (auto i : v8) + { + std::cout << i.first << ": " << i.second << '\n'; + } + + // example for an exception + try + { + bool v1 = json_types["string"]; + } + catch (const json::type_error& e) + { + std::cout << e.what() << '\n'; + } +} diff --git a/docs/examples/operator__ValueType.output b/docs/examples/operator__ValueType.output new file mode 100644 index 00000000..a3bd9fff --- /dev/null +++ b/docs/examples/operator__ValueType.output @@ -0,0 +1,12 @@ +1 +42 42 +17.23 17 +Hello, world! +1 2 3 4 5 + +string: "Hello, world!" +number: {"floating-point":17.23,"integer":42} +null: null +boolean: true +array: [1,2,3,4,5] +[json.exception.type_error.302] type must be boolean, but is string diff --git a/docs/examples/operator__equal.cpp b/docs/examples/operator__equal.cpp new file mode 100644 index 00000000..1426f489 --- /dev/null +++ b/docs/examples/operator__equal.cpp @@ -0,0 +1,24 @@ +#include +#include + +using json = nlohmann::json; + +int main() +{ + // create several JSON values + json array_1 = {1, 2, 3}; + json array_2 = {1, 2, 4}; + json object_1 = {{"A", "a"}, {"B", "b"}}; + json object_2 = {{"B", "b"}, {"A", "a"}}; + json number_1 = 17; + json number_2 = 17.000000000000001L; + json string_1 = "foo"; + json string_2 = "bar"; + + // output values and comparisons + std::cout << std::boolalpha; + std::cout << array_1 << " == " << array_2 << " " << (array_1 == array_2) << '\n'; + std::cout << object_1 << " == " << object_2 << " " << (object_1 == object_2) << '\n'; + std::cout << number_1 << " == " << number_2 << " " << (number_1 == number_2) << '\n'; + std::cout << string_1 << " == " << string_2 << " " << (string_1 == string_2) << '\n'; +} diff --git a/docs/examples/operator__equal.output b/docs/examples/operator__equal.output new file mode 100644 index 00000000..78067355 --- /dev/null +++ b/docs/examples/operator__equal.output @@ -0,0 +1,4 @@ +[1,2,3] == [1,2,4] false +{"A":"a","B":"b"} == {"A":"a","B":"b"} true +17 == 17.0 true +"foo" == "bar" false diff --git a/docs/examples/operator__equal__nullptr_t.cpp b/docs/examples/operator__equal__nullptr_t.cpp new file mode 100644 index 00000000..dbb21037 --- /dev/null +++ b/docs/examples/operator__equal__nullptr_t.cpp @@ -0,0 +1,22 @@ +#include +#include + +using json = nlohmann::json; + +int main() +{ + // create several JSON values + json array = {1, 2, 3}; + json object = {{"A", "a"}, {"B", "b"}}; + json number = 17; + json string = "foo"; + json null; + + // output values and comparisons + std::cout << std::boolalpha; + std::cout << array << " == nullptr " << (array == nullptr) << '\n'; + std::cout << object << " == nullptr " << (object == nullptr) << '\n'; + std::cout << number << " == nullptr " << (number == nullptr) << '\n'; + std::cout << string << " == nullptr " << (string == nullptr) << '\n'; + std::cout << null << " == nullptr " << (null == nullptr) << '\n'; +} diff --git a/docs/examples/operator__equal__nullptr_t.output b/docs/examples/operator__equal__nullptr_t.output new file mode 100644 index 00000000..b7128e13 --- /dev/null +++ b/docs/examples/operator__equal__nullptr_t.output @@ -0,0 +1,5 @@ +[1,2,3] == nullptr false +{"A":"a","B":"b"} == nullptr false +17 == nullptr false +"foo" == nullptr false +null == nullptr true diff --git a/docs/examples/operator__equal__specializations.cpp b/docs/examples/operator__equal__specializations.cpp new file mode 100644 index 00000000..97d5ecea --- /dev/null +++ b/docs/examples/operator__equal__specializations.cpp @@ -0,0 +1,16 @@ +#include +#include +#include + +using json = nlohmann::json; + +int main() +{ + nlohmann::json uj1 = {{"version", 1}, {"type", "integer"}}; + nlohmann::json uj2 = {{"type", "integer"}, {"version", 1}}; + + nlohmann::ordered_json oj1 = {{"version", 1}, {"type", "integer"}}; + nlohmann::ordered_json oj2 = {{"type", "integer"}, {"version", 1}}; + + std::cout << std::boolalpha << (uj1 == uj2) << '\n' << (oj1 == oj2) << std::endl; +} diff --git a/docs/examples/operator__equal__specializations.output b/docs/examples/operator__equal__specializations.output new file mode 100644 index 00000000..da29283a --- /dev/null +++ b/docs/examples/operator__equal__specializations.output @@ -0,0 +1,2 @@ +true +false diff --git a/docs/examples/operator__greater.cpp b/docs/examples/operator__greater.cpp new file mode 100644 index 00000000..65bb9c04 --- /dev/null +++ b/docs/examples/operator__greater.cpp @@ -0,0 +1,24 @@ +#include +#include + +using json = nlohmann::json; + +int main() +{ + // create several JSON values + json array_1 = {1, 2, 3}; + json array_2 = {1, 2, 4}; + json object_1 = {{"A", "a"}, {"B", "b"}}; + json object_2 = {{"B", "b"}, {"A", "a"}}; + json number_1 = 17; + json number_2 = 17.0000000000001L; + json string_1 = "foo"; + json string_2 = "bar"; + + // output values and comparisons + std::cout << std::boolalpha; + std::cout << array_1 << " > " << array_2 << " " << (array_1 > array_2) << '\n'; + std::cout << object_1 << " > " << object_2 << " " << (object_1 > object_2) << '\n'; + std::cout << number_1 << " > " << number_2 << " " << (number_1 > number_2) << '\n'; + std::cout << string_1 << " > " << string_2 << " " << (string_1 > string_2) << '\n'; +} diff --git a/docs/examples/operator__greater.output b/docs/examples/operator__greater.output new file mode 100644 index 00000000..910c48e3 --- /dev/null +++ b/docs/examples/operator__greater.output @@ -0,0 +1,4 @@ +[1,2,3] > [1,2,4] false +{"A":"a","B":"b"} > {"A":"a","B":"b"} false +17 > 17.0000000000001 false +"foo" > "bar" true diff --git a/docs/examples/operator__greaterequal.cpp b/docs/examples/operator__greaterequal.cpp new file mode 100644 index 00000000..f8659ee0 --- /dev/null +++ b/docs/examples/operator__greaterequal.cpp @@ -0,0 +1,24 @@ +#include +#include + +using json = nlohmann::json; + +int main() +{ + // create several JSON values + json array_1 = {1, 2, 3}; + json array_2 = {1, 2, 4}; + json object_1 = {{"A", "a"}, {"B", "b"}}; + json object_2 = {{"B", "b"}, {"A", "a"}}; + json number_1 = 17; + json number_2 = 17.0000000000001L; + json string_1 = "foo"; + json string_2 = "bar"; + + // output values and comparisons + std::cout << std::boolalpha; + std::cout << array_1 << " >= " << array_2 << " " << (array_1 >= array_2) << '\n'; + std::cout << object_1 << " >= " << object_2 << " " << (object_1 >= object_2) << '\n'; + std::cout << number_1 << " >= " << number_2 << " " << (number_1 >= number_2) << '\n'; + std::cout << string_1 << " >= " << string_2 << " " << (string_1 >= string_2) << '\n'; +} diff --git a/docs/examples/operator__greaterequal.output b/docs/examples/operator__greaterequal.output new file mode 100644 index 00000000..c7b91514 --- /dev/null +++ b/docs/examples/operator__greaterequal.output @@ -0,0 +1,4 @@ +[1,2,3] >= [1,2,4] false +{"A":"a","B":"b"} >= {"A":"a","B":"b"} true +17 >= 17.0000000000001 false +"foo" >= "bar" true diff --git a/docs/examples/operator__less.cpp b/docs/examples/operator__less.cpp new file mode 100644 index 00000000..64209a22 --- /dev/null +++ b/docs/examples/operator__less.cpp @@ -0,0 +1,24 @@ +#include +#include + +using json = nlohmann::json; + +int main() +{ + // create several JSON values + json array_1 = {1, 2, 3}; + json array_2 = {1, 2, 4}; + json object_1 = {{"A", "a"}, {"B", "b"}}; + json object_2 = {{"B", "b"}, {"A", "a"}}; + json number_1 = 17; + json number_2 = 17.0000000000001L; + json string_1 = "foo"; + json string_2 = "bar"; + + // output values and comparisons + std::cout << std::boolalpha; + std::cout << array_1 << " == " << array_2 << " " << (array_1 < array_2) << '\n'; + std::cout << object_1 << " == " << object_2 << " " << (object_1 < object_2) << '\n'; + std::cout << number_1 << " == " << number_2 << " " << (number_1 < number_2) << '\n'; + std::cout << string_1 << " == " << string_2 << " " << (string_1 < string_2) << '\n'; +} diff --git a/docs/examples/operator__less.output b/docs/examples/operator__less.output new file mode 100644 index 00000000..abbbc455 --- /dev/null +++ b/docs/examples/operator__less.output @@ -0,0 +1,4 @@ +[1,2,3] == [1,2,4] true +{"A":"a","B":"b"} == {"A":"a","B":"b"} false +17 == 17.0000000000001 true +"foo" == "bar" false diff --git a/docs/examples/operator__lessequal.cpp b/docs/examples/operator__lessequal.cpp new file mode 100644 index 00000000..543b9543 --- /dev/null +++ b/docs/examples/operator__lessequal.cpp @@ -0,0 +1,24 @@ +#include +#include + +using json = nlohmann::json; + +int main() +{ + // create several JSON values + json array_1 = {1, 2, 3}; + json array_2 = {1, 2, 4}; + json object_1 = {{"A", "a"}, {"B", "b"}}; + json object_2 = {{"B", "b"}, {"A", "a"}}; + json number_1 = 17; + json number_2 = 17.0000000000001L; + json string_1 = "foo"; + json string_2 = "bar"; + + // output values and comparisons + std::cout << std::boolalpha; + std::cout << array_1 << " <= " << array_2 << " " << (array_1 <= array_2) << '\n'; + std::cout << object_1 << " <= " << object_2 << " " << (object_1 <= object_2) << '\n'; + std::cout << number_1 << " <= " << number_2 << " " << (number_1 <= number_2) << '\n'; + std::cout << string_1 << " <= " << string_2 << " " << (string_1 <= string_2) << '\n'; +} diff --git a/docs/examples/operator__lessequal.output b/docs/examples/operator__lessequal.output new file mode 100644 index 00000000..f7f0327e --- /dev/null +++ b/docs/examples/operator__lessequal.output @@ -0,0 +1,4 @@ +[1,2,3] <= [1,2,4] true +{"A":"a","B":"b"} <= {"A":"a","B":"b"} true +17 <= 17.0000000000001 true +"foo" <= "bar" false diff --git a/docs/examples/operator__notequal.cpp b/docs/examples/operator__notequal.cpp new file mode 100644 index 00000000..43e89509 --- /dev/null +++ b/docs/examples/operator__notequal.cpp @@ -0,0 +1,24 @@ +#include +#include + +using json = nlohmann::json; + +int main() +{ + // create several JSON values + json array_1 = {1, 2, 3}; + json array_2 = {1, 2, 4}; + json object_1 = {{"A", "a"}, {"B", "b"}}; + json object_2 = {{"B", "b"}, {"A", "a"}}; + json number_1 = 17; + json number_2 = 17.000000000000001L; + json string_1 = "foo"; + json string_2 = "bar"; + + // output values and comparisons + std::cout << std::boolalpha; + std::cout << array_1 << " != " << array_2 << " " << (array_1 != array_2) << '\n'; + std::cout << object_1 << " != " << object_2 << " " << (object_1 != object_2) << '\n'; + std::cout << number_1 << " != " << number_2 << " " << (number_1 != number_2) << '\n'; + std::cout << string_1 << " != " << string_2 << " " << (string_1 != string_2) << '\n'; +} diff --git a/docs/examples/operator__notequal.output b/docs/examples/operator__notequal.output new file mode 100644 index 00000000..6cbc0e8e --- /dev/null +++ b/docs/examples/operator__notequal.output @@ -0,0 +1,4 @@ +[1,2,3] != [1,2,4] true +{"A":"a","B":"b"} != {"A":"a","B":"b"} false +17 != 17.0 false +"foo" != "bar" true diff --git a/docs/examples/operator__notequal__nullptr_t.cpp b/docs/examples/operator__notequal__nullptr_t.cpp new file mode 100644 index 00000000..dc7e6ac4 --- /dev/null +++ b/docs/examples/operator__notequal__nullptr_t.cpp @@ -0,0 +1,22 @@ +#include +#include + +using json = nlohmann::json; + +int main() +{ + // create several JSON values + json array = {1, 2, 3}; + json object = {{"A", "a"}, {"B", "b"}}; + json number = 17; + json string = "foo"; + json null; + + // output values and comparisons + std::cout << std::boolalpha; + std::cout << array << " != nullptr " << (array != nullptr) << '\n'; + std::cout << object << " != nullptr " << (object != nullptr) << '\n'; + std::cout << number << " != nullptr " << (number != nullptr) << '\n'; + std::cout << string << " != nullptr " << (string != nullptr) << '\n'; + std::cout << null << " != nullptr " << (null != nullptr) << '\n'; +} diff --git a/docs/examples/operator__notequal__nullptr_t.output b/docs/examples/operator__notequal__nullptr_t.output new file mode 100644 index 00000000..0fc36dcf --- /dev/null +++ b/docs/examples/operator__notequal__nullptr_t.output @@ -0,0 +1,5 @@ +[1,2,3] != nullptr true +{"A":"a","B":"b"} != nullptr true +17 != nullptr true +"foo" != nullptr true +null != nullptr false diff --git a/docs/examples/operator__value_t.cpp b/docs/examples/operator__value_t.cpp new file mode 100644 index 00000000..d9aac797 --- /dev/null +++ b/docs/examples/operator__value_t.cpp @@ -0,0 +1,38 @@ +#include +#include + +using json = nlohmann::json; + +int main() +{ + // create JSON values + json j_null; + json j_boolean = true; + json j_number_integer = -17; + json j_number_unsigned = 42u; + json j_number_float = 23.42; + json j_object = {{"one", 1}, {"two", 2}}; + json j_array = {1, 2, 4, 8, 16}; + json j_string = "Hello, world"; + + // call operator value_t() + json::value_t t_null = j_null; + json::value_t t_boolean = j_boolean; + json::value_t t_number_integer = j_number_integer; + json::value_t t_number_unsigned = j_number_unsigned; + json::value_t t_number_float = j_number_float; + json::value_t t_object = j_object; + json::value_t t_array = j_array; + json::value_t t_string = j_string; + + // print types + std::cout << std::boolalpha; + std::cout << (t_null == json::value_t::null) << '\n'; + std::cout << (t_boolean == json::value_t::boolean) << '\n'; + std::cout << (t_number_integer == json::value_t::number_integer) << '\n'; + std::cout << (t_number_unsigned == json::value_t::number_unsigned) << '\n'; + std::cout << (t_number_float == json::value_t::number_float) << '\n'; + std::cout << (t_object == json::value_t::object) << '\n'; + std::cout << (t_array == json::value_t::array) << '\n'; + std::cout << (t_string == json::value_t::string) << '\n'; +} diff --git a/docs/examples/operator__value_t.output b/docs/examples/operator__value_t.output new file mode 100644 index 00000000..310e632a --- /dev/null +++ b/docs/examples/operator__value_t.output @@ -0,0 +1,8 @@ +true +true +true +true +true +true +true +true diff --git a/docs/examples/operator_array__json_pointer.cpp b/docs/examples/operator_array__json_pointer.cpp new file mode 100644 index 00000000..0fa207f0 --- /dev/null +++ b/docs/examples/operator_array__json_pointer.cpp @@ -0,0 +1,49 @@ +#include +#include + +using json = nlohmann::json; +using namespace nlohmann::literals; + +int main() +{ + // create a JSON value + json j = + { + {"number", 1}, {"string", "foo"}, {"array", {1, 2}} + }; + + // read-only access + + // output element with JSON pointer "/number" + std::cout << j["/number"_json_pointer] << '\n'; + // output element with JSON pointer "/string" + std::cout << j["/string"_json_pointer] << '\n'; + // output element with JSON pointer "/array" + std::cout << j["/array"_json_pointer] << '\n'; + // output element with JSON pointer "/array/1" + std::cout << j["/array/1"_json_pointer] << '\n'; + + // writing access + + // change the string + j["/string"_json_pointer] = "bar"; + // output the changed string + std::cout << j["string"] << '\n'; + + // "change" a nonexisting object entry + j["/boolean"_json_pointer] = true; + // output the changed object + std::cout << j << '\n'; + + // change an array element + j["/array/1"_json_pointer] = 21; + // "change" an array element with nonexisting index + j["/array/4"_json_pointer] = 44; + // output the changed array + std::cout << j["array"] << '\n'; + + // "change" the array element past the end + j["/array/-"_json_pointer] = 55; + // output the changed array + std::cout << j["array"] << '\n'; +} diff --git a/docs/examples/operator_array__json_pointer.output b/docs/examples/operator_array__json_pointer.output new file mode 100644 index 00000000..1fd1b032 --- /dev/null +++ b/docs/examples/operator_array__json_pointer.output @@ -0,0 +1,8 @@ +1 +"foo" +[1,2] +2 +"bar" +{"array":[1,2],"boolean":true,"number":1,"string":"bar"} +[1,21,null,null,44] +[1,21,null,null,44,55] diff --git a/docs/examples/operator_array__json_pointer_const.cpp b/docs/examples/operator_array__json_pointer_const.cpp new file mode 100644 index 00000000..f40e2494 --- /dev/null +++ b/docs/examples/operator_array__json_pointer_const.cpp @@ -0,0 +1,25 @@ +#include +#include + +using json = nlohmann::json; +using namespace nlohmann::literals; + +int main() +{ + // create a JSON value + const json j = + { + {"number", 1}, {"string", "foo"}, {"array", {1, 2}} + }; + + // read-only access + + // output element with JSON pointer "/number" + std::cout << j["/number"_json_pointer] << '\n'; + // output element with JSON pointer "/string" + std::cout << j["/string"_json_pointer] << '\n'; + // output element with JSON pointer "/array" + std::cout << j["/array"_json_pointer] << '\n'; + // output element with JSON pointer "/array/1" + std::cout << j["/array/1"_json_pointer] << '\n'; +} diff --git a/docs/examples/operator_array__json_pointer_const.output b/docs/examples/operator_array__json_pointer_const.output new file mode 100644 index 00000000..7b9306bb --- /dev/null +++ b/docs/examples/operator_array__json_pointer_const.output @@ -0,0 +1,4 @@ +1 +"foo" +[1,2] +2 diff --git a/docs/examples/operator_array__keytype.c++17.cpp b/docs/examples/operator_array__keytype.c++17.cpp new file mode 100644 index 00000000..7f2b41dd --- /dev/null +++ b/docs/examples/operator_array__keytype.c++17.cpp @@ -0,0 +1,34 @@ +#include +#include +#include +#include + +using namespace std::string_view_literals; +using json = nlohmann::json; + +int main() +{ + // create a JSON object + json object = + { + {"one", 1}, {"two", 2}, {"three", 2.9} + }; + + // output element with key "two" + std::cout << object["two"sv] << "\n\n"; + + // change element with key "three" + object["three"sv] = 3; + + // output changed array + std::cout << std::setw(4) << object << "\n\n"; + + // mention nonexisting key + object["four"sv]; + + // write to nonexisting key + object["five"sv]["really"sv]["nested"sv] = true; + + // output changed object + std::cout << std::setw(4) << object << '\n'; +} diff --git a/docs/examples/operator_array__keytype.c++17.output b/docs/examples/operator_array__keytype.c++17.output new file mode 100644 index 00000000..b643587f --- /dev/null +++ b/docs/examples/operator_array__keytype.c++17.output @@ -0,0 +1,19 @@ +2 + +{ + "one": 1, + "three": 3, + "two": 2 +} + +{ + "five": { + "really": { + "nested": true + } + }, + "four": null, + "one": 1, + "three": 3, + "two": 2 +} diff --git a/docs/examples/operator_array__keytype_const.c++17.cpp b/docs/examples/operator_array__keytype_const.c++17.cpp new file mode 100644 index 00000000..2cf94f40 --- /dev/null +++ b/docs/examples/operator_array__keytype_const.c++17.cpp @@ -0,0 +1,18 @@ +#include +#include +#include + +using namespace std::string_view_literals; +using json = nlohmann::json; + +int main() +{ + // create a JSON object + const json object = + { + {"one", 1}, {"two", 2}, {"three", 2.9} + }; + + // output element with key "two" + std::cout << object["two"sv] << '\n'; +} diff --git a/docs/examples/operator_array__keytype_const.c++17.output b/docs/examples/operator_array__keytype_const.c++17.output new file mode 100644 index 00000000..0cfbf088 --- /dev/null +++ b/docs/examples/operator_array__keytype_const.c++17.output @@ -0,0 +1 @@ +2 diff --git a/docs/examples/operator_array__object_t_key_type.cpp b/docs/examples/operator_array__object_t_key_type.cpp new file mode 100644 index 00000000..f9b7f731 --- /dev/null +++ b/docs/examples/operator_array__object_t_key_type.cpp @@ -0,0 +1,32 @@ +#include +#include +#include + +using json = nlohmann::json; + +int main() +{ + // create a JSON object + json object = + { + {"one", 1}, {"two", 2}, {"three", 2.9} + }; + + // output element with key "two" + std::cout << object["two"] << "\n\n"; + + // change element with key "three" + object["three"] = 3; + + // output changed array + std::cout << std::setw(4) << object << "\n\n"; + + // mention nonexisting key + object["four"]; + + // write to nonexisting key + object["five"]["really"]["nested"] = true; + + // output changed object + std::cout << std::setw(4) << object << '\n'; +} diff --git a/docs/examples/operator_array__object_t_key_type.output b/docs/examples/operator_array__object_t_key_type.output new file mode 100644 index 00000000..b643587f --- /dev/null +++ b/docs/examples/operator_array__object_t_key_type.output @@ -0,0 +1,19 @@ +2 + +{ + "one": 1, + "three": 3, + "two": 2 +} + +{ + "five": { + "really": { + "nested": true + } + }, + "four": null, + "one": 1, + "three": 3, + "two": 2 +} diff --git a/docs/examples/operator_array__object_t_key_type_const.cpp b/docs/examples/operator_array__object_t_key_type_const.cpp new file mode 100644 index 00000000..1bdb3402 --- /dev/null +++ b/docs/examples/operator_array__object_t_key_type_const.cpp @@ -0,0 +1,16 @@ +#include +#include + +using json = nlohmann::json; + +int main() +{ + // create a JSON object + const json object = + { + {"one", 1}, {"two", 2}, {"three", 2.9} + }; + + // output element with key "two" + std::cout << object["two"] << '\n'; +} diff --git a/docs/examples/operator_array__object_t_key_type_const.output b/docs/examples/operator_array__object_t_key_type_const.output new file mode 100644 index 00000000..0cfbf088 --- /dev/null +++ b/docs/examples/operator_array__object_t_key_type_const.output @@ -0,0 +1 @@ +2 diff --git a/docs/examples/operator_array__size_type.cpp b/docs/examples/operator_array__size_type.cpp new file mode 100644 index 00000000..d6f3e153 --- /dev/null +++ b/docs/examples/operator_array__size_type.cpp @@ -0,0 +1,25 @@ +#include +#include + +using json = nlohmann::json; + +int main() +{ + // create a JSON array + json array = {1, 2, 3, 4, 5}; + + // output element at index 3 (fourth element) + std::cout << array[3] << '\n'; + + // change last element to 6 + array[array.size() - 1] = 6; + + // output changed array + std::cout << array << '\n'; + + // write beyond array limit + array[10] = 11; + + // output changed array + std::cout << array << '\n'; +} diff --git a/docs/examples/operator_array__size_type.output b/docs/examples/operator_array__size_type.output new file mode 100644 index 00000000..a91a1069 --- /dev/null +++ b/docs/examples/operator_array__size_type.output @@ -0,0 +1,3 @@ +4 +[1,2,3,4,6] +[1,2,3,4,6,null,null,null,null,null,11] diff --git a/docs/examples/operator_array__size_type_const.cpp b/docs/examples/operator_array__size_type_const.cpp new file mode 100644 index 00000000..d56fa0a4 --- /dev/null +++ b/docs/examples/operator_array__size_type_const.cpp @@ -0,0 +1,13 @@ +#include +#include + +using json = nlohmann::json; + +int main() +{ + // create JSON array + const json array = {"first", "2nd", "third", "fourth"}; + + // output element at index 2 (third element) + std::cout << array.at(2) << '\n'; +} diff --git a/docs/examples/operator_array__size_type_const.output b/docs/examples/operator_array__size_type_const.output new file mode 100644 index 00000000..4450c9f0 --- /dev/null +++ b/docs/examples/operator_array__size_type_const.output @@ -0,0 +1 @@ +"third" diff --git a/docs/examples/operator_deserialize.cpp b/docs/examples/operator_deserialize.cpp new file mode 100644 index 00000000..8e3d8bd8 --- /dev/null +++ b/docs/examples/operator_deserialize.cpp @@ -0,0 +1,26 @@ +#include +#include +#include +#include + +using json = nlohmann::json; + +int main() +{ + // create stream with serialized JSON + std::stringstream ss; + ss << R"({ + "number": 23, + "string": "Hello, world!", + "array": [1, 2, 3, 4, 5], + "boolean": false, + "null": null + })"; + + // create JSON value and read the serialization from the stream + json j; + ss >> j; + + // serialize JSON + std::cout << std::setw(2) << j << '\n'; +} diff --git a/docs/examples/operator_deserialize.output b/docs/examples/operator_deserialize.output new file mode 100644 index 00000000..81a203fb --- /dev/null +++ b/docs/examples/operator_deserialize.output @@ -0,0 +1,13 @@ +{ + "array": [ + 1, + 2, + 3, + 4, + 5 + ], + "boolean": false, + "null": null, + "number": 23, + "string": "Hello, world!" +} diff --git a/docs/examples/operator_literal_json.cpp b/docs/examples/operator_literal_json.cpp new file mode 100644 index 00000000..84ca6297 --- /dev/null +++ b/docs/examples/operator_literal_json.cpp @@ -0,0 +1,13 @@ +#include +#include +#include + +using json = nlohmann::json; +using namespace nlohmann::literals; + +int main() +{ + json j = R"( {"hello": "world", "answer": 42} )"_json; + + std::cout << std::setw(2) << j << '\n'; +} diff --git a/docs/examples/operator_literal_json.output b/docs/examples/operator_literal_json.output new file mode 100644 index 00000000..6c0a7b34 --- /dev/null +++ b/docs/examples/operator_literal_json.output @@ -0,0 +1,4 @@ +{ + "answer": 42, + "hello": "world" +} diff --git a/docs/examples/operator_literal_json_pointer.cpp b/docs/examples/operator_literal_json_pointer.cpp new file mode 100644 index 00000000..aba93e88 --- /dev/null +++ b/docs/examples/operator_literal_json_pointer.cpp @@ -0,0 +1,14 @@ +#include +#include +#include + +using json = nlohmann::json; +using namespace nlohmann::literals; + +int main() +{ + json j = R"( {"hello": "world", "answer": 42} )"_json; + auto val = j["/hello"_json_pointer]; + + std::cout << std::setw(2) << val << '\n'; +} diff --git a/docs/examples/operator_literal_json_pointer.output b/docs/examples/operator_literal_json_pointer.output new file mode 100644 index 00000000..b0fcd347 --- /dev/null +++ b/docs/examples/operator_literal_json_pointer.output @@ -0,0 +1 @@ +"world" diff --git a/docs/examples/operator_ltlt__basic_json.cpp b/docs/examples/operator_ltlt__basic_json.cpp new file mode 100644 index 00000000..3bd4ad57 --- /dev/null +++ b/docs/examples/operator_ltlt__basic_json.cpp @@ -0,0 +1,21 @@ +#include +#include +#include + +using json = nlohmann::json; + +int main() +{ + // create JSON values + json j_object = {{"one", 1}, {"two", 2}}; + json j_array = {1, 2, 4, 8, 16}; + + // serialize without indentation + std::cout << j_object << "\n\n"; + std::cout << j_array << "\n\n"; + + // serialize with indentation + std::cout << std::setw(4) << j_object << "\n\n"; + std::cout << std::setw(2) << j_array << "\n\n"; + std::cout << std::setw(1) << std::setfill('\t') << j_object << "\n\n"; +} diff --git a/docs/examples/operator_ltlt__basic_json.output b/docs/examples/operator_ltlt__basic_json.output new file mode 100644 index 00000000..7e86bfa2 --- /dev/null +++ b/docs/examples/operator_ltlt__basic_json.output @@ -0,0 +1,22 @@ +{"one":1,"two":2} + +[1,2,4,8,16] + +{ + "one": 1, + "two": 2 +} + +[ + 1, + 2, + 4, + 8, + 16 +] + +{ + "one": 1, + "two": 2 +} + diff --git a/docs/examples/operator_ltlt__json_pointer.cpp b/docs/examples/operator_ltlt__json_pointer.cpp new file mode 100644 index 00000000..f4fac886 --- /dev/null +++ b/docs/examples/operator_ltlt__json_pointer.cpp @@ -0,0 +1,13 @@ +#include +#include + +using json = nlohmann::json; + +int main() +{ + // create JSON poiner + json::json_pointer ptr("/foo/bar/baz"); + + // write string representation to stream + std::cout << ptr << std::endl; +} diff --git a/docs/examples/operator_ltlt__json_pointer.output b/docs/examples/operator_ltlt__json_pointer.output new file mode 100644 index 00000000..ed359432 --- /dev/null +++ b/docs/examples/operator_ltlt__json_pointer.output @@ -0,0 +1 @@ +/foo/bar/baz diff --git a/docs/examples/operator_spaceship__const_reference.c++20.cpp b/docs/examples/operator_spaceship__const_reference.c++20.cpp new file mode 100644 index 00000000..9e7c9e9b --- /dev/null +++ b/docs/examples/operator_spaceship__const_reference.c++20.cpp @@ -0,0 +1,40 @@ +#include +#include +#include + +using json = nlohmann::json; + +const char* to_string(const std::partial_ordering& po) +{ + if (std::is_lt(po)) + { + return "less"; + } + else if (std::is_gt(po)) + { + return "greater"; + } + else if (std::is_eq(po)) + { + return "equivalent"; + } + return "unordered"; +} + +int main() +{ + // create several JSON values + json array_1 = {1, 2, 3}; + json array_2 = {1, 2, 4}; + json object_1 = {{"A", "a"}, {"B", "b"}}; + json object_2 = {{"B", "b"}, {"A", "a"}}; + json number = 17; + json string = "foo"; + json discarded = json(json::value_t::discarded); + + // output values and comparisons + std::cout << array_1 << " <=> " << array_2 << " := " << to_string(array_1 <=> array_2) << '\n'; // *NOPAD* + std::cout << object_1 << " <=> " << object_2 << " := " << to_string(object_1 <=> object_2) << '\n'; // *NOPAD* + std::cout << string << " <=> " << number << " := " << to_string(string <=> number) << '\n'; // *NOPAD* + std::cout << string << " <=> " << discarded << " := " << to_string(string <=> discarded) << '\n'; // *NOPAD* +} diff --git a/docs/examples/operator_spaceship__const_reference.c++20.output b/docs/examples/operator_spaceship__const_reference.c++20.output new file mode 100644 index 00000000..2e8bf9f6 --- /dev/null +++ b/docs/examples/operator_spaceship__const_reference.c++20.output @@ -0,0 +1,4 @@ +[1,2,3] <=> [1,2,4] := less +{"A":"a","B":"b"} <=> {"A":"a","B":"b"} := equivalent +"foo" <=> 17 := greater +"foo" <=> := unordered diff --git a/docs/examples/operator_spaceship__scalartype.c++20.cpp b/docs/examples/operator_spaceship__scalartype.c++20.cpp new file mode 100644 index 00000000..ebb5b434 --- /dev/null +++ b/docs/examples/operator_spaceship__scalartype.c++20.cpp @@ -0,0 +1,40 @@ +#include +#include +#include + +using json = nlohmann::json; + +const char* to_string(const std::partial_ordering& po) +{ + if (std::is_lt(po)) + { + return "less"; + } + else if (std::is_gt(po)) + { + return "greater"; + } + else if (std::is_eq(po)) + { + return "equivalent"; + } + return "unordered"; +} + +int main() +{ + using float_limits = std::numeric_limits; + constexpr auto nan = float_limits::quiet_NaN(); + + // create several JSON values + json boolean = false; + json number = 17; + json string = "17"; + + // output values and comparisons + std::cout << std::boolalpha << std::fixed; + std::cout << boolean << " <=> " << true << " := " << to_string(boolean <=> true) << '\n'; // *NOPAD* + std::cout << number << " <=> " << 17.0 << " := " << to_string(number <=> 17.0) << '\n'; // *NOPAD* + std::cout << number << " <=> " << nan << " := " << to_string(number <=> nan) << '\n'; // *NOPAD* + std::cout << string << " <=> " << 17 << " := " << to_string(string <=> 17) << '\n'; // *NOPAD* +} diff --git a/docs/examples/operator_spaceship__scalartype.c++20.output b/docs/examples/operator_spaceship__scalartype.c++20.output new file mode 100644 index 00000000..b2939a5f --- /dev/null +++ b/docs/examples/operator_spaceship__scalartype.c++20.output @@ -0,0 +1,4 @@ +false <=> true := less +17 <=> 17.000000 := equivalent +17 <=> nan := unordered +"17" <=> 17 := greater diff --git a/docs/examples/ordered_json.cpp b/docs/examples/ordered_json.cpp new file mode 100644 index 00000000..effad530 --- /dev/null +++ b/docs/examples/ordered_json.cpp @@ -0,0 +1,14 @@ +#include +#include + +using ordered_json = nlohmann::ordered_json; + +int main() +{ + ordered_json j; + j["one"] = 1; + j["two"] = 2; + j["three"] = 3; + + std::cout << j.dump(2) << '\n'; +} diff --git a/docs/examples/ordered_json.output b/docs/examples/ordered_json.output new file mode 100644 index 00000000..120cbb28 --- /dev/null +++ b/docs/examples/ordered_json.output @@ -0,0 +1,5 @@ +{ + "one": 1, + "two": 2, + "three": 3 +} diff --git a/docs/examples/ordered_map.cpp b/docs/examples/ordered_map.cpp new file mode 100644 index 00000000..dcc60cb5 --- /dev/null +++ b/docs/examples/ordered_map.cpp @@ -0,0 +1,43 @@ +#include +#include + +// simple output function +template +void output(const char* prefix, const Map& m) +{ + std::cout << prefix << " = { "; + for (auto& element : m) + { + std::cout << element.first << ":" << element.second << ' '; + } + std::cout << "}" << std::endl; +} + +int main() +{ + // create and fill two maps + nlohmann::ordered_map m_ordered; + m_ordered["one"] = "eins"; + m_ordered["two"] = "zwei"; + m_ordered["three"] = "drei"; + + std::map m_std; + m_std["one"] = "eins"; + m_std["two"] = "zwei"; + m_std["three"] = "drei"; + + // output: m_ordered is ordered by insertion order, m_std is ordered by key + output("m_ordered", m_ordered); + output("m_std", m_std); + + // erase and re-add "one" key + m_ordered.erase("one"); + m_ordered["one"] = "eins"; + + m_std.erase("one"); + m_std["one"] = "eins"; + + // output: m_ordered shows newly added key at the end; m_std is again ordered by key + output("m_ordered", m_ordered); + output("m_std", m_std); +} diff --git a/docs/examples/ordered_map.output b/docs/examples/ordered_map.output new file mode 100644 index 00000000..a4ffc454 --- /dev/null +++ b/docs/examples/ordered_map.output @@ -0,0 +1,4 @@ +m_ordered = { one:eins two:zwei three:drei } +m_std = { one:eins three:drei two:zwei } +m_ordered = { two:zwei three:drei one:eins } +m_std = { one:eins three:drei two:zwei } diff --git a/docs/examples/other_error.cpp b/docs/examples/other_error.cpp new file mode 100644 index 00000000..56aa8ae6 --- /dev/null +++ b/docs/examples/other_error.cpp @@ -0,0 +1,30 @@ +#include +#include + +using json = nlohmann::json; +using namespace nlohmann::literals; + +int main() +{ + try + { + // executing a failing JSON Patch operation + json value = R"({ + "best_biscuit": { + "name": "Oreo" + } + })"_json; + json patch = R"([{ + "op": "test", + "path": "/best_biscuit/name", + "value": "Choco Leibniz" + }])"_json; + value.patch(patch); + } + catch (const json::other_error& e) + { + // output exception information + std::cout << "message: " << e.what() << '\n' + << "exception id: " << e.id << std::endl; + } +} diff --git a/docs/examples/other_error.output b/docs/examples/other_error.output new file mode 100644 index 00000000..b80f1cb3 --- /dev/null +++ b/docs/examples/other_error.output @@ -0,0 +1,2 @@ +message: [json.exception.other_error.501] unsuccessful: {"op":"test","path":"/best_biscuit/name","value":"Choco Leibniz"} +exception id: 501 diff --git a/docs/examples/out_of_range.cpp b/docs/examples/out_of_range.cpp new file mode 100644 index 00000000..03282082 --- /dev/null +++ b/docs/examples/out_of_range.cpp @@ -0,0 +1,20 @@ +#include +#include + +using json = nlohmann::json; + +int main() +{ + try + { + // calling at() for an invalid index + json j = {1, 2, 3, 4}; + j.at(4) = 10; + } + catch (const json::out_of_range& e) + { + // output exception information + std::cout << "message: " << e.what() << '\n' + << "exception id: " << e.id << std::endl; + } +} diff --git a/docs/examples/out_of_range.output b/docs/examples/out_of_range.output new file mode 100644 index 00000000..29ec76b3 --- /dev/null +++ b/docs/examples/out_of_range.output @@ -0,0 +1,2 @@ +message: [json.exception.out_of_range.401] array index 4 is out of range +exception id: 401 diff --git a/docs/examples/parse__allow_exceptions.cpp b/docs/examples/parse__allow_exceptions.cpp new file mode 100644 index 00000000..f396c347 --- /dev/null +++ b/docs/examples/parse__allow_exceptions.cpp @@ -0,0 +1,36 @@ +#include +#include + +using json = nlohmann::json; + +int main() +{ + // an invalid JSON text + std::string text = R"( + { + "key": "value without closing quotes + } + )"; + + // parse with exceptions + try + { + json j = json::parse(text); + } + catch (const json::parse_error& e) + { + std::cout << e.what() << std::endl; + } + + // parse without exceptions + json j = json::parse(text, nullptr, false); + + if (j.is_discarded()) + { + std::cout << "the input is invalid JSON" << std::endl; + } + else + { + std::cout << "the input is valid JSON: " << j << std::endl; + } +} diff --git a/docs/examples/parse__allow_exceptions.output b/docs/examples/parse__allow_exceptions.output new file mode 100644 index 00000000..d650824d --- /dev/null +++ b/docs/examples/parse__allow_exceptions.output @@ -0,0 +1,2 @@ +[json.exception.parse_error.101] parse error at line 4, column 0: syntax error while parsing value - invalid string: control character U+000A (LF) must be escaped to \u000A or \n; last read: '"value without closing quotes' +the input is invalid JSON diff --git a/docs/examples/parse__array__parser_callback_t.cpp b/docs/examples/parse__array__parser_callback_t.cpp new file mode 100644 index 00000000..63f0a0e4 --- /dev/null +++ b/docs/examples/parse__array__parser_callback_t.cpp @@ -0,0 +1,30 @@ +#include +#include +#include + +using json = nlohmann::json; + +int main() +{ + // a JSON text + char text[] = R"( + { + "Image": { + "Width": 800, + "Height": 600, + "Title": "View from 15th Floor", + "Thumbnail": { + "Url": "http://www.example.com/image/481989943", + "Height": 125, + "Width": 100 + }, + "Animated" : false, + "IDs": [116, 943, 234, 38793] + } + } + )"; + + // parse and serialize JSON + json j_complete = json::parse(text); + std::cout << std::setw(4) << j_complete << "\n\n"; +} diff --git a/docs/examples/parse__array__parser_callback_t.output b/docs/examples/parse__array__parser_callback_t.output new file mode 100644 index 00000000..62bb8586 --- /dev/null +++ b/docs/examples/parse__array__parser_callback_t.output @@ -0,0 +1,20 @@ +{ + "Image": { + "Animated": false, + "Height": 600, + "IDs": [ + 116, + 943, + 234, + 38793 + ], + "Thumbnail": { + "Height": 125, + "Url": "http://www.example.com/image/481989943", + "Width": 100 + }, + "Title": "View from 15th Floor", + "Width": 800 + } +} + diff --git a/docs/examples/parse__contiguouscontainer__parser_callback_t.cpp b/docs/examples/parse__contiguouscontainer__parser_callback_t.cpp new file mode 100644 index 00000000..6eb409bb --- /dev/null +++ b/docs/examples/parse__contiguouscontainer__parser_callback_t.cpp @@ -0,0 +1,15 @@ +#include +#include +#include + +using json = nlohmann::json; + +int main() +{ + // a JSON text given as std::vector + std::vector text = {'[', '1', ',', '2', ',', '3', ']', '\0'}; + + // parse and serialize JSON + json j_complete = json::parse(text); + std::cout << std::setw(4) << j_complete << "\n\n"; +} diff --git a/docs/examples/parse__contiguouscontainer__parser_callback_t.output b/docs/examples/parse__contiguouscontainer__parser_callback_t.output new file mode 100644 index 00000000..74633e80 --- /dev/null +++ b/docs/examples/parse__contiguouscontainer__parser_callback_t.output @@ -0,0 +1,6 @@ +[ + 1, + 2, + 3 +] + diff --git a/docs/examples/parse__istream__parser_callback_t.cpp b/docs/examples/parse__istream__parser_callback_t.cpp new file mode 100644 index 00000000..2ef14dab --- /dev/null +++ b/docs/examples/parse__istream__parser_callback_t.cpp @@ -0,0 +1,57 @@ +#include +#include +#include +#include + +using json = nlohmann::json; + +int main() +{ + // a JSON text + auto text = R"( + { + "Image": { + "Width": 800, + "Height": 600, + "Title": "View from 15th Floor", + "Thumbnail": { + "Url": "http://www.example.com/image/481989943", + "Height": 125, + "Width": 100 + }, + "Animated" : false, + "IDs": [116, 943, 234, 38793] + } + } + )"; + + // fill a stream with JSON text + std::stringstream ss; + ss << text; + + // parse and serialize JSON + json j_complete = json::parse(ss); + std::cout << std::setw(4) << j_complete << "\n\n"; + + // define parser callback + json::parser_callback_t cb = [](int depth, json::parse_event_t event, json & parsed) + { + // skip object elements with key "Thumbnail" + if (event == json::parse_event_t::key and parsed == json("Thumbnail")) + { + return false; + } + else + { + return true; + } + }; + + // fill a stream with JSON text + ss.clear(); + ss << text; + + // parse (with callback) and serialize JSON + json j_filtered = json::parse(ss, cb); + std::cout << std::setw(4) << j_filtered << '\n'; +} \ No newline at end of file diff --git a/docs/examples/parse__istream__parser_callback_t.output b/docs/examples/parse__istream__parser_callback_t.output new file mode 100644 index 00000000..279a7ff7 --- /dev/null +++ b/docs/examples/parse__istream__parser_callback_t.output @@ -0,0 +1,34 @@ +{ + "Image": { + "Animated": false, + "Height": 600, + "IDs": [ + 116, + 943, + 234, + 38793 + ], + "Thumbnail": { + "Height": 125, + "Url": "http://www.example.com/image/481989943", + "Width": 100 + }, + "Title": "View from 15th Floor", + "Width": 800 + } +} + +{ + "Image": { + "Animated": false, + "Height": 600, + "IDs": [ + 116, + 943, + 234, + 38793 + ], + "Title": "View from 15th Floor", + "Width": 800 + } +} diff --git a/docs/examples/parse__iterator_pair.cpp b/docs/examples/parse__iterator_pair.cpp new file mode 100644 index 00000000..d0c30c1a --- /dev/null +++ b/docs/examples/parse__iterator_pair.cpp @@ -0,0 +1,15 @@ +#include +#include +#include + +using json = nlohmann::json; + +int main() +{ + // a JSON text given an input with other values + std::vector input = {'[', '1', ',', '2', ',', '3', ']', 'o', 't', 'h', 'e', 'r'}; + + // parse and serialize JSON + json j_complete = json::parse(input.begin(), input.begin() + 7); + std::cout << std::setw(4) << j_complete << "\n\n"; +} diff --git a/docs/examples/parse__iterator_pair.link b/docs/examples/parse__iterator_pair.link new file mode 100644 index 00000000..f464e54c --- /dev/null +++ b/docs/examples/parse__iterator_pair.link @@ -0,0 +1 @@ +online \ No newline at end of file diff --git a/docs/examples/parse__iterator_pair.output b/docs/examples/parse__iterator_pair.output new file mode 100644 index 00000000..74633e80 --- /dev/null +++ b/docs/examples/parse__iterator_pair.output @@ -0,0 +1,6 @@ +[ + 1, + 2, + 3 +] + diff --git a/docs/examples/parse__pointers.cpp b/docs/examples/parse__pointers.cpp new file mode 100644 index 00000000..a5a16eea --- /dev/null +++ b/docs/examples/parse__pointers.cpp @@ -0,0 +1,15 @@ +#include +#include +#include + +using json = nlohmann::json; + +int main() +{ + // a JSON text given as string that is not null-terminated + const char* ptr = "[1,2,3]another value"; + + // parse and serialize JSON + json j_complete = json::parse(ptr, ptr + 7); + std::cout << std::setw(4) << j_complete << "\n\n"; +} diff --git a/docs/examples/parse__pointers.link b/docs/examples/parse__pointers.link new file mode 100644 index 00000000..9a93ef1c --- /dev/null +++ b/docs/examples/parse__pointers.link @@ -0,0 +1 @@ +online \ No newline at end of file diff --git a/docs/examples/parse__pointers.output b/docs/examples/parse__pointers.output new file mode 100644 index 00000000..74633e80 --- /dev/null +++ b/docs/examples/parse__pointers.output @@ -0,0 +1,6 @@ +[ + 1, + 2, + 3 +] + diff --git a/docs/examples/parse__string__parser_callback_t.cpp b/docs/examples/parse__string__parser_callback_t.cpp new file mode 100644 index 00000000..19c6c448 --- /dev/null +++ b/docs/examples/parse__string__parser_callback_t.cpp @@ -0,0 +1,48 @@ +#include +#include +#include + +using json = nlohmann::json; + +int main() +{ + // a JSON text + auto text = R"( + { + "Image": { + "Width": 800, + "Height": 600, + "Title": "View from 15th Floor", + "Thumbnail": { + "Url": "http://www.example.com/image/481989943", + "Height": 125, + "Width": 100 + }, + "Animated" : false, + "IDs": [116, 943, 234, 38793] + } + } + )"; + + // parse and serialize JSON + json j_complete = json::parse(text); + std::cout << std::setw(4) << j_complete << "\n\n"; + + // define parser callback + json::parser_callback_t cb = [](int depth, json::parse_event_t event, json & parsed) + { + // skip object elements with key "Thumbnail" + if (event == json::parse_event_t::key and parsed == json("Thumbnail")) + { + return false; + } + else + { + return true; + } + }; + + // parse (with callback) and serialize JSON + json j_filtered = json::parse(text, cb); + std::cout << std::setw(4) << j_filtered << '\n'; +} diff --git a/docs/examples/parse__string__parser_callback_t.output b/docs/examples/parse__string__parser_callback_t.output new file mode 100644 index 00000000..279a7ff7 --- /dev/null +++ b/docs/examples/parse__string__parser_callback_t.output @@ -0,0 +1,34 @@ +{ + "Image": { + "Animated": false, + "Height": 600, + "IDs": [ + 116, + 943, + 234, + 38793 + ], + "Thumbnail": { + "Height": 125, + "Url": "http://www.example.com/image/481989943", + "Width": 100 + }, + "Title": "View from 15th Floor", + "Width": 800 + } +} + +{ + "Image": { + "Animated": false, + "Height": 600, + "IDs": [ + 116, + 943, + 234, + 38793 + ], + "Title": "View from 15th Floor", + "Width": 800 + } +} diff --git a/docs/examples/parse_error.cpp b/docs/examples/parse_error.cpp new file mode 100644 index 00000000..ce15ebe2 --- /dev/null +++ b/docs/examples/parse_error.cpp @@ -0,0 +1,20 @@ +#include +#include + +using json = nlohmann::json; + +int main() +{ + try + { + // parsing input with a syntax error + json::parse("[1,2,3,]"); + } + catch (const json::parse_error& e) + { + // output exception information + std::cout << "message: " << e.what() << '\n' + << "exception id: " << e.id << '\n' + << "byte position of error: " << e.byte << std::endl; + } +} diff --git a/docs/examples/parse_error.output b/docs/examples/parse_error.output new file mode 100644 index 00000000..fe366ff8 --- /dev/null +++ b/docs/examples/parse_error.output @@ -0,0 +1,3 @@ +message: [json.exception.parse_error.101] parse error at line 1, column 8: syntax error while parsing value - unexpected ']'; expected '[', '{', or a literal +exception id: 101 +byte position of error: 8 diff --git a/docs/examples/patch.cpp b/docs/examples/patch.cpp new file mode 100644 index 00000000..b7ecb8ee --- /dev/null +++ b/docs/examples/patch.cpp @@ -0,0 +1,33 @@ +#include +#include +#include + +using json = nlohmann::json; +using namespace nlohmann::literals; + +int main() +{ + // the original document + json doc = R"( + { + "baz": "qux", + "foo": "bar" + } + )"_json; + + // the patch + json patch = R"( + [ + { "op": "replace", "path": "/baz", "value": "boo" }, + { "op": "add", "path": "/hello", "value": ["world"] }, + { "op": "remove", "path": "/foo"} + ] + )"_json; + + // apply the patch + json patched_doc = doc.patch(patch); + + // output original and patched document + std::cout << std::setw(4) << doc << "\n\n" + << std::setw(4) << patched_doc << std::endl; +} diff --git a/docs/examples/patch.output b/docs/examples/patch.output new file mode 100644 index 00000000..eb558fe2 --- /dev/null +++ b/docs/examples/patch.output @@ -0,0 +1,11 @@ +{ + "baz": "qux", + "foo": "bar" +} + +{ + "baz": "boo", + "hello": [ + "world" + ] +} diff --git a/docs/examples/patch_inplace.cpp b/docs/examples/patch_inplace.cpp new file mode 100644 index 00000000..061708a2 --- /dev/null +++ b/docs/examples/patch_inplace.cpp @@ -0,0 +1,35 @@ +#include +#include +#include + +using json = nlohmann::json; +using namespace nlohmann::literals; + +int main() +{ + // the original document + json doc = R"( + { + "baz": "qux", + "foo": "bar" + } + )"_json; + + // the patch + json patch = R"( + [ + { "op": "replace", "path": "/baz", "value": "boo" }, + { "op": "add", "path": "/hello", "value": ["world"] }, + { "op": "remove", "path": "/foo"} + ] + )"_json; + + // output original document + std::cout << "Before\n" << std::setw(4) << doc << std::endl; + + // apply the patch + doc.patch_inplace(patch); + + // output patched document + std::cout << "\nAfter\n" << std::setw(4) << doc << std::endl; +} diff --git a/docs/examples/patch_inplace.output b/docs/examples/patch_inplace.output new file mode 100644 index 00000000..9d31b8ba --- /dev/null +++ b/docs/examples/patch_inplace.output @@ -0,0 +1,13 @@ +Before +{ + "baz": "qux", + "foo": "bar" +} + +After +{ + "baz": "boo", + "hello": [ + "world" + ] +} diff --git a/docs/examples/push_back.cpp b/docs/examples/push_back.cpp new file mode 100644 index 00000000..bbddf4f5 --- /dev/null +++ b/docs/examples/push_back.cpp @@ -0,0 +1,25 @@ +#include +#include + +using json = nlohmann::json; + +int main() +{ + // create JSON values + json array = {1, 2, 3, 4, 5}; + json null; + + // print values + std::cout << array << '\n'; + std::cout << null << '\n'; + + // add values + array.push_back(6); + array += 7; + null += "first"; + null += "second"; + + // print values + std::cout << array << '\n'; + std::cout << null << '\n'; +} diff --git a/docs/examples/push_back.output b/docs/examples/push_back.output new file mode 100644 index 00000000..3306b60e --- /dev/null +++ b/docs/examples/push_back.output @@ -0,0 +1,4 @@ +[1,2,3,4,5] +null +[1,2,3,4,5,6,7] +["first","second"] diff --git a/docs/examples/push_back__initializer_list.cpp b/docs/examples/push_back__initializer_list.cpp new file mode 100644 index 00000000..e96645f1 --- /dev/null +++ b/docs/examples/push_back__initializer_list.cpp @@ -0,0 +1,27 @@ +#include +#include + +using json = nlohmann::json; + +int main() +{ + // create JSON values + json object = {{"one", 1}, {"two", 2}}; + json null; + + // print values + std::cout << object << '\n'; + std::cout << null << '\n'; + + // add values: + object.push_back({"three", 3}); // object is extended + object += {"four", 4}; // object is extended + null.push_back({"five", 5}); // null is converted to array + + // print values + std::cout << object << '\n'; + std::cout << null << '\n'; + + // would throw: + //object.push_back({1, 2, 3}); +} diff --git a/docs/examples/push_back__initializer_list.output b/docs/examples/push_back__initializer_list.output new file mode 100644 index 00000000..668eb25d --- /dev/null +++ b/docs/examples/push_back__initializer_list.output @@ -0,0 +1,4 @@ +{"one":1,"two":2} +null +{"four":4,"one":1,"three":3,"two":2} +[["five",5]] diff --git a/docs/examples/push_back__object_t__value.cpp b/docs/examples/push_back__object_t__value.cpp new file mode 100644 index 00000000..5d694e93 --- /dev/null +++ b/docs/examples/push_back__object_t__value.cpp @@ -0,0 +1,25 @@ +#include +#include + +using json = nlohmann::json; + +int main() +{ + // create JSON values + json object = {{"one", 1}, {"two", 2}}; + json null; + + // print values + std::cout << object << '\n'; + std::cout << null << '\n'; + + // add values + object.push_back(json::object_t::value_type("three", 3)); + object += json::object_t::value_type("four", 4); + null += json::object_t::value_type("A", "a"); + null += json::object_t::value_type("B", "b"); + + // print values + std::cout << object << '\n'; + std::cout << null << '\n'; +} diff --git a/docs/examples/push_back__object_t__value.output b/docs/examples/push_back__object_t__value.output new file mode 100644 index 00000000..b8a7d356 --- /dev/null +++ b/docs/examples/push_back__object_t__value.output @@ -0,0 +1,4 @@ +{"one":1,"two":2} +null +{"four":4,"one":1,"three":3,"two":2} +{"A":"a","B":"b"} diff --git a/docs/examples/rbegin.cpp b/docs/examples/rbegin.cpp new file mode 100644 index 00000000..239f7a68 --- /dev/null +++ b/docs/examples/rbegin.cpp @@ -0,0 +1,16 @@ +#include +#include + +using json = nlohmann::json; + +int main() +{ + // create an array value + json array = {1, 2, 3, 4, 5}; + + // get an iterator to the reverse-beginning + json::reverse_iterator it = array.rbegin(); + + // serialize the element that the iterator points to + std::cout << *it << '\n'; +} diff --git a/docs/examples/rbegin.output b/docs/examples/rbegin.output new file mode 100644 index 00000000..7ed6ff82 --- /dev/null +++ b/docs/examples/rbegin.output @@ -0,0 +1 @@ +5 diff --git a/docs/examples/rend.cpp b/docs/examples/rend.cpp new file mode 100644 index 00000000..adadbbdc --- /dev/null +++ b/docs/examples/rend.cpp @@ -0,0 +1,19 @@ +#include +#include + +using json = nlohmann::json; + +int main() +{ + // create an array value + json array = {1, 2, 3, 4, 5}; + + // get an iterator to the reverse-end + json::reverse_iterator it = array.rend(); + + // increment the iterator to point to the first element + --it; + + // serialize the element that the iterator points to + std::cout << *it << '\n'; +} diff --git a/docs/examples/rend.output b/docs/examples/rend.output new file mode 100644 index 00000000..d00491fd --- /dev/null +++ b/docs/examples/rend.output @@ -0,0 +1 @@ +1 diff --git a/docs/examples/sax_parse.cpp b/docs/examples/sax_parse.cpp new file mode 100644 index 00000000..8602687e --- /dev/null +++ b/docs/examples/sax_parse.cpp @@ -0,0 +1,131 @@ +#include +#include +#include +#include + +using json = nlohmann::json; + +// a simple event consumer that collects string representations of the passed +// values; note inheriting from json::json_sax_t is not required, but can +// help not to forget a required function +class sax_event_consumer : public json::json_sax_t +{ + public: + std::vector events; + + bool null() override + { + events.push_back("null()"); + return true; + } + + bool boolean(bool val) override + { + events.push_back("boolean(val=" + std::string(val ? "true" : "false") + ")"); + return true; + } + + bool number_integer(number_integer_t val) override + { + events.push_back("number_integer(val=" + std::to_string(val) + ")"); + return true; + } + + bool number_unsigned(number_unsigned_t val) override + { + events.push_back("number_unsigned(val=" + std::to_string(val) + ")"); + return true; + } + + bool number_float(number_float_t val, const string_t& s) override + { + events.push_back("number_float(val=" + std::to_string(val) + ", s=" + s + ")"); + return true; + } + + bool string(string_t& val) override + { + events.push_back("string(val=" + val + ")"); + return true; + } + + bool start_object(std::size_t elements) override + { + events.push_back("start_object(elements=" + std::to_string(elements) + ")"); + return true; + } + + bool end_object() override + { + events.push_back("end_object()"); + return true; + } + + bool start_array(std::size_t elements) override + { + events.push_back("start_array(elements=" + std::to_string(elements) + ")"); + return true; + } + + bool end_array() override + { + events.push_back("end_array()"); + return true; + } + + bool key(string_t& val) override + { + events.push_back("key(val=" + val + ")"); + return true; + } + + bool binary(json::binary_t& val) override + { + events.push_back("binary(val=[...])"); + return true; + } + + bool parse_error(std::size_t position, const std::string& last_token, const json::exception& ex) override + { + events.push_back("parse_error(position=" + std::to_string(position) + ", last_token=" + last_token + ",\n ex=" + std::string(ex.what()) + ")"); + return false; + } +}; + +int main() +{ + // a JSON text + auto text = R"( + { + "Image": { + "Width": 800, + "Height": 600, + "Title": "View from 15th Floor", + "Thumbnail": { + "Url": "http://www.example.com/image/481989943", + "Height": 125, + "Width": 100 + }, + "Animated" : false, + "IDs": [116, 943, 234, -38793], + "DeletionDate": null, + "Distance": 12.723374634 + } + }] + )"; + + // create a SAX event consumer object + sax_event_consumer sec; + + // parse JSON + bool result = json::sax_parse(text, &sec); + + // output the recorded events + for (auto& event : sec.events) + { + std::cout << event << "\n"; + } + + // output the result of sax_parse + std::cout << "\nresult: " << std::boolalpha << result << std::endl; +} diff --git a/docs/examples/sax_parse.output b/docs/examples/sax_parse.output new file mode 100644 index 00000000..dd2fc2f0 --- /dev/null +++ b/docs/examples/sax_parse.output @@ -0,0 +1,37 @@ +start_object(elements=18446744073709551615) +key(val=Image) +start_object(elements=18446744073709551615) +key(val=Width) +number_unsigned(val=800) +key(val=Height) +number_unsigned(val=600) +key(val=Title) +string(val=View from 15th Floor) +key(val=Thumbnail) +start_object(elements=18446744073709551615) +key(val=Url) +string(val=http://www.example.com/image/481989943) +key(val=Height) +number_unsigned(val=125) +key(val=Width) +number_unsigned(val=100) +end_object() +key(val=Animated) +boolean(val=false) +key(val=IDs) +start_array(elements=18446744073709551615) +number_unsigned(val=116) +number_unsigned(val=943) +number_unsigned(val=234) +number_integer(val=-38793) +end_array() +key(val=DeletionDate) +null() +key(val=Distance) +number_float(val=12.723375, s=12.723374634) +end_object() +end_object() +parse_error(position=460, last_token=12.723374634 } }], + ex=[json.exception.parse_error.101] parse error at line 17, column 6: syntax error while parsing value - unexpected ']'; expected end of input) + +result: false diff --git a/docs/examples/sax_parse__binary.cpp b/docs/examples/sax_parse__binary.cpp new file mode 100644 index 00000000..08bc85df --- /dev/null +++ b/docs/examples/sax_parse__binary.cpp @@ -0,0 +1,114 @@ +#include +#include +#include +#include + +using json = nlohmann::json; + +// a simple event consumer that collects string representations of the passed +// values; note inheriting from json::json_sax_t is not required, but can +// help not to forget a required function +class sax_event_consumer : public json::json_sax_t +{ + public: + std::vector events; + + bool null() override + { + events.push_back("null()"); + return true; + } + + bool boolean(bool val) override + { + events.push_back("boolean(val=" + std::string(val ? "true" : "false") + ")"); + return true; + } + + bool number_integer(number_integer_t val) override + { + events.push_back("number_integer(val=" + std::to_string(val) + ")"); + return true; + } + + bool number_unsigned(number_unsigned_t val) override + { + events.push_back("number_unsigned(val=" + std::to_string(val) + ")"); + return true; + } + + bool number_float(number_float_t val, const string_t& s) override + { + events.push_back("number_float(val=" + std::to_string(val) + ", s=" + s + ")"); + return true; + } + + bool string(string_t& val) override + { + events.push_back("string(val=" + val + ")"); + return true; + } + + bool start_object(std::size_t elements) override + { + events.push_back("start_object(elements=" + std::to_string(elements) + ")"); + return true; + } + + bool end_object() override + { + events.push_back("end_object()"); + return true; + } + + bool start_array(std::size_t elements) override + { + events.push_back("start_array(elements=" + std::to_string(elements) + ")"); + return true; + } + + bool end_array() override + { + events.push_back("end_array()"); + return true; + } + + bool key(string_t& val) override + { + events.push_back("key(val=" + val + ")"); + return true; + } + + bool binary(json::binary_t& val) override + { + events.push_back("binary(val=[...])"); + return true; + } + + bool parse_error(std::size_t position, const std::string& last_token, const json::exception& ex) override + { + events.push_back("parse_error(position=" + std::to_string(position) + ", last_token=" + last_token + ",\n ex=" + std::string(ex.what()) + ")"); + return false; + } +}; + +int main() +{ + // CBOR byte string + std::vector vec = {{0x44, 0xcA, 0xfe, 0xba, 0xbe}}; + + // create a SAX event consumer object + sax_event_consumer sec; + + // parse CBOR + bool result = json::sax_parse(vec, &sec, json::input_format_t::cbor); + + // output the recorded events + for (auto& event : sec.events) + { + std::cout << event << "\n"; + } + + // output the result of sax_parse + std::cout << "\nresult: " << std::boolalpha << result << std::endl; +} diff --git a/docs/examples/sax_parse__binary.output b/docs/examples/sax_parse__binary.output new file mode 100644 index 00000000..f8808961 --- /dev/null +++ b/docs/examples/sax_parse__binary.output @@ -0,0 +1,3 @@ +binary(val=[...]) + +result: true diff --git a/docs/examples/size.cpp b/docs/examples/size.cpp new file mode 100644 index 00000000..23754837 --- /dev/null +++ b/docs/examples/size.cpp @@ -0,0 +1,29 @@ +#include +#include + +using json = nlohmann::json; + +int main() +{ + // create JSON values + json j_null; + json j_boolean = true; + json j_number_integer = 17; + json j_number_float = 23.42; + json j_object = {{"one", 1}, {"two", 2}}; + json j_object_empty(json::value_t::object); + json j_array = {1, 2, 4, 8, 16}; + json j_array_empty(json::value_t::array); + json j_string = "Hello, world"; + + // call size() + std::cout << j_null.size() << '\n'; + std::cout << j_boolean.size() << '\n'; + std::cout << j_number_integer.size() << '\n'; + std::cout << j_number_float.size() << '\n'; + std::cout << j_object.size() << '\n'; + std::cout << j_object_empty.size() << '\n'; + std::cout << j_array.size() << '\n'; + std::cout << j_array_empty.size() << '\n'; + std::cout << j_string.size() << '\n'; +} diff --git a/docs/examples/size.output b/docs/examples/size.output new file mode 100644 index 00000000..3831387b --- /dev/null +++ b/docs/examples/size.output @@ -0,0 +1,9 @@ +0 +1 +1 +1 +2 +0 +5 +0 +1 diff --git a/docs/examples/std_hash.cpp b/docs/examples/std_hash.cpp new file mode 100644 index 00000000..9721910e --- /dev/null +++ b/docs/examples/std_hash.cpp @@ -0,0 +1,19 @@ +#include +#include +#include + +using json = nlohmann::json; +using namespace nlohmann::literals; + +int main() +{ + std::cout << "hash(null) = " << std::hash {}(json(nullptr)) << '\n' + << "hash(false) = " << std::hash {}(json(false)) << '\n' + << "hash(0) = " << std::hash {}(json(0)) << '\n' + << "hash(0U) = " << std::hash {}(json(0U)) << '\n' + << "hash(\"\") = " << std::hash {}(json("")) << '\n' + << "hash({}) = " << std::hash {}(json::object()) << '\n' + << "hash([]) = " << std::hash {}(json::array()) << '\n' + << "hash({\"hello\": \"world\"}) = " << std::hash {}("{\"hello\": \"world\"}"_json) + << std::endl; +} diff --git a/docs/examples/std_hash.output b/docs/examples/std_hash.output new file mode 100644 index 00000000..521d2b4b --- /dev/null +++ b/docs/examples/std_hash.output @@ -0,0 +1,8 @@ +hash(null) = 2654435769 +hash(false) = 2654436030 +hash(0) = 2654436095 +hash(0U) = 2654436156 +hash("") = 6142509191626859748 +hash({}) = 2654435832 +hash([]) = 2654435899 +hash({"hello": "world"}) = 4469488738203676328 diff --git a/docs/examples/std_swap.cpp b/docs/examples/std_swap.cpp new file mode 100644 index 00000000..36ab3ce6 --- /dev/null +++ b/docs/examples/std_swap.cpp @@ -0,0 +1,19 @@ +#include +#include +#include + +using json = nlohmann::json; + +int main() +{ + // create JSON values + json j1 = {{"one", 1}, {"two", 2}}; + json j2 = {1, 2, 4, 8, 16}; + + std::cout << "j1 = " << j1 << " | j2 = " << j2 << '\n'; + + // swap values + std::swap(j1, j2); + + std::cout << "j1 = " << j1 << " | j2 = " << j2 << std::endl; +} diff --git a/docs/examples/std_swap.output b/docs/examples/std_swap.output new file mode 100644 index 00000000..5ae6db78 --- /dev/null +++ b/docs/examples/std_swap.output @@ -0,0 +1,2 @@ +j1 = {"one":1,"two":2} | j2 = [1,2,4,8,16] +j1 = [1,2,4,8,16] | j2 = {"one":1,"two":2} diff --git a/docs/examples/string_t.cpp b/docs/examples/string_t.cpp new file mode 100644 index 00000000..77a9ea48 --- /dev/null +++ b/docs/examples/string_t.cpp @@ -0,0 +1,10 @@ +#include +#include +#include + +using json = nlohmann::json; + +int main() +{ + std::cout << std::boolalpha << std::is_same::value << std::endl; +} diff --git a/docs/examples/string_t.output b/docs/examples/string_t.output new file mode 100644 index 00000000..27ba77dd --- /dev/null +++ b/docs/examples/string_t.output @@ -0,0 +1 @@ +true diff --git a/docs/examples/swap__array_t.cpp b/docs/examples/swap__array_t.cpp new file mode 100644 index 00000000..2119dd55 --- /dev/null +++ b/docs/examples/swap__array_t.cpp @@ -0,0 +1,20 @@ +#include +#include + +using json = nlohmann::json; + +int main() +{ + // create a JSON value + json value = {{"array", {1, 2, 3, 4}}}; + + // create an array_t + json::array_t array = {"Snap", "Crackle", "Pop"}; + + // swap the array stored in the JSON value + value["array"].swap(array); + + // output the values + std::cout << "value = " << value << '\n'; + std::cout << "array = " << array << '\n'; +} diff --git a/docs/examples/swap__array_t.output b/docs/examples/swap__array_t.output new file mode 100644 index 00000000..365302cc --- /dev/null +++ b/docs/examples/swap__array_t.output @@ -0,0 +1,2 @@ +value = {"array":["Snap","Crackle","Pop"]} +array = [1,2,3,4] diff --git a/docs/examples/swap__binary_t.cpp b/docs/examples/swap__binary_t.cpp new file mode 100644 index 00000000..4b8fc3db --- /dev/null +++ b/docs/examples/swap__binary_t.cpp @@ -0,0 +1,20 @@ +#include +#include + +using json = nlohmann::json; + +int main() +{ + // create a binary value + json value = json::binary({1, 2, 3}); + + // create a binary_t + json::binary_t binary = {{4, 5, 6}}; + + // swap the object stored in the JSON value + value.swap(binary); + + // output the values + std::cout << "value = " << value << '\n'; + std::cout << "binary = " << json(binary) << '\n'; +} diff --git a/docs/examples/swap__binary_t.output b/docs/examples/swap__binary_t.output new file mode 100644 index 00000000..68cd7689 --- /dev/null +++ b/docs/examples/swap__binary_t.output @@ -0,0 +1,2 @@ +value = {"bytes":[4,5,6],"subtype":null} +binary = {"bytes":[1,2,3],"subtype":null} diff --git a/docs/examples/swap__object_t.cpp b/docs/examples/swap__object_t.cpp new file mode 100644 index 00000000..301b558d --- /dev/null +++ b/docs/examples/swap__object_t.cpp @@ -0,0 +1,20 @@ +#include +#include + +using json = nlohmann::json; + +int main() +{ + // create a JSON value + json value = { {"translation", {{"one", "eins"}, {"two", "zwei"}}} }; + + // create an object_t + json::object_t object = {{"cow", "Kuh"}, {"dog", "Hund"}}; + + // swap the object stored in the JSON value + value["translation"].swap(object); + + // output the values + std::cout << "value = " << value << '\n'; + std::cout << "object = " << object << '\n'; +} diff --git a/docs/examples/swap__object_t.output b/docs/examples/swap__object_t.output new file mode 100644 index 00000000..b5c9791b --- /dev/null +++ b/docs/examples/swap__object_t.output @@ -0,0 +1,2 @@ +value = {"translation":{"cow":"Kuh","dog":"Hund"}} +object = {"one":"eins","two":"zwei"} diff --git a/docs/examples/swap__reference.cpp b/docs/examples/swap__reference.cpp new file mode 100644 index 00000000..34182ad2 --- /dev/null +++ b/docs/examples/swap__reference.cpp @@ -0,0 +1,18 @@ +#include +#include + +using json = nlohmann::json; + +int main() +{ + // create two JSON values + json j1 = {1, 2, 3, 4, 5}; + json j2 = {{"pi", 3.141592653589793}, {"e", 2.718281828459045}}; + + // swap the values + j1.swap(j2); + + // output the values + std::cout << "j1 = " << j1 << '\n'; + std::cout << "j2 = " << j2 << '\n'; +} diff --git a/docs/examples/swap__reference.output b/docs/examples/swap__reference.output new file mode 100644 index 00000000..96b07b09 --- /dev/null +++ b/docs/examples/swap__reference.output @@ -0,0 +1,2 @@ +j1 = {"e":2.718281828459045,"pi":3.141592653589793} +j2 = [1,2,3,4,5] diff --git a/docs/examples/swap__string_t.cpp b/docs/examples/swap__string_t.cpp new file mode 100644 index 00000000..b5d58316 --- /dev/null +++ b/docs/examples/swap__string_t.cpp @@ -0,0 +1,20 @@ +#include +#include + +using json = nlohmann::json; + +int main() +{ + // create a JSON value + json value = { "the good", "the bad", "the ugly" }; + + // create string_t + json::string_t string = "the fast"; + + // swap the object stored in the JSON value + value[1].swap(string); + + // output the values + std::cout << "value = " << value << '\n'; + std::cout << "string = " << string << '\n'; +} diff --git a/docs/examples/swap__string_t.output b/docs/examples/swap__string_t.output new file mode 100644 index 00000000..ae2a0976 --- /dev/null +++ b/docs/examples/swap__string_t.output @@ -0,0 +1,2 @@ +value = ["the good","the fast","the ugly"] +string = the bad diff --git a/docs/examples/to_bjdata.cpp b/docs/examples/to_bjdata.cpp new file mode 100644 index 00000000..9b7abac4 --- /dev/null +++ b/docs/examples/to_bjdata.cpp @@ -0,0 +1,64 @@ +#include +#include +#include + +using json = nlohmann::json; +using namespace nlohmann::literals; + +// function to print BJData's diagnostic format +void print_byte(uint8_t byte) +{ + if (32 < byte and byte < 128) + { + std::cout << (char)byte; + } + else + { + std::cout << (int)byte; + } +} + +int main() +{ + // create a JSON value + json j = R"({"compact": true, "schema": false})"_json; + + // serialize it to BJData + std::vector v = json::to_bjdata(j); + + // print the vector content + for (auto& byte : v) + { + print_byte(byte); + } + std::cout << std::endl; + + // create an array of numbers + json array = {1, 2, 3, 4, 5, 6, 7, 8}; + + // serialize it to BJData using default representation + std::vector v_array = json::to_bjdata(array); + // serialize it to BJData using size optimization + std::vector v_array_size = json::to_bjdata(array, true); + // serialize it to BJData using type optimization + std::vector v_array_size_and_type = json::to_bjdata(array, true, true); + + // print the vector contents + for (auto& byte : v_array) + { + print_byte(byte); + } + std::cout << std::endl; + + for (auto& byte : v_array_size) + { + print_byte(byte); + } + std::cout << std::endl; + + for (auto& byte : v_array_size_and_type) + { + print_byte(byte); + } + std::cout << std::endl; +} diff --git a/docs/examples/to_bjdata.output b/docs/examples/to_bjdata.output new file mode 100644 index 00000000..087980cb --- /dev/null +++ b/docs/examples/to_bjdata.output @@ -0,0 +1,4 @@ +{i7compactTi6schemaF} +[i1i2i3i4i5i6i7i8] +[#i8i1i2i3i4i5i6i7i8 +[$i#i812345678 diff --git a/docs/examples/to_bson.cpp b/docs/examples/to_bson.cpp new file mode 100644 index 00000000..3484b0b7 --- /dev/null +++ b/docs/examples/to_bson.cpp @@ -0,0 +1,22 @@ +#include +#include +#include + +using json = nlohmann::json; +using namespace nlohmann::literals; + +int main() +{ + // create a JSON value + json j = R"({"compact": true, "schema": 0})"_json; + + // serialize it to BSON + std::vector v = json::to_bson(j); + + // print the vector content + for (auto& byte : v) + { + std::cout << "0x" << std::hex << std::setw(2) << std::setfill('0') << (int)byte << " "; + } + std::cout << std::endl; +} diff --git a/docs/examples/to_bson.output b/docs/examples/to_bson.output new file mode 100644 index 00000000..379532a2 --- /dev/null +++ b/docs/examples/to_bson.output @@ -0,0 +1 @@ +0x1b 0x00 0x00 0x00 0x08 0x63 0x6f 0x6d 0x70 0x61 0x63 0x74 0x00 0x01 0x10 0x73 0x63 0x68 0x65 0x6d 0x61 0x00 0x00 0x00 0x00 0x00 0x00 diff --git a/docs/examples/to_cbor.cpp b/docs/examples/to_cbor.cpp new file mode 100644 index 00000000..3d5e0415 --- /dev/null +++ b/docs/examples/to_cbor.cpp @@ -0,0 +1,22 @@ +#include +#include +#include + +using json = nlohmann::json; +using namespace nlohmann::literals; + +int main() +{ + // create a JSON value + json j = R"({"compact": true, "schema": 0})"_json; + + // serialize it to CBOR + std::vector v = json::to_cbor(j); + + // print the vector content + for (auto& byte : v) + { + std::cout << "0x" << std::hex << std::setw(2) << std::setfill('0') << (int)byte << " "; + } + std::cout << std::endl; +} diff --git a/docs/examples/to_cbor.output b/docs/examples/to_cbor.output new file mode 100644 index 00000000..02c9adab --- /dev/null +++ b/docs/examples/to_cbor.output @@ -0,0 +1 @@ +0xa2 0x67 0x63 0x6f 0x6d 0x70 0x61 0x63 0x74 0xf5 0x66 0x73 0x63 0x68 0x65 0x6d 0x61 0x00 diff --git a/docs/examples/to_json.cpp b/docs/examples/to_json.cpp new file mode 100644 index 00000000..1f82a4de --- /dev/null +++ b/docs/examples/to_json.cpp @@ -0,0 +1,32 @@ +#include +#include + +using json = nlohmann::json; + +namespace ns +{ +// a simple struct to model a person +struct person +{ + std::string name; + std::string address; + int age; +}; +} // namespace ns + +namespace ns +{ +void to_json(json& j, const person& p) +{ + j = json{ {"name", p.name}, {"address", p.address}, {"age", p.age} }; +} +} // namespace ns + +int main() +{ + ns::person p = {"Ned Flanders", "744 Evergreen Terrace", 60}; + + json j = p; + + std::cout << j << std::endl; +} diff --git a/docs/examples/to_json.output b/docs/examples/to_json.output new file mode 100644 index 00000000..e9c5bf38 --- /dev/null +++ b/docs/examples/to_json.output @@ -0,0 +1 @@ +{"address":"744 Evergreen Terrace","age":60,"name":"Ned Flanders"} diff --git a/docs/examples/to_msgpack.cpp b/docs/examples/to_msgpack.cpp new file mode 100644 index 00000000..b29ae8c7 --- /dev/null +++ b/docs/examples/to_msgpack.cpp @@ -0,0 +1,22 @@ +#include +#include +#include + +using json = nlohmann::json; +using namespace nlohmann::literals; + +int main() +{ + // create a JSON value + json j = R"({"compact": true, "schema": 0})"_json; + + // serialize it to MessagePack + std::vector v = json::to_msgpack(j); + + // print the vector content + for (auto& byte : v) + { + std::cout << "0x" << std::hex << std::setw(2) << std::setfill('0') << (int)byte << " "; + } + std::cout << std::endl; +} diff --git a/docs/examples/to_msgpack.output b/docs/examples/to_msgpack.output new file mode 100644 index 00000000..4d6c40ab --- /dev/null +++ b/docs/examples/to_msgpack.output @@ -0,0 +1 @@ +0x82 0xa7 0x63 0x6f 0x6d 0x70 0x61 0x63 0x74 0xc3 0xa6 0x73 0x63 0x68 0x65 0x6d 0x61 0x00 diff --git a/docs/examples/to_string.cpp b/docs/examples/to_string.cpp new file mode 100644 index 00000000..ee44283f --- /dev/null +++ b/docs/examples/to_string.cpp @@ -0,0 +1,20 @@ +#include +#include + +using json = nlohmann::json; +using std::to_string; + +int main() +{ + // create values + json j = {{"one", 1}, {"two", 2}}; + int i = 42; + + // use ADL to select best to_string function + auto j_str = to_string(j); // calling nlohmann::to_string + auto i_str = to_string(i); // calling std::to_string + + // serialize without indentation + std::cout << j_str << "\n\n" + << i_str << std::endl; +} diff --git a/docs/examples/to_string.output b/docs/examples/to_string.output new file mode 100644 index 00000000..b261f35e --- /dev/null +++ b/docs/examples/to_string.output @@ -0,0 +1,3 @@ +{"one":1,"two":2} + +42 diff --git a/docs/examples/to_ubjson.cpp b/docs/examples/to_ubjson.cpp new file mode 100644 index 00000000..fd267a85 --- /dev/null +++ b/docs/examples/to_ubjson.cpp @@ -0,0 +1,64 @@ +#include +#include +#include + +using json = nlohmann::json; +using namespace nlohmann::literals; + +// function to print UBJSON's diagnostic format +void print_byte(uint8_t byte) +{ + if (32 < byte and byte < 128) + { + std::cout << (char)byte; + } + else + { + std::cout << (int)byte; + } +} + +int main() +{ + // create a JSON value + json j = R"({"compact": true, "schema": false})"_json; + + // serialize it to UBJSON + std::vector v = json::to_ubjson(j); + + // print the vector content + for (auto& byte : v) + { + print_byte(byte); + } + std::cout << std::endl; + + // create an array of numbers + json array = {1, 2, 3, 4, 5, 6, 7, 8}; + + // serialize it to UBJSON using default representation + std::vector v_array = json::to_ubjson(array); + // serialize it to UBJSON using size optimization + std::vector v_array_size = json::to_ubjson(array, true); + // serialize it to UBJSON using type optimization + std::vector v_array_size_and_type = json::to_ubjson(array, true, true); + + // print the vector contents + for (auto& byte : v_array) + { + print_byte(byte); + } + std::cout << std::endl; + + for (auto& byte : v_array_size) + { + print_byte(byte); + } + std::cout << std::endl; + + for (auto& byte : v_array_size_and_type) + { + print_byte(byte); + } + std::cout << std::endl; +} diff --git a/docs/examples/to_ubjson.output b/docs/examples/to_ubjson.output new file mode 100644 index 00000000..087980cb --- /dev/null +++ b/docs/examples/to_ubjson.output @@ -0,0 +1,4 @@ +{i7compactTi6schemaF} +[i1i2i3i4i5i6i7i8] +[#i8i1i2i3i4i5i6i7i8 +[$i#i812345678 diff --git a/docs/examples/type.cpp b/docs/examples/type.cpp new file mode 100644 index 00000000..68fba3a9 --- /dev/null +++ b/docs/examples/type.cpp @@ -0,0 +1,28 @@ +#include +#include + +using json = nlohmann::json; + +int main() +{ + // create JSON values + json j_null; + json j_boolean = true; + json j_number_integer = -17; + json j_number_unsigned = 42u; + json j_number_float = 23.42; + json j_object = {{"one", 1}, {"two", 2}}; + json j_array = {1, 2, 4, 8, 16}; + json j_string = "Hello, world"; + + // call type() + std::cout << std::boolalpha; + std::cout << (j_null.type() == json::value_t::null) << '\n'; + std::cout << (j_boolean.type() == json::value_t::boolean) << '\n'; + std::cout << (j_number_integer.type() == json::value_t::number_integer) << '\n'; + std::cout << (j_number_unsigned.type() == json::value_t::number_unsigned) << '\n'; + std::cout << (j_number_float.type() == json::value_t::number_float) << '\n'; + std::cout << (j_object.type() == json::value_t::object) << '\n'; + std::cout << (j_array.type() == json::value_t::array) << '\n'; + std::cout << (j_string.type() == json::value_t::string) << '\n'; +} diff --git a/docs/examples/type.output b/docs/examples/type.output new file mode 100644 index 00000000..310e632a --- /dev/null +++ b/docs/examples/type.output @@ -0,0 +1,8 @@ +true +true +true +true +true +true +true +true diff --git a/docs/examples/type_error.cpp b/docs/examples/type_error.cpp new file mode 100644 index 00000000..f520f401 --- /dev/null +++ b/docs/examples/type_error.cpp @@ -0,0 +1,20 @@ +#include +#include + +using json = nlohmann::json; + +int main() +{ + try + { + // calling push_back() on a string value + json j = "string"; + j.push_back("another string"); + } + catch (const json::type_error& e) + { + // output exception information + std::cout << "message: " << e.what() << '\n' + << "exception id: " << e.id << std::endl; + } +} diff --git a/docs/examples/type_error.output b/docs/examples/type_error.output new file mode 100644 index 00000000..1a673390 --- /dev/null +++ b/docs/examples/type_error.output @@ -0,0 +1,2 @@ +message: [json.exception.type_error.308] cannot use push_back() with string +exception id: 308 diff --git a/docs/examples/type_name.cpp b/docs/examples/type_name.cpp new file mode 100644 index 00000000..32d3590c --- /dev/null +++ b/docs/examples/type_name.cpp @@ -0,0 +1,27 @@ +#include +#include + +using json = nlohmann::json; + +int main() +{ + // create JSON values + json j_null; + json j_boolean = true; + json j_number_integer = -17; + json j_number_unsigned = 42u; + json j_number_float = 23.42; + json j_object = {{"one", 1}, {"two", 2}}; + json j_array = {1, 2, 4, 8, 16}; + json j_string = "Hello, world"; + + // call type_name() + std::cout << j_null << " is a " << j_null.type_name() << '\n'; + std::cout << j_boolean << " is a " << j_boolean.type_name() << '\n'; + std::cout << j_number_integer << " is a " << j_number_integer.type_name() << '\n'; + std::cout << j_number_unsigned << " is a " << j_number_unsigned.type_name() << '\n'; + std::cout << j_number_float << " is a " << j_number_float.type_name() << '\n'; + std::cout << j_object << " is an " << j_object.type_name() << '\n'; + std::cout << j_array << " is an " << j_array.type_name() << '\n'; + std::cout << j_string << " is a " << j_string.type_name() << '\n'; +} diff --git a/docs/examples/type_name.output b/docs/examples/type_name.output new file mode 100644 index 00000000..f394e819 --- /dev/null +++ b/docs/examples/type_name.output @@ -0,0 +1,8 @@ +null is a null +true is a boolean +-17 is a number +42 is a number +23.42 is a number +{"one":1,"two":2} is an object +[1,2,4,8,16] is an array +"Hello, world" is a string diff --git a/docs/examples/unflatten.cpp b/docs/examples/unflatten.cpp new file mode 100644 index 00000000..75fb02d0 --- /dev/null +++ b/docs/examples/unflatten.cpp @@ -0,0 +1,26 @@ +#include +#include +#include + +using json = nlohmann::json; + +int main() +{ + // create JSON value + json j_flattened = + { + {"/answer/everything", 42}, + {"/happy", true}, + {"/list/0", 1}, + {"/list/1", 0}, + {"/list/2", 2}, + {"/name", "Niels"}, + {"/nothing", nullptr}, + {"/object/currency", "USD"}, + {"/object/value", 42.99}, + {"/pi", 3.141} + }; + + // call unflatten() + std::cout << std::setw(4) << j_flattened.unflatten() << '\n'; +} diff --git a/docs/examples/unflatten.output b/docs/examples/unflatten.output new file mode 100644 index 00000000..ed48385a --- /dev/null +++ b/docs/examples/unflatten.output @@ -0,0 +1,18 @@ +{ + "answer": { + "everything": 42 + }, + "happy": true, + "list": [ + 1, + 0, + 2 + ], + "name": "Niels", + "nothing": null, + "object": { + "currency": "USD", + "value": 42.99 + }, + "pi": 3.141 +} diff --git a/docs/examples/update.cpp b/docs/examples/update.cpp new file mode 100644 index 00000000..ff94b67f --- /dev/null +++ b/docs/examples/update.cpp @@ -0,0 +1,24 @@ +#include +#include +#include + +using json = nlohmann::json; +using namespace nlohmann::literals; + +int main() +{ + // create two JSON objects + json o1 = R"( {"color": "red", "price": 17.99, "names": {"de": "Flugzeug"}} )"_json; + json o2 = R"( {"color": "blue", "speed": 100, "names": {"en": "plane"}} )"_json; + json o3 = o1; + + // add all keys from o2 to o1 (updating "color", replacing "names") + o1.update(o2); + + // add all keys from o2 to o1 (updating "color", merging "names") + o3.update(o2, true); + + // output updated object o1 and o3 + std::cout << std::setw(2) << o1 << '\n'; + std::cout << std::setw(2) << o3 << '\n'; +} diff --git a/docs/examples/update.output b/docs/examples/update.output new file mode 100644 index 00000000..c35a7451 --- /dev/null +++ b/docs/examples/update.output @@ -0,0 +1,17 @@ +{ + "color": "blue", + "names": { + "en": "plane" + }, + "price": 17.99, + "speed": 100 +} +{ + "color": "blue", + "names": { + "de": "Flugzeug", + "en": "plane" + }, + "price": 17.99, + "speed": 100 +} diff --git a/docs/examples/update__range.cpp b/docs/examples/update__range.cpp new file mode 100644 index 00000000..5b438504 --- /dev/null +++ b/docs/examples/update__range.cpp @@ -0,0 +1,24 @@ +#include +#include +#include + +using json = nlohmann::json; +using namespace nlohmann::literals; + +int main() +{ + // create two JSON objects + json o1 = R"( {"color": "red", "price": 17.99, "names": {"de": "Flugzeug"}} )"_json; + json o2 = R"( {"color": "blue", "speed": 100, "names": {"en": "plane"}} )"_json; + json o3 = o1; + + // add all keys from o2 to o1 (updating "color", replacing "names") + o1.update(o2.begin(), o2.end()); + + // add all keys from o2 to o1 (updating "color", merging "names") + o3.update(o2.begin(), o2.end(), true); + + // output updated object o1 and o3 + std::cout << std::setw(2) << o1 << '\n'; + std::cout << std::setw(2) << o3 << '\n'; +} diff --git a/docs/examples/update__range.output b/docs/examples/update__range.output new file mode 100644 index 00000000..c35a7451 --- /dev/null +++ b/docs/examples/update__range.output @@ -0,0 +1,17 @@ +{ + "color": "blue", + "names": { + "en": "plane" + }, + "price": 17.99, + "speed": 100 +} +{ + "color": "blue", + "names": { + "de": "Flugzeug", + "en": "plane" + }, + "price": 17.99, + "speed": 100 +} diff --git a/docs/examples/value__json_ptr.cpp b/docs/examples/value__json_ptr.cpp new file mode 100644 index 00000000..d866ef07 --- /dev/null +++ b/docs/examples/value__json_ptr.cpp @@ -0,0 +1,31 @@ +#include +#include + +using json = nlohmann::json; +using namespace nlohmann::literals; + +int main() +{ + // create a JSON object with different entry types + json j = + { + {"integer", 1}, + {"floating", 42.23}, + {"string", "hello world"}, + {"boolean", true}, + {"object", {{"key1", 1}, {"key2", 2}}}, + {"array", {1, 2, 3}} + }; + + // access existing values + int v_integer = j.value("/integer"_json_pointer, 0); + double v_floating = j.value("/floating"_json_pointer, 47.11); + + // access nonexisting values and rely on default value + std::string v_string = j.value("/nonexisting"_json_pointer, "oops"); + bool v_boolean = j.value("/nonexisting"_json_pointer, false); + + // output values + std::cout << std::boolalpha << v_integer << " " << v_floating + << " " << v_string << " " << v_boolean << "\n"; +} diff --git a/docs/examples/value__json_ptr.output b/docs/examples/value__json_ptr.output new file mode 100644 index 00000000..dfc40e58 --- /dev/null +++ b/docs/examples/value__json_ptr.output @@ -0,0 +1 @@ +1 42.23 oops false diff --git a/docs/examples/value__keytype.c++17.cpp b/docs/examples/value__keytype.c++17.cpp new file mode 100644 index 00000000..1f6ff5c3 --- /dev/null +++ b/docs/examples/value__keytype.c++17.cpp @@ -0,0 +1,32 @@ +#include +#include +#include + +using namespace std::string_view_literals; +using json = nlohmann::json; + +int main() +{ + // create a JSON object with different entry types + json j = + { + {"integer", 1}, + {"floating", 42.23}, + {"string", "hello world"}, + {"boolean", true}, + {"object", {{"key1", 1}, {"key2", 2}}}, + {"array", {1, 2, 3}} + }; + + // access existing values + int v_integer = j.value("integer"sv, 0); + double v_floating = j.value("floating"sv, 47.11); + + // access nonexisting values and rely on default value + std::string v_string = j.value("nonexisting"sv, "oops"); + bool v_boolean = j.value("nonexisting"sv, false); + + // output values + std::cout << std::boolalpha << v_integer << " " << v_floating + << " " << v_string << " " << v_boolean << "\n"; +} diff --git a/docs/examples/value__keytype.c++17.output b/docs/examples/value__keytype.c++17.output new file mode 100644 index 00000000..dfc40e58 --- /dev/null +++ b/docs/examples/value__keytype.c++17.output @@ -0,0 +1 @@ +1 42.23 oops false diff --git a/docs/examples/value__object_t_key_type.cpp b/docs/examples/value__object_t_key_type.cpp new file mode 100644 index 00000000..9488d30e --- /dev/null +++ b/docs/examples/value__object_t_key_type.cpp @@ -0,0 +1,30 @@ +#include +#include + +using json = nlohmann::json; + +int main() +{ + // create a JSON object with different entry types + json j = + { + {"integer", 1}, + {"floating", 42.23}, + {"string", "hello world"}, + {"boolean", true}, + {"object", {{"key1", 1}, {"key2", 2}}}, + {"array", {1, 2, 3}} + }; + + // access existing values + int v_integer = j.value("integer", 0); + double v_floating = j.value("floating", 47.11); + + // access nonexisting values and rely on default value + std::string v_string = j.value("nonexisting", "oops"); + bool v_boolean = j.value("nonexisting", false); + + // output values + std::cout << std::boolalpha << v_integer << " " << v_floating + << " " << v_string << " " << v_boolean << "\n"; +} diff --git a/docs/examples/value__object_t_key_type.output b/docs/examples/value__object_t_key_type.output new file mode 100644 index 00000000..dfc40e58 --- /dev/null +++ b/docs/examples/value__object_t_key_type.output @@ -0,0 +1 @@ +1 42.23 oops false diff --git a/docs/json.gif b/docs/json.gif new file mode 100644 index 0000000000000000000000000000000000000000..8b86b0375717850620cdbb13d424a247b0513587 GIT binary patch literal 1652796 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

-ygJt@$-i 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�rPcp&q@uJyl<@+Y0% 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

N1N*JD{2$l+c(`)C)yAxa>lrT0GoHA? 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≪+2SsHpp*T^X#p3;-4#dK4LGzD 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%0D^a&r^Xt_J>&L&nFhE2+x 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

QckKCjQEFR`d z&KCXqk}fC6uGX@L_r<<0rDtbZZ05|#FErSh9<=Y1$`%r z)*|Lh8co$5$_!^GEA9B;(Wk0?hx6yUPaMixvg<1ytgfnWX5;LMWfGP+s=lDXluKli zV&;E^>YM6GZQH#MGzZONxpg(Jpp7TyJ?q3ncNq0qd&3*uIcFZ=o#Q5H#xU<=a`;^@ zp~PlhWfdlU0TXW(MOHcI2dp{i9XC$qee*2fZc2MJ`-(7o=>{1chQA@4!ZK3Tt-pfm zxGS{UGUDynbtD+r6P~+FIuNkhr%;`F!@eJI4?~ea9-`g#( zr|tZ_wljszYK_7@RwkA;49sq)_!t><7qPJgsQ!4Twa6jsSexpvgwG|(Tw2LZhuE0( z)+;Vi$cZ~J<^PkuOr3=LY)+?y5m{`oQo{OyNI|GW+3V_HZW7+(lp2lKxA)@e@1qRYZA37So>-=ev*TbGNgd-R5C3 z?Sz_`0{c7#{v1EXd0Gr_)+(IgPm0M?-BZBJp2YRpOa0Jc=RfNiXQ~}Mc2tS)f|Ae$ zr6~639|fvP0h($PGPMF!e=T6#^zMZ$ z%58A+n{w#YnP+V8`;$f56~Y9Qm>SM4N&nm6bVu#6=yZS8gbzsv^!a-_*c^}Dl{w7C z$iTgGLh+{uoKrq>7O83e-}XVGkxlfs^ZaQaIeR9kPT|$yS|It7vt!)_gP!L}efg?l zYYt9wlG?hS&zjBnOHbyf4u-!Q6a^-D=?F3@B|PGIBrsV?aAT^Vc?awAR9-b@p`B?$ z?2m*QilSC5P_$datm`o8R$?NUsRWrt+41qx^J3)cuF`Ap1JaJQ9ksygGw z$9q`WQA>sMkcz$=uXIyY&LRd5CF$SHs@Iz&dIhD7)n#&%c;`=4uXbzm(9u*=H40d- zW+L?C$9scQYt;k!fv z9OFbe-6UI1p9go03?%~eIGGfm2dh-P@ib!=&}q`oKKy|t$3U4uS;vXVZi9m`6PsPX zhfltUlYrsmvmJQ_3JC&jQj2*R7yO)JEc^fZ5kHPYR=*EV=UAdZ%*xQi$+ z4oPFfn>2e;Le5mhs*==M0_vT`>RXIG|NF8C&$(*aQ4;K%ad*bn;uW6_ zCtY&WZuSuGjavUGOejUQHt66 z`iZJaVv*~cJi?j64j&HHb$+pGtEt?>BcBfVxGG0YW%Bgjma*=tVM>~eB6AqOs(#W1 zgCLWCVTYs{9klGd8KoBqDn62x){tWqQ)CiUV%Vb4W2QLanu?TY{Kpbiu7XE)jlw&o zJ=9?iP;Am)ET*Kfpm$XQZ@>lxw#~MZixh>E0)Gd^N+-n$Cnf)Pew=t*IEf=+c9FxA z2&KwR=^`hJy;4gplZ7-Qt{JdxSNk??_Mfoo84K8p5{lH#HT`-2Ic-jvYMK_S{B)Wj zpU`*Xm}`=Irxs64OOsZ%SyE~ka!F06y>MT#?iN0cRh{974=3xczRz(eS1>8-=2hF* zVRqR)in>Wz-`8dFE{+dPk_%+c5pL3VXJpn*V#-m-ZC6pOS)({dT+uF|e6pC*8!?j) z)1Gt*J4i5G+GALjEu>L%a`i0XLRDtrQ`>)>o1U!sJSpN3HzR|Z`Qa4b>m~+@{6V2l zU+LE9CYOBPUh+RYZQ&KeHxpX*k_%R6b~=4e&Ji|{+7YAOQ_(M0!F$d3f3vus`HtM~ z>jD$E8%!~Or=#@PCAr!*K$Rn??8p*@b>dBGhgx@+x7bQB@!T*zW^Q~{jX_7ZR{c@C zd)EpdwmMa3srXMnitbjOKdiN8x-MOnG&RC#$(N)#B_{c5n(xXZ4G(u6 z|6$Bz@gz!@Kc>?3K!j>S+0@EqJ)+4mlH$hS`qf@C`S3EcybU#e!#>jJQNrA_$L20CHIP%_Ty?Q1d{KHXQ-pqVWz&^umdf4b?*t7T z7w(QQO{-Me_JOlVVJeRTqf|rhLSA+W21c$23}OcujZB(~8yMf6WHhnToOFOu#9^v{ z1EXBS0!d~5ssl?}%S3J+U=%vAR9s=1=;4_LTNxgmOcQ42FFCNJcCz8T2aF3|E>4VE z7RoeD%6G*_P0p$riW$2YZD!@~oniQ>VdYXz#;U4PZe_lb1&m8FdDd=m39nkcbLDD& z=IO%D>Hm|r8W}LoaDNzIbJM_Qi`u=m>T6P4`gXQVuk=-o?4LWcd8yef;YIHwlqO8y z=E3oEVtA7S0AN^T*Qu2J=cb7{)tDotzUyw@L!#R)JY2L&iwdG9f zfqXq_Y9-lCI*jbd5d;4-g6e*BF(_nup-n+Q0l-9h6IKU)gq4+c5My5`(>x< zf*rB~0_Pg?atYsT)Kk(ZLXA`MF()TM7K%iOtdYSC|lgN%!2OSA5>54f2q@P~oN zMpI57gC5|WT)x^dwB zr%j4Wa`PC7v&X_fC?JscGb#$@N9Ma-Ft`I}0Azqp)Lgi02nSjyt7|x7GNf zb{H}XKYPn5aVt{Pif`R4!;ULC8Ov^$JWyWFZdkCd&A0+q^qpVP3>K-p7K+cDpUUwTm&O)V4(DQ^GmrB^TebWGJhx zJiT0m{SoK0^7{E}d2jr*YU5>l>9g#ANvviHo3ZTT^oboFx2mIf~4{y2 zOU`_DTbOWqrot~1MYR%z51S^QoOyfi-6?#J%te?taWCro+0(G9(rA;UvRRX|%_4iw zraVC=*1fg6x7paOeW|+5U+@+~d1dwFn@nm+i+atEh#uu>&SmO+R;h5o=j`HH50`hX zd;X}g@{szYJqixXOxODv&p3YRV~uf#^owiE!Vd2^-E57m<|cE+`e*z}3i)$M@%eUn z<`g;Cy~Y-=9K0@>e!0kMWwQK764wErbi0mg0$*KJcmnSk%-}1Ex~Qt3#*h>@edUjW zGik4+A72q%{!i`DV@8Go5ylti=jdt3G90LLDSve1zoXX8$&WfEu3zI$`hVrRb7!5> z8##t2E+OWz>qGW(9-Vx@<4Ci?!g7g6!mmEx)lFhk66tqO{HQHzUZVVQlK4q&4KtOK zw~zlddbQWGPuWtT$%?IsSE>Fz$BF>w-y5zgRpwa*>$U844t<#a+iKI}hwM$qx@RWN z+Mp6YdtP$1(S&uP_xr!QGfuCrRTkxhF2SI+9d0d{GdR8o6baAnd^tq574;}_Lv(B>XaSlA7 z!74I2;xCuknj0HaPS3LK{+7|y<#MShhFNi43|Ae?uSP}lcibIfpPU*#re9Gt7WxxZ z$#H#s>#oJ`ezhL_)Ow%8WL3nzniUV1o}Q!rr1jv51yLqcs42Yhsq+)=3IHE z&=*%%GIVj=N(gdEVL03Fsqw7wM)M=(8@IX3%75HVsAy!>cvLXsNQH>w5@FZ7{|lD} zFmK45K9$+RhGStdx1UF1t5{q|Vw+Un3B}efn~5$mLeE6ph5R)xJ#@Yx7&@sZ^M zf_joI4ty>TF2uXq8eENY<@$2Kg`Xp6%i~Bsi4_wV_*EtzVP*;vIqqc{v7~{|=f#Et zli4Ic!~_V3ehGB0WO2C2;JM%jhhV&vOG7vBLr1mBFrkAEb2v90X{dP>y5vDbWmpLV zpOwLc#dUm|N$RsLR2*BFv$d|UdG`lgVG!iv{oufF#j{d?X@jh1Aj8zSpDP>#*SSn& z3Jz*z7PLI$5m@#$ah2wB6S=AJj!w2mk{rEjzjjPxo%<@xiA(h51YfSR;@6^F14BZ) zF8%lO&fOaCyL1ARxZ1U-?S-+7fl~L%tPf`M7Fw^1f3WUI%&x+j7bom^SH_+1{Pvu5 zIFHP!Y2vx3x2iev1UeWt=NGviIO!bpKs!8vZy|SM5&vE3>9YkzPc8GxJ&+Q+M)2T@ z00s_|3k^(%m>wvta1qoF=x5veUEl<(;p}N=SUY_-ofPejh<9XCXgDxW)NzV7!#u7Q z4cCcLJ6?GkM01y33G(+Xy&9POsY59$|Lj(!$}JZU&z#XS_u`E%gIjKLvE_d|j%H|H za=VkeB4_@cqQmYJPciA-4Yg>kw?$7k`d3GsWL9t}%hTPr+PPak|LRZKqj_5yxC$Dy1vwXNdn(>s+Ren- ze1b>fnDmn;u8nIq9tgA(Y_7bTE%GU8MvR%p1olVSOp|Y1&v6Kn;g@@^IOhfTz9kHT z9iC?tMVcAD$`lzftT<9suGRgOA;G>Qpk3pTwA?YjAUlSg?D?moE(lZxximgl7|uR1 z?u5~Fk=89Iomh*c8257=`)|-y*duPmFZV%!UCp4;Gbcn@+WE@1jgEOa{TdggZ?AAu zJMyq6_i%t1?)Q!$SQWNN}y9W=fzV?HffkW>2HhjyvQUesH@Ab>mIW- zT5jrzkY~9%%d~|h?{oTRs;*MF6(ewDoxwVeAKXfl3leuN5D@IRYM}os<&=8LgLS-R z7n%ha9%@)9N|t*z7)pOS%&9zygRAd9H{1LJ8C;h`n;X=g$5-x5bhg;8I<;ex(i)xa z|6D>x+8-#kiy1Z?{q(`5uSa;6chAfkF_Yj$H$;@Ww{)yvdotxP?$~^)9pOxw!y+HbK{J)vaXO-h9!U(_Rdrj#Jt5fP=OLTe11UH7sV zxG_;ZoQ-Q$9ushh*s_?VWtBURs%Hj%F{NQ&$}c+tBL4m;HLmoJTAw>sTFZ z_b#@Z+97PVDktXk5u=qkt|~h(3Pr8lV*$2}u2!6xZR=#3r=ViCOtjr}T#DF?_by zJ=CwsEVJ1@TVdl>vC~5P5=F0ti3SRNHTbCB&GDexE969B?zU^2G@1@YRyN$On&8az zK=F`Ojz=5!rtq0zDVw-YIa^nI-IaM=aok2vM_6tG1M7-yQ6n%xaJHgO|c@tW}xC&|u`$cWJY}`I1wt4-M*?q^C`1 zYG4SkQ|gso6xq#VspHyR`1Q&i0n6;lt?xoSO*k8-i8DVq^-TM}iN_SH=TloGmD|cp zJocTO^zhKJ{PiZr-XWZk?N6>;R;ZNy>vQXI$l+kO-7yEITvj?9=;6d=yr6+KrJ(iy zIv1hv1}C1V3r&(ficJa=Sw#D4a~f5gxQrSYdGaQ_-Vl?-8}6`e>*d)T+1b^%ugUSc zSWIk_+H-(Ox8or1nh715H`VlIV?CAD88nL@XkZd)ILNaofh~6R6QOW{@7z%e&C+WU zuixtPP+1e(`cE}sI_Hkh&P4?cOcDzim!x&B^_kT!qw#=&O@V=tX8{BI3x=zUD_ExS z2^6vzB%JqXzR;{RiG8|zzmw$sisSZjpC)>9v2zE#Wx$;C0Dxf^~( zEU6JOlfSNbQd!62R^;^{yG=T^zRL@~%SF32wVa*is_W{(H|eOWxl(1_Qm?L86N}4_i*PD9l$m6`fjmP^4o~ zl*&kH&Bgr8^f_kEt-U-i*k+dGM07x zJ9z28&8F)DI%Ak^-Fc{j#m|26*Y1coWd-m(-tj|SYPHLR(sT5@L*C$s#w&a z4CV;ICJv!4wMGR)SFVHYmj#V@Bib_=D@8LDd&>oN4E;YX7s^Z%b7giAyx7=k!Daci zac#M#d*XlX^~;*-uUm+IVwo^aH!r<@&JO`?*5qWy>U~RF_iDu2yy#{W;ryY*_)@GV zwXs`PkU=sdG_;~J=xNV!jo!;EnxB7UvAj^s`ha1Ja#@;(Sz$@rj0Sez00#CA3|1G| z-Yi#qzg?*Lh{%OSLfy>GydPaoUTAJqr`U|HJ*5pgip@2y^*(_U6>f^GV{KjR(C~SM zSKT+!ABRP{ID|GVpA;6TwRO9~suJhVCjE;WIvq?p`fi9kQEc)m7I9Z;_@z8y^>P6V zk4bV$maChm)jl@de04^=q5Z`2DRXBknZ2ATJ!$egrhtVzh3sw$R?bM)_$l}X-GMhIG6>=45-90fo?&<8@!z|q9Mwwgt(-ux`4xgq|Xkq*#BYvfrbVa}G zMUk#&X^96l&!0#-vs38g3!9{i(M!Z;R7G~?8T#wLjIn<@Rjy3rWOKE9Vnpx>k*G^k z7r6-vMNE9lIivW+jD{(hr>6c_%uUGpc2LB<#QCIimjYwNsfamSPcG1AoW*OUxcH^6 zfkU8xmaBRo!_>@$(x(>6uBwf=%E0lVcyejke$OyZg+-hKC0SFIj%&8FEu6)_aSq3+ zhT_QiHSU5AKLr|ZPEh!0>N$a#?*N1ItT_!F{qBJi84?&QPE72+Dw4Z3eL{Ix^2d2I zIiyQPR4gtqICnK&7MWJLRN%)>Az6vV{EdbkKLjjOrwOn0_{G`Oe{=r&9f~g#L$r3b z>wI)Bs1)fk6_R_k+6-@7}<Iw3BkKjt*na6K32^9@w{H=Ba3I1Q1GvQwvB7`t_iX!EYpk@ z+zA0IV6PfAd!v+Ki6#W`wg zm;z0H-1Mv8nbsCL(eCz!^zLn$tG8vJ-j-`E_Q->U_XES5@4eB@8zrjUDpxZ*KHqqS zX|->&xeaFoYE-&|K{Z?BYQuWn)YzrgGtrd#iw+OS=y`L}><#tw^B0!B9* z`>ki1f83EH*%Wqh2OHy*(5{`K+;W)urtIBDY=(9G$wUy;`K3d7u97En*uPTt2W=2)OHq?bC7Fbk1uh z>&N;xvp4Z_RwkVm`N+M_a>=?Xm+kf~TNX=CNQ@F|Jh}Pr>RldQTLmBP`mO2vLu>h^ zNhW+ef5Lzj~{^l}U z<`kB-ueNWf-m9}_j+*z5)J^Lqu361}OJK`&5g#7G`K_zBPSLiPnV2|{o%g^j*2tzw zI{!~Dntmkn;?9(bOSl87?^+%G?!7C_N9<%V!?Hc=x?k>JeY-OD)4qf^VTG%)PI+b0Vvmz2y&!%Z0Mem;=!# zWt(1~2%o5RS*hRmU{cRDzvWAW?Dnjg-xFh5(0E!xP$aQ`%8gC3n~x?srY+Gpx=8zU z=pEtIj}d+%7qkTr>^qYXzWM}{;7r*=b9&3p;OLMP>sZMqHbiCrhSpjo~`dkKnh7)Z$O4%(ZE-gC5 zlxSRN%cXZmAoSNo=}i_wJ?WOVT#mZaxDv0hJv`&9Xu0G|<%Wr;@`bg`R=8UH-OJW{ z^@sQAWI^9g(qg;!T-+;jP0;s1itVHjU0qShE|!X2=2!fB!c2myuOH35bG-M?$+L>m zci5EHn0mW02(=fnIxw&=V3s_s;^VQm!}elV?oGjmH)d?VJV|z^(9bJOiP~x3TxQ=* z%W$;$uOqmkT5NHz*wH&8vMUapobvzHx81ik&$*ED(Rp69*ru~W344X&ZLTH8T)TG3 zc-7L3rC+ZL>OBtT+5cXR^$B6-i80QL-sG*jcWKmQ^9@gV1^2SHZgYC7@a|bY z-}Az};{~^w)4wQk3fxsrR`uGko%2E=+XIGOlieQqoaDNDSO3#p0l|B#l&{HbvIzPs z@Y%)7UuFMYt0!~siiAe_J80kX_7mGCv_)Z}jaumciQ#vj{rY=9Wn#ky#|M08pK3jN z`mO7BWc7h7lY-lh%q@Q@V9WeOeAbScI?*b3SJtRJKbrUExZK$p0_+Z#R$2u0ac|Hl zybwB9tCUA!5laKZjhwUUXYMBGZR*+k;^wZ$vX{ckZ?5&dE6^FVCMfE>`&_XorYEaJ zZl*fk|9tkq=I^g&Jx&dtcXh3;*k0G0@fTl3pW7wCYqkFM+l|)8E(Zy&Wj>zpu#e}G zChNV+3U`^`PPu<#-AC#3A9K6+WVSB4IG2IfU~lbg;VuDomk$iw3m!QwYiU2Lm>W8? zyZ4+Qmr#*g=A@t(0vE%l@K(;Vey0#Par!$kf0YQ;AFI{%4?KSx#LNF*%#}HnCF9lK zd9RWu+AQxgQ8EAEH2=N5^y_IeKkzP8ecG*P-||j1@o?C|xl@nK&9h9tGKYQHw2!j> z-%Inq&#W@zcj$Y%g2Cbdi_M;x$`3477Z~c|?($t=etbvKZ1KbHnsd4}kCW!VI4Q(n zA@F!=jNs>ayJUFp@vdz@wMxk0jhO69frGjeMZ#~Zy%0Mj^ns7Da=(^k@cCPz`eHlv zG?@$-3io~uj{dNcpP^TN(%rSH5&5E8-$nOcUE|gIl3!8BZgs|y++}T=XWy@_F3uy)P|k! z|F80l^KUf{-;J7^%PPQZ(5n=2Awimfll6tcjRKLr7Qy)zOClydYU<$Rj99ZmS(!me zOqBHphl8N|BthN+of(gng{K+1i~e}gpxWHQ{-{7@LSgC|X8Ba7Gc#I}oBJywF7;SA zEc0RIEVM}tGIBp`qx#v#RKirbsjbVat>@3oHi``TC z_1)9k*Wbqrk`KOF3VtpLd8_E<}BBj!OKqf7(6WN@0g}k)oOE>SyXDW zUBg=~CoScr7ETWq-!3@qVKc2tyK_s^nNufLZhhAE!nBz!r%RjB&WpiFz`4bHM-PjH zf`ediNTI7(bje3oiR3ATZc^D>KDr&0>s0QP>&S2x{5tN@owxgh+4O}pQWHkgx%X}!A?WVRbIQhK4^FvcbUkn zTf}a6t9N(*rX#OUX{=n_>DXkjQdjXA&#B4ln6$0Fs84&)?XhpW!Ak>WCLt4zvmG2u zPi${dc*+sL(DsYN^?&;tmIW6L>}S2w{QETbGBR#tIpkaJIyjS9GAhkbP%39<_crxWnaMYMRiH0UbdWj8e4-^b z#fcochm2=VI2FRPnd4&8qupN~YUM>tN%Y)uV}e-T5?%Kr6E?m$E+l*}tI=%J)zWJ} z+$@d-_7yKlmVIlXdu!tw#hUDJR~3oLs%0Nr(o;^eF$%D|KG~?ka$Ez>7=3~D!Z08%D)Nv<|OL+ zF7ilqD2u#zl*P8K2~L?aOOn^weLA{T!rf|`6>szlw-eS@YypDZX{Ku{eRI-+XWyQp zEGNR*@Kms+U$EqCu*gHlT_OwG@(iE&-I}nYUuMBXk^hQJnx;iUJ~b?P)6UHBnUQe5 zXNtQ=Qqe<(0*+I+Ke`IWYHcWGFx%XFUwC+7F~2>R_& znc&m*Q#5kXrpcmHrC9DNt&x%W7;#d^({SfX38AlVmRUc|^soIDynt=1L1n;8mB{vX z78TQ#u8U7FPuaD5i^sVp?u*{mbJccuS~=wLF)GC}F*vhoTwS=ODvOEFOYqZyVCD2& zzrcr~8<(prTr>X&x0+nSdEvw1dp67Mr zl&$DYu}Y`N!!J)P*GgE;YMAm*YbkR_S_|U^nWIdnyl%~~_`1^bg5&>4#ohZiRe7yw z*eJ}EULAesS=jd7Pjh7-Utm5S)wZ!Ck%?Krfq_v#fsyaUK^w{G0_nC3t5_@;eiuBr z^FeT7)rMrIvcFB8aykzfPM9*hnYSUb(o}(w)j*I*Y60^VBep${WF3n5FEAVsdm`v_ zppi-B1HVd-ZD?Y4gs z1=?>Yg^3n+`qn(k+WO&;Mp|Ka?4Klw;}vcy(+YcYYaZ{9;M;5QtgyfKPqM=P8OI#e ziY8XtoGOxvJn5ZQGW`;6sYhMx zPBWQe?{wYGJ?c`O;THc#)|o!(QI}_*3tM3MH!~po38$69R=%PK3?V_rS5~K$u8!qZ z^4}kIZO*a;z4Y4bnCDT~V>-XCtF?Whyza;K!)j$4rSE1ZtKUAW>#}9j+`l;)^^!L) zF55O`q1(x<^yu5S%|30}`8QWy+qdU|TKUeiwMqH&qwngRyF2UJ-@Jf}E`juUH949g@9wd6rGgBjM#0M|Ja_Rm8uSjF($({qghAtmiS$t)Ew( zmu$W|{ddd@XZ5O!y?ztV#l3yuonCc$?!F=p`EZ6{@w=DT)|IYFk9{5eyz2Vif2AAR zW8WmJSKmBaSGHw&?Az@0>f3k!mF+kl`>uF-_1(91<$IpTzOQ~>egE&j@&oK~ADY!` z9`e>#98r(^*qvVUSoVL#3HP{9lb6>#)vd2QlOFeZ_Vb$Ow*MJK+9O|N|&+plY5vcUOB(dSbf6PmsE$9>=Zytbp`fa|U8GrMc{7Rpr}xN=WD{-@CU zoDb*E1Ta1cKT>&uk8#QVnm6J9=LvT{u=}36R)Ki8w`f8W;6Y1_3#TzXkycDH-R{x{wZ2cnrdG7hj!X^}{D zV4rh<)1>);$IKoFTfu_|_*YrwR<S?>@i94&_PU@CE<7lvDw|b9*!V(9qFWgEdP68VbwQ$akH)41q-D>D^&?x3$ zcB1nS&+e*U9Fqz+{-0sL^~WItnIk)9JInuHU;T0bzHijm?Nu4Fx$p$!_8whG2CsF4yrf1W#+hVG(O@I(QLPaW$T0%`w7RL7aXtJ zbKLI4@huX^UFIC+(c!T1Xi~4(ANZn2#X+dW=Y(wHi7f`l-JftNDK@D%s1)85JhS4U z)5o4>ljS|#oE1~tYoBmcA2~kB#Ix>;`#J^>pEZKA{~PD1bb92~beS+Qlt)i$Khtw~ z#fk1Swp|BU`g1%?B)txuXl`v0C_B=n^wYDv#%tN_gPuQFG&&kMmo)g4aClB&;tDt@ zzJqDzjZ^EE99Un&HJ!()anAhii<4tzT5Sp#Zdo$O-dMA}=k(4goSjcx9GXr~64-e* zh=t8VhOwZb(yNKV;tYd8L(82>j2AXHJyU4;b~x!nS1e%)+>%Pl1e^%)|^~EVbOsV-ljXf+XZ}&==e5QG+qAVcJmL%{w*Cc z622QwH0#JP@bmZ`kvaG1ivzob@AI0q3qsCz2sBKvQ0ji+JO2b@-~Se`cYk)s+OQ;t z9F+RO(rv)Z>EOcc!O~~o|0TqKn#JigSGbi#W`2n@?tZ~|^wS)RJG1}jH2h@|yIwQt zj|zi_a>tTlUI!H?n*ia?=go4%SE~CDoag`K-_8)o=&4aE8Q^hy0n>%EK~};tS1;;Y3intpn{j}7 zdsKtiDh~0j3QTYP)UNK7ox1D0f2K%iXKmN1u zTxvWQSRrv#M#?eEqS+&Od&QF1#oT74y^)q7_F97NE3R-aT+OS*u-%J8^3Rn3RtCwM zVACYts7+e~AB0qBUQp`|ea{oZ-ov1w!ePH4lw(7~U*nFLrJ-?8JDiRl^U-o@pRx4I z%p=KXRZ?a98P58q*-rK?>HRnJT8_!Gjsw0YuY_`J2yOpy)q(d~8^d)i(d%6j*Y?kl z$_-uCGD9c3Rh+lw%C>}XhL7ASOS{u_IZAc;6kEd_Plcb;x^^|QL+Gp4HOH%ErSp7>GFs|RzC?(;oFU#7m>ODd9W`jxy|KA|f zLI(E#90xXjTELvpz#6df#FWTcTO<1>Tz`AAgQbJn=Z1dBEc@4n4D2UlWHw0M+~mYk z!NC4NrAfP^th%fF?2X>J7yAC*m@xOy8q=F=V{f)OgzuMFwrJy=S(>*N*ETKT?Vnp4 zHf_R^eGj?kti3r&!f}(Sl$0t*(9fF-Qkxc*b}Wfr#}=S@lPiW@BBm>o!*A}IwuEI% z73bSDIr1|`E&SUdtZN%uc%#d8r~DnCCIe=!Ee&lREL>9>> zyz`!k-s|+?-cfpH`;S;x&ba#Cj&D~(ns<1%A8L8bdS}uLiO|A(=bRGwJ2|5hW11IS zXUv!qby}4%?+(*5+fc<*XMK0dy4-J?(a71;(01b96w?lg1rDEdIE3p?ws}0{j7jVg zh@Q4rqiMrD+g}|g&N!()oGp7zJzX|Vr8c1bfwXER3ya4im48b*UpXnsXh*+vYF=^A zx;M66;9-<*;)d2l_9+hoGZMGdB#O?vE9`e&spxdwRejaCr1p%YUst_3v`f3L){ zM$1K>rX5RJ0u=im_Z*1d-tkmv-?hL4Y0VeXr2p`CO_)EE>qcV^$I^u=&Z`zyx;+Vb zI=Sb>0^P{x9S>5Q3evk+_wsH_S@hel{RK1EALizUCeAqwT?*kGADY|hUUV#T=<+? zIlO2Kc)^+SqNyN*z2!yz(HC8Eue#?Q=$V(8eU1APr=5dfW|za<8Pi_MEXeFEjPBcU ze;>!o-wrP)%8501yqem_@myDAx|vD~mu7Q7cC25=j02J!ZRr(`yJCW7ZFUo$p0~Hj zEMpAPe=15MnA9lZ7bfm_jOcWdYK&dtS~mCIpPglPEK=04!cjzt$U$|-Eu?d1#WwgweQ87wgurbLU|YbQYxQ0Oa5OqlXuc9)3Zz8EaP|` z!}V%i$Gf_0_hUJ)%NFLo+mpB|W&b;i1Jm9%-N@y7k$Ym^+e2j>ck&LLFyoMV#(mYU zzh8~xdEbLQvLBin-c1S1>$X_=+U=sH>)Tmo&-X5TGDk0MRcmg1>-&TI@{fOe`{UV% z+usV7&CA*QB72{uhCs{>mhj763GcFxiJbk$=XUqG?Y%dz^uibp1`dF1{{Br~4dL8=Dxi2a9-MN^z_vptbX&+ZkOWvzcJp1Nrm;H%~;srA2KPt>Wx7Fj*c8gDf zr@yrCc1^{Sjq)HK{f-0Yia2h3;#>coe|wSM@~?vWkEQ%Nq=bskwH2Pg zIbnL?7OuBKk;$p?$>|TJ87pKu*XkrpE7&(v-F(}uMET#LxQe`M)>C?vtGx6P5}#q{csHwqRh%kPN8j zT9No=t3c^TwXZ>MzSqZ>MTpvl#($l4`ZL>|;-6yW4(+9p{Dm>!KP@}fZ7I(hZ(rQ& zQS4{_bJu^z%59Hsvi_GX(GmQmd356XZ<496wagAKT2@rhU)sz6CGY!>{PSN!`FhT% z9%_E1#5kieZ0@_5KJ5*4g-QF%6ZJFg-Kx3*X8HGYHcjtr-p<{+J=;zN~CQzF;TwDT{`!=^F&*zS`o>u+yJ`ZNr8=0W5DX{b7z^kYPBro8j-P$m$!0 zwGK?{elw|D5ctbl(QvxoL$>4h&i8-Ps+mq{{5gEQ@kscLS0Df0?5}9gU|z2DkKLfI z<@Uj)dL1SU4mcZdX#W2Yr+(+#t8xd<9d+~6s~)%=UQvIB;k=Y}?}yWBPqYdzUCf=LJ6R~zaYHAr4u6}%?x{374g zWxBVw<=sEjyIZ)QX@)xclOG++8RPeP&O7$<^z@Fi?tEdlSOpdwR6fuoEpw(=!H|K; z$4*Evr~F_tyWC8k1w0QNq_^_3RR6Dg^ih6>YauXn~ShQ zPvxc;tiAIe3H01f;5$+#nb6h!^5fGc+c}3*e75#JU}rC!qjUQsC(}jNmc>UmJA8Tc z*sNMapm%{un9Y98`Oh_P*7)B0_n%o}K?AeUiEA!gv5A7BlCJ3&L?u-hCAdwO`SQS7 z&~3{DXOXfao^GZ*8dp56BEDSmeAhdP*{5O($7Ch;l@&tWf-@~Hb;~9)U1qXAsxc`j zfRN9op+)3^#xOl;?GjCi22 zq4P*Xm~vri-~?sf%7BULwNoB@S})tWte@eV#{Ww_>{m4|^@=UzY?u{YdgXb4M5L+c zV$YpRmoJomxj|{6n-TlUnX`*-tz168DeFS%qTZH<$!wug_ktUlE(m$F2ALh0FW>6A zy!3{uSh|bF#9zYhGp^iP&CHwhHEoiOCX+Cu{8PdB^-Lk#g{SCzbh+bEl(;EwJ%ftF z8^^9QKXq!&RI4XV>5A~4$+&z~st!X?oAm27@>fkSh0IvO&A=qL(Q78tJ-ewa>pFQi z#JKk#(U$5wk;~n{^v1}1Lo5f6)T*Q6$#XUy4dFU+(s72*hYKu%8z)}m5sXzj=*%J; z^2u3Ue#)m)W-HfBV42L(@xCPB@nxrbygkS0lqvU-O^$lnET3IV zoWBU(H=lh{n_+|0oUfkI?pI8gY5ip>J>bNwvDL#{I%LawSx&zS_esnPvb(~QZLggV ziQKv(YSK2#d3}O~|3ojC1oG};l)4R!-7vM%lY8=Nv!~j!-)^syz9@W8U9I6p>ii?M z`=)eWpSJs6rRz)vm$xEoJXmedR~2c=F>p1Q^))Q7VC)dPxWawal^aWJjvD_@aDR2x zfXRZdTKYu~5)uTrYpSr-JvgFr$)U05&Vv@oKt=9Y4(Hi>6qE%Q zIEq%iIP83YHD{_OuiCr^YbKs~muzQ!vc_N`htdJ9(o4}vD{nn;(KzJNB{OqAQ^A9y z`k(SeW-M5g)b^z#&{S2)UF75sw}~u9|K58TRNmK^QKHoEQJ})~d+8ZhrKWJDu<33Qry`d{VhL zYngk?jn!sSEW*#TXV};#oq42csC49U8sjO+vy&H@EX@pzc8khd+P1}H8TZBx=M<^S zT@^=o%xX`#-Af7#(tV@ABI+x#`q0@$MMwJfa=p^{q~5@6A;9qMN?4FU14Bftcc10P zjv&`2GsUL!$~t#ndh-Tdo*UG%EaNPPpY@{4Tfa>)kMN!BzQRg~F`{(cJfEz?GqNVu za2{AvAgPr)LF&KY-mJiqwC1d&H#e_bT*SDeb4lKL-RMxON>bhAjval_45sWZ(;F~mog}tPxU(oY`$D;}Ec~2LxTXbku%_;Z$ zdh;lQe@2f|iG%IkTTd1?GvAZdT@<)mr;Wo?La*#)M@-G6_cO8|zV)oR+02#`vUSFR zR}69vEJ`*Hwky9};lAZt0HehMb}NUq9@Cyq`@PnXap_e?d&UobPj-4tRdXP&Yo zgJ9I0mKxpzvlreq?4NsbqwD`|SD2DE9f)F8YE=}MWOCnjQay>`y27m9kbk`#Y9c<8 z9Cc?-bsjY8doo*MS=i2st2Q0)wSI54ESj1lSGXYY@-#t(be9ui4_PL5?|IU3!SZDJ zH;>8l-^h0|EvQUc_a<)b>(t#pL<7nu3N;+MW1tt!a-r$mrWwaE>t3?HWE9O_UjcU@)0YjfU=VK?uq z8mA47u~)vPUEFoUxFKO~TiWacOBgz5NnH8G8r$5nZELhhe$=N4+KVi+`#*h^5iGd+ zFvss)6YqypTRQ2S?*r@sre%1B83GH_Et1dw(;SntoR1BsE?>0jw@#8{)V!{6CXI@f*6#{?3g4_X>~)a0n$+R^Zi|nM<l`uLKWYIm0!I%k}gnr_56L(TnzpXB0tn~z=Q!DksA?w>jscx|!3vXHW(LWV6n z&wTu?^2A0ecjcDK#p`ndOU=dKHXmhg&fK}jkyk0!Ls?jj{l7ux{#!k{9|O%-=f2#U zE??Lnvpdt5`^^da*c4$Sxry)C1d|r=YgNQ-XAHlt$8kw_#=gwMM>bbBO#P(GRLUmq z;>u`#!tJ5l#D1-|*eU+?tfI*g<*jR#UvoC>70>_w`*U0J;vG!)S)3ZTox92F(%|FU zaD(*$!?6&?S*^SZ2|khwq8iR>yf|<`py92j|N6V3uVWWzXD%pBeBhxHwXK6KuEvGG zBq;Sk<7(Zz8%^fU`pR<9rs44m`Ttw5{I6wE=TKm@d*JvWfqCCezA6^xTOtD6Si@As z!sjY5E?ICZ@Fsg#OT6ttCJ&##iQU3n4(w7bf}dJAj&(heyc+v3=ze9(|J9=X&lkkk zA8q9N*VWR=!ujaF^r44Q2e?{!`F(g8+%qPzin%Q8xu+3xZ>MY9?n;-(6J6Yw+z7bA zvRY<>)!jQ9Hcd=>r2VhNe0M!!QhCi}<_z~Ir@y2|zdI@zT@gK{qD5G85d#N<=qta^ zvPWWiB_m4Yq7U2`t~zqKFlN~iHjVS)X-pTR4B4Bnz|8 ztknnSIhr^qA4@dxdhF-HBpR{URLn)mqmkzT1J9iUq8oaBV-AU4Il#Tgf&0V(-ZhM& zJ;|2ylC9P$N5veHiaBU{OPOI^tI`{xE?WmCkp@PC2EG?Fl;2%vlyP8GU|@Dgb`iP! zpGiW+Nh>AF#z`pU26My{*IVP)ijt;ME~k_BR)xL#9op0vbs z(G!goPsA%99t=?7(^=}Obk)uC=n_^BXS)<9y(iaGo-&&(bQ&p4!rrp-0bs#~rsAE~Fj0pm_1d(Z{x}HL+@G z%L11~o{HSSB`WuUsG#g|&^#%Zrw->3LqcD80%}ImBC}C#Ld|V=pUGP)?-k!T@|1V^_nQwD=4tG?89VoetL4IJO=T@syi2MsW%S;9 z(HnQ>*Ac0{V-MXV543&Cn85XNLQ&U6jf|S8>s`lQY<6v_$y~mB!R1dkSzURh>OOUI zM+H}Mc7(^MHFddkF7x=G@=I3ORO6lPinUJ`$7ZBQvv^HmTR!WS%b_``xhiZEvgY-+ zyeO?=S$E@^MnL~t)iZ*AVP$Vz4q1d9TEdzo_;Qg^)?%wwbq~U_Y*!uEoy~XP#ge3~ zWofT60vEX^uy?q*>@#^PHBoKq(hQcwm0@#_6iWH6R7qOpcI4+5#h8Lu5{Hf~IT>C( zYgOjG%N~2u9FL?$?YOn(5bH1532K}f?kUUvs)+j^;97lcVr)a!`mQ5e_AS`CAX;(W z(WjNFMTcA#trVW1G@~aYYv-)jJFC)#rW{XR^x9amfx)CfZrkfUm$Iw;Ca*j8YN_H} ztzD-Dy{6YjN$q5F?S9A7zBlV-Axl>0>;F*+Ol4)Iub zHFfNHOdf}B+>_e6$Z?1F%3Cer5?78kskPX-9twCH{Xs1?>(V(fmR~n@{SVxqqjXmL z-gD0rtF4}{Rn|IvK#Mo(#z~KoRmDnNSLU^BwQDV5OuiJ9_cZF=)1bmc8eFT)_AG1K;NYe*2?uyIlA< zJ_-mM3g%BqUpQYgk^MlQQaLa(Tv(rs~FKZoqDwzcq;U;HRlmuZgd(N?H&p^JdOb6Ilik z=Z`DpSn^*5Zr_)aq;MeO*9T?iA{FmXD#4o;ue*Q0vqe)xt>gljYPNZ?as;Z6X}TcqCUf`?Fbbv3d1p^X6$Ey*6v*=@x$4 z=sHJXVd*N3@^|d%g*k<)!gCG$8+xB4x`!66WIumH^8YIhme-LI`nticn+2o{-k)5s zP4>TzU9Pq9-TRN$xzEuJ<;dfie`FTh8k5x@kH^Gq(JV5W@S|l ztV+q7wAxnx&dS{8_1TL5v&Qbt*Q3Oxy<9!CiKn*r{i{?5oLV9ApAjE%_5MioJEtn*lB(1?g@sjn-@4UH{4}234L+yN9otd8dLL| zE;2b^=6-0YIy3kG#Z9HTx4-2+F3YoC<^Nh*@%J`?`7_el7hSD#dGdE#{_VIB<`r?; zt9`3mvb)>-+Dkv2nf0j3Me9|u^rvF^=A^L2N8Qv9EZNx|{C<=4*^+d9lTT9da{VoL z-M$2`nEX7U;2p==Lg7yjo;fmC_}ly6OAK(+d0p1P{i8v+qVe#VZ*Cafx_nLKEMd1aavf6O}6`Y5$xQ-?O{pN0dsx z@v$BM+VWyNEaZYJ-mG$!DMtC|*ela~^ z?rQ_Hx>ily|D#C$OI-HPsE&EjH>NK3==&na@=Ny}SJ#o*;w-bauL_)hlzB0$aqXtbZaav=*+IciZKt9qW#0mT!w#|IOlf3n;@J*Ue% zos2ctHs{XUUj9GktA=WsW5d}miC?F%cl=#+^pvyBN?Rs5i`pIfwO73VUU3&LJAKr| z)qR10?TtCVB6IeLrtj3;%zA12(VtUT%NR6eRvLY+Si0x-p4GEk!=J2Q%eBTmM(*tE zU6t9pU2YwHAXMZ2KzGf}t)bF;{h1kZ_kZwLsGD`@TO>o__29j1UmI#ZmOqL9_cVFm z(JL{FX1l8Ezql9O;%~hpx@NCqhS~CN+p5oc(HpqbDsD}dX8Hg0JnNdx)sLqyoAup# z`}1Q}?={nscfON;cXoB%&U%+aHp|Yn`7gQu&%@+#vDTjb;vNeN>SmoUdS)Fgccl1f z^#5#W))zz@b|bb{N?1H_Ltt(D`u{@ z{C7MoY0FVnW|!H4%$#B-76$ALtz3^~bZ(?QJk-X=F4m#Zu;`$QAmfV@KQ2B{?qe`$ zIwI2W*rnapLWt2)AoYm4ezM-2mjaB(S@mVj9?WP+mz!t9>B3@lWkF*H#{{#|Um{r{ zD}z^tZLJc`4)qapXF4!ZG$&$X^2uqY)nd6(TeEL&EB!5&7qheY<+ZKV(_jBTB%?3N zP|=W?ale)Qk&DcM$&Bu-`lSp33pkz}>yV3orphVgeri=kRNUH^;TsOA=zs31VKGWS zvRBfb>D-KhC84JoWGqr83rpPCl|!wz#26X5p9*&EJ2Us=H>U^M*85`)Z2WdyU1qv; z%UT&Nm%eqz&o~_#JVRduvbv-ch}TwqeZA4_-K(j!H9tSUyuQ6&zP|47@1Nhl@BhZw z$Hn2dkTIr8)3S9PbHeiJ%eplfP8bELEMxe0%41V&+wT|V6NFe4_VgF*;B-E_hKsj> znXTi+mg!TvUaao1cjfDr7Q2riB$~xS%n&E7F`z?x`#dSSkPltqv_mg*0ai@ zkLN!_<~BCXUmqNp#HAXn+XGl0*mQY4UctWN)NG!utwJk4E|A+KGWksNB#qC?t`<>m z_uG8EQ#?gqR4Ae0@ei3P7o2!)MJ~FC#!k8Dws4lmjn zMx&y)%jQkp4njtYUTECXW$>1*DqN_y{FlKZ&B~(ug&dAgUocD%>dx30dVe$5rPf0w z9K!4kGD{;Eb}TvJ&k$pq;i)@!jn*j(%|oRNWoCB2@b$C~ebLynr8^_4nQuW}WOIkW z6ovT;Q!Xefv8)MSSit*hYf$gHtG&wkva&NCtUkuNpz$78+>D29vUL)VI#lOL=-EG1 z?TBy9sm(k-@x_1E&gde|P389jO`oic>f$oiS$sx>%OSC8R*9Il_5I+ls$Qa24q+{B zN)s2&WV}#5<+T;tg7g)Cj%-%&xn^6YF!y2hXWIoUO{aQ3+)&G(*8b=R4+E1;PT$6f zEOH(b7u%oZxEgi)Yh=TA%_*PW2Fh9fI2m}0?ZKnQS*!^+**`Bm@vP&<5{ZvZqTX{p z9+Rz?`E){c{++e^8BZ)c?fz$rm2#!KkhJDX$(-xQJ5HJYjMv(DP9wT?fm%n((@VZg zZ!WK&wKjT5hU4%7e7lD7>7ngpjjV9|_l1@Eo==8 zItuKT2@bzmCYa33TpMzO@#HR+D-7&13JlDgGo6Gcu-H6N>YdzhKEmnkebk<{(>P))^d@Po!L|#Efz+ega#qgunD_+RTyn6oP_3Wp1``L zu)r(ou6x?F?aR0LG0J)?3s(tf{ZQm+D0$PxSm3}S>vGyl-g0__*aZgG2HmuD8BQj- z1uhS}dM4a_+Cb`7lgv!GF1$Pn`S=(hObYj^X!~CaJQhC_HW5kto?mLtdetK$(h$tS>_aFDG*i2%U_@)-~Q}|t+f?vzp9J6!ojN|fqk19Tun~!E$%dK$|;(| zVIA+F{8X=LnbvepTW(3t6#?ybB8vp4zHqttx#Qc%AchAu^E2l?a&O|=tWfF_X+3eP zmzbbR)E=I&Fh8S7?0iS7*uScK*hHOSoRj9bW=*8o?k0xFx1Vemd&*s2x6Q{$xERi{vX;jd zzS2KxIf+r_rSowgEw##*mzz(R&RTx^kBOyb0X8vU6(@J-9+`UU{hAc+SLkpNbe< zs=TBvRttX+auNJJHK?8QQwQ6P=?wk6oy>Y~)^NIqFNzQ4=&QVwEdO8P#MeqDW`O_( zMgay!-U|miZ#S{Cs~lixuwq~?Vu=5eu!z?x!huQ3K4Ofn4&Tn8Fw9u;z75qMx7oOY=2?Kc(!?E{Rq4~(m|a?A~+ z8O|rhlteuGkf5wQlabf0YqD^{6GjOIMk@{jSGhtDLum&_{vC#{*Y-5nb01&`sbgBm z*~FV?6ECqe(!nIYT~zplJ^SQ?PYFX`6743nJK?3{*E1Icn8y;uEPF$ znJ0?nt2Ng8d~E8Ld76Lm$1(AFMbr1oJTpv>5nEmSaq?-I=LwNJkGah)p8sFwh2weQ zWijHPW^>EFbl$m$Z^k@kcA2#cJ*WS=vNEo8dq(wD9{XKach*f<`(efFMDgD@PW}`0 z>4|<4t-t$fG1r@|`(@u1y6+S?pIy{_+V+iNw&lH__saLrw&u(|z%or*JGo=^-}iR^ zV|V`-1|1D>@7A|co>PMSKc}a!sh@WJ&oj&Oj}Lv^`ka4#&2z`N;Ot3qUss0Lx~Q&O zyXAiESH1I(yprRqZ{Lq=`lI4`&6U6UPJK-J&wqbEbjH_o^oBC@SN?p_d;k4M6Zu~k zr|(-Rcd^YluUt7{wL0&DaI)_4K7l1iyU*Nqj!1p+S@A(A2*BAKS3-Esq z;Qu~>|Mvy{{{jNcfdcFk1vpg&`92CLatI1<6p+3sC|{VQ#=xW|$h54XQDvf#uAq?l zL}6>gK!ZY|#Seru1({qf3U?ZCayW>F23}TZ=L`!JwbtWLn8=_Ma8Ig1>}J1xNrRYr zulgl6G0)c`lB^=$g(8|4McNHH;s?DL#}PlbCel%#&HmH+H4=yhqe#UrVON(#P3I%^!5s)Cr35=2xS z**pZ9G!F1MI0-FTAfYbEw(fzj%pvvKNg9d=)Rh&qt}jryq@bmKK=F)%mTH4APm_AB zkVfkyjowR&*Aled6NR!K=v;Qt*%!pLY?IddAf3gVblNA0T>PZ4<&yf&PYQdCv<_cV zoK&Q#xIlBh&?cot?@Ef^27J=$P*BtRuN@e%N#Wba`$?DV7P#vh99Fwo*eMgNv!p>J z@c{p`A}z%QY$C=6fySna2blOCD#T4T(-hR^JjBy6$$(qQ+%quDW3rI%Wz)_gQ{E)r z4kN*~$s*mx+F6^;@+T`aOxE=OY&uieywupB(J6{vx)i@r*sSICGId3v zz0PC>gUk0#Hrw?rd;CvOyC}$JqmxzlB&MujVctbtbBcvj9n827*~bf8xi2)=EHqz# z*_`*0ou-0)X0bi{BMa}%W=k1#*i1~hOGKo;IK~@0@rqdUK5|gsnEvasJ)?+9!^?fI zjNhG@tQC^8@rR4;-(#v5Cn{gqtkT6W2a`w?qL5L?P;p&tvJ z)jx7^Jqqlf;^{oaT(?xAr9_BzY5?z6g*8(|k{!5~Ft9BX;@XrHWEkRXD#~QBHK6lT zz(SGW)KVW#r9jWZK=*}#>ZU>VNmK89^bgkKpVtsEUtvGjA>XA;_XSe@Zf>5|wl$*v ztKOYryRwX(8jIZ5K5}ms)iT-2&&9;mQN+fjB-n9T!Q%hJK-~w*T^~c@nS3^H4l^#* z+CNp{&{UD*QxzOag&rDNb$((!)fC%)DEeS%jQ&)S!zNxQuf}jQ#d-$D+B@wFnH25l zcU$G!oMRWe-3}f2w>a|kmudSt?N)@^F=)N2nBxEZvcLMa=*~%8e2)U74Uol_zb}&NWNqcJg??P2tltq3>ZCo`KHp{}s79CYc^?Dv(tw zou0S)T=q-ORfm-LKdoSBS#6Z~Leloyv} zI)|)@W^%8miL5uT5e=!b-tIkVy3og~3NxmQ%nh&T&;9VtPdBJM=haHd)ax>t+o$D( z+ZB}i*OhBEeXrGgWG5T0v$0&k?7O{kLu2OUT3)6qYxAtiZ4I)AxCAOhzJwN@oL+TQ zscH50LS2dG(rY#1(=}8Z8kG+;vj4atr^sLDA%4B7&R!`}^?A-q_31y%?f(1^_h*RE zVwusp+oZ)^oVRO7hi`?q{ExK#*JF9h!?b5~^h)sBUCpx>XL=&8X}2T3{f2^&W7qN- z&9>!L>m@p;hIBSdoRCxGTV&dHIjL=;a!#&9{nxorXg z3Fq?_3R@z4PMi147wMYl)Vx-ryZz9F>S^8WO)ZCac(YVGaNg`Mn3*fT{LUAe3ZR>Yc79kf8nNn^T-a%?V2JLOmPj6}F##*r!P{XIIXCYC1FCsWG!bi)ZHy{+-P)C8ta7?3y`KXP)GQ z*-7)Yf6jaU^QM(0=cI%wjVBgfY@W07Sl#)^sh1_&uiu<{(@d!##Qwoe&4!A}3umgU zO&9uKs>Nf;JK?j!vWBAknObv`W_sVKo+w!JzfvR2sv!E;QqDt5)CHG{?rMFk!1?Hb zpuxglO#X9DCoSq_Z{W#gJypxoHjWoEz_-BF#Yqg zPa^ffs6DkL^tSt}J(8XZ$MlbG!Fc zYBES9tUM~c!`+GT*zGmZJ;!z|W4!lU`PWB5lRgHka|-hk_B5V7I;T3hI^n?g5VZ+O zyY3y{%g(gvV#OAFr}+LLokWJihJTd3wiaqnSGqA>NPe2aDU({)-3u6JiJ0G*@mo^I z;*Y)UpZ?d9Dh@S5u6sPVr*(P$zj%oI5SLNR;dGBx&3D#j{+?>kxZ<#+!Gv4CJ{(xL zTxnOgXV{F78y0EW@IErWR1T(RUbXr_3`-H?YsB!G6~Q#**)L3O^Uaj$J#rj)>2F?00*?u~StVEg9MN{f-Vz?T)+7Eau!kA$s2P%0t&f z^ULQ5@A$mL{*bO`A=9D-Tt=~%=WofF`H8maC<+$i;*UD3skLFaYWN7d`Q~5~n!5{T&(ZM4BGgXXo(k_YJTAZ0I+jMj8%PlWt z4$MuGI&QYW>zX3NUsaa9hU|+j_=g2exxGn5@lf-Qi&M+A$|J9-2Tpcxto|E(w6w}W zy}{$}&RMCyuJ~5#NZqpx-Sa?`>CxZdN4|431no@4U14qGY9VZ_y zy1V<(&4aD?m|sOYB;8Vddal=5>&eO)-)a?h{Z(a{H~m$0+M_KQZi`O2ddBy(oLjn5 zGtJIykK3nRPEoUy_J49X?S4qiu+8mLtU8D7w3~PDYckDZ%X|>I{Q09>f+nl;pkA`sRI{ zNeMX;Ehd;=we3|>kde=wMM{1Yvw#Yn)l}m`(!W)sh^X-4L(B(#K34at;Y&Hv> zqsu&B=yvFn-fNFo>w7MWD7bOTcx+hU*j%UL5OHFIB8w;MQj;kK8ePvx?oP@UmY;Kdlv z&*c#FsUVtZsi%0#C9{S{O}RGqGbF=u=4{uzxXiZ0dTEn8i=p9)?8xVyo0)@*ICMV* zHtnkR<};tYeCeWX+!1pAD_5xWZS#+qWj34Phl9`UIpd8x|{$Bm2=?)p~rupM9s zmt&ckC3be^q!h8lX+ecznha@kSZxEv`9y8g!@AjQgT%d_Nw#=Kb4WZ{9@!$NqQUUy zZphNehNv$c=^A%S17_Zl+^(_AO)((6B4t~stoQYqTbH@sUfA-&@&3%CS*~lgPIYkI zI%}$C-x0CwHycl=X~)Zln0UL2n#U#`ULB))#%qcO`H0_dM@)J728gp1kEsRQK9#26LCa zIV|9=^YMsCxXt`Ywl4})gS>1X86FSrYf=f7DPGzUUijid^Td#-&ZjHaOHN^5!B7$@ zxZ(~io#Sh@Sq zwQD)7jaCllSydUg`p#ZkrXCMgUFg7M zVH0Q(khyrvH^<0rrD+S}H@6hKcFj`F3jCkDCof>V=F@;lmlzCWOH)<1%C2;sam4qC zo|nEKnk3FFU^D&EVfMg* zk=3Gsb-B`nORa4!@s5g<0={#|${b+eI^p;s>e$NZS6S=XCeB||V!o{T$-y$Cpz}=Z zO*T&@U9!@(J??BN6Odh|lF#zywj)odxW>7s`7E8z(Ob;zrcYg>eeutH5wR;CL9t{dTFyP`eBI3M+W8t8%l!~F1(eKG41)sqv19_p63`gyGjNM zGO%03rKla=v+U_a)hrjz-z8~cCQ>QsWtR6Dy2OsHoq4pwQBmIeR+)9TMPYsMYVI2> z$B%dIn3!*^!zsH`%p&3HCY7zh=ai0no-3O5dCvElB3=Q_=gM|{p4*Z0L|OEKrwqgL zl4&xrcK+s5ZEPGSai2IS?4;>+bE1)Ij)_-vQskt&2RF_#Smf>17P&m~*~{6MEg7C6 zQ@3hvd%Eyw_0#_>Oj_DpPukNmmjz6ToMgC&CDU%tQ{NYC!3i zQ^^IkCNU9)r`jGC*PlqR0V*&@VH#n0O2MUYf=%v}vlDskh9ev}tA{ zo2reNa~u_}%1sM<5-4BV8Ng@|G?V4@y6Ks{_kupTH6NL{ylssK10%zg#w$x}+b(B> zgrB~3ZP&L%7Kw%&_6ZlR-}<&~N3MUws;UMig9o9Dtrwo~C{wv|G?7s;g&|UVwvT?( z<+XZ((OQ9oU(H+olwX=&>I7 zUtRm?MsvnR9iH4yt3adp87$cy`*XOn)^loWUgGLr^fqnLg4aTwUB=r5`Zlzv`#j`| z{&8qmZZn_6g=kiuvK=Zcg_HJtGW_Z$#K;>V`8VuUO!u0rOGE{;7?yE2yb^k{Nxn?* z)3)m6d)}Q?GO6bD3jTDhQ6zNf;s+WGZ>D(%^QCP0a{K-4OQ$CPl49w<`DbincAJLYHg`{-7YCUo4!k_Ms7%E5%g4)FK@Mj& zv204~EYv*v|9e7$+bo6Osn0*W5@OIhyzXc><09`{J(Cj>x7WKL&Ya=>DKb|{qB?Wg zmJM-DPuXw(ym_H-+m_|NZ?lfS5UfyWV*awG;nkcE8gj2Af-Tq&vDheZR{q$s=H8Xq;CRjuZ2xZ+y;m#uY2VL%dH2&KcD0YX_bWWT1@7#r+7s~lm-l7% zuPeT%yknmDX+7_xidWx$-B5ifclxz?S`xF|4K?{c0hOCeri)xSJCT3?kK_LTKF$8` z*1teY@EvE#*hu&e-t3%CNzxuzv9euMdxfIJc*q7q8Z9wDC|A zU`eY@ZL4h(k7!|U{_|BxT*LhN^k%Ca%{Dih?IeU>E@$?ipyD-=ea>;^57S$0oLGDw zG^V?zGEb~udOU2>GB3SGPAh}Rj=*4}M)srW3|0)P)3;Z1oQUPJ$YNhuWU<2i>T;LV zXOd^11hEtrx_*nWT+k{k+L)nS#VlB;d_zd}N2zRklWwDp^OdIh?@h%lwXB9wOHH{B zUW#WeY<}>)d0Iv1j2WG?GScTvW-crcnU&sBQD9Ulz@C{X?Qp613u6e&~xD z14otztZIeVg=S31=LxVov^{^*^wNKAZJW!g^#i;AXNXp)X$bfocH25BnSV!H#H4%; zLo-XprXaP>NRbBh8A977S|wb|b3L-IZ|}IN-hBJI+gUd)}fQ%F!QLPHbiHeIeriK-r&RLg23oH29eterFU znmBVWFuNVE{5^x2-5{Fn1H0NvtVp$XPvwI*bKvm+4_n0sw-y{CC#k~ z?X%{b$!b`(b7kAklQUn;ocC(yyf-u5{2jtPW{9kEW|&mMu-BD=eF3xcbrsKm`t>uX zZmgUW{3EL%wbg84TN8)yiN}-fT%Rp^F+b~N#^QiEDl;T?rv@=S%=>?Bs!+V3Lp-PO zoyRFAj7{09?xKcsJ6^`WJRzj?qvOs_+j}P`^>_&MozRy4F7)K)yk7OL1_kFSIP1uBuT}wGu zF5UEF!p&DgTa%V|dlm4{Y7oy{=DQ^zn1kWh^oe(7$ce9HFz0Bskjkn4u_`Y^?DVP} zcInBvhAUVM%jB)fZgg;(B(J!?aw;MIP z&F7qu~Elya!7bIImh4xm4+P-V5c`AsrjIDi>&Bdsg_peqlrpy6?cC=6WOae^>|5*%N>u`Sq7Loq0_P4lFPEoMolFO95eoxShf z?|qM_v%4HfWZSUi^w&)HM)se(*0VJ*@Cj`Au+UC@b=Z;BS(@76H*d@E7IbfQ3N$v1 z`untO-{}T1$vs=!*Z!Bv+?)Aw#jAs@dl$-SdkA!GsM6Ur$9&_0nC^|b%NuLC8jpDG zuH-tLyIrI1_Kdr?c35}^2}SSgV&5;;#@W1Wt)0yg7oOrd%3FCH)-Uev?qb+#aUgSn zh`htf9c|TnH&-8EGYp^nLzV4Ars|8mnjAY1D)x4=EzDe9+HrMa)TQ3k?0x%pYi#(< zpQr}Z6At@*B5pChn|XOsR%J11`e z-kICG=A52-G?0lwE1~AB+>0GqoDAhLrTtweh15b`WSx7p=iK(tT@?xarh&Vh)F;>n zy1pt~8g8>XPCGxSjp2~;X`S0b8Z#wWV$5F|Hl*boNi$DN zKh-`ITzbK#pxJWY!XS$o3a6`N&PExz@m(-J7btEzr>Io1W5xnMeua>`dv=(;Ui;`} zpfvj>zOzZ^~NBDfFW{^~&<%6J*X&1KbxghaI+tPt$$xe;`r=tarWjLr_+M(a3Ln-@`)S$Q>rQzLeBqQ z-Th}q@0tr8g?ardA=y_iyY%|8PT9D0?yXg8J9mq(lhoK9*n2d1?^2zHeGT(;WxB)IGZ&d z&M(`}32oDRp?!AqjJl`H6I+)DF<7>}Xxg{AdYy;(^Jkaq-rkT)e|L(3bHb6ia>^AA zyO<0ZTFWvL4E?!2Fg(lC@!7DRMS$V&Eru9BnRr)jm;Of%O9y`@ z1%~-c-q>Gcu56pnwt->KJ0ZWwS^7(2*#0ZoCWKCUvY&VU+viuL%T|As`~Oiv{*#h@ zaq{x(%JrW#=6}-K|H;qPc;?1pZh_C-0vB}RKbzHmwwV8U=Hj;QPj9XMe|C`n;$;6t ze-eAtzXvY!zj*Ec;&cCtm0{V2H(!G6zlOwrbf4$3f6n{=b3wf2f}~Fi z<9{uy|FxoC*{Sr^%KN|8{r|P$zVO}|CpO0a-d6v6hrfg0Lx#z&zjprreL()t%>12G z^#2^I|8wH~_x>@2{k;d!q-rWE9?*G3J^8Y{C|Nj#I|6Be4AM^kJ+W-I0{r~^||7S4tdf?E+ z$}8tGBjBM^8?UTgi$vffmo8D=xFa(H|37x?leMj5kqmm`F-g^Tp3BUjr(V-^WB0X4 z20!zeWtw~M$jsp9e)DW=|FKAgya-t2+AHTeE97O+GT*s&tx}<{LRN*YjXOFk^mW*} z*u8bE(qV5RHl?1O=Q=y=ZPd2hyZc(D!{5d1Dt&wJ=gd@l~>+v zPQ=HgW4*HWZ8DLcQcg|PjXyRg@^jj`xwiFevQb|$E-m$)?>0B;Yu2^3vHRO(qrc_c z+M0X+*xcyvdH43#{%4bm`BCubXs^8cyqKRw&(6-ZZDqZ6U~DZ>xY%%+OTp0D zl3jI6fb-PDjBadVt3EiX3o0=jQ};?{ag-kZxPAsnF*#LXI!aa`Z?G~+Qw zi`1>5;qhmC7$pQFR`_v$4LNa*yHlgrU&yo7G$OHG^_zaYeu=~Xh3+0X2@AzNmrUAX zmZrNcDtrCWZ#q6Mt_EH$9~3tFwwCNE2)rz`!8p3~dg}Jr<#LG&7?{Kyj1`M?uQV<+ z6OcI2U>I0^pn*|n!o}ETem9GUi{IHA#J9?~StNDdPL^P3S3hQv+-p8>-J@2LBt__SkCl zv6`S=p*-_$eqzH?!~v8dwmZ%a0>=K`6BBc-|_CX=%#ta`SKq_ zs$R*SVm|r4S^g>KJ;U}rb-&-Muk5|%YW`6{$s;C6Zjt*=770G3PNjLRVhIP@Y!(G_ zvNY`E+N8$KdO(4rC4rUOXf3zt>PCK_1uUwc?A?2r_?hnnGRhxf5ea(7z~jTg#xJ59 z8GE9M?PcS-j&g?cvP;^;UOjZ|D_ziJ>sWo{^8@D|4#$9ArBHD$rGHB-T($gEI3@4= z7j^Q;Sg0B((8Sj8&}q+fM}tl4TaRQbIquBSO4ov#dq0rpI*U$7J%CW9ufrePh#L1_c`8u!fX$|4(K3k4#2j#z@$?W>V-c=DvWOvJ$1w}8C%po1p33ltxVI!E z^-5lO>Js(y6wk3D#rM5jal;L^e;6FYV`_?ZB?%XdJg{utQxZfHp zzEl=u`d_esneEN`dgg~uSvgN0<2CA56u5fV<*}<$yHm==zoHj%zfStA);sXI*_NFKTD#G5_#KMkkcyGa5Ah2}PW`^n`)SY=T)t@$$!uUb?yq zvcDA!R*>8pE6sA7%|$D7L+*^#GPbJ(5|upG7e1I2FTW_v*j3P9{Lr)QB_0h&>hzW~ zOh|K_#?>IB^qRA>JmCij;8)aUsTGF8-=X@+`=On$44#&S_MYLMq z=`}RjviQT26xL1uJ-9^|%wGIs=_?k_#pk$KVpKv;glLD~4SdqbFx`kF;jQbUuccd> zdz1nhcD%mJ#BxdT%->uE{cgoQ|Gw>9JVT#>Z^MMHi^7vQE~=Ef8=jaX7rL!S^`bnd z)r9j>UlnfIPKaBZ?Hed`{gC)I2{p6q%d7l~-91}B#0q}m@RbwarE*K(X^Up;ynEq$ zwA9`^Nv)1K%64kn_gej@4s#x~et6l+<*3-_e(?skXM}=iv6_?Ifh1<PVjqh)Ew+g)GLontW*fp{k}t4NBzkzRhJHH?v*+cJI$ACPCL=f&$O-iOoZZn zmiO)tqSIO&Bpc?Iymz>gld|i7(7MB{jwy|bO(Cswema!}8+8`63S4DMU}%(M4ZQy{ z)vw$ty4SSO`N8XiW``N)m->Y}Dfnb$8|_pqGUJ%boAkV8OO(puZLeDWdXq zEhTz)E8co)v9DYu#dLbB7Y`_0R6JiA-+pA}A?zCdq^e<1s)kx9*IEP1b+=Lo=j!PVpxho_; zy>EVT$0=BxqeXbpGiPO%?Jo9J4_NOn`g>F6w%DmRPWw)#y!~dRxWngla*ZC+YT5uH)|RCq)+@?|GndXp4iytGGJtS-028*SssW zS8fwx_>g&bhcj2TfUMX7#VT`-9-XA0jU};nXX$r*3f9Yf7%Zx6^ktjlEk1^FahJ(j zb2#quE~+{%ukz;Z`IXOElg{3MfA8=6bb(^#hN@PbPxs{hhy8l1`=zY4Wp3T7?>kRz zR{VF!rX^x~lY;%E4f_vUPw>pTi1Don9Flcm6QS^svnt@`Pm4}=eLzqC8od~lERK~a^% zMo0SJN>61^*c%w3vQxTaTerE=?G@aSs!}og7=5<2O*DL=y@h+>_Pz|~_J+f)2bkNM z6f|oN=e{<4q}Y&c%<<9rfI)W0oL6?)R+9`(4*Og=^4){Uchka-!}}YH{&yJc6i|>^ zYpG*&@sU%Pz@ZCFGzIMatjNw@7K^iI zS!L%Ok4{;dcSmq<)Pb%H*XOUDt(-dUa=G^=oM0>RXtFqJ^Quw3LCEI-OZlYZ+g|T( zJ<-he!Npi`Q`!~xsu+%xFURi`b$AJ%XnJyTUQM6e1Dm;ATcUC}u6A#~sMH`Ea%$<3 z|Bez;y6h~Lyr-PI4c&WeIxfCC+NwTq|71iz|&nDoV$1|nRJd%+Uyl^MV9r; z>9z;1@hZ#rYP<4mnJ~4cL(XC`-;|Tvbj0hvIJHdJ*T%7X?vc}%U3?#0VDw+I=c$rl zfXvSGDZ4u^b;$2I9O&p%v+~sXFJ0!+Vfn-uchI1(*`wR9gcIm{obZ<`p;-)@eS~f;9v>8V3`oW zJT+iTz~-gVOV+4xxJ1p*;jxXAKHItCMEDmgh6Nk>Svy^uPUU<1G@a02VccQpbnf&O zjy5mze7TwwuxEh^x`QwiSDu zZ_MwVVRLwjSJ9QTUsNu(+>n=B%b~IK^vNauZc!bkT^D~};dl|_ty^PTz~cMz%lW!b zCw8S=nr^_TvX{XsqQk~D$j-LY@&uF7hZgIloQ|p?oV>dolJu@M8;HxYw(UCBk+5Q; z@Npg6?Yd|86zgz4_6+i zZ#}-grUxS4SY&_YNYCwP;a-0%M>FKDujEw@0j>jq8v-qQ&oRH;cTvkeXlrn?Z>R2s zV4Vn#8rPs&Q%<1^mw66wdRJU%3ccW#(C4Lb!%4Q=Z2@z$Zp&7N2o=$Yw;{&m$?JZ) zxC^}uc;dC5P0Bo1D4^(Y*u$8Mxlga0?!KDeD%dNk-e=2U^3~zK&($Y;I3#jIqhtNc z*Pfgz+mYk5r1|p^rmffeIT&qwBU&x~N2&PUnsgypac#?Ni%ZL0FX?r3w~BJDN#!uO z5bVUk?PS2nv)~ptL(_^2QJo8JtvKs6RdrUTqYg8lH+>b zH}*`k#<}R`i3}aKZM)0`W?gS|SZKn^@Mj7~Ow_J2TY)Uu*8e&ji;80UMXxXF<#f6b zEEvIY-ZkigEoY)@5MRQLSu<{J+{>`Km3yP?rA@qCH$;PO#&WE44O;(~ODEy(tzNEM zs?l8rcNJalHtv~wgL$ESi@x_)pIYmVIfpI;C^cmBSO@RDw%0T=SNG6<(~dct;-<9< zK3i+yYQ4Y3!u8nMJIck*vWI+5_Aan!4L@~6$H(~pk-EosrvG5H{oB-fB3|Y0{mBnv zRjxA4iMYG5^zL?sIC+6CmOPF-vO#y>av8pez2C~kHm`$0?h<3$G4~D;7LG03E=T-u zQeWu3-og54f{(3lSGb{Phx>su0=75bhMr%|b6+g4!QjogFJ4-UlaUWptS)8P@_t6v%76pq&d4`acb01vm z<>qGNG7jTl7YpKe)}wpKW~LW*TCy z$H@?+z5VkNFTK6)XKQ`WOgy$|QAci=8GEyu@Rrr*s+Jmh-KpFXd3&Q;X3*sRoK0NS zmruH;GTzP2t&GiI+_VX({Kr^e+U9 zo#>i0??Q5t@~V@~i#Sg`h*7EImQp*>xPT|s@RlG`L4!;M1M3HutglZPJpMPZNoXGI zNin{9X`gGP$Fl2Ryk0HcH??}1R+=Z%+-I4`TlLvJn$#IiDV;vB`{I+2pIw+PG@6}g zRzJYVrJPb$di7sT+PFM{KMUF@U-EZz=pj)diSd)#df zcynH{S(k&kMYO|-p;>oEv%#m9qjDW?8qK;Nnv6OE+J3xPHI<`@w^{cElOadTLBE_6 z({fJ9v7SDbBjJ*JHSI0i)0{>H7Q-7%1_~|5)H;rCV|n1p_{c5i;X4i=4i>`~P5KJV zQ{>(qHOqUFmeXXBdGA~9gRplkJKkQ+%WVsIbLH*Z`+V;vy%BYUICb>v;CANmqi|iNoa4y1XZ1?+$N!_oR*ESy|qTY43jA%l&ol-RC?GZ-o}a z7fqb}%?=aZP6=#jNjb8RXG)FIy!W|@8Y*%=VPd??=frA7t`ola-1}y*&`06$Wez{r z2&QxR-xG{#wB0P1Av)iA`qb>Xy+@?yUcL~*p>=riidWhDpLKk3yQC1op(Y=sF3%}H z<3XlfhmOM~gAWagM;nrk7Cn0VqA?(u=R=FvhhV+`j1oF;}RlC{yFJdlD`6rU`14Y?|VbJ=+v(r4i%r5KV?vmc-#1a z#cg?%yL{_pyZ>KY(mU*@f3fuE;Mvz8Akk|1qha~fqKOSfihB!M0y6dZ7l-X{;Fd3T zcK=e7+Trwp(Om43pa9GFV_%kE{Svs~)4i>qS{q6n=6~@z{?6%rNo;tB<%!Z&Um5gY zyqjRTu=kaN8IOof+k*c^9bsxJOcBoel$IRKNm()Np$8=_Q*|y0n=Z~!?dOOWyR^)eqkTU^2YY97daQ^Chr*16 zsQMr2|AXVjF9{TsHAfUH@@BSP_;K$kgP}pkl=RrX`9GQqer}AdbaD^kl#3Qz@x@!d zOhvb>m!paE8H14q$GrFdD;2MnB!6SNcJ*hEc-1ufj(?&-{07f1%KlWnemUHpqfYjc zqdG^__EOuUm8){AT0Ss2T)+G{?#p8LUrif+Y&=@g#!)p@y{g&Z*~a=?o6I|U=RM#v zV3}Ik@~c#KPxKO=lOLQ#PBfoez$6jL@+8x>^QK66q`Tb33ctO_)def(f9E!=5l;6z zaC;Jq5QDm;Lel5&<@JS2rEdn;T@R@%-;%TLZ$L$xJ!h&|&?R4v+xr>rh<9#Zerw0{ z%5D1_gg^XH^ew$++Ssa5X_UtycHqk{`Hq?LWsmeZo~M_*5HGfM{jGR3wb9_$;{TOB z8~z!-`~3d>&n54FzFYtAd4HAd)rNbq{~7xxBP(3u*%nm=aAV7 zs|}9Phh;u*@ij14TgJ}(hfBf8*fW~dP}KC=!Yvyg&8QUlQS0!5G1%2Hd~@F0U#4$v zY)ZepF8BAgYz6MUN3N`$@cqpc3DaF))(R=LH7WON%lv2FeDRQ;@pR+!7gj7Ne8xFh z`+D8MD%V%Hm<4NI#3~-W`Y5z$LC8OwU+UZ!42F0@&|z{oD5usF+B^&kTi%YhjU%(e-Kgw__TuYn;?B`TB^8fMV zP;g|@a!GKUq9n3vg`no?HJhauG6Ztiu@pMFOgeY^&X&bLqyu+KpS5n{*Iv^dAa+8_ z|e_ciHOB z89Ue1F{PVF>6V=G7gxuhnj%a-s;Wnra*Ncb9K6cRx-sCE{?A^42S%D5=8jeBN6H&W{qC~&>&?eg4g|7f{I~t_u)F`u zL9VHS!9O|Y{{M34s3yzK{VbCfOt{9pcDtqHXXe+JR&j3Sn*7R4=s;r%d);rTj(-9{ z_MMGh4ZL@vexEYl{q~Em;@4SckL(JY7%Y21wR`dPl2c{^{yqYVcRcSh@7=clgl@(;xtYNn}#dvDPG1E;Odo4E}VgGns(1Pi` zi^mfWM&3&YS>h5JUw7Wn@L7If!$vQ)n=cvMWtIrAJ)PL-E5j-;UU9-juf@^A$3w#G zkWI^ibxQJk7UXOyZuGMUF>$V61Q5}{X zd%?qdGj2GFs-={2C#E{abnc2*JyI;aQ(3Ebg>Xim%akQ^ZfIU_KJ)adK|HsmNbym+URdFQ2P?n!R_hd8^Pt@-`}IclD%`Hp-u~5 z%a{2+VG9HVBNi>3x`0JhYNK^}-=c{hofZCaEDFdry&}Zl`@&`JjpMx;imexYI5d(s z2MQN0$$Yl@?){KVuSv5?mWn5=a8}g1*cvdUg1a!zvE{?%>l~k$G`c+l*Job(I;TiM zb??I?eO#{o0aI5QxO#ZyZ#v&}V@o?r;mThwx2^=*Y@NXxC{<*W&?KL;kjG)Fddy?1 z6(y&prj@MCKJ(##$kqp2*Vp}hojapLAa<9_hMg`K!#ID~)fWjZHr{&QiNji8gVK=& ze}tobDmdl4qDuNDWjoT&U%vd+MVnSN;6+ zcM9~K*igA%Qo(1E*X_$}B^wU!WjN3e z)9_cX;`1Sqd9B|A%5~Q-C^{f=dBOI*?`riOxi(ICywhdhI_EXTKQj;1*L|CGY%NEs zenMp57k^WR#@F%-w%bWR!_L3b$#-sDZC|?Mt9Q=g)RH9s#fUudj6e9 zlayOIn7aabW^)z0>|l*rRT|F|I{8t{&K;-U>%ESc$gAvfh;yMqujjJ4We2yPcyGIY zqJPU1mH#e+j7{XRlIrsCew}u>`#l*+4&TOqtR;6C$mCYL^XZYNG!YJ}!t^UE5keIcv zA}>c(?a2!9$%}QZjrw&uC+&^)eH)JxPP@)$f3JX{~U}CytFv^H%Qou#Nx8JkFKO?o9`p9&SFcn?>=j4^Ljz#2Gtx{4d+< z`(GpRGIvXq+U{lCM{|q*9xmRmRQ0F`1O`X zNW!a)XZ~+Y*m?G##GeNeJy$g}qy8x$l<3xTK}wVnpMJFR+$4Xk5u?rxI>iKB_41*a^viC>d5H(% z*|ogqZrr{0A;(4Y-VE7YE$U5+G}7exzeS&jIq=N(sKCY6verJI1V)!BVhmXf0$Ue8 ztb8a{m3-8&Fc$ds3Ykgxr7JyY4vGY0Uu!H<#dL$wwQL#crjp{d&OS*HH!*x!8ZH-@h*U zc%&u4O1X2-!ZL<-JGXglHAlGjv4|V6b8X^rDmWmo)FNS%BKPjGW}sSj>@(IBwTMNJ zyr*1s-|*P4Ld|VSoZ}2NH-T&3eRI>J(p);yUaLs$d#d8Dpyqa`{qtL;>l>dI#-wB# zu_u0fR>*MNVZ}0+2QfK9Qce{NT>s}ZaKxl3Y!Yw@iFcK7auHDX2~luzQA}7R6}KzC z@=}z{kGpYFu8dP2R_s&%9=X_Qfr9&qbf*jIxeCj@G}M@!?#-CX&VE8lM0csz0tGdf zIW85;lO86{aE&{qkWp?FAKi7=+hwBHf@OX(E6Oe?x<|ao>{DwMYiToTZ%R_nOPiZl zbmUH=i^00Pnr#`5QyR(&4#d2=P$;v!MdNvM-ij7Gg{!I8D_wZyuBQ2DNIOl@aNiM> zdT{yCx#~X_N?F-CSiVzb=FpfNr+NHsz=pjo)5UXO)hQ-V;T;Q#e-C48B zrQ_vYhb79t1lg(%rV9D_RvhBu(W*;2^d5(dG4BX=Wczuxy<`ZPNzVV7?18nv9%Y)-in=NyyTR1@zuGmT`}D{zQl_~jJ_s^WJ(TRFIwXl;UvC>fipneec4JM4!wtRYd=LW z-50uX|B%bwS-Q7Y>H3^_n>_8rZK2%zVlTxR8ad~zbh!cyNCBe&hXrIRhs34NUq5%;pB`&dDl@v9Q!nWVGJE z8gIaszJV>@fc<(XM+pN*Im4v9Bkb)TINJSL%QtYXH{jmBfqTCJ&-O&F;|9FfH}Kv! z;CsG-Z}&x>_Z#^C8wjv(6yP@$Jnp8rfI&#v@UNJmu=z$|dqWZTjUxVrqTw4w;|;~q zH;UyOikEK`uQ!xv-zd>zjZ&KhlQWW2$C~u^szDY^nNZEXovb~Xt`z95CBh~Ots_{l@>6_H@ zH_1O|lzZSP7oo4-Z=^YWlcxHnDy9YoodZATZqnXwq;q_e?D9>41`Rs*jr5*x(knOA zm1d29Yh=K_*?_;8@B5~}2aJa5n~n61jg1Ya_`D3<5N_;mY#P4VR9ah2rE!DQQKp#9 z=Jm!F?VEomGMSWbwwP~hwVXpuqe)}=W@~X?YtdHS{l>P}KWCYEGTk`JAmgy{)@J+1 zJSLA1*z=n>o_CR{i3wBqEcKa#(PYc_FISl?N}R<_vNfF62bs8~mq_<4j-U2XlF=(Z zw>U7xB;fxM#^5bRep?s?RT`ZpZ}H~-th{1=$d-@p(yj5GCJcMFOfYb@Kkp*9WRvCV zEdlpGo%pEgYkbsK`D?)Qma4`tzE`#cu6P*azg6>iaUh2SpTcIPFP+tiOmbU_r#hDU zwQmUuF7^F$GW78g<&>kAv$jU37YTW=dhHiiTcF6G!4RQ7GeUi9@cvRC3x^9UOijdF z8Gmd|3^(%gHm#W$uN!?QZgOe7yqUYn)Ft`^EtPqFYUcfI-`75$ zveQLKqk&O|f%%VF;eY$@a^JTFK52+K`$jm%JZJxr2ZpZR&Ee89-%HC&Tv^N)MVOZ@ zKT)7QQ>o#*aLRV^{$mz$<|XINmAfAYsx-!kZVj|BcjVc2VZrp!?WR5xzAp?Y3oJ43 zT(W(lqy>Y5g}CvKkQ3&${y!8?e+vxpjColexZ`_@acffZ^ic6_J_0)y8vKY+uZYzD z;n{4M@P27autg8|rZ#4V_WhT8uK#fR!Z1aqVSQV8$9a}c@vhFr9ZljlCscnF_Go2# zaNyJ`o%-VzQ(k}UvEI>Z%-Yv|tG~aZOZn8q*&Y)Qhfgmq?3Q-zci%aa|I?J`+owjy zOgru}LD*}?;);~!pIz04QL8`A{QtaCad~Ci`pTnQe>UV-HeTO3o%>hy(Vb%bmh)a) zE@n2GfB0(e=AVHbJ7!Donjl=&S@UyY@-MOI9f37vi`%QD?RVL@{+jP^H6hw+PO(*9 z#;$6`DzW2V0|R!hxLzeQxyoi{)mp}1-g|y7IIt^sM^!cBZ&B~^z&$@Yq#HJA|DJq% z*JgXeb>dvY4-SA%XxCtv{)I)@qJinh3C1;?Yx!H&9Y3~ByBu^{`;&%>bd6aW4O_Jv zm}7SOyzpR>aA2(Y&3wYz@53(d3E!0k9B1A6%_Q)8ssLls4Qr-`-@XPr_I+lNvpK+Y zV>iT(G-;K{ekK9bbXnqR-1h9=Es} zAKhhdeU`mY+Jxbp`GJJw>T~7?+SMJ;|2Oi{aJo?b$J@s7y!U5~2aSv^u8ci@PAPAZ zSY#sn<KFZkhH>soa`;j+3HV)^F zTNx5;D_PA2Pkgz*a*xl0gG>qA0wo&uDA%5guf5Q`%lio9_Y_yggdZ9af83rhGBfOp zc);-Jyvx<+dmMyaq$P|QIQIEHakypN%Jjnek}<ALgrbpp8kH&KHEW8sxx?&vG3;Cx9#XjtHrcZ0k4jGZ7I!hUkzL$x%h^LL+9$PqjOJ7pKR>_F zeY)M;s?yijH>O{|C-W_4t-x;P12#fy4((Ht)H%|kejtun-B9p>je_2bk7?qMWPfUW zkNc|}sN7+vCe+-mvRg>|f!*X^#oR_6D$*HK&VRGgSMgE0^V+Oa!{^QRsi$tQ?qyKd z*5tgv^?2o`lTIbCcTal6eAcA5YWC~HZwt;Cs=I#5INZplYm;f*DslPZ3FV1CK_^vb z=3F|dzOZM~(hnD^J}&qmc4dX@K98&fMb|bNk4BlQiUkK7WwbiI7z9o@va>x2KC$rX z|8G$O2OIx!ce=DnC@6Kx98%F>*y{00kHP1QR0pGMRe?gFl6%mTKn50tLmS*DohWFK z_O=pU%`SgRfWJ-Z#lm*BThST~8+EuE8s+|lC|sRs^6J9&X-Qi&7-eT%P&~x^jb(w# zHytU4c9o8Tgs`T2w>2%B3|{6ly2;NdQE=kk`{Jto|4k=MJF`l4u(egLn*FJO;KV8FSZHl6-I>C`bK`?zG`rP;CGE@$&Ne8yS1!4|+pS8X zfjPtO#OcQWObHfCEg1TW7chP6ZO)kLyti`!i(SZ*GbXmt8I95(4Q4Hv=l-zb{=s)# zkttInmQ8upJZVN~cH(B<*LJQ=tO>{F{8C-P-o%w4HF-y&MrP81mU(9v9Z>lc6~E!F z*zbEs=URndD0G*a>VHgg{hd#z4bR7XK5N5#+Yj_-fi(xn#nQgnpwh~g3D(s7b5w~YCOyZ=`{artNUfLT$(k<)KNljxQO9(Llp8!xu1M1PWVv18xD z)R*MV@IcDtpWB3|El&hLOS>|xpSt_cj5U=?ocv#%KIyb_9H`6)p6cQ8&2c^}zuIME z&$d3co#zGl92j2A_L#RpKs&P~MLFi=$xkd3H+in;%d1Upd>UW5q@QXWh^4I7vlvJ(VnM;z6g zwz2o?9jAb-sdKxIG^=n|KO1+ew0*aB!{6*`&HL=Iexx2zr zG%38puagM>V%iKxBYs+v%26w1`C5~Gxv7vg=$rcI?hR`sN=ql2jAmT4}l z|H|HM+bNwS*gxZls@ccR$VagkeW$IrWxZbO$&}n_!m-FBb^ZUKw`!B*SEVWb7I~58 zxydss(`7Ad;%dKt*3r!EVho|W^PR+M!d~rjN#~V4+H9;PIO*UPmFKGpJ?+ZpoS9>; za>DwPM%I&*?@ba%bIU%@ekhY}X&rp@c*@3UF)|aS{%$+dkod4Kn&}pEcbHN{nv&-= ziwQi=DXX&1-FNy?Bfxq7$r*jmO>RaeVVyGOlQlV~EVj2vou0B{2k+(%j}H=0C%o{v ztod_JowHJMM@)r6o$Sf1qkpb9MpT~L`|a!cM%kRi*DKCR>!{T6Ti&zreiGQ;<`EyS z^x|cmj!I|RWzR01+wDH0`vhignNec3=ckwcHupUnv!=`LR2NWW=Sw)S`{RGBx3RBN zay1<1d6Zmx+wmp%>biFuJyZTpxSAz>{^k^Oh6>x9R{c2-dCPwsE)B~0Rb;T|WZH*G zo|oP%cx8I)xm?Lf6{V9N*(|5GrG0TSke-;Y?yutHm$CZfS)F3-C0EjYwogkn6%Tmq zensT2qL)-lT);e*erx-a&uw%jHvA4y+^NR7R!@M;m+eyUeH%t`JfjMH2m?_xW! zC|D`?|0&^L8{avfd}7MKqoIw99+twCKc~ck{pLDM>AP zHiPf5g#O1V?>?G5D*lnLqQ+XpqW{O{1GA$6i)(=AvGuQ`-u$V_`eKy#SIKEo-TA*Z zdT*n+AA2!fsPj>Ll=sw4Pw9igk9o^3c{qJH;bFMQ%ewiM64L_4Neg&CEokMKu!_$> zT|_|jkh6;12bDFvzk+)H|42H^q{_q`_$bij)E9vQma`vtE*kJ&y`b*(;j@y`7d<~# z(+RBCb51bnvTfzxci@9c!h1GOCHBnoDk6@NR*zU?)!z$rar`{T;jBA*4d>+;|5rsx z-V@HB6ERepaekqa{x7NZYTAJRIx69pM=oV)+z$VZMx-QTi>**Ead&A%67D0{U~_U1+A$d5PNnl9^Tzqzu$ z^g{dNm`8uN=&U;yDAC@U^oCpFW4}UK!GHUv)k3`df_qmnn)eCj=CucSWiQ$IsUTai zW~0h0-gRx~RJ!t*IFo)UICZT$D>na}lIlj;KqJ-AB303Mvh0seWG%Uz}I7!C+56;!ct_)XONB8z_J@QDB1 z#LfEjj9vP3mdhG{C#rUxdGUwIP%+T({YAy;OQq!(NvUrZQB{g?_@wCd;z5AF@-;T| zgKLD7-v}!wiF`e;SXm?$`Pt^8vF+8(MaS09-yvL+63pj%NUeQ>!ZZCz--_f*y_L?n zYVkAGq!?PbIxq*BapSRuHlzrO!LH7V#v4WkK z!|gtWM5TbXAk`KDClL`PmH?$yAMF&KRxb)x&syT~^RmoJe`!a-|BibnDwXosC@z}6 zNqAb-OOxO&K4-u9Tokc7#{bgixY8qIx6I4>%7<<}DNC)l_%dc4oHhvs(zKALCk!=olZ^61Rj(cM41cDS5a1o2?qe(DdrWAj9!ur1we!2S3W|D! zp8Xng(KNRIoxk&=9deuBRG9EREaA)E9Q3hJwXZwsq$tB8(aBRdy@OY2u#5aRP*mdl z68g^Mv+Al3|M|9>#BX8xo4=)|bn7o(&G)7%Wtj<|KPzS}@jraY+WnBTyJPyX&`WBp zDw<)jp=GI&Vxh;^JFYd_Y;)9-)jceCbAaL%JJ%$E-;^c|#6k?4p)kx!oG3KiNtv)t)-qe>2{1obyoB zojJ(CLn%A@Tkb=%yo<$u3_=ynSnE2{6}`5lJukIOFIlMLborBm+B@M_#{$Bq`>$s> zp|t30_|2~w%Dk%{cneNwx4vCcB(yPcdU2MlxMlxyrHrztPRZ&e}(7th{o2`R$2$r=M;AcFbafStKZno zbI@l=h?$_y*r(<1`e;XhTj{B`jP7aS)l<%Qq}r#Z=N_4;YOtzs@ifWx*Ao5T=jJW5 z{#K^7^hN3F>q;yMIhWLBCQmWC^CfphOU~(U%DYQz#7ioi)MISKlqRqlNLl(O-|@F7kewju;sf#h$n;40!E1kFRnovw z@Zi12R+R=(edez>^%gNyDe!%Iz$xcYJ7tqQyAq?!0!EI8^XJ3^PfqsYP+*_Yz*+ah z>HQJ~_l5Jhn*K8eS@cIK{yjDm2cz*2T%t9r*aP+>ZXgKl&Sc^V}V$S|wRdbImrEV6ghEkg>I(=b~~}W`nI$ zX~c}y6bWsuX>ROH0W%Q?34}b&?wh0QMf1|snpdox#0Cg{YRX~erQ@M zXM~BS>=wz@S83evD2RX2RC)0Ut(7x6BVRYoe4_P4;n!ie*FkQtr`85-SKjq;QnE(6 zqh3+MO{GI72K_T5t!L&xZ|W^QR3$ihin)31#Z0{nrd2Ew1-4FB{7rN8opjPFZN4wc z3_R3ZTv^t9CfKT}%TVyY_Jf@>ICm}JwOYnfDe~gWayg{{flV{Tw>HZwWtSX2_@}aM z?ao4VrWz}y$vbamG=FXL|Gp@liRtrAWuJ3%rha|xlu^IOX)RwwnV!`Ag&MQ6O%hDE z-^z({DEm~ub87J3tA{u&gZ-1rY?_wwTdka0wUSwrQ|Q6U`L~MrA93pK>{EEexWJ0B zXENs|E5)mX#2arIwgKA{W-CNIHFzgR^b*Dkdx+9AQfv|z~&tJNz5(Cslb`b|g83*=3Hiu1X4qNUyZ2RZ1 zqsTYwB~5!o};mUjwae1ORYJUx#w8!pJRnK$4hIDSME7p`{#J0 z&572U6P8ObMFP-zZV2;FN)S)l-zq!_U}bS+e@momo)cY(*1kM(Dt%v?Pbfomu>%E zcC@|XT6@KF?-k#_R|0LXhSpw<+l9({RKDbYj4i1J@3nKQ@?@FaT&9BayJ7XSo+1?2;TQN_usR|$LtIKa(g&EpE&oquiVXA zho`FZ)Lj<5n4A1eKjB5;zL#_7Y1%Y0PmpEq(|WbM?trEH%bEK;!|HBC$En*S@`N$4 zZfbZq+xhi;ySG>8X&hsC;JN7SMB4{*Io~SEy}aA{?z-LkuXgHw47Z*)sQi+<`M>U6 z>%13{a&aH(-iO-QaV+@wIpSmB8KDJpnLV67O`Q8_s*=Ew1>D;bcsL%O&{6!N`|zQA zqri~_?gI_~1w8hDdal5;Z2|WY1%Z%5LO%1kcQx?X#jCi)f0-)BT2}u(JYGp>;n#Tk zZ&R6sP4;u|WBBg5=ymJfr_u{~wmskusaL7{|Ev7JO56RfiSge;m3~^=e|LWLt6KiI zyZk3tnY3`pzgt&xFRf@k5z}k z!xdH<1_CN49AD_^iAzpRRbifa<^*Gh>ZAlC zu|*+|lm#XwIyI>rp0v<;hEQam){|!D6M{`vziO%ymt0&KvN~#Sm+9(jYh!j-{pB)S zb7N!5=~=ejW@~S4&AGkne=WDUwi-jpOSO(}^Y!=k*8HAV`=zCWPu6AL1I6DOev=OR zd`kGlZMo^m$wcQHDVaYNk8h1@`{iOd`B8tnTvnTi;4CG96*5Owd`V$?#VW>Sdx}jn z^x>=JYcH}T@=jTl*_325$8Y9`({CFOdcOO1GdeYW#RB15asLd=pT51byZS$$-JTyG zpPZh}ZogfxVfXXfyX)VJ2haQYdA;4CM2EdqjNBbI&sKFXGrb6(&gfF0Dqs8gZ~9av zE-j|`7NJcp9&Snj8H&-dI^|BTi)~Zp_-lt8IaG93Q{;ATR788M+b!9UN4e@;vJ#|{tHur`) zfuOGr3@m+?4nk267ao|w!qw0m#wyT}8k&Et^uV+-uWxr8;xx*Jp zi-yUZ97z+WiQ>9ur74qG_Ri1<>7Ep-nLkxwR*Hg6lKK&3ILNa+1=|l`GYl`eR&M)*pFQ&afd=b9J0t_*u{J zxqISXPYq&8oFL_Si|@$WD2*DCCVs~`3_{K9qN@T0>^Y`P+&(@a4X zCxO%p3y*GR{yRZn@0xS7C+_|6>a>0&7r#loJv-TzDWzGJ1XLN%v@#5D#|AyE6oKGf$m3fnRdsgaCzj^_0$o zG8!Q#?{Ek{y2+}%=8Ac)+sVHI*Gq2OialgWZTRN6-?pUOX=b0Ticjd-iGeG+_){#L zN}bmQ+>i{c3%HrSTEybos`clpUa#A~PyBr0A;0P=j{LqCm1E7;KD(-;dtmo0Mu)#| zW-w`-723-1BhGrgw(yZ}Ugy{E6_b@*>2UFxc*dMEH|xmuivLgf4Oa+)0eHS zbk=_HlILFbv%BE*e1vIsLr2!HfAWWw~cL2EP10ngr|(_MBa zXEU!{!t-~nqv$-oemx0H`*X$lqRrHM>4B>%}UYbaSEM6XVPW= z%P+dzyl1k)_c^EJI3opD_WATZe%vLQ+I4Nqs?xPq%^Kk_9BsF=a+zxGjZmxvP2oToWX zN3@h%MGhrw3e<8vmnCxH6x*uEiCUq8MvfblmIOu09t~r^6uP)(s%7HTE1i0?MXy+u z?Kq;lu2A*KwY3Mf>UG<`^LkZvJ$~gAMi!x^fqt1HJ`%pR{tLKxu3lDKyv2mU&PPsg zuC<&Y-x6+}!1t^-xX*0*W}+M(m^U2M$TRU`Vxk zaAgbE#trqYF;8@aEhofD8n|-RGzwpwro@%@!K+OA**zzh(>Z)91sju6rB7F$D_Qqh z!)ne{erAOuN@^cpnRy8^m4@r6-u16!_FnMeR8b^LLQe17Gva45TT~~hbxgeW>DkJZ zZCXL5jA3WCS#YU;Rt)j;m~+)ez<>YI(_D<3X9&&_SZjOajFw~Z3aj3!KG9FFOnA3- zeZ6k5O|t9xntL1OhqAwD`LEIB(Ejd}`q$4FSBvb@W9=x66)?!%Wss=V%W4*P#Hwvs zn#!Hro2rhl0wyYKNVuz$aYv*vM|8X3l1*Weq5FG0U;T|+uwP~3cZU~m#p?N4DyJqD zEN!{6SpU)Fei1>71FMtXH7=N~^eS!p?$u{P^0R9m%jhrK@OJV1r0gFzBD~F{+@&Z5vnV*Ug?&9k?0mLj85LFTL$s&noO8lX?E`q6Z zFTPN{^+;3EUk*X-^))4~X?9!>D!+WVzx-cBK~!|>0eQXuQXOo&96Fq)B(lg?K3KN$ zQ1QLb@+}wC#U}|Y*~+x=A!ihW&~kIzka8wFg+^fw2gVcL%n=RAjhr5?Qi%c_jT2aF ziy5;Enn;_qM-v}hEPaDS)X z;yfd4#sn6N1q`eS3|tQw^p}d}eqi7(U|?-v;AvpKwpBDhqctR>HDZRS=K}`L1ufhY zm~WH{Tyqz_(Jopj&>CF9z+KRq=g7jhfPu}SHKoHk^dg&e3B%*%LKO|n(LdVw6WSsc za#$T;;8@VYxq-oULi_op@==YPE*BU$6ByVgFz_y5KI*~-?RwT);c`RtWI3bGipYtq;)3eZY&UE_h~+CBWK^;cSohIR z;UVM7>G>)L8#YZ0WnvdRR>62eL+lcVXquUp|3iCSi88Ln-r)bPz1KPf_Hl?Fh!8x_ zA^I`B`|XQ9nJFy13jMQY2>5TXu727Y>c}GNs=#585wWrV$fN$qi_G6w$a8&A&F~PK zVbIST5YBpG!lxhoDic}$oY1-5CN|>(!|kj6KPv>RE=+j*okM(ShUh^Sb_X3cg`m)b zEKirKaenAvzsSt%sUUch;o>qOsgo052{P~qOwPZ`V7*d~`9XX3!P?W;isC*_h}6jF zF3V+4oapK)X!*S_yph#+yHNN~fx9=vEDNP&91{PtH=L=E5(!lFEUKEvkmWxybcVw; zg~qN+Duvn>T?ZxVV?$@qv|A}icW!>ZF7~Q=5BAAbg+5u!Ol5{g6AlUEtbxjWV1^C{7cbYH%+u| zX?v~|aE($(bW{k+6piu{-=SIjs&VeErSg6&1VTC&vRpIJVN45b7gu~CtRv9!wzINm zqrbsM*5%JxWo8J$uE>f1b7bRv80brWU>q5YmZeyap3 z7?x_XFADkpaK@sSOH&Wlo?a#Id`q-(xx8?vXvnGXb)L&O5@#!H6UypZ#XfQQlL*0| zr^M$8u<1B3DJn3jeqfF@2oN=7k6N&S>$K?93#?iSOiBVw>K~XB3|1^o;EX=NB$&22xxB<$=;ZwxKi7JNnL?S@I=(K37aBAI3f}@ zD?MP2+px*4G1$4=oL_pQaP&s;YL)*|8 z8ZKg*u+8%WLpwJ^XScwORcg1o1a>(qurx4xChT(hxh`zs+=4~S-3J-2yxNr>xNds1 z_@vjOo&m8jhU-^n&8=$}IMf}uK4bj~u4eHGjFpyqukPMj`!H_()V+6K@8u2+H*pbX zd!RETVe#2n;nk)lJ6FpcnYHiCrhP1r_NfG}<_Or=XE~?dS~T~-{y(ebIWO!l6kyM7 zus*kY)tg<5D}Q%|FWh&a6Ks0e1gTUJIwwXcyXNgu=@0hgDcNMR#> zDmP4Cze;GnHNzYa7M4$wH{LoXdT?K<;N)c)rkpHCc7767G#4%O7H4W$w)g^@_Q!GmD@O)d)nzJ-CnTOuH1iSnu1b%xT9;9?Oeb+$@Wz8BhWj}c*KCg# zebdb_HRR;d9I>ZW=~qt8jxpR(a#6I@N8E7b5%z;DU2B9+9iDO1dX;#>N-o1QM|F-R z6iy3hWL!Gy%z2)(tAkHA+U(?DJb3uD&{{5rSvFjU{#Tv&>Y;Gw%~`F$a7Ka2TW=ZH z%7nWm9uS%%;NlY(=XgYKsZf7_rGVDaXV}iow!GEujt-2^7+5i6Wl5Myo`(e6B zA!uOi;vLb`e?%l$E}Q0FwlY3@Zl{p-$+L?E4rw2}c*X79uZ1%?1+SC@<}UQSa*)$I z;o)(eiK`F#2(4bZD^hT7RO7BAtA$RkUUY7Dpw>ioIp4(!Zx2nh2y#@uHZ|r-gyZ4V zwQ@=f?Wx{trk{p%_AuesdlD`xa}WmE2r_Wx_O^>Yq6ua$e( zBQS$Ox81bDt|onAZf;r5q%&ns1&^-0J|h%(QfNobk|@JdU*?FeIDPn}*Ud$%f3kTh1Dt zICJNs?p@zchgjAMJhGmp)p&cIk6_5FrCWI!?z~;|sQqFc@0B@g&z%v~shqud>RNd> zo*?I)qV2zT-(Dpj zl4t&Rv1YEo)SSDgZ0}0$TcB~^q3k-QNCCEUYaS~5J$m%<(A6~pGji^-2c8t_6W9@Z zMfZQ6$b;A`VlN+k$SR(@_MUd*X}-4)UJ2fDQ(QB-M|8%|vs@Eb`_2(~7%u+k>?GN} zLYr-u9nO9b!gW0{aYEQH(S5Z7o&{^F(;h7Turn%8w?)#z(pD{Q*;X2qq>8#MX+0RvKx3Rr@E_$&%<@e5C)uR4uh0<0(sa-4Q9w&PE z=C#nqnd@T1HRLix)`^zid(fMCE#dD2t%<9ZW5p6)JxM(HG=0Z$)=z8aSHB8zR1osJ z#xA%zsPkb_-|L<0UhjS|T4tird+7{W82|Dfx@AuKDj5u9+^v7I|Ov;Kb58(ZxQm=B<;{VZ7JpE4ZWPabjWM#eGk? z_^z$+7H4L-UOM&dQ$K~teBHD91oHnJ`O|S~Pu>Ui{tuk-qG`JyaV|_hX2<1|ciaBU z5uyF*8~z=s3j4tLf4`OAdh5UUf)}Qr%M&f{yT07^?U8$P??@hrJ!t%|?_DY5)j%uJ z9kEx_7*G7JTY71#sDHyEiPCqA15Q4P`}EM}>2*&b>zA$D*M0DP|HXg(>$KDF`1Zev z<;xA3n7g0*9`AaANPj^w{*NLTSAFXHXzeG|8ZPRwM)bkj&mkW#``q0Z@^NQqBj=1O z%oZ0Icn&a>K7AAvCm3cYT7K?p)J3Q6{|_0e;!jGy7hM@AXw@)>=|fkV_owiMXXR|) zJj?plFzWbwPdUI~5+4h#>TU*5&@d&B<8Zath<4d;_DeV^|qH2*il$@Ra| zqJIZ}WZ8S#y6e7ZPyV9r*H5=9o(!&4G{wUE)1+%RyqxW=a2PT z8kjL~1~Iy+Da=erxq0cSd&i6-j)Ip)Cy%j7ILfWKIXU(J;Yq5uKYY>r=n$|(lsO?} z$`++%th)0ZL^=g02e*f++68F|Iv$-YR4Vgk#|MqDEtyx>rQW{wHhM?l({oFsufL1k zQ~CAX)7#hI#~)~9OqB*}+O@dixEu8afugNM(rOw>uCMvf1&pP_e?% z7Qq$KJtErM4px|HTx`v~(iZolA@@dWp@Y!NH^JYWUD>L*_e5U&=rkd1-4!#f^9Pm)9r&NIYKt06 z!kVoG!Yg)ll~hbvdSBpFG6QROvxWnMLsOya=39#dH-CLGD^F46t`Og1F4?YT*KHC8 z`HSTlCHNP8VPGhn@}=s}doP{MSBkv#c7OTgZE#qm*vIH}N%t{EMXiE`%(6m-M>)!C z44eeJd0rjbZnP#tm2aXGgYsRcBONYVea`Txh!&oCyHJBw>OrH*trN_`UV(==_jKij zd^x#ADAkiuY2Jayf?n!dg4U@qa%@_wtX{ps#QXZE4gMXoo?KD%XU*E|WnBIBYj{Gl zXjw#3x9PWtl;bX&mzb8ezOepSG@&diYxUA=e$5L+IT*8dZxy@Uw1qXnWXT5?U!|)G zN&nBTUXmcZ!gWoCFh~1s1(r~lU zf)0b2#b3NiuWoY@VNmjA-ITkwk8y$do?P=oPaZW@_?D$ki!S?_IwN^nW!kLlZP}3% zX0a~tZJ8%6s8?BEcRIbPDad2d95eZ>~ku8lGm2<#VQ6`x7IGcxt2p& zQht%(5=HS@7W&T289(lKeRi^3SGv6_Bkbd~Q_V{^$ZirMJb2gE}34{r_yZzl2R8zh%)WL;Yz6Y20CV?jF%-*jn+q!*jj%E{{cwL3z=IuU2pW zSM_G|^}6bJPm|_29G4BMQ#^B1Dt^JLyH@q-OUzO@oJ*wbB~+%JiE zKi9SdrYoP1=6HW2YD%#xU&=V3TU`7mAb)n!;i`;mzAd zp`9o1?<#i^Sr*W$os!5Mdt?6llYLNJoyMLaT$2`=f+Fg^r*Z@n>dCoK*5Aq~K;^@3SDYMwU~G zZMRZ_95g31U47Ln^ZA6#_aEK~Y{4@QtE3rjzT)2gXQNV%2*>|xJ6yIIe4gmIa{=#X z5&J+s6%8e?_$a4o-fP~hSJ}YQpmV+HFppJ>Td2+n(d8Wzqo1nUcG+}Dux>iF{eeJb zvFB8A!A<+_E_7{VxRI{*pMBB-(*x6wrDQnE{tD=D3t6PrqBg zmK`@P&w8Hq*iGTPi-usQuB7h#;3J$u|Mj?Bdb1+uTgnHWZIDW@JGmx4e#T3y$=lTQ zR|tEQJy~RJ#5PIwBTJ{pQV%0_$+s0(k34r-TNSz{Ep&CXYK-etE9aJu)vFcGG)nwuT_ z`_`X|s|w<^9_s#6j2Q(Q<}S`y`ax*Y?Ypp>U(Q)Zh|v(BclF=*a= zaVugPkHSX&i+Lg5N=^&E99g?TwV;u=CV@qLhu$V#j@a6<{T4dITlDgZ1>r5 zh?P^aO;G91jzde6HA+1$u<-~MRY~Ytu&R{&{xzY8X{!>S)`44PH+=g_wi`(_E^&<7 z`H*e%MaJK?XZ`q@c6zF@7QLwLP+?qfwCfJvZhpm84hv!gFEA}wdVq80lqRMJh1XK{ za;X*1JX@1yVm;;H;(`y6kxVIXnXa7`;$)bRubJM`p~0|EwpH2vmROP1}i36&0X$-cY9^5=Gvus29=62{66{eR7hKaXF*j``<$?4|Fao&cglP+nAWgM z#rKQEv}!KFKyCAxmqZvQaz6@TcwjNp!q+I1KWdWmf4#GZ)yg*Z*5=sh^>-v}%~-{y zVB=FV!{J<8*$JPuVb4^;V%}GGFI<C^zFlseR+g?ol-3#554<$s`NI;gU`adV(zzVSY7{p)Oqo% z9ub4!@L7l4wnfPava6{m2Gytq$hh>eM;~VA_e@}#uu{4`fKy7b%b@af>bh%Y9X5RC z<$=;26Iv`L-04>kuas_?=d-9^M%N_$=ZXa!pVdFaw7X+XrU!VMqVwr^dreXCZ6;DY3$qg=f#7alihFeORW96EMWZb~kD!$!{;e3N;Z zUiLDCFjO99w)`$rI4wbfKPP0t8eXM4GmTyauRi6t>QwKP;_X-G2PAg5_{dMGULB~W zoA}&8eMbY&Ge@Q113z|9!~ z3_lM4|G-gM|A#r?^^OU4|D+GI^s;?;+x%khkKbK3Csr_OY>6&z(6eTc_1GDBfJG)l zgfXGv|KiiktUg<1JS;yM@6UC#Z@%F$-GPDs&jIe7UbZzHj4k#|CJrni-6A{<77e|p zrCBc(OVt}O{64(7xq|68H-o!3_uppwf1m9cOghA49D6JdEYosaY~lFo6eH)71Cur! z(7Prms#W^Q$E2G)v((?NziiYCb@G|6mmp4i#_ zDyx$*pn)xdA^Wn950~*Y4F>iLjqDrjI;tJwtQ+JKnAAE}GS8Txq|zNy%)oBIAS=Tv z6V<_bpiw4);eYqjC0oVK695Js=&E{-8ZNc!5(cVhi$^FpA4DF?VlDX1+8jj4G!1Taz zdO*Y9SByC&O4EyX%#%3g@!Oq2fuS&aLdh2SvK-!jACJ$|Xy85UUYo;NH-$U5&{lo1 zU9-SMts%N*HJmLj#}@^-cVu`huJD*P z=fvbSC;UAv?Kkf&);V>gz&Xv@v^l5qzIBI1gjXFmSHq%{6;I3-`}1H^#gSGGjg|=(^ApUsB)CnBXh>VBy5vN2uQr!% z4a;twt{Ev?Hof6wDLBw9ahxTq)9|&$_BT!i+FbWeHitBd3ud12&zd`L#dc0bhPcTb z9o0Tow+*(WbXG~TUaavh^gbKwboQKw_BE9iT(8fZU&GrIGU1D$rmL0Y+U%k}I zaYNbBk52g&Q+<^&&k;g`IqTPmX7bMIsZ*O{aDdU!6wArP_|rH-|uLLx@(8Zg3H_Q zm~6SRZyEp(+23fy@Sk17O=f~xNAZ%0is~Gpfyb7( zX60yp@Md7oV2ESZw6|tpi(rTgUMH)`z*fNU{Ia*ZSA)fYmgu7^^LMKFXEyKAoV(Y`U1#Ox`Q$3Etg7`+r<nr}frdin=`8BE6rpvNc z9<*;MQ2(}TJ%5gn>#B>}&oG~OdEt!Al;#yiduxQ*7EN3txRN13p^$N_!B=sc1DeG` zD?QhGsdt^eV5ohv^v@$%)57X`peh_uXs0# zSk9Z38}sXF|F@_HW(fvHjRw~{YZvUe|L5-gf4SUB2jUqe7+5kIxQF$T^ravPV79;!erOL{mzYDfr+i|fclBX*`*C~ zCvN}GWtQ-3U^~Gmb?;D+2?L`5L*`jVp*n6G1*Y6o1{n{g?WGbj2@T9Q;(4weR^;Qd zsc7KeH<8hxfz_i)tdB?H+J_k?#g7%l3OWt9?;GF-0J9JTyHa?68c-)+7v3{TE~jcGaYL|9jI`IOX| zN3{R9B&58lJ?$Qs?73`neA?sKW2wyxp7wot9R4n4&Ci6)x%Z9w(lY0zWt~$#k;#xz z*0rE>)4U5I+jgklYn)>uIPpxE<_;dI&8v*+FRk;ueZ6^txX|Xcj60v@=y6nCOIuyQ zQJR<9sF9x7#+}Rf)KIG<(2nEwt7Sb}F>7YZwg{xxu`$$tOTBR7dD1^U-d_{Svu`#v zJiirWRxQ_ACD&T*$5nDIy^(kIWH*lDb!pS`GN;#NCKO%ZNo$Zfv1`c*X0;cMS&}Qd zemEc7(;Z!<_jZ$}V5999*;a;&-Z4)$Mu;i2FA!Owws^)Z-yXT!GFKnW;ybZ=S?26- zdW`{DGFdYgiS7BnIIp|m+|yQpr;iLd${SC6&{9 zMdihxHxK`&Y!Tzw8rNa6a?_&*nO%RLP0@R6?3MPwFZbcIT;-2%uOI8W@$K~P#lg4h zMBiV_ZQqdBl95{%mNkE4&eyp7Z+Y*h%{&$Q_m=yE=;;!Q7Y}qtpVE=Bdi(O9fzprn z|Lr(F?Mv+}c!wtmPWbOrhV3e zO{z=#UO(TKb=mIytwSGtCx2)%c>luo!`-+(*5f>3U$v$BKiu2%j>-LFaB$)Ge}xMC zMT*~rR91Ix-FRW12j8><7q*|s*JBlt^XC$KuKT9#Z-e*Po5*Pmx*Zchz1q_d3I0BesJt~>J)T5P8i)pgH5>kI7JiYi>S(oGbPd56U zGlUo{>`Fu2849z%xG#@dR`_KR!`6WNh5qt|yEQ)l4{$4fa_wX51;+U^leShAzvx@4 z@qK~S{12|$@6r|(`+9w4_V^mwUOIn*+r3F;jKMFH^FJEQ7l@88$^Tzgz+b-qz;2Zj zjcgk(FbWp-biTRw?3muZ`M&Y5{Pe&0Pydv&yeKOCn=|9rB}cf5%*#v6B_}igm?kkH za({8v`?6gJzViJqXlYoQo}RW#piH>`-F>r?>UfT8Vx^lCzd6+IDzg9HB>rOp|Bugm z%ANNAs1h%qmR~u&{^yPWmJ6qrss$Prc6J^}DSCdcym`gSr2EV2)vj9TcYIyBL9T*f zNj<~qFE_SN_!;5IwS0O<%q#&DJ&v90O7|!HF#i6*d&%?EMKjC0R>XI#LBMdr)tl z*g2D~NwRWpTNxY*BSrI$bIqSP>x6t6!+~{b2j@Hw_;E|<&q4OS9$D4{;x&il|DKw^ zd7oOf(ftoG&ws_%zp9T(TCzj+#Pz2w%WJkSmstMnOY4Q2oUGG^{#}>&|6Jbx{x2ailr6I2uAOi(`L&g9}0;<4eOXS3X0G2FW*lY+UdGScGv!2a0$+Oo=cFDBQHRhLbMa??c3xfXJd-)| z+MJ37nwM=d?;q;bF4w!etL*)wv#ZPX@9(So&%~!wVes%!8^5yOnhL|m$NJ=*`*bQl zJ!VzXx64s5>O9P(RA}MzN$8og4~w3Bh{C4E`%@fm_Z<3i#V52#7!vLuFIbIN$>CdcsXuh^Y}qn#~tiq5S3 za>w!FSChLMS7X0VC}T-{HX-d{<@UK9cYD=^nqSzSxYtpAH5NSZQkCmqV0yWd-VQlg$^z)Gk>S5K5Jy3vrI^sU-9PTNj_GVS2RlbL=MdLUA5%7M(R3FhFN-jl@c`! zCzcDk%lW3n_&1eBuJB4!`;rvXvaWK4b5>NB>Z1H(nwRGAeT=*?zjD#4N%Os#v?eW> zGwWsMGUK~nMIBisZmwRx|38!Tnhl4AqStIZt~7hirqlC6vR1rSY;j+)MDa_D2jh;` z34DSVduBDqt7GeD{&U)rxA5&g?T^zx-Lrn{@T;%s{VavU(ppFJ zj7r4$RvX^lbXxzg%;q!3mt!`cHGh0YS&rv@I>S=!*^&pQGF!HAP7QG^VK`k~Tm50W zzsr{oF_j%UlbD1P7nLkzEZ`KpI!)=q+jEzH@m##IaN66_tK6}&rg@Cb9TOKXj_8SZ znUTZFaOH33lP`7E{j)a3#Eakhb~kGM$*nFe|JO^Fxui$W+U7h#Tx+Lu&+N>K2RqMx zedzG$sm!hyizmnJdbxb@yj`zWzg}`{7L(0|xAS;}8`xK{SYDBFWV2Z(^q``4bw{Zd z=LhRk0{dG#-yO-e5ag>|{ao+bJoZ*im#!UoYHv0r*B8Et(AS^DaF)GqPeQku*Zsxc zr*65*(9CMT=f|=8TpwaiW&78;oS%KN;fqjWQ`P^Caj*9r-}|OEv--j5`z}k;#Owa{ zmkP~MVAakz$em=+Eaeg_SG1sEt3U$-TR;PIiNfw_4-y#JG#Hp<99lRZDzsS~n8GKQ z;4FRXt)l0Sg}g7rr$6Xb;^+5ZVC0(6AT#F!r_r2+v2qKWS^vvCV9-f9urjNOQ^{dt z2SvIxfVK1r!(TqMw$;iBUAq~B+ax9nnzqc*dibVbfd62Hvk#@b=XnBwCt zeNp1L>8vGF@_iP|WCxwJ4!Wo^>5X!X(w2kKkBp}8x}&OJ{ql6Ym^Q;988yRh&oeCx zT~ux|J<}89V9<9uGUJkoni2n}wW&tN5toAe&33;$o8M$S=aG!MrRQ_QZLMxIpKf`e z>~hF@@|?*EvvxnTYX7oU;HvTbUw72)f4@9m&m^MwQRalrRmlsNe)j&?R+rRZ;MygS zBR9pZo5_JiIqPC~lF4GJyBhATM*`Y~SQg2)&RoKf;L%xQGM8UgGey9IVcH>+Wkz!~ zeX~ymy}0VVRB`LeP1`&tY?#5a{O6^Y4lbuIAF$v~agWssp8e{|a;MPdFFjcs)VQo# zC8w;aQ9Qt~%c@~@mg$-#S?$QvS=VGADl%q;zLq&ZOIc=(DI-_L>bOf%;k$O3uCKbQ z9sm2)_5Dm{8=7Qw61lT)99A;h*cGdjEdBb%aVN7)ljiEAYG>a(on*Fo)?J-+>(@8W zH<@i&B&(b0oqg-_BD1ZlVs*2lU*EcZ$ZXrDxw^U8*|%>$GTXlEu5Nzy>)ZF4%y%66 zFRNGBoqgxAlKIY4v3kX`U*CD|WWMXtT)ooO*>_(jneV=JSFe2c>$~rp%=bK!)vr9A zeed%k^S!TP^{a2czW4o*`Mytc^=n^e-~au{eE+Yz`t`qG-~Z2KaeztAppiT00kg8j zL9RH1X6ZK%*qtp73C%NT)y{dyoosPfs%)*2(~CscJc}bra)zC{63R^>n~!M48Fok8 zY!>EMIjT3$us1vBvEo4q2BUq3{nc+C%j>Hhw`Mb%*q!r4`MB!|k2s^rv(KccT3en9 znzyNYq0dw8WXsbc+cr(x{pP7Y|BTZKa>g@H>%<$*wmh2^S6p%N%ro=Dmgg>%Zl3cx z=ehO&Y3C~L8ULUE`%GfXPse&t$3g+Yrxa ztIMQ8-7tPyUXC?rNVx!&zs-GYywM3?zKzv%(kjey1+CuWf6Zzhmy`RTlqNt z3lsnN_zJjh*c3oMNXTEg=dI!t?yKJZx_P#2cT||SFWP*z<#lVb&67qx`3#>$^Hd4!fqX?tQ(l?MGx8il=j2 zQ~$KK_HwOa?|R+3|E{zBFTGUhDM`IZy^7aQK!+bUi*P42zGwdvA7`96L-tawQM z!TNXxt_3Z*^WQKAbl-4&vNQJM&6t0>E}k;Jf2JNeDR^WX?*rB(h2}s7$HY0ES6uf< zdVN27I6AaaIwz|JUXC(*F;6wM3<(7D|6osIYjX zDbLuYN zyl9u0`Ajz+T5U?^dvMwG(iHVG2W`$RR-MsebLp|n4P~28%KaW)Lf7tbHYPaxwitCO z^G#a(WTx^#PnVe-N%mQx5-|r{{GRa7XmJU8!WyCCQnaMkXG$v%?{SvCw{rvJg^oCy zJ=U;U?0KR4^A}(DX;V2iB6`OZ85kA^1c|DiNnxMC5|*|k%qUo)fWbA5L4rXdqDwV0Ds@xO z!`2%LAJ-{L(W~=TU-mR8_n=QwqvxAcw{NP(6A$>LF*NX|xrwF4$$7uo z8+@nmobwNb&M7SOPds&TQFCNi=**zx{EaU{BQ2!$fR9*{XG@w}pPKR6CoW-5QBNMr z{76aK@+|vVSXSJDEH&?(Pme?LTo}K}xzuz&sPqWlwN&1Vg=5k~mn(AVZb!C0xSGC6 zMDffLju|W^X-i7df+NyY*iS6;OmJ{xYD_9ocdc8Vm#FTVwR}^{bC(%@Sk}iK7*wpZAn9#u-KU;VtZVx;u`oH(%r09 zKWqU>GQPH zPquhj5Q7NAueB@edk^}oYVa({bgNtGD!Q^iPNQw=OVdxDGRu~Db-9F2W82q};c~&d zKC8!5gQLcd<&5fqn!HTgxd(jCHF~mSx$$YuoVRjjP)dJP#H^^~zKQPZuf`wtIAW5e zxp?XSWaipV&lZ1%3lHW^crl-8is~5^_8BZI)6^3q4y{_3RheDOMk5U_iPsz7wQfpN*=(l0X_}ithog86 zqoly0ggsholw6dj92Bc?lzg*z&8Ag3LQN7mj1mG&TbU+oOa28TY{Esky^d`-NRcoS;zk@dS83e*=W`^MhD54vU|@2_AxdveweGI(XpiK zl~w6MAGSu%FF9`i{;x@>IoK2AbsoSZ>$n$R;Y&@@(og9`_u5o=Y>n# z0gW>U*_S-K;CJL!)LYgax_7)>6n`{y2R-57IOG|S`!H$kwP`Gu%XF`Jt-Wuy_HvS5 zLP72gBQ2K`Z|_zyDdy-UcpZ7+r^0q&?cH^G_uO1A-g|rToXVkDZ*MM3yXE!htE{`P zK-bp?xBV*@_^nYa+0i9_mya>#evll?d$9vI4IK|_K0Nm+I5X%;reDifKb3Dx$Kr!j zo?5Y7@>_CA$z@?zF1y4b7ly_gMgJQlD%Ratbm00Uz1&xMv3K762}=3f=OnN}U-D1u zD?b%k13lL^hDUNNjdr>W?#mhFS^l@_vj2GRQsMaUoXX}^`oDLrcbSoYW6^rH$9e3( zk3KKU{o~id)a`h^tASB_1A}!gqjSr5Kb0R!EkEKK-adNo^Xk1^9k=5HRar|;rY{V_ zDvi&3ZaI0ZTCz})!Nftxrjc*PY`!TcPv&tPRye@?!hxCRjzfm#*Ga;qK}$;gTEzWT zB-q(_;v0D6S$HSE*Xa0gvyOpz^MOBZ1@T)9b0-IJeRHO5u%thAufp*UOA#59fPo z7_bIEnPJ7E*#1`0zD08JM~xL99lw11^R7@X=ziUo=gWOg@8j*AXC+q{HShR@BQ8H* zrdIi+6&YHt&3CJ6^wcqSHT#^f!^q{xr{niFxOM6MOFJO-{HVJ7>OXOxU9K6$oH2U$ zY8{jPhTM0oR^4wU99)zhzuUIV=wDHTm2!*1or2bLpa0|)Z;Jcu7WJ8z`Ab|y@rg;F zOuuV8Z79C6YqPV@W|iyfblNvtyiO9EeI;6DqgRYewan6oqVNB;o?_5A9#WLCy259+ z+GdNL8f*p|oY$0ie?IEmp6{aE@}_R1c#oRe6i3;51{V<{*IEA^c1Jl$Ry3UdbyOw% zgUg>Sa_^4@{r>1|@s+iwfq#QT;Q17>Bf7a=3<4|%Uk0V9+OydBKjCCK$nR46!tHBF zcxhJBSLX!|S#1scEC<ocYhxL+QeV}tHyML z+(`^#EREm%p2*6xSm&39FIS6DZt*#9;M?yMGJCV0*`qJhUYz^;z)|Eup^(0Tc#7vr zmWC6)dzZ2be>mg5e2c|Y$Drv)a_fx~Gs>ijziHTf?w0zX8s9LFg(BHWbab2*~CR)`@9?93(l+TyXIOfU(#U3V)Om2U3yA+{?WYElmHL*+?6xK3Qy|UUBJBg=3( zwF&$`eAX@3x%|D~UuCj#%jDArvK5*xbH2N5+nUc^IU)EbPxTlmzmx!leX{3d2)bhLID4U9SKhwnH!|$XfW`Z z{QnhWagm+3fkEN`lg$CK?K>H2y};olkyb~QVW~w;hppIr!Sr z<%L3GNd3V(t|2=arkwG5?g_<-0O>tx`W=bH@6}$#@5@^;(Ct zZ4Rd!?O(oZKlA@R2j&Z$KfmNW`=0~qY)7PjxUBo_m~k*)+hDDH%W?LC1?efx|Gzm0 z?AeoTn`!xTqqEEP=eu{#uAFuMC&PCe&Vt_>D!)ywZ6>}i^G&IZPx*T*KG&t8(rsI9 ztj31xt8ILDS-QHph)uECH2atHoxNMWTP--udiQa@+UXTHk{E97UUidy?-OaZOWI$2 zs`l=FZ+q8+RAQ7RS%#`<)H`tx#_HU|#d+dO^$syLW!p zZ`;?ty>9Zas($VJeLI4mJhR^Wtopy5U(nz0i*`Qh-*6Cm|SKAGPAGRQ6P}$)XH&EpyY=@l1nFxrHYH8pi*0lok7_bi$G{c zCjt}u4zv%2CkpB+UB;;p>}VlfpVsz-D^`nf_*l`Oox zD40FWrJ``r=@tWdE?{`u|e zZ}EbJgUy`cW;GIpNk_XS&CC8s6s4S;tQo$o=I4gcmT6X5b|)k^Mz!SZ=Iiy~=wM&L zZe3Bd;xiMw@aD|x%VbY%NM9rWG;YD{9pB$~{@+k(_vPe;^*5SRIA^(bOj~faCAf33 zkJp8_jyrTZZ-29sHg~zQDtx=$+^VmvpIb|lL+TnU11=}VADie;2?`=%!Gq%vNZySI8^6Ma60iU;6+QHo{z@iBcDFMU%B4kP>X=kt{;sp ziw_xdDGF<3_b+7-pS*GLtEydn>%TveZteLkGl@^}m5|oCg^&4|vZnm|r>vCQR`-zU`Uxiqq{?Hr)I5FB=IT=+%mueAeu4jqo{(r*kHsvwFKn z_`J32 z7b!RjD_yz3z3h;PqObg;D~kFetCSZhM9i4lYANINmC573S4p6YsBcH$!EHSnKL5`A z5m5>hJQZ}anL~DI$c0CnLe6Kc-79uGXY1W*xAXS?6^mgreA#=V$`#G? zn>`Xc*^AyO=qhY-Q5601^m_c9M{~Ewb-eS{h;QmeD-ky<4@7EsvaP6G(HbJh&Jg2JH+Y^m>U%qYHuyCn_ z`hI?JIf~+h^SsU=co$+@cA*FdQ z7!=qS`{woe&+>TrKZ^PN3C7S+1CQWNHI?H(CkQ!AV)l-DF1ylGAkFEM!g-mawjWpe z?~RzOd4p$BP1sGZWiyPGPQ>&YsXy|KW)fZ`IQ4~#W>jFeUjA&(l`if^T@!lEmI*!# z;ow$r>PS;!EsA@i5$xe$zK=mf^G3@FnI|(&9lY>mA;0DkuZfoy?%%^+?QxJ{1=rCX zi{6;n+WnRI(vr2hL!s1E*Y>Pu|D;PN0!tOcYBlYIl>%;XZd@=o`BZ?a(4{XEt|(iy zp3>F76}Ek!=(@tGuVZwRmvHm=D3u-6PPSR-u%zO^%G6q=AftxXK&Q{)1$Uafx1YM& zeBw$sS1d>L&mfMIb)p;DTXW+7-wWo@-(twz=$m4-vZ?b(P|;?AkJ>>I21naxd|S{x z*F%|2+xswAnQ5!7j;8GIhw8sFq&~7L%y3{)3~&@Xa^S}DGDlVwg@f#N3QVFb54oQo@ld^>-SlDJ1NH<1 z{dkUrtpERsA7ErNNM*m&VOipMAnL~3c%GgFM*SN?u@Q`%*Jju+npB*)Sc65(??I!$ zoCVyUYEQ^8^-SmR-*L!p#|9T0K{l}o3M@(*2l;miZ25WZ`@Wxd*ZW;u9rtaQ_&z1O z{Hp7>?|nZOZt&Ol!=(S-V%`ipGK`oF#0#eV7ii1faaf-3qx-JkcR%!P-xHEq&?Fuc zYdl}_Y-ZT!S<~J2HK!yTUtI8+^}(666}(r@O+Q#X@8_L#`~Q*`8q;o7w`|sI6^XiV z^H%X9$;}yV_EMK7PW!S%bFIWlyVr`-*KOGiW)WU)NRMeZBI=t?Ta&=4|MU%}JJ*zIoEkc*E4QrxMMj zZ(W@BZOh8o+*P7XtT)e<%~{@?o4dH-_BFBZJ5I*t70;Kx`!ekNuA6uB%J)m(`#A0U zo|m!t)%T_ELjohe{=f7CM)4m9IO7VM`CjNFKJ`8{ovrW z;hoR}PC3Vauksk9^4`gve;Fpg(QLrFy#N1-HfCuB$1m&O$u%lSEqKRr;Hi!N@0JN% zt1l?(J>7?}h-shJfR>37mI6D8HD%|M!Bjfg<0d37nBld~YW_|0JOPiGgpj0-wT0 zWs!#;`524@0tMeP39wEy=reGPn()qKqQa*KA9)HDu5I8w_fl})0$#}{!f%^|p9-jp zB=R#C3U)gQ-fG}|oFJ}TD5PDeCH0X{_o8yoN5Pd$;*%Z3CG`b!4TX#gwbTSf)(S|6 z_VKDTNbkNVz5gP=fs$a31Jk7SZg9P|1<6Zms%3E&pBf6h zS2P)4@i8_DDwXuVV`}*KE{{>k;F~}Ki>i~L1cTyBKL!~F1@l^hs%9fS}BIl}-nxIhT~&H>tdQr?NUoMR^hX zq$2UDM&G7fQkwk0C_~`G6K=+9LX08~N8&yyJwEW0!GWPlPvzx02DSnbo(ARB{z~%{ zG=Jyoui2#hR7ZPjp0+BJp01Hv`lMeupVVrNzVSJ*+X)F5D7=^RXOLi!R9vK9FT~Ik zBwARc`Z7=5u*syfNKyHbvHE7CSRu94Nore#jO>&2w(1EP2fr>ekgg7Xdg*{n^X9i# z0+p6HSlqwJe|CY)|NhHNQXdqrDg2#wStk2|aKR&kt$mDYOu`Nm-o<@Tt}ofkjVAITRt9;0Yo55h`dEKwZHe2&-)E{X( zPheQYuPk?fJ@S!Nvc9#tlHF@Qey?KlRvo98euB?7v$d}I`^xXclnL+33>|i!*U^0} zDCcir>*VDVTBKp6LfBd_wttq0vexd?P z(SN1{uJ$Vqf>+!R7dy;1VOc!I^ZR;+o)Y`UD=hX!3LX>R^@u245oYMQWPUp2NyBH0 z$^90Jhqx|%kyTy9b!W?4l>?UlIhm|{`PnXoa1}Ih_!cQ$*u)W8;IdUuO?i={=N04d zPj2roi~Lq{XI$X+z28>xQ9yIPo9rPQ&ISI>`JTH=0vHzrC?4{5Hei@zqNJ9uu-4c{ zev6iT|JPURg54hmDo_2bHdVoD$~(I+A6>o#zkU~_`PeGo#IbtnJ2g?!>z88J9-M zua8o8ihiAEs{F`B_>#~2uRc#jK3=<`Xy<74bt;#_qAy=WnRFV2=S@yHzmeOX$%HvU z>CxAZJ4_?1Omwqa%vQk;;) z{3%$yKxs+P>uFz=wWhv{*s9rSn(S`IaW>BGiWp7^D}_yo zSU5r9im;^o*Vwm*(!Z}y37r8%=l_;(uRzd?6(M=T*PS{A}wS{#rEhE_mQ8|A_U>N7lRrY=YZyUi40I#se$qsR}mJU1b|M=P|JF5N22v zYWw^A=X=KbZr>PW4lqXer?WSeHeM=C3@=Nbnk{^Q@xRo9*y&#ac^8zpKP(A0_jzf| zXYjCOxoEk&Vnyh7;cfM|1)0|&kece%BDWkNMlatBB-6T`JIm7X* z@`7o4pB4DcrZO5l3@o3hp~$b45%${1to-8i@>+4FKJ&`y-xZI1VUS2*yfxLweW4?F z1EY*W1!I0y_J*qU<^RrYe>dlPN#OTl&PA2;&8z$?vebi{G%FgL`75VRkFsYHe%+@P zpI`fTTDv=+z!ejv6$iekJxGvuDiqXbl2a0#{GPM*jaB^W$fMsBg&R!egBY5pRsVdH)Vrx}so1PzHx&OL6N?Ns`{wq+>g)`K zA_HB`uOE+u^)2jVwhmL;Ca(WOTv^YooxLg0b%%!Rqu!h5qU~kj>P^YYDt4ZEcAF(JzL zYsAYwbJm|z>-{>{YCOje|^?lv0wj^#h|2<(4oAMQAmMNioqwaf>FqU zv1O9#hwF)oPJ%NS7S42tkZ;tzzA0tyReeRJ4ABPb?Kkyji7S~|NJ#El_+S2(|5C}{ z3Q56%l_DHgs=`qVLpUztaKg894(N?eol=V>ZuNFP}LanTIM1f@q(YZxB~PBzQ< zZK-4>J?-VWhQQF*Tv5r&Wt&wO&G4M1@ZrJ7o-a$^DlLmP&6j^<^)!2n>aT63Rg*%a zR{d9gw49eEY3KUPlUo_*?Pe@usPDby+!*d8duZG1b77BfWxiM1q55;z^Qf(gO*ss!FwB1(Nb-o6S+Zk-VNbHaY}iS5#RoUbU#eLa?YXWz+NJF2aec1+e}Wf8u0HI98zoovFclY4e; zHQy60p%l9Gz}9yx|6RpS%QGGSe|vNDo#VPcIF%n|=ZCCOWD;hIy&$V}@@(p?cAIZq zGDk!I=y%>ZA$d38`<}o{v4t&v2P_mL` z`myz}qQXYbLmLG1j|eggKbrnaV!`~<1vNYQm0xY&`f>Ku>$es6nH?{!4G5mCr~D}D zwy^^{!*zer6y}od;@x@=q?P2ZHoP{M*jRgM>$#Bfs?#fDl=LEZYQE<*I2dVNDH3-@ z-dk$D`@^c#l zI+x{lPbNy8N{za4_}30!v-`Vc8TRen!MiU*U1=w0N=W24M$;)A78`b+m$`S@W@Yit zyWfK@ecbzsJ?Vb^oEPCAUrdyHp!sk0%sa1k&QYCH_fXd9<>Vqpf_AKrD^rGtjw}gH;Ec`0+%gO(HXT8e(|DIp&^>ewrLisy; zQ^sS%0>{Qm28|GpCkqa@3n+Wd@z}WN zXt#uM)}0d@7a#9eaPE@v+_dE6WR2ieF()@IJw4qZ`P7`1pZHs5oBwvO5jo0qZoWgJ z$exdr4>``ZFXfA24w>X=>|lAZM&dYQV{61_DUBP-s~gxo=XKOhQqVra9w~mza;8eQ zT(keCb+R`^Utiyld^*YW#esFlR)t^A(mioNujz1yu=2d@0>*2MGR)d3{~0#wUfUkC z*-j~=QZcQmaHEmjQe|zm=2G#zG7E;)%`1hzYSjcx=tyX_Wm^<`qaY-UVY&NBwua*g zbJkcDozT4*`S5w;!mDC$b_X0ddWf4-#-{Hp=fV37Vc|#C1vEVR-0sfLQX~EP+S{<( z`Ze|wY#81i+gzpYvDfB=S)?K3?FJUHj0cSzYAYTz@tD1M&@AAl@vuc*v2}8gU}4b- zsW69+OabPqP6B}zlBp9~Ed`HU@%IyDx#}OJ+uxH!?3kq@$uPyXWyz#{naBRm zj4seM56Fz@{Jw0~nw{4k6j(^4+;>Xl+9K`D1X}%SCH7^B6T3n~D5Kiko69mn!^&mD zeu$bZar({b^}HgY@}}T4vqv++7P2?4db%PeXxH4jiNC%JPRb3?c)e!JwXD}`cRXA5 zdflFHud=-~oEjFoPM**qEY0HiaWV`0+K$WeT4rBG0^ICYoS4VNC&Ca`DfMN!6JKIb zL(O`_<5{_RTwC5c-4*+y%TN<3d1))-r}nFiGQK+l)+8leeeT$oCiZ;RUC9*bCCsvW z1Xk9~`WBGQJ$3hkf-RygCue-$*&UkS#O3nB@j>dYy$FJ9KiMXKZ5bJnB)S)v%K-3{tNVog)zmQxP<70;3ox8R)s<~7gc~~w} ztvxA}kJ)xoXdW9c`+G+%<_8CML_F0In$(ir6FOzFM4#v*R!zC}OT@nZEq~A~yhP@O zlp&|XQOVw)>m3>Ex4+bwQaxMr+2R;3hkO=Z_M3+zbT2GOu95n}apdaBpSs5*c)LW; zE>76AE@6j%+^(nGq4U4EF4xcb{d9qB-GwhHv-I*^7yb6N3Y*G3#qI$+=ed19&)3hd zU9H`0vg}gi_xJz*Gw>|<&%o|+fXOL0o4xU%f64;^&Ob-ESQ427(hSVlAGJj0AMU)t z_DN~ZowJHQvwd7X6s%xWX;f-wVqlVS+V`zjNqe4B$2+lb0fw7T1$|C%G1}b_RAFpa z=ofI9!NPR-56{NL70!xbVHW#-@~X7YHum7-ad6eLV-b#oPN3Ce zX=6fQD9gr&PDvFLMA#bI1rr@aS7sPZe8J7YyyBX2&<+7LCBcBqsE*Hj$|u-5cJ}B)0PPeOHvjJThA2r zjN3G+_so3v2~WJbWE7@U8!yl+|9|py+^(nT_CxR9nD?JJo{F!@9mb7-s#-=@Yu5)`oKk}l6qd{83)|e?ZEUg??ryn;= ze)M4WVv83STpoFfx~=48emX7BY?-EG)tb81LO#x(+s@Y=DoN+ud%|UNQ-fK8lc0;k zJPzKa&T2Vq{B2V%hlvMWJd`N1n)&9-cUNXk{om2&v@TfosPo%h*X*i9*Cgr2hgmP` zXfEYNLV^-fbPUu}@(D_nHz*B)Ou;CEToS&09j$|mDVw#wd&$N~&%Q#PN zjz^Gos(|S_Atgm_1}3Qs46HI=+6#TVD+L5@R0=&=Shpl4Oy#@QPmW`)0M#EOedF z^2Fzy@2TK#x|hzmPgKAEtn{Myt6U|Yb6ZSiDDazYsMx#X;ipUIv_D-;d9-X!cvX}6 zzQqA^H9Uok4$3g_f08+n_DkC1m)+C}><2$NwS+%-_2g&X?aQlXu^OMd=R0#Ro8a{+ zH*L6#x!KMx^W&c7n)|@dyW)Us<@HxOLg&;@|G2i}+}3sFXR}ZIV$_IvEtOtfBP>z# zNTG8>VSn}ooy^d%JYmg`HFA?CYYPXzuY zY~%HL-*iT1kEuS#nWvLK8LID4>I%41yG2J}=dG>RJ^XiFnttxfvS1Eg2hF#RDvr!a z-VI#yO*z!_1R5{;9pK^P{4}AvCh4l9h?2;8qYIboX0QLSf!#xmLGH?It?x1{XIPmz zCy9IvTi;_7P&og$py$8hBb#Ck^7b!^k$-%*U8jP9KO=vC@9+Hc3)+@$f4w{QpPhh= z#T^ds1T-)i%y1MrGvRA{%p)$-ii6xy3eD1M7?mbDurg^hunTfBd$5KE z2;U=3j46sTgF$jlzVz;=Nl%0#eo0y9^EH;V%U+X4o@1GsBF2T*|s97ase}M z0|W002L21_LKE42CNLXk7>jp!@hukWf6&H}(8SrmoN=kj{4%q76cd=kn%NdQKiS@M=0?xCA3cWC*c=iW zFL($u7WCej(R*t~@07H-61B)yw;m(II1wkiW;N6H?Om@n^}bord$%H;KfIS+DS>%G zA75j6vTFaY9sPf9{O|u~pKu%#xW4BxfzMoV8zQ#$wk0%yka4v?k67JvobK5d*Wp>T{GD**QPVIe&Ae?#nqBW-?sztg{H1%T+K} z(sAyElXK5V&U<7z?@8pmXO;6_%$)aX=e##J=e_$m?}Oz0PnPq)M9%+KIseDZ`M-9~ z|8sNxzn}9Nq!ut)EntaSz*e<@W7Yz$T?=?_E#UjLKtO7tkkvwwsD)xx3ngYPl-jjW z=GH>FUkeqa7AaXRQi)omR<%fD)*`K4i*#-+()+c@Kx(m()nb#V#b#BDEoLpY+O^o` z)?&L~iyfqvI9V-miCW@TwZvoA60coLd~PlA`?VxM>i^OptEC}POT(&`M$B3owQFh2 zt)+3lmL^CoOR`#)616O?YFWmtWm&tH<=k49_iI^!)bb*$La`Gd-}w|1?) z^UA(8akkJ^X08poj0FrDH`l(HweFRc=@H?Xxf5cq?OgZCYWD=BR zy*R?erGI6FYWHvfkOQWjr-grg7``DZ6*h@m|5Ow9ls@ z*yZNVCDH$PRlo8K^A>n1#;`bh*Sg=kinMY+ehpwQn7*NU_m0)e*0rW_9CT+jn7UJX z&mrz*IqEf@4Z*i9_ng|jC$VaxO|~JwC`0DyJy)XlhToERk9L*_X6VS?d++yNw=SD! zZJhj1EpBq{dog>T$*hR^2U!|fE6o-$a7|!VSh??8^?pMxPs1a5+aG5A_`RRu%%Z;s zCA8Ix7;6r2^enm&=yl|}T-wY70x|~$y=0w@XI?dowmQI4xM7CSor7{U3mFzAJus2y zJHT?__d$(0hj>o0G$xyC{W)YHbJ)n{uu05evzo&ea}HbWIc#(1u-%`-4l+laY>v3Z z9C52T;xXrl*PbIjcaHe|F+LI?b2P~2Xh_V_u$rS0bB;#sIT~~4XxyKp2{Ol$Y>uVG z980S?mNDm8)}CWIcaG)xY+__&Q2fclaEFzFLGeGgr?YdAyOX=2fuYfV1_maH#Danx z76t}}+`N*aAa^H)h{z}f_Gb)?42%q5keFOt;203#1LDAF5F3HNU4y8-tP3*h&ELg+ z7On1wbGPjEuev3nk5Gq|#g&p;oXo($@P~nc!63PysDy!mQHOznA)vgZ0K~3gU|vd`$WY0kz!1P-oSRdMO}zC!t zn9|Z17(Oj$VBn2pU=Y5*z`zwK26hXUb_NCpZfh?ScF0Nhu$$3QU#laYX2*lKmJUD|Ha~zt2KF-%QLUl7hcFu zua%j2VCOx>#ebTI`$UI;>7F4oeZyu2M9&S4pC6IDC?;)5Le{dBycHR_E7FTs z=a#Q4tXyAGy`ijbQ)SbZ+Uw1wH@j+Yv{kMOZQYtRWnb;0=H}*}o}MXFrp%r_yKQ@8 z*Ur|yJzbOb^-kSCVabvut5>hyvSrJjJ$v>yEWXv(bbDg!-Kkx7XY}5mJNd!z}My@@&hRm%F#T+P~xC;=R)jPMURi+PtH)79O9w_{99B zCl{_fvuy3Tl^ZXv+j@D^&a2z@T-&+-=AHw$_Psv1`}LvSS5_Xpz5UF+y%&xgIdb~+ z>7#cJpS*Yc)cq4zu3Wiu=gymB2i~4K^8Vb(_ZLooxODE*wM$>_-Tr**+S5}v&pteT z;qkev&o1A5asAG#TMypc|N7|u+gnc`KYsk=-QzcJ-h6xd=*R0<-=4pC{_*LHkI&zH ze*Np?`!8QU|Nipj>(4Jge|`V||Np;#|Nj2{`~Uy{U*CRyd;1BTN=6B22ypyoa0CyG z9&F|i)`~f?VIlDYqn?|Wot+0#-L(}wusY9o_qRlcZN;zeo!!0t{rv;YmwTKT8XDMh?E@$bV&#zWIN-pk zI;W~&Ig855m+B5x%Y6Qy)Z4S?=jRufSI5r};%fN*e)5Vt%B-EuY&;S+9!^h%&)V|K zFx+oo+1K76bobB57t|;R1|4YNVforA!ozbxxu4Zz z;iD-bVVO^-M*P~E+{o48(kT>eXPLlQz2*z25Kq_5WJcv}Dkpnb)HEkCv3i}Htm37@ zuzZ$@)r_a}8`!j7ENIc1%F@qSrsBz5{fSe)NJICY^U9t$ZQj(HCc|A=eO>B z7ccGid%j%DexIqcZskSh_m?u>xqC0UncvUol6Yxh*0z-w+Nieu=_q(&meSU)0r^$T%PhM@3X}zhqLDSRes1T1z^`^zlIlE@bd1&nU zc;10s*Cg{@XXG1~Ni%AUYgk^?T$D4@_g%bIG4*shgJ1BHmUXJNGZ}UUJwK(B&3Qol z{e_I>Yroy=RTvcPG|!f6u&k z$es1}1b4lkPm1pTU9y8eu*u<(?7fb_$M4xT91!VjYHFFGS^Z?wtd-FzrCU`*&;Hz= zym*^wV{7ob-|zN(ubcXyCT;BmxsLPq9=J{^`J>Ae$l-tVL1~rBlNGUXOWJ3ZwjbH> z@mA7YDTQL@4LjaHnV$der^Uk4=`PE=eH@sBUI@DWHes^6D1Y?%E^X&&-n|PwvX4bC)%|w^aD0=5dfK>VvYj@MK1#?K>M;8yHiyIGFD{GjzRB zteI@o@LWRZfLtoS@|W2moVrEUhM_(x>mScy5LwV-%b>}X@L445f0D-n$+!<49zKhN zgeM)2w`{49b2)U8tLf19H6Ij%S1g*v^g+M<$^`ev&a=cSO&Gcv{C$^lpOjqc#=ze4 zL1F$2h2B#cv)+Ep=&U%iSnhnfdyuJ1*?q19%*!Gsy#Cse&&RmrpTTnh&yJU^qM3^p zb3L%KySP!MOD014{t5w46#=^*p59MZBByL;eVVf3PvlJ*QMV?Y!~{+aRYw(1h4+?E zrrx!Vc5&mF&md5wR41I^+Vt|sPNLd`_CJzh&qmV2Jfki0aBM=@y~ zTY+;+KvECGjzvyJmYQafE}6FvozPHsHSJt8*}dPnQ^ankE1Qe3(k+>QuP)60?Ft;p$_gcxlATJEof!@;@0EMP|3yT2iQc3@rk!6D z^JY(RmcHa<${VUWCBn(E`pDXDg(+@}HD5K@sa;-I^>y{$O7;Gp3V~@_-A??D>iyq3 zCmhyXognpc%8WPa6TA9OE#ZAQeQ`>q(9T;1%2}!c@rIYL$W0Vo)8V@&$^UV zi@8&orHgzEG@l4N9=U0+8x$$$cu6rkBura)lB40)%RZiOFQlnYiaIXn%Fk%jz%(m; z>gxaBI2gOnuFWgoJ@bs6W-qhjO4aby0{1VySjje1>l~Z*M7vKf771<4U8g1#VX)6- zeby|EjH4~#^IXCh?xuDXSGUC6oArIq3*DYD>my-JB_`pV7FkX$w-=riQ`s~vWu1$R zrrJ8Umi_mwbW+v7Mo#%K#ec`q6NZ%{adT>%)-Y7O308R4c>d4hML!A8DK4?KAt_6z?kXjgRdN&Q)(=%x1F`_LI>9etJq zw!5DDU9fp9CBO9lhNDkT%1xTkqIp96WW~A7^JEV_9eMteDG!d zOw~&_>7PE$#ObhGxpDJ8gF_dlF)h8USHo3y^-A(=mYmfs_cpHzU;9d{ z+jA*Xr^!;e-U)SnT^E9uO=J+$6%4=5uVnHzeC2a%O^wAYSCVFxxa`wZV`OnX#=7fs zK**Wpa?euujh>mV-hMXsF4rsvOSR(q_OlaWu3yUh;=9@7O;mh`M0r@AnMdY)me^@M zH4HfHMxI(8SY!^RQaQD|P_vv~b8M2}brqzXEPxpS0 zao?2Bq${fUNN#Gqv{KO3eJpvtk=|cls z$oH&cah|)_Z+uuJExTswyMW5rKPrp@(-pVL?YMmJZjnsbZN*t(Vyd!>KJu-+qw-q! z!e#lUq8|}9>iX?L{{KGYMm(!lS-fmwLpqZJi^K9I?&o*kTbi2TC1`YGu~PZY^rsj4 zK66Y|6tw7Pm?u#7TCQnk|*BId%R@!|D5f!uz_j9 zw|n8|t8`TNI!OO*dCI=zO`A!SZ?t;Hw4*IQC+zuW+a!NNeU6Q0tNfF1w!eOOdfZ?5 z!1?a|_~V^Bdp}pcW8A6AuYciAtW)QFXSwrJel-985qkgEX$Gf14HeZt!!Lb5EqdgG zN!LH81!osmpQ;OER@o@!|A5Egb<7N`*ZvfX4`i_rJu>i4$`Ib1C%R zg!pbKm){V$dEL_GV*7`Qtp#5|*GMr)2pLrvO;Hz^zoCQo|G^S3bz%P#rUiVxD9`+nc1*P+E<*Cy*VKg(LXqs&ERLL;g&2x=2<*PDJiD|-tX1f;c~S0GlPTc+xxK75q5dk3ZWZ6|ju(3f#CcE1&RHR_$wT3zn+(gL3dx6U3=4AOKPFa3 zh&5D-HmWk*DG?B7VC>>#6fBsy-~ns*${A4`M8gDT3Oty>GI2)t%^6ILGbdWkG+#Kg z>*UP-%$W;31(FhG3RntHm7F=lQee@^8GSEjc2~|a6`Z}qbM_=p;gy*)_nl-_Yn;6~ za~69c1G9i#tmI^c!Y-Rdy-bBun1yEW1hz9cG%`8Pecw1)?qcbmWde6*YCB8Di2Q%v zp=elr-b1jOVeWgweilX6(#W}WCj+BhS$`;(|7@%AeCah+jX`OKK*I-y_mK*JR|b;`?yY!?@< z(-crxHAAUNSZ&t~`K+1RU9(nY3a@>+NY!i6f(eTR1QwfKT-5b*(ZrLB4Hhom$H{mg zQpm1qrUuty&W$R;sS8h?6g0kBlWC!yVrjE@QzX|3Rn3VDK3r^J`dEBxQ@iPl5Pid? z(iT3iGG#73o2PWVPq?spx*8|z5{92;UFBg5qD>a~cGVb|3kEjKeLryyn_)G>f`a)8 zlbMs|ivMTqWInV!%`i0FN^DYqwT4V)!-##8xP z2-&AVr|b?>ma zxMT6p9TR8n(6nA`%D8&Hrog1rGp6jGF)dqoZuAbO!W~n+g;N-qR_)#;xnZ-K;ja0s zXDpm8P|dX6WwziA&TR`C*2-Sm7Whn~rEPAHmC(T(%3Ps)c$RH{&)CpsrSKrjBEWJX z+s8HjLT>Xf?8!=E_`XU&_WBgIhkgJ42T%KRO8rd7Ud^j(%c>ijS*J2=@DCJN@IG;O z=2EqDohhf9H?TS~P4r}B7UY=ld!>%Gz^~mi{%8yQtKMa9c%Uotz=DDU3r??^;VnEX zTY!s)k>|~UP2IwxH3$FC7M}26m+HoYe{UbmjJMG3Q_3c1I+D7Q?_KHMvwiRJ?iwBif)%zgGxhWA z+Iqxd>$H&Mh~FxKAJ{z`d3E&WXcw&Oi z$tiyXrUkG^U0`iW;AAp9$hz=&_sQc-506jeJYnv5sw?x_M$UHtD_bLPh3 z+(n0Mn~tZNYF^UjWT>DRqxYjr?Ayxks=Iwe=iyEUT$LN;Qrs>#POh};Q_EY@seTf6+PMYo{U+(J_4EoGsO%9S`%ibOc0oQVP{t-)9eeZ z6Ezt*6*<%e823doI)6CJ#ds|#cVjDfn zn%2%}u@$gdb&h!>>$H>C{@u6{b@poa%d4D@=eje`u_rQ4^Ssr%c7}6+z?`=?XW9BS zsR}kQm>rAilF2=!7nvg!c%*sPk)Kh=MISET-zKnkhRPpzFaFSA{e^d;mmc$tR$%^r zAZc=i@$WYR&(h8>NXSbSI8i;qqc@}wh392F2yPye)6o1 zT_N6kf$Osrfi9Ismla16o@sdT3R-Sr5s-T*WcSdUVY#@Y3(rEPiIt4ZjU0P(1xf=L zU2ol-x_1Z5M^0yhM=Ub8SQ{T{?K`03Cy?U6s4T~%Dz}Pt;lu8e51Af5oEXVwvG8%% z$;S&GJZ|PaxYFmbs}|D=TY)7PZtUx1;xv40TK9OPmw*!=qf6eCF3ukHiw5?zR!wuy)3#TmdJAP3({HM6uJ`#r$CNYIK|68ZdqwXHZzo?rxSLtY#`2HQlzGeeKeBu530=*~@gaAah~r)s zqw~xUw^na>v3OI4$DJv@+kC%me&KlSu6pr{XWmES9^U7;cvo!iQvN7`E|>b2S(Q9} zj*FG{nxuqq2R`qf$;e#DF>U5^mPAgke~+fw3TPy}?bdwDGV$##KE^wG0$2V$y4v@c z<=~sHmv5LD-%gZ#XVmykV8Ocu2j1Q8d$RP;Bb5e$fVd@2TJN5|oBe;^=?{AEzpR__ zPEMHl|C@_>0;%(!rRP1n{O|p>f6tf%pS$f6n9s|okZ?B3_xVK658Ueo796V-SlGpy zbTRPOp<}fInp*^?_+_a17q)aMX?*{&_WgIJ zgWsjz_gD4{ch!Fvy!m5#^$&ps-&qgdsG{&YjL@$m*VNR`B2CQlf^y57s}djSp&^w!OTq$dq7k zX_cD2j=+c6m)s_4pFMKngQLfn`4(bz0@J>4+4=9=TTcasL(T0Unx;X`H3IY}+Gxw_c&a;tR`uJ2!NWi|9m4QOuvv`v4?fL2M zaD>5py#oW6V~ex5W22B!T|+6 zxDvBY&Ub7#Q>hkt98d-Q$stEbEzk1p(}Vb*-FKIMt+9DyJF46~Ca9oom#@7#HSHT>0j#i?OV zi}bv7eyv|;D;J~5_}!uMf&G`fM=$m>+Unr`}%H{pjPB|%G>shp5iPto( zg(}WU23q<-ic>@My_!FnTrqz<r;wD0=!H)O&5n~XI@<}BlpFH1s|?VKEJdj zcZJ#FyzWe4&Yo2ZRC1etJy417brn-{n9`lmz;a5Zn19BUg#HDI?~j_t*M5Jx{r)b4 zKm85U|7lFv^GYb8bLZq4fBYX-+b4eC$L~F>Xs^cnDf*3**?#a_)~$>Ph?}uUVCAtE zo3e{fI>ZW2?3v1BA*62dRC>X>nVEM4McSUuUj5|vs-Db7cIFqG6#I@c-&$y|6!vp} zr~U27eJcO|EVbIgyVFL~ouSIebCTx1c}i}*JGwQ}+tYkB(gL*D8lFyKU|WzTzdme5 z#!HPrh5WtWpIN`>S}nY5H|v#s@2)J^qVaN)oph0y#u4vVxsjpMt6~*7xS z884XZ_;?*scpY!l>U|UXzpXR9`S!yJH@q(Gf7ju!ERvE?&T?%IL)Y{CdynPrMimJO zF)d)cahP+Wl9NTi1Ybpql<4jWC4zEk?rmmGiN#FYg;-T|t-~TtDf)cc<&~KdFiD$J zd|J{P?RS34Q6^mC)0sFYPw~_8l)3i)$b>aZMIIT)+AMZ{z`0BySR##VZNe^1ntnt@>Y>_v(S0qMj~+&q zs%-RByyoBZ^Onjbze|p@G#03Mi}*7+e(Ypk_q_F2)Pny^E)FVhS{m72&(fF7*w^-= zKsC{clUZ)bGLfsF9N8+Qv@?yi&c5;geVt*XRJWg#_s@V!DnUO|xWbjZcU=jvJ8(v2 ze_w|AgwhrUjsypxB@Fu~KjCL!vhcJPRXVgawq+jgO2yw>HlHhDTWigwkyP5UVajBI zhkXky7~l9fwLQ&LS#;To)3x`IP5X+5g=&!*qTEqCmOfdjk{sbB8}O;qs^lS;OM|A5 zpz@`*iYprGoGTUGvt(`m6`JnN_V8=GbfLYAd!j|=l0ZLpE@z#i1~#|&efR7PUKMtA zRrpa(uItH8!T;LlUtV~m=R%~=C(#p~cBh_JC0q;r`9MG<<29e@*U$3GU%eea?M!uE zae*Px>}-x|W@0&8f$FpqydslgPWp1}R@j|-HswFZRSxs_pY2&hPfRu6`MP$;D}m&$ z=kujHU)6FwXgK%Fe}TnB7mMqMeb#*ISin;9%!}KwI7n{?)qO6L3*t1F(Y($5t8 z<}szCi76y{F@sNO3%Ae#c?Gx0{721{;&nTl{tKU)v1FUulP&+3|0@tmob}_Hisv+b zOKGQ0$#Rv23pjN09(J;5?nsa2-eef76{FB@`@`z6?ZcGwRkvGwb|@ZBot54C3@8~5GNk-t{=s^hihQa7(NLZ`A+rcP#A+xf>dSD0CeGt%rP zL)PsH`r;lrPJJHT+rBtV5h*`nQTV<77*|(%_wyzhoe5LCC%yiya9J@Rt#kH&*+cKU zTP!wRe|K)r^F^UQc?xcvcQpRLCu&kEx6HY{rYGkx2Bg1s`IE=TP{YIC%8K+T$=nWzgRwRlF#%bdmJ3~W43&Hx#a@qbDiry&zUA= z-CG#7f0f>brJJ9=nyqnOqb*=bV8Db2-E%@;#-xLABj(6DG90(pk^AVmOy>REUo(D5*C_n{J0|W;@y8v`-yWoQ2iho! z?cdC-tn@$q!8zUU*M45A|5H2nLSBsZ$*)(IaNo^%c}Ql_ne*#D_uFNxe81A#-L>8qKn@qYr#yzVUxMXb#1P43^`e0cqJe|_Tj z*r^}l1eh*tkn5ECXs{+xaRyW2jiYaejt@!_G_TuR39rp{B=ifGIUtr3$LOHN{#mmi$URCdyx9jlb z6YKR@y7XCE4fbsP&$VIp2d)J>8kPvnl?&YPNBWTG5|=er2m3S_b}`s;KHl+KV_V+^ zb4JcX*_S$emrTeln&p~kJFR0|jp0%5DI2PtIi*uNeQJ!RZE#@F*etioXseXNlp7A> zQu9MoI%Q2dV?sKZT{^EuPYCESpElvhB#EQ)Mx7@n^D|cLnP?~(z2?Yt4W}6sT2h%C zRt6a;UAArAvE5?wp^g_WuYR~a=h#>GT5zqQ`)dcywc4F)Uh9AV+-Zs=FT6>wJ*2n5f zrQ9xt#or!r$z42@mvVC29u@H=onbwlm!tccGTdLyI3Rgsy3Cr+$qvV=wH8%~@SpqD z&woh#QuEPw2@Sd-2PZ5vkaC=9>u~CK#Gc$mN8epAFO2EWVPVbwV?Tpo$GZ=XQ+^!j zzTvtw(2I%b;M9yYvkf*$b-GQj*{l^Z%XY(Q+XAD7F&iKK*7<(Xpj3ymcem%uisR1& zPJKOa=v9H!TMd?t9n%(N%hks?J9hajzOk={jzcak$Kb~45;w@!zXf?~x=|5V$V>mzE zXik4(urJ8?7o$I_#aKN-Ia2n zLqTnF!Yonm)mNBXxBGAuvz*yD(@9SA%!LIl><=#ReZ9c{G+_PiK11&_FBDp18M!!r zFhsr9?`P@aUm$!l=i<_az}^Xgb5GkvGq%p#5to#&9x4c)vQ*S)?t%A-i`=w)?!8PIKK(5835Yg+gMT zIh}bA=0^!6AK{eLnQ-uleZTg)&0d=_E?cu+ZT6qgqEWCcc1=LLz!|f((h0k@uW#;C zQr#t2dLrMDi${RjQJ_V~BWQs|<0J*vEMBhcqhYza+>sl*tSnlb3RYa*(kJ44byZ`S zp#zJ{2PTod4U-ZsibQAy3AoJ7UbWsKytMVq_kwT)3v-a}DrCM4Y)~(%qpL;rlYB?Y8>0nDZ|2*Ja zhr`Y98KJEf+7WL%`rmr-&RY6+566d)Fwdo(tUp{ou|%<$a?VwVI+*1Df6dXBN0<8+ zg!DGtn!2}>Nu;0MrgQb)jz33?X06!PHlbxnZ^uR+-T>2?58k--U*56Sv4Jgvfpv%V zAy1nB7?ljtvanJ1?HwDssE$nr16so%6XjhRTZ;&s|dSpuZipJUlNAD`?Y1k?pE6?qF$lCC8ZMV-_K{kO%-#u3oPoDd4VCkl6Gh@cB z76*;Zz8v?yPW(DGgzdt;NdY(iR|`dcXS^>gIf0dv;U4d?sTVFs@8J(rT`+U6?UauD z(^u*qe%-P0?Q$l;`!h~>wrVg0zqPX3dhA$I)ISX+hZiB~w%6J`uE|BFBpeo!f7v9M zpwB75_-tijq~hfj3XRhZS_0#`g4{S)dv|kW9R9Ac@8;53_b>LW@HnyJ_ZE(d1pmaR zD+*HWdio;Vlszi$eq%a0{l*i&e<|;n(}D~dGjd}e1~_}~9+rNGgdU@UE|OZ3)p3GW|?ft zi`WTgrFI8*b!x@+|6y%?`IgUiY5FSGBoPzN{|sRq*?N2|1`PcdpRX5v-2LOZ=Msf` zQ(0DsHn8v5-Au9fLyo84->8%5i>Th z%*)fC-`9EdD1&2!$NA7R-42f;9Q-oEl%%sJF{-*{XU0tXZkw$wNf(noV4|j|NrEK&65{5zOJ~L*Rxyq z%Qj;}20v2<)&d6A1b?r9CRU3EW(|f4rzB5@rq}!4wH|!;=G(-FY-UT=crkADSn#e% zM1oO>fl(-c(WoQRTjTv_zxQ9${GCrU2@5a^crfbD=<+(z^zU5L{A+z@7G>A&WcmN@ z{Yr-xZH30)ZjE{mE=|@b5aD1HlxS3xXuhn;!pvSUc|rc~WBGsCSpR){&wHGYar+YI z7febLjDkNJgm*L<1|-gqcz;)=Sx5S`a?Uep zPyhS4Z(jG)x&4Wjk6RRSdq2GCc6csPa__&z+r+>ZB3unD0Zd2MaqF`+{9iTK)m*ND z*`di+Ah%;5=h1x~j1P7^%zfM2d0J-4t9h83T@=PqqC z4B+yL?`JDYxP9QmH9i&7uIjgL%Q6!cr}O#nTYH&jGjbl5+0UoO{A7-Sx3BxxcRO7? z*?H~T(qDfl{;9$6cyH(JcN{f!eR}3*%10g-?%|AGF4*!+(D$hTQ$~ZP#D^I-9?A;3EUO` z8`UeC>-jIO`QnhuDcH)n?ck5r=Rc}5Gp;VFn9UGm&cGJXlyJ09E8ONnKxDmjQQ71-X+519=|zv{1goYm=>OZY?eQ&U zUWsohzl>g&P7B@DJ1=0$ev`HLrPj%>Jo35xxj^i5=|fvSee65VxrKe(ruk`aRy+-P zSa?=BeZ~jxt;c`Y{LGydaP0Yn3%@zuJ)hAOcie0CzwIY~iKwzQ+)64xC-#$_vHF$8 zWARBX_7|9Ke=tv){^w-Zqwpsg*Twp^w-*clJeX>qe&cc6oEz02SQ$L~<0p6Lwm!(o z)t|Kd<0H5KyZ-l-Wq4ir+imcfjhRKofq_Y&;gSE#7X{S|EYiGmbPu2Zt@!XZyLTN& zMBST&iCx|G-zOnXi6#PICALkbM^l(D{5kw^hI2^`LMj(Ug7)sv?8mx{*Tl7 z=EsNfZrLF7YqwQ;&aR~TR}3Bg3~WL=850;+v~YQ!e(;esh`QqyC$ zShzku)Go{Wit*-#gD0Bmee~u``lNcMkLY>2UNPYg9)kxA{0tQj>Y0Qx6q<@(ZjZ08S=ca5f_Ih+LnCuUnqs?b)sKfk z50`$K8~);;%Ynpt34>Ti-WAV6gbY*|> z>wn}BWinK}D4^Wph;+#hI8AL4;o9BFbNFNsPBU7RJzNtH~HVp>*f3 zNmWv^vw)9VPzPe?^E=QBk%}U_FmKL zvDJS~ZzOixn%xX@{W)oK+|)Ifr@u2RU}$6FFmPbx*12dFVSWGBm0hwQPhZ<@-n8YL z2hYB=cgOp_-VMC9W$B&3J^qPemoEo?zIEmCRNbQmF6y(Fe0PnMUOG7_i05`71Mh=e zp|iiUQYyWS%|w5AFh|^-a8dT|xeG5@T;t3>9OSmQ`FK>i-sV&4>xzq)Lw(l;&srdm z7s$ZzfJ02dw>qujlEGiuYjU5xawiolvu^kuw4nOg&*c17J^Cq6%SCMe2d|BGiE(}v zKgGgXX5aFC;P>T%Y%WVo4F4!AFl(N06xuYQZOv(RYo&(u zFZv6)XWlE$DHHYD(QoB*F>cGVPo2`QjXkg}%-KC#Np^aM9a4@}BFRo0GlzROWgwyz45U zCAReDMU@|WI^?G_dD(n*QRl6UaFIHGcIu`rOZ93seUeX!H9M(H_m|9cX*hQAOwJkY z`57zx>W&NjZ#}1b!K;%^oaxF$jmfIHG4VAm(@v#XrCIt-RP%7$bY+&|(yp6EVLm;c z!rFmT6$Q3-{EyiDi8DZop?Ard7r|aPE>05b>`9uU8TWbB^}V0At~Xrr(s9!xU*)Wp z6;_rG_OqQ>%fwPr9i`KgZ+|*JMIfPr^P^VK+NMCpb?ytrD=*b5cu#0BVp(eNaiO?w z(&aXrQkB)roa&-CH(yyLrj_2?p}zVPr;pjSO`ME5j!Xg9T0fX6eM>pv;LhZCHzs9g zU9DcpV(q&xgUo}Qr*eknRSPaOIFYi28cI@>uUZ$hVj(k&1$vY9< zJS%1SfzL`yVoyw1CKNX(%4M-y;u_bvO5uFR+oxUF!(YHY=~>H+%4oHNn;f}vguDcH zCi-xe$j{uAw4h;U^wKtuC2KduxzB!bmX-5iP>!tNg{G8~0*)`#tc6}%3-7*h%+736 zuX$$231OAiI#0$n?ZWt)54Eo-Iq6rQlZPk!I!_v*1J3yjJGN-j~i!kXznzkJGW# zMQziyJ{8lOV*4$Q8L#^oI#-fGD3z-#_|iSO(3}f9o^O1XDv0O*EKjrUA zOWWH2(wu?ipM((J8I@2E{Yzh&3cq%4MO)t|Cz^ldkXCI0fBHFv@~ zZx!uNeI18ni?1}@m}6FJc0z=`Kg^0r+sff$rBj`qz^be0I`Z{?ySjPb*LC%_8e8}nvcv0Cv_f-^pZ(5|t)Fs-d8LK-k(Va7 zr`ah5#QS=2?H4(^UD)2f-XPb2zhT)Y**ksVTh28&m9p(mndm&%FLLD_!4t+$c0JrT z^QYXb-)rYz@k|f1d-GWT|If?!k39ePVdcWAsrEI|6Fn}JIe8p6w`P8! zV{66ImREsCyiJ5fS1jnyY+29fy5;J8zIO`z-xNyz%KY)2?YQJlaKIskYya;sXD#?C zdB;P6A+(lB=z_v*N7g+xt-BM?)-SlXHj<;DbxIe*Q3jQ3vjkc0UUf?oSm=2oZl~rE zo=qJMD`$#Kx?QvJ@`kTR{+?{}yz?N}#O3Ql0ft`+3T%rM_>{P7L;PZAKe-wb(US08 zvq9+3!M7ewaxRX{B{9*7M^~lJsD8=Fd?fKzsH<0sLdcJKy?@)+o)l`>Gf6o%Ovqy) z1Is+8JBoRG&k2^XoZc($V={5ZnrR{xNfQl^%KwRBn4);5Majb@!BJ&V&Br`A>g2pMT6KOPa!jfuOH@l zUitrM52J@}mr~uG1xyN#%qhw)91LG%gS{@qic~y$F_T48s3qd-ZHAOvKfi>#3osb% z;`7x|m~%HtDpk(U;MU|5%5}LOO4s}>{1$uksd!FHS(fss&*k9TKL?p>k{xsAhX(|i z`yH3II%;uFWy7C`PB)}{!dkzGy7)S|wKz()2c)F29I!WH@pI)DHMsRCl+`{i$tj?5 z4=;m)iqz4s{p%ib#T{S~T5?)F;2`sw$BqXUyA`C&_Gn^$5?5MrtH_QgK4Npi@2L329f_aS@@Q*v_)|HpW9$ir59({4bRI}@ zez8;}fKkZe|I+H1);Ej?7*!538%QPD$^^L{6j5PxS8BLgt<3UNouvWQc z$8WEhzxXeseVOvE2dV{Z%M19@lWU&!b1)=7y21SAX~~6K;Q@~MU7ST#t*6&2hD~^| zUiL(8t4glVoShqj>Db1SA2vHWWRJQ*~DQbs9yJM zdEL9^{&LG4r=-PuILVhKGpM8s7AbTexI0flEt*BzQMNdPsEZi&vYRR4Hpefj}6aVcc^;= zFh%;Y?qQs`Q^G;E?r7&RH~z0j)DxD^Sn{%GpXQunD?RHD6`fncyhlBj!AbSkbA}1a zqZyc{q_HunEPXQJdW=L`!OYa;BNN*iJLJwhbKqc@<|op9C)3G8I55t&&-Zxs3eDL; zb5iYI_Nz2ZiE5q7#L75j<&H*;qpVBk?9*CvY}FsnL(7F)C%AGaT3(%$S7>BZ2>xp0u+nWV^M=a|Iu5yNlMY9= z&ij;nKuF73=U}Dcfqh9w<#i4+Wh634G$=j6d+2az*RlRcb7EDkW1%(<+@c=6s*bstCO52{}U7?=zk4#^#x z#mCBYBPYz`(0Qc>p)WakHBBNrUM;F&Qh3oQ$Ix^rj8#_`o4^4^4F_hO#&a(Z zGRZIq9atOebC6kufpJPdgNOrD#@d;S7TekVKOhv~xF?ET;SHnci-YnWxv>F<1 zY#Nvq4hs1=KHtYD>f!jxsDVl50HXrKL$$`&O1kgAt$Uv|N99kWoQI=G$}_nM>uTmK z7SUwnJE|FvxW zuXXyrx2^xZPyf%c^?%Ok|Gl>U?>+s0&({BYr~m)k`v3p*8Q3>4@Eb6SZ(x)+U{c?} zq;J4%zJb}^fW>_Si@yPD_y*Q^1Ge-HZ21Q4FE%zJcew0q^w6IyrEe7MzMTD@$!x0^@bAd8zuS;C8uwcoNp+#e52HQL+R}s zrS}`k9N#E&-ca`XM%nv@a?dx)y*HHqzES?ap#u9R1%4w%@lA^IMoQ|Nl=O|1%{M9A z8>zT&Qt>xZ4d0|H{6YOgqgwVRwG}Vbia)8gZ_?;DI&grId(J0Kb4ULfMp~O2v?d$r z9N(n#x|45<5%(8I|0_k>kB#_0F-o0jRR6P4pZT+nxG{TjlkRB;e}!Ug?azE#OgsxV zaqnT2ciwCgyxA~)GwbR`-T99G1;yIc#VIvL@;*%76^CRNI0}Dp5U}~*C_SV2yaAKU zoP+!{Y``JZim=3Cd=QO=Y24C&NtGxK4w?HDI&wk zx!%aenbmRoCdcW#uHjqM;@Ud~O}dL2Jt~@ncQoiOHsUil z6m;Pr&zUcppBX&#j|iVJkuhoE*|N!(y~i*8P@+o7Aq~@o2BrRc8g<1@J1Uy|!oO;= zZ%uY+)YaY+zF|}7W(Mhqqk-yQ)r-G2R%{JzH~nO>)nohCRR&GE_Z|EXlxm+YP1#VQ zy}QKO#L2JTl>5b2w+tu#AEn$Y8r}YE(f!;IAiVW}OR@IhhREx#+*>vYtDH$${J$tw z_*ClrqBQ%`5Mi#+-&=KeA56|D)pq|Dx}Y?4wP}cjnU?dn#2hp360@ci+x#|f`*^}E zceiPNx|eWIng5?M?aAL_x0g6)IK_9DNjDtf@A#&9+0j{{OnbY7y8e-X#hXI@pO(B) zBxTT+W89d!-KZjaTZJ)ei1D_0E!&Fc8x@+jWiB?#if+w4Z<1$yv}}7(`SG&K=o2-! zi)w|>mw(^ZkbFvghZ*-42V>D6CEQ;^ADC(}Z*yWfSS4TK-+V~MX9v%g?h<};=a}!B z>EHKjGzouj5Vk3aXR$c6V8^@_7T$Br%bLHnY%b5tFOB$8uKm9}xWl4zwnhAgACcW= zecb>1`}r*sU4<37V6eSuMiXPd6QqqBqs_l^U? zdmN=RDz%Gu`oI3dS7K4ceQ5%}&+Ot8vyEH2>n$?AH_W|nIZxeO>+`{$`DGCo4)U_> zTCmtei@mb>$j%yuT?^Q)7S7+akePpx_|7Hw+4*l6&EM>@bo-~J;^lG1E;2Wa_zJ$x z+04Lea75*X5l_M)rxn{`wU4xIFDg}UY2VDy@jr0M@6&6UJ=XPCtxfh)uCO#qH|@QA zbme`E%Eg~5UVCm7uln@l*Ajc{6dOzK0}lQk)>|*PZE?4>SiH$g+hy7OB5nf~*&9V0 zv|IG%e{$RXD=Yf{_gT%Y>KROX4)1pIVUk_pD1E_kjs8(}4JVlmjnZcv*G~`I!~f^N z@p7j4=Ti@|q*swP7Fr z94r459AFy}&U)*2&DP_)+0Hde9XRM}en@%+qx_Vsw^#qQ6y9^Ff6qDbzXuloIWyaK zi~7Fk4F{)vXL&rmGB3s2*`iT5`@f6SjiP<=b=u)Sw$0zPYV~fv?N%CRew~g!I%j)> zddi`l&DFvIQIR2+&up>KZ>c(N!9C@-(+|cs=S_G_ z4nEIzxw5%|w}DCi!U3PzJ0n=?dxZBp?Wucn_`sXptzZ2scJ@~(f7th4zx8AO{!iv@ zN+(RTwjYq0;quwO{)@l8w~y2Na$}7J2REE&y=}kC>4u%d1_6r+3c>;Gf@&@&p0hc& z8{eu4dT}z*wVUa_#+4lt7rWWpMuoIoWC=drGFfJm;Y-0K9+RXm3bYs}Cv^81vLAYI z`D3z2yRvs)jq`?9bvItwc^5rCCI$CsFLaw~HT8d1=<4u|X;*hm%?@85f3Qu|dRk88 z=JbopLU&KgjozOB@YvC;!-C#qWGB*1pilOt6i zg{4g6pk1%-tqWHQHwH@-TNo9dTGW2>6f=MPo{f@pnx4L-F+nZ%kc6O}W1Zrk4$a}Fy^wPmI(iWYpCPSo|z#v&OFG zH{N>oI}OeR9OkurbKx+*BTwKFK~J5FM}z}=x&+(vA~Ic@qK^EZpx^YzOT($L!XjVm z4%;mcz9S;a92`wo8hngS$t*gkDQm%{wDYY{*7}v-EwcEmyX#iG-}k_zNXX)X$)msp z5_6aiZP(@8b>Z~&1y5EvJ(!lAw?)T1s@TNf?4rkB;=dw1eZ)@WobqWkDLiQ0ULy0_ zzLCkq^Hlc=p0{>V2dY1B<=(mJvZjq?)Ra~?-%DFG{TvewEai6j^o2Z=*|kZ@O4B8H zr%2}7tJk6n&xT%)t$cg+dVFJR*Fm!|DYL_p?5hM9y17&-2ikLAe&OCEx`>a?^Fi{jO)G-h$z?119X&{b+mQ-o<&mr-K7jOV6vMOwL|pTKkdvbwaz)yBCjE zxT&p3>HM1OxNr)4)K7&OEB{8s`!t`8d_K4G-OcCo8~LJM%sHOCkoALw)~^@Izb|F5 zcSjvy?6vd#b=h5Et!f6Z;n%L7XqC$1N1RJIoI({8Na?~eHlXG(Q({wq(B`W0HxWrr7#H9O&-XvSmu$JKGw-lXzeGq1? zWh&RXa5uaneX7u`6bJ9%j%6x`CMwQz?OZZbG5L@4-l#?bviZ>t)W9Dg{#J<(ah3QF5FSDWBe? zRKa4Xu3->3QNK#HC-mae!)#4kniHD%|2}DE6`gc;bI;}62PQLR+A}XS9orQ0PDI_Y ziOIY1$H#>{Q-w9oFmpw8*^|6;Sji&>(w9Rb!w{tGQw_*OP$aNBC>G@VFL?lxFz zq`hLIyh4`_lj>sUE-tPlB~zWayGwoMSWU?0>sTeVF^l;)lWS#ba5W#}i!jbfD+Dfu zvd5@;+pb&`;&0W$p1Y_k^5mgwtKvcx8}4=_-OW11C|TGn$ooom`L2i^o4D4dvuKB~ zEBQ?Bo3>@C>D$b}*-<-f*ym~|zBMveabVI~BIx&Gk@JbHtwDL;mMy4Q?Z9>1d|uj8 zOIGU>TiBeoHuJ1hlYTf~ZK2W)N4Zet%zzhe0=osDaiy5fy5OQ_(Aep@WnxIZSF+QB z2NOO|GhL;9^PRrwr#p=~pJu)_<;`1N9UJg}&-UH-dEZyaZqmB%({!MB#^Gw#O(%-^ zQueZY>N}pRUf264b6#xWnvf;4Cs;bbGP=Jgxf z)+*1N(ELcR=%})rx8e!W4qwisT?fxHh`ee36grDJ;3t>M&IJcnJ4DQyp!3UOSNU#z z?fsrlT2jJSZ_?7AE*vB$)^S6-ChWv)*Buir`CSgQZhIfOf7^vd72%7klDvxrc0Ogz za=9R=cFIj|j`bIXEAz_MeaemA%6vHM$c2QJU#5rgD6H7?>%VEmtTlmaD+Oe@r(P?+ zBr{Ln>ZRajhb_Kl-!@L1o0F>l+vSYa6R$b86MRm0oC-L|B9#_yaJTH|s=cg7w~8g6 zHjY+3`?1txwxDdf&Z!DjNjt?2g|TN6#jBO~-kZYf=^1VDrux23jfwlEwHamC&9`Vw z-n4|(Dbs#C>+yRrAAC$Nanya6R_rgbsQSA~BZ&Rl71>Pnf+Z(j)%PF0x46r6aoXMw z3#~%dnB6mV@~WFCFK=`HkYCEdnRAQhzMu2l_IqWhQ^&@KIW_uM`@ED_&1`Gm+^{U3 zPv{|El7pDV!u1osdF}k4KC^`-M!8$eW3lj~cQY^A+~AyF9+H$d(LP^FZ|(oKN-xnz zrD6?pwe#ey_eAGi+!DM|*IDkwt8KcX-OW~ylXe<#THg~~z_fg2y8G#S?CT~T&X0Y{ zyVP)zfbw6<92|C}#N&Hug(jE`FSGFW-_^9ea?jXF)QO?}Jx(TMv1 z&)4QBylgYiWNClgmnODA`dv|9%_X7r>&_pay^dq!?%9%ynP2+P|8?0s@4?+qHS3Q5 z{gF^?WVGVL z=bcJ-PvtXQfR&+B^GpBMQvu3VpRfd9*^_X-RKUoAE;+kRkn z6bS#(u;G7L63b~fU8#qELJF=vS~*!Gg)c#X?eHsw98I?kT`$X4FPq1=Ltv3jP3E0d zkC^zA4sYRO6khv!*ZQxM@^{tg|8e5q?Y8bbTa)LSM}KcP{qD-YYt{e2Enl_e0^?DC zrsWrO{m$&(*YWob|Aj?KA54^5w0gAp45m-JpkjCMz>Ni*1wQPq{WmT#U0h+H{Yc=~ zu?bpI8#XBfd}i60f1>xzjPoCzJ_srr3aJ(fJzjLlWu>xCpstOp=7bCX_zndxTRAO3 zMe&cHf)K|SnPayd6mMxUajaZq8TRz?oOO?`c>lby=3ENLrC9>ZvKIsAt>wD9L3iH! z7?(Acw|e##oa2@h0W`hgP`_@^S1=nd|Y54 zdG?Xy&cbOA{BNyVBoM2|H20%;e4!*~mdx%6LT^9HeKeH+TBvN7xHN2${N@ijJg&00 zFDU+TP%Oz%4$uu>qq-^&j>Zuept6$MrrP}bBQc(CGH#Q7Zi5B%lSFOklFE} z*S`xYrxt58Z2Y#VU%_vave~7WSBLJi1xkL*lXFy5-5#jZ#U|x=@cW?;Y^#%`3jLLz ztkf}5RD7S$C+@^ICy1|!N5m#|+qW~Smz~tNDrs^$olcmfQD&rgBXBKW;i9Sw+RXuS zUss>VDw4msN%!t2-FiQ3wlO9LH0u%4eNoxvp z?S!>7E*t27*4~(8nmft(tGCJSBPRaBI!wXWgq(id%6hq~iG#gK+p$q&?+G2PMGW?r zdaasjYd#70=qaXr?!554r$CtPo`GffA+xo@=EABv@*j@fnP@HCWU}}3^^D;20!da6 zH`(6(Z2NHYmU%g<&x&<@mTr)86r6V;bV1=imL&FP3j|gAl!|>6*@_f082H2-1uq>4 z6?rp-<+DP>Mx{<}GnOm71?ji!9y+ilu|04Q6k)vmUxq0xX*uVN2QGnMywVt414DN1 z+h8orq|w{P9`VIxJ*UD&&E7Blt|?sX51rhi8{D$LxLHnNwGnY~ouc3oqSFxK5&30S zT*&@{l9?q_9CI#c|CwC&OTqqaYCyweEww4Ec@6whiSGTIbU3cCWliDS<}B>9#VxeN zcWSnIqxMXbMnC5^Y3W z`fAM-&fEUV2_lN$N<1EK4z~Ro>=>G%c12w{DdhH|&TTFG1ek;qxU5VbZH;qIQwsVn z(Bz;m`s1DROOZ!0ZjU9N8d-Lv8m}x=v0fxHJE^oHv?XDc{eP3QQg;tU=rcubZ&5zT z6eY}J+rHI!vMAfMt4UoYCOq1vzKdqXF`I2n;%#W2RwruFG*!}i3wy-_wzT%I0*9is zlS+3aMen|TFOjhj-}=DDRzA`t+}RsRj zhbkX_E8o36>6O{%4`q=J<=Um~nax4Uo4!Z!n%6xouX|ap`sAIeb)oKUCDz$VY(sI}JR*`I-uP-$_v04PwirQ?H$gj;uO*bF zIS4)ps@Ql)xM4wPq(kgi)n;`^H^FB-FH9eWMJQY<(=M3dP!gdvA)@oYQMYtT_rXa| zc|PWGPiZOs(LL*Mo8+`@t9G=#Ht%~{(Z^~obN963jIX-C8hB?Uu;)EsYf#{Qav(;U zk+~%I50yIyI3HbQt7G7OwBXPW1zrP7UW-foMwXLZ)6}FN@>C?SX_-4Ge{>bL`l-Kk)8y+8T565_Hx^7=E+Jyn$XmxS zv2p?D|2aoh^ma}*e=@y!=Ct<6sgag(nN!|fV4l%xsaRk+xwKNK;-*U1&l&j(rcAxr zvAK!wk^;v+i3t}U)SEAwX)CEMrO3;7ldYkF_Z+jZm1Ns#rGi@vrnP!a%ig)bc;<4c zgEP+evt>MBt9!tChheI(+w7&1n!S=U&;Qh7h+1HoG{>-N=Hr{w>^Dv>b(wd0fxqpp zIg=%qh#E~dXPRTYbNXVYS=(p!<^Eb$cuV*H71nzN%P;ajK4zLtdTK!gV)%stn4_d7`TD9h6)$<$&wiE`o zlm)q>kJen2V!L6*vUk^-|1Wo~d;4qMN2~Q;rSzUvt^fOLJ)`vo*6I!Wcdh6Ay+P1= zqiFR;$=|xt3)vN8)|*YMH(T!BZ2Nn&qxBZo>MfqTxA^|v5@@|O zw0djg?ya%EwYX!p@0|O4=R)gUORIOS+`Vhs{Oy}x%KwBB=c_jY?lE{2D?9t-)d zMDNvo=)A;%|Csf@r`7vj-hTdX0V4|o!=wkgM;Ms?+}_{*z?p}EfkS~)W#K+Sn}eb? z+Fum7G!man{W+*AC@}2-zn3-_n+$_V&HlSdEdT%A-p}fIz%=Ht@Pj?#e~tv&9OZZ7 zVoNw8=x}Iq@6lM9WA*|9TnR@w8@PNqR4Gu!q0&OMCZ7AV^}oN$*F`Stto)j3)$jwf6jl(i1B#QnW` zzE=6r-^0iE-uZ8R&(w)aAmO^L?2W&F@0YvX=={swxA(a0f-T?n9v8K}DO7hv{2%kg z2dC;~bT|BcknPI3;|_ydowAd|3Be?ug1K5D4kwN#D0?un-1~cXcZ0Ikzr*%+Ppp-= zCe$8bK5&HbU${mi*CGebDGFRG5+3hv68h%AH7S8}#erw}aywb;ZgAFRXzkl#=g1`n zI!X9NukNem`(7yr^2;zVN-3PY`siimQ(=w0$2kvN;&)=P`KNHg;Y4_ymPaGgf2Ueu zv!o}%|LzJVDqp$x^ya;{3!Auh#4t{(bJk!K;JN={b(4@>!{z=O#w88f42=8BWf}M$ zeB8X~1ONRG7weQ&6hCLyeBi8pX}aKLtJ@pL_$5B_u9F&0Ka|$8`Lkb{LGe|?la)+Q z?EkQsEfTtC%etw7BPRAlXM%Fv{%fi8zb$M!zW&bve|x>OxWmgI3Ck>aqb`4ZIfM2$ z1;%CjkFzH{TFG?VbPnShrrW{_^%@WP&FX*l`hM}W&j^zLtG@EDZ_BM}8O|k5EOv94 z1e64N_Wx_WbHd{oBXw>ve@1dWK^Bz z$gC4;>5$$uJ7jg%l9mI>%&TK|SN-KOTXSP$%IR6Mky?TCY$kg2zFnZWu1#N0f2FU; z$}5op^-FwyPBvQQ&TeS`w$th9%X>$4G~dota_y4y)KPu=@wfX&ufrXt>)&XzZaC>* zW%a(4C(`KY)MK6_*sj6e|~;>ef#;W&(BZV zGEVsAzCeiipQ0;6jmCf3sYkr_F&bR0O-WrU?7`>fk=QC0*O6E=J>+0xOi`&oTb$y< zgN~gtB?6aZ)uz3;=BPdGMPiKptQqYd(_0=o_DG2&vV{k+Fr+XrHGJ}9w&$I&z|E13 z^U5S|uZe*|-b@@EEpogYT-vmKAEr$A4ssMy;Qk^m!jv$LrGuHftfWE6rS(hl1ZS^B z2POvQOl$D-n&{G+�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

`_d3poakTo#cQZtM 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 z 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 k@fwLSHI)9bbTfVL&$gIW%8{? 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⪚h6aD{fRevU5iL&bhHpTy>UA8x*)Xgq0rroV9r; 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

}8H;GYZmT#v>BJ(_6@f}ZEHaMJ` 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

~DqE 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

L7VLhp>F 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≤!l)U?1q^w!gs#ci9koHCN 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 z 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 literal 0 HcmV?d00001 diff --git a/docs/mkdocs/Makefile b/docs/mkdocs/Makefile new file mode 100644 index 00000000..d3356b82 --- /dev/null +++ b/docs/mkdocs/Makefile @@ -0,0 +1,37 @@ +# serve the site locally +serve: prepare_files style_check + venv/bin/mkdocs serve + +serve_dirty: prepare_files style_check + venv/bin/mkdocs serve --dirtyreload + +build: prepare_files style_check + venv/bin/mkdocs build + +# create files that are not versioned inside the mkdocs folder (images, examples) +prepare_files: clean + mkdir docs/examples + cp -r ../json.gif docs/images + cp -r ../examples/*.cpp ../examples/*.output docs/examples + +style_check: + @cd docs ; python3 ../scripts/check_structure.py + +# clean subfolders +clean: + rm -fr docs/images/json.gif docs/examples + +# publish site to GitHub pages (not working in GitHub Actions; need special action) +publish: prepare_files + venv/bin/mkdocs gh-deploy --clean --force + +# install a Python virtual environment +install_venv: requirements.txt + python3 -mvenv venv + venv/bin/pip install --upgrade pip + venv/bin/pip install wheel + venv/bin/pip install -r requirements.txt + +# uninstall the virtual environment +uninstall_venv: clean + rm -fr venv diff --git a/docs/mkdocs/docs/api/adl_serializer/from_json.md b/docs/mkdocs/docs/api/adl_serializer/from_json.md new file mode 100644 index 00000000..176290e2 --- /dev/null +++ b/docs/mkdocs/docs/api/adl_serializer/from_json.md @@ -0,0 +1,73 @@ +# nlohmann::adl_serializer::from_json + +```cpp +// (1) +template +static auto from_json(BasicJsonType && j, TargetType& val) noexcept( + noexcept(::nlohmann::from_json(std::forward(j), val))) +-> decltype(::nlohmann::from_json(std::forward(j), val), void()) + +// (2) +template +static auto from_json(BasicJsonType && j) noexcept( +noexcept(::nlohmann::from_json(std::forward(j), detail::identity_tag {}))) +-> decltype(::nlohmann::from_json(std::forward(j), detail::identity_tag {})) +``` + +This function is usually called by the [`get()`](../basic_json/get.md) function of the [basic_json](../basic_json/index.md) +class (either explicitly or via the conversion operators). + +1. This function is chosen for default-constructible value types. +2. This function is chosen for value types which are not default-constructible. + +## Parameters + +`j` (in) +: JSON value to read from + +`val` (out) +: value to write to + +## Return value + +Copy of the JSON value, converted to `ValueType` + +## Examples + +??? example "Example: (1) Default-constructible type" + + The example below shows how a `from_json` function can be implemented for a user-defined type. This function is + called by the `adl_serializer` when `template get()` is called. + + ```cpp + --8<-- "examples/from_json__default_constructible.cpp" + ``` + + Output: + + ```json + --8<-- "examples/from_json__default_constructible.output" + ``` + +??? example "Example: (2) Non-default-constructible type" + + The example below shows how a `from_json` is implemented as part of a specialization of the `adl_serializer` to + realize the conversion of a non-default-constructible type. + + ```cpp + --8<-- "examples/from_json__non_default_constructible.cpp" + ``` + + Output: + + ```json + --8<-- "examples/from_json__non_default_constructible.output" + ``` + +## See also + +- [to_json](to_json.md) + +## Version history + +- Added in version 2.1.0. diff --git a/docs/mkdocs/docs/api/adl_serializer/index.md b/docs/mkdocs/docs/api/adl_serializer/index.md new file mode 100644 index 00000000..95f35cdd --- /dev/null +++ b/docs/mkdocs/docs/api/adl_serializer/index.md @@ -0,0 +1,35 @@ +# nlohmann::adl_serializer + +```cpp +template +struct adl_serializer; +``` + +Serializer that uses ADL ([Argument-Dependent Lookup](https://en.cppreference.com/w/cpp/language/adl)) to choose +`to_json`/`from_json` functions from the types' namespaces. + +It is implemented similar to + +```cpp +template +struct adl_serializer { + template + static void to_json(BasicJsonType& j, const T& value) { + // calls the "to_json" method in T's namespace + } + + template + static void from_json(const BasicJsonType& j, T& value) { + // same thing, but with the "from_json" method + } +}; +``` + +## Member functions + +- [**from_json**](from_json.md) - convert a JSON value to any value type +- [**to_json**](to_json.md) - convert any value type to a JSON value + +## Version history + +- Added in version 2.1.0. diff --git a/docs/mkdocs/docs/api/adl_serializer/to_json.md b/docs/mkdocs/docs/api/adl_serializer/to_json.md new file mode 100644 index 00000000..da976518 --- /dev/null +++ b/docs/mkdocs/docs/api/adl_serializer/to_json.md @@ -0,0 +1,43 @@ +# nlohmann::adl_serializer::to_json + +```cpp +template +static auto to_json(BasicJsonType& j, TargetType && val) noexcept( + noexcept(::nlohmann::to_json(j, std::forward(val)))) +-> decltype(::nlohmann::to_json(j, std::forward(val)), void()) +``` + +This function is usually called by the constructors of the [basic_json](../basic_json/index.md) class. + +## Parameters + +`j` (out) +: JSON value to write to + +`val` (in) +: value to read from + +## Examples + +??? example + + The example below shows how a `to_json` function can be implemented for a user-defined type. This function is called + by the `adl_serializer` when the constructor `basic_json(ns::person)` is called. + + ```cpp + --8<-- "examples/to_json.cpp" + ``` + + Output: + + ```json + --8<-- "examples/to_json.output" + ``` + +## See also + +- [from_json](from_json.md) + +## Version history + +- Added in version 2.1.0. diff --git a/docs/mkdocs/docs/api/basic_json/accept.md b/docs/mkdocs/docs/api/basic_json/accept.md new file mode 100644 index 00000000..1c806e82 --- /dev/null +++ b/docs/mkdocs/docs/api/basic_json/accept.md @@ -0,0 +1,113 @@ +# nlohmann::basic_json::accept + +```cpp +// (1) +template +static bool accept(InputType&& i, + const bool ignore_comments = false); + +// (2) +template +static bool accept(IteratorType first, IteratorType last, + const bool ignore_comments = false); +``` + +Checks whether the input is valid JSON. + +1. Reads from a compatible input. +2. Reads from a pair of character iterators + + The value_type of the iterator must be an integral type with size of 1, 2 or 4 bytes, which will be interpreted + respectively as UTF-8, UTF-16 and UTF-32. + +Unlike the [`parse`](parse.md) function, this function neither throws an exception in case of invalid JSON input +(i.e., a parse error) nor creates diagnostic information. + +## Template parameters + +`InputType` +: A compatible input, for instance: + + - an `std::istream` object + - a `FILE` pointer (must not be null) + - a C-style array of characters + - a pointer to a null-terminated string of single byte characters + - a `std::string` + - an object `obj` for which `begin(obj)` and `end(obj)` produces a valid pair of iterators. + +`IteratorType` +: a compatible iterator type, for instance. + + - a pair of `std::string::iterator` or `std::vector::iterator` + - a pair of pointers such as `ptr` and `ptr + len` + +## Parameters + +`i` (in) +: Input to parse from. + +`ignore_comments` (in) +: whether comments should be ignored and treated like whitespace (`#!cpp true`) or yield a parse error + (`#!cpp false`); (optional, `#!cpp false` by default) + +`first` (in) +: iterator to start of character range + +`last` (in) +: iterator to end of character range + +## Return value + +Whether the input is valid JSON. + +## Exception safety + +Strong guarantee: if an exception is thrown, there are no changes in the JSON value. + +## Complexity + +Linear in the length of the input. The parser is a predictive LL(1) parser. + +## Notes + +(1) A UTF-8 byte order mark is silently ignored. + +!!! danger "Runtime assertion" + + The precondition that a passed `#!cpp FILE` pointer must not be null is enforced with a + [runtime assertion](../../features/assertions.md). + +## Examples + +??? example + + The example below demonstrates the `accept()` function reading from a string. + + ```cpp + --8<-- "examples/accept__string.cpp" + ``` + + Output: + + ```json + --8<-- "examples/accept__string.output" + ``` + +## See also + +- [parse](parse.md) - deserialize from a compatible input +- [operator>>](../operator_gtgt.md) - deserialize from stream + +## Version history + +- Added in version 3.0.0. +- Ignoring comments via `ignore_comments` added in version 3.9.0. + +!!! warning "Deprecation" + + Overload (2) replaces calls to `accept` with a pair of iterators as their first parameter which has been + deprecated in version 3.8.0. This overload will be removed in version 4.0.0. Please replace all calls like + `#!cpp accept({ptr, ptr+len}, ...);` with `#!cpp accept(ptr, ptr+len, ...);`. + + You should be warned by your compiler with a `-Wdeprecated-declarations` warning if you are using a deprecated + function. diff --git a/docs/mkdocs/docs/api/basic_json/array.md b/docs/mkdocs/docs/api/basic_json/array.md new file mode 100644 index 00000000..22b2ee1d --- /dev/null +++ b/docs/mkdocs/docs/api/basic_json/array.md @@ -0,0 +1,60 @@ +# nlohmann::basic_json::array + +```cpp +static basic_json array(initializer_list_t init = {}); +``` + +Creates a JSON array value from a given initializer list. That is, given a list of values `a, b, c`, creates the JSON +value `#!json [a, b, c]`. If the initializer list is empty, the empty array `#!json []` is created. + +## Parameters + +`init` (in) +: initializer list with JSON values to create an array from (optional) + +## Return value + +JSON array value + +## Exception safety + +Strong guarantee: if an exception is thrown, there are no changes in the JSON value. + +## Complexity + +Linear in the size of `init`. + +## Notes + +This function is only needed to express two edge cases that cannot be realized with the initializer list constructor +([`basic_json(initializer_list_t, bool, value_t)`](basic_json.md)). These cases are: + +1. creating an array whose elements are all pairs whose first element is a string -- in this case, the initializer list + constructor would create an object, taking the first elements as keys +2. creating an empty array -- passing the empty initializer list to the initializer list constructor yields an empty + object + +## Examples + +??? example + + The following code shows an example for the `array` function. + + ```cpp + --8<-- "examples/array.cpp" + ``` + + Output: + + ```json + --8<-- "examples/array.output" + ``` + +## See also + +- [`basic_json(initializer_list_t)`](basic_json.md) - create a JSON value from an initializer list +- [`object`](object.md) - create a JSON object value from an initializer list + +## Version history + +- Added in version 1.0.0. diff --git a/docs/mkdocs/docs/api/basic_json/array_t.md b/docs/mkdocs/docs/api/basic_json/array_t.md new file mode 100644 index 00000000..dd2b901d --- /dev/null +++ b/docs/mkdocs/docs/api/basic_json/array_t.md @@ -0,0 +1,68 @@ +# nlohmann::basic_json::array_t + +```cpp +using array_t = ArrayType>; +``` + +The type used to store JSON arrays. + +[RFC 8259](https://tools.ietf.org/html/rfc8259) describes JSON arrays as follows: +> An array is an ordered sequence of zero or more values. + +To store objects in C++, a type is defined by the template parameters explained below. + +## Template parameters + +`ArrayType` +: container type to store arrays (e.g., `std::vector` or `std::list`) + +`AllocatorType` +: the allocator to use for objects (e.g., `std::allocator`) + +## Notes + +#### Default type + +With the default values for `ArrayType` (`std::vector`) and `AllocatorType` (`std::allocator`), the default value for +`array_t` is: + +```cpp +std::vector< + basic_json, // value_type + std::allocator // allocator_type +> +``` + +#### Limits + +[RFC 8259](https://tools.ietf.org/html/rfc8259) specifies: +> An implementation may set limits on the maximum depth of nesting. + +In this class, the array's limit of nesting is not explicitly constrained. However, a maximum depth of nesting may be +introduced by the compiler or runtime environment. A theoretical limit can be queried by calling the +[`max_size`](max_size.md) function of a JSON array. + +#### Storage + +Arrays are stored as pointers in a `basic_json` type. That is, for any access to array values, a pointer of type +`#!cpp array_t*` must be dereferenced. + +## Examples + +??? example + + The following code shows that `array_t` is by default, a typedef to `#!cpp std::vector`. + + ```cpp + --8<-- "examples/array_t.cpp" + ``` + + Output: + + ```json + --8<-- "examples/array_t.output" + ``` + +## Version history + +- Added in version 1.0.0. diff --git a/docs/mkdocs/docs/api/basic_json/at.md b/docs/mkdocs/docs/api/basic_json/at.md new file mode 100644 index 00000000..5e950450 --- /dev/null +++ b/docs/mkdocs/docs/api/basic_json/at.md @@ -0,0 +1,226 @@ +# nlohmann::basic_json::at + +```cpp +// (1) +reference at(size_type idx); +const_reference at(size_type idx) const; + +// (2) +reference at(const typename object_t::key_type& key); +const_reference at(const typename object_t::key_type& key) const; + +// (3) +template +reference at(KeyType&& key); +template +const_reference at(KeyType&& key) const; + +// (4) +reference at(const json_pointer& ptr); +const_reference at(const json_pointer& ptr) const; +``` + +1. Returns a reference to the array element at specified location `idx`, with bounds checking. +2. Returns a reference to the object element with specified key `key`, with bounds checking. +3. See 2. This overload is only available if `KeyType` is comparable with `#!cpp typename object_t::key_type` and + `#!cpp typename object_comparator_t::is_transparent` denotes a type. +4. Returns a reference to the element at specified JSON pointer `ptr`, with bounds checking. + +## Template parameters + +`KeyType` +: A type for an object key other than [`json_pointer`](../json_pointer/index.md) that is comparable with + [`string_t`](string_t.md) using [`object_comparator_t`](object_comparator_t.md). + This can also be a string view (C++17). + +## Parameters + +`idx` (in) +: index of the element to access + +`key` (in) +: object key of the elements to access + +`ptr` (in) +: JSON pointer to the desired element + +## Return value + +1. reference to the element at index `idx` +2. reference to the element at key `key` +3. reference to the element at key `key` +4. reference to the element pointed to by `ptr` + +## Exception safety + +Strong exception safety: if an exception occurs, the original value stays intact. + +## Exceptions + +1. The function can throw the following exceptions: + - Throws [`type_error.304`](../../home/exceptions.md#jsonexceptiontype_error304) if the JSON value is not an array; + in this case, calling `at` with an index makes no sense. See example below. + - Throws [`out_of_range.401`](../../home/exceptions.md#jsonexceptionout_of_range401) if the index `idx` is out of + range of the array; that is, `idx >= size()`. See example below. +2. The function can throw the following exceptions: + - Throws [`type_error.304`](../../home/exceptions.md#jsonexceptiontype_error304) if the JSON value is not an object; + in this case, calling `at` with a key makes no sense. See example below. + - Throws [`out_of_range.403`](../../home/exceptions.md#jsonexceptionout_of_range403) if the key `key` is not + stored in the object; that is, `find(key) == end()`. See example below. +3. See 2. +4. The function can throw the following exceptions: + - Throws [`parse_error.106`](../../home/exceptions.md#jsonexceptionparse_error106) if an array index in the passed + JSON pointer `ptr` begins with '0'. See example below. + - Throws [`parse_error.109`](../../home/exceptions.md#jsonexceptionparse_error109) if an array index in the passed + JSON pointer `ptr` is not a number. See example below. + - Throws [`out_of_range.401`](../../home/exceptions.md#jsonexceptionout_of_range401) if an array index in the passed + JSON pointer `ptr` is out of range. See example below. + - Throws [`out_of_range.402`](../../home/exceptions.md#jsonexceptionout_of_range402) if the array index '-' is used + in the passed JSON pointer `ptr`. As `at` provides checked access (and no elements are implicitly inserted), the + index '-' is always invalid. See example below. + - Throws [`out_of_range.403`](../../home/exceptions.md#jsonexceptionout_of_range403) if the JSON pointer describes a + key of an object which cannot be found. See example below. + - Throws [`out_of_range.404`](../../home/exceptions.md#jsonexceptionout_of_range404) if the JSON pointer `ptr` can + not be resolved. See example below. + +## Complexity + +1. Constant. +2. Logarithmic in the size of the container. +3. Logarithmic in the size of the container. +4. Logarithmic in the size of the container. + +## Examples + +??? example "Example: (1) access specified array element with bounds checking" + + The example below shows how array elements can be read and written using `at()`. It also demonstrates the different + exceptions that can be thrown. + + ```cpp + --8<-- "examples/at__size_type.cpp" + ``` + + Output: + + ```json + --8<-- "examples/at__size_type.output" + ``` + +??? example "Example: (1) access specified array element with bounds checking" + + The example below shows how array elements can be read using `at()`. It also demonstrates the different exceptions + that can be thrown. + + ```cpp + --8<-- "examples/at__size_type_const.cpp" + ``` + + Output: + + ```json + --8<-- "examples/at__size_type_const.output" + ``` + +??? example "Example: (2) access specified object element with bounds checking" + + The example below shows how object elements can be read and written using `at()`. It also demonstrates the different + exceptions that can be thrown. + + ```cpp + --8<-- "examples/at__object_t_key_type.cpp" + ``` + + Output: + + ```json + --8<-- "examples/at__object_t_key_type.output" + ``` + +??? example "Example: (2) access specified object element with bounds checking" + + The example below shows how object elements can be read using `at()`. It also demonstrates the different exceptions + that can be thrown. + + ```cpp + --8<-- "examples/at__object_t_key_type_const.cpp" + ``` + + Output: + + ```json + --8<-- "examples/at__object_t_key_type_const.output" + ``` + +??? example "Example: (3) access specified object element using string_view with bounds checking" + + The example below shows how object elements can be read and written using `at()`. It also demonstrates the different + exceptions that can be thrown. + + ```cpp + --8<-- "examples/at__keytype.c++17.cpp" + ``` + + Output: + + ```json + --8<-- "examples/at__keytype.c++17.output" + ``` + +??? example "Example: (3) access specified object element using string_view with bounds checking" + + The example below shows how object elements can be read using `at()`. It also demonstrates the different exceptions + that can be thrown. + + ```cpp + --8<-- "examples/at__keytype_const.c++17.cpp" + ``` + + Output: + + ```json + --8<-- "examples/at__keytype_const.c++17.output" + ``` + +??? example "Example: (4) access specified element via JSON Pointer" + + The example below shows how object elements can be read and written using `at()`. It also demonstrates the different + exceptions that can be thrown. + + ```cpp + --8<-- "examples/at__json_pointer.cpp" + ``` + + Output: + + ```json + --8<-- "examples/at__json_pointer.output" + ``` + +??? example "Example: (4) access specified element via JSON Pointer" + + The example below shows how object elements can be read using `at()`. It also demonstrates the different exceptions + that can be thrown. + + ```cpp + --8<-- "examples/at__json_pointer_const.cpp" + ``` + + Output: + + ```json + --8<-- "examples/at__json_pointer_const.output" + ``` + +## See also + +- documentation on [checked access](../../features/element_access/checked_access.md) +- see [`operator[]`](operator%5B%5D.md) for unchecked access by reference +- see [`value`](value.md) for access with default value + +## Version history + +1. Added in version 1.0.0. +2. Added in version 1.0.0. +3. Added in version 3.11.0. +4. Added in version 2.0.0. diff --git a/docs/mkdocs/docs/api/basic_json/back.md b/docs/mkdocs/docs/api/basic_json/back.md new file mode 100644 index 00000000..1a715284 --- /dev/null +++ b/docs/mkdocs/docs/api/basic_json/back.md @@ -0,0 +1,65 @@ +# nlohmann::basic_json::back + +```cpp +reference back(); + +const_reference back() const; +``` + +Returns a reference to the last element in the container. For a JSON container `c`, the expression `c.back()` is +equivalent to + +```cpp +auto tmp = c.end(); +--tmp; +return *tmp; +``` + +## Return value + +In case of a structured type (array or object), a reference to the last element is returned. In case of number, string, +boolean, or binary values, a reference to the value is returned. + +## Exception safety + +Strong guarantee: if an exception is thrown, there are no changes in the JSON value. + +## Exceptions + +If the JSON value is `#!json null`, exception +[`invalid_iterator.214`](../../home/exceptions.md#jsonexceptioninvalid_iterator214) is thrown. + +## Complexity + +Constant. + +## Notes + +!!! info "Precondition" + + The array or object must not be empty. Calling `back` on an empty array or object yields undefined behavior. + +## Examples + +??? example + + The following code shows an example for `back()`. + + ```cpp + --8<-- "examples/back.cpp" + ``` + + Output: + + ```json + --8<-- "examples/back.output" + ``` + +## See also + +- [front](front.md) to access the first element + +## Version history + +- Added in version 1.0.0. +- Adjusted code to return reference to binary values in version 3.8.0. diff --git a/docs/mkdocs/docs/api/basic_json/basic_json.md b/docs/mkdocs/docs/api/basic_json/basic_json.md new file mode 100644 index 00000000..e2e73612 --- /dev/null +++ b/docs/mkdocs/docs/api/basic_json/basic_json.md @@ -0,0 +1,402 @@ +# nlohmann::basic_json::basic_json + +```cpp +// (1) +basic_json(const value_t v); + +// (2) +basic_json(std::nullptr_t = nullptr) noexcept; + +// (3) +template +basic_json(CompatibleType&& val) noexcept(noexcept( + JSONSerializer::to_json(std::declval(), + std::forward(val)))); + +// (4) +template +basic_json(const BasicJsonType& val); + +// (5) +basic_json(initializer_list_t init, + bool type_deduction = true, + value_t manual_type = value_t::array); + +// (6) +basic_json(size_type cnt, const basic_json& val); + +// (7) +basic_json(iterator first, iterator last); +basic_json(const_iterator first, const_iterator last); + +// (8) +basic_json(const basic_json& other); + +// (9) +basic_json(basic_json&& other) noexcept; +``` + +1. Create an empty JSON value with a given type. The value will be default initialized with an empty value which depends + on the type: + + | Value type | initial value | + |------------|----------------| + | null | `#!json null` | + | boolean | `#!json false` | + | string | `#!json ""` | + | number | `#!json 0` | + | object | `#!json {}` | + | array | `#!json []` | + | binary | empty array | + + The postcondition of this constructor can be restored by calling [`clear()`](clear.md). + +2. Create a `#!json null` JSON value. It either takes a null pointer as parameter (explicitly creating `#!json null`) + or no parameter (implicitly creating `#!json null`). The passed null pointer itself is not read -- it is only used to + choose the right constructor. + +3. This is a "catch all" constructor for all compatible JSON types; that is, types for which a `to_json()` method + exists. The constructor forwards the parameter `val` to that method (to `json_serializer::to_json` method with + `U = uncvref_t`, to be exact). + + Template type `CompatibleType` includes, but is not limited to, the following types: + + - **arrays**: [`array_t`](array_t.md) and all kinds of compatible containers such as `std::vector`, `std::deque`, + `std::list`, `std::forward_list`, `std::array`, `std::valarray`, `std::set`, `std::unordered_set`, `std::multiset`, + and `std::unordered_multiset` with a `value_type` from which a `basic_json` value can be constructed. + - **objects**: [`object_t`](object_t.md) and all kinds of compatible associative containers such as `std::map`, + `std::unordered_map`, `std::multimap`, and `std::unordered_multimap` with a `key_type` compatible to `string_t` + and a `value_type` from which a `basic_json` value can be constructed. + - **strings**: `string_t`, string literals, and all compatible string containers can be used. + - **numbers**: [`number_integer_t`](number_integer_t.md), [`number_unsigned_t`](number_unsigned_t.md), + [`number_float_t`](number_float_t.md), and all convertible number types such as `int`, `size_t`, `int64_t`, `float` + or `double` can be used. + - **boolean**: `boolean_t` / `bool` can be used. + - **binary**: `binary_t` / `std::vector` may be used; unfortunately because string literals cannot be + distinguished from binary character arrays by the C++ type system, all types compatible with `const char*` will be + directed to the string constructor instead. This is both for backwards compatibility, and due to the fact that a + binary type is not a standard JSON type. + + See the examples below. + +4. This is a constructor for existing `basic_json` types. It does not hijack copy/move constructors, since the parameter + has different template arguments than the current ones. + + The constructor tries to convert the internal `m_value` of the parameter. + +5. Creates a JSON value of type array or object from the passed initializer list `init`. In case `type_deduction` is + `#!cpp true` (default), the type of the JSON value to be created is deducted from the initializer list `init` + according to the following rules: + + 1. If the list is empty, an empty JSON object value `{}` is created. + 2. If the list consists of pairs whose first element is a string, a JSON object value is created where the first + elements of the pairs are treated as keys and the second elements are as values. + 3. In all other cases, an array is created. + + The rules aim to create the best fit between a C++ initializer list and JSON values. The rationale is as follows: + + 1. The empty initializer list is written as `#!cpp {}` which is exactly an empty JSON object. + 2. C++ has no way of describing mapped types other than to list a list of pairs. As JSON requires that keys must be + of type string, rule 2 is the weakest constraint one can pose on initializer lists to interpret them as an + object. + 3. In all other cases, the initializer list could not be interpreted as JSON object type, so interpreting it as JSON + array type is safe. + + With the rules described above, the following JSON values cannot be expressed by an initializer list: + + - the empty array (`#!json []`): use `array(initializer_list_t)` with an empty initializer list in this case + - arrays whose elements satisfy rule 2: use `array(initializer_list_t)` with the same initializer list in this case + + Function [`array()`](array.md) and [`object()`](object.md) force array and object creation from initializer lists, + respectively. + +6. Constructs a JSON array value by creating `cnt` copies of a passed value. In case `cnt` is `0`, an empty array is + created. + +7. Constructs the JSON value with the contents of the range `[first, last)`. The semantics depends on the different + types a JSON value can have: + + - In case of a `#!json null` type, [invalid_iterator.206](../../home/exceptions.md#jsonexceptioninvalid_iterator206) + is thrown. + - In case of other primitive types (number, boolean, or string), `first` must be `begin()` and `last` must be + `end()`. In this case, the value is copied. Otherwise, + [`invalid_iterator.204`](../../home/exceptions.md#jsonexceptioninvalid_iterator204) is thrown. + - In case of structured types (array, object), the constructor behaves as similar versions for `std::vector` or + `std::map`; that is, a JSON array or object is constructed from the values in the range. + +8. Creates a copy of a given JSON value. + +9. Move constructor. Constructs a JSON value with the contents of the given value `other` using move semantics. It + "steals" the resources from `other` and leaves it as JSON `#!json null` value. + +## Template parameters + +`CompatibleType` +: a type such that: + + - `CompatibleType` is not derived from `std::istream`, + - `CompatibleType` is not `basic_json` (to avoid hijacking copy/move constructors), + - `CompatibleType` is not a different `basic_json` type (i.e. with different template arguments) + - `CompatibleType` is not a `basic_json` nested type (e.g., `json_pointer`, `iterator`, etc.) + - `json_serializer` (with `U = uncvref_t`) has a `to_json(basic_json_t&, CompatibleType&&)` + method + +`BasicJsonType`: +: a type such that: + + - `BasicJsonType` is a `basic_json` type. + - `BasicJsonType` has different template arguments than `basic_json_t`. + +`U`: +: `uncvref_t` + +## Parameters + +`v` (in) +: the type of the value to create + +`val` (in) +: the value to be forwarded to the respective constructor + +`init` (in) +: initializer list with JSON values + +`type_deduction` (in) +: internal parameter; when set to `#!cpp true`, the type of the JSON value is deducted from the initializer list + `init`; when set to `#!cpp false`, the type provided via `manual_type` is forced. This mode is used by the functions + `array(initializer_list_t)` and `object(initializer_list_t)`. + +`manual_type` (in) +: internal parameter; when `type_deduction` is set to `#!cpp false`, the created JSON value will use the provided type + (only `value_t::array` and `value_t::object` are valid); when `type_deduction` is set to `#!cpp true`, this + parameter has no effect + +`cnt` (in) +: the number of JSON copies of `val` to create + +`first` (in) +: begin of the range to copy from (included) + +`last` (in) +: end of the range to copy from (excluded) + +`other` (in) +: the JSON value to copy/move + +## Exception safety + +1. Strong guarantee: if an exception is thrown, there are no changes to any JSON value. +2. No-throw guarantee: this constructor never throws exceptions. +3. Depends on the called constructor. For types directly supported by the library (i.e., all types for which no + `to_json()` function was provided), strong guarantee holds: if an exception is thrown, there are no changes to any + JSON value. +4. Depends on the called constructor. For types directly supported by the library (i.e., all types for which no + `to_json()` function was provided), strong guarantee holds: if an exception is thrown, there are no changes to any + JSON value. +5. Strong guarantee: if an exception is thrown, there are no changes to any JSON value. +6. Strong guarantee: if an exception is thrown, there are no changes to any JSON value. +7. Strong guarantee: if an exception is thrown, there are no changes to any JSON value. +8. Strong guarantee: if an exception is thrown, there are no changes to any JSON value. +9. No-throw guarantee: this constructor never throws exceptions. + +## Exceptions + +1. (none) +2. The function does not throw exceptions. +3. (none) +4. (none) +5. The function can throw the following exceptions: + - Throws [`type_error.301`](../../home/exceptions.md#jsonexceptiontype_error301) if `type_deduction` is + `#!cpp false`, `manual_type` is `value_t::object`, but `init` contains an element which is not a pair whose first + element is a string. In this case, the constructor could not create an object. If `type_deduction` would have been + `#!cpp true`, an array would have been created. See `object(initializer_list_t)` for an example. +6. (none) +7. The function can throw the following exceptions: + - Throws [`invalid_iterator.201`](../../home/exceptions.md#jsonexceptioninvalid_iterator201) if iterators `first` + and `last` are not compatible (i.e., do not belong to the same JSON value). In this case, the range + `[first, last)` is undefined. + - Throws [`invalid_iterator.204`](../../home/exceptions.md#jsonexceptioninvalid_iterator204) if iterators `first` + and `last` belong to a primitive type (number, boolean, or string), but `first` does not point to the first + element anymore. In this case, the range `[first, last)` is undefined. See example code below. + - Throws [`invalid_iterator.206`](../../home/exceptions.md#jsonexceptioninvalid_iterator206) if iterators `first` + and `last` belong to a `#!json null` value. In this case, the range `[first, last)` is undefined. +8. (none) +9. The function does not throw exceptions. + +## Complexity + +1. Constant. +2. Constant. +3. Usually linear in the size of the passed `val`, also depending on the implementation of the called `to_json()` + method. +4. Usually linear in the size of the passed `val`, also depending on the implementation of the called `to_json()` + method. +5. Linear in the size of the initializer list `init`. +6. Linear in `cnt`. +7. Linear in distance between `first` and `last`. +8. Linear in the size of `other`. +9. Constant. + +## Notes + +- Overload 5: + + !!! note "Empty initializer list" + + When used without parentheses around an empty initializer list, `basic_json()` is called instead of this + function, yielding the JSON `#!json null` value. + +- Overload 7: + + !!! info "Preconditions" + + - Iterators `first` and `last` must be initialized. **This precondition is enforced with a + [runtime assertion](../../features/assertions.md). + - Range `[first, last)` is valid. Usually, this precondition cannot be checked efficiently. Only certain edge + cases are detected; see the description of the exceptions above. A violation of this precondition yields + undefined behavior. + + !!! danger "Runtime assertion" + + A precondition is enforced with a [runtime assertion](../../features/assertions.md). + +- Overload 8: + + !!! info "Postcondition" + + `#!cpp *this == other` + +- Overload 9: + + !!! info "Postconditions" + + - `#!cpp `*this` has the same value as `other` before the call. + - `other` is a JSON `#!json null` value + +## Examples + +??? example "Example: (1) create an empty value with a given type" + + The following code shows the constructor for different `value_t` values. + + ```cpp + --8<-- "examples/basic_json__value_t.cpp" + ``` + + Output: + + ```json + --8<-- "examples/basic_json__value_t.output" + ``` + +??? example "Example: (2) create a `#!json null` object" + + The following code shows the constructor with and without a null pointer parameter. + + ```cpp + --8<-- "examples/basic_json__nullptr_t.cpp" + ``` + + Output: + + ```json + --8<-- "examples/basic_json__nullptr_t.output" + ``` + +??? example "Example: (3) create a JSON value from compatible types" + + The following code shows the constructor with several compatible types. + + ```cpp + --8<-- "examples/basic_json__CompatibleType.cpp" + ``` + + Output: + + ```json + --8<-- "examples/basic_json__CompatibleType.output" + ``` + + Note the output is platform-dependent. + +??? example "Example: (5) create a container (array or object) from an initializer list" + + The example below shows how JSON values are created from initializer lists. + + ```cpp + --8<-- "examples/basic_json__list_init_t.cpp" + ``` + + Output: + + ```json + --8<-- "examples/basic_json__list_init_t.output" + ``` + +??? example "Example: (6) construct an array with count copies of given value" + + The following code shows examples for creating arrays with several copies of a given value. + + ```cpp + --8<-- "examples/basic_json__size_type_basic_json.cpp" + ``` + + Output: + + ```json + --8<-- "examples/basic_json__size_type_basic_json.output" + ``` + +??? example "Example: (7) construct a JSON container given an iterator range" + + The example below shows several ways to create JSON values by specifying a subrange with iterators. + + ```cpp + --8<-- "examples/basic_json__InputIt_InputIt.cpp" + ``` + + Output: + + ```json + --8<-- "examples/basic_json__InputIt_InputIt.output" + ``` + +??? example "Example: (8) copy constructor" + + The following code shows an example for the copy constructor. + + ```cpp + --8<-- "examples/basic_json__basic_json.cpp" + ``` + + Output: + + ```json + --8<-- "examples/basic_json__basic_json.output" + ``` + +??? example "Example: (9) move constructor" + + The code below shows the move constructor explicitly called via `std::move`. + + ```cpp + --8<-- "examples/basic_json__moveconstructor.cpp" + ``` + + Output: + + ```json + --8<-- "examples/basic_json__moveconstructor.output" + ``` + +## Version history + +1. Since version 1.0.0. +2. Since version 1.0.0. +3. Since version 2.1.0. +4. Since version 3.2.0. +5. Since version 1.0.0. +6. Since version 1.0.0. +7. Since version 1.0.0. +8. Since version 1.0.0. +9. Since version 1.0.0. diff --git a/docs/mkdocs/docs/api/basic_json/begin.md b/docs/mkdocs/docs/api/basic_json/begin.md new file mode 100644 index 00000000..ef623a5f --- /dev/null +++ b/docs/mkdocs/docs/api/basic_json/begin.md @@ -0,0 +1,42 @@ +# nlohmann::basic_json::begin + +```cpp +iterator begin() noexcept; +const_iterator begin() const noexcept; +``` + +Returns an iterator to the first element. + +![Illustration from cppreference.com](../../images/range-begin-end.svg) + +## Return value + +iterator to the first element + +## Exception safety + +No-throw guarantee: this member function never throws exceptions. + +## Complexity + +Constant. + +## Examples + +??? example + + The following code shows an example for `begin()`. + + ```cpp + --8<-- "examples/begin.cpp" + ``` + + Output: + + ```json + --8<-- "examples/begin.output" + ``` + +## Version history + +- Added in version 1.0.0. diff --git a/docs/mkdocs/docs/api/basic_json/binary.md b/docs/mkdocs/docs/api/basic_json/binary.md new file mode 100644 index 00000000..ce45d8a0 --- /dev/null +++ b/docs/mkdocs/docs/api/basic_json/binary.md @@ -0,0 +1,66 @@ +# nlohmann::basic_json::binary + +```cpp +// (1) +static basic_json binary(const typename binary_t::container_type& init); +static basic_json binary(typename binary_t::container_type&& init); + +// (2) +static basic_json binary(const typename binary_t::container_type& init, + std::uint8_t subtype); +static basic_json binary(typename binary_t::container_type&& init, + std::uint8_t subtype); +``` + +1. Creates a JSON binary array value from a given binary container. +2. Creates a JSON binary array value from a given binary container with subtype. + +Binary values are part of various binary formats, such as CBOR, MessagePack, and BSON. This constructor is used to +create a value for serialization to those formats. + +## Parameters + +`init` (in) +: container containing bytes to use as binary type + +`subtype` (in) +: subtype to use in CBOR, MessagePack, and BSON + +## Return value + +JSON binary array value + +## Exception safety + +Strong guarantee: if an exception is thrown, there are no changes in the JSON value. + +## Complexity + +Linear in the size of `init`; constant for `typename binary_t::container_type&& init` versions. + +## Notes + +Note, this function exists because of the difficulty in correctly specifying the correct template overload in the +standard value ctor, as both JSON arrays and JSON binary arrays are backed with some form of a `std::vector`. Because +JSON binary arrays are a non-standard extension it was decided that it would be best to prevent automatic initialization +of a binary array type, for backwards compatibility and so it does not happen on accident. + +## Examples + +??? example + + The following code shows how to create a binary value. + + ```cpp + --8<-- "examples/binary.cpp" + ``` + + Output: + + ```json + --8<-- "examples/binary.output" + ``` + +## Version history + +- Added in version 3.8.0. diff --git a/docs/mkdocs/docs/api/basic_json/binary_t.md b/docs/mkdocs/docs/api/basic_json/binary_t.md new file mode 100644 index 00000000..705c92cb --- /dev/null +++ b/docs/mkdocs/docs/api/basic_json/binary_t.md @@ -0,0 +1,89 @@ +# nlohmann::basic_json::binary_t + +```cpp +using binary_t = byte_container_with_subtype; +``` + +This type is a type designed to carry binary data that appears in various serialized formats, such as CBOR's Major Type +2, MessagePack's bin, and BSON's generic binary subtype. This type is NOT a part of standard JSON and exists solely for +compatibility with these binary types. As such, it is simply defined as an ordered sequence of zero or more byte values. + +Additionally, as an implementation detail, the subtype of the binary data is carried around as a `std::uint64_t`, which +is compatible with both of the binary data formats that use binary subtyping, (though the specific numbering is +incompatible with each other, and it is up to the user to translate between them). The subtype is added to `BinaryType` +via the helper type [byte_container_with_subtype](../byte_container_with_subtype/index.md). + +[CBOR's RFC 7049](https://tools.ietf.org/html/rfc7049) describes this type as: +> Major type 2: a byte string. The string's length in bytes is represented following the rules for positive integers +> (major type 0). + +[MessagePack's documentation on the bin type +family](https://github.com/msgpack/msgpack/blob/master/spec.md#bin-format-family) describes this type as: +> Bin format family stores a byte array in 2, 3, or 5 bytes of extra bytes in addition to the size of the byte array. + +[BSON's specifications](http://bsonspec.org/spec.html) describe several binary types; however, this type is intended to +represent the generic binary type which has the description: +> Generic binary subtype - This is the most commonly used binary subtype and should be the 'default' for drivers and +> tools. + +None of these impose any limitations on the internal representation other than the basic unit of storage be some type of +array whose parts are decomposable into bytes. + +The default representation of this binary format is a `#!cpp std::vector`, which is a very common way to +represent a byte array in modern C++. + +## Template parameters + +`BinaryType` +: container type to store arrays + +## Notes + +#### Default type + +The default values for `BinaryType` is `#!cpp std::vector`. + +#### Storage + +Binary Arrays are stored as pointers in a `basic_json` type. That is, for any access to array values, a pointer of the +type `#!cpp binary_t*` must be dereferenced. + +#### Notes on subtypes + +- CBOR + - Binary values are represented as byte strings. Subtypes are written as tags. + +- MessagePack + - If a subtype is given and the binary array contains exactly 1, 2, 4, 8, or 16 elements, the fixext family (fixext1, + fixext2, fixext4, fixext8) is used. For other sizes, the ext family (ext8, ext16, ext32) is used. The subtype is + then added as signed 8-bit integer. + - If no subtype is given, the bin family (bin8, bin16, bin32) is used. + +- BSON + - If a subtype is given, it is used and added as unsigned 8-bit integer. + - If no subtype is given, the generic binary subtype 0x00 is used. + +## Examples + +??? example + + The following code shows that `binary_t` is by default, a typedef to + `#!cpp nlohmann::byte_container_with_subtype>`. + + ```cpp + --8<-- "examples/binary_t.cpp" + ``` + + Output: + + ```json + --8<-- "examples/binary_t.output" + ``` + +## See also + +- [byte_container_with_subtype](../byte_container_with_subtype/index.md) + +## Version history + +- Added in version 3.8.0. Changed type of subtype to `std::uint64_t` in version 3.10.0. diff --git a/docs/mkdocs/docs/api/basic_json/boolean_t.md b/docs/mkdocs/docs/api/basic_json/boolean_t.md new file mode 100644 index 00000000..e3a78302 --- /dev/null +++ b/docs/mkdocs/docs/api/basic_json/boolean_t.md @@ -0,0 +1,42 @@ +# nlohmann::basic_json::boolean_t + +```cpp +using boolean_t = BooleanType; +``` + +The type used to store JSON booleans. + +[RFC 8259](https://tools.ietf.org/html/rfc8259) implicitly describes a boolean as a type which differentiates the two +literals `#!json true` and `#!json false`. + +To store objects in C++, a type is defined by the template parameter `BooleanType` which chooses the type to use. + +## Notes + +#### Default type + +With the default values for `BooleanType` (`#!cpp bool`), the default value for `boolean_t` is `#!cpp bool`. + +#### Storage + +Boolean values are stored directly inside a `basic_json` type. + +## Examples + +??? example + + The following code shows that `boolean_t` is by default, a typedef to `#!cpp bool`. + + ```cpp + --8<-- "examples/boolean_t.cpp" + ``` + + Output: + + ```json + --8<-- "examples/boolean_t.output" + ``` + +## Version history + +- Added in version 1.0.0. diff --git a/docs/mkdocs/docs/api/basic_json/cbegin.md b/docs/mkdocs/docs/api/basic_json/cbegin.md new file mode 100644 index 00000000..06504fee --- /dev/null +++ b/docs/mkdocs/docs/api/basic_json/cbegin.md @@ -0,0 +1,41 @@ +# nlohmann::basic_json::cbegin + +```cpp +const_iterator cbegin() const noexcept; +``` + +Returns an iterator to the first element. + +![Illustration from cppreference.com](../../images/range-begin-end.svg) + +## Return value + +iterator to the first element + +## Exception safety + +No-throw guarantee: this member function never throws exceptions. + +## Complexity + +Constant. + +## Examples + +??? example + + The following code shows an example for `cbegin()`. + + ```cpp + --8<-- "examples/cbegin.cpp" + ``` + + Output: + + ```json + --8<-- "examples/cbegin.output" + ``` + +## Version history + +- Added in version 1.0.0. diff --git a/docs/mkdocs/docs/api/basic_json/cbor_tag_handler_t.md b/docs/mkdocs/docs/api/basic_json/cbor_tag_handler_t.md new file mode 100644 index 00000000..e19c3edd --- /dev/null +++ b/docs/mkdocs/docs/api/basic_json/cbor_tag_handler_t.md @@ -0,0 +1,42 @@ +# nlohmann::basic_json::cbor_tag_handler_t + +```cpp +enum class cbor_tag_handler_t +{ + error, + ignore, + store +}; +``` + +This enumeration is used in the [`from_cbor`](from_cbor.md) function to choose how to treat tags: + +error +: throw a `parse_error` exception in case of a tag + +ignore +: ignore tags + +store +: store tagged values as binary container with subtype (for bytes 0xd8..0xdb) + +## Examples + +??? example + + The example below shows how the different values of the `cbor_tag_handler_t` influence the behavior of + [`from_cbor`](from_cbor.md) when reading a tagged byte string. + + ```cpp + --8<-- "examples/cbor_tag_handler_t.cpp" + ``` + + Output: + + ```json + --8<-- "examples/cbor_tag_handler_t.output" + ``` + +## Version history + +- Added in version 3.9.0. Added value `store` in 3.10.0. diff --git a/docs/mkdocs/docs/api/basic_json/cend.md b/docs/mkdocs/docs/api/basic_json/cend.md new file mode 100644 index 00000000..3f3aa949 --- /dev/null +++ b/docs/mkdocs/docs/api/basic_json/cend.md @@ -0,0 +1,41 @@ +# nlohmann::basic_json::cend + +```cpp +const_iterator cend() const noexcept; +``` + +Returns an iterator to one past the last element. + +![Illustration from cppreference.com](../../images/range-begin-end.svg) + +## Return value + +iterator one past the last element + +## Exception safety + +No-throw guarantee: this member function never throws exceptions. + +## Complexity + +Constant. + +## Examples + +??? example + + The following code shows an example for `cend()`. + + ```cpp + --8<-- "examples/cend.cpp" + ``` + + Output: + + ```json + --8<-- "examples/cend.output" + ``` + +## Version history + +- Added in version 1.0.0. diff --git a/docs/mkdocs/docs/api/basic_json/clear.md b/docs/mkdocs/docs/api/basic_json/clear.md new file mode 100644 index 00000000..ff04b08e --- /dev/null +++ b/docs/mkdocs/docs/api/basic_json/clear.md @@ -0,0 +1,58 @@ +# nlohmann::basic_json::clear + +```cpp +void clear() noexcept; +``` + +Clears the content of a JSON value and resets it to the default value as if [`basic_json(value_t)`](basic_json.md) would +have been called with the current value type from [`type()`](type.md): + +| Value type | initial value | +|------------|----------------------| +| null | `null` | +| boolean | `false` | +| string | `""` | +| number | `0` | +| binary | An empty byte vector | +| object | `{}` | +| array | `[]` | + +Has the same effect as calling + +```.cpp +*this = basic_json(type()); +``` + +## Exception safety + +No-throw guarantee: this function never throws exceptions. + +## Complexity + +Linear in the size of the JSON value. + +## Notes + +All iterators, pointers and references related to this container are invalidated. + +## Examples + +??? example + + The example below shows the effect of `clear()` to different + JSON types. + + ```cpp + --8<-- "examples/clear.cpp" + ``` + + Output: + + ```json + --8<-- "examples/clear.output" + ``` + +## Version history + +- Added in version 1.0.0. +- Added support for binary types in version 3.8.0. diff --git a/docs/mkdocs/docs/api/basic_json/contains.md b/docs/mkdocs/docs/api/basic_json/contains.md new file mode 100644 index 00000000..ba2c3df2 --- /dev/null +++ b/docs/mkdocs/docs/api/basic_json/contains.md @@ -0,0 +1,118 @@ +# nlohmann::basic_json::contains + +```cpp +// (1) +bool contains(const typename object_t::key_type& key) const; + +// (2) +template +bool contains(KeyType&& key) const; + +// (3) +bool contains(const json_pointer& ptr) const; +``` + +1. Check whether an element exists in a JSON object with a key equivalent to `key`. If the element is not found or the + JSON value is not an object, `#!cpp false` is returned. +2. See 1. This overload is only available if `KeyType` is comparable with `#!cpp typename object_t::key_type` and + `#!cpp typename object_comparator_t::is_transparent` denotes a type. +3. Check whether the given JSON pointer `ptr` can be resolved in the current JSON value. + +## Template parameters + +`KeyType` +: A type for an object key other than [`json_pointer`](../json_pointer/index.md) that is comparable with + [`string_t`](string_t.md) using [`object_comparator_t`](object_comparator_t.md). + This can also be a string view (C++17). + +## Parameters + +`key` (in) +: key value to check its existence. + +`ptr` (in) +: JSON pointer to check its existence. + +## Return value + +1. `#!cpp true` if an element with specified `key` exists. If no such element with such key is found or the JSON value + is not an object, `#!cpp false` is returned. +2. See 1. +3. `#!cpp true` if the JSON pointer can be resolved to a stored value, `#!cpp false` otherwise. + +## Exception safety + +Strong exception safety: if an exception occurs, the original value stays intact. + +## Exceptions + +1. The function does not throw exceptions. +2. The function does not throw exceptions. +3. The function can throw the following exceptions: + - Throws [`parse_error.106`](../../home/exceptions.md#jsonexceptionparse_error106) if an array index begins with + `0`. + - Throws [`parse_error.109`](../../home/exceptions.md#jsonexceptionparse_error109) if an array index was not a + number. + +## Complexity + +Logarithmic in the size of the JSON object. + +## Notes + +- This method always returns `#!cpp false` when executed on a JSON type that is not an object. +- This method can be executed on any JSON value type. + +!!! info "Postconditions" + + If `#!cpp j.contains(x)` returns `#!c true` for a key or JSON pointer `x`, then it is safe to call `j[x]`. + +## Examples + +??? example "Example: (1) check with key" + + The example shows how `contains()` is used. + + ```cpp + --8<-- "examples/contains__object_t_key_type.cpp" + ``` + + Output: + + ```json + --8<-- "examples/contains__object_t_key_type.output" + ``` + +??? example "Example: (2) check with key using string_view" + + The example shows how `contains()` is used. + + ```cpp + --8<-- "examples/contains__keytype.c++17.cpp" + ``` + + Output: + + ```json + --8<-- "examples/contains__keytype.c++17.output" + ``` + +??? example "Example: (3) check with JSON pointer" + + The example shows how `contains()` is used. + + ```cpp + --8<-- "examples/contains__json_pointer.cpp" + ``` + + Output: + + ```json + --8<-- "examples/contains__json_pointer.output" + ``` + +## Version history + +1. Added in version 3.11.0. +2. Added in version 3.6.0. Extended template `KeyType` to support comparable types in version 3.11.0. +3. Added in version 3.7.0. diff --git a/docs/mkdocs/docs/api/basic_json/count.md b/docs/mkdocs/docs/api/basic_json/count.md new file mode 100644 index 00000000..4f3a3105 --- /dev/null +++ b/docs/mkdocs/docs/api/basic_json/count.md @@ -0,0 +1,78 @@ +# nlohmann::basic_json::count + +```cpp +// (1) +size_type count(const typename object_t::key_type& key) const; + +// (2) +template +size_type count(KeyType&& key) const; +``` + +1. Returns the number of elements with key `key`. If `ObjectType` is the default `std::map` type, the return value will + always be `0` (`key` was not found) or `1` (`key` was found). +2. See 1. This overload is only available if `KeyType` is comparable with `#!cpp typename object_t::key_type` and + `#!cpp typename object_comparator_t::is_transparent` denotes a type. + +## Template parameters + +`KeyType` +: A type for an object key other than [`json_pointer`](../json_pointer/index.md) that is comparable with + [`string_t`](string_t.md) using [`object_comparator_t`](object_comparator_t.md). + This can also be a string view (C++17). + +## Parameters + +`key` (in) +: key value of the element to count. + +## Return value + +Number of elements with key `key`. If the JSON value is not an object, the return value will be `0`. + +## Exception safety + +Strong exception safety: if an exception occurs, the original value stays intact. + +## Complexity + +Logarithmic in the size of the JSON object. + +## Notes + +This method always returns `0` when executed on a JSON type that is not an object. + +## Examples + +??? example "Example: (1) count number of elements" + + The example shows how `count()` is used. + + ```cpp + --8<-- "examples/count__object_t_key_type.cpp" + ``` + + Output: + + ```json + --8<-- "examples/count__object_t_key_type.output" + ``` + +??? example "Example: (2) count number of elements using string_view" + + The example shows how `count()` is used. + + ```cpp + --8<-- "examples/count__keytype.c++17.cpp" + ``` + + Output: + + ```json + --8<-- "examples/count__keytype.c++17.output" + ``` + +## Version history + +1. Added in version 3.11.0. +2. Added in version 1.0.0. Changed parameter `key` type to `KeyType&&` in version 3.11.0. diff --git a/docs/mkdocs/docs/api/basic_json/crbegin.md b/docs/mkdocs/docs/api/basic_json/crbegin.md new file mode 100644 index 00000000..7af5ecae --- /dev/null +++ b/docs/mkdocs/docs/api/basic_json/crbegin.md @@ -0,0 +1,41 @@ +# nlohmann::basic_json::crbegin + +```cpp +const_reverse_iterator crbegin() const noexcept; +``` + +Returns an iterator to the reverse-beginning; that is, the last element. + +![Illustration from cppreference.com](../../images/range-rbegin-rend.svg) + +## Return value + +reverse iterator to the first element + +## Exception safety + +No-throw guarantee: this member function never throws exceptions. + +## Complexity + +Constant. + +## Examples + +??? example + + The following code shows an example for `crbegin()`. + + ```cpp + --8<-- "examples/crbegin.cpp" + ``` + + Output: + + ```json + --8<-- "examples/crbegin.output" + ``` + +## Version history + +- Added in version 1.0.0. diff --git a/docs/mkdocs/docs/api/basic_json/crend.md b/docs/mkdocs/docs/api/basic_json/crend.md new file mode 100644 index 00000000..0e6bc847 --- /dev/null +++ b/docs/mkdocs/docs/api/basic_json/crend.md @@ -0,0 +1,42 @@ +# nlohmann::basic_json::crend + +```cpp +const_reverse_iterator crend() const noexcept; +``` + +Returns an iterator to the reverse-end; that is, one before the first element. This element acts as a placeholder, +attempting to access it results in undefined behavior. + +![Illustration from cppreference.com](../../images/range-rbegin-rend.svg) + +## Return value + +reverse iterator to the element following the last element + +## Exception safety + +No-throw guarantee: this member function never throws exceptions. + +## Complexity + +Constant. + +## Examples + +??? example + + The following code shows an example for `eend()`. + + ```cpp + --8<-- "examples/crend.cpp" + ``` + + Output: + + ```json + --8<-- "examples/crend.output" + ``` + +## Version history + +- Added in version 1.0.0. diff --git a/docs/mkdocs/docs/api/basic_json/default_object_comparator_t.md b/docs/mkdocs/docs/api/basic_json/default_object_comparator_t.md new file mode 100644 index 00000000..8a237f66 --- /dev/null +++ b/docs/mkdocs/docs/api/basic_json/default_object_comparator_t.md @@ -0,0 +1,35 @@ +# nlohmann::basic_json::default_object_comparator_t + +```cpp +using default_object_comparator_t = std::less; // until C++14 + +using default_object_comparator_t = std::less<>; // since C++14 +``` + +The default comparator used by [`object_t`](object_t.md). + +Since C++14 a transparent comparator is used which prevents unnecessary string construction +when looking up a key in an object. + +The actual comparator used depends on [`object_t`](object_t.md) and can be obtained via +[`object_comparator_t`](object_comparator_t.md). + +## Examples + +??? example + + The example below demonstrates the default comparator. + + ```cpp + --8<-- "examples/default_object_comparator_t.cpp" + ``` + + Output: + + ```json + --8<-- "examples/default_object_comparator_t.output" + ``` + +## Version history + +- Added in version 3.11.0. diff --git a/docs/mkdocs/docs/api/basic_json/diff.md b/docs/mkdocs/docs/api/basic_json/diff.md new file mode 100644 index 00000000..4e840684 --- /dev/null +++ b/docs/mkdocs/docs/api/basic_json/diff.md @@ -0,0 +1,62 @@ +# nlohmann::basic_json::diff + +```cpp +static basic_json diff(const basic_json& source, + const basic_json& target); +``` + +Creates a [JSON Patch](http://jsonpatch.com) so that value `source` can be changed into the value `target` by calling +[`patch`](patch.md) function. + +For two JSON values `source` and `target`, the following code yields always `#!cpp true`: +```cpp +source.patch(diff(source, target)) == target; +``` + +## Parameters + +`source` (in) +: JSON value to compare from + +`target` (in) +: JSON value to compare against + +## Return value + +a JSON patch to convert the `source` to `target` + +## Exception safety + +Strong guarantee: if an exception is thrown, there are no changes in the JSON value. + +## Complexity + +Linear in the lengths of `source` and `target`. + +## Notes + +Currently, only `remove`, `add`, and `replace` operations are generated. + +## Examples + +??? example + + The following code shows how a JSON patch is created as a diff for two JSON values. + + ```cpp + --8<-- "examples/diff.cpp" + ``` + + Output: + + ```json + --8<-- "examples/diff.output" + ``` + +## See also + +- [RFC 6902 (JSON Patch)](https://tools.ietf.org/html/rfc6902) + +## Version history + +- Added in version 2.0.0. diff --git a/docs/mkdocs/docs/api/basic_json/dump.md b/docs/mkdocs/docs/api/basic_json/dump.md new file mode 100644 index 00000000..41adb154 --- /dev/null +++ b/docs/mkdocs/docs/api/basic_json/dump.md @@ -0,0 +1,79 @@ +# nlohmann::basic_json::dump + +```cpp +string_t dump(const int indent = -1, + const char indent_char = ' ', + const bool ensure_ascii = false, + const error_handler_t error_handler = error_handler_t::strict) const; +``` + +Serialization function for JSON values. The function tries to mimic Python's +[`json.dumps()` function](https://docs.python.org/2/library/json.html#json.dump), and currently supports its `indent` +and `ensure_ascii` parameters. + +## Parameters + +`indent` (in) +: If `indent` is nonnegative, then array elements and object members will be pretty-printed with that indent level. An + indent level of `0` will only insert newlines. `-1` (the default) selects the most compact representation. + +`indent_char` (in) +: The character to use for indentation if `indent` is greater than `0`. The default is ` ` (space). + +`ensure_ascii` (in) +: If `ensure_ascii` is true, all non-ASCII characters in the output are escaped with `\uXXXX` sequences, and the + result consists of ASCII characters only. + +`error_handler` (in) +: how to react on decoding errors; there are three possible values (see [`error_handler_t`](error_handler_t.md): + `strict` (throws and exception in case a decoding error occurs; default), `replace` (replace invalid UTF-8 sequences + with U+FFFD), and `ignore` (ignore invalid UTF-8 sequences during serialization; all bytes are copied to the output + unchanged)). + +## Return value + +string containing the serialization of the JSON value + +## Exception safety + +Strong guarantee: if an exception is thrown, there are no changes to any JSON value. + +## Exceptions + +Throws [`type_error.316`](../../home/exceptions.md#jsonexceptiontype_error316) if a string stored inside the JSON value +is not UTF-8 encoded and `error_handler` is set to `strict` + +## Complexity + +Linear. + +## Notes + +Binary values are serialized as object containing two keys: + +- "bytes": an array of bytes as integers +- "subtype": the subtype as integer or `#!json null` if the binary has no subtype + +## Examples + +??? example + + The following example shows the effect of different `indent`, `indent_char`, and `ensure_ascii` parameters to the + result of the serialization. + + ```cpp + --8<-- "examples/dump.cpp" + ``` + + Output: + + ```json + --8<-- "examples/dump.output" + ``` + +## Version history + +- Added in version 1.0.0. +- Indentation character `indent_char`, option `ensure_ascii` and exceptions added in version 3.0.0. +- Error handlers added in version 3.4.0. +- Serialization of binary values added in version 3.8.0. diff --git a/docs/mkdocs/docs/api/basic_json/emplace.md b/docs/mkdocs/docs/api/basic_json/emplace.md new file mode 100644 index 00000000..6cc2c98d --- /dev/null +++ b/docs/mkdocs/docs/api/basic_json/emplace.md @@ -0,0 +1,56 @@ +# nlohmann::basic_json::emplace + +```cpp +template +std::pair emplace(Args&& ... args); +``` + +Inserts a new element into a JSON object constructed in-place with the given `args` if there is no element with the key +in the container. If the function is called on a JSON null value, an empty object is created before appending the value +created from `args`. + +## Template parameters + +`Args` +: compatible types to create a `basic_json` object + +## Parameters + +`args` (in) +: arguments to forward to a constructor of `basic_json` + +## Return value + +a pair consisting of an iterator to the inserted element, or the already-existing element if no insertion happened, and +a `#!cpp bool` denoting whether the insertion took place. + +## Exceptions + +Throws [`type_error.311`](../../home/exceptions.md#jsonexceptiontype_error311) when called on a type other than JSON +object or `#!json null`; example: `"cannot use emplace() with number"` + +## Complexity + +Logarithmic in the size of the container, O(log(`size()`)). + +## Examples + +??? example + + The example shows how `emplace()` can be used to add elements to a JSON object. Note how the `#!json null` value was + silently converted to a JSON object. Further note how no value is added if there was already one value stored with + the same key. + + ```cpp + --8<-- "examples/emplace.cpp" + ``` + + Output: + + ```json + --8<-- "examples/emplace.output" + ``` + +## Version history + +- Since version 2.0.8. diff --git a/docs/mkdocs/docs/api/basic_json/emplace_back.md b/docs/mkdocs/docs/api/basic_json/emplace_back.md new file mode 100644 index 00000000..597ad41e --- /dev/null +++ b/docs/mkdocs/docs/api/basic_json/emplace_back.md @@ -0,0 +1,54 @@ +# nlohmann::basic_json::emplace_back + +```cpp +template +reference emplace_back(Args&& ... args); +``` + +Creates a JSON value from the passed parameters `args` to the end of the JSON value. If the function is called on a JSON +`#!json null` value, an empty array is created before appending the value created from `args`. + +## Template parameters + +`Args` +: compatible types to create a `basic_json` object + +## Parameters + +`args` (in) +: arguments to forward to a constructor of `basic_json` + +## Return value + +reference to the inserted element + +## Exceptions + +Throws [`type_error.311`](../../home/exceptions.md#jsonexceptiontype_error311) when called on a type other than JSON +array or `#!json null`; example: `"cannot use emplace_back() with number"` + +## Complexity + +Amortized constant. + +## Examples + +??? example + + The example shows how `emplace_back()` can be used to add elements to a JSON array. Note how the `null` value was + silently converted to a JSON array. + + ```cpp + --8<-- "examples/emplace_back.cpp" + ``` + + Output: + + ```json + --8<-- "examples/emplace_back.output" + ``` + +## Version history + +- Since version 2.0.8. +- Returns reference since 3.7.0. diff --git a/docs/mkdocs/docs/api/basic_json/empty.md b/docs/mkdocs/docs/api/basic_json/empty.md new file mode 100644 index 00000000..26bf6e9a --- /dev/null +++ b/docs/mkdocs/docs/api/basic_json/empty.md @@ -0,0 +1,66 @@ +# nlohmann::basic_json::empty + +```cpp +bool empty() const noexcept; +``` + +Checks if a JSON value has no elements (i.e. whether its [`size()`](size.md) is `0`). + +## Return value + +The return value depends on the different types and is defined as follows: + +| Value type | return value | +|------------|----------------------------------------| +| null | `#!cpp true` | +| boolean | `#!cpp false` | +| string | `#!cpp false` | +| number | `#!cpp false` | +| binary | `#!cpp false` | +| object | result of function `object_t::empty()` | +| array | result of function `array_t::empty()` | + +## Exception safety + +No-throw guarantee: this function never throws exceptions. + +## Complexity + +Constant, as long as [`array_t`](array_t.md) and [`object_t`](object_t.md) satisfy the +[Container](https://en.cppreference.com/w/cpp/named_req/Container) concept; that is, their `empty()` functions have +constant complexity. + +## Possible implementation + +```cpp +bool empty() const noexcept +{ + return size() == 0; +} +``` + +## Notes + +This function does not return whether a string stored as JSON value is empty -- it returns whether the JSON container +itself is empty which is `#!cpp false` in the case of a string. + +## Examples + +??? example + + The following code uses `empty()` to check if a JSON object contains any elements. + + ```cpp + --8<-- "examples/empty.cpp" + ``` + + Output: + + ```json + --8<-- "examples/empty.output" + ``` + +## Version history + +- Added in version 1.0.0. +- Extended to return `#!cpp false` for binary types in version 3.8.0. diff --git a/docs/mkdocs/docs/api/basic_json/end.md b/docs/mkdocs/docs/api/basic_json/end.md new file mode 100644 index 00000000..179ce9e6 --- /dev/null +++ b/docs/mkdocs/docs/api/basic_json/end.md @@ -0,0 +1,42 @@ +# nlohmann::basic_json::end + +```cpp +iterator end() noexcept; +const_iterator end() const noexcept; +``` + +Returns an iterator to one past the last element. + +![Illustration from cppreference.com](../../images/range-begin-end.svg) + +## Return value + +iterator one past the last element + +## Exception safety + +No-throw guarantee: this member function never throws exceptions. + +## Complexity + +Constant. + +## Examples + +??? example + + The following code shows an example for `end()`. + + ```cpp + --8<-- "examples/end.cpp" + ``` + + Output: + + ```json + --8<-- "examples/end.output" + ``` + +## Version history + +- Added in version 1.0.0. diff --git a/docs/mkdocs/docs/api/basic_json/erase.md b/docs/mkdocs/docs/api/basic_json/erase.md new file mode 100644 index 00000000..1187995b --- /dev/null +++ b/docs/mkdocs/docs/api/basic_json/erase.md @@ -0,0 +1,211 @@ +# nlohmann::basic_json::erase + +```cpp +// (1) +iterator erase(iterator pos); +const_iterator erase(const_iterator pos); + +// (2) +iterator erase(iterator first, iterator last); +const_iterator erase(const_iterator first, const_iterator last); + +// (3) +size_type erase(const typename object_t::key_type& key); + +// (4) +template +size_type erase(KeyType&& key); + +// (5) +void erase(const size_type idx); +``` + +1. Removes an element from a JSON value specified by iterator `pos`. The iterator `pos` must be valid and + dereferenceable. Thus, the `end()` iterator (which is valid, but is not dereferenceable) cannot be used as a value for + `pos`. + + If called on a primitive type other than `#!json null`, the resulting JSON value will be `#!json null`. + +2. Remove an element range specified by `[first; last)` from a JSON value. The iterator `first` does not need to be + dereferenceable if `first == last`: erasing an empty range is a no-op. + + If called on a primitive type other than `#!json null`, the resulting JSON value will be `#!json null`. + +3. Removes an element from a JSON object by key. + +4. See 3. This overload is only available if `KeyType` is comparable with `#!cpp typename object_t::key_type` and + `#!cpp typename object_comparator_t::is_transparent` denotes a type. + +5. Removes an element from a JSON array by index. + +## Template parameters + +`KeyType` +: A type for an object key other than [`json_pointer`](../json_pointer/index.md) that is comparable with + [`string_t`](string_t.md) using [`object_comparator_t`](object_comparator_t.md). + This can also be a string view (C++17). + +## Parameters + +`pos` (in) +: iterator to the element to remove + +`first` (in) +: iterator to the beginning of the range to remove + +`last` (in) +: iterator past the end of the range to remove + +`key` (in) +: object key of the elements to remove + +`idx` (in) +: array index of the element to remove + +## Return value + +1. Iterator following the last removed element. If the iterator `pos` refers to the last element, the `end()` iterator + is returned. +2. Iterator following the last removed element. If the iterator `last` refers to the last element, the `end()` iterator + is returned. +3. Number of elements removed. If `ObjectType` is the default `std::map` type, the return value will always be `0` + (`key` was not found) or `1` (`key` was found). +4. See 3. +5. (none) + +## Exception safety + +Strong exception safety: if an exception occurs, the original value stays intact. + +## Exceptions + +1. The function can throw the following exceptions: + - Throws [`type_error.307`](../../home/exceptions.md#jsonexceptiontype_error307) if called on a `null` value; + example: `"cannot use erase() with null"` + - Throws [`invalid_iterator.202`](../../home/exceptions.md#jsonexceptioninvalid_iterator202) if called on an + iterator which does not belong to the current JSON value; example: `"iterator does not fit current value"` + - Throws [`invalid_iterator.205`](../../home/exceptions.md#jsonexceptioninvalid_iterator205) if called on a + primitive type with invalid iterator (i.e., any iterator which is not `begin()`); example: `"iterator out of + range"` +2. The function can throw the following exceptions: + - Throws [`type_error.307`](../../home/exceptions.md#jsonexceptiontype_error307) if called on a `null` value; + example: `"cannot use erase() with null"` + - Throws [`invalid_iterator.203`](../../home/exceptions.md#jsonexceptioninvalid_iterator203) if called on iterators + which does not belong to the current JSON value; example: `"iterators do not fit current value"` + - Throws [`invalid_iterator.204`](../../home/exceptions.md#jsonexceptioninvalid_iterator204) if called on a + primitive type with invalid iterators (i.e., if `first != begin()` and `last != end()`); example: `"iterators out + of range"` +3. The function can throw the following exceptions: + - Throws [`type_error.307`](../../home/exceptions.md#jsonexceptiontype_error307) when called on a type other than + JSON object; example: `"cannot use erase() with null"` +4. See 3. +5. The function can throw the following exceptions: + - Throws [`type_error.307`](../../home/exceptions.md#jsonexceptiontype_error307) when called on a type other than + JSON object; example: `"cannot use erase() with null"` + - Throws [`out_of_range.401`](../../home/exceptions.md#jsonexceptionout_of_range401) when `idx >= size()`; example: + `"array index 17 is out of range"` + +## Complexity + +1. The complexity depends on the type: + - objects: amortized constant + - arrays: linear in distance between `pos` and the end of the container + - strings and binary: linear in the length of the member + - other types: constant +2. The complexity depends on the type: + - objects: `log(size()) + std::distance(first, last)` + - arrays: linear in the distance between `first` and `last`, plus linear + in the distance between `last` and end of the container + - strings and binary: linear in the length of the member + - other types: constant +3. `log(size()) + count(key)` +4. `log(size()) + count(key)` +5. Linear in distance between `idx` and the end of the container. + +## Notes + +1. Invalidates iterators and references at or after the point of the `erase`, including the `end()` iterator. +2. (none) +3. References and iterators to the erased elements are invalidated. Other references and iterators are not affected. +4. See 3. +5. (none) + +## Examples + +??? example "Example: (1) remove element given an iterator" + + The example shows the effect of `erase()` for different JSON types using an iterator. + + ```cpp + --8<-- "examples/erase__IteratorType.cpp" + ``` + + Output: + + ```json + --8<-- "examples/erase__IteratorType.output" + ``` + +??? example "Example: (2) remove elements given an iterator range" + + The example shows the effect of `erase()` for different JSON types using an iterator range. + + ```cpp + --8<-- "examples/erase__IteratorType_IteratorType.cpp" + ``` + + Output: + + ```json + --8<-- "examples/erase__IteratorType_IteratorType.output" + ``` + +??? example "Example: (3) remove element from a JSON object given a key" + + The example shows the effect of `erase()` for different JSON types using an object key. + + ```cpp + --8<-- "examples/erase__object_t_key_type.cpp" + ``` + + Output: + + ```json + --8<-- "examples/erase__object_t_key_type.output" + ``` + +??? example "Example: (4) remove element from a JSON object given a key using string_view" + + The example shows the effect of `erase()` for different JSON types using an object key. + + ```cpp + --8<-- "examples/erase__keytype.c++17.cpp" + ``` + + Output: + + ```json + --8<-- "examples/erase__keytype.c++17.output" + ``` + +??? example "Example: (5) remove element from a JSON array given an index" + + The example shows the effect of `erase()` using an array index. + + ```cpp + --8<-- "examples/erase__size_type.cpp" + ``` + + Output: + + ```json + --8<-- "examples/erase__size_type.output" + ``` + +## Version history + +1. Added in version 1.0.0. Added support for binary types in version 3.8.0. +2. Added in version 1.0.0. Added support for binary types in version 3.8.0. +3. Added in version 1.0.0. +4. Added in version 3.11.0. +5. Added in version 1.0.0. diff --git a/docs/mkdocs/docs/api/basic_json/error_handler_t.md b/docs/mkdocs/docs/api/basic_json/error_handler_t.md new file mode 100644 index 00000000..dc32ced9 --- /dev/null +++ b/docs/mkdocs/docs/api/basic_json/error_handler_t.md @@ -0,0 +1,42 @@ +# nlohmann::basic_json::error_handler_t + +```cpp +enum class error_handler_t { + strict, + replace, + ignore +}; +``` + +This enumeration is used in the [`dump`](dump.md) function to choose how to treat decoding errors while serializing a +`basic_json` value. Three values are differentiated: + +strict +: throw a `type_error` exception in case of invalid UTF-8 + +replace +: replace invalid UTF-8 sequences with U+FFFD (� REPLACEMENT CHARACTER) + +ignore +: ignore invalid UTF-8 sequences; all bytes are copied to the output unchanged + +## Examples + +??? example + + The example below shows how the different values of the `error_handler_t` influence the behavior of + [`dump`](dump.md) when reading serializing an invalid UTF-8 sequence. + + ```cpp + --8<-- "examples/error_handler_t.cpp" + ``` + + Output: + + ```json + --8<-- "examples/error_handler_t.output" + ``` + +## Version history + +- Added in version 3.4.0. diff --git a/docs/mkdocs/docs/api/basic_json/exception.md b/docs/mkdocs/docs/api/basic_json/exception.md new file mode 100644 index 00000000..794b7d1e --- /dev/null +++ b/docs/mkdocs/docs/api/basic_json/exception.md @@ -0,0 +1,75 @@ +# nlohmann::basic_json::exception + +```cpp +class exception : public std::exception; +``` + +This class is an extension of [`std::exception`](https://en.cppreference.com/w/cpp/error/exception) objects with a +member `id` for exception ids. It is used as the base class for all exceptions thrown by the `basic_json` class. This +class can hence be used as "wildcard" to catch exceptions, see example below. + +```plantuml +std::exception <|-- basic_json::exception +basic_json::exception <|-- basic_json::parse_error +basic_json::exception <|-- basic_json::invalid_iterator +basic_json::exception <|-- basic_json::type_error +basic_json::exception <|-- basic_json::out_of_range +basic_json::exception <|-- basic_json::other_error + +interface std::exception {} + +class basic_json::exception #FFFF00 { + + const int id + + const char* what() const +} + +class basic_json::parse_error { + + const std::size_t byte +} +``` + +Subclasses: + +- [`parse_error`](parse_error.md) for exceptions indicating a parse error +- [`invalid_iterator`](invalid_iterator.md) for exceptions indicating errors with iterators +- [`type_error`](type_error.md) for exceptions indicating executing a member function with a wrong type +- [`out_of_range`](out_of_range.md) for exceptions indicating access out of the defined range +- [`other_error`](other_error.md) for exceptions indicating other library errors + +## Member functions + +- **what** - returns explanatory string + +## Member variables + +- **id** - the id of the exception + +## Notes + +To have nothrow-copy-constructible exceptions, we internally use `std::runtime_error` which can cope with +arbitrary-length error messages. Intermediate strings are built with static functions and then passed to the actual +constructor. + +## Examples + +??? example + + The following code shows how arbitrary library exceptions can be caught. + + ```cpp + --8<-- "examples/exception.cpp" + ``` + + Output: + + ```json + --8<-- "examples/exception.output" + ``` + +## See also + +[List of exceptions](../../home/exceptions.md) + +## Version history + +- Since version 3.0.0. diff --git a/docs/mkdocs/docs/api/basic_json/find.md b/docs/mkdocs/docs/api/basic_json/find.md new file mode 100644 index 00000000..c6435071 --- /dev/null +++ b/docs/mkdocs/docs/api/basic_json/find.md @@ -0,0 +1,86 @@ +# nlohmann::basic_json::find + +```cpp +// (1) +iterator find(const typename object_t::key_type& key); +const_iterator find(const typename object_t::key_type& key) const; + +// (2) +template +iterator find(KeyType&& key); +template +const_iterator find(KeyType&& key) const; +``` + +1. Finds an element in a JSON object with a key equivalent to `key`. If the element is not found or the + JSON value is not an object, `end()` is returned. +2. See 1. This overload is only available if `KeyType` is comparable with `#!cpp typename object_t::key_type` and + `#!cpp typename object_comparator_t::is_transparent` denotes a type. + +## Template parameters + +`KeyType` +: A type for an object key other than [`json_pointer`](../json_pointer/index.md) that is comparable with + [`string_t`](string_t.md) using [`object_comparator_t`](object_comparator_t.md). + This can also be a string view (C++17). + +## Parameters + +`key` (in) +: key value of the element to search for. + +## Return value + +Iterator to an element with a key equivalent to `key`. If no such element is found or the JSON value is not an object, +a past-the-end iterator (see `end()`) is returned. + +## Exception safety + +Strong exception safety: if an exception occurs, the original value stays intact. + +## Complexity + +Logarithmic in the size of the JSON object. + +## Notes + +This method always returns `end()` when executed on a JSON type that is not an object. + +## Examples + +??? example "Example: (1) find object element by key" + + The example shows how `find()` is used. + + ```cpp + --8<-- "examples/find__object_t_key_type.cpp" + ``` + + Output: + + ```json + --8<-- "examples/find__object_t_key_type.output" + ``` + +??? example "Example: (2) find object element by key using string_view" + + The example shows how `find()` is used. + + ```cpp + --8<-- "examples/find__keytype.c++17.cpp" + ``` + + Output: + + ```json + --8<-- "examples/find__keytype.c++17.output" + ``` + +## See also + +- [contains](contains.md) checks whether a key exists + +## Version history + +1. Added in version 3.11.0. +2. Added in version 1.0.0. Changed to support comparable types in version 3.11.0. diff --git a/docs/mkdocs/docs/api/basic_json/flatten.md b/docs/mkdocs/docs/api/basic_json/flatten.md new file mode 100644 index 00000000..8703e86d --- /dev/null +++ b/docs/mkdocs/docs/api/basic_json/flatten.md @@ -0,0 +1,50 @@ +# nlohmann::basic_json::flatten + +```cpp +basic_json flatten() const; +``` + +The function creates a JSON object whose keys are JSON pointers (see [RFC 6901](https://tools.ietf.org/html/rfc6901)) +and whose values are all primitive (see [`is_primitive()`](is_primitive.md) for more information). The original JSON +value can be restored using the [`unflatten()`](unflatten.md) function. + +## Return value + +an object that maps JSON pointers to primitive values + +## Exception safety + +Strong exception safety: if an exception occurs, the original value stays intact. + +## Complexity + +Linear in the size the JSON value. + +## Notes + +Empty objects and arrays are flattened to `#!json null` and will not be reconstructed correctly by the +[`unflatten()`](unflatten.md) function. + +## Examples + +??? example + + The following code shows how a JSON object is flattened to an object whose keys consist of JSON pointers. + + ```cpp + --8<-- "examples/flatten.cpp" + ``` + + Output: + + ```json + --8<-- "examples/flatten.output" + ``` + +## See also + +- [unflatten](unflatten.md) the reverse function + +## Version history + +- Added in version 2.0.0. diff --git a/docs/mkdocs/docs/api/basic_json/from_bjdata.md b/docs/mkdocs/docs/api/basic_json/from_bjdata.md new file mode 100644 index 00000000..3c5eeb35 --- /dev/null +++ b/docs/mkdocs/docs/api/basic_json/from_bjdata.md @@ -0,0 +1,93 @@ +# nlohmann::basic_json::from_bjdata + +```cpp +// (1) +template +static basic_json from_bjdata(InputType&& i, + const bool strict = true, + const bool allow_exceptions = true); +// (2) +template +static basic_json from_bjdata(IteratorType first, IteratorType last, + const bool strict = true, + const bool allow_exceptions = true); +``` + +Deserializes a given input to a JSON value using the BJData (Binary JData) serialization format. + +1. Reads from a compatible input. +2. Reads from an iterator range. + +The exact mapping and its limitations is described on a [dedicated page](../../features/binary_formats/bjdata.md). + +## Template parameters + +`InputType` +: A compatible input, for instance: + + - an `std::istream` object + - a `FILE` pointer + - a C-style array of characters + - a pointer to a null-terminated string of single byte characters + - an object `obj` for which `begin(obj)` and `end(obj)` produces a valid pair of iterators. + +`IteratorType` +: a compatible iterator type + +## Parameters + +`i` (in) +: an input in BJData format convertible to an input adapter + +`first` (in) +: iterator to start of the input + +`last` (in) +: iterator to end of the input + +`strict` (in) +: whether to expect the input to be consumed until EOF (`#!cpp true` by default) + +`allow_exceptions` (in) +: whether to throw exceptions in case of a parse error (optional, `#!cpp true` by default) + +## Return value + +deserialized JSON value; in case of a parse error and `allow_exceptions` set to `#!cpp false`, the return value will be +`value_t::discarded`. The latter can be checked with [`is_discarded`](is_discarded.md). + +## Exception safety + +Strong guarantee: if an exception is thrown, there are no changes in the JSON value. + +## Exceptions + +- Throws [parse_error.110](../../home/exceptions.md#jsonexceptionparse_error110) if the given input ends prematurely or + the end of file was not reached when `strict` was set to true +- Throws [parse_error.112](../../home/exceptions.md#jsonexceptionparse_error112) if a parse error occurs +- Throws [parse_error.113](../../home/exceptions.md#jsonexceptionparse_error113) if a string could not be parsed + successfully + +## Complexity + +Linear in the size of the input. + +## Examples + +??? example + + The example shows the deserialization of a byte vector in BJData format to a JSON value. + + ```cpp + --8<-- "examples/from_bjdata.cpp" + ``` + + Output: + + ```json + --8<-- "examples/from_bjdata.output" + ``` + +## Version history + +- Added in version 3.11.0. diff --git a/docs/mkdocs/docs/api/basic_json/from_bson.md b/docs/mkdocs/docs/api/basic_json/from_bson.md new file mode 100644 index 00000000..77549370 --- /dev/null +++ b/docs/mkdocs/docs/api/basic_json/from_bson.md @@ -0,0 +1,110 @@ +# nlohmann::basic_json::from_bson + +```cpp +// (1) +template +static basic_json from_bson(InputType&& i, + const bool strict = true, + const bool allow_exceptions = true); +// (2) +template +static basic_json from_bson(IteratorType first, IteratorType last, + const bool strict = true, + const bool allow_exceptions = true); +``` + +Deserializes a given input to a JSON value using the BSON (Binary JSON) serialization format. + +1. Reads from a compatible input. +2. Reads from an iterator range. + +The exact mapping and its limitations is described on a [dedicated page](../../features/binary_formats/bson.md). + +## Template parameters + +`InputType` +: A compatible input, for instance: + + - an `std::istream` object + - a `FILE` pointer + - a C-style array of characters + - a pointer to a null-terminated string of single byte characters + - an object `obj` for which `begin(obj)` and `end(obj)` produces a valid pair of iterators. + +`IteratorType` +: a compatible iterator type + +## Parameters + +`i` (in) +: an input in BSON format convertible to an input adapter + +`first` (in) +: iterator to start of the input + +`last` (in) +: iterator to end of the input + +`strict` (in) +: whether to expect the input to be consumed until EOF (`#!cpp true` by default) + +`allow_exceptions` (in) +: whether to throw exceptions in case of a parse error (optional, `#!cpp true` by default) + +## Return value + +deserialized JSON value; in case of a parse error and `allow_exceptions` set to `#!cpp false`, the return value will be +`value_t::discarded`. The latter can be checked with [`is_discarded`](is_discarded.md). + +## Exception safety + +Strong guarantee: if an exception is thrown, there are no changes in the JSON value. + +## Exceptions + +Throws [`parse_error.114`](../../home/exceptions.md#jsonexceptionparse_error114) if an unsupported BSON record type is +encountered. + +## Complexity + +Linear in the size of the input. + +## Examples + +??? example + + The example shows the deserialization of a byte vector in BSON format to a JSON value. + + ```cpp + --8<-- "examples/from_bson.cpp" + ``` + + Output: + + ```json + --8<-- "examples/from_bson.output" + ``` + +## See also + +- [BSON specification](http://bsonspec.org/spec.html) +- [to_bson](to_bson.md) for the analogous serialization +- [from_cbor](from_cbor.md) for the related CBOR format +- [from_msgpack](from_msgpack.md) for the related MessagePack format +- [from_ubjson](from_ubjson.md) for the related UBJSON format + +## Version history + +- Added in version 3.4.0. + +!!! warning "Deprecation" + + - Overload (2) replaces calls to `from_bson` with a pointer and a length as first two parameters, which has been + deprecated in version 3.8.0. This overload will be removed in version 4.0.0. Please replace all calls like + `#!cpp from_bson(ptr, len, ...);` with `#!cpp from_bson(ptr, ptr+len, ...);`. + - Overload (2) replaces calls to `from_bson` with a pair of iterators as their first parameter, which has been + deprecated in version 3.8.0. This overload will be removed in version 4.0.0. Please replace all calls like + `#!cpp from_bson({ptr, ptr+len}, ...);` with `#!cpp from_bson(ptr, ptr+len, ...);`. + + You should be warned by your compiler with a `-Wdeprecated-declarations` warning if you are using a deprecated + function. diff --git a/docs/mkdocs/docs/api/basic_json/from_cbor.md b/docs/mkdocs/docs/api/basic_json/from_cbor.md new file mode 100644 index 00000000..3aa57b9e --- /dev/null +++ b/docs/mkdocs/docs/api/basic_json/from_cbor.md @@ -0,0 +1,117 @@ +# nlohmann::basic_json::from_cbor + +```cpp +// (1) +template +static basic_json from_cbor(InputType&& i, + const bool strict = true, + const bool allow_exceptions = true, + const cbor_tag_handler_t tag_handler = cbor_tag_handler_t::error); + +// (2) +template +static basic_json from_cbor(IteratorType first, IteratorType last, + const bool strict = true, + const bool allow_exceptions = true, + const cbor_tag_handler_t tag_handler = cbor_tag_handler_t::error); +``` + +Deserializes a given input to a JSON value using the CBOR (Concise Binary Object Representation) serialization format. + +1. Reads from a compatible input. +2. Reads from an iterator range. + +The exact mapping and its limitations is described on a [dedicated page](../../features/binary_formats/cbor.md). + +## Template parameters + +`InputType` +: A compatible input, for instance: + + - an `std::istream` object + - a `FILE` pointer + - a C-style array of characters + - a pointer to a null-terminated string of single byte characters + - an object `obj` for which `begin(obj)` and `end(obj)` produces a valid pair of iterators. + +`IteratorType` +: a compatible iterator type + +## Parameters + +`i` (in) +: an input in CBOR format convertible to an input adapter + +`first` (in) +: iterator to start of the input + +`last` (in) +: iterator to end of the input + +`strict` (in) +: whether to expect the input to be consumed until EOF (`#!cpp true` by default) + +`allow_exceptions` (in) +: whether to throw exceptions in case of a parse error (optional, `#!cpp true` by default) + +`tag_handler` (in) +: how to treat CBOR tags (optional, `error` by default); see [`cbor_tag_handler_t`](cbor_tag_handler_t.md) for more + information + +## Return value + +deserialized JSON value; in case of a parse error and `allow_exceptions` set to `#!cpp false`, the return value will be +`value_t::discarded`. The latter can be checked with [`is_discarded`](is_discarded.md). + +## Exception safety + +Strong guarantee: if an exception is thrown, there are no changes in the JSON value. + +## Exceptions + +- Throws [parse_error.110](../../home/exceptions.md#jsonexceptionparse_error110) if the given input ends prematurely or + the end of file was not reached when `strict` was set to true +- Throws [parse_error.112](../../home/exceptions.md#jsonexceptionparse_error112) if unsupported features from CBOR were + used in the given input or if the input is not valid CBOR +- Throws [parse_error.113](../../home/exceptions.md#jsonexceptionparse_error113) if a string was expected as map key, + but not found + +## Complexity + +Linear in the size of the input. + +## Examples + +??? example + + The example shows the deserialization of a byte vector in CBOR format to a JSON value. + + ```cpp + --8<-- "examples/from_cbor.cpp" + ``` + + Output: + + ```json + --8<-- "examples/from_cbor.output" + ``` + +## Version history + +- Added in version 2.0.9. +- Parameter `start_index` since version 2.1.1. +- Changed to consume input adapters, removed `start_index` parameter, and added `strict` parameter in version 3.0.0. +- Added `allow_exceptions` parameter in version 3.2.0. +- Added `tag_handler` parameter in version 3.9.0. + +!!! warning "Deprecation" + + - Overload (2) replaces calls to `from_cbor` with a pointer and a length as first two parameters, which has been + deprecated in version 3.8.0. This overload will be removed in version 4.0.0. Please replace all calls like + `#!cpp from_cbor(ptr, len, ...);` with `#!cpp from_cbor(ptr, ptr+len, ...);`. + - Overload (2) replaces calls to `from_cbor` with a pair of iterators as their first parameter, which has been + deprecated in version 3.8.0. This overload will be removed in version 4.0.0. Please replace all calls like + `#!cpp from_cbor({ptr, ptr+len}, ...);` with `#!cpp from_cbor(ptr, ptr+len, ...);`. + + You should be warned by your compiler with a `-Wdeprecated-declarations` warning if you are using a deprecated + function. diff --git a/docs/mkdocs/docs/api/basic_json/from_msgpack.md b/docs/mkdocs/docs/api/basic_json/from_msgpack.md new file mode 100644 index 00000000..117c3865 --- /dev/null +++ b/docs/mkdocs/docs/api/basic_json/from_msgpack.md @@ -0,0 +1,109 @@ +# nlohmann::basic_json::from_msgpack + +```cpp +// (1) +template +static basic_json from_msgpack(InputType&& i, + const bool strict = true, + const bool allow_exceptions = true); +// (2) +template +static basic_json from_msgpack(IteratorType first, IteratorType last, + const bool strict = true, + const bool allow_exceptions = true); +``` + +Deserializes a given input to a JSON value using the MessagePack serialization format. + +1. Reads from a compatible input. +2. Reads from an iterator range. + +The exact mapping and its limitations is described on a [dedicated page](../../features/binary_formats/messagepack.md). + +## Template parameters + +`InputType` +: A compatible input, for instance: + + - an `std::istream` object + - a `FILE` pointer + - a C-style array of characters + - a pointer to a null-terminated string of single byte characters + - an object `obj` for which `begin(obj)` and `end(obj)` produces a valid pair of iterators. + +`IteratorType` +: a compatible iterator type + +## Parameters + +`i` (in) +: an input in MessagePack format convertible to an input adapter + +`first` (in) +: iterator to start of the input + +`last` (in) +: iterator to end of the input + +`strict` (in) +: whether to expect the input to be consumed until EOF (`#!cpp true` by default) + +`allow_exceptions` (in) +: whether to throw exceptions in case of a parse error (optional, `#!cpp true` by default) + +## Return value + +deserialized JSON value; in case of a parse error and `allow_exceptions` set to `#!cpp false`, the return value will be +`value_t::discarded`. The latter can be checked with [`is_discarded`](is_discarded.md). + +## Exception safety + +Strong guarantee: if an exception is thrown, there are no changes in the JSON value. + +## Exceptions + +- Throws [parse_error.110](../../home/exceptions.md#jsonexceptionparse_error110) if the given input ends prematurely or + the end of file was not reached when `strict` was set to true +- Throws [parse_error.112](../../home/exceptions.md#jsonexceptionparse_error112) if unsupported features from + MessagePack were used in the given input or if the input is not valid MessagePack +- Throws [parse_error.113](../../home/exceptions.md#jsonexceptionparse_error113) if a string was expected as map key, + but not found + +## Complexity + +Linear in the size of the input. + +## Examples + +??? example + + The example shows the deserialization of a byte vector in MessagePack format to a JSON value. + + ```cpp + --8<-- "examples/from_msgpack.cpp" + ``` + + Output: + + ```json + --8<-- "examples/from_msgpack.output" + ``` + +## Version history + +- Added in version 2.0.9. +- Parameter `start_index` since version 2.1.1. +- Changed to consume input adapters, removed `start_index` parameter, and added `strict` parameter in version 3.0.0. +- Added `allow_exceptions` parameter in version 3.2.0. + +!!! warning "Deprecation" + + - Overload (2) replaces calls to `from_msgpack` with a pointer and a length as first two parameters, which has been + deprecated in version 3.8.0. This overload will be removed in version 4.0.0. Please replace all calls like + `#!cpp from_msgpack(ptr, len, ...);` with `#!cpp from_msgpack(ptr, ptr+len, ...);`. + - Overload (2) replaces calls to `from_cbor` with a pair of iterators as their first parameter, which has been + deprecated in version 3.8.0. This overload will be removed in version 4.0.0. Please replace all calls like + `#!cpp from_msgpack({ptr, ptr+len}, ...);` with `#!cpp from_msgpack(ptr, ptr+len, ...);`. + + You should be warned by your compiler with a `-Wdeprecated-declarations` warning if you are using a deprecated + function. diff --git a/docs/mkdocs/docs/api/basic_json/from_ubjson.md b/docs/mkdocs/docs/api/basic_json/from_ubjson.md new file mode 100644 index 00000000..08117e89 --- /dev/null +++ b/docs/mkdocs/docs/api/basic_json/from_ubjson.md @@ -0,0 +1,106 @@ +# nlohmann::basic_json::from_ubjson + +```cpp +// (1) +template +static basic_json from_ubjson(InputType&& i, + const bool strict = true, + const bool allow_exceptions = true); +// (2) +template +static basic_json from_ubjson(IteratorType first, IteratorType last, + const bool strict = true, + const bool allow_exceptions = true); +``` + +Deserializes a given input to a JSON value using the UBJSON (Universal Binary JSON) serialization format. + +1. Reads from a compatible input. +2. Reads from an iterator range. + +The exact mapping and its limitations is described on a [dedicated page](../../features/binary_formats/ubjson.md). + +## Template parameters + +`InputType` +: A compatible input, for instance: + + - an `std::istream` object + - a `FILE` pointer + - a C-style array of characters + - a pointer to a null-terminated string of single byte characters + - an object `obj` for which `begin(obj)` and `end(obj)` produces a valid pair of iterators. + +`IteratorType` +: a compatible iterator type + +## Parameters + +`i` (in) +: an input in UBJSON format convertible to an input adapter + +`first` (in) +: iterator to start of the input + +`last` (in) +: iterator to end of the input + +`strict` (in) +: whether to expect the input to be consumed until EOF (`#!cpp true` by default) + +`allow_exceptions` (in) +: whether to throw exceptions in case of a parse error (optional, `#!cpp true` by default) + +## Return value + +deserialized JSON value; in case of a parse error and `allow_exceptions` set to `#!cpp false`, the return value will be +`value_t::discarded`. The latter can be checked with [`is_discarded`](is_discarded.md). + +## Exception safety + +Strong guarantee: if an exception is thrown, there are no changes in the JSON value. + +## Exceptions + +- Throws [parse_error.110](../../home/exceptions.md#jsonexceptionparse_error110) if the given input ends prematurely or + the end of file was not reached when `strict` was set to true +- Throws [parse_error.112](../../home/exceptions.md#jsonexceptionparse_error112) if a parse error occurs +- Throws [parse_error.113](../../home/exceptions.md#jsonexceptionparse_error113) if a string could not be parsed + successfully + +## Complexity + +Linear in the size of the input. + +## Examples + +??? example + + The example shows the deserialization of a byte vector in UBJSON format to a JSON value. + + ```cpp + --8<-- "examples/from_ubjson.cpp" + ``` + + Output: + + ```json + --8<-- "examples/from_ubjson.output" + ``` + +## Version history + +- Added in version 3.1.0. +- Added `allow_exceptions` parameter in version 3.2.0. + +!!! warning "Deprecation" + + - Overload (2) replaces calls to `from_ubjson` with a pointer and a length as first two parameters, which has been + deprecated in version 3.8.0. This overload will be removed in version 4.0.0. Please replace all calls like + `#!cpp from_ubjson(ptr, len, ...);` with `#!cpp from_ubjson(ptr, ptr+len, ...);`. + - Overload (2) replaces calls to `from_ubjson` with a pair of iterators as their first parameter, which has been + deprecated in version 3.8.0. This overload will be removed in version 4.0.0. Please replace all calls like + `#!cpp from_ubjson({ptr, ptr+len}, ...);` with `#!cpp from_ubjson(ptr, ptr+len, ...);`. + + You should be warned by your compiler with a `-Wdeprecated-declarations` warning if you are using a deprecated + function. diff --git a/docs/mkdocs/docs/api/basic_json/front.md b/docs/mkdocs/docs/api/basic_json/front.md new file mode 100644 index 00000000..e258c36a --- /dev/null +++ b/docs/mkdocs/docs/api/basic_json/front.md @@ -0,0 +1,58 @@ +# nlohmann::basic_json::front + +```cpp +reference front(); +const_reference front() const; +``` + +Returns a reference to the first element in the container. For a JSON container `#!cpp c`, the expression +`#!cpp c.front()` is equivalent to `#!cpp *c.begin()`. + +## Return value + +In case of a structured type (array or object), a reference to the first element is returned. In case of number, string, +boolean, or binary values, a reference to the value is returned. + +## Exception safety + +Strong guarantee: if an exception is thrown, there are no changes in the JSON value. + +## Exceptions + +If the JSON value is `#!json null`, exception +[`invalid_iterator.214`](../../home/exceptions.md#jsonexceptioninvalid_iterator214) is thrown. + +## Complexity + +Constant. + +## Notes + +!!! info "Precondition" + + The array or object must not be empty. Calling `front` on an empty array or object yields undefined behavior. + +## Examples + +??? example + + The following code shows an example for `front()`. + + ```cpp + --8<-- "examples/front.cpp" + ``` + + Output: + + ```json + --8<-- "examples/front.output" + ``` + +## See also + +- [back](back.md) to access the last element + +## Version history + +- Added in version 1.0.0. +- Adjusted code to return reference to binary values in version 3.8.0. diff --git a/docs/mkdocs/docs/api/basic_json/get.md b/docs/mkdocs/docs/api/basic_json/get.md new file mode 100644 index 00000000..96fc221d --- /dev/null +++ b/docs/mkdocs/docs/api/basic_json/get.md @@ -0,0 +1,136 @@ +# nlohmann::basic_json::get + +```cpp +// (1) +template +ValueType get() const noexcept( + noexcept(JSONSerializer::from_json( + std::declval(), std::declval()))); + +// (2) +template +BasicJsonType get() const; + +// (3) +template +PointerType get_ptr(); + +template +constexpr const PointerType get_ptr() const noexcept; +``` + +1. Explicit type conversion between the JSON value and a compatible value which is + [CopyConstructible](https://en.cppreference.com/w/cpp/named_req/CopyConstructible) and + [DefaultConstructible](https://en.cppreference.com/w/cpp/named_req/DefaultConstructible). The value is converted by + calling the `json_serializer` `from_json()` method. + + The function is equivalent to executing + ```cpp + ValueType ret; + JSONSerializer::from_json(*this, ret); + return ret; + ``` + + This overload is chosen if: + + - `ValueType` is not `basic_json`, + - `json_serializer` has a `from_json()` method of the form + `void from_json(const basic_json&, ValueType&)`, and + - `json_serializer` does not have a `from_json()` method of the form + `ValueType from_json(const basic_json&)` + + If the type is **not** [CopyConstructible](https://en.cppreference.com/w/cpp/named_req/CopyConstructible) and + **not** [DefaultConstructible](https://en.cppreference.com/w/cpp/named_req/DefaultConstructible), the value is + converted by calling the `json_serializer` `from_json()` method. + + The function is then equivalent to executing + ```cpp + return JSONSerializer::from_json(*this); + ``` + + This overload is chosen if: + + - `ValueType` is not `basic_json` and + - `json_serializer` has a `from_json()` method of the form + `ValueType from_json(const basic_json&)` + + If `json_serializer` has both overloads of `from_json()`, the latter one is chosen. + +2. Overload for `basic_json` specializations. The function is equivalent to executing + ```cpp + return *this; + ``` + +3. Explicit pointer access to the internally stored JSON value. No copies are made. + +## Template parameters + +`ValueType` +: the value type to return + +`BasicJsonType` +: a specialization of `basic_json` + +`PointerType` +: pointer type; must be a pointer to [`array_t`](array_t.md), [`object_t`](object_t.md), [`string_t`](string_t.md), + [`boolean_t`](boolean_t.md), [`number_integer_t`](number_integer_t.md), or + [`number_unsigned_t`](number_unsigned_t.md), [`number_float_t`](number_float_t.md), or [`binary_t`](binary_t.md). + Other types will not compile. + +## Return value + +1. copy of the JSON value, converted to `ValueType` +2. a copy of `#!cpp *this`, converted into `BasicJsonType` +3. pointer to the internally stored JSON value if the requested pointer type fits to the JSON value; `#!cpp nullptr` + otherwise + +## Exceptions + +Depends on what `json_serializer` `from_json()` method throws + +## Notes + +!!! danger "Undefined behavior" + + Writing data to the pointee (overload 3) of the result yields an undefined state. + +## Examples + +??? example + + The example below shows several conversions from JSON values + to other types. There a few things to note: (1) Floating-point numbers can + be converted to integers, (2) A JSON array can be converted to a standard + `std::vector`, (3) A JSON object can be converted to C++ + associative containers such as `std::unordered_map`. + + ```cpp + --8<-- "examples/get__ValueType_const.cpp" + ``` + + Output: + + ```json + --8<-- "examples/get__ValueType_const.output" + ``` + +??? example + + The example below shows how pointers to internal values of a JSON value can be requested. Note that no type + conversions are made and a `#cpp nullptr` is returned if the value and the requested pointer type does not match. + + ```cpp + --8<-- "examples/get__PointerType.cpp" + ``` + + Output: + + ```json + --8<-- "examples/get__PointerType.output" + ``` + +## Version history + +1. Since version 2.1.0. +2. Since version 2.1.0. Extended to work with other specializations of `basic_json` in version 3.2.0. +3. Since version 1.0.0. diff --git a/docs/mkdocs/docs/api/basic_json/get_allocator.md b/docs/mkdocs/docs/api/basic_json/get_allocator.md new file mode 100644 index 00000000..07a4d845 --- /dev/null +++ b/docs/mkdocs/docs/api/basic_json/get_allocator.md @@ -0,0 +1,31 @@ +# nlohmann::basic_json::get_allocator + +```cpp +static allocator_type get_allocator(); +``` + +Returns the allocator associated with the container. + +## Return value + +associated allocator + +## Examples + +??? example + + The example shows how `get_allocator()` is used to created `json` values. + + ```cpp + --8<-- "examples/get_allocator.cpp" + ``` + + Output: + + ```json + --8<-- "examples/get_allocator.output" + ``` + +## Version history + +- Added in version 1.0.0. diff --git a/docs/mkdocs/docs/api/basic_json/get_binary.md b/docs/mkdocs/docs/api/basic_json/get_binary.md new file mode 100644 index 00000000..a910f3aa --- /dev/null +++ b/docs/mkdocs/docs/api/basic_json/get_binary.md @@ -0,0 +1,45 @@ +# nlohmann::basic_json::get_binary + +```cpp +binary_t& get_binary(); + +const binary_t& get_binary() const; +``` + +Returns a reference to the stored binary value. + +## Return value + +Reference to binary value. + +## Exception safety + +Strong exception safety: if an exception occurs, the original value stays intact. + +## Exceptions + +Throws [`type_error.302`](../../home/exceptions.md#jsonexceptiontype_error302) if the value is not binary + +## Complexity + +Constant. + +## Examples + +??? example + + The following code shows how to query a binary value. + + ```cpp + --8<-- "examples/get_binary.cpp" + ``` + + Output: + + ```json + --8<-- "examples/get_binary.output" + ``` + +## Version history + +- Added in version 3.8.0. diff --git a/docs/mkdocs/docs/api/basic_json/get_ptr.md b/docs/mkdocs/docs/api/basic_json/get_ptr.md new file mode 100644 index 00000000..2441e115 --- /dev/null +++ b/docs/mkdocs/docs/api/basic_json/get_ptr.md @@ -0,0 +1,60 @@ +# nlohmann::basic_json::get_ptr + +```cpp +template +PointerType get_ptr() noexcept; + +template +constexpr const PointerType get_ptr() const noexcept; +``` + +Implicit pointer access to the internally stored JSON value. No copies are made. + +## Template parameters + +`PointerType` +: pointer type; must be a pointer to [`array_t`](array_t.md), [`object_t`](object_t.md), [`string_t`](string_t.md), + [`boolean_t`](boolean_t.md), [`number_integer_t`](number_integer_t.md), or + [`number_unsigned_t`](number_unsigned_t.md), [`number_float_t`](number_float_t.md), or [`binary_t`](binary_t.md). + Other types will not compile. + +## Return value + +pointer to the internally stored JSON value if the requested pointer type fits to the JSON value; `#!cpp nullptr` +otherwise + +## Exception safety + +No-throw guarantee: this function never throws exceptions. + +## Complexity + +Constant. + +## Notes + +!!! danger "Undefined behavior" + + Writing data to the pointee of the result yields an undefined state. + +## Examples + +??? example + + The example below shows how pointers to internal values of a JSON value can be requested. Note that no type + conversions are made and a `#!cpp nullptr` is returned if the value and the requested pointer type does not match. + + ```cpp + --8<-- "examples/get_ptr.cpp" + ``` + + Output: + + ```json + --8<-- "examples/get_ptr.output" + ``` + +## Version history + +- Added in version 1.0.0. +- Extended to binary types in version 3.8.0. diff --git a/docs/mkdocs/docs/api/basic_json/get_ref.md b/docs/mkdocs/docs/api/basic_json/get_ref.md new file mode 100644 index 00000000..b1219742 --- /dev/null +++ b/docs/mkdocs/docs/api/basic_json/get_ref.md @@ -0,0 +1,64 @@ +# nlohmann::basic_json::get_ref + +```cpp +template +ReferenceType get_ref(); + +template +const ReferenceType get_ref() const; +``` + +Implicit reference access to the internally stored JSON value. No copies are made. + +## Template parameters + +`ReferenceType` +: reference type; must be a reference to [`array_t`](array_t.md), [`object_t`](object_t.md), + [`string_t`](string_t.md), [`boolean_t`](boolean_t.md), [`number_integer_t`](number_integer_t.md), or + [`number_unsigned_t`](number_unsigned_t.md), [`number_float_t`](number_float_t.md), or [`binary_t`](binary_t.md). + Enforced by a static assertion. + +## Return value + +reference to the internally stored JSON value if the requested reference type fits to the JSON value; throws +[`type_error.303`](../../home/exceptions.md#jsonexceptiontype_error303) otherwise + +## Exception safety + +Strong exception safety: if an exception occurs, the original value stays intact. + +## Exceptions + +Throws [`type_error.303`](../../home/exceptions.md#jsonexceptiontype_error303) if the requested reference type does not +match the stored JSON value type; example: `"incompatible ReferenceType for get_ref, actual type is binary"`. + +## Complexity + +Constant. + +## Notes + +!!! danger "Undefined behavior" + + Writing data to the referee of the result yields an undefined state. + +## Examples + +??? example + + The example shows several calls to `get_ref()`. + + ```cpp + --8<-- "examples/get_ref.cpp" + ``` + + Output: + + ```json + --8<-- "examples/get_ref.output" + ``` + +## Version history + +- Added in version 1.1.0. +- Extended to binary types in version 3.8.0. diff --git a/docs/mkdocs/docs/api/basic_json/get_to.md b/docs/mkdocs/docs/api/basic_json/get_to.md new file mode 100644 index 00000000..6af6d212 --- /dev/null +++ b/docs/mkdocs/docs/api/basic_json/get_to.md @@ -0,0 +1,58 @@ +# nlohmann::basic_json::get_to + +```cpp +template +ValueType& get_to(ValueType& v) const noexcept( + noexcept(JSONSerializer::from_json( + std::declval(), v))); +``` + +Explicit type conversion between the JSON value and a compatible value. The value is filled into the input parameter by +calling the `json_serializer` `from_json()` method. + +The function is equivalent to executing +```cpp +ValueType v; +JSONSerializer::from_json(*this, v); +``` + +This overload is chosen if: + +- `ValueType` is not `basic_json`, +- `json_serializer` has a `from_json()` method of the form `void from_json(const basic_json&, ValueType&)` + +## Template parameters + +`ValueType` +: the value type to return + +## Return value + +the input parameter, allowing chaining calls + +## Exceptions + +Depends on what `json_serializer` `from_json()` method throws + +## Examples + +??? example + + The example below shows several conversions from JSON values to other types. There a few things to note: (1) + Floating-point numbers can be converted to integers, (2) A JSON array can be converted to a standard + `#!cpp std::vector`, (3) A JSON object can be converted to C++ associative containers such as + `#cpp std::unordered_map`. + + ```cpp + --8<-- "examples/get_to.cpp" + ``` + + Output: + + ```json + --8<-- "examples/get_to.output" + ``` + +## Version history + +- Since version 3.3.0. diff --git a/docs/mkdocs/docs/api/basic_json/index.md b/docs/mkdocs/docs/api/basic_json/index.md new file mode 100644 index 00000000..64867014 --- /dev/null +++ b/docs/mkdocs/docs/api/basic_json/index.md @@ -0,0 +1,323 @@ +# nlohmann::basic_json + +Defined in header `` + +```cpp +template< + template class ObjectType = std::map, + template class ArrayType = std::vector, + class StringType = std::string, + class BooleanType = bool, + class NumberIntegerType = std::int64_t, + class NumberUnsignedType = std::uint64_t, + class NumberFloatType = double, + template class AllocatorType = std::allocator, + template class JSONSerializer = adl_serializer, + class BinaryType = std::vector, + class CustomBaseClass = void +> +class basic_json; +``` + +## Template parameters + +| Template parameter | Description | Derived type | +|----------------------|---------------------------------------------------------------------------|---------------------------------------------| +| `ObjectType` | type for JSON objects | [`object_t`](object_t.md) | +| `ArrayType` | type for JSON arrays | [`array_t`](array_t.md) | +| `StringType` | type for JSON strings and object keys | [`string_t`](string_t.md) | +| `BooleanType` | type for JSON booleans | [`boolean_t`](boolean_t.md) | +| `NumberIntegerType` | type for JSON integer numbers | [`number_integer_t`](number_integer_t.md) | +| `NumberUnsignedType` | type for JSON unsigned integer numbers | [`number_unsigned_t`](number_unsigned_t.md) | +| `NumberFloatType` | type for JSON floating-point numbers | [`number_float_t`](number_float_t.md) | +| `AllocatorType` | type of the allocator to use | | +| `JSONSerializer` | the serializer to resolve internal calls to `to_json()` and `from_json()` | [`json_serializer`](json_serializer.md) | +| `BinaryType` | type for binary arrays | [`binary_t`](binary_t.md) | +| `CustomBaseClass` | extension point for user code | [`json_base_class_t`](json_base_class_t.md) | + +## Specializations + +- [**json**](../json.md) - default specialization +- [**ordered_json**](../ordered_json.md) - specialization that maintains the insertion order of object keys + +## Iterator invalidation + +Todo + +## Requirements + +The class satisfies the following concept requirements: + +### Basic + +- [DefaultConstructible](https://en.cppreference.com/w/cpp/named_req/DefaultConstructible): JSON values can be default + constructed. The result will be a JSON null value. +- [MoveConstructible](https://en.cppreference.com/w/cpp/named_req/MoveConstructible): A JSON value can be constructed + from an rvalue argument. +- [CopyConstructible](https://en.cppreference.com/w/cpp/named_req/CopyConstructible): A JSON value can be + copy-constructed from an lvalue expression. +- [MoveAssignable](https://en.cppreference.com/w/cpp/named_req/MoveAssignable): A JSON value can be assigned from an + rvalue argument. +- [CopyAssignable](https://en.cppreference.com/w/cpp/named_req/CopyAssignable): A JSON value can be copy-assigned from + an lvalue expression. +- [Destructible](https://en.cppreference.com/w/cpp/named_req/Destructible): JSON values can be destructed. + +### Layout + +- [StandardLayoutType](https://en.cppreference.com/w/cpp/named_req/StandardLayoutType): JSON values have + [standard layout](https://en.cppreference.com/w/cpp/language/data_members#Standard_layout): All non-static data + members are private and standard layout types, the class has no virtual functions or (virtual) base classes. + +### Library-wide + +- [EqualityComparable](https://en.cppreference.com/w/cpp/named_req/EqualityComparable): JSON values can be compared with + `==`, see [`operator==`](operator_eq.md). +- [LessThanComparable](https://en.cppreference.com/w/cpp/named_req/LessThanComparable): JSON values can be compared with + `<`, see [`operator<`](operator_le.md). +- [Swappable](https://en.cppreference.com/w/cpp/named_req/Swappable): Any JSON lvalue or rvalue of can be swapped with + any lvalue or rvalue of other compatible types, using unqualified function `swap`. +- [NullablePointer](https://en.cppreference.com/w/cpp/named_req/NullablePointer): JSON values can be compared against + `std::nullptr_t` objects which are used to model the `null` value. + +### Container + +- [Container](https://en.cppreference.com/w/cpp/named_req/Container): JSON values can be used like STL containers and + provide iterator access. +- [ReversibleContainer](https://en.cppreference.com/w/cpp/named_req/ReversibleContainer): JSON values can be used like + STL containers and provide reverse iterator access. + +## Member types + +- [**adl_serializer**](../adl_serializer/index.md) - the default serializer +- [**value_t**](value_t.md) - the JSON type enumeration +- [**json_pointer**](../json_pointer/index.md) - JSON Pointer implementation +- [**json_serializer**](json_serializer.md) - type of the serializer to for conversions from/to JSON +- [**error_handler_t**](error_handler_t.md) - type to choose behavior on decoding errors +- [**cbor_tag_handler_t**](cbor_tag_handler_t.md) - type to choose how to handle CBOR tags +- **initializer_list_t** - type for initializer lists of `basic_json` values +- [**input_format_t**](input_format_t.md) - type to choose the format to parse +- [**json_sax_t**](../json_sax/index.md) - type for SAX events + +### Exceptions + +- [**exception**](exception.md) - general exception of the `basic_json` class + - [**parse_error**](parse_error.md) - exception indicating a parse error + - [**invalid_iterator**](invalid_iterator.md) - exception indicating errors with iterators + - [**type_error**](type_error.md) - exception indicating executing a member function with a wrong type + - [**out_of_range**](out_of_range.md) - exception indicating access out of the defined range + - [**other_error**](other_error.md) - exception indicating other library errors + +### Container types + +| Type | Definition | +|--------------------------|-----------------------------------------------------------------------------------------------------------| +| `value_type` | `#!cpp basic_json` | +| `reference` | `#!cpp value_type&` | +| `const_reference` | `#!cpp const value_type&` | +| `difference_type` | `#!cpp std::ptrdiff_t` | +| `size_type` | `#!cpp std::size_t` | +| `allocator_type` | `#!cpp AllocatorType` | +| `pointer` | `#!cpp std::allocator_traits::pointer` | +| `const_pointer` | `#!cpp std::allocator_traits::const_pointer` | +| `iterator` | [LegacyBidirectionalIterator](https://en.cppreference.com/w/cpp/named_req/BidirectionalIterator) | +| `const_iterator` | constant [LegacyBidirectionalIterator](https://en.cppreference.com/w/cpp/named_req/BidirectionalIterator) | +| `reverse_iterator` | reverse iterator, derived from `iterator` | +| `const_reverse_iterator` | reverse iterator, derived from `const_iterator` | +| `iteration_proxy` | helper type for [`items`](items.md) function | + +### JSON value data types + +- [**array_t**](array_t.md) - type for arrays +- [**binary_t**](binary_t.md) - type for binary arrays +- [**boolean_t**](boolean_t.md) - type for booleans +- [**default_object_comparator_t**](default_object_comparator_t.md) - default comparator for objects +- [**number_float_t**](number_float_t.md) - type for numbers (floating-point) +- [**number_integer_t**](number_integer_t.md) - type for numbers (integer) +- [**number_unsigned_t**](number_unsigned_t.md) - type for numbers (unsigned) +- [**object_comparator_t**](object_comparator_t.md) - comparator for objects +- [**object_t**](object_t.md) - type for objects +- [**string_t**](string_t.md) - type for strings + +### Parser callback + +- [**parse_event_t**](parse_event_t.md) - parser event types +- [**parser_callback_t**](parser_callback_t.md) - per-element parser callback type + +## Member functions + +- [(constructor)](basic_json.md) +- [(destructor)](~basic_json.md) +- [**operator=**](operator=.md) - copy assignment +- [**array**](array_t.md) (_static_) - explicitly create an array +- [**binary**](binary.md) (_static_) - explicitly create a binary array +- [**object**](object_t.md) (_static_) - explicitly create an object + +### Object inspection + +Functions to inspect the type of a JSON value. + +- [**type**](type.md) - return the type of the JSON value +- [**operator value_t**](operator_value_t.md) - return the type of the JSON value +- [**type_name**](type_name.md) - return the type as string +- [**is_primitive**](is_primitive.md) - return whether type is primitive +- [**is_structured**](is_structured.md) - return whether type is structured +- [**is_null**](is_null.md) - return whether value is null +- [**is_boolean**](is_boolean.md) - return whether value is a boolean +- [**is_number**](is_number.md) - return whether value is a number +- [**is_number_integer**](is_number_integer.md) - return whether value is an integer number +- [**is_number_unsigned**](is_number_unsigned.md) - return whether value is an unsigned integer number +- [**is_number_float**](is_number_float.md) - return whether value is a floating-point number +- [**is_object**](is_object.md) - return whether value is an object +- [**is_array**](is_array.md) - return whether value is an array +- [**is_string**](is_string.md) - return whether value is a string +- [**is_binary**](is_binary.md) - return whether value is a binary array +- [**is_discarded**](is_discarded.md) - return whether value is discarded + +### Value access + +Direct access to the stored value of a JSON value. + +- [**get**](get.md) - get a value +- [**get_to**](get_to.md) - get a value and write it to a destination +- [**get_ptr**](get_ptr.md) - get a pointer value +- [**get_ref**](get_ref.md) - get a reference value +- [**operator ValueType**](operator_ValueType.md) - get a value +- [**get_binary**](get_binary.md) - get a binary value + +### Element access + +Access to the JSON value + +- [**at**](at.md) - access specified element with bounds checking +- [**operator[]**](operator[].md) - access specified element +- [**value**](value.md) - access specified object element with default value +- [**front**](front.md) - access the first element +- [**back**](back.md) - access the last element + +### Lookup + +- [**find**](find.md) - find an element in a JSON object +- [**count**](count.md) - returns the number of occurrences of a key in a JSON object +- [**contains**](contains.md) - check the existence of an element in a JSON object + +### Iterators + +- [**begin**](begin.md) - returns an iterator to the first element +- [**cbegin**](cbegin.md) - returns a const iterator to the first element +- [**end**](end.md) - returns an iterator to one past the last element +- [**cend**](cend.md) - returns a const iterator to one past the last element +- [**rbegin**](rbegin.md) - returns an iterator to the reverse-beginning +- [**rend**](rend.md) - returns an iterator to the reverse-end +- [**crbegin**](crbegin.md) - returns a const iterator to the reverse-beginning +- [**crend**](crend.md) - returns a const iterator to the reverse-end +- [**items**](items.md) - wrapper to access iterator member functions in range-based for + +### Capacity + +- [**empty**](empty.md) - checks whether the container is empty +- [**size**](size.md) - returns the number of elements +- [**max_size**](max_size.md) - returns the maximum possible number of elements + +### Modifiers + +- [**clear**](clear.md) - clears the contents +- [**push_back**](push_back.md) - add a value to an array/object +- [**operator+=**](operator+=.md) - add a value to an array/object +- [**emplace_back**](emplace_back.md) - add a value to an array +- [**emplace**](emplace.md) - add a value to an object if key does not exist +- [**erase**](erase.md) - remove elements +- [**insert**](insert.md) - inserts elements +- [**update**](update.md) - updates a JSON object from another object, overwriting existing keys +- [**swap**](swap.md) - exchanges the values + +### Lexicographical comparison operators + +- [**operator==**](operator_eq.md) - comparison: equal +- [**operator!=**](operator_ne.md) - comparison: not equal +- [**operator<**](operator_lt.md) - comparison: less than +- [**operator>**](operator_gt.md) - comparison: greater than +- [**operator<=**](operator_le.md) - comparison: less than or equal +- [**operator>=**](operator_ge.md) - comparison: greater than or equal +- [**operator<=>**](operator_spaceship.md) - comparison: 3-way + +### Serialization / Dumping + +- [**dump**](dump.md) - serialization + +### Deserialization / Parsing + +- [**parse**](parse.md) (_static_) - deserialize from a compatible input +- [**accept**](accept.md) (_static_) - check if the input is valid JSON +- [**sax_parse**](sax_parse.md) (_static_) - generate SAX events + +### JSON Pointer functions + +- [**flatten**](flatten.md) - return flattened JSON value +- [**unflatten**](unflatten.md) - unflatten a previously flattened JSON value + +### JSON Patch functions + +- [**patch**](patch.md) - applies a JSON patch +- [**patch_inplace**](patch_inplace.md) - applies a JSON patch in place +- [**diff**](diff.md) (_static_) - creates a diff as a JSON patch + +### JSON Merge Patch functions + +- [**merge_patch**](merge_patch.md) - applies a JSON Merge Patch + +## Static functions + +- [**meta**](meta.md) - returns version information on the library +- [**get_allocator**](get_allocator.md) - returns the allocator associated with the container + +### Binary formats + +- [**from_bjdata**](from_bjdata.md) (_static_) - create a JSON value from an input in BJData format +- [**from_bson**](from_bson.md) (_static_) - create a JSON value from an input in BSON format +- [**from_cbor**](from_cbor.md) (_static_) - create a JSON value from an input in CBOR format +- [**from_msgpack**](from_msgpack.md) (_static_) - create a JSON value from an input in MessagePack format +- [**from_ubjson**](from_ubjson.md) (_static_) - create a JSON value from an input in UBJSON format +- [**to_bjdata**](to_bjdata.md) (_static_) - create a BJData serialization of a given JSON value +- [**to_bson**](to_bson.md) (_static_) - create a BSON serialization of a given JSON value +- [**to_cbor**](to_cbor.md) (_static_) - create a CBOR serialization of a given JSON value +- [**to_msgpack**](to_msgpack.md) (_static_) - create a MessagePack serialization of a given JSON value +- [**to_ubjson**](to_ubjson.md) (_static_) - create a UBJSON serialization of a given JSON value + +## Non-member functions + +- [**operator<<(std::ostream&)**](../operator_ltlt.md) - serialize to stream +- [**operator>>(std::istream&)**](../operator_gtgt.md) - deserialize from stream +- [**to_string**](to_string.md) - user-defined `to_string` function for JSON values + +## Literals + +- [**operator""_json**](../operator_literal_json.md) - user-defined string literal for JSON values + +## Helper classes + +- [**std::hash<basic_json>**](std_hash.md) - return a hash value for a JSON object +- [**std::swap<basic_json>**](std_swap.md) - exchanges the values of two JSON objects + +## Examples + +??? example + + The example shows how the library is used. + + ```cpp + --8<-- "examples/README.cpp" + ``` + + Output: + + ```json + --8<-- "examples/README.output" + ``` + +## See also + +- [RFC 8259: The JavaScript Object Notation (JSON) Data Interchange Format](https://tools.ietf.org/html/rfc8259) + +## Version history + +- Added in version 1.0.0. diff --git a/docs/mkdocs/docs/api/basic_json/input_format_t.md b/docs/mkdocs/docs/api/basic_json/input_format_t.md new file mode 100644 index 00000000..a3baabab --- /dev/null +++ b/docs/mkdocs/docs/api/basic_json/input_format_t.md @@ -0,0 +1,52 @@ +# nlohmann::basic_json::input_format_t + +```cpp +enum class input_format_t { + json, + cbor, + msgpack, + ubjson, + bson, + bjdata +}; +``` + +This enumeration is used in the [`sax_parse`](sax_parse.md) function to choose the input format to parse: + +json +: JSON (JavaScript Object Notation) + +cbor +: CBOR (Concise Binary Object Representation) + +msgpack +: MessagePack + +ubjson +: UBJSON (Universal Binary JSON) + +bson +: BSON (Binary JSON) + +bjdata +: BJData (Binary JData) + +## Examples + +??? example + + The example below shows how an `input_format_t` enum value is passed to `sax_parse` to set the input format to CBOR. + + ```cpp + --8<-- "examples/sax_parse__binary.cpp" + ``` + + Output: + + ```json + --8<-- "examples/sax_parse__binary.output" + ``` + +## Version history + +- Added in version 3.2.0. diff --git a/docs/mkdocs/docs/api/basic_json/insert.md b/docs/mkdocs/docs/api/basic_json/insert.md new file mode 100644 index 00000000..2e6b2930 --- /dev/null +++ b/docs/mkdocs/docs/api/basic_json/insert.md @@ -0,0 +1,179 @@ +# nlohmann::basic_json::insert + +```cpp +// (1) +iterator insert(const_iterator pos, const basic_json& val); +iterator insert(const_iterator pos, basic_json&& val); + +// (2) +iterator insert(const_iterator pos, size_type cnt, const basic_json& val); + +// (3) +iterator insert(const_iterator pos, const_iterator first, const_iterator last); + +// (4) +iterator insert(const_iterator pos, initializer_list_t ilist); + +// (5) +void insert(const_iterator first, const_iterator last); +``` + +1. Inserts element `val` into array before iterator `pos`. +2. Inserts `cnt` copies of `val` into array before iterator `pos`. +3. Inserts elements from range `[first, last)` into array before iterator `pos`. +4. Inserts elements from initializer list `ilist` into array before iterator `pos`. +5. Inserts elements from range `[first, last)` into object. + +## Parameters + +`pos` (in) +: iterator before which the content will be inserted; may be the `end()` iterator + +`val` (in) +: value to insert + +`cnt` (in) +: number of copies of `val` to insert + +`first` (in) +: begin of the range of elements to insert + +`last` (in) +: end of the range of elements to insert + +`ilist` (in) +: initializer list to insert the values from + +## Return value + +1. iterator pointing to the inserted `val`. +2. iterator pointing to the first element inserted, or `pos` if `#!cpp cnt==0` +3. iterator pointing to the first element inserted, or `pos` if `#!cpp first==last` +4. iterator pointing to the first element inserted, or `pos` if `ilist` is empty +5. (none) + +## Exception safety + +Strong exception safety: if an exception occurs, the original value stays intact. + +## Exceptions + +1. The function can throw the following exceptions: + - Throws [`type_error.309`](../../home/exceptions.md#jsonexceptiontype_error309) if called on JSON values other than + arrays; example: `"cannot use insert() with string"` + - Throws [`invalid_iterator.202`](../../home/exceptions.md#jsonexceptioninvalid_iterator202) if called on an + iterator which does not belong to the current JSON value; example: `"iterator does not fit current value"` +2. The function can throw the following exceptions: + - Throws [`type_error.309`](../../home/exceptions.md#jsonexceptiontype_error309) if called on JSON values other than + arrays; example: `"cannot use insert() with string"` + - Throws [`invalid_iterator.202`](../../home/exceptions.md#jsonexceptioninvalid_iterator202) if called on an + iterator which does not belong to the current JSON value; example: `"iterator does not fit current value"` +3. The function can throw the following exceptions: + - Throws [`type_error.309`](../../home/exceptions.md#jsonexceptiontype_error309) if called on JSON values other than + arrays; example: `"cannot use insert() with string"` + - Throws [`invalid_iterator.202`](../../home/exceptions.md#jsonexceptioninvalid_iterator202) if called on an + iterator which does not belong to the current JSON value; example: `"iterator does not fit current value"` + - Throws [`invalid_iterator.210`](../../home/exceptions.md#jsonexceptioninvalid_iterator210) if `first` and `last` + do not belong to the same JSON value; example: `"iterators do not fit"` + - Throws [`invalid_iterator.211`](../../home/exceptions.md#jsonexceptioninvalid_iterator211) if `first` or `last` + are iterators into container for which insert is called; example: `"passed iterators may not belong to container"` +4. The function can throw the following exceptions: + - Throws [`type_error.309`](../../home/exceptions.md#jsonexceptiontype_error309) if called on JSON values other than + arrays; example: `"cannot use insert() with string"` + - Throws [`invalid_iterator.202`](../../home/exceptions.md#jsonexceptioninvalid_iterator202) if called on an + iterator which does not belong to the current JSON value; example: `"iterator does not fit current value"` +5. The function can throw the following exceptions: + - Throws [`type_error.309`](../../home/exceptions.md#jsonexceptiontype_error309) if called on JSON values other than + objects; example: `"cannot use insert() with string"` + - Throws [`invalid_iterator.202`](../../home/exceptions.md#jsonexceptioninvalid_iterator202) if called on an + iterator which does not belong to the current JSON value; example: `"iterator does not fit current value"` + - Throws [`invalid_iterator.210`](../../home/exceptions.md#jsonexceptioninvalid_iterator210) if `first` and `last` + do not belong to the same JSON value; example: `"iterators do not fit"` + +## Complexity + +1. Constant plus linear in the distance between `pos` and end of the container. +2. Linear in `cnt` plus linear in the distance between `pos` and end of the container. +3. Linear in `#!cpp std::distance(first, last)` plus linear in the distance between `pos` and end of the container. +4. Linear in `ilist.size()` plus linear in the distance between `pos` and end of the container. +5. Logarithmic: `O(N*log(size() + N))`, where `N` is the number of elements to insert. + +## Examples + +??? example "Example (1): insert element into array" + + The example shows how `insert()` is used. + + ```cpp + --8<-- "examples/insert.cpp" + ``` + + Output: + + ```json + --8<-- "examples/insert.output" + ``` + +??? example "Example (2): insert copies of element into array" + + The example shows how `insert()` is used. + + ```cpp + --8<-- "examples/insert__count.cpp" + ``` + + Output: + + ```json + --8<-- "examples/insert__count.output" + ``` + +??? example "Example (3): insert range of elements into array" + + The example shows how `insert()` is used. + + ```cpp + --8<-- "examples/insert__range.cpp" + ``` + + Output: + + ```json + --8<-- "examples/insert__range.output" + ``` + +??? example "Example (4): insert elements from initializer list into array" + + The example shows how `insert()` is used. + + ```cpp + --8<-- "examples/insert__ilist.cpp" + ``` + + Output: + + ```json + --8<-- "examples/insert__ilist.output" + ``` + +??? example "Example (5): insert range of elements into object" + + The example shows how `insert()` is used. + + ```cpp + --8<-- "examples/insert__range_object.cpp" + ``` + + Output: + + ```json + --8<-- "examples/insert__range_object.output" + ``` + +## Version history + +1. Added in version 1.0.0. +2. Added in version 1.0.0. +3. Added in version 1.0.0. +4. Added in version 1.0.0. +5. Added in version 3.0.0. diff --git a/docs/mkdocs/docs/api/basic_json/invalid_iterator.md b/docs/mkdocs/docs/api/basic_json/invalid_iterator.md new file mode 100644 index 00000000..f9fdce5b --- /dev/null +++ b/docs/mkdocs/docs/api/basic_json/invalid_iterator.md @@ -0,0 +1,67 @@ +# nlohmann::basic_json::invalid_iterator + +```cpp +class invalid_iterator : public exception; +``` + +This exception is thrown if iterators passed to a library function do not match the expected semantics. + +Exceptions have ids 2xx (see [list of iterator errors](../../home/exceptions.md#iterator-errors)). + +```plantuml +std::exception <|-- basic_json::exception +basic_json::exception <|-- basic_json::parse_error +basic_json::exception <|-- basic_json::invalid_iterator +basic_json::exception <|-- basic_json::type_error +basic_json::exception <|-- basic_json::out_of_range +basic_json::exception <|-- basic_json::other_error + +interface std::exception {} + +class basic_json::exception { + + const int id + + const char* what() const +} + +class basic_json::parse_error { + + const std::size_t byte +} + +class basic_json::invalid_iterator #FFFF00 {} +``` + +## Member functions + +- **what** - returns explanatory string + +## Member variables + +- **id** - the id of the exception + +## Examples + +??? example + + The following code shows how a `invalid_iterator` exception can be caught. + + ```cpp + --8<-- "examples/invalid_iterator.cpp" + ``` + + Output: + + ```json + --8<-- "examples/invalid_iterator.output" + ``` + +## See also + +- [List of iterator errors](../../home/exceptions.md#iterator-errors) +- [`parse_error`](parse_error.md) for exceptions indicating a parse error +- [`type_error`](type_error.md) for exceptions indicating executing a member function with a wrong type +- [`out_of_range`](out_of_range.md) for exceptions indicating access out of the defined range +- [`other_error`](other_error.md) for exceptions indicating other library errors + +## Version history + +- Since version 3.0.0. diff --git a/docs/mkdocs/docs/api/basic_json/is_array.md b/docs/mkdocs/docs/api/basic_json/is_array.md new file mode 100644 index 00000000..64468c35 --- /dev/null +++ b/docs/mkdocs/docs/api/basic_json/is_array.md @@ -0,0 +1,39 @@ +# nlohmann::basic_json::is_array + +```cpp +constexpr bool is_array() const noexcept; +``` + +This function returns `#!cpp true` if and only if the JSON value is an array. + +## Return value + +`#!cpp true` if type is an array, `#!cpp false` otherwise. + +## Exception safety + +No-throw guarantee: this member function never throws exceptions. + +## Complexity + +Constant. + +## Examples + +??? example + + The following code exemplifies `is_array()` for all JSON types. + + ```cpp + --8<-- "examples/is_array.cpp" + ``` + + Output: + + ```json + --8<-- "examples/is_array.output" + ``` + +## Version history + +- Added in version 1.0.0. diff --git a/docs/mkdocs/docs/api/basic_json/is_binary.md b/docs/mkdocs/docs/api/basic_json/is_binary.md new file mode 100644 index 00000000..ea48d745 --- /dev/null +++ b/docs/mkdocs/docs/api/basic_json/is_binary.md @@ -0,0 +1,39 @@ +# nlohmann::basic_json::is_binary + +```cpp +constexpr bool is_binary() const noexcept; +``` + +This function returns `#!cpp true` if and only if the JSON value is binary array. + +## Return value + +`#!cpp true` if type is binary, `#!cpp false` otherwise. + +## Exception safety + +No-throw guarantee: this member function never throws exceptions. + +## Complexity + +Constant. + +## Examples + +??? example + + The following code exemplifies `is_binary()` for all JSON types. + + ```cpp + --8<-- "examples/is_binary.cpp" + ``` + + Output: + + ```json + --8<-- "examples/is_binary.output" + ``` + +## Version history + +- Added in version 3.8.0. diff --git a/docs/mkdocs/docs/api/basic_json/is_boolean.md b/docs/mkdocs/docs/api/basic_json/is_boolean.md new file mode 100644 index 00000000..dc41d84b --- /dev/null +++ b/docs/mkdocs/docs/api/basic_json/is_boolean.md @@ -0,0 +1,39 @@ +# nlohmann::basic_json::is_boolean + +```cpp +constexpr bool is_boolean() const noexcept; +``` + +This function returns `#!cpp true` if and only if the JSON value is `#!json true` or `#!json false`. + +## Return value + +`#!cpp true` if type is boolean, `#!cpp false` otherwise. + +## Exception safety + +No-throw guarantee: this member function never throws exceptions. + +## Complexity + +Constant. + +## Examples + +??? example + + The following code exemplifies `is_boolean()` for all JSON types. + + ```cpp + --8<-- "examples/is_boolean.cpp" + ``` + + Output: + + ```json + --8<-- "examples/is_boolean.output" + ``` + +## Version history + +- Added in version 1.0.0. diff --git a/docs/mkdocs/docs/api/basic_json/is_discarded.md b/docs/mkdocs/docs/api/basic_json/is_discarded.md new file mode 100644 index 00000000..663cbf88 --- /dev/null +++ b/docs/mkdocs/docs/api/basic_json/is_discarded.md @@ -0,0 +1,72 @@ +# nlohmann::basic_json::is_discarded + +```cpp +constexpr bool is_discarded() const noexcept; +``` + +This function returns `#!cpp true` for a JSON value if either: + +- the value was discarded during parsing with a callback function (see [`parser_callback_t`](parser_callback_t.md)), or +- the value is the result of parsing invalid JSON with parameter `allow_exceptions` set to `#!cpp false`; see + [`parse`](parse.md) for more information. + +## Return value + +`#!cpp true` if type is discarded, `#!cpp false` otherwise. + +## Exception safety + +No-throw guarantee: this member function never throws exceptions. + +## Complexity + +Constant. + +## Notes + +!!! note "Comparisons" + + Discarded values are never compared equal with [`operator==`](operator_eq.md). That is, checking whether a JSON + value `j` is discarded will only work via: + + ```cpp + j.is_discarded() + ``` + + because + + ```cpp + j == json::value_t::discarded + ``` + + will always be `#!cpp false`. + +!!! note "Removal during parsing with callback functions" + + When a value is discarded by a callback function (see [`parser_callback_t`](parser_callback_t.md)) during parsing, + then it is removed when it is part of a structured value. For instance, if the second value of an array is discarded, + instead of `#!json [null, discarded, false]`, the array `#!json [null, false]` is returned. Only if the top-level + value is discarded, the return value of the `parse` call is discarded. + +This function will always be `#!cpp false` for JSON values after parsing. That is, discarded values can only occur +during parsing, but will be removed when inside a structured value or replaced by null in other cases. + +## Examples + +??? example + + The following code exemplifies `is_discarded()` for all JSON types. + + ```cpp + --8<-- "examples/is_discarded.cpp" + ``` + + Output: + + ```json + --8<-- "examples/is_discarded.output" + ``` + +## Version history + +- Added in version 1.0.0. diff --git a/docs/mkdocs/docs/api/basic_json/is_null.md b/docs/mkdocs/docs/api/basic_json/is_null.md new file mode 100644 index 00000000..d080ad32 --- /dev/null +++ b/docs/mkdocs/docs/api/basic_json/is_null.md @@ -0,0 +1,39 @@ +# nlohmann::basic_json::is_null + +```cpp +constexpr bool is_null() const noexcept; +``` + +This function returns `#!cpp true` if and only if the JSON value is `#!json null`. + +## Return value + +`#!cpp true` if type is `#!json null`, `#!cpp false` otherwise. + +## Exception safety + +No-throw guarantee: this member function never throws exceptions. + +## Complexity + +Constant. + +## Examples + +??? example + + The following code exemplifies `is_null()` for all JSON types. + + ```cpp + --8<-- "examples/is_null.cpp" + ``` + + Output: + + ```json + --8<-- "examples/is_null.output" + ``` + +## Version history + +- Added in version 1.0.0. diff --git a/docs/mkdocs/docs/api/basic_json/is_number.md b/docs/mkdocs/docs/api/basic_json/is_number.md new file mode 100644 index 00000000..9807911b --- /dev/null +++ b/docs/mkdocs/docs/api/basic_json/is_number.md @@ -0,0 +1,56 @@ +# nlohmann::basic_json::is_number + +```cpp +constexpr bool is_number() const noexcept; +``` + +This function returns `#!cpp true` if and only if the JSON value is a number. This includes both integer (signed and +unsigned) and floating-point values. + +## Return value + +`#!cpp true` if type is number (regardless whether integer, unsigned integer or floating-type), `#!cpp false` otherwise. + +## Exception safety + +No-throw guarantee: this member function never throws exceptions. + +## Complexity + +Constant. + +## Possible implementation + +```cpp +constexpr bool is_number() const noexcept +{ + return is_number_integer() || is_number_float(); +} +``` + +## Examples + +??? example + + The following code exemplifies `is_number()` for all JSON types. + + ```cpp + --8<-- "examples/is_number.cpp" + ``` + + Output: + + ```json + --8<-- "examples/is_number.output" + ``` + +## See also + +- [is_number_integer()](is_number_integer.md) check if value is an integer or unsigned integer number +- [is_number_unsigned()](is_number_unsigned.md) check if value is an unsigned integer number +- [is_number_float()](is_number_float.md) check if value is a floating-point number + +## Version history + +- Added in version 1.0.0. +- Extended to also return `#!cpp true` for unsigned integers in 2.0.0. diff --git a/docs/mkdocs/docs/api/basic_json/is_number_float.md b/docs/mkdocs/docs/api/basic_json/is_number_float.md new file mode 100644 index 00000000..68d0cfb0 --- /dev/null +++ b/docs/mkdocs/docs/api/basic_json/is_number_float.md @@ -0,0 +1,46 @@ +# nlohmann::basic_json::is_number_float + +```cpp +constexpr bool is_number_float() const noexcept; +``` + +This function returns `#!cpp true` if and only if the JSON value is a floating-point number. This excludes signed and +unsigned integer values. + +## Return value + +`#!cpp true` if type is a floating-point number, `#!cpp false` otherwise. + +## Exception safety + +No-throw guarantee: this member function never throws exceptions. + +## Complexity + +Constant. + +## Examples + +??? example + + The following code exemplifies `is_number_float()` for all JSON types. + + ```cpp + --8<-- "examples/is_number_float.cpp" + ``` + + Output: + + ```json + --8<-- "examples/is_number_float.output" + ``` + +## See also + +- [is_number()](is_number.md) check if value is a number +- [is_number_integer()](is_number_integer.md) check if value is an integer or unsigned integer number +- [is_number_unsigned()](is_number_unsigned.md) check if value is an unsigned integer number + +## Version history + +- Added in version 1.0.0. diff --git a/docs/mkdocs/docs/api/basic_json/is_number_integer.md b/docs/mkdocs/docs/api/basic_json/is_number_integer.md new file mode 100644 index 00000000..8ca214ae --- /dev/null +++ b/docs/mkdocs/docs/api/basic_json/is_number_integer.md @@ -0,0 +1,47 @@ +# nlohmann::basic_json::is_number_integer + +```cpp +constexpr bool is_number_integer() const noexcept; +``` + +This function returns `#!cpp true` if and only if the JSON value is a signed or unsigned integer number. This excludes +floating-point values. + +## Return value + +`#!cpp true` if type is an integer or unsigned integer number, `#!cpp false` otherwise. + +## Exception safety + +No-throw guarantee: this member function never throws exceptions. + +## Complexity + +Constant. + +## Examples + +??? example + + The following code exemplifies `is_number_integer()` for all JSON types. + + ```cpp + --8<-- "examples/is_number_integer.cpp" + ``` + + Output: + + ```json + --8<-- "examples/is_number_integer.output" + ``` + +## See also + +- [is_number()](is_number.md) check if value is a number +- [is_number_unsigned()](is_number_unsigned.md) check if value is an unsigned integer number +- [is_number_float()](is_number_float.md) check if value is a floating-point number + +## Version history + +- Added in version 1.0.0. +- Extended to also return `#!cpp true` for unsigned integers in 2.0.0. diff --git a/docs/mkdocs/docs/api/basic_json/is_number_unsigned.md b/docs/mkdocs/docs/api/basic_json/is_number_unsigned.md new file mode 100644 index 00000000..2ac98a5f --- /dev/null +++ b/docs/mkdocs/docs/api/basic_json/is_number_unsigned.md @@ -0,0 +1,46 @@ +# nlohmann::basic_json::is_number_unsigned + +```cpp +constexpr bool is_number_unsigned() const noexcept; +``` + +This function returns `#!cpp true` if and only if the JSON value is an unsigned integer number. This excludes +floating-point and signed integer values. + +## Return value + +`#!cpp true` if type is an unsigned integer number, `#!cpp false` otherwise. + +## Exception safety + +No-throw guarantee: this member function never throws exceptions. + +## Complexity + +Constant. + +## Examples + +??? example + + The following code exemplifies `is_number_unsigned()` for all JSON types. + + ```cpp + --8<-- "examples/is_number_unsigned.cpp" + ``` + + Output: + + ```json + --8<-- "examples/is_number_unsigned.output" + ``` + +## See also + +- [is_number()](is_number.md) check if value is a number +- [is_number_integer()](is_number_integer.md) check if value is an integer or unsigned integer number +- [is_number_float()](is_number_float.md) check if value is a floating-point number + +## Version history + +- Added in version 2.0.0. diff --git a/docs/mkdocs/docs/api/basic_json/is_object.md b/docs/mkdocs/docs/api/basic_json/is_object.md new file mode 100644 index 00000000..04457013 --- /dev/null +++ b/docs/mkdocs/docs/api/basic_json/is_object.md @@ -0,0 +1,39 @@ +# nlohmann::basic_json::is_object + +```cpp +constexpr bool is_object() const noexcept; +``` + +This function returns `#!cpp true` if and only if the JSON value is an object. + +## Return value + +`#!cpp true` if type is an object, `#!cpp false` otherwise. + +## Exception safety + +No-throw guarantee: this member function never throws exceptions. + +## Complexity + +Constant. + +## Examples + +??? example + + The following code exemplifies `is_object()` for all JSON types. + + ```cpp + --8<-- "examples/is_object.cpp" + ``` + + Output: + + ```json + --8<-- "examples/is_object.output" + ``` + +## Version history + +- Added in version 1.0.0. diff --git a/docs/mkdocs/docs/api/basic_json/is_primitive.md b/docs/mkdocs/docs/api/basic_json/is_primitive.md new file mode 100644 index 00000000..cf6cbbd4 --- /dev/null +++ b/docs/mkdocs/docs/api/basic_json/is_primitive.md @@ -0,0 +1,69 @@ +# nlohmann::basic_json::is_primitive + +```cpp +constexpr bool is_primitive() const noexcept; +``` + +This function returns `#!cpp true` if and only if the JSON type is primitive (string, number, boolean, `#!json null`, +binary). + +## Return value + +`#!cpp true` if type is primitive (string, number, boolean, `#!json null`, or binary), `#!cpp false` otherwise. + +## Exception safety + +No-throw guarantee: this member function never throws exceptions. + +## Complexity + +Constant. + +## Possible implementation + +```cpp +constexpr bool is_primitive() const noexcept +{ + return is_null() || is_string() || is_boolean() || is_number() || is_binary(); +} +``` + +## Notes + +The term *primitive* stems from [RFC 8259](https://tools.ietf.org/html/rfc8259): + +> JSON can represent four primitive types (strings, numbers, booleans, and null) and two structured types (objects and +> arrays). + +This library extends primitive types to binary types, because binary types are roughly comparable to strings. Hence, +`is_primitive()` returns `#!cpp true` for binary values. + +## Examples + +??? example + + The following code exemplifies `is_primitive()` for all JSON types. + + ```cpp + --8<-- "examples/is_primitive.cpp" + ``` + + Output: + + ```json + --8<-- "examples/is_primitive.output" + ``` + +## See also + +- [is_structured()](is_structured.md) returns whether JSON value is structured +- [is_null()](is_null.md) returns whether JSON value is `null` +- [is_string()](is_string.md) returns whether JSON value is a string +- [is_boolean()](is_boolean.md) returns whether JSON value is a boolean +- [is_number()](is_number.md) returns whether JSON value is a number +- [is_binary()](is_binary.md) returns whether JSON value is a binary array + +## Version history + +- Added in version 1.0.0. +- Extended to return `#!cpp true` for binary types in version 3.8.0. diff --git a/docs/mkdocs/docs/api/basic_json/is_string.md b/docs/mkdocs/docs/api/basic_json/is_string.md new file mode 100644 index 00000000..b82c9246 --- /dev/null +++ b/docs/mkdocs/docs/api/basic_json/is_string.md @@ -0,0 +1,39 @@ +# nlohmann::basic_json::is_string + +```cpp +constexpr bool is_string() const noexcept; +``` + +This function returns `#!cpp true` if and only if the JSON value is a string. + +## Return value + +`#!cpp true` if type is a string, `#!cpp false` otherwise. + +## Exception safety + +No-throw guarantee: this member function never throws exceptions. + +## Complexity + +Constant. + +## Examples + +??? example + + The following code exemplifies `is_string()` for all JSON types. + + ```cpp + --8<-- "examples/is_string.cpp" + ``` + + Output: + + ```json + --8<-- "examples/is_string.output" + ``` + +## Version history + +- Added in version 1.0.0. diff --git a/docs/mkdocs/docs/api/basic_json/is_structured.md b/docs/mkdocs/docs/api/basic_json/is_structured.md new file mode 100644 index 00000000..f8fe4dcb --- /dev/null +++ b/docs/mkdocs/docs/api/basic_json/is_structured.md @@ -0,0 +1,63 @@ +# nlohmann::basic_json::is_structured + +```cpp +constexpr bool is_structured() const noexcept; +``` + +This function returns `#!cpp true` if and only if the JSON type is structured (array or object). + +## Return value + +`#!cpp true` if type is structured (array or object), `#!cpp false` otherwise. + +## Exception safety + +No-throw guarantee: this member function never throws exceptions. + +## Complexity + +Constant. + +## Possible implementation + +```cpp +constexpr bool is_primitive() const noexcept +{ + return is_array() || is_object(); +} +``` + +## Notes + +The term *structured* stems from [RFC 8259](https://tools.ietf.org/html/rfc8259): + +> JSON can represent four primitive types (strings, numbers, booleans, and null) and two structured types (objects and +> arrays). + +Note that though strings are containers in C++, they are treated as primitive values in JSON. + +## Examples + +??? example + + The following code exemplifies `is_structured()` for all JSON types. + + ```cpp + --8<-- "examples/is_structured.cpp" + ``` + + Output: + + ```json + --8<-- "examples/is_structured.output" + ``` + +## See also + +- [is_primitive()](is_primitive.md) returns whether JSON value is primitive +- [is_array()](is_array.md) returns whether value is an array +- [is_object()](is_object.md) returns whether value is an object + +## Version history + +- Added in version 1.0.0. diff --git a/docs/mkdocs/docs/api/basic_json/items.md b/docs/mkdocs/docs/api/basic_json/items.md new file mode 100644 index 00000000..0b34ddcb --- /dev/null +++ b/docs/mkdocs/docs/api/basic_json/items.md @@ -0,0 +1,100 @@ +# nlohmann::basic_json::items + +```cpp +iteration_proxy items() noexcept; +iteration_proxy items() const noexcept; +``` + +This function allows accessing `iterator::key()` and `iterator::value()` during range-based for loops. In these loops, a +reference to the JSON values is returned, so there is no access to the underlying iterator. + +For loop without `items()` function: + +```cpp +for (auto it = j_object.begin(); it != j_object.end(); ++it) +{ + std::cout << "key: " << it.key() << ", value:" << it.value() << '\n'; +} +``` + +Range-based for loop without `items()` function: + +```cpp +for (auto it : j_object) +{ + // "it" is of type json::reference and has no key() member + std::cout << "value: " << it << '\n'; +} +``` + +Range-based for loop with `items()` function: + +```cpp +for (auto& el : j_object.items()) +{ + std::cout << "key: " << el.key() << ", value:" << el.value() << '\n'; +} +``` + +The `items()` function also allows using +[structured bindings](https://en.cppreference.com/w/cpp/language/structured_binding) (C++17): + +```cpp +for (auto& [key, val] : j_object.items()) +{ + std::cout << "key: " << key << ", value:" << val << '\n'; +} +``` + +## Return value + +iteration proxy object wrapping the current value with an interface to use in range-based for loops + +## Exception safety + +Strong guarantee: if an exception is thrown, there are no changes in the JSON value. + +## Complexity + +Constant. + +## Notes + +When iterating over an array, `key()` will return the index of the element as string (see example). For primitive types +(e.g., numbers), `key()` returns an empty string. + +!!! danger "Lifetime issues" + + Using `items()` on temporary objects is dangerous. Make sure the object's lifetime exceeds the iteration. See + for more information. + +## Examples + +??? example + + The following code shows an example for `items()`. + + ```cpp + --8<-- "examples/items.cpp" + ``` + + Output: + + ```json + --8<-- "examples/items.output" + ``` + +## Version history + +- Added `iterator_wrapper` in version 3.0.0. +- Added `items` and deprecated `iterator_wrapper` in version 3.1.0. +- Added structured binding support in version 3.5.0. + +!!! warning "Deprecation" + + This function replaces the static function `iterator_wrapper` which was introduced in version 1.0.0, but has been + deprecated in version 3.1.0. Function `iterator_wrapper` will be removed in version 4.0.0. Please replace all + occurrences of `#!cpp iterator_wrapper(j)` with `#!cpp j.items()`. + + You should be warned by your compiler with a `-Wdeprecated-declarations` warning if you are using a deprecated + function. diff --git a/docs/mkdocs/docs/api/basic_json/json_base_class_t.md b/docs/mkdocs/docs/api/basic_json/json_base_class_t.md new file mode 100644 index 00000000..75752049 --- /dev/null +++ b/docs/mkdocs/docs/api/basic_json/json_base_class_t.md @@ -0,0 +1,45 @@ +# nlohmann::basic_json::json_base_class_t + +```cpp +using json_base_class_t = detail::json_base_class; +``` + +The base class used to inject custom functionality into each instance of `basic_json`. +Examples of such functionality might be metadata, additional member functions (e.g., visitors), or other application-specific code. + +## Template parameters + +`CustomBaseClass` +: the base class to be added to `basic_json` + +## Notes + +#### Default type + +The default value for `CustomBaseClass` is `void`. In this case an +[empty base class](https://en.cppreference.com/w/cpp/language/ebo) is used and no additional functionality is injected. + +#### Limitations + +The type `CustomBaseClass` has to be a default-constructible class. +`basic_json` only supports copy/move construction/assignment if `CustomBaseClass` does so as well. + +## Examples + +??? example + + The following code shows how to inject custom data and methods for each node. + + ```cpp + --8<-- "examples/json_base_class_t.cpp" + ``` + + Output: + + ```json + --8<-- "examples/json_base_class_t.output" + ``` + +## Version history + +- Added in version 3.12.0. diff --git a/docs/mkdocs/docs/api/basic_json/json_serializer.md b/docs/mkdocs/docs/api/basic_json/json_serializer.md new file mode 100644 index 00000000..24a37735 --- /dev/null +++ b/docs/mkdocs/docs/api/basic_json/json_serializer.md @@ -0,0 +1,41 @@ +# nlohmann::basic_json::json_serializer + +```cpp +template +using json_serializer = JSONSerializer; +``` + +## Template parameters + +`T` +: type to convert; will be used in the `to_json`/`from_json` functions + +`SFINAE` +: type to add compile type checks via SFINAE; usually `#!cpp void` + +## Notes + +#### Default type + +The default values for `json_serializer` is [`adl_serializer`](../adl_serializer/index.md). + +## Examples + +??? example + + The example below shows how a conversion of a non-default-constructible type is implemented via a specialization of + the `adl_serializer`. + + ```cpp + --8<-- "examples/from_json__non_default_constructible.cpp" + ``` + + Output: + + ```json + --8<-- "examples/from_json__non_default_constructible.output" + ``` + +## Version history + +- Since version 2.0.0. diff --git a/docs/mkdocs/docs/api/basic_json/max_size.md b/docs/mkdocs/docs/api/basic_json/max_size.md new file mode 100644 index 00000000..4c0c5752 --- /dev/null +++ b/docs/mkdocs/docs/api/basic_json/max_size.md @@ -0,0 +1,60 @@ +# nlohmann::basic_json::max_size + +```cpp +size_type max_size() const noexcept; +``` + +Returns the maximum number of elements a JSON value is able to hold due to system or library implementation limitations, +i.e. `std::distance(begin(), end())` for the JSON value. + +## Return value + +The return value depends on the different types and is defined as follows: + +| Value type | return value | +|------------|-------------------------------------------| +| null | `0` (same as [`size()`](size.md)) | +| boolean | `1` (same as [`size()`](size.md)) | +| string | `1` (same as [`size()`](size.md)) | +| number | `1` (same as [`size()`](size.md)) | +| binary | `1` (same as [`size()`](size.md)) | +| object | result of function `object_t::max_size()` | +| array | result of function `array_t::max_size()` | + +## Exception safety + +No-throw guarantee: this function never throws exceptions. + +## Complexity + +Constant, as long as [`array_t`](array_t.md) and [`object_t`](object_t.md) satisfy the +[Container](https://en.cppreference.com/w/cpp/named_req/Container) concept; that is, their `max_size()` functions have +constant complexity. + +## Notes + +This function does not return the maximal length of a string stored as JSON value -- it returns the maximal number of +string elements the JSON value can store which is `1`. + +## Examples + +??? example + + The following code calls `max_size()` on the different value types. + + ```cpp + --8<-- "examples/max_size.cpp" + ``` + + Output: + + ```json + --8<-- "examples/max_size.output" + ``` + + Note the output is platform-dependent. + +## Version history + +- Added in version 1.0.0. +- Extended to return `1` for binary types in version 3.8.0. diff --git a/docs/mkdocs/docs/api/basic_json/merge_patch.md b/docs/mkdocs/docs/api/basic_json/merge_patch.md new file mode 100644 index 00000000..1718c922 --- /dev/null +++ b/docs/mkdocs/docs/api/basic_json/merge_patch.md @@ -0,0 +1,63 @@ +# nlohmann::basic_json::merge_patch + +```cpp +void merge_patch(const basic_json& apply_patch); +``` + +The merge patch format is primarily intended for use with the HTTP PATCH method as a means of describing a set of +modifications to a target resource's content. This function applies a merge patch to the current JSON value. + +The function implements the following algorithm from Section 2 of +[RFC 7396 (JSON Merge Patch)](https://tools.ietf.org/html/rfc7396): + +```python +define MergePatch(Target, Patch): + if Patch is an Object: + if Target is not an Object: + Target = {} // Ignore the contents and set it to an empty Object + for each Name/Value pair in Patch: + if Value is null: + if Name exists in Target: + remove the Name/Value pair from Target + else: + Target[Name] = MergePatch(Target[Name], Value) + return Target + else: + return Patch +``` + +Thereby, `Target` is the current object; that is, the patch is applied to the current value. + +## Parameters + +`apply_patch` (in) +: the patch to apply + +## Complexity + +Linear in the lengths of `apply_patch`. + +## Examples + +??? example + + The following code shows how a JSON Merge Patch is applied to a JSON document. + + ```cpp + --8<-- "examples/merge_patch.cpp" + ``` + + Output: + + ```json + --8<-- "examples/merge_patch.output" + ``` + +## See also + +- [RFC 7396 (JSON Merge Patch)](https://tools.ietf.org/html/rfc7396) +- [patch](patch.md) apply a JSON patch + +## Version history + +- Added in version 3.0.0. diff --git a/docs/mkdocs/docs/api/basic_json/meta.md b/docs/mkdocs/docs/api/basic_json/meta.md new file mode 100644 index 00000000..c584f9b6 --- /dev/null +++ b/docs/mkdocs/docs/api/basic_json/meta.md @@ -0,0 +1,56 @@ +# nlohmann::basic_json::meta + +```cpp +static basic_json meta(); +``` + +This function returns a JSON object with information about the library, including the version number and information on +the platform and compiler. + +## Return value + +JSON object holding version information + +| key | description | +|-------------|--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------| +| `compiler` | Information on the used compiler. It is an object with the following keys: `c++` (the used C++ standard), `family` (the compiler family; possible values are `clang`, `icc`, `gcc`, `ilecpp`, `msvc`, `pgcpp`, `sunpro`, and `unknown`), and `version` (the compiler version). | +| `copyright` | The copyright line for the library as string. | +| `name` | The name of the library as string. | +| `platform` | The used platform as string. Possible values are `win32`, `linux`, `apple`, `unix`, and `unknown`. | +| `url` | The URL of the project as string. | +| `version` | The version of the library. It is an object with the following keys: `major`, `minor`, and `patch` as defined by [Semantic Versioning](http://semver.org), and `string` (the version string). | + +## Exception safety + +Strong guarantee: if an exception is thrown, there are no changes to any JSON value. + +## Complexity + +Constant. + +## Examples + +??? example + + The following code shows an example output of the `meta()` function. + + ```cpp + --8<-- "examples/meta.cpp" + ``` + + Output: + + ```json + --8<-- "examples/meta.output" + ``` + + Note the output is platform-dependent. + +## See also + +- [**NLOHMANN_JSON_VERSION_MAJOR**/**NLOHMANN_JSON_VERSION_MINOR**/**NLOHMANN_JSON_VERSION_PATCH**](../macros/nlohmann_json_version_major.md) + \- library version information + +## Version history + +- Added in version 2.1.0. diff --git a/docs/mkdocs/docs/api/basic_json/number_float_t.md b/docs/mkdocs/docs/api/basic_json/number_float_t.md new file mode 100644 index 00000000..50aa43b4 --- /dev/null +++ b/docs/mkdocs/docs/api/basic_json/number_float_t.md @@ -0,0 +1,70 @@ +# nlohmann::basic_json::number_float_t + +```cpp +using number_float_t = NumberFloatType; +``` + +The type used to store JSON numbers (floating-point). + +[RFC 8259](https://tools.ietf.org/html/rfc8259) describes numbers as follows: +> The representation of numbers is similar to that used in most programming languages. A number is represented in base +> 10 using decimal digits. It contains an integer component that may be prefixed with an optional minus sign, which may +> be followed by a fraction part and/or an exponent part. Leading zeros are not allowed. (...) Numeric values that +> cannot be represented in the grammar below (such as Infinity and NaN) are not permitted. + +This description includes both integer and floating-point numbers. However, C++ allows more precise storage if it is +known whether the number is a signed integer, an unsigned integer or a floating-point number. Therefore, three different +types, [`number_integer_t`](number_integer_t.md), [`number_unsigned_t`](number_unsigned_t.md) and `number_float_t` are +used. + +To store floating-point numbers in C++, a type is defined by the template parameter `NumberFloatType` which chooses the +type to use. + +## Notes + +#### Default type + +With the default values for `NumberFloatType` (`double`), the default value for `number_float_t` is `#!cpp double`. + +#### Default behavior + +- The restrictions about leading zeros is not enforced in C++. Instead, leading zeros in floating-point literals will be + ignored. Internally, the value will be stored as decimal number. For instance, the C++ floating-point literal `01.2` + will be serialized to `1.2`. During deserialization, leading zeros yield an error. +- Not-a-number (NaN) values will be serialized to `null`. + +#### Limits + +[RFC 8259](https://tools.ietf.org/html/rfc8259) states: +> This specification allows implementations to set limits on the range and precision of numbers accepted. Since software +> that implements IEEE 754-2008 binary64 (double precision) numbers is generally available and widely used, good +> interoperability can be achieved by implementations that expect no more precision or range than these provide, in the +> sense that implementations will approximate JSON numbers within the expected precision. + +This implementation does exactly follow this approach, as it uses double precision floating-point numbers. Note values +smaller than `-1.79769313486232e+308` and values greater than `1.79769313486232e+308` will be stored as NaN internally +and be serialized to `null`. + +#### Storage + +Floating-point number values are stored directly inside a `basic_json` type. + +## Examples + +??? example + + The following code shows that `number_float_t` is by default, a typedef to `#!cpp double`. + + ```cpp + --8<-- "examples/number_float_t.cpp" + ``` + + Output: + + ```json + --8<-- "examples/number_float_t.output" + ``` + +## Version history + +- Added in version 1.0.0. diff --git a/docs/mkdocs/docs/api/basic_json/number_integer_t.md b/docs/mkdocs/docs/api/basic_json/number_integer_t.md new file mode 100644 index 00000000..9bb3835a --- /dev/null +++ b/docs/mkdocs/docs/api/basic_json/number_integer_t.md @@ -0,0 +1,76 @@ +# nlohmann::basic_json::number_integer_t + +```cpp +using number_integer_t = NumberIntegerType; +``` + +The type used to store JSON numbers (integers). + +[RFC 8259](https://tools.ietf.org/html/rfc8259) describes numbers as follows: +> The representation of numbers is similar to that used in most programming languages. A number is represented in base +> 10 using decimal digits. It contains an integer component that may be prefixed with an optional minus sign, which may +> be followed by a fraction part and/or an exponent part. Leading zeros are not allowed. (...) Numeric values that +> cannot be represented in the grammar below (such as Infinity and NaN) are not permitted. + +This description includes both integer and floating-point numbers. However, C++ allows more precise storage if it is +known whether the number is a signed integer, an unsigned integer or a floating-point number. Therefore, three different +types, `number_integer_t`, [`number_unsigned_t`](number_unsigned_t.md) and [`number_float_t`](number_float_t.md) are +used. + +To store integer numbers in C++, a type is defined by the template parameter `NumberIntegerType` which chooses the type +to use. + +## Notes + +#### Default type + +With the default values for `NumberIntegerType` (`std::int64_t`), the default value for `number_integer_t` is +`#!cpp std::int64_t`. + +#### Default behavior + +- The restrictions about leading zeros is not enforced in C++. Instead, leading zeros in integer literals lead to an + interpretation as octal number. Internally, the value will be stored as decimal number. For instance, the C++ integer + literal `010` will be serialized to `8`. During deserialization, leading zeros yield an error. +- Not-a-number (NaN) values will be serialized to `null`. + +#### Limits + +[RFC 8259](https://tools.ietf.org/html/rfc8259) specifies: +> An implementation may set limits on the range and precision of numbers. + +When the default type is used, the maximal integer number that can be stored is `9223372036854775807` (INT64_MAX) and +the minimal integer number that can be stored is `-9223372036854775808` (INT64_MIN). Integer numbers that are out of +range will yield over/underflow when used in a constructor. During deserialization, too large or small integer numbers +will be automatically be stored as [`number_unsigned_t`](number_unsigned_t.md) or [`number_float_t`](number_float_t.md). + +[RFC 8259](https://tools.ietf.org/html/rfc8259) further states: +> Note that when such software is used, numbers that are integers and are in the range $[-2^{53}+1, 2^{53}-1]$ are +> interoperable in the sense that implementations will agree exactly on their numeric values. + +As this range is a subrange of the exactly supported range [INT64_MIN, INT64_MAX], this class's integer type is +interoperable. + +#### Storage + +Integer number values are stored directly inside a `basic_json` type. + +## Examples + +??? example + + The following code shows that `number_integer_t` is by default, a typedef to `#!cpp std::int64_t`. + + ```cpp + --8<-- "examples/number_integer_t.cpp" + ``` + + Output: + + ```json + --8<-- "examples/number_integer_t.output" + ``` + +## Version history + +- Added in version 1.0.0. diff --git a/docs/mkdocs/docs/api/basic_json/number_unsigned_t.md b/docs/mkdocs/docs/api/basic_json/number_unsigned_t.md new file mode 100644 index 00000000..8a1540a5 --- /dev/null +++ b/docs/mkdocs/docs/api/basic_json/number_unsigned_t.md @@ -0,0 +1,76 @@ +# nlohmann::basic_json::number_unsigned_t + +```cpp +using number_unsigned_t = NumberUnsignedType; +``` + +The type used to store JSON numbers (unsigned). + +[RFC 8259](https://tools.ietf.org/html/rfc8259) describes numbers as follows: +> The representation of numbers is similar to that used in most programming languages. A number is represented in base +> 10 using decimal digits. It contains an integer component that may be prefixed with an optional minus sign, which may +> be followed by a fraction part and/or an exponent part. Leading zeros are not allowed. (...) Numeric values that +> cannot be represented in the grammar below (such as Infinity and NaN) are not permitted. + +This description includes both integer and floating-point numbers. However, C++ allows more precise storage if it is +known whether the number is a signed integer, an unsigned integer or a floating-point number. Therefore, three different +types, [`number_integer_t`](number_integer_t.md), `number_unsigned_t` and [`number_float_t`](number_float_t.md) are +used. + +To store unsigned integer numbers in C++, a type is defined by the template parameter `NumberUnsignedType` which chooses +the type to use. + +## Notes + +#### Default type + +With the default values for `NumberUnsignedType` (`std::uint64_t`), the default value for `number_unsigned_t` is +`#!cpp std::uint64_t`. + +#### Default behavior + +- The restrictions about leading zeros is not enforced in C++. Instead, leading zeros in integer literals lead to an + interpretation as octal number. Internally, the value will be stored as decimal number. For instance, the C++ integer + literal `010` will be serialized to `8`. During deserialization, leading zeros yield an error. +- Not-a-number (NaN) values will be serialized to `null`. + +#### Limits + +[RFC 8259](https://tools.ietf.org/html/rfc8259) specifies: +> An implementation may set limits on the range and precision of numbers. + +When the default type is used, the maximal integer number that can be stored is `18446744073709551615` (UINT64_MAX) and +the minimal integer number that can be stored is `0`. Integer numbers that are out of range will yield over/underflow +when used in a constructor. During deserialization, too large or small integer numbers will be automatically be stored +as [`number_integer_t`](number_integer_t.md) or [`number_float_t`](number_float_t.md). + +[RFC 8259](https://tools.ietf.org/html/rfc8259) further states: +> Note that when such software is used, numbers that are integers and are in the range \f$[-2^{53}+1, 2^{53}-1]\f$ are +> interoperable in the sense that implementations will agree exactly on their numeric values. + +As this range is a subrange (when considered in conjunction with the `number_integer_t` type) of the exactly supported +range [0, UINT64_MAX], this class's integer type is interoperable. + +#### Storage + +Integer number values are stored directly inside a `basic_json` type. + +## Examples + +??? example + + The following code shows that `number_unsigned_t` is by default, a typedef to `#!cpp std::uint64_t`. + + ```cpp + --8<-- "examples/number_unsigned_t.cpp" + ``` + + Output: + + ```json + --8<-- "examples/number_unsigned_t.output" + ``` + +## Version history + +- Added in version 2.0.0. diff --git a/docs/mkdocs/docs/api/basic_json/object.md b/docs/mkdocs/docs/api/basic_json/object.md new file mode 100644 index 00000000..9bdbddb6 --- /dev/null +++ b/docs/mkdocs/docs/api/basic_json/object.md @@ -0,0 +1,63 @@ +# nlohmann::basic_json::object + +```cpp +static basic_json object(initializer_list_t init = {}); +``` + +Creates a JSON object value from a given initializer list. The initializer lists elements must be pairs, and their first +elements must be strings. If the initializer list is empty, the empty object `#!json {}` is created. + +## Parameters + +`init` (in) +: initializer list with JSON values to create an object from (optional) + +## Return value + +JSON object value + +## Exception safety + +Strong guarantee: if an exception is thrown, there are no changes in the JSON value. + +## Exceptions + +Throws [`type_error.301`](../../home/exceptions.md#jsonexceptiontype_error301) if `init` is not a list of pairs whose +first elements are strings. In this case, no object can be created. When such a value is passed to +`basic_json(initializer_list_t, bool, value_t)`, an array would have been created from the passed initializer list +`init`. See example below. + +## Complexity + +Linear in the size of `init`. + +## Notes + +This function is only added for symmetry reasons. In contrast to the related function `array(initializer_list_t)`, there +are no cases which can only be expressed by this function. That is, any initializer list `init` can also be passed to +the initializer list constructor `basic_json(initializer_list_t, bool, value_t)`. + +## Examples + +??? example + + The following code shows an example for the `object` function. + + ```cpp + --8<-- "examples/object.cpp" + ``` + + Output: + + ```json + --8<-- "examples/object.output" + ``` + +## See also + +- [`basic_json(initializer_list_t)`](basic_json.md) - create a JSON value from an initializer list +- [`array`](array.md) - create a JSON array value from an initializer list + +## Version history + +- Added in version 1.0.0. diff --git a/docs/mkdocs/docs/api/basic_json/object_comparator_t.md b/docs/mkdocs/docs/api/basic_json/object_comparator_t.md new file mode 100644 index 00000000..d41b9822 --- /dev/null +++ b/docs/mkdocs/docs/api/basic_json/object_comparator_t.md @@ -0,0 +1,32 @@ +# nlohmann::basic_json::object_comparator_t + +```cpp +using object_comparator_t = typename object_t::key_compare; +// or +using object_comparator_t = default_object_comparator_t; +``` + +The comparator used by [`object_t`](object_t.md). Defined as `#!cpp typename object_t::key_compare` if available, +and [`default_object_comparator_t`](default_object_comparator_t.md) otherwise. + +## Examples + +??? example + + The example below demonstrates the used object comparator. + + ```cpp + --8<-- "examples/object_comparator_t.cpp" + ``` + + Output: + + ```json + --8<-- "examples/object_comparator_t.output" + ``` + +## Version history + +- Added in version 3.0.0. +- Changed to be conditionally defined as `#!cpp typename object_t::key_compare` or `default_object_comparator_t` in + version 3.11.0. diff --git a/docs/mkdocs/docs/api/basic_json/object_t.md b/docs/mkdocs/docs/api/basic_json/object_t.md new file mode 100644 index 00000000..39f68b08 --- /dev/null +++ b/docs/mkdocs/docs/api/basic_json/object_t.md @@ -0,0 +1,114 @@ +# nlohmann::basic_json::object_t + +```cpp +using object_t = ObjectType>>; +``` + +The type used to store JSON objects. + +[RFC 8259](https://tools.ietf.org/html/rfc8259) describes JSON objects as follows: +> An object is an unordered collection of zero or more name/value pairs, where a name is a string and a value is a +> string, number, boolean, null, object, or array. + +To store objects in C++, a type is defined by the template parameters described below. + +## Template parameters + +`ObjectType` +: the container to store objects (e.g., `std::map` or `std::unordered_map`) + +`StringType` +: the type of the keys or names (e.g., `std::string`). The comparison function `std::less` is used to + order elements inside the container. + +`AllocatorType` +: the allocator to use for objects (e.g., `std::allocator`) + +## Notes + +#### Default type + +With the default values for `ObjectType` (`std::map`), `StringType` (`std::string`), and `AllocatorType` +(`std::allocator`), the default value for `object_t` is: + +```cpp +// until C++14 +std::map< + std::string, // key_type + basic_json, // value_type + std::less, // key_compare + std::allocator> // allocator_type +> + +// since C++14 +std::map< + std::string, // key_type + basic_json, // value_type + std::less<>, // key_compare + std::allocator> // allocator_type +> +``` + +See [`default_object_comparator_t`](default_object_comparator_t.md) for more information. + +#### Behavior + +The choice of `object_t` influences the behavior of the JSON class. With the default type, objects have the following +behavior: + +- When all names are unique, objects will be interoperable in the sense that all software implementations receiving that + object will agree on the name-value mappings. +- When the names within an object are not unique, it is unspecified which one of the values for a given key will be + chosen. For instance, `#!json {"key": 2, "key": 1}` could be equal to either `#!json {"key": 1}` or + `#!json {"key": 2}`. +- Internally, name/value pairs are stored in lexicographical order of the names. Objects will also be serialized (see + [`dump`](dump.md)) in this order. For instance, `#!json {"b": 1, "a": 2}` and `#!json {"a": 2, "b": 1}` will be stored + and serialized as `#!json {"a": 2, "b": 1}`. +- When comparing objects, the order of the name/value pairs is irrelevant. This makes objects interoperable in the sense + that they will not be affected by these differences. For instance, `#!json {"b": 1, "a": 2}` and + `#!json {"a": 2, "b": 1}` will be treated as equal. + +#### Limits + +[RFC 8259](https://tools.ietf.org/html/rfc8259) specifies: +> An implementation may set limits on the maximum depth of nesting. + +In this class, the object's limit of nesting is not explicitly constrained. However, a maximum depth of nesting may be +introduced by the compiler or runtime environment. A theoretical limit can be queried by calling the +[`max_size`](max_size.md) function of a JSON object. + +#### Storage + +Objects are stored as pointers in a `basic_json` type. That is, for any access to object values, a pointer of type +`object_t*` must be dereferenced. + +#### Object key order + +The order name/value pairs are added to the object is *not* preserved by the library. Therefore, iterating an object may +return name/value pairs in a different order than they were originally stored. In fact, keys will be traversed in +alphabetical order as `std::map` with `std::less` is used by default. Please note this behavior conforms to +[RFC 8259](https://tools.ietf.org/html/rfc8259), because any order implements the specified "unordered" nature of JSON +objects. + +## Examples + +??? example + + The following code shows that `object_t` is by default, a typedef to `#!cpp std::map`. + + ```cpp + --8<-- "examples/object_t.cpp" + ``` + + Output: + + ```json + --8<-- "examples/object_t.output" + ``` + +## Version history + +- Added in version 1.0.0. diff --git a/docs/mkdocs/docs/api/basic_json/operator+=.md b/docs/mkdocs/docs/api/basic_json/operator+=.md new file mode 100644 index 00000000..dc5f2ecc --- /dev/null +++ b/docs/mkdocs/docs/api/basic_json/operator+=.md @@ -0,0 +1,110 @@ +# nlohmann::basic_json::operator+= + +```cpp +// (1) +reference operator+=(basic_json&& val); +reference operator+=(const basic_json& val); + +// (2) +reference operator+=(const typename object_t::value_type& val); + +// (3) +reference operator+=(initializer_list_t init); +``` + +1. Appends the given element `val` to the end of the JSON array. If the function is called on a JSON null value, an + empty array is created before appending `val`. + +2. Inserts the given element `val` to the JSON object. If the function is called on a JSON null value, an empty object + is created before inserting `val`. + +3. This function allows using `operator+=` with an initializer list. In case + + 1. the current value is an object, + 2. the initializer list `init` contains only two elements, and + 3. the first element of `init` is a string, + + `init` is converted into an object element and added using `operator+=(const typename object_t::value_type&)`. + Otherwise, `init` is converted to a JSON value and added using `operator+=(basic_json&&)`. + +## Parameters + +`val` (in) +: the value to add to the JSON array/object + +`init` (in) +: an initializer list + +## Return value + +`#!cpp *this` + +## Exceptions + +All functions can throw the following exception: + - Throws [`type_error.308`](../../home/exceptions.md#jsonexceptiontype_error308) when called on a type other than + JSON array or null; example: `"cannot use operator+=() with number"` + +## Complexity + +1. Amortized constant. +2. Logarithmic in the size of the container, O(log(`size()`)). +3. Linear in the size of the initializer list `init`. + +## Notes + +(3) This function is required to resolve an ambiguous overload error, because pairs like `{"key", "value"}` can be both +interpreted as `object_t::value_type` or `std::initializer_list`, see +[#235](https://github.com/nlohmann/json/issues/235) for more information. + +## Examples + +??? example "Example: (1) add element to array" + + The example shows how `push_back()` and `+=` can be used to add elements to a JSON array. Note how the `null` value + was silently converted to a JSON array. + + ```cpp + --8<-- "examples/push_back.cpp" + ``` + + Output: + + ```json + --8<-- "examples/push_back.output" + ``` + +??? example "Example: (2) add element to object" + + The example shows how `push_back()` and `+=` can be used to add elements to a JSON object. Note how the `null` value + was silently converted to a JSON object. + + ```cpp + --8<-- "examples/push_back__object_t__value.cpp" + ``` + + Output: + + ```json + --8<-- "examples/push_back__object_t__value.output" + ``` + +??? example "Example: (3) add to object from initializer list" + + The example shows how initializer lists are treated as objects when possible. + + ```cpp + --8<-- "examples/push_back__initializer_list.cpp" + ``` + + Output: + + ```json + --8<-- "examples/push_back__initializer_list.output" + ``` + +## Version history + +1. Since version 1.0.0. +2. Since version 1.0.0. +2. Since version 2.0.0. diff --git a/docs/mkdocs/docs/api/basic_json/operator=.md b/docs/mkdocs/docs/api/basic_json/operator=.md new file mode 100644 index 00000000..4e0b9144 --- /dev/null +++ b/docs/mkdocs/docs/api/basic_json/operator=.md @@ -0,0 +1,43 @@ +# nlohmann::basic_json::operator= + +```cpp +basic_json& operator=(basic_json other) noexcept ( + std::is_nothrow_move_constructible::value && + std::is_nothrow_move_assignable::value && + std::is_nothrow_move_constructible::value && + std::is_nothrow_move_assignable::value +); +``` + +Copy assignment operator. Copies a JSON value via the "copy and swap" strategy: It is expressed in terms of the copy +constructor, destructor, and the `swap()` member function. + +## Parameters + +`other` (in) +: value to copy from + +## Complexity + +Linear. + +## Examples + +??? example + + The code below shows and example for the copy assignment. It creates a copy of value `a` which is then swapped with + `b`. Finally, the copy of `a` (which is the null value after the swap) is destroyed. + + ```cpp + --8<-- "examples/basic_json__copyassignment.cpp" + ``` + + Output: + + ```json + --8<-- "examples/basic_json__copyassignment.output" + ``` + +## Version history + +- Added in version 1.0.0. diff --git a/docs/mkdocs/docs/api/basic_json/operator[].md b/docs/mkdocs/docs/api/basic_json/operator[].md new file mode 100644 index 00000000..51dd8588 --- /dev/null +++ b/docs/mkdocs/docs/api/basic_json/operator[].md @@ -0,0 +1,241 @@ +# nlohmann::basic_json::operator[] + +```cpp +// (1) +reference operator[](size_type idx); +const_reference operator[](size_type idx) const; + +// (2) +reference operator[](typename object_t::key_type key); +const_reference operator[](const typename object_t::key_type& key) const; + +// (3) +template +reference operator[](KeyType&& key); +template +const_reference operator[](KeyType&& key) const; + +// (4) +reference operator[](const json_pointer& ptr); +const_reference operator[](const json_pointer& ptr) const; +``` + +1. Returns a reference to the array element at specified location `idx`. +2. Returns a reference to the object element with specified key `key`. The non-const qualified overload takes the key by + value. +3. See 2. This overload is only available if `KeyType` is comparable with `#!cpp typename object_t::key_type` and + `#!cpp typename object_comparator_t::is_transparent` denotes a type. +4. Returns a reference to the element with specified JSON pointer `ptr`. + +## Template parameters + +`KeyType` +: A type for an object key other than [`json_pointer`](../json_pointer/index.md) that is comparable with + [`string_t`](string_t.md) using [`object_comparator_t`](object_comparator_t.md). + This can also be a string view (C++17). + +## Parameters + +`idx` (in) +: index of the element to access + +`key` (in) +: object key of the element to access + +`ptr` (in) +: JSON pointer to the desired element + +## Return value + +1. (const) reference to the element at index `idx` +2. (const) reference to the element at key `key` +3. (const) reference to the element at key `key` +4. (const) reference to the element pointed to by `ptr` + +## Exception safety + +Strong exception safety: if an exception occurs, the original value stays intact. + +## Exceptions + +1. The function can throw the following exceptions: + - Throws [`type_error.305`](../../home/exceptions.md#jsonexceptiontype_error305) if the JSON value is not an array + or null; in that case, using the `[]` operator with an index makes no sense. +2. The function can throw the following exceptions: + - Throws [`type_error.305`](../../home/exceptions.md#jsonexceptiontype_error305) if the JSON value is not an object + or null; in that case, using the `[]` operator with a key makes no sense. +3. See 2. +4. The function can throw the following exceptions: + - Throws [`parse_error.106`](../../home/exceptions.md#jsonexceptionparse_error106) if an array index in the passed + JSON pointer `ptr` begins with '0'. + - Throws [`parse_error.109`](../../home/exceptions.md#jsonexceptionparse_error109) if an array index in the passed + JSON pointer `ptr` is not a number. + - Throws [`out_of_range.402`](../../home/exceptions.md#jsonexceptionout_of_range402) if the array index '-' is used + in the passed JSON pointer `ptr` for the const version. + - Throws [`out_of_range.404`](../../home/exceptions.md#jsonexceptionout_of_range404) if the JSON pointer `ptr` can + not be resolved. + +## Complexity + +1. Constant if `idx` is in the range of the array. Otherwise, linear in `idx - size()`. +2. Logarithmic in the size of the container. +3. Logarithmic in the size of the container. +4. Logarithmic in the size of the container. + +## Notes + +!!! danger "Undefined behavior and runtime assertions" + + 1. If the element with key `idx` does not exist, the behavior is undefined. + 2. If the element with key `key` does not exist, the behavior is undefined and is **guarded by a + [runtime assertion](../../features/assertions.md)**! + +1. The non-const version may add values: If `idx` is beyond the range of the array (i.e., `idx >= size()`), then the + array is silently filled up with `#!json null` values to make `idx` a valid reference to the last stored element. In + case the value was `#!json null` before, it is converted to an array. + +2. If `key` is not found in the object, then it is silently added to the object and filled with a `#!json null` value to + make `key` a valid reference. In case the value was `#!json null` before, it is converted to an object. + +3. See 2. + +4. `null` values are created in arrays and objects if necessary. + + In particular: + + - If the JSON pointer points to an object key that does not exist, it is created and filled with a `#!json null` + value before a reference to it is returned. + - If the JSON pointer points to an array index that does not exist, it is created and filled with a `#!json null` + value before a reference to it is returned. All indices between the current maximum and the given index are also + filled with `#!json null`. + - The special value `-` is treated as a synonym for the index past the end. + +## Examples + +??? example "Example: (1) access specified array element" + + The example below shows how array elements can be read and written using `[]` operator. Note the addition of + `#!json null` values. + + ```cpp + --8<-- "examples/operator_array__size_type.cpp" + ``` + + Output: + + ```json + --8<-- "examples/operator_array__size_type.output" + ``` + +??? example "Example: (1) access specified array element (const)" + + The example below shows how array elements can be read using the `[]` operator. + + ```cpp + --8<-- "examples/operator_array__size_type_const.cpp" + ``` + + Output: + + ```json + --8<-- "examples/operator_array__size_type_const.output" + ``` + +??? example "Example: (2) access specified object element" + + The example below shows how object elements can be read and written using the `[]` operator. + + ```cpp + --8<-- "examples/operator_array__object_t_key_type.cpp" + ``` + + Output: + + ```json + --8<-- "examples/operator_array__object_t_key_type.output" + ``` + +??? example "Example: (2) access specified object element (const)" + + The example below shows how object elements can be read using the `[]` operator. + + ```cpp + --8<-- "examples/operator_array__object_t_key_type_const.cpp" + ``` + + Output: + + ```json + --8<-- "examples/operator_array__object_t_key_type_const.output" + ``` + +??? example "Example: (3) access specified object element using string_view" + + The example below shows how object elements can be read using the `[]` operator. + + ```cpp + --8<-- "examples/operator_array__keytype.c++17.cpp" + ``` + + Output: + + ```json + --8<-- "examples/operator_array__keytype.c++17.output" + ``` + +??? example "Example: (3) access specified object element using string_view (const)" + + The example below shows how object elements can be read using the `[]` operator. + + ```cpp + --8<-- "examples/operator_array__keytype_const.c++17.cpp" + ``` + + Output: + + ```json + --8<-- "examples/operator_array__keytype_const.c++17.output" + ``` + +??? example "Example: (4) access specified element via JSON Pointer" + + The example below shows how values can be read and written using JSON Pointers. + + ```cpp + --8<-- "examples/operator_array__json_pointer.cpp" + ``` + + Output: + + ```json + --8<-- "examples/operator_array__json_pointer.output" + ``` + +??? example "Example: (4) access specified element via JSON Pointer (const)" + + The example below shows how values can be read using JSON Pointers. + + ```cpp + --8<-- "examples/operator_array__json_pointer_const.cpp" + ``` + + Output: + + ```json + --8<-- "examples/operator_array__json_pointer_const.output" + ``` + +## See also + +- documentation on [unchecked access](../../features/element_access/unchecked_access.md) +- documentation on [runtime assertions](../../features/assertions.md) +- see [`at`](at.md) for access by reference with range checking +- see [`value`](value.md) for access with default value + +## Version history + +1. Added in version 1.0.0. +2. Added in version 1.0.0. Added overloads for `T* key` in version 1.1.0. Removed overloads for `T* key` (replaced by 3) + in version 3.11.0. +3. Added in version 3.11.0. +4. Added in version 2.0.0. diff --git a/docs/mkdocs/docs/api/basic_json/operator_ValueType.md b/docs/mkdocs/docs/api/basic_json/operator_ValueType.md new file mode 100644 index 00000000..bf38a3d2 --- /dev/null +++ b/docs/mkdocs/docs/api/basic_json/operator_ValueType.md @@ -0,0 +1,82 @@ +# nlohmann::basic_json::operator ValueType + +```cpp +template +JSON_EXPLICIT operator ValueType() const; +``` + +Implicit type conversion between the JSON value and a compatible value. The call is realized by calling +[`get()`](get.md). See [Notes](#notes) for the meaning of `JSON_EXPLICIT`. + +## Template parameters + +`ValueType` +: the value type to return + +## Return value + +copy of the JSON value, converted to `ValueType` + +## Exceptions + +Depends on what `json_serializer` `from_json()` method throws + +## Complexity + +Linear in the size of the JSON value. + +## Notes + +!!! note "Definition of `JSON_EXPLICIT`" + + By default `JSON_EXPLICIT` is defined to the empty string, so the signature is: + + ```cpp + template + operator ValueType() const; + ``` + + If [`JSON_USE_IMPLICIT_CONVERSIONS`](../macros/json_use_implicit_conversions.md) is set to `0`, + `JSON_EXPLICIT` is defined to `#!cpp explicit`: + + ```cpp + template + explicit operator ValueType() const; + ``` + + That is, implicit conversions can be switched off by defining + [`JSON_USE_IMPLICIT_CONVERSIONS`](../macros/json_use_implicit_conversions.md) to `0`. + +!!! info "Future behavior change" + + Implicit conversions will be switched off by default in the next major release of the library. That is, + `JSON_EXPLICIT` will be set to `#!cpp explicit` by default. + + You can prepare existing code by already defining + [`JSON_USE_IMPLICIT_CONVERSIONS`](../macros/json_use_implicit_conversions.md) to `0` and replace any implicit + conversions with calls to [`get`](../basic_json/get.md). + +## Examples + +??? example + + The example below shows several conversions from JSON values to other types. There are a few things to note: (1) + Floating-point numbers can be converted to integers, (2) A JSON array can be converted to a standard + `std::vector`, (3) A JSON object can be converted to C++ associative containers such as + `std::unordered_map`. + + ```cpp + --8<-- "examples/operator__ValueType.cpp" + ``` + + Output: + + ```json + --8<-- "examples/operator__ValueType.output" + ``` + +## Version history + +- Since version 1.0.0. +- Macros `JSON_EXPLICIT`/[`JSON_USE_IMPLICIT_CONVERSIONS`](../macros/json_use_implicit_conversions.md) added + in version 3.9.0. diff --git a/docs/mkdocs/docs/api/basic_json/operator_eq.md b/docs/mkdocs/docs/api/basic_json/operator_eq.md new file mode 100644 index 00000000..a2ce6155 --- /dev/null +++ b/docs/mkdocs/docs/api/basic_json/operator_eq.md @@ -0,0 +1,168 @@ +# nlohmann::basic_json::operator== + +```cpp +// until C++20 +bool operator==(const_reference lhs, const_reference rhs) noexcept; // (1) + +template +bool operator==(const_reference lhs, const ScalarType rhs) noexcept; // (2) + +template +bool operator==(ScalarType lhs, const const_reference rhs) noexcept; // (2) + +// since C++20 +class basic_json { + bool operator==(const_reference rhs) const noexcept; // (1) + + template + bool operator==(ScalarType rhs) const noexcept; // (2) +}; +``` + +1. Compares two JSON values for equality according to the following rules: + - Two JSON values are equal if (1) neither value is discarded, or (2) they are of the same type and their stored + values are the same according to their respective `operator==`. + - Integer and floating-point numbers are automatically converted before comparison. + +2. Compares a JSON value and a scalar or a scalar and a JSON value for equality by converting the + scalar to a JSON value and comparing both JSON values according to 1. + +## Template parameters + +`ScalarType` +: a scalar type according to `std::is_scalar::value` + +## Parameters + +`lhs` (in) +: first value to consider + +`rhs` (in) +: second value to consider + +## Return value + +whether the values `lhs`/`*this` and `rhs` are equal + +## Exception safety + +No-throw guarantee: this function never throws exceptions. + +## Complexity + +Linear. + +## Notes + +!!! note "Comparing special values" + + - `NaN` values are unordered within the domain of numbers. + The following comparisons all yield `#!cpp false`: + 1. Comparing a `NaN` with itself. + 2. Comparing a `NaN` with another `NaN`. + 3. Comparing a `NaN` and any other number. + - JSON `#!cpp null` values are all equal. + - Discarded values never compare equal to themselves. + +!!! note "Comparing floating-point numbers" + + Floating-point numbers inside JSON values numbers are compared with `json::number_float_t::operator==` which is + `double::operator==` by default. To compare floating-point while respecting an epsilon, an alternative + [comparison function](https://github.com/mariokonrad/marnav/blob/master/include/marnav/math/floatingpoint.hpp#L34-#L39) + could be used, for instance + + ```cpp + template::value, T>::type> + inline bool is_same(T a, T b, T epsilon = std::numeric_limits::epsilon()) noexcept + { + return std::abs(a - b) <= epsilon; + } + ``` + + Or you can self-defined operator equal function like this: + + ```cpp + bool my_equal(const_reference lhs, const_reference rhs) + { + const auto lhs_type lhs.type(); + const auto rhs_type rhs.type(); + if (lhs_type == rhs_type) + { + switch(lhs_type) + // self_defined case + case value_t::number_float: + return std::abs(lhs - rhs) <= std::numeric_limits::epsilon(); + // other cases remain the same with the original + ... + } + ... + } + ``` + +!!! note "Comparing different `basic_json` specializations" + + Comparing different `basic_json` specializations can have surprising effects. For instance, the result of comparing + the JSON objects + + ```json + { + "version": 1, + "type": "integer" + } + ``` + + and + + ```json + { + "type": "integer", + "version": 1 + } + ``` + + depends on whether [`nlohmann::json`](../json.md) or [`nlohmann::ordered_json`](../ordered_json.md) is used: + + ```cpp + --8<-- "examples/operator__equal__specializations.cpp" + ``` + + Output: + + ```json + --8<-- "examples/operator__equal__specializations.output" + ``` + +## Examples + +??? example + + The example demonstrates comparing several JSON types. + + ```cpp + --8<-- "examples/operator__equal.cpp" + ``` + + Output: + + ```json + --8<-- "examples/operator__equal.output" + ``` + +??? example + + The example demonstrates comparing several JSON types against the null pointer (JSON `#!json null`). + + ```cpp + --8<-- "examples/operator__equal__nullptr_t.cpp" + ``` + + Output: + + ```json + --8<-- "examples/operator__equal__nullptr_t.output" + ``` + +## Version history + +1. Added in version 1.0.0. Added C++20 member functions in version 3.11.0. +2. Added in version 1.0.0. Added C++20 member functions in version 3.11.0. diff --git a/docs/mkdocs/docs/api/basic_json/operator_ge.md b/docs/mkdocs/docs/api/basic_json/operator_ge.md new file mode 100644 index 00000000..d4e2fb4a --- /dev/null +++ b/docs/mkdocs/docs/api/basic_json/operator_ge.md @@ -0,0 +1,86 @@ +# nlohmann::basic_json::operator>= + +```cpp +// until C++20 +bool operator>=(const_reference lhs, const_reference rhs) noexcept; // (1) + +template +bool operator>=(const_reference lhs, const ScalarType rhs) noexcept; // (2) + +template +bool operator>=(ScalarType lhs, const const_reference rhs) noexcept; // (2) +``` + +1. Compares whether one JSON value `lhs` is greater than or equal to another JSON value `rhs` according to the following + rules: + - The comparison always yields `#!cpp false` if (1) either operand is discarded, or (2) either operand is `NaN` and + the other operand is either `NaN` or any other number. + - Otherwise, returns the result of `#!cpp !(lhs < rhs)` (see [**operator<**](operator_lt.md)). + +2. Compares whether a JSON value is greater than or equal to a scalar or a scalar is greater than or equal to a JSON + value by converting the scalar to a JSON value and comparing both JSON values according to 1. + +## Template parameters + +`ScalarType` +: a scalar type according to `std::is_scalar::value` + +## Parameters + +`lhs` (in) +: first value to consider + +`rhs` (in) +: second value to consider + +## Return value + +whether `lhs` is less than or equal to `rhs` + +## Exception safety + +No-throw guarantee: this function never throws exceptions. + +## Complexity + +Linear. + +## Notes + +!!! note "Comparing `NaN`" + + `NaN` values are unordered within the domain of numbers. + The following comparisons all yield `#!cpp false`: + 1. Comparing a `NaN` with itself. + 2. Comparing a `NaN` with another `NaN`. + 3. Comparing a `NaN` and any other number. + +!!! note "Operator overload resolution" + + Since C++20 overload resolution will consider the _rewritten candidate_ generated from + [`operator<=>`](operator_spaceship.md). + +## Examples + +??? example + + The example demonstrates comparing several JSON types. + + ```cpp + --8<-- "examples/operator__greaterequal.cpp" + ``` + + Output: + + ```json + --8<-- "examples/operator__greaterequal.output" + ``` + +## See also + +- [**operator<=>**](operator_spaceship.md) comparison: 3-way + +## Version history + +1. Added in version 1.0.0. Conditionally removed since C++20 in version 3.11.0. +2. Added in version 1.0.0. Conditionally removed since C++20 in version 3.11.0. diff --git a/docs/mkdocs/docs/api/basic_json/operator_gt.md b/docs/mkdocs/docs/api/basic_json/operator_gt.md new file mode 100644 index 00000000..9516656e --- /dev/null +++ b/docs/mkdocs/docs/api/basic_json/operator_gt.md @@ -0,0 +1,86 @@ +# nlohmann::basic_json::operator> + +```cpp +// until C++20 +bool operator>(const_reference lhs, const_reference rhs) noexcept; // (1) + +template +bool operator>(const_reference lhs, const ScalarType rhs) noexcept; // (2) + +template +bool operator>(ScalarType lhs, const const_reference rhs) noexcept; // (2) +``` + +1. Compares whether one JSON value `lhs` is greater than another JSON value `rhs` according to the + following rules: + - The comparison always yields `#!cpp false` if (1) either operand is discarded, or (2) either + operand is `NaN` and the other operand is either `NaN` or any other number. + - Otherwise, returns the result of `#!cpp !(lhs <= rhs)` (see [**operator<=**](operator_le.md)). + +2. Compares wether a JSON value is greater than a scalar or a scalar is greater than a JSON value by + converting the scalar to a JSON value and comparing both JSON values according to 1. + +## Template parameters + +`ScalarType` +: a scalar type according to `std::is_scalar::value` + +## Parameters + +`lhs` (in) +: first value to consider + +`rhs` (in) +: second value to consider + +## Return value + +whether `lhs` is greater than `rhs` + +## Exception safety + +No-throw guarantee: this function never throws exceptions. + +## Complexity + +Linear. + +## Notes + +!!! note "Comparing `NaN`" + + `NaN` values are unordered within the domain of numbers. + The following comparisons all yield `#!cpp false`: + 1. Comparing a `NaN` with itself. + 2. Comparing a `NaN` with another `NaN`. + 3. Comparing a `NaN` and any other number. + +!!! note "Operator overload resolution" + + Since C++20 overload resolution will consider the _rewritten candidate_ generated from + [`operator<=>`](operator_spaceship.md). + +## Examples + +??? example + + The example demonstrates comparing several JSON types. + + ```cpp + --8<-- "examples/operator__greater.cpp" + ``` + + Output: + + ```json + --8<-- "examples/operator__greater.output" + ``` + +## See also + +- [**operator<=>**](operator_spaceship.md) comparison: 3-way + +## Version history + +1. Added in version 1.0.0. Conditionally removed since C++20 in version 3.11.0. +2. Added in version 1.0.0. Conditionally removed since C++20 in version 3.11.0. diff --git a/docs/mkdocs/docs/api/basic_json/operator_le.md b/docs/mkdocs/docs/api/basic_json/operator_le.md new file mode 100644 index 00000000..7b648e03 --- /dev/null +++ b/docs/mkdocs/docs/api/basic_json/operator_le.md @@ -0,0 +1,87 @@ +# nlohmann::basic_json::operator<= + +```cpp +// until C++20 +bool operator<=(const_reference lhs, const_reference rhs) noexcept; // (1) + +template +bool operator<=(const_reference lhs, const ScalarType rhs) noexcept; // (2) + +template +bool operator<=(ScalarType lhs, const const_reference rhs) noexcept; // (2) +``` + +1. Compares whether one JSON value `lhs` is less than or equal to another JSON value `rhs` + according to the following rules: + - The comparison always yields `#!cpp false` if (1) either operand is discarded, or (2) either + operand is `NaN` and the other operand is either `NaN` or any other number. + - Otherwise, returns the result of `#!cpp !(rhs < lhs)` (see [**operator<**](operator_lt.md)). + +1. Compares wether a JSON value is less than or equal to a scalar or a scalar is less than or equal + to a JSON value by converting the scalar to a JSON value and comparing both JSON values according + to 1. + +## Template parameters + +`ScalarType` +: a scalar type according to `std::is_scalar::value` + +## Parameters + +`lhs` (in) +: first value to consider + +`rhs` (in) +: second value to consider + +## Return value + +whether `lhs` is less than or equal to `rhs` + +## Exception safety + +No-throw guarantee: this function never throws exceptions. + +## Complexity + +Linear. + +## Notes + +!!! note "Comparing `NaN`" + + `NaN` values are unordered within the domain of numbers. + The following comparisons all yield `#!cpp false`: + 1. Comparing a `NaN` with itself. + 2. Comparing a `NaN` with another `NaN`. + 3. Comparing a `NaN` and any other number. + +!!! note "Operator overload resolution" + + Since C++20 overload resolution will consider the _rewritten candidate_ generated from + [`operator<=>`](operator_spaceship.md). + +## Examples + +??? example + + The example demonstrates comparing several JSON types. + + ```cpp + --8<-- "examples/operator__lessequal.cpp" + ``` + + Output: + + ```json + --8<-- "examples/operator__lessequal.output" + ``` + +## See also + +- [**operator<=>**](operator_spaceship.md) comparison: 3-way + +## Version history + +1. Added in version 1.0.0. Conditionally removed since C++20 in version 3.11.0. +2. Added in version 1.0.0. Conditionally removed since C++20 in version 3.11.0. diff --git a/docs/mkdocs/docs/api/basic_json/operator_lt.md b/docs/mkdocs/docs/api/basic_json/operator_lt.md new file mode 100644 index 00000000..b5d191ec --- /dev/null +++ b/docs/mkdocs/docs/api/basic_json/operator_lt.md @@ -0,0 +1,96 @@ +# nlohmann::basic_json::operator< + +```cpp +// until C++20 +bool operator<(const_reference lhs, const_reference rhs) noexcept; // (1) + +template +bool operator<(const_reference lhs, const ScalarType rhs) noexcept; // (2) + +template +bool operator<(ScalarType lhs, const const_reference rhs) noexcept; // (2) +``` + +1. Compares whether one JSON value `lhs` is less than another JSON value `rhs` according to the + following rules: + - If either operand is discarded, the comparison yields `#!cpp false`. + - If both operands have the same type, the values are compared using their respective `operator<`. + - Integer and floating-point numbers are automatically converted before comparison. + - In case `lhs` and `rhs` have different types, the values are ignored and the order of the types + is considered, which is: + 1. null + 2. boolean + 3. number (all types) + 4. object + 5. array + 6. string + 7. binary + For instance, any boolean value is considered less than any string. + +2. Compares wether a JSON value is less than a scalar or a scalar is less than a JSON value by converting + the scalar to a JSON value and comparing both JSON values according to 1. + +## Template parameters + +`ScalarType` +: a scalar type according to `std::is_scalar::value` + +## Parameters + +`lhs` (in) +: first value to consider + +`rhs` (in) +: second value to consider + +## Return value + +whether `lhs` is less than `rhs` + +## Exception safety + +No-throw guarantee: this function never throws exceptions. + +## Complexity + +Linear. + +## Notes + +!!! note "Comparing `NaN`" + + `NaN` values are unordered within the domain of numbers. + The following comparisons all yield `#!cpp false`: + 1. Comparing a `NaN` with itself. + 2. Comparing a `NaN` with another `NaN`. + 3. Comparing a `NaN` and any other number. + +!!! note "Operator overload resolution" + + Since C++20 overload resolution will consider the _rewritten candidate_ generated from + [`operator<=>`](operator_spaceship.md). + +## Examples + +??? example + + The example demonstrates comparing several JSON types. + + ```cpp + --8<-- "examples/operator__less.cpp" + ``` + + Output: + + ```json + --8<-- "examples/operator__less.output" + ``` + +## See also + +- [**operator<=>**](operator_spaceship.md) comparison: 3-way + +## Version history + +1. Added in version 1.0.0. Conditionally removed since C++20 in version 3.11.0. +2. Added in version 1.0.0. Conditionally removed since C++20 in version 3.11.0. diff --git a/docs/mkdocs/docs/api/basic_json/operator_ne.md b/docs/mkdocs/docs/api/basic_json/operator_ne.md new file mode 100644 index 00000000..982a0676 --- /dev/null +++ b/docs/mkdocs/docs/api/basic_json/operator_ne.md @@ -0,0 +1,98 @@ +# nlohmann::basic_json::operator!= + +```cpp +// until C++20 +bool operator!=(const_reference lhs, const_reference rhs) noexcept; // (1) + +template +bool operator!=(const_reference lhs, const ScalarType rhs) noexcept; // (2) + +template +bool operator!=(ScalarType lhs, const const_reference rhs) noexcept; // (2) + +// since C++20 +class basic_json { + bool operator!=(const_reference rhs) const noexcept; // (1) + + template + bool operator!=(ScalarType rhs) const noexcept; // (2) +}; +``` + +1. Compares two JSON values for inequality according to the following rules: + - The comparison always yields `#!cpp false` if (1) either operand is discarded, or (2) either operand is `NaN` and + the other operand is either `NaN` or any other number. + - Otherwise, returns the result of `#!cpp !(lhs == rhs)` (until C++20) or `#!cpp !(*this == rhs)` (since C++20). + +2. Compares a JSON value and a scalar or a scalar and a JSON value for inequality by converting the scalar to a JSON + value and comparing both JSON values according to 1. + +## Template parameters + +`ScalarType` +: a scalar type according to `std::is_scalar::value` + +## Parameters + +`lhs` (in) +: first value to consider + +`rhs` (in) +: second value to consider + +## Return value + +whether the values `lhs`/`*this` and `rhs` are not equal + +## Exception safety + +No-throw guarantee: this function never throws exceptions. + +## Complexity + +Linear. + +## Notes + +!!! note "Comparing `NaN`" + + `NaN` values are unordered within the domain of numbers. + The following comparisons all yield `#!cpp false`: + 1. Comparing a `NaN` with itself. + 2. Comparing a `NaN` with another `NaN`. + 3. Comparing a `NaN` and any other number. + +## Examples + +??? example + + The example demonstrates comparing several JSON types. + + ```cpp + --8<-- "examples/operator__notequal.cpp" + ``` + + Output: + + ```json + --8<-- "examples/operator__notequal.output" + ``` + +??? example + + The example demonstrates comparing several JSON types against the null pointer (JSON `#!json null`). + + ```cpp + --8<-- "examples/operator__notequal__nullptr_t.cpp" + ``` + + Output: + + ```json + --8<-- "examples/operator__notequal__nullptr_t.output" + ``` + +## Version history + +1. Added in version 1.0.0. Added C++20 member functions in version 3.11.0. +2. Added in version 1.0.0. Added C++20 member functions in version 3.11.0. diff --git a/docs/mkdocs/docs/api/basic_json/operator_spaceship.md b/docs/mkdocs/docs/api/basic_json/operator_spaceship.md new file mode 100644 index 00000000..9e91d0d2 --- /dev/null +++ b/docs/mkdocs/docs/api/basic_json/operator_spaceship.md @@ -0,0 +1,100 @@ +# nlohmann::basic_json::operator<=> + +```cpp +// since C++20 +class basic_json { + std::partial_ordering operator<=>(const_reference rhs) const noexcept; // (1) + + template + std::partial_ordering operator<=>(const ScalarType rhs) const noexcept; // (2) +}; +``` + +1. 3-way compares two JSON values producing a result of type `std::partial_ordering` according to the following rules: + - Two JSON values compare with a result of `std::partial_ordering::unordered` if either value is discarded. + - If both JSON values are of the same type, the result is produced by 3-way comparing their stored values using + their respective `operator<=>`. + - Integer and floating-point numbers are converted to their common type and then 3-way compared using their + respective `operator<=>`. + For instance, comparing an integer and a floating-point value will 3-way compare the first value converted to + floating-point with the second value. + - Otherwise, yields a result by comparing the type (see [`value_t`](value_t.md)). + +2. 3-way compares a JSON value and a scalar or a scalar and a JSON value by converting the scalar to a JSON value and + 3-way comparing both JSON values (see 1). + +## Template parameters + +`ScalarType` +: a scalar type according to `std::is_scalar::value` + +## Parameters + +`rhs` (in) +: second value to consider + +## Return value + +the `std::partial_ordering` of the 3-way comparison of `*this` and `rhs` + +## Exception safety + +No-throw guarantee: this function never throws exceptions. + +## Complexity + +Linear. + +## Notes + +!!! note "Comparing `NaN`" + + - `NaN` values are unordered within the domain of numbers. + The following comparisons all yield `std::partial_ordering::unordered`: + 1. Comparing a `NaN` with itself. + 2. Comparing a `NaN` with another `NaN`. + 3. Comparing a `NaN` and any other number. + +## Examples + +??? example "Example: (1) comparing JSON values" + + The example demonstrates comparing several JSON values. + + ```cpp + --8<-- "examples/operator_spaceship__const_reference.c++20.cpp" + ``` + + Output: + + ```json + --8<-- "examples/operator_spaceship__const_reference.c++20.output" + ``` + +??? example "Example: (2) comparing JSON values and scalars" + + The example demonstrates comparing several JSON values and scalars. + + ```cpp + --8<-- "examples/operator_spaceship__scalartype.c++20.cpp" + ``` + + Output: + + ```json + --8<-- "examples/operator_spaceship__scalartype.c++20.output" + ``` + +## See also + +- [**operator==**](operator_eq.md) - comparison: equal +- [**operator!=**](operator_ne.md) - comparison: not equal +- [**operator<**](operator_lt.md) - comparison: less than +- [**operator<=**](operator_le.md) - comparison: less than or equal +- [**operator>**](operator_gt.md) - comparison: greater than +- [**operator>=**](operator_ge.md) - comparison: greater than or equal + +## Version history + +1. Added in version 3.11.0. +2. Added in version 3.11.0. diff --git a/docs/mkdocs/docs/api/basic_json/operator_value_t.md b/docs/mkdocs/docs/api/basic_json/operator_value_t.md new file mode 100644 index 00000000..0f08f42b --- /dev/null +++ b/docs/mkdocs/docs/api/basic_json/operator_value_t.md @@ -0,0 +1,54 @@ +# nlohmann::basic_json::operator value_t + +```cpp +constexpr operator value_t() const noexcept; +``` + +Return the type of the JSON value as a value from the [`value_t`](value_t.md) enumeration. + +## Return value + +the type of the JSON value + +| Value type | return value | +|---------------------------|----------------------------| +| `#!json null` | `value_t::null` | +| boolean | `value_t::boolean` | +| string | `value_t::string` | +| number (integer) | `value_t::number_integer` | +| number (unsigned integer) | `value_t::number_unsigned` | +| number (floating-point) | `value_t::number_float` | +| object | `value_t::object` | +| array | `value_t::array` | +| binary | `value_t::binary` | +| discarded | `value_t::discarded` | + +## Exception safety + +No-throw guarantee: this member function never throws exceptions. + +## Complexity + +Constant. + +## Examples + +??? example + + The following code exemplifies `operator value_t()` for all JSON types. + + ```cpp + --8<-- "examples/operator__value_t.cpp" + ``` + + Output: + + ```json + --8<-- "examples/operator__value_t.output" + ``` + +## Version history + +- Added in version 1.0.0. +- Added unsigned integer type in version 2.0.0. +- Added binary type in version 3.8.0. diff --git a/docs/mkdocs/docs/api/basic_json/other_error.md b/docs/mkdocs/docs/api/basic_json/other_error.md new file mode 100644 index 00000000..9a83340a --- /dev/null +++ b/docs/mkdocs/docs/api/basic_json/other_error.md @@ -0,0 +1,67 @@ +# nlohmann::basic_json::other_error + +```cpp +class other_error : public exception; +``` + +This exception is thrown in case of errors that cannot be classified with the other exception types. + +Exceptions have ids 5xx (see [list of other errors](../../home/exceptions.md#further-exceptions)). + +```plantuml +std::exception <|-- basic_json::exception +basic_json::exception <|-- basic_json::parse_error +basic_json::exception <|-- basic_json::invalid_iterator +basic_json::exception <|-- basic_json::type_error +basic_json::exception <|-- basic_json::out_of_range +basic_json::exception <|-- basic_json::other_error + +interface std::exception {} + +class basic_json::exception { + + const int id + + const char* what() const +} + +class basic_json::parse_error { + + const std::size_t byte +} + +class basic_json::other_error #FFFF00 {} +``` + +## Member functions + +- **what** - returns explanatory string + +## Member variables + +- **id** - the id of the exception + +## Examples + +??? example + + The following code shows how a `other_error` exception can be caught. + + ```cpp + --8<-- "examples/other_error.cpp" + ``` + + Output: + + ```json + --8<-- "examples/other_error.output" + ``` + +## See also + +- [List of other errors](../../home/exceptions.md#further-exceptions) +- [`parse_error`](parse_error.md) for exceptions indicating a parse error +- [`invalid_iterator`](invalid_iterator.md) for exceptions indicating errors with iterators +- [`type_error`](type_error.md) for exceptions indicating executing a member function with a wrong type +- [`out_of_range`](out_of_range.md) for exceptions indicating access out of the defined range + +## Version history + +- Since version 3.0.0. diff --git a/docs/mkdocs/docs/api/basic_json/out_of_range.md b/docs/mkdocs/docs/api/basic_json/out_of_range.md new file mode 100644 index 00000000..6c1f0dfb --- /dev/null +++ b/docs/mkdocs/docs/api/basic_json/out_of_range.md @@ -0,0 +1,68 @@ +# nlohmann::basic_json::out_of_range + +```cpp +class out_of_range : public exception; +``` + +This exception is thrown in case a library function is called on an input parameter that exceeds the expected range, for +instance in case of array indices or nonexisting object keys. + +Exceptions have ids 4xx (see [list of out-of-range errors](../../home/exceptions.md#out-of-range)). + +```plantuml +std::exception <|-- basic_json::exception +basic_json::exception <|-- basic_json::parse_error +basic_json::exception <|-- basic_json::invalid_iterator +basic_json::exception <|-- basic_json::type_error +basic_json::exception <|-- basic_json::out_of_range +basic_json::exception <|-- basic_json::other_error + +interface std::exception {} + +class basic_json::exception { + + const int id + + const char* what() const +} + +class basic_json::parse_error { + + const std::size_t byte +} + +class basic_json::out_of_range #FFFF00 {} +``` + +## Member functions + +- **what** - returns explanatory string + +## Member variables + +- **id** - the id of the exception + +## Examples + +??? example + + The following code shows how a `out_of_range` exception can be caught. + + ```cpp + --8<-- "examples/out_of_range.cpp" + ``` + + Output: + + ```json + --8<-- "examples/out_of_range.output" + ``` + +## See also + +- [List of out-of-range errors](../../home/exceptions.md#out-of-range) +- [`parse_error`](parse_error.md) for exceptions indicating a parse error +- [`invalid_iterator`](invalid_iterator.md) for exceptions indicating errors with iterators +- [`type_error`](type_error.md) for exceptions indicating executing a member function with a wrong type +- [`other_error`](other_error.md) for exceptions indicating other library errors + +## Version history + +- Since version 3.0.0. diff --git a/docs/mkdocs/docs/api/basic_json/parse.md b/docs/mkdocs/docs/api/basic_json/parse.md new file mode 100644 index 00000000..49838ad1 --- /dev/null +++ b/docs/mkdocs/docs/api/basic_json/parse.md @@ -0,0 +1,214 @@ +# nlohmann::basic_json::parse + +```cpp +// (1) +template +static basic_json parse(InputType&& i, + const parser_callback_t cb = nullptr, + const bool allow_exceptions = true, + const bool ignore_comments = false); + +// (2) +template +static basic_json parse(IteratorType first, IteratorType last, + const parser_callback_t cb = nullptr, + const bool allow_exceptions = true, + const bool ignore_comments = false); +``` + +1. Deserialize from a compatible input. +2. Deserialize from a pair of character iterators + + The `value_type` of the iterator must be an integral type with size of 1, 2 or 4 bytes, which will be interpreted + respectively as UTF-8, UTF-16 and UTF-32. + +## Template parameters + +`InputType` +: A compatible input, for instance: + + - an `std::istream` object + - a `FILE` pointer (must not be null) + - a C-style array of characters + - a pointer to a null-terminated string of single byte characters + - a `std::string` + - an object `obj` for which `begin(obj)` and `end(obj)` produces a valid pair of iterators. + +`IteratorType` +: a compatible iterator type, for instance. + + - a pair of `std::string::iterator` or `std::vector::iterator` + - a pair of pointers such as `ptr` and `ptr + len` + +## Parameters + +`i` (in) +: Input to parse from. + +`cb` (in) +: a parser callback function of type [`parser_callback_t`](parser_callback_t.md) which is used to control the + deserialization by filtering unwanted values (optional) + +`allow_exceptions` (in) +: whether to throw exceptions in case of a parse error (optional, `#!cpp true` by default) + +`ignore_comments` (in) +: whether comments should be ignored and treated like whitespace (`#!cpp true`) or yield a parse error + (`#!cpp false`); (optional, `#!cpp false` by default) + +`first` (in) +: iterator to start of character range + +`last` (in) +: iterator to end of character range + +## Return value + +Deserialized JSON value; in case of a parse error and `allow_exceptions` set to `#!cpp false`, the return value will be +`value_t::discarded`. The latter can be checked with [`is_discarded`](is_discarded.md). + +## Exception safety + +Strong guarantee: if an exception is thrown, there are no changes in the JSON value. + +## Exceptions + +- Throws [`parse_error.101`](../../home/exceptions.md#jsonexceptionparse_error101) in case of an unexpected token. +- Throws [`parse_error.102`](../../home/exceptions.md#jsonexceptionparse_error102) if to_unicode fails or surrogate + error. +- Throws [`parse_error.103`](../../home/exceptions.md#jsonexceptionparse_error103) if to_unicode fails. + +## Complexity + +Linear in the length of the input. The parser is a predictive LL(1) parser. The complexity can be higher if the parser +callback function `cb` or reading from (1) the input `i` or (2) the iterator range [`first`, `last`] has a +super-linear complexity. + +## Notes + +(1) A UTF-8 byte order mark is silently ignored. + +!!! danger "Runtime assertion" + + The precondition that a passed `#!cpp FILE` pointer must not be null is enforced with a + [runtime assertion](../../features/assertions.md). + +## Examples + +??? example "Parsing from a character array" + + The example below demonstrates the `parse()` function reading from an array. + + ```cpp + --8<-- "examples/parse__array__parser_callback_t.cpp" + ``` + + Output: + + ```json + --8<-- "examples/parse__array__parser_callback_t.output" + ``` + +??? example "Parsing from a string" + + The example below demonstrates the `parse()` function with and without callback function. + + ```cpp + --8<-- "examples/parse__string__parser_callback_t.cpp" + ``` + + Output: + + ```json + --8<-- "examples/parse__string__parser_callback_t.output" + ``` + +??? example "Parsing from an input stream" + + The example below demonstrates the `parse()` function with and without callback function. + + ```cpp + --8<-- "examples/parse__istream__parser_callback_t.cpp" + ``` + + Output: + + ```json + --8<-- "examples/parse__istream__parser_callback_t.output" + ``` + +??? example "Parsing from a contiguous container" + + The example below demonstrates the `parse()` function reading from a contiguous container. + + ```cpp + --8<-- "examples/parse__contiguouscontainer__parser_callback_t.cpp" + ``` + + Output: + + ```json + --8<-- "examples/parse__contiguouscontainer__parser_callback_t.output" + ``` + +??? example "Parsing from a non null-terminated string" + + The example below demonstrates the `parse()` function reading from a string that is not null-terminated. + + ```cpp + --8<-- "examples/parse__pointers.cpp" + ``` + + Output: + + ```json + --8<-- "examples/parse__pointers.output" + ``` + +??? example "Parsing from an iterator pair" + + The example below demonstrates the `parse()` function reading from an iterator pair. + + ```cpp + --8<-- "examples/parse__iterator_pair.cpp" + ``` + + Output: + + ```json + --8<-- "examples/parse__iterator_pair.output" + ``` + +??? example "Effect of `allow_exceptions` parameter" + + The example below demonstrates the effect of the `allow_exceptions` parameter in the ´parse()` function. + + ```cpp + --8<-- "examples/parse__allow_exceptions.cpp" + ``` + + Output: + + ```json + --8<-- "examples/parse__allow_exceptions.output" + ``` + +## See also + +- [accept](accept.md) - check if the input is valid JSON +- [operator>>](../operator_gtgt.md) - deserialize from stream + +## Version history + +- Added in version 1.0.0. +- Overload for contiguous containers (1) added in version 2.0.3. +- Ignoring comments via `ignore_comments` added in version 3.9.0. + +!!! warning "Deprecation" + + Overload (2) replaces calls to `parse` with a pair of iterators as their first parameter which has been + deprecated in version 3.8.0. This overload will be removed in version 4.0.0. Please replace all calls like + `#!cpp parse({ptr, ptr+len}, ...);` with `#!cpp parse(ptr, ptr+len, ...);`. + + You should be warned by your compiler with a `-Wdeprecated-declarations` warning if you are using a deprecated + function. diff --git a/docs/mkdocs/docs/api/basic_json/parse_error.md b/docs/mkdocs/docs/api/basic_json/parse_error.md new file mode 100644 index 00000000..af3e1f0b --- /dev/null +++ b/docs/mkdocs/docs/api/basic_json/parse_error.md @@ -0,0 +1,74 @@ +# nlohmann::basic_json::parse_error + +```cpp +class parse_error : public exception; +``` + +This exception is thrown by the library when a parse error occurs. Parse errors can occur during the deserialization of +JSON text, BSON, CBOR, MessagePack, UBJSON, as well as when using JSON Patch. + +Member `byte` holds the byte index of the last read character in the input file (see note below). + +Exceptions have ids 1xx (see [list of parse errors](../../home/exceptions.md#parse-errors)). + +```plantuml +std::exception <|-- basic_json::exception +basic_json::exception <|-- basic_json::parse_error +basic_json::exception <|-- basic_json::invalid_iterator +basic_json::exception <|-- basic_json::type_error +basic_json::exception <|-- basic_json::out_of_range +basic_json::exception <|-- basic_json::other_error + +interface std::exception {} + +class basic_json::exception { + + const int id + + const char* what() const +} + +class basic_json::parse_error #FFFF00 { + + const std::size_t byte +} +``` + +## Member functions + +- **what** - returns explanatory string + +## Member variables + +- **id** - the id of the exception +- **byte** - byte index of the parse error + +## Notes + +For an input with $n$ bytes, 1 is the index of the first character and $n+1$ is the index of the terminating null byte +or the end of file. This also holds true when reading a byte vector for binary formats. + +## Examples + +??? example + + The following code shows how a `parse_error` exception can be caught. + + ```cpp + --8<-- "examples/parse_error.cpp" + ``` + + Output: + + ```json + --8<-- "examples/parse_error.output" + ``` + +## See also + +- [List of parse errors](../../home/exceptions.md#parse-errors) +- [`invalid_iterator`](invalid_iterator.md) for exceptions indicating errors with iterators +- [`type_error`](type_error.md) for exceptions indicating executing a member function with a wrong type +- [`out_of_range`](out_of_range.md) for exceptions indicating access out of the defined range +- [`other_error`](other_error.md) for exceptions indicating other library errors + +## Version history + +- Since version 3.0.0. diff --git a/docs/mkdocs/docs/api/basic_json/parse_event_t.md b/docs/mkdocs/docs/api/basic_json/parse_event_t.md new file mode 100644 index 00000000..1a7c3903 --- /dev/null +++ b/docs/mkdocs/docs/api/basic_json/parse_event_t.md @@ -0,0 +1,29 @@ +# nlohmann::basic_json::parse_event_t + +```cpp +enum class parse_event_t : std::uint8_t { + object_start, + object_end, + array_start, + array_end, + key, + value +}; +``` + +The parser callback distinguishes the following events: + +- `object_start`: the parser read `{` and started to process a JSON object +- `key`: the parser read a key of a value in an object +- `object_end`: the parser read `}` and finished processing a JSON object +- `array_start`: the parser read `[` and started to process a JSON array +- `array_end`: the parser read `]` and finished processing a JSON array +- `value`: the parser finished reading a JSON value + +## Examples + +![Example when certain parse events are triggered](../../images/callback_events.png) + +## Version history + +- Added in version 1.0.0. diff --git a/docs/mkdocs/docs/api/basic_json/parser_callback_t.md b/docs/mkdocs/docs/api/basic_json/parser_callback_t.md new file mode 100644 index 00000000..e10402ea --- /dev/null +++ b/docs/mkdocs/docs/api/basic_json/parser_callback_t.md @@ -0,0 +1,73 @@ +# nlohmann::basic_json::parser_callback_t + +```cpp +template +using parser_callback_t = + std::function; +``` + +With a parser callback function, the result of parsing a JSON text can be influenced. When passed to +[`parse`](parse.md), it is called on certain events (passed as [`parse_event_t`](parse_event_t.md) via parameter +`event`) with a set recursion depth `depth` and context JSON value `parsed`. The return value of the callback function +is a boolean indicating whether the element that emitted the callback shall be kept or not. + +We distinguish six scenarios (determined by the event type) in which the callback function can be called. The following +table describes the values of the parameters `depth`, `event`, and `parsed`. + +| parameter `event` | description | parameter `depth` | parameter `parsed` | +|-------------------------------|-----------------------------------------------------------|-------------------------------------------|----------------------------------| +| `parse_event_t::object_start` | the parser read `{` and started to process a JSON object | depth of the parent of the JSON object | a JSON value with type discarded | +| `parse_event_t::key` | the parser read a key of a value in an object | depth of the currently parsed JSON object | a JSON string containing the key | +| `parse_event_t::object_end` | the parser read `}` and finished processing a JSON object | depth of the parent of the JSON object | the parsed JSON object | +| `parse_event_t::array_start` | the parser read `[` and started to process a JSON array | depth of the parent of the JSON array | a JSON value with type discarded | +| `parse_event_t::array_end` | the parser read `]` and finished processing a JSON array | depth of the parent of the JSON array | the parsed JSON array | +| `parse_event_t::value` | the parser finished reading a JSON value | depth of the value | the parsed JSON value | + +![Example when certain parse events are triggered](../../images/callback_events.png) + +Discarding a value (i.e., returning `#!cpp false`) has different effects depending on the context in which function was +called: + +- Discarded values in structured types are skipped. That is, the parser will behave as if the discarded value was never + read. +- In case a value outside a structured type is skipped, it is replaced with `null`. This case happens if the top-level + element is skipped. + +## Parameters + +`depth` (in) +: the depth of the recursion during parsing + +`event` (in) +: an event of type [`parse_event_t`](parse_event_t.md) indicating the context in + the callback function has been called + +`parsed` (in, out) +: the current intermediate parse result; note that + writing to this value has no effect for `parse_event_t::key` events + +## Return value + +Whether the JSON value which called the function during parsing should be kept (`#!cpp true`) or not (`#!cpp false`). In +the latter case, it is either skipped completely or replaced by an empty discarded object. + +## Examples + +??? example + + The example below demonstrates the `parse()` function with + and without callback function. + + ```cpp + --8<-- "examples/parse__string__parser_callback_t.cpp" + ``` + + Output: + + ```json + --8<-- "examples/parse__string__parser_callback_t.output" + ``` + +## Version history + +- Added in version 1.0.0. diff --git a/docs/mkdocs/docs/api/basic_json/patch.md b/docs/mkdocs/docs/api/basic_json/patch.md new file mode 100644 index 00000000..deec4743 --- /dev/null +++ b/docs/mkdocs/docs/api/basic_json/patch.md @@ -0,0 +1,73 @@ +# nlohmann::basic_json::patch + +```cpp +basic_json patch(const basic_json& json_patch) const; +``` + +[JSON Patch](http://jsonpatch.com) defines a JSON document structure for expressing a sequence of operations to apply to +a JSON document. With this function, a JSON Patch is applied to the current JSON value by executing all operations from +the patch. + +## Parameters + +`json_patch` (in) +: JSON patch document + +## Return value + +patched document + +## Exception safety + +Strong guarantee: if an exception is thrown, there are no changes in the JSON value. + +## Exceptions + +- Throws [`parse_error.104`](../../home/exceptions.md#jsonexceptionparse_error104) if the JSON patch does not consist of + an array of objects. +- Throws [`parse_error.105`](../../home/exceptions.md#jsonexceptionparse_error105) if the JSON patch is malformed (e.g., + mandatory attributes are missing); example: `"operation add must have member path"`. +- Throws [`out_of_range.401`](../../home/exceptions.md#jsonexceptionout_of_range401) if an array index is out of range. +- Throws [`out_of_range.403`](../../home/exceptions.md#jsonexceptionout_of_range403) if a JSON pointer inside the patch + could not be resolved successfully in the current JSON value; example: `"key baz not found"`. +- Throws [`out_of_range.405`](../../home/exceptions.md#jsonexceptionout_of_range405) if JSON pointer has no parent + ("add", "remove", "move") +- Throws [`out_of_range.501`](../../home/exceptions.md#jsonexceptionother_error501) if "test" operation was + unsuccessful. + +## Complexity + +Linear in the size of the JSON value and the length of the JSON patch. As usually only a fraction of the JSON value is +affected by the patch, the complexity can usually be neglected. + +## Notes + +The application of a patch is atomic: Either all operations succeed and the patched document is returned or an exception +is thrown. In any case, the original value is not changed: the patch is applied to a copy of the value. + +## Examples + +??? example + + The following code shows how a JSON patch is applied to a value. + + ```cpp + --8<-- "examples/patch.cpp" + ``` + + Output: + + ```json + --8<-- "examples/patch.output" + ``` + +## See also + +- [RFC 6902 (JSON Patch)](https://tools.ietf.org/html/rfc6902) +- [RFC 6901 (JSON Pointer)](https://tools.ietf.org/html/rfc6901) +- [patch_inplace](patch_inplace.md) applies a JSON Patch without creating a copy of the document +- [merge_patch](merge_patch.md) applies a JSON Merge Patch + +## Version history + +- Added in version 2.0.0. diff --git a/docs/mkdocs/docs/api/basic_json/patch_inplace.md b/docs/mkdocs/docs/api/basic_json/patch_inplace.md new file mode 100644 index 00000000..e8fd176c --- /dev/null +++ b/docs/mkdocs/docs/api/basic_json/patch_inplace.md @@ -0,0 +1,70 @@ +# nlohmann::basic_json::patch_inplace + +```cpp +void patch_inplace(const basic_json& json_patch) const; +``` + +[JSON Patch](http://jsonpatch.com) defines a JSON document structure for expressing a sequence of operations to apply to +a JSON document. With this function, a JSON Patch is applied to the current JSON value by executing all operations from +the patch. This function applies a JSON patch in place and returns void. + +## Parameters + +`json_patch` (in) +: JSON patch document + +## Exception safety + +No guarantees, value may be corrupted by an unsuccessful patch operation. + +## Exceptions + +- Throws [`parse_error.104`](../../home/exceptions.md#jsonexceptionparse_error104) if the JSON patch does not consist of + an array of objects. +- Throws [`parse_error.105`](../../home/exceptions.md#jsonexceptionparse_error105) if the JSON patch is malformed (e.g., + mandatory attributes are missing); example: `"operation add must have member path"`. +- Throws [`out_of_range.401`](../../home/exceptions.md#jsonexceptionout_of_range401) if an array index is out of range. +- Throws [`out_of_range.403`](../../home/exceptions.md#jsonexceptionout_of_range403) if a JSON pointer inside the patch + could not be resolved successfully in the current JSON value; example: `"key baz not found"`. +- Throws [`out_of_range.405`](../../home/exceptions.md#jsonexceptionout_of_range405) if JSON pointer has no parent + ("add", "remove", "move") +- Throws [`out_of_range.501`](../../home/exceptions.md#jsonexceptionother_error501) if "test" operation was + unsuccessful. + +## Complexity + +Linear in the size of the JSON value and the length of the JSON patch. As usually only a fraction of the JSON value is +affected by the patch, the complexity can usually be neglected. + +## Notes + +Unlike [`patch`](patch.md), `patch_inplace` applies the operation "in place" and no copy of the JSON value is created. +That makes it faster for large documents by avoiding the copy. However, the JSON value might be corrupted if the +function throws an exception. + +## Examples + +??? example + + The following code shows how a JSON patch is applied to a value. + + ```cpp + --8<-- "examples/patch_inplace.cpp" + ``` + + Output: + + ```json + --8<-- "examples/patch_inplace.output" + ``` + +## See also + +- [RFC 6902 (JSON Patch)](https://tools.ietf.org/html/rfc6902) +- [RFC 6901 (JSON Pointer)](https://tools.ietf.org/html/rfc6901) +- [patch](patch.md) applies a JSON Merge Patch +- [merge_patch](merge_patch.md) applies a JSON Merge Patch + +## Version history + +- Added in version 3.11.0. diff --git a/docs/mkdocs/docs/api/basic_json/push_back.md b/docs/mkdocs/docs/api/basic_json/push_back.md new file mode 100644 index 00000000..5c7d20dd --- /dev/null +++ b/docs/mkdocs/docs/api/basic_json/push_back.md @@ -0,0 +1,106 @@ +# nlohmann::basic_json::push_back + +```cpp +// (1) +void push_back(basic_json&& val); +void push_back(const basic_json& val); + +// (2) +void push_back(const typename object_t::value_type& val); + +// (3) +void push_back(initializer_list_t init); +``` + +1. Appends the given element `val` to the end of the JSON array. If the function is called on a JSON null value, an + empty array is created before appending `val`. + +2. Inserts the given element `val` to the JSON object. If the function is called on a JSON null value, an empty object + is created before inserting `val`. + +3. This function allows using `push_back` with an initializer list. In case + + 1. the current value is an object, + 2. the initializer list `init` contains only two elements, and + 3. the first element of `init` is a string, + + `init` is converted into an object element and added using `push_back(const typename object_t::value_type&)`. + Otherwise, `init` is converted to a JSON value and added using `push_back(basic_json&&)`. + +## Parameters + +`val` (in) +: the value to add to the JSON array/object + +`init` (in) +: an initializer list + +## Exceptions + +All functions can throw the following exception: + - Throws [`type_error.308`](../../home/exceptions.md#jsonexceptiontype_error308) when called on a type other than + JSON array or null; example: `"cannot use push_back() with number"` + +## Complexity + +1. Amortized constant. +2. Logarithmic in the size of the container, O(log(`size()`)). +3. Linear in the size of the initializer list `init`. + +## Notes + +(3) This function is required to resolve an ambiguous overload error, because pairs like `{"key", "value"}` can be both + interpreted as `object_t::value_type` or `std::initializer_list`, see + [#235](https://github.com/nlohmann/json/issues/235) for more information. + +## Examples + +??? example "Example: (1) add element to array" + + The example shows how `push_back()` and `+=` can be used to add elements to a JSON array. Note how the `null` value + was silently converted to a JSON array. + + ```cpp + --8<-- "examples/push_back.cpp" + ``` + + Output: + + ```json + --8<-- "examples/push_back.output" + ``` + +??? example "Example: (2) add element to object" + + The example shows how `push_back()` and `+=` can be used to add elements to a JSON object. Note how the `null` value + was silently converted to a JSON object. + + ```cpp + --8<-- "examples/push_back__object_t__value.cpp" + ``` + + Output: + + ```json + --8<-- "examples/push_back__object_t__value.output" + ``` + +??? example "Example: (3) add to object from initializer list" + + The example shows how initializer lists are treated as objects when possible. + + ```cpp + --8<-- "examples/push_back__initializer_list.cpp" + ``` + + Output: + + ```json + --8<-- "examples/push_back__initializer_list.output" + ``` + +## Version history + +1. Since version 1.0.0. +2. Since version 1.0.0. +2. Since version 2.0.0. diff --git a/docs/mkdocs/docs/api/basic_json/rbegin.md b/docs/mkdocs/docs/api/basic_json/rbegin.md new file mode 100644 index 00000000..126c4712 --- /dev/null +++ b/docs/mkdocs/docs/api/basic_json/rbegin.md @@ -0,0 +1,42 @@ +# nlohmann::basic_json::rbegin + +```cpp +reverse_iterator rbegin() noexcept; +const_reverse_iterator rbegin() const noexcept; +``` + +Returns an iterator to the reverse-beginning; that is, the last element. + +![Illustration from cppreference.com](../../images/range-rbegin-rend.svg) + +## Return value + +reverse iterator to the first element + +## Exception safety + +No-throw guarantee: this member function never throws exceptions. + +## Complexity + +Constant. + +## Examples + +??? example + + The following code shows an example for `rbegin()`. + + ```cpp + --8<-- "examples/rbegin.cpp" + ``` + + Output: + + ```json + --8<-- "examples/rbegin.output" + ``` + +## Version history + +- Added in version 1.0.0. diff --git a/docs/mkdocs/docs/api/basic_json/rend.md b/docs/mkdocs/docs/api/basic_json/rend.md new file mode 100644 index 00000000..96da7a5f --- /dev/null +++ b/docs/mkdocs/docs/api/basic_json/rend.md @@ -0,0 +1,43 @@ +# nlohmann::basic_json::rend + +```cpp +reverse_iterator rend() noexcept; +const_reverse_iterator rend() const noexcept; +``` + +Returns an iterator to the reverse-end; that is, one before the first element. This element acts as a placeholder, +attempting to access it results in undefined behavior. + +![Illustration from cppreference.com](../../images/range-rbegin-rend.svg) + +## Return value + +reverse iterator to the element following the last element + +## Exception safety + +No-throw guarantee: this member function never throws exceptions. + +## Complexity + +Constant. + +## Examples + +??? example + + The following code shows an example for `eend()`. + + ```cpp + --8<-- "examples/rend.cpp" + ``` + + Output: + + ```json + --8<-- "examples/rend.output" + ``` + +## Version history + +- Added in version 1.0.0. diff --git a/docs/mkdocs/docs/api/basic_json/sax_parse.md b/docs/mkdocs/docs/api/basic_json/sax_parse.md new file mode 100644 index 00000000..e2ac1b41 --- /dev/null +++ b/docs/mkdocs/docs/api/basic_json/sax_parse.md @@ -0,0 +1,115 @@ +# nlohmann::basic_json::sax_parse + +```cpp +// (1) +template +static bool sax_parse(InputType&& i, + SAX* sax, + input_format_t format = input_format_t::json, + const bool strict = true, + const bool ignore_comments = false); + +// (2) +template +static bool sax_parse(IteratorType first, IteratorType last, + SAX* sax, + input_format_t format = input_format_t::json, + const bool strict = true, + const bool ignore_comments = false); +``` + +Read from input and generate SAX events + +1. Read from a compatible input. +2. Read from a pair of character iterators + + The value_type of the iterator must be an integral type with size of 1, 2 or 4 bytes, which will be interpreted + respectively as UTF-8, UTF-16 and UTF-32. + +The SAX event lister must follow the interface of [`json_sax`](../json_sax/index.md). + +## Template parameters + +`InputType` +: A compatible input, for instance: + + - an `std::istream` object + - a `FILE` pointer + - a C-style array of characters + - a pointer to a null-terminated string of single byte characters + - an object `obj` for which `begin(obj)` and `end(obj)` produces a valid pair of + iterators. + +`IteratorType` +: Description + +`SAX` +: Description + +## Parameters + +`i` (in) +: Input to parse from. + +`sax` (in) +: SAX event listener + +`format` (in) +: the format to parse (JSON, CBOR, MessagePack, or UBJSON) (optional, `input_format_t::json` by default), see + [`input_format_t`](input_format_t.md) for more information + +`strict` (in) +: whether the input has to be consumed completely (optional, `#!cpp true` by default) + +`ignore_comments` (in) +: whether comments should be ignored and treated like whitespace (`#!cpp true`) or yield a parse error + (`#!cpp false`); (optional, `#!cpp false` by default) + +`first` (in) +: iterator to start of character range + +`last` (in) +: iterator to end of character range + +## Return value + +return value of the last processed SAX event + +## Exception safety + +## Complexity + +Linear in the length of the input. The parser is a predictive LL(1) parser. The complexity can be higher if the SAX +consumer `sax` has a super-linear complexity. + +## Notes + +A UTF-8 byte order mark is silently ignored. + +## Examples + +??? example + + The example below demonstrates the `sax_parse()` function reading from string and processing the events with a + user-defined SAX event consumer. + + ```cpp + --8<-- "examples/sax_parse.cpp" + ``` + + Output: + + ```json + --8<-- "examples/sax_parse.output" + ``` + +## Version history + +- Added in version 3.2.0. +- Ignoring comments via `ignore_comments` added in version 3.9.0. + +!!! warning "Deprecation" + + Overload (2) replaces calls to `sax_parse` with a pair of iterators as their first parameter which has been + deprecated in version 3.8.0. This overload will be removed in version 4.0.0. Please replace all calls like + `#!cpp sax_parse({ptr, ptr+len});` with `#!cpp sax_parse(ptr, ptr+len);`. diff --git a/docs/mkdocs/docs/api/basic_json/size.md b/docs/mkdocs/docs/api/basic_json/size.md new file mode 100644 index 00000000..4ff582db --- /dev/null +++ b/docs/mkdocs/docs/api/basic_json/size.md @@ -0,0 +1,57 @@ +# nlohmann::basic_json::size + +```cpp +size_type size() const noexcept; +``` + +Returns the number of elements in a JSON value. + +## Return value + +The return value depends on the different types and is defined as follows: + +| Value type | return value | +|------------|-------------------------------------| +| null | `0` | +| boolean | `1` | +| string | `1` | +| number | `1` | +| binary | `1` | +| object | result of function object_t::size() | +| array | result of function array_t::size() | + +## Exception safety + +No-throw guarantee: this function never throws exceptions. + +## Complexity + +Constant, as long as [`array_t`](array_t.md) and [`object_t`](object_t.md) satisfy the +[Container](https://en.cppreference.com/w/cpp/named_req/Container) concept; that is, their `size()` functions have +constant complexity. + +## Notes + +This function does not return the length of a string stored as JSON value -- it returns the number of elements in the +JSON value which is `1` in the case of a string. + +## Examples + +??? example + + The following code calls `size()` on the different value types. + + ```cpp + --8<-- "examples/size.cpp" + ``` + + Output: + + ```json + --8<-- "examples/size.output" + ``` + +## Version history + +- Added in version 1.0.0. +- Extended to return `1` for binary types in version 3.8.0. diff --git a/docs/mkdocs/docs/api/basic_json/std_hash.md b/docs/mkdocs/docs/api/basic_json/std_hash.md new file mode 100644 index 00000000..b9de74f8 --- /dev/null +++ b/docs/mkdocs/docs/api/basic_json/std_hash.md @@ -0,0 +1,34 @@ +# std::hash + +```cpp +namespace std { + struct hash; +} +``` + +Return a hash value for a JSON object. The hash function tries to rely on `std::hash` where possible. Furthermore, the +type of the JSON value is taken into account to have different hash values for `#!json null`, `#!cpp 0`, `#!cpp 0U`, and +`#!cpp false`, etc. + +## Examples + +??? example + + The example shows how to calculate hash values for different JSON values. + + ```cpp + --8<-- "examples/std_hash.cpp" + ``` + + Output: + + ```json + --8<-- "examples/std_hash.output" + ``` + + Note the output is platform-dependent. + +## Version history + +- Added in version 1.0.0. +- Extended for arbitrary basic_json types in version 3.10.5. diff --git a/docs/mkdocs/docs/api/basic_json/std_swap.md b/docs/mkdocs/docs/api/basic_json/std_swap.md new file mode 100644 index 00000000..d30f3bcc --- /dev/null +++ b/docs/mkdocs/docs/api/basic_json/std_swap.md @@ -0,0 +1,51 @@ +# std::swap + +```cpp +namespace std { + void swap(nlohmann::basic_json& j1, nlohmann::basic_json& j2); +} +``` + +Exchanges the values of two JSON objects. + +## Parameters + +`j1` (in, out) +: value to be replaced by `j2` + +`j2` (in, out) +: value to be replaced by `j1` + +## Possible implementation + +```cpp +void swap(nlohmann::basic_json& j1, nlohmann::basic_json& j2) +{ + j1.swap(j2); +} +``` + +## Examples + +??? example + + The following code shows how two values are swapped with `std::swap`. + + ```cpp + --8<-- "examples/std_swap.cpp" + ``` + + Output: + + ```json + --8<-- "examples/std_swap.output" + ``` + +## See also + +- [swap](swap.md) + +## Version history + +- Added in version 1.0.0. +- Extended for arbitrary basic_json types in version 3.10.5. diff --git a/docs/mkdocs/docs/api/basic_json/string_t.md b/docs/mkdocs/docs/api/basic_json/string_t.md new file mode 100644 index 00000000..3ab4412d --- /dev/null +++ b/docs/mkdocs/docs/api/basic_json/string_t.md @@ -0,0 +1,66 @@ +# nlohmann::basic_json::string_t + +```cpp +using string_t = StringType; +``` + +The type used to store JSON strings. + +[RFC 8259](https://tools.ietf.org/html/rfc8259) describes JSON strings as follows: +> A string is a sequence of zero or more Unicode characters. + +To store objects in C++, a type is defined by the template parameter described below. Unicode values are split by the +JSON class into byte-sized characters during deserialization. + +## Template parameters + +`StringType` +: the container to store strings (e.g., `std::string`). Note this container is used for keys/names in objects, see + [object_t](object_t.md). + +## Notes + +#### Default type + +With the default values for `StringType` (`std::string`), the default value for `string_t` is `#!cpp std::string`. + +#### Encoding + +Strings are stored in UTF-8 encoding. Therefore, functions like `std::string::size()` or `std::string::length()` return +the number of bytes in the string rather than the number of characters or glyphs. + +#### String comparison + +[RFC 8259](https://tools.ietf.org/html/rfc8259) states: +> Software implementations are typically required to test names of object members for equality. Implementations that +> transform the textual representation into sequences of Unicode code units and then perform the comparison numerically, +> code unit by code unit, are interoperable in the sense that implementations will agree in all cases on equality or +> inequality of two strings. For example, implementations that compare strings with escaped characters unconverted may +> incorrectly find that `"a\\b"` and `"a\u005Cb"` are not equal. + +This implementation is interoperable as it does compare strings code unit by code unit. + +#### Storage + +String values are stored as pointers in a `basic_json` type. That is, for any access to string values, a pointer of type +`string_t*` must be dereferenced. + +## Examples + +??? example + + The following code shows that `string_t` is by default, a typedef to `#!cpp std::string`. + + ```cpp + --8<-- "examples/string_t.cpp" + ``` + + Output: + + ```json + --8<-- "examples/string_t.output" + ``` + +## Version history + +- Added in version 1.0.0. diff --git a/docs/mkdocs/docs/api/basic_json/swap.md b/docs/mkdocs/docs/api/basic_json/swap.md new file mode 100644 index 00000000..a5730ffa --- /dev/null +++ b/docs/mkdocs/docs/api/basic_json/swap.md @@ -0,0 +1,157 @@ +# nlohmann::basic_json::swap + +```cpp +// (1) +void swap(reference other) noexcept; + +// (2) +void swap(reference left, reference right) noexcept; + +// (3) +void swap(array_t& other); + +// (4) +void swap(object_t& other); + +// (5) +void swap(string_t& other); + +// (6) +void swap(binary_t& other); + +// (7) +void swap(typename binary_t::container_type& other); +``` + +1. Exchanges the contents of the JSON value with those of `other`. Does not invoke any move, copy, or swap operations on + individual elements. All iterators and references remain valid. The past-the-end iterator is invalidated. +2. Exchanges the contents of the JSON value from `left` with those of `right`. Does not invoke any move, copy, or swap + operations on individual elements. All iterators and references remain valid. The past-the-end iterator is + invalidated. Implemented as a friend function callable via ADL. +3. Exchanges the contents of a JSON array with those of `other`. Does not invoke any move, copy, or swap operations on + individual elements. All iterators and references remain valid. The past-the-end iterator is invalidated. +4. Exchanges the contents of a JSON object with those of `other`. Does not invoke any move, copy, or swap operations on + individual elements. All iterators and references remain valid. The past-the-end iterator is invalidated. +5. Exchanges the contents of a JSON string with those of `other`. Does not invoke any move, copy, or swap operations on + individual elements. All iterators and references remain valid. The past-the-end iterator is invalidated. +6. Exchanges the contents of a binary value with those of `other`. Does not invoke any move, copy, or swap operations on + individual elements. All iterators and references remain valid. The past-the-end iterator is invalidated. +7. Exchanges the contents of a binary value with those of `other`. Does not invoke any move, copy, or swap operations on + individual elements. All iterators and references remain valid. The past-the-end iterator is invalidated. Unlike + version (6), no binary subtype is involved. + +## Parameters + +`other` (in, out) +: value to exchange the contents with + +`left` (in, out) +: value to exchange the contents with + +`right` (in, out) +: value to exchange the contents with + +## Exceptions + +1. No-throw guarantee: this function never throws exceptions. +2. No-throw guarantee: this function never throws exceptions. +3. Throws [`type_error.310`](../../home/exceptions.md#jsonexceptiontype_error310) if called on JSON values other than + arrays; example: `"cannot use swap() with boolean"` +4. Throws [`type_error.310`](../../home/exceptions.md#jsonexceptiontype_error310) if called on JSON values other than + objects; example: `"cannot use swap() with boolean"` +5. Throws [`type_error.310`](../../home/exceptions.md#jsonexceptiontype_error310) if called on JSON values other than + strings; example: `"cannot use swap() with boolean"` +6. Throws [`type_error.310`](../../home/exceptions.md#jsonexceptiontype_error310) if called on JSON values other than + binaries; example: `"cannot use swap() with boolean"` +7. Throws [`type_error.310`](../../home/exceptions.md#jsonexceptiontype_error310) if called on JSON values other than + binaries; example: `"cannot use swap() with boolean"` + +## Complexity + +Constant. + +## Examples + +??? example "Example: Swap JSON value (1, 2)" + + The example below shows how JSON values can be swapped with `swap()`. + + ```cpp + --8<-- "examples/swap__reference.cpp" + ``` + + Output: + + ```json + --8<-- "examples/swap__reference.output" + ``` + +??? example "Example: Swap array (3)" + + The example below shows how arrays can be swapped with `swap()`. + + ```cpp + --8<-- "examples/swap__array_t.cpp" + ``` + + Output: + + ```json + --8<-- "examples/swap__array_t.output" + ``` + +??? example "Example: Swap object (4)" + + The example below shows how objects can be swapped with `swap()`. + + ```cpp + --8<-- "examples/swap__object_t.cpp" + ``` + + Output: + + ```json + --8<-- "examples/swap__object_t.output" + ``` + +??? example "Example: Swap string (5)" + + The example below shows how strings can be swapped with `swap()`. + + ```cpp + --8<-- "examples/swap__string_t.cpp" + ``` + + Output: + + ```json + --8<-- "examples/swap__string_t.output" + ``` + +??? example "Example: Swap string (6)" + + The example below shows how binary values can be swapped with `swap()`. + + ```cpp + --8<-- "examples/swap__binary_t.cpp" + ``` + + Output: + + ```json + --8<-- "examples/swap__binary_t.output" + ``` + +## See also + +- [std::swap](std_swap.md) + +## Version history + +1. Since version 1.0.0. +2. Since version 1.0.0. +3. Since version 1.0.0. +4. Since version 1.0.0. +5. Since version 1.0.0. +6. Since version 3.8.0. +7. Since version 3.8.0. \ No newline at end of file diff --git a/docs/mkdocs/docs/api/basic_json/to_bjdata.md b/docs/mkdocs/docs/api/basic_json/to_bjdata.md new file mode 100644 index 00000000..48598a5e --- /dev/null +++ b/docs/mkdocs/docs/api/basic_json/to_bjdata.md @@ -0,0 +1,70 @@ +# nlohmann::basic_json::to_bjdata + +```cpp +// (1) +static std::vector to_bjdata(const basic_json& j, + const bool use_size = false, + const bool use_type = false); + +// (2) +static void to_bjdata(const basic_json& j, detail::output_adapter o, + const bool use_size = false, const bool use_type = false); +static void to_bjdata(const basic_json& j, detail::output_adapter o, + const bool use_size = false, const bool use_type = false); +``` + +Serializes a given JSON value `j` to a byte vector using the BJData (Binary JData) serialization format. BJData aims to +be more compact than JSON itself, yet more efficient to parse. + +1. Returns a byte vector containing the BJData serialization. +2. Writes the BJData serialization to an output adapter. + +The exact mapping and its limitations is described on a [dedicated page](../../features/binary_formats/bjdata.md). + +## Parameters + +`j` (in) +: JSON value to serialize + +`o` (in) +: output adapter to write serialization to + +`use_size` (in) +: whether to add size annotations to container types; optional, `#!cpp false` by default. + +`use_type` (in) +: whether to add type annotations to container types (must be combined with `#!cpp use_size = true`); optional, +`#!cpp false` by default. + +## Return value + +1. BJData serialization as byte vector +2. (none) + +## Exception safety + +Strong guarantee: if an exception is thrown, there are no changes in the JSON value. + +## Complexity + +Linear in the size of the JSON value `j`. + +## Examples + +??? example + + The example shows the serialization of a JSON value to a byte vector in BJData format. + + ```cpp + --8<-- "examples/to_bjdata.cpp" + ``` + + Output: + + ```json + --8<-- "examples/to_bjdata.output" + ``` + +## Version history + +- Added in version 3.11.0. diff --git a/docs/mkdocs/docs/api/basic_json/to_bson.md b/docs/mkdocs/docs/api/basic_json/to_bson.md new file mode 100644 index 00000000..5c4324a3 --- /dev/null +++ b/docs/mkdocs/docs/api/basic_json/to_bson.md @@ -0,0 +1,59 @@ +# nlohmann::basic_json::to_bson + +```cpp +// (1) +static std::vector to_bson(const basic_json& j); + +// (2) +static void to_bson(const basic_json& j, detail::output_adapter o); +static void to_bson(const basic_json& j, detail::output_adapter o); +``` + +BSON (Binary JSON) is a binary format in which zero or more ordered key/value pairs are stored as a single entity (a +so-called document). + +1. Returns a byte vector containing the BSON serialization. +2. Writes the BSON serialization to an output adapter. + +The exact mapping and its limitations is described on a [dedicated page](../../features/binary_formats/bson.md). + +## Parameters + +`j` (in) +: JSON value to serialize + +`o` (in) +: output adapter to write serialization to + +## Return value + +1. BSON serialization as byte vector +2. (none) + +## Exception safety + +Strong guarantee: if an exception is thrown, there are no changes in the JSON value. + +## Complexity + +Linear in the size of the JSON value `j`. + +## Examples + +??? example + + The example shows the serialization of a JSON value to a byte vector in BSON format. + + ```cpp + --8<-- "examples/to_bson.cpp" + ``` + + Output: + + ```json + --8<-- "examples/to_bson.output" + ``` + +## Version history + +- Added in version 3.4.0. diff --git a/docs/mkdocs/docs/api/basic_json/to_cbor.md b/docs/mkdocs/docs/api/basic_json/to_cbor.md new file mode 100644 index 00000000..0f944c48 --- /dev/null +++ b/docs/mkdocs/docs/api/basic_json/to_cbor.md @@ -0,0 +1,61 @@ +# nlohmann::basic_json::to_cbor + +```cpp +// (1) +static std::vector to_cbor(const basic_json& j); + +// (2) +static void to_cbor(const basic_json& j, detail::output_adapter o); +static void to_cbor(const basic_json& j, detail::output_adapter o); +``` + +Serializes a given JSON value `j` to a byte vector using the CBOR (Concise Binary Object Representation) serialization +format. CBOR is a binary serialization format which aims to be more compact than JSON itself, yet more efficient to +parse. + +1. Returns a byte vector containing the CBOR serialization. +2. Writes the CBOR serialization to an output adapter. + +The exact mapping and its limitations is described on a [dedicated page](../../features/binary_formats/cbor.md). + +## Parameters + +`j` (in) +: JSON value to serialize + +`o` (in) +: output adapter to write serialization to + +## Return value + +1. CBOR serialization as byte vector +2. (none) + +## Exception safety + +Strong guarantee: if an exception is thrown, there are no changes in the JSON value. + +## Complexity + +Linear in the size of the JSON value `j`. + +## Examples + +??? example + + The example shows the serialization of a JSON value to a byte vector in CBOR format. + + ```cpp + --8<-- "examples/to_cbor.cpp" + ``` + + Output: + + ```json + --8<-- "examples/to_cbor.output" + ``` + +## Version history + +- Added in version 2.0.9. +- Compact representation of floating-point numbers added in version 3.8.0. diff --git a/docs/mkdocs/docs/api/basic_json/to_msgpack.md b/docs/mkdocs/docs/api/basic_json/to_msgpack.md new file mode 100644 index 00000000..7d40981d --- /dev/null +++ b/docs/mkdocs/docs/api/basic_json/to_msgpack.md @@ -0,0 +1,59 @@ +# nlohmann::basic_json::to_msgpack + +```cpp +// (1) +static std::vector to_msgpack(const basic_json& j); + +// (2) +static void to_msgpack(const basic_json& j, detail::output_adapter o); +static void to_msgpack(const basic_json& j, detail::output_adapter o); +``` + +Serializes a given JSON value `j` to a byte vector using the MessagePack serialization format. MessagePack is a binary +serialization format which aims to be more compact than JSON itself, yet more efficient to parse. + +1. Returns a byte vector containing the MessagePack serialization. +2. Writes the MessagePack serialization to an output adapter. + +The exact mapping and its limitations is described on a [dedicated page](../../features/binary_formats/messagepack.md). + +## Parameters + +`j` (in) +: JSON value to serialize + +`o` (in) +: output adapter to write serialization to + +## Return value + +1. MessagePack serialization as byte vector +2. (none) + +## Exception safety + +Strong guarantee: if an exception is thrown, there are no changes in the JSON value. + +## Complexity + +Linear in the size of the JSON value `j`. + +## Examples + +??? example + + The example shows the serialization of a JSON value to a byte vector in MessagePack format. + + ```cpp + --8<-- "examples/to_msgpack.cpp" + ``` + + Output: + + ```json + --8<-- "examples/to_msgpack.output" + ``` + +## Version history + +- Added in version 2.0.9. diff --git a/docs/mkdocs/docs/api/basic_json/to_string.md b/docs/mkdocs/docs/api/basic_json/to_string.md new file mode 100644 index 00000000..2b907e21 --- /dev/null +++ b/docs/mkdocs/docs/api/basic_json/to_string.md @@ -0,0 +1,65 @@ +# to_string(basic_json) + +```cpp +template +std::string to_string(const BasicJsonType& j); +``` + +This function implements a user-defined to_string for JSON objects. + +## Template parameters + +`BasicJsonType` +: a specialization of [`basic_json`](index.md) + +## Return value + +string containing the serialization of the JSON value + +## Exception safety + +Strong guarantee: if an exception is thrown, there are no changes to any JSON value. + +## Exceptions + +Throws [`type_error.316`](../../home/exceptions.md#jsonexceptiontype_error316) if a string stored inside the JSON value +is not UTF-8 encoded + +## Complexity + +Linear. + +## Possible implementation + +```cpp +template +std::string to_string(const BasicJsonType& j) +{ + return j.dump(); +} +``` + +## Examples + +??? example + + The following code shows how the library's `to_string()` function integrates with others, allowing + argument-dependent lookup. + + ```cpp + --8<-- "examples/to_string.cpp" + ``` + + Output: + + ```json + --8<-- "examples/to_string.output" + ``` + +## See also + +- [dump](dump.md) + +## Version history + +Added in version 3.7.0. diff --git a/docs/mkdocs/docs/api/basic_json/to_ubjson.md b/docs/mkdocs/docs/api/basic_json/to_ubjson.md new file mode 100644 index 00000000..e3cd5d62 --- /dev/null +++ b/docs/mkdocs/docs/api/basic_json/to_ubjson.md @@ -0,0 +1,70 @@ +# nlohmann::basic_json::to_ubjson + +```cpp +// (1) +static std::vector to_ubjson(const basic_json& j, + const bool use_size = false, + const bool use_type = false); + +// (2) +static void to_ubjson(const basic_json& j, detail::output_adapter o, + const bool use_size = false, const bool use_type = false); +static void to_ubjson(const basic_json& j, detail::output_adapter o, + const bool use_size = false, const bool use_type = false); +``` + +Serializes a given JSON value `j` to a byte vector using the UBJSON (Universal Binary JSON) serialization format. UBJSON +aims to be more compact than JSON itself, yet more efficient to parse. + +1. Returns a byte vector containing the UBJSON serialization. +2. Writes the UBJSON serialization to an output adapter. + +The exact mapping and its limitations is described on a [dedicated page](../../features/binary_formats/ubjson.md). + +## Parameters + +`j` (in) +: JSON value to serialize + +`o` (in) +: output adapter to write serialization to + +`use_size` (in) +: whether to add size annotations to container types; optional, `#!cpp false` by default. + +`use_type` (in) +: whether to add type annotations to container types (must be combined with `#!cpp use_size = true`); optional, + `#!cpp false` by default. + +## Return value + +1. UBJSON serialization as byte vector +2. (none) + +## Exception safety + +Strong guarantee: if an exception is thrown, there are no changes in the JSON value. + +## Complexity + +Linear in the size of the JSON value `j`. + +## Examples + +??? example + + The example shows the serialization of a JSON value to a byte vector in UBJSON format. + + ```cpp + --8<-- "examples/to_ubjson.cpp" + ``` + + Output: + + ```json + --8<-- "examples/to_ubjson.output" + ``` + +## Version history + +- Added in version 3.1.0. diff --git a/docs/mkdocs/docs/api/basic_json/type.md b/docs/mkdocs/docs/api/basic_json/type.md new file mode 100644 index 00000000..deedd6b6 --- /dev/null +++ b/docs/mkdocs/docs/api/basic_json/type.md @@ -0,0 +1,54 @@ +# nlohmann::basic_json::type + +```cpp +constexpr value_t type() const noexcept; +``` + +Return the type of the JSON value as a value from the [`value_t`](value_t.md) enumeration. + +## Return value + +the type of the JSON value + +| Value type | return value | +|---------------------------|----------------------------| +| `#!json null` | `value_t::null` | +| boolean | `value_t::boolean` | +| string | `value_t::string` | +| number (integer) | `value_t::number_integer` | +| number (unsigned integer) | `value_t::number_unsigned` | +| number (floating-point) | `value_t::number_float` | +| object | `value_t::object` | +| array | `value_t::array` | +| binary | `value_t::binary` | +| discarded | `value_t::discarded` | + +## Exception safety + +No-throw guarantee: this member function never throws exceptions. + +## Complexity + +Constant. + +## Examples + +??? example + + The following code exemplifies `type()` for all JSON types. + + ```cpp + --8<-- "examples/type.cpp" + ``` + + Output: + + ```json + --8<-- "examples/type.output" + ``` + +## Version history + +- Added in version 1.0.0. +- Added unsigned integer type in version 2.0.0. +- Added binary type in version 3.8.0. diff --git a/docs/mkdocs/docs/api/basic_json/type_error.md b/docs/mkdocs/docs/api/basic_json/type_error.md new file mode 100644 index 00000000..cda54c08 --- /dev/null +++ b/docs/mkdocs/docs/api/basic_json/type_error.md @@ -0,0 +1,68 @@ +# nlohmann::basic_json::type_error + +```cpp +class type_error : public exception; +``` + +This exception is thrown in case of a type error; that is, a library function is executed on a JSON value whose type +does not match the expected semantics. + +Exceptions have ids 3xx (see [list of type errors](../../home/exceptions.md#type-errors)). + +```plantuml +std::exception <|-- basic_json::exception +basic_json::exception <|-- basic_json::parse_error +basic_json::exception <|-- basic_json::invalid_iterator +basic_json::exception <|-- basic_json::type_error +basic_json::exception <|-- basic_json::out_of_range +basic_json::exception <|-- basic_json::other_error + +interface std::exception {} + +class basic_json::exception { + + const int id + + const char* what() const +} + +class basic_json::parse_error { + + const std::size_t byte +} + +class basic_json::type_error #FFFF00 {} +``` + +## Member functions + +- **what** - returns explanatory string + +## Member variables + +- **id** - the id of the exception + +## Examples + +??? example + + The following code shows how a `type_error` exception can be caught. + + ```cpp + --8<-- "examples/type_error.cpp" + ``` + + Output: + + ```json + --8<-- "examples/type_error.output" + ``` + +## See also + +- [List of type errors](../../home/exceptions.md#type-errors) +- [`parse_error`](parse_error.md) for exceptions indicating a parse error +- [`invalid_iterator`](invalid_iterator.md) for exceptions indicating errors with iterators +- [`out_of_range`](out_of_range.md) for exceptions indicating access out of the defined range +- [`other_error`](other_error.md) for exceptions indicating other library errors + +## Version history + +- Since version 3.0.0. diff --git a/docs/mkdocs/docs/api/basic_json/type_name.md b/docs/mkdocs/docs/api/basic_json/type_name.md new file mode 100644 index 00000000..389c2b1d --- /dev/null +++ b/docs/mkdocs/docs/api/basic_json/type_name.md @@ -0,0 +1,54 @@ +# nlohmann::basic_json::type_name + +```cpp +const char* type_name() const noexcept; +``` + +Returns the type name as string to be used in error messages -- usually to indicate that a function was called on a +wrong JSON type. + +## Return value + +a string representation of the type ([`value_t`](value_t.md)): + +| Value type | return value | +|----------------------------------------------------|---------------| +| `#!json null` | `"null"` | +| boolean | `"boolean"` | +| string | `"string"` | +| number (integer, unsigned integer, floating-point) | `"number"` | +| object | `"object"` | +| array | `"array"` | +| binary | `"binary"` | +| discarded | `"discarded"` | + +## Exception safety + +No-throw guarantee: this member function never throws exceptions. + +## Complexity + +Constant. + +## Examples + +??? example + + The following code exemplifies `type_name()` for all JSON types. + + ```cpp + --8<-- "examples/type_name.cpp" + ``` + + Output: + + ```json + --8<-- "examples/type_name.output" + ``` + +## Version history + +- Added in version 1.0.0. +- Part of the public API version since 2.1.0. +- Changed return value to `const char*` and added `noexcept` in version 3.0.0. +- Added support for binary type in version 3.8.0. diff --git a/docs/mkdocs/docs/api/basic_json/unflatten.md b/docs/mkdocs/docs/api/basic_json/unflatten.md new file mode 100644 index 00000000..d9778036 --- /dev/null +++ b/docs/mkdocs/docs/api/basic_json/unflatten.md @@ -0,0 +1,61 @@ +# nlohmann::basic_json::unflatten + +```cpp +basic_json unflatten() const; +``` + +The function restores the arbitrary nesting of a JSON value that has been flattened before using the +[`flatten()`](flatten.md) function. The JSON value must meet certain constraints: + +1. The value must be an object. +2. The keys must be JSON pointers (see [RFC 6901](https://tools.ietf.org/html/rfc6901)) +3. The mapped values must be primitive JSON types. + +## Return value + +the original JSON from a flattened version + +## Exception safety + +Strong exception safety: if an exception occurs, the original value stays intact. + +## Exceptions + +The function can throw the following exceptions: + +- Throws [`type_error.314`](../../home/exceptions.md#jsonexceptiontype_error314) if value is not an object +- Throws [`type_error.315`](../../home/exceptions.md#jsonexceptiontype_error315) if object values are not primitive + +## Complexity + +Linear in the size the JSON value. + +## Notes + +Empty objects and arrays are flattened by [`flatten()`](flatten.md) to `#!json null` values and can not unflattened to +their original type. Apart from this example, for a JSON value `j`, the following is always true: +`#!cpp j == j.flatten().unflatten()`. + +## Examples + +??? example + + The following code shows how a flattened JSON object is unflattened into the original nested JSON object. + + ```cpp + --8<-- "examples/unflatten.cpp" + ``` + + Output: + + ```json + --8<-- "examples/unflatten.output" + ``` + +## See also + +- [flatten](flatten.md) the reverse function + +## Version history + +- Added in version 2.0.0. diff --git a/docs/mkdocs/docs/api/basic_json/update.md b/docs/mkdocs/docs/api/basic_json/update.md new file mode 100644 index 00000000..a594cf9d --- /dev/null +++ b/docs/mkdocs/docs/api/basic_json/update.md @@ -0,0 +1,142 @@ +# nlohmann::basic_json::update + +```cpp +// (1) +void update(const_reference j, bool merge_objects = false); + +// (2) +void update(const_iterator first, const_iterator last, bool merge_objects = false); +``` + +1. Inserts all values from JSON object `j`. +2. Inserts all values from range `[first, last)` + +When `merge_objects` is `#!c false` (default), existing keys are overwritten. When `merge_objects` is `#!c true`, +recursively merges objects with common keys. + +The function is motivated by Python's [dict.update](https://docs.python.org/3.6/library/stdtypes.html#dict.update) +function. + +## Parameters + +`j` (in) +: JSON object to read values from + +`merge_objects` (in) +: when `#!c true`, existing keys are not overwritten, but contents of objects are merged recursively (default: + `#!c false`) + +`first` (in) +: begin of the range of elements to insert + +`last` (in) +: end of the range of elements to insert + +## Exceptions + +1. The function can throw the following exceptions: + - Throws [`type_error.312`](../../home/exceptions.md#jsonexceptiontype_error312) if called on JSON values other than + objects; example: `"cannot use update() with string"` +2. The function can throw the following exceptions: + - Throws [`type_error.312`](../../home/exceptions.md#jsonexceptiontype_error312) if called on JSON values other than + objects; example: `"cannot use update() with string"` + - Throws [`invalid_iterator.202`](../../home/exceptions.md#jsonexceptioninvalid_iterator202) if called on an + iterator which does not belong to the current JSON value; example: `"iterator does not fit current value"` + - Throws [`invalid_iterator.210`](../../home/exceptions.md#jsonexceptioninvalid_iterator210) if `first` and `last` + do not belong to the same JSON value; example: `"iterators do not fit"` + +## Complexity + +1. O(N*log(size() + N)), where N is the number of elements to insert. +2. O(N*log(size() + N)), where N is the number of elements to insert. + +## Examples + +??? example + + The example shows how `update()` is used. + + ```cpp + --8<-- "examples/update.cpp" + ``` + + Output: + + ```json + --8<-- "examples/update.output" + ``` + +??? example + + The example shows how `update()` is used. + + ```cpp + --8<-- "examples/update__range.cpp" + ``` + + Output: + + ```json + --8<-- "examples/update__range.output" + ``` + +??? example + + One common use case for this function is the handling of user settings. Assume your application can be configured in + some aspects: + + ```json + { + "color": "red", + "active": true, + "name": {"de": "Maus", "en": "mouse"} + } + ``` + + The user may override the default settings selectively: + + ```json + { + "color": "blue", + "name": {"es": "ratón"}, + } + ``` + + Then `update` manages the merging of default settings and user settings: + + ```cpp + auto user_settings = json::parse("config.json"); + auto effective_settings = get_default_settings(); + effective_settings.update(user_settings); + ``` + + Now `effective_settings` contains the default settings, but those keys set by the user are overwritten: + + ```json + { + "color": "blue", + "active": true, + "name": {"es": "ratón"} + } + ``` + + Note existing keys were just overwritten. To merge objects, `merge_objects` setting should be set to `#!c true`: + + ```cpp + auto user_settings = json::parse("config.json"); + auto effective_settings = get_default_settings(); + effective_settings.update(user_settings, true); + ``` + + ```json + { + "color": "blue", + "active": true, + "name": {"de": "Maus", "en": "mouse", "es": "ratón"} + } + ``` + +## Version history + +- Added in version 3.0.0. +- Added `merge_objects` parameter in 3.10.4. diff --git a/docs/mkdocs/docs/api/basic_json/value.md b/docs/mkdocs/docs/api/basic_json/value.md new file mode 100644 index 00000000..edb5406b --- /dev/null +++ b/docs/mkdocs/docs/api/basic_json/value.md @@ -0,0 +1,159 @@ +# nlohmann::basic_json::value + +```cpp +// (1) +template +ValueType value(const typename object_t::key_type& key, + ValueType&& default_value) const; + +// (2) +template +ValueType value(KeyType&& key, + ValueType&& default_value) const; + +// (3) +template +ValueType value(const json_pointer& ptr, + const ValueType& default_value) const; +``` + +1. Returns either a copy of an object's element at the specified key `key` or a given default value if no element with + key `key` exists. + + The function is basically equivalent to executing + ```cpp + try { + return at(key); + } catch(out_of_range) { + return default_value; + } + ``` + +2. See 1. This overload is only available if `KeyType` is comparable with `#!cpp typename object_t::key_type` and + `#!cpp typename object_comparator_t::is_transparent` denotes a type. + +3. Returns either a copy of an object's element at the specified JSON pointer `ptr` or a given default value if no value + at `ptr` exists. + + The function is basically equivalent to executing + ```cpp + try { + return at(ptr); + } catch(out_of_range) { + return default_value; + } + ``` + +!!! note "Differences to `at` and `operator[]`" + + - Unlike [`at`](at.md), this function does not throw if the given `key`/`ptr` was not found. + - Unlike [`operator[]`](operator[].md), this function does not implicitly add an element to the position defined by + `key`/`ptr` key. This function is furthermore also applicable to const objects. + +## Template parameters + +`KeyType` +: A type for an object key other than [`json_pointer`](../json_pointer/index.md) that is comparable with + [`string_t`](string_t.md) using [`object_comparator_t`](object_comparator_t.md). + This can also be a string view (C++17). +`ValueType` +: type compatible to JSON values, for instance `#!cpp int` for JSON integer numbers, `#!cpp bool` for JSON booleans, + or `#!cpp std::vector` types for JSON arrays. Note the type of the expected value at `key`/`ptr` and the default + value `default_value` must be compatible. + +## Parameters + +`key` (in) +: key of the element to access + +`default_value` (in) +: the value to return if `key`/`ptr` found no value + +`ptr` (in) +: a JSON pointer to the element to access + +## Return value + +1. copy of the element at key `key` or `default_value` if `key` is not found +2. copy of the element at key `key` or `default_value` if `key` is not found +3. copy of the element at JSON Pointer `ptr` or `default_value` if no value for `ptr` is found + +## Exception safety + +Strong guarantee: if an exception is thrown, there are no +changes to any JSON value. + +## Exceptions + +1. The function can throw the following exceptions: + - Throws [`type_error.302`](../../home/exceptions.md#jsonexceptiontype_error302) if `default_value` does not match + the type of the value at `key` + - Throws [`type_error.306`](../../home/exceptions.md#jsonexceptiontype_error306) if the JSON value is not an object; + in that case, using `value()` with a key makes no sense. +2. See 1. +3. The function can throw the following exceptions: + - Throws [`type_error.302`](../../home/exceptions.md#jsonexceptiontype_error302) if `default_value` does not match + the type of the value at `ptr` + - Throws [`type_error.306`](../../home/exceptions.md#jsonexceptiontype_error306) if the JSON value is not an object; + in that case, using `value()` with a key makes no sense. + +## Complexity + +1. Logarithmic in the size of the container. +2. Logarithmic in the size of the container. +3. Logarithmic in the size of the container. + +## Examples + +??? example "Example: (1) access specified object element with default value" + + The example below shows how object elements can be queried with a default value. + + ```cpp + --8<-- "examples/value__object_t_key_type.cpp" + ``` + + Output: + + ```json + --8<-- "examples/value__object_t_key_type.output" + ``` + +??? example "Example: (2) access specified object element using string_view with default value" + + The example below shows how object elements can be queried with a default value. + + ```cpp + --8<-- "examples/value__keytype.c++17.cpp" + ``` + + Output: + + ```json + --8<-- "examples/value__keytype.c++17.output" + ``` + +??? example "Example: (3) access specified object element via JSON Pointer with default value" + + The example below shows how object elements can be queried with a default value. + + ```cpp + --8<-- "examples/value__json_ptr.cpp" + ``` + + Output: + + ```json + --8<-- "examples/value__json_ptr.output" + ``` + +## See also + +- see [`at`](at.md) for access by reference with range checking +- see [`operator[]`](operator%5B%5D.md) for unchecked access by reference + +## Version history + +1. Added in version 1.0.0. Changed parameter `default_value` type from `const ValueType&` to `ValueType&&` in version 3.11.0. +2. Added in version 3.11.0. Made `ValueType` the first template parameter in version 3.11.2. +3. Added in version 2.0.2. diff --git a/docs/mkdocs/docs/api/basic_json/value_t.md b/docs/mkdocs/docs/api/basic_json/value_t.md new file mode 100644 index 00000000..1505e02d --- /dev/null +++ b/docs/mkdocs/docs/api/basic_json/value_t.md @@ -0,0 +1,81 @@ +# nlohmann::basic_json::value_t + +```cpp +enum class value_t : std::uint8_t { + null, + object, + array, + string, + boolean, + number_integer, + number_unsigned, + number_float, + binary, + discarded +}; +``` + +This enumeration collects the different JSON types. It is internally used to distinguish the stored values, and the +functions [`is_null`](is_null.md), [`is_object`](is_object.md), [`is_array`](is_array.md), [`is_string`](is_string.md), +[`is_boolean`](is_boolean.md), [`is_number`](is_number.md) (with [`is_number_integer`](is_number_integer.md), +[`is_number_unsigned`](is_number_unsigned.md), and [`is_number_float`](is_number_float.md)), +[`is_discarded`](is_discarded.md), [`is_binary`](is_binary.md), [`is_primitive`](is_primitive.md), and +[`is_structured`](is_structured.md) rely on it. + +## Notes + +!!! note "Ordering" + + The order of types is as follows: + + 1. `null` + 2. `boolean` + 3. `number_integer`, `number_unsigned`, `number_float` + 4. `object` + 5. `array` + 6. `string` + 7. `binary` + + `discarded` is unordered. + +!!! note "Types of numbers" + + There are three enumerators for numbers (`number_integer`, `number_unsigned`, and `number_float`) to distinguish + between different types of numbers: + + - [`number_unsigned_t`](number_unsigned_t.md) for unsigned integers + - [`number_integer_t`](number_integer_t.md) for signed integers + - [`number_float_t`](number_float_t.md) for floating-point numbers or to approximate integers which do not fit + into the limits of their respective type + +!!! warning "Comparison operators" + + `operator<` and `operator<=>` (since C++20) are overloaded and compare according to the ordering described above. + Until C++20 all other relational and equality operators yield results according to the integer value of each + enumerator. Since C++20 some compilers consider the _rewritten candidates_ generated from `operator<=>` during + overload resolution, while others do not. For predictable and portable behavior use: + + - `operator<` or `operator<=>` when wanting to compare according to the order described above + - `operator==` or `operator!=` when wanting to compare according to each enumerators integer value + +## Examples + +??? example + + The following code how `type()` queries the `value_t` for all JSON types. + + ```cpp + --8<-- "examples/type.cpp" + ``` + + Output: + + ```json + --8<-- "examples/type.output" + ``` + +## Version history + +- Added in version 1.0.0. +- Added unsigned integer type in version 2.0.0. +- Added binary type in version 3.8.0. diff --git a/docs/mkdocs/docs/api/basic_json/~basic_json.md b/docs/mkdocs/docs/api/basic_json/~basic_json.md new file mode 100644 index 00000000..64e94400 --- /dev/null +++ b/docs/mkdocs/docs/api/basic_json/~basic_json.md @@ -0,0 +1,21 @@ +# nlohmann::basic_json::~basic_json + +```cpp +~basic_json() noexcept; +``` + +Destroys the JSON value and frees all allocated memory. + +## Exception safety + +No-throw guarantee: this member function never throws exceptions. + +## Complexity + +Linear. + + + +## Version history + +- Added in version 1.0.0. diff --git a/docs/mkdocs/docs/api/byte_container_with_subtype/byte_container_with_subtype.md b/docs/mkdocs/docs/api/byte_container_with_subtype/byte_container_with_subtype.md new file mode 100644 index 00000000..9913a9b5 --- /dev/null +++ b/docs/mkdocs/docs/api/byte_container_with_subtype/byte_container_with_subtype.md @@ -0,0 +1,46 @@ +# nlohmann::byte_container_with_subtype::byte_container_with_subtype + +```cpp +// (1) +byte_container_with_subtype(); + +// (2) +byte_container_with_subtype(const container_type& container); +byte_container_with_subtype(container_type&& container); + +// (3) +byte_container_with_subtype(const container_type& container, subtype_type subtype); +byte_container_with_subtype(container_type&& container, subtype_type subtype); +``` + +1. Create empty binary container without subtype. +2. Create binary container without subtype. +3. Create binary container with subtype. + +## Parameters + +`container` (in) +: binary container + +`subtype` (in) +: subtype + +## Examples + +??? example + + The example below demonstrates how byte containers can be created. + + ```cpp + --8<-- "examples/byte_container_with_subtype__byte_container_with_subtype.cpp" + ``` + + Output: + + ```json + --8<-- "examples/byte_container_with_subtype__byte_container_with_subtype.output" + ``` + +## Version history + +Since version 3.8.0. diff --git a/docs/mkdocs/docs/api/byte_container_with_subtype/clear_subtype.md b/docs/mkdocs/docs/api/byte_container_with_subtype/clear_subtype.md new file mode 100644 index 00000000..c62dead3 --- /dev/null +++ b/docs/mkdocs/docs/api/byte_container_with_subtype/clear_subtype.md @@ -0,0 +1,36 @@ +# nlohmann::byte_container_with_subtype::clear_subtype + +```cpp +void clear_subtype() noexcept; +``` + +Clears the binary subtype and flags the value as not having a subtype, which has implications for serialization; for +instance MessagePack will prefer the bin family over the ext family. + +## Exception safety + +No-throw guarantee: this function never throws exceptions. + +## Complexity + +Constant. + +## Examples + +??? example + + The example below demonstrates how `clear_subtype` can remove subtypes. + + ```cpp + --8<-- "examples/byte_container_with_subtype__clear_subtype.cpp" + ``` + + Output: + + ```json + --8<-- "examples/byte_container_with_subtype__clear_subtype.output" + ``` + +## Version history + +Since version 3.8.0. diff --git a/docs/mkdocs/docs/api/byte_container_with_subtype/has_subtype.md b/docs/mkdocs/docs/api/byte_container_with_subtype/has_subtype.md new file mode 100644 index 00000000..e06286e2 --- /dev/null +++ b/docs/mkdocs/docs/api/byte_container_with_subtype/has_subtype.md @@ -0,0 +1,39 @@ +# nlohmann::byte_container_with_subtype::has_subtype + +```cpp +constexpr bool has_subtype() const noexcept; +``` + +Returns whether the value has a subtype. + +## Return value + +whether the value has a subtype + +## Exception safety + +No-throw guarantee: this function never throws exceptions. + +## Complexity + +Constant. + +## Examples + +??? example + + The example below demonstrates how `has_subtype` can check whether a subtype was set. + + ```cpp + --8<-- "examples/byte_container_with_subtype__has_subtype.cpp" + ``` + + Output: + + ```json + --8<-- "examples/byte_container_with_subtype__has_subtype.output" + ``` + +## Version history + +Since version 3.8.0. diff --git a/docs/mkdocs/docs/api/byte_container_with_subtype/index.md b/docs/mkdocs/docs/api/byte_container_with_subtype/index.md new file mode 100644 index 00000000..277fffa3 --- /dev/null +++ b/docs/mkdocs/docs/api/byte_container_with_subtype/index.md @@ -0,0 +1,35 @@ +# nlohmann::byte_container_with_subtype + +```cpp +template +class byte_container_with_subtype : public BinaryType; +``` + +This type extends the template parameter `BinaryType` provided to [`basic_json`](../basic_json/index.md) with a subtype +used by BSON and MessagePack. This type exists so that the user does not have to specify a type themselves with a +specific naming scheme in order to override the binary type. + +## Template parameters + +`BinaryType` +: container to store bytes (`#!cpp std::vector` by default) + +## Member types + +- **container_type** - the type of the underlying container (`BinaryType`) +- **subtype_type** - the type of the subtype (`#!cpp std::uint64_t`) + +## Member functions + +- [(constructor)](byte_container_with_subtype.md) +- **operator==** - comparison: equal +- **operator!=** - comparison: not equal +- [**set_subtype**](subtype.md) - sets the binary subtype +- [**subtype**](subtype.md) - return the binary subtype +- [**has_subtype**](has_subtype.md) - return whether the value has a subtype +- [**clear_subtype**](clear_subtype.md) - clears the binary subtype + +## Version history + +- Added in version 3.8.0. +- Changed type of subtypes to `#!cpp std::uint64_t` in 3.10.0. diff --git a/docs/mkdocs/docs/api/byte_container_with_subtype/set_subtype.md b/docs/mkdocs/docs/api/byte_container_with_subtype/set_subtype.md new file mode 100644 index 00000000..cf21732b --- /dev/null +++ b/docs/mkdocs/docs/api/byte_container_with_subtype/set_subtype.md @@ -0,0 +1,41 @@ +# nlohmann::byte_container_with_subtype::set_subtype + +```cpp +void set_subtype(subtype_type subtype) noexcept; +``` + +Sets the binary subtype of the value, also flags a binary JSON value as having a subtype, which has implications for +serialization. + +## Parameters + +`subtype` (in) +: subtype to set + +## Exception safety + +No-throw guarantee: this function never throws exceptions. + +## Complexity + +Constant. + +## Examples + +??? example + + The example below demonstrates how a subtype can be set with `set_subtype`. + + ```cpp + --8<-- "examples/byte_container_with_subtype__set_subtype.cpp" + ``` + + Output: + + ```json + --8<-- "examples/byte_container_with_subtype__set_subtype.output" + ``` + +## Version history + +Since version 3.8.0. diff --git a/docs/mkdocs/docs/api/byte_container_with_subtype/subtype.md b/docs/mkdocs/docs/api/byte_container_with_subtype/subtype.md new file mode 100644 index 00000000..389241a7 --- /dev/null +++ b/docs/mkdocs/docs/api/byte_container_with_subtype/subtype.md @@ -0,0 +1,42 @@ +# nlohmann::byte_container_with_subtype::subtype + +```cpp +constexpr subtype_type subtype() const noexcept; +``` + +Returns the numerical subtype of the value if it has a subtype. If it does not have a subtype, this function will return +`subtype_type(-1)` as a sentinel value. + +## Return value + +the numerical subtype of the binary value, or `subtype_type(-1)` if no subtype is set + +## Exception safety + +No-throw guarantee: this function never throws exceptions. + +## Complexity + +Constant. + +## Examples + +??? example + + The example below demonstrates how the subtype can be retrieved with `subtype`. Note how `subtype_type(-1)` is + returned for container `c1`. + + ```cpp + --8<-- "examples/byte_container_with_subtype__subtype.cpp" + ``` + + Output: + + ```json + --8<-- "examples/byte_container_with_subtype__subtype.output" + ``` + +## Version history + +- Added in version 3.8.0 +- Fixed return value to properly return `subtype_type(-1)` as documented in version 3.10.0. diff --git a/docs/mkdocs/docs/api/json.md b/docs/mkdocs/docs/api/json.md new file mode 100644 index 00000000..36edcc2c --- /dev/null +++ b/docs/mkdocs/docs/api/json.md @@ -0,0 +1,28 @@ +# nlohmann::json + +```cpp +using json = basic_json<>; +``` + +This type is the default specialization of the [basic_json](basic_json/index.md) class which uses the standard template +types. + +## Examples + +??? example + + The example below demonstrates how to use the type `nlohmann::json`. + + ```cpp + --8<-- "examples/README.cpp" + ``` + + Output: + + ```json + --8<-- "examples/README.output" + ``` + +## Version history + +Since version 1.0.0. diff --git a/docs/mkdocs/docs/api/json_pointer/back.md b/docs/mkdocs/docs/api/json_pointer/back.md new file mode 100644 index 00000000..240bc6e1 --- /dev/null +++ b/docs/mkdocs/docs/api/json_pointer/back.md @@ -0,0 +1,40 @@ +# nlohmann::json_pointer::back + +```cpp +const string_t& back() const; +``` + +Return last reference token. + +## Return value + +Last reference token. + +## Exceptions + +Throws [out_of_range.405](../../home/exceptions.md#jsonexceptionout_of_range405) if JSON pointer has no parent. + +## Complexity + +Constant. + +## Examples + +??? example + + The example shows the usage of `back`. + + ```cpp + --8<-- "examples/json_pointer__back.cpp" + ``` + + Output: + + ```json + --8<-- "examples/json_pointer__back.output" + ``` + +## Version history + +- Added in version 3.6.0. +- Changed return type to `string_t` in version 3.11.0. diff --git a/docs/mkdocs/docs/api/json_pointer/empty.md b/docs/mkdocs/docs/api/json_pointer/empty.md new file mode 100644 index 00000000..346364ad --- /dev/null +++ b/docs/mkdocs/docs/api/json_pointer/empty.md @@ -0,0 +1,39 @@ +# nlohmann::json_pointer::empty + +```cpp +bool empty() const noexcept; +``` + +Return whether pointer points to the root document. + +## Return value + +`#!cpp true` iff the JSON pointer points to the root document. + +## Exception safety + +No-throw guarantee: this function never throws exceptions. + +## Complexity + +Constant. + +## Examples + +??? example + + The example shows the result of `empty` for different JSON Pointers. + + ```cpp + --8<-- "examples/json_pointer__empty.cpp" + ``` + + Output: + + ```json + --8<-- "examples/json_pointer__empty.output" + ``` + +## Version history + +Added in version 3.6.0. diff --git a/docs/mkdocs/docs/api/json_pointer/index.md b/docs/mkdocs/docs/api/json_pointer/index.md new file mode 100644 index 00000000..22e24640 --- /dev/null +++ b/docs/mkdocs/docs/api/json_pointer/index.md @@ -0,0 +1,52 @@ +# nlohmann::json_pointer + +```cpp +template +class json_pointer; +``` + +A JSON pointer defines a string syntax for identifying a specific value within a JSON document. It can be used with +functions [`at`](../basic_json/at.md) and [`operator[]`](../basic_json/operator%5B%5D.md). Furthermore, JSON pointers +are the base for JSON patches. + +## Template parameters + +`RefStringType` +: the string type used for the reference tokens making up the JSON pointer + +!!! warning "Deprecation" + + For backwards compatibility `RefStringType` may also be a specialization of [`basic_json`](../basic_json/index.md) + in which case `string_t` will be deduced as [`basic_json::string_t`](../basic_json/string_t.md). This feature is + deprecated and may be removed in a future major version. + +## Member types + +- [**string_t**](string_t.md) - the string type used for the reference tokens + +## Member functions + +- [(constructor)](json_pointer.md) +- [**to_string**](to_string.md) - return a string representation of the JSON pointer +- [**operator string_t**](operator_string_t.md) - return a string representation of the JSON pointer +- [**operator==**](operator_eq.md) - compare: equal +- [**operator!=**](operator_ne.md) - compare: not equal +- [**operator/=**](operator_slasheq.md) - append to the end of the JSON pointer +- [**operator/**](operator_slash.md) - create JSON Pointer by appending +- [**parent_pointer**](parent_pointer.md) - returns the parent of this JSON pointer +- [**pop_back**](pop_back.md) - remove last reference token +- [**back**](back.md) - return last reference token +- [**push_back**](push_back.md) - append an unescaped token at the end of the pointer +- [**empty**](empty.md) - return whether pointer points to the root document + +## Literals + +- [**operator""_json_pointer**](../operator_literal_json_pointer.md) - user-defined string literal for JSON pointers +## See also + +- [RFC 6901](https://datatracker.ietf.org/doc/html/rfc6901) + +## Version history + +- Added in version 2.0.0. +- Changed template parameter from `basic_json` to string type in version 3.11.0. diff --git a/docs/mkdocs/docs/api/json_pointer/json_pointer.md b/docs/mkdocs/docs/api/json_pointer/json_pointer.md new file mode 100644 index 00000000..5e7057fc --- /dev/null +++ b/docs/mkdocs/docs/api/json_pointer/json_pointer.md @@ -0,0 +1,41 @@ +# nlohmann::json_pointer::json_pointer + +```cpp +explicit json_pointer(const string_t& s = ""); +``` + +Create a JSON pointer according to the syntax described in +[Section 3 of RFC6901](https://tools.ietf.org/html/rfc6901#section-3). + +## Parameters + +`s` (in) +: string representing the JSON pointer; if omitted, the empty string is assumed which references the whole JSON value + +## Exceptions + +- Throws [parse_error.107](../../home/exceptions.md#jsonexceptionparse_error107) if the given JSON pointer `s` is + nonempty and does not begin with a slash (`/`); see example below. +- Throws [parse_error.108](../../home/exceptions.md#jsonexceptionparse_error108) if a tilde (`~`) in the given JSON + pointer `s` is not followed by `0` (representing `~`) or `1` (representing `/`); see example below. + +## Examples + +??? example + + The example shows the construction several valid JSON pointers as well as the exceptional behavior. + + ```cpp + --8<-- "examples/json_pointer.cpp" + ``` + + Output: + + ```json + --8<-- "examples/json_pointer.output" + ``` + +## Version history + +- Added in version 2.0.0. +- Changed type of `s` to `string_t` in version 3.11.0. diff --git a/docs/mkdocs/docs/api/json_pointer/operator_eq.md b/docs/mkdocs/docs/api/json_pointer/operator_eq.md new file mode 100644 index 00000000..807ae1d0 --- /dev/null +++ b/docs/mkdocs/docs/api/json_pointer/operator_eq.md @@ -0,0 +1,113 @@ +# nlohmann::json_pointer::operator== + +```cpp +// until C++20 +template +bool operator==( + const json_pointer& lhs, + const json_pointer& rhs) noexcept; // (1) + +template +bool operator==( + const json_pointer& lhs, + const StringType& rhs); // (2) + +template +bool operator==( + const StringType& lhs, + const json_pointer& rhs); // (2) + +// since C++20 +class json_pointer { + template + bool operator==( + const json_pointer& rhs) const noexcept; // (1) + + bool operator==(const string_t& rhs) const; // (2) +}; +``` + +1. Compares two JSON pointers for equality by comparing their reference tokens. + +2. Compares a JSON pointer and a string or a string and a JSON pointer for equality by converting the string to a JSON + pointer and comparing the JSON pointers according to 1. + +## Template parameters + +`RefStringTypeLhs`, `RefStringTypeRhs` +: the string type of the left-hand side or right-hand side JSON pointer, respectively + +`StringType` +: the string type derived from the `json_pointer` operand ([`json_pointer::string_t`](string_t.md)) + +## Parameters + +`lhs` (in) +: first value to consider + +`rhs` (in) +: second value to consider + +## Return value + +whether the values `lhs`/`*this` and `rhs` are equal + +## Exception safety + +1. No-throw guarantee: this function never throws exceptions. +2. Strong exception safety: if an exception occurs, the original value stays intact. + +## Exceptions + +1. (none) +2. The function can throw the following exceptions: + - Throws [parse_error.107](../../home/exceptions.md#jsonexceptionparse_error107) if the given JSON pointer `s` is + nonempty and does not begin with a slash (`/`); see example below. + - Throws [parse_error.108](../../home/exceptions.md#jsonexceptionparse_error108) if a tilde (`~`) in the given JSON + pointer `s` is not followed by `0` (representing `~`) or `1` (representing `/`); see example below. + +## Complexity + +Constant if `lhs` and `rhs` differ in the number of reference tokens, otherwise linear in the number of reference +tokens. + +## Notes + +!!! warning "Deprecation" + + Overload 2 is deprecated and will be removed in a future major version release. + +## Examples + +??? example "Example: (1) Comparing JSON pointers" + + The example demonstrates comparing JSON pointers. + + ```cpp + --8<-- "examples/json_pointer__operator__equal.cpp" + ``` + + Output: + + ``` + --8<-- "examples/json_pointer__operator__equal.output" + ``` + +??? example "Example: (2) Comparing JSON pointers and strings" + + The example demonstrates comparing JSON pointers and strings, and when doing so may raise an exception. + + ```cpp + --8<-- "examples/json_pointer__operator__equal_stringtype.cpp" + ``` + + Output: + + ``` + --8<-- "examples/json_pointer__operator__equal_stringtype.output" + ``` + +## Version history + +1. Added in version 2.1.0. Added C++20 member functions in version 3.11.2. +2. Added for backward compatibility and deprecated in version 3.11.2. diff --git a/docs/mkdocs/docs/api/json_pointer/operator_ne.md b/docs/mkdocs/docs/api/json_pointer/operator_ne.md new file mode 100644 index 00000000..1f3e3247 --- /dev/null +++ b/docs/mkdocs/docs/api/json_pointer/operator_ne.md @@ -0,0 +1,109 @@ +# nlohmann::json_pointer::operator!= + +```cpp +// until C++20 +template +bool operator!=( + const json_pointer& lhs, + const json_pointer& rhs) noexcept; // (1) + +template +bool operator!=( + const json_pointer& lhs, + const StringType& rhs); // (2) + +template +bool operator!=( + const StringType& lhs, + const json_pointer& rhs); // (2) +``` + +1. Compares two JSON pointers for inequality by comparing their reference tokens. + +2. Compares a JSON pointer and a string or a string and a JSON pointer for inequality by converting the string to a + JSON pointer and comparing the JSON pointers according to 1. + +## Template parameters + +`RefStringTypeLhs`, `RefStringTypeRhs` +: the string type of the left-hand side or right-hand side JSON pointer, respectively + +`StringType` +: the string type derived from the `json_pointer` operand ([`json_pointer::string_t`](string_t.md)) + +## Parameters + +`lhs` (in) +: first value to consider + +`rhs` (in) +: second value to consider + +## Return value + +whether the values `lhs`/`*this` and `rhs` are not equal + +## Exception safety + +1. No-throw guarantee: this function never throws exceptions. +2. Strong exception safety: if an exception occurs, the original value stays intact. + +## Exceptions + +1. (none) +2. The function can throw the following exceptions: + - Throws [parse_error.107](../../home/exceptions.md#jsonexceptionparse_error107) if the given JSON pointer `s` is + nonempty and does not begin with a slash (`/`); see example below. + - Throws [parse_error.108](../../home/exceptions.md#jsonexceptionparse_error108) if a tilde (`~`) in the given JSON + pointer `s` is not followed by `0` (representing `~`) or `1` (representing `/`); see example below. + +## Complexity + +Constant if `lhs` and `rhs` differ in the number of reference tokens, otherwise linear in the number of reference +tokens. + +## Notes + +!!! note "Operator overload resolution" + + Since C++20 overload resolution will consider the _rewritten candidate_ generated from + [`operator==`](operator_eq.md). + +!!! warning "Deprecation" + + Overload 2 is deprecated and will be removed in a future major version release. + +## Examples + +??? example "Example: (1) Comparing JSON pointers" + + The example demonstrates comparing JSON pointers. + + ```cpp + --8<-- "examples/json_pointer__operator__notequal.cpp" + ``` + + Output: + + ``` + --8<-- "examples/json_pointer__operator__notequal.output" + ``` + +??? example "Example: (2) Comparing JSON pointers and strings" + + The example demonstrates comparing JSON pointers and strings, and when doing so may raise an exception. + + ```cpp + --8<-- "examples/json_pointer__operator__notequal_stringtype.cpp" + ``` + + Output: + + ``` + --8<-- "examples/json_pointer__operator__notequal_stringtype.output" + ``` + +## Version history + +1. Added in version 2.1.0. +2. Added for backward compatibility and deprecated in version 3.11.2. diff --git a/docs/mkdocs/docs/api/json_pointer/operator_slash.md b/docs/mkdocs/docs/api/json_pointer/operator_slash.md new file mode 100644 index 00000000..ed77b504 --- /dev/null +++ b/docs/mkdocs/docs/api/json_pointer/operator_slash.md @@ -0,0 +1,64 @@ +# nlohmann::json_pointer::operator/ + +```cpp +// (1) +json_pointer operator/(const json_pointer& lhs, const json_pointer& rhs); + +// (2) +json_pointer operator/(const json_pointer& lhs, string_t token); + +// (3) +json_pointer operator/(const json_pointer& lhs, std::size_t array_idx); +``` + +1. create a new JSON pointer by appending the right JSON pointer at the end of the left JSON pointer +2. create a new JSON pointer by appending the unescaped token at the end of the JSON pointer +3. create a new JSON pointer by appending the array-index-token at the end of the JSON pointer + +## Parameters + +`lhs` (in) +: JSON pointer + +`rhs` (in) +: JSON pointer to append + +`token` (in) +: reference token to append + +`array_idx` (in) +: array index to append + +## Return value + +1. a new JSON pointer with `rhs` appended to `lhs` +2. a new JSON pointer with unescaped `token` appended to `lhs` +3. a new JSON pointer with `array_idx` appended to `lhs` + +## Complexity + +1. Linear in the length of `lhs` and `rhs`. +2. Linear in the length of `lhs`. +3. Linear in the length of `lhs`. + +## Examples + +??? example + + The example shows the usage of `operator/`. + + ```cpp + --8<-- "examples/json_pointer__operator_add_binary.cpp" + ``` + + Output: + + ```json + --8<-- "examples/json_pointer__operator_add_binary.output" + ``` + +## Version history + +1. Added in version 3.6.0. +2. Added in version 3.6.0. Changed type of `token` to `string_t` in version 3.11.0. +3. Added in version 3.6.0. diff --git a/docs/mkdocs/docs/api/json_pointer/operator_slasheq.md b/docs/mkdocs/docs/api/json_pointer/operator_slasheq.md new file mode 100644 index 00000000..3518557d --- /dev/null +++ b/docs/mkdocs/docs/api/json_pointer/operator_slasheq.md @@ -0,0 +1,61 @@ +# nlohmann::json_pointer::operator/= + +```cpp +// (1) +json_pointer& operator/=(const json_pointer& ptr); + +// (2) +json_pointer& operator/=(string_t token); + +// (3) +json_pointer& operator/=(std::size_t array_idx) +``` + +1. append another JSON pointer at the end of this JSON pointer +2. append an unescaped reference token at the end of this JSON pointer +3. append an array index at the end of this JSON pointer + +## Parameters + +`ptr` (in) +: JSON pointer to append + +`token` (in) +: reference token to append + +`array_idx` (in) +: array index to append + +## Return value + +1. JSON pointer with `ptr` appended +2. JSON pointer with `token` appended without escaping `token` +3. JSON pointer with `array_idx` appended + +## Complexity + +1. Linear in the length of `ptr`. +2. Amortized constant. +3. Amortized constant. + +## Examples + +??? example + + The example shows the usage of `operator/=`. + + ```cpp + --8<-- "examples/json_pointer__operator_add.cpp" + ``` + + Output: + + ```json + --8<-- "examples/json_pointer__operator_add.output" + ``` + +## Version history + +1. Added in version 3.6.0. +2. Added in version 3.6.0. Changed type of `token` to `string_t` in version 3.11.0. +3. Added in version 3.6.0. diff --git a/docs/mkdocs/docs/api/json_pointer/operator_string_t.md b/docs/mkdocs/docs/api/json_pointer/operator_string_t.md new file mode 100644 index 00000000..74105a4f --- /dev/null +++ b/docs/mkdocs/docs/api/json_pointer/operator_string_t.md @@ -0,0 +1,48 @@ +# nlohmann::json_pointer::operator string_t + +```cpp +operator string_t() const +``` + +Return a string representation of the JSON pointer. + +## Return value + +A string representation of the JSON pointer + +## Possible implementation + +```cpp +operator string_t() const +{ + return to_string(); +} +``` + +## Notes + +!!! warning "Deprecation" + + This function is deprecated in favor of [`to_string`](to_string.md) and will be removed in a future major version + release. + +## Examples + +??? example + + The example shows how JSON Pointers can be implicitly converted to strings. + + ```cpp + --8<-- "examples/json_pointer__operator_string_t.cpp" + ``` + + Output: + + ```json + --8<-- "examples/json_pointer__operator_string_t.output" + ``` + +## Version history + +- Since version 2.0.0. +- Changed type to `string_t` and deprecated in version 3.11.0. diff --git a/docs/mkdocs/docs/api/json_pointer/parent_pointer.md b/docs/mkdocs/docs/api/json_pointer/parent_pointer.md new file mode 100644 index 00000000..13987307 --- /dev/null +++ b/docs/mkdocs/docs/api/json_pointer/parent_pointer.md @@ -0,0 +1,35 @@ +# nlohmann::json_pointer::parent_pointer + +```cpp +json_pointer parent_pointer() const; +``` + +Returns the parent of this JSON pointer. + +## Return value + +Parent of this JSON pointer; in case this JSON pointer is the root, the root itself is returned. + +## Complexity + +Linear in the length of the JSON pointer. + +## Examples + +??? example + + The example shows the result of `parent_pointer` for different JSON Pointers. + + ```cpp + --8<-- "examples/json_pointer__parent_pointer.cpp" + ``` + + Output: + + ```json + --8<-- "examples/json_pointer__parent_pointer.output" + ``` + +## Version history + +Added in version 3.6.0. diff --git a/docs/mkdocs/docs/api/json_pointer/pop_back.md b/docs/mkdocs/docs/api/json_pointer/pop_back.md new file mode 100644 index 00000000..3c79f363 --- /dev/null +++ b/docs/mkdocs/docs/api/json_pointer/pop_back.md @@ -0,0 +1,35 @@ +# nlohmann::json_pointer::pop_back + +```cpp +void pop_back(); +``` + +Remove last reference token. + +## Exceptions + +Throws [out_of_range.405](../../home/exceptions.md#jsonexceptionout_of_range405) if JSON pointer has no parent. + +## Complexity + +Constant. + +## Examples + +??? example + + The example shows the usage of `pop_back`. + + ```cpp + --8<-- "examples/json_pointer__pop_back.cpp" + ``` + + Output: + + ```json + --8<-- "examples/json_pointer__pop_back.output" + ``` + +## Version history + +Added in version 3.6.0. diff --git a/docs/mkdocs/docs/api/json_pointer/push_back.md b/docs/mkdocs/docs/api/json_pointer/push_back.md new file mode 100644 index 00000000..c1c19cb8 --- /dev/null +++ b/docs/mkdocs/docs/api/json_pointer/push_back.md @@ -0,0 +1,39 @@ +# nlohmann::json_pointer::push_back + +```cpp +void push_back(const string_t& token); + +void push_back(string_t&& token); +``` + +Append an unescaped token at the end of the reference pointer. + +## Parameters + +`token` (in) +: token to add + +## Complexity + +Amortized constant. + +## Examples + +??? example + + The example shows the result of `push_back` for different JSON Pointers. + + ```cpp + --8<-- "examples/json_pointer__push_back.cpp" + ``` + + Output: + + ```json + --8<-- "examples/json_pointer__push_back.output" + ``` + +## Version history + +- Added in version 3.6.0. +- Changed type of `token` to `string_t` in version 3.11.0. diff --git a/docs/mkdocs/docs/api/json_pointer/string_t.md b/docs/mkdocs/docs/api/json_pointer/string_t.md new file mode 100644 index 00000000..c8527bc9 --- /dev/null +++ b/docs/mkdocs/docs/api/json_pointer/string_t.md @@ -0,0 +1,28 @@ +# nlohmann::json_pointer::string_t +```cpp +using string_t = RefStringType; +``` + +The string type used for the reference tokens making up the JSON pointer. + +See [`basic_json::string_t`](../basic_json/string_t.md) for more information. + +## Examples + +??? example + + The example shows the type `string_t` and its relation to `basic_json::string_t`. + + ```cpp + --8<-- "examples/json_pointer__string_t.cpp" + ``` + + Output: + + ```json + --8<-- "examples/json_pointer__string_t.output" + ``` + +## Version history + +- Added in version 3.11.0. diff --git a/docs/mkdocs/docs/api/json_pointer/to_string.md b/docs/mkdocs/docs/api/json_pointer/to_string.md new file mode 100644 index 00000000..fae3abe5 --- /dev/null +++ b/docs/mkdocs/docs/api/json_pointer/to_string.md @@ -0,0 +1,40 @@ +# nlohmann::json_pointer::to_string + +```cpp +string_t to_string() const; +``` + +Return a string representation of the JSON pointer. + +## Return value + +A string representation of the JSON pointer + +## Notes + +For each JSON pointer `ptr`, it holds: + +```cpp +ptr == json_pointer(ptr.to_string()); +``` + +## Examples + +??? example + + The example shows the result of `to_string`. + + ```cpp + --8<-- "examples/json_pointer__to_string.cpp" + ``` + + Output: + + ```json + --8<-- "examples/json_pointer__to_string.output" + ``` + +## Version history + +- Since version 2.0.0. +- Changed return type to `string_t` in version 3.11.0. diff --git a/docs/mkdocs/docs/api/json_sax/binary.md b/docs/mkdocs/docs/api/json_sax/binary.md new file mode 100644 index 00000000..fc0980e2 --- /dev/null +++ b/docs/mkdocs/docs/api/json_sax/binary.md @@ -0,0 +1,40 @@ +# nlohmann::json_sax::binary + +```cpp +virtual bool binary(binary_t& val) = 0; +``` + +A binary value was read. + +## Parameters + +`val` (in) +: binary value + +## Return value + +Whether parsing should proceed. + +## Notes + +It is safe to move the passed binary value. + +## Examples + +??? example + + The example below shows how the SAX interface is used. + + ```cpp + --8<-- "examples/sax_parse__binary.cpp" + ``` + + Output: + + ```json + --8<-- "examples/sax_parse__binary.output" + ``` + +## Version history + +- Added in version 3.8.0. diff --git a/docs/mkdocs/docs/api/json_sax/boolean.md b/docs/mkdocs/docs/api/json_sax/boolean.md new file mode 100644 index 00000000..fdf29456 --- /dev/null +++ b/docs/mkdocs/docs/api/json_sax/boolean.md @@ -0,0 +1,36 @@ +# nlohmann::json_sax::boolean + +```cpp +virtual bool boolean(bool val) = 0; +``` + +A boolean value was read. + +## Parameters + +`val` (in) +: boolean value + +## Return value + +Whether parsing should proceed. + +## Examples + +??? example + + The example below shows how the SAX interface is used. + + ```cpp + --8<-- "examples/sax_parse.cpp" + ``` + + Output: + + ```json + --8<-- "examples/sax_parse.output" + ``` + +## Version history + +- Added in version 3.2.0. diff --git a/docs/mkdocs/docs/api/json_sax/end_array.md b/docs/mkdocs/docs/api/json_sax/end_array.md new file mode 100644 index 00000000..9c12e40a --- /dev/null +++ b/docs/mkdocs/docs/api/json_sax/end_array.md @@ -0,0 +1,31 @@ +# nlohmann::json_sax::end_array + +```cpp +virtual bool end_array() = 0; +``` + +The end of an array was read. + +## Return value + +Whether parsing should proceed. + +## Examples + +??? example + + The example below shows how the SAX interface is used. + + ```cpp + --8<-- "examples/sax_parse.cpp" + ``` + + Output: + + ```json + --8<-- "examples/sax_parse.output" + ``` + +## Version history + +- Added in version 3.2.0. diff --git a/docs/mkdocs/docs/api/json_sax/end_object.md b/docs/mkdocs/docs/api/json_sax/end_object.md new file mode 100644 index 00000000..601c94a4 --- /dev/null +++ b/docs/mkdocs/docs/api/json_sax/end_object.md @@ -0,0 +1,31 @@ +# nlohmann::json_sax::end_object + +```cpp +virtual bool end_object() = 0; +``` + +The end of an object was read. + +## Return value + +Whether parsing should proceed. + +## Examples + +??? example + + The example below shows how the SAX interface is used. + + ```cpp + --8<-- "examples/sax_parse.cpp" + ``` + + Output: + + ```json + --8<-- "examples/sax_parse.output" + ``` + +## Version history + +- Added in version 3.2.0. diff --git a/docs/mkdocs/docs/api/json_sax/index.md b/docs/mkdocs/docs/api/json_sax/index.md new file mode 100644 index 00000000..f63e85c9 --- /dev/null +++ b/docs/mkdocs/docs/api/json_sax/index.md @@ -0,0 +1,44 @@ +# nlohmann::json_sax + +```cpp +template +struct json_sax; +``` + +This class describes the SAX interface used by [sax_parse](../basic_json/sax_parse.md). Each function is called in +different situations while the input is parsed. The boolean return value informs the parser whether to continue +processing the input. + +## Template parameters + +`BasicJsonType` +: a specialization of [`basic_json`](../basic_json/index.md) + +## Member types + +- [**number_integer_t**](../basic_json/number_integer_t.md) - `BasicJsonType`'s type for numbers (integer) +- [**number_unsigned_t**](../basic_json/number_unsigned_t.md) - `BasicJsonType`'s type for numbers (unsigned) +- [**number_float_t**](../basic_json/number_float_t.md) - `BasicJsonType`'s type for numbers (floating-point) +- [**string_t**](../basic_json/string_t.md) - `BasicJsonType`'s type for strings +- [**binary_t**](../basic_json/binary_t.md) - `BasicJsonType`'s type for binary arrays + +## Member functions + +- [**binary**](binary.md) (_virtual_) - a binary value was read +- [**boolean**](boolean.md) (_virtual_) - a boolean value was read +- [**end_array**](end_array.md) (_virtual_) - the end of an array was read +- [**end_object**](end_object.md) (_virtual_) - the end of an object was read +- [**key**](key.md) (_virtual_) - an object key was read +- [**null**](null.md) (_virtual_) - a null value was read +- [**number_float**](number_float.md) (_virtual_) - a floating-point number was read +- [**number_integer**](number_integer.md) (_virtual_) - an integer number was read +- [**number_unsigned**](number_unsigned.md) (_virtual_) - an unsigned integer number was read +- [**parse_error**](parse_error.md) (_virtual_) - a parse error occurred +- [**start_array**](start_array.md) (_virtual_) - the beginning of an array was read +- [**start_object**](start_object.md) (_virtual_) - the beginning of an object was read +- [**string**](string.md) (_virtual_) - a string value was read + +## Version history + +- Added in version 3.2.0. +- Support for binary values (`binary_t`, `binary`) added in version 3.8.0. diff --git a/docs/mkdocs/docs/api/json_sax/key.md b/docs/mkdocs/docs/api/json_sax/key.md new file mode 100644 index 00000000..31fd6c1d --- /dev/null +++ b/docs/mkdocs/docs/api/json_sax/key.md @@ -0,0 +1,40 @@ +# nlohmann::json_sax::key + +```cpp +virtual bool key(string_t& val) = 0; +``` + +An object key was read. + +## Parameters + +`val` (in) +: object key + +## Return value + +Whether parsing should proceed. + +## Notes + +It is safe to move the passed object key value. + +## Examples + +??? example + + The example below shows how the SAX interface is used. + + ```cpp + --8<-- "examples/sax_parse.cpp" + ``` + + Output: + + ```json + --8<-- "examples/sax_parse.output" + ``` + +## Version history + +- Added in version 3.2.0. diff --git a/docs/mkdocs/docs/api/json_sax/null.md b/docs/mkdocs/docs/api/json_sax/null.md new file mode 100644 index 00000000..9354ede6 --- /dev/null +++ b/docs/mkdocs/docs/api/json_sax/null.md @@ -0,0 +1,31 @@ +# nlohmann::json_sax::null + +```cpp +virtual bool null() = 0; +``` + +A null value was read. + +## Return value + +Whether parsing should proceed. + +## Examples + +??? example + + The example below shows how the SAX interface is used. + + ```cpp + --8<-- "examples/sax_parse.cpp" + ``` + + Output: + + ```json + --8<-- "examples/sax_parse.output" + ``` + +## Version history + +- Added in version 3.2.0. diff --git a/docs/mkdocs/docs/api/json_sax/number_float.md b/docs/mkdocs/docs/api/json_sax/number_float.md new file mode 100644 index 00000000..17799401 --- /dev/null +++ b/docs/mkdocs/docs/api/json_sax/number_float.md @@ -0,0 +1,39 @@ +# nlohmann::json_sax::number_float + +```cpp +virtual bool number_float(number_float_t val, const string_t& s) = 0; +``` + +A floating-point number was read. + +## Parameters + +`val` (in) +: floating-point value + +`s` (in) +: string representation of the original input + +## Return value + +Whether parsing should proceed. + +## Examples + +??? example + + The example below shows how the SAX interface is used. + + ```cpp + --8<-- "examples/sax_parse.cpp" + ``` + + Output: + + ```json + --8<-- "examples/sax_parse.output" + ``` + +## Version history + +- Added in version 3.2.0. diff --git a/docs/mkdocs/docs/api/json_sax/number_integer.md b/docs/mkdocs/docs/api/json_sax/number_integer.md new file mode 100644 index 00000000..5c3cb4f3 --- /dev/null +++ b/docs/mkdocs/docs/api/json_sax/number_integer.md @@ -0,0 +1,36 @@ +# nlohmann::json_sax::number_integer + +```cpp +virtual bool number_integer(number_integer_t val) = 0; +``` + +An integer number was read. + +## Parameters + +`val` (in) +: integer value + +## Return value + +Whether parsing should proceed. + +## Examples + +??? example + + The example below shows how the SAX interface is used. + + ```cpp + --8<-- "examples/sax_parse.cpp" + ``` + + Output: + + ```json + --8<-- "examples/sax_parse.output" + ``` + +## Version history + +- Added in version 3.2.0. diff --git a/docs/mkdocs/docs/api/json_sax/number_unsigned.md b/docs/mkdocs/docs/api/json_sax/number_unsigned.md new file mode 100644 index 00000000..0ac25003 --- /dev/null +++ b/docs/mkdocs/docs/api/json_sax/number_unsigned.md @@ -0,0 +1,36 @@ +# nlohmann::json_sax::number_unsigned + +```cpp +virtual bool number_unsigned(number_unsigned_t val) = 0; +``` + +An unsigned integer number was read. + +## Parameters + +`val` (in) +: unsigned integer value + +## Return value + +Whether parsing should proceed. + +## Examples + +??? example + + The example below shows how the SAX interface is used. + + ```cpp + --8<-- "examples/sax_parse.cpp" + ``` + + Output: + + ```json + --8<-- "examples/sax_parse.output" + ``` + +## Version history + +- Added in version 3.2.0. diff --git a/docs/mkdocs/docs/api/json_sax/parse_error.md b/docs/mkdocs/docs/api/json_sax/parse_error.md new file mode 100644 index 00000000..e41cb67f --- /dev/null +++ b/docs/mkdocs/docs/api/json_sax/parse_error.md @@ -0,0 +1,44 @@ +# nlohmann::json_sax::parse_error + +```cpp +virtual bool parse_error(std::size_t position, + const std::string& last_token, + const detail::exception& ex) = 0; +``` + +A parse error occurred. + +## Parameters + +`position` (in) +: the position in the input where the error occurs + +`last_token` (in) +: the last read token + +`ex` (in) +: an exception object describing the error + +## Return value + +Whether parsing should proceed (**must return `#!cpp false`**). + +## Examples + +??? example + + The example below shows how the SAX interface is used. + + ```cpp + --8<-- "examples/sax_parse.cpp" + ``` + + Output: + + ```json + --8<-- "examples/sax_parse.output" + ``` + +## Version history + +- Added in version 3.2.0. diff --git a/docs/mkdocs/docs/api/json_sax/start_array.md b/docs/mkdocs/docs/api/json_sax/start_array.md new file mode 100644 index 00000000..cf2b8cf5 --- /dev/null +++ b/docs/mkdocs/docs/api/json_sax/start_array.md @@ -0,0 +1,40 @@ +# nlohmann::json_sax::start_array + +```cpp +virtual bool start_array(std::size_t elements) = 0; +``` + +The beginning of an array was read. + +## Parameters + +`elements` (in) +: number of object elements or `#!cpp -1` if unknown + +## Return value + +Whether parsing should proceed. + +## Notes + +Binary formats may report the number of elements. + +## Examples + +??? example + + The example below shows how the SAX interface is used. + + ```cpp + --8<-- "examples/sax_parse.cpp" + ``` + + Output: + + ```json + --8<-- "examples/sax_parse.output" + ``` + +## Version history + +- Added in version 3.2.0. diff --git a/docs/mkdocs/docs/api/json_sax/start_object.md b/docs/mkdocs/docs/api/json_sax/start_object.md new file mode 100644 index 00000000..491815de --- /dev/null +++ b/docs/mkdocs/docs/api/json_sax/start_object.md @@ -0,0 +1,40 @@ +# nlohmann::json_sax::start_object + +```cpp +virtual bool start_object(std::size_t elements) = 0; +``` + +The beginning of an object was read. + +## Parameters + +`elements` (in) +: number of object elements or `#!cpp -1` if unknown + +## Return value + +Whether parsing should proceed. + +## Notes + +Binary formats may report the number of elements. + +## Examples + +??? example + + The example below shows how the SAX interface is used. + + ```cpp + --8<-- "examples/sax_parse.cpp" + ``` + + Output: + + ```json + --8<-- "examples/sax_parse.output" + ``` + +## Version history + +- Added in version 3.2.0. diff --git a/docs/mkdocs/docs/api/json_sax/string.md b/docs/mkdocs/docs/api/json_sax/string.md new file mode 100644 index 00000000..dcffb5f6 --- /dev/null +++ b/docs/mkdocs/docs/api/json_sax/string.md @@ -0,0 +1,40 @@ +# nlohmann::json_sax::string + +```cpp +virtual bool string(string_t& val) = 0; +``` + +A string value was read. + +## Parameters + +`val` (in) +: string value + +## Return value + +Whether parsing should proceed. + +## Notes + +It is safe to move the passed string value. + +## Examples + +??? example + + The example below shows how the SAX interface is used. + + ```cpp + --8<-- "examples/sax_parse.cpp" + ``` + + Output: + + ```json + --8<-- "examples/sax_parse.output" + ``` + +## Version history + +- Added in version 3.2.0. diff --git a/docs/mkdocs/docs/api/macros/index.md b/docs/mkdocs/docs/api/macros/index.md new file mode 100644 index 00000000..ae9eb204 --- /dev/null +++ b/docs/mkdocs/docs/api/macros/index.md @@ -0,0 +1,62 @@ +# Macros + +Some aspects of the library can be configured by defining preprocessor macros **before** including the `json.hpp` +header. See also the [macro overview page](../../features/macros.md). + +## Runtime assertions + +- [**JSON_ASSERT(x)**](json_assert.md) - control behavior of runtime assertions + +## Exceptions + +- [**JSON_CATCH_USER(exception)**
**JSON_THROW_USER(exception)**
**JSON_TRY_USER**](json_throw_user.md) - control exceptions +- [**JSON_DIAGNOSTICS**](json_diagnostics.md) - control extended diagnostics +- [**JSON_NOEXCEPTION**](json_noexception.md) - switch off exceptions + +## Language support + +- [**JSON_HAS_CPP_11**
**JSON_HAS_CPP_14**
**JSON_HAS_CPP_17**
**JSON_HAS_CPP_20**](json_has_cpp_11.md) - set supported C++ standard +- [**JSON_HAS_FILESYSTEM**
**JSON_HAS_EXPERIMENTAL_FILESYSTEM**](json_has_filesystem.md) - control `std::filesystem` support +- [**JSON_HAS_RANGES**](json_has_ranges.md) - control `std::ranges` support +- [**JSON_HAS_THREE_WAY_COMPARISON**](json_has_three_way_comparison.md) - control 3-way comparison support +- [**JSON_NO_IO**](json_no_io.md) - switch off functions relying on certain C++ I/O headers +- [**JSON_SKIP_UNSUPPORTED_COMPILER_CHECK**](json_skip_unsupported_compiler_check.md) - do not warn about unsupported compilers +- [**JSON_USE_GLOBAL_UDLS**](json_use_global_udls.md) - place user-defined string literals (UDLs) into the global namespace + +## Library version + +- [**JSON_SKIP_LIBRARY_VERSION_CHECK**](json_skip_library_version_check.md) - skip library version check +- [**NLOHMANN_JSON_VERSION_MAJOR**
**NLOHMANN_JSON_VERSION_MINOR**
**NLOHMANN_JSON_VERSION_PATCH**](nlohmann_json_version_major.md) + \- library version information + +## Library namespace + +- [**NLOHMANN_JSON_NAMESPACE**](nlohmann_json_namespace.md) - full name of the `nlohmann` namespace +- [**NLOHMANN_JSON_NAMESPACE_BEGIN**
**NLOHMANN_JSON_NAMESPACE_END**](nlohmann_json_namespace_begin.md) - open and + close the library namespace +- [**NLOHMANN_JSON_NAMESPACE_NO_VERSION**](nlohmann_json_namespace_no_version.md) - disable the version component of + the inline namespace + +## Type conversions + +- [**JSON_DISABLE_ENUM_SERIALIZATION**](json_disable_enum_serialization.md) - switch off default serialization/deserialization functions for enums +- [**JSON_USE_IMPLICIT_CONVERSIONS**](json_use_implicit_conversions.md) - control implicit conversions + + +## Comparison behavior + +- [**JSON_USE_LEGACY_DISCARDED_VALUE_COMPARISON**](json_use_legacy_discarded_value_comparison.md) - + control comparison of discarded values + +## Serialization/deserialization macros + +- [**NLOHMANN_DEFINE_TYPE_INTRUSIVE(type, member...)**
**NLOHMANN_DEFINE_TYPE_INTRUSIVE_WITH_DEFAULT(type, member...)** +
**NLOHMANN_DEFINE_TYPE_INTRUSIVE_ONLY_SERIALIZE(type, member...)**][DefInt] + \- serialization/deserialization of types _with_ access to private variables +- [**NLOHMANN_DEFINE_TYPE_NON_INTRUSIVE(type, member...)**
**NLOHMANN_DEFINE_TYPE_NON_INTRUSIVE_WITH_DEFAULT(type, member...)** +
**NLOHMANN_DEFINE_TYPE_NON_INTRUSIVE_ONLY_SERIALIZE(type, member...)**][DefNonInt] + \- serialization/deserialization of types _without_ access to private variables +- [**NLOHMANN_JSON_SERIALIZE_ENUM(type, ...)**](nlohmann_json_serialize_enum.md) - serialization/deserialization of enum types + +[DefInt]: nlohmann_define_type_intrusive.md +[DefNonInt]: nlohmann_define_type_non_intrusive.md diff --git a/docs/mkdocs/docs/api/macros/json_assert.md b/docs/mkdocs/docs/api/macros/json_assert.md new file mode 100644 index 00000000..a093341a --- /dev/null +++ b/docs/mkdocs/docs/api/macros/json_assert.md @@ -0,0 +1,84 @@ +# JSON_ASSERT + +```cpp +#define JSON_ASSERT(x) /* value */ +``` + +This macro controls which code is executed for [runtime assertions](../../features/assertions.md) of the library. + +## Parameters + +`x` (in) +: expression of scalar type + +## Default definition + +The default value is [`#!cpp assert(x)`](https://en.cppreference.com/w/cpp/error/assert). + +```cpp +#define JSON_ASSERT(x) assert(x) +``` + +Therefore, assertions can be switched off by defining `NDEBUG`. + +## Notes + +- The library uses numerous assertions to guarantee invariants and to abort in case of otherwise undefined behavior + (e.g., when calling [operator[]](../basic_json/operator%5B%5D.md) with a missing object key on a `const` object). See + page [runtime assertions](../../features/assertions.md) for more information. +- Defining the macro to code that does not call `std::abort` may leave the library in an undefined state. +- The macro is undefined outside the library. + +## Examples + +??? example "Example 1: default behavior" + + The following code will trigger an assertion at runtime: + + ```cpp + #include + + using json = nlohmann::json; + + int main() + { + const json j = {{"key", "value"}}; + auto v = j["missing"]; + } + ``` + + Output: + + ``` + Assertion failed: (m_value.object->find(key) != m_value.object->end()), function operator[], file json.hpp, line 2144. + ``` + +??? example "Example 2: user-defined behavior" + + The assertion reporting can be changed by defining `JSON_ASSERT(x)` differently. + + ```cpp + #include + #include + #define JSON_ASSERT(x) if(!(x)){fprintf(stderr, "assertion error in %s\n", __FUNCTION__); std::abort();} + + #include + + using json = nlohmann::json; + + int main() + { + const json j = {{"key", "value"}}; + auto v = j["missing"]; + } + ``` + + Output: + + ``` + assertion error in operator[] + ``` + +## Version history + +- Added in version 3.9.0. diff --git a/docs/mkdocs/docs/api/macros/json_diagnostics.md b/docs/mkdocs/docs/api/macros/json_diagnostics.md new file mode 100644 index 00000000..4fc0fc38 --- /dev/null +++ b/docs/mkdocs/docs/api/macros/json_diagnostics.md @@ -0,0 +1,76 @@ +# JSON_DIAGNOSTICS + +```cpp +#define JSON_DIAGNOSTICS /* value */ +``` + +This macro enables [extended diagnostics for exception messages](../../home/exceptions.md#extended-diagnostic-messages). +Possible values are `1` to enable or `0` to disable (default). + +When enabled, exception messages contain a [JSON Pointer](../json_pointer/json_pointer.md) to the JSON value that +triggered the exception. Note that enabling this macro increases the size of every JSON value by one pointer and adds +some runtime overhead. + +## Default definition + +The default value is `0` (extended diagnostics are switched off). + +```cpp +#define JSON_DIAGNOSTICS 0 +``` + +When the macro is not defined, the library will define it to its default value. + +## Notes + +!!! note "ABI compatibility" + + As of version 3.11.0, this macro is no longer required to be defined consistently throughout a codebase to avoid + One Definition Rule (ODR) violations, as the value of this macro is encoded in the namespace, resulting in distinct + symbol names. + + This allows different parts of a codebase to use different versions or configurations of this library without + causing improper behavior. + + Where possible, it is still recommended that all code define this the same way for maximum interoperability. + +!!! hint "CMake option" + + Diagnostic messages can also be controlled with the CMake option + [`JSON_Diagnostics`](../../integration/cmake.md#json_diagnostics) (`OFF` by default) + which defines `JSON_DIAGNOSTICS` accordingly. + +## Examples + +??? example "Example 1: default behavior" + + ```cpp + --8<-- "examples/diagnostics_standard.cpp" + ``` + + Output: + + ``` + --8<-- "examples/diagnostics_standard.output" + ``` + + This exception can be hard to debug if storing the value `#!c "12"` and accessing it is further apart. + +??? example "Example 2: extended diagnostic messages" + + ```cpp + --8<-- "examples/diagnostics_extended.cpp" + ``` + + Output: + + ``` + --8<-- "examples/diagnostics_extended.output" + ``` + + Now the exception message contains a JSON Pointer `/address/housenumber` that indicates which value has the wrong type. + +## Version history + +- Added in version 3.10.0. +- As of version 3.11.0 the definition is allowed to vary between translation units. diff --git a/docs/mkdocs/docs/api/macros/json_disable_enum_serialization.md b/docs/mkdocs/docs/api/macros/json_disable_enum_serialization.md new file mode 100644 index 00000000..6440e34e --- /dev/null +++ b/docs/mkdocs/docs/api/macros/json_disable_enum_serialization.md @@ -0,0 +1,152 @@ +# JSON_DISABLE_ENUM_SERIALIZATION + +```cpp +#define JSON_DISABLE_ENUM_SERIALIZATION /* value */ +``` + +When defined to `1`, default serialization and deserialization functions for enums are excluded and have to be provided +by the user, for example, using [`NLOHMANN_JSON_SERIALIZE_ENUM`](nlohmann_json_serialize_enum.md) (see +[arbitrary type conversions](../../features/arbitrary_types.md) for more details). + +Parsing or serializing an enum will result in a compiler error. + +This works for both unscoped and scoped enums. + +## Default definition + +The default value is `0`. + +```cpp +#define JSON_DISABLE_ENUM_SERIALIZATION 0 +``` + +## Notes + +!!! hint "CMake option" + + Enum serialization can also be controlled with the CMake option + [`JSON_DisableEnumSerialization`](../../integration/cmake.md#json_disableenumserialization) + (`OFF` by default) which defines `JSON_DISABLE_ENUM_SERIALIZATION` accordingly. + +## Examples + +??? example "Example 1: Disabled behavior" + + The code below forces the library **not** to create default serialization/deserialization functions `from_json` and `to_json`, meaning the code below + **does not** compile. + + ```cpp + #define JSON_DISABLE_ENUM_SERIALIZATION 1 + #include + + using json = nlohmann::json; + + enum class Choice + { + first, + second, + }; + + int main() + { + // normally invokes to_json serialization function but with JSON_DISABLE_ENUM_SERIALIZATION defined, it does not + const json j = Choice::first; + + // normally invokes from_json parse function but with JSON_DISABLE_ENUM_SERIALIZATION defined, it does not + Choice ch = j.template get(); + } + ``` + +??? example "Example 2: Serialize enum macro" + + The code below forces the library **not** to create default serialization/deserialization functions `from_json` and `to_json`, but uses + [`NLOHMANN_JSON_SERIALIZE_ENUM`](nlohmann_json_serialize_enum.md) to parse and serialize the enum. + + ```cpp + #define JSON_DISABLE_ENUM_SERIALIZATION 1 + #include + + using json = nlohmann::json; + + enum class Choice + { + first, + second, + }; + + NLOHMANN_JSON_SERIALIZE_ENUM(Choice, + { + { Choice::first, "first" }, + { Choice::second, "second" }, + }) + + int main() + { + // uses user-defined to_json function defined by macro + const json j = Choice::first; + + // uses user-defined from_json function defined by macro + Choice ch = j.template get(); + } + ``` + +??? example "Example 3: User-defined serialization/deserialization functions" + + The code below forces the library **not** to create default serialization/deserialization functions `from_json` and `to_json`, but uses user-defined + functions to parse and serialize the enum. + + ```cpp + #define JSON_DISABLE_ENUM_SERIALIZATION 1 + #include + + using json = nlohmann::json; + + enum class Choice + { + first, + second, + }; + + void from_json(const json& j, Choice& ch) + { + auto value = j.template get(); + if (value == "first") + { + ch = Choice::first; + } + else if (value == "second") + { + ch = Choice::second; + } + } + + void to_json(json& j, const Choice& ch) + { + auto value = j.template get(); + if (value == "first") + { + ch = Choice::first; + } + else if (value == "second") + { + ch = Choice::second; + } + } + + int main() + { + // uses user-defined to_json function + const json j = Choice::first; + + // uses user-defined from_json function + Choice ch = j.template get(); + } + ``` + +## See also + +- [`NLOHMANN_JSON_SERIALIZE_ENUM`](nlohmann_json_serialize_enum.md) + +## Version history + +- Added in version 3.11.0. diff --git a/docs/mkdocs/docs/api/macros/json_has_cpp_11.md b/docs/mkdocs/docs/api/macros/json_has_cpp_11.md new file mode 100644 index 00000000..f3eaa585 --- /dev/null +++ b/docs/mkdocs/docs/api/macros/json_has_cpp_11.md @@ -0,0 +1,41 @@ +# JSON_HAS_CPP_11, JSON_HAS_CPP_14, JSON_HAS_CPP_17, JSON_HAS_CPP_20 + +```cpp +#define JSON_HAS_CPP_11 +#define JSON_HAS_CPP_14 +#define JSON_HAS_CPP_17 +#define JSON_HAS_CPP_20 +``` + +The library targets C++11, but also supports some features introduced in later C++ versions (e.g., `std::string_view` +support for C++17). For these new features, the library implements some preprocessor checks to determine the C++ +standard. By defining any of these symbols, the internal check is overridden and the provided C++ version is +unconditionally assumed. This can be helpful for compilers that only implement parts of the standard and would be +detected incorrectly. + +## Default definition + +The default value is detected based on preprocessor macros such as `#!cpp __cplusplus`, `#!cpp _HAS_CXX17`, or +`#!cpp _MSVC_LANG`. + +## Notes + +- `#!cpp JSON_HAS_CPP_11` is always defined. +- All macros are undefined outside the library. + +## Examples + +??? example + + The code below forces the library to use the C++14 standard: + + ```cpp + #define JSON_HAS_CPP_14 1 + #include + + ... + ``` + +## Version history + +- Added in version 3.10.5. diff --git a/docs/mkdocs/docs/api/macros/json_has_filesystem.md b/docs/mkdocs/docs/api/macros/json_has_filesystem.md new file mode 100644 index 00000000..308aea2a --- /dev/null +++ b/docs/mkdocs/docs/api/macros/json_has_filesystem.md @@ -0,0 +1,43 @@ +# JSON_HAS_FILESYSTEM / JSON_HAS_EXPERIMENTAL_FILESYSTEM + +```cpp +#define JSON_HAS_FILESYSTEM /* value */ +#define JSON_HAS_EXPERIMENTAL_FILESYSTEM /* value */ +``` + +When compiling with C++17, the library provides conversions from and to +[`std::filesystem::path`](https://en.cppreference.com/w/cpp/filesystem/path). As compiler support for filesystem is +limited, the library tries to detect whether +[``/`std::filesystem`](https://en.cppreference.com/w/cpp/header/filesystem) (`JSON_HAS_FILESYSTEM`) or +[``/`std::experimental::filesystem`](https://en.cppreference.com/w/cpp/header/experimental/filesystem) +(`JSON_HAS_EXPERIMENTAL_FILESYSTEM`) should be used. To override the built-in check, define `JSON_HAS_FILESYSTEM` or +`JSON_HAS_EXPERIMENTAL_FILESYSTEM` to `1`. + +## Default definition + +The default value is detected based on the preprocessor macros `#!cpp __cpp_lib_filesystem`, +`#!cpp __cpp_lib_experimental_filesystem`, `#!cpp __has_include()`, or +`#!cpp __has_include()`. + +## Notes + +- Note that older compilers or older versions of libstd++ also require the library `stdc++fs` to be linked to for + filesystem support. +- Both macros are undefined outside the library. + +## Examples + +??? example + + The code below forces the library to use the header ``. + + ```cpp + #define JSON_HAS_EXPERIMENTAL_FILESYSTEM 1 + #include + + ... + ``` + +## Version history + +- Added in version 3.10.5. diff --git a/docs/mkdocs/docs/api/macros/json_has_ranges.md b/docs/mkdocs/docs/api/macros/json_has_ranges.md new file mode 100644 index 00000000..96d51052 --- /dev/null +++ b/docs/mkdocs/docs/api/macros/json_has_ranges.md @@ -0,0 +1,31 @@ +# JSON_HAS_RANGES + +```cpp +#define JSON_HAS_RANGES /* value */ +``` + +This macro indicates whether the standard library has any support for ranges. Implies support for concepts. +Possible values are `1` when supported or `0` when unsupported. + +## Default definition + +The default value is detected based on the preprocessor macro `#!cpp __cpp_lib_ranges`. + +When the macro is not defined, the library will define it to its default value. + +## Examples + +??? example + + The code below forces the library to enable support for ranges: + + ```cpp + #define JSON_HAS_RANGES 1 + #include + + ... + ``` + +## Version history + +- Added in version 3.11.0. diff --git a/docs/mkdocs/docs/api/macros/json_has_static_rtti.md b/docs/mkdocs/docs/api/macros/json_has_static_rtti.md new file mode 100644 index 00000000..78087831 --- /dev/null +++ b/docs/mkdocs/docs/api/macros/json_has_static_rtti.md @@ -0,0 +1,31 @@ +# JSON_HAS_STATIC_RTTI + +```cpp +#define JSON_HAS_STATIC_RTTI /* value */ +``` + +This macro indicates whether the standard library has any support for RTTI (run time type information). +Possible values are `1` when supported or `0` when unsupported. + +## Default definition + +The default value is detected based on the preprocessor macro `#!cpp _HAS_STATIC_RTTI`. + +When the macro is not defined, the library will define it to its default value. + +## Examples + +??? example + + The code below forces the library to enable support for libraries with RTTI dependence: + + ```cpp + #define JSON_HAS_STATIC_RTTI 1 + #include + + ... + ``` + +## Version history + +- Added in version ?. diff --git a/docs/mkdocs/docs/api/macros/json_has_three_way_comparison.md b/docs/mkdocs/docs/api/macros/json_has_three_way_comparison.md new file mode 100644 index 00000000..f52070eb --- /dev/null +++ b/docs/mkdocs/docs/api/macros/json_has_three_way_comparison.md @@ -0,0 +1,32 @@ +# JSON_HAS_THREE_WAY_COMPARISON + +```cpp +#define JSON_HAS_THREE_WAY_COMPARISON /* value */ +``` + +This macro indicates whether the compiler and standard library support 3-way comparison. +Possible values are `1` when supported or `0` when unsupported. + +## Default definition + +The default value is detected based on the preprocessor macros `#!cpp __cpp_impl_three_way_comparison` +and `#!cpp __cpp_lib_three_way_comparison`. + +When the macro is not defined, the library will define it to its default value. + +## Examples + +??? example + + The code below forces the library to use 3-way comparison: + + ```cpp + #define JSON_HAS_THREE_WAY_COMPARISON 1 + #include + + ... + ``` + +## Version history + +- Added in version 3.11.0. diff --git a/docs/mkdocs/docs/api/macros/json_no_io.md b/docs/mkdocs/docs/api/macros/json_no_io.md new file mode 100644 index 00000000..ef37384a --- /dev/null +++ b/docs/mkdocs/docs/api/macros/json_no_io.md @@ -0,0 +1,35 @@ +# JSON_NO_IO + +```cpp +#define JSON_NO_IO +``` + +When defined, headers ``, ``, ``, ``, and `` are not included and parse functions +relying on these headers are excluded. This is relevant for environments where these I/O functions are disallowed for +security reasons (e.g., Intel Software Guard Extensions (SGX)). + +## Default definition + +By default, `#!cpp JSON_NO_IO` is not defined. + +```cpp +#undef JSON_NO_IO +``` + +## Examples + +??? example + + The code below forces the library not to use the headers ``, ``, ``, ``, and + ``. + + ```cpp + #define JSON_NO_IO 1 + #include + + ... + ``` + +## Version history + +- Added in version 3.10.0. diff --git a/docs/mkdocs/docs/api/macros/json_noexception.md b/docs/mkdocs/docs/api/macros/json_noexception.md new file mode 100644 index 00000000..c801b856 --- /dev/null +++ b/docs/mkdocs/docs/api/macros/json_noexception.md @@ -0,0 +1,45 @@ +# JSON_NOEXCEPTION + +```cpp +#define JSON_NOEXCEPTION +``` + +Exceptions can be switched off by defining the symbol `JSON_NOEXCEPTION`. When defining `JSON_NOEXCEPTION`, `#!cpp try` +is replaced by `#!cpp if (true)`, `#!cpp catch` is replaced by `#!cpp if (false)`, and `#!cpp throw` is replaced by +`#!cpp std::abort()`. + +The same effect is achieved by setting the compiler flag `-fno-exceptions`. + +## Default definition + +By default, the macro is not defined. + +```cpp +#undef JSON_NOEXCEPTION +``` + +## Notes + +The explanatory [`what()`](https://en.cppreference.com/w/cpp/error/exception/what) string of exceptions is not +available for MSVC if exceptions are disabled, see [#2824](https://github.com/nlohmann/json/discussions/2824). + +## Examples + +??? example + + The code below switches off exceptions in the library. + + ```cpp + #define JSON_NOEXCEPTION 1 + #include + + ... + ``` + +## See also + +- [Switch off exceptions](../../home/exceptions.md#switch-off-exceptions) for more information how to switch off exceptions + +## Version history + +Added in version 2.1.0. diff --git a/docs/mkdocs/docs/api/macros/json_skip_library_version_check.md b/docs/mkdocs/docs/api/macros/json_skip_library_version_check.md new file mode 100644 index 00000000..c9a743c1 --- /dev/null +++ b/docs/mkdocs/docs/api/macros/json_skip_library_version_check.md @@ -0,0 +1,37 @@ +# JSON_SKIP_LIBRARY_VERSION_CHECK + +```cpp +#define JSON_SKIP_LIBRARY_VERSION_CHECK +``` + +When defined, the library will not create a compiler warning when a different version of the library was already +included. + +## Default definition + +By default, the macro is not defined. + +```cpp +#undef JSON_SKIP_LIBRARY_VERSION_CHECK +``` + +## Notes + +!!! danger "ABI compatibility" + + Mixing different library versions in the same code can be a problem as the different versions may not be ABI + compatible. + +## Examples + +!!! example + + The following warning will be shown in case a different version of the library was already included: + + ``` + Already included a different version of the library! + ``` + +## Version history + +Added in version 3.11.0. diff --git a/docs/mkdocs/docs/api/macros/json_skip_unsupported_compiler_check.md b/docs/mkdocs/docs/api/macros/json_skip_unsupported_compiler_check.md new file mode 100644 index 00000000..374fa4c2 --- /dev/null +++ b/docs/mkdocs/docs/api/macros/json_skip_unsupported_compiler_check.md @@ -0,0 +1,33 @@ +# JSON_SKIP_UNSUPPORTED_COMPILER_CHECK + +```cpp +#define JSON_SKIP_UNSUPPORTED_COMPILER_CHECK +``` + +When defined, the library will not create a compile error when a known unsupported compiler is detected. This allows to +use the library with compilers that do not fully support C++11 and may only work if unsupported features are not used. + +## Default definition + +By default, the macro is not defined. + +```cpp +#undef JSON_SKIP_UNSUPPORTED_COMPILER_CHECK +``` + +## Examples + +??? example + + The code below switches off the check whether the compiler is supported. + + ```cpp + #define JSON_SKIP_UNSUPPORTED_COMPILER_CHECK 1 + #include + + ... + ``` + +## Version history + +Added in version 3.2.0. diff --git a/docs/mkdocs/docs/api/macros/json_throw_user.md b/docs/mkdocs/docs/api/macros/json_throw_user.md new file mode 100644 index 00000000..b02918cf --- /dev/null +++ b/docs/mkdocs/docs/api/macros/json_throw_user.md @@ -0,0 +1,75 @@ +# JSON_CATCH_USER, JSON_THROW_USER, JSON_TRY_USER + +```cpp +// (1) +#define JSON_CATCH_USER(exception) /* value */ +// (2) +#define JSON_THROW_USER(exception) /* value */ +// (3) +#define JSON_TRY_USER /* value */ +``` + +Controls how exceptions are handled by the library. + +1. This macro overrides [`#!cpp catch`](https://en.cppreference.com/w/cpp/language/try_catch) calls inside the library. + The argument is the type of the exception to catch. As of version 3.8.0, the library only catches `std::out_of_range` + exceptions internally to rethrow them as [`json::out_of_range`](../../home/exceptions.md#out-of-range) exceptions. + The macro is always followed by a scope. +2. This macro overrides `#!cpp throw` calls inside the library. The argument is the exception to be thrown. Note that + `JSON_THROW_USER` should leave the current scope (e.g., by throwing or aborting), as continuing after it may yield + undefined behavior. +3. This macro overrides `#!cpp try` calls inside the library. It has no arguments and is always followed by a scope. + +## Parameters + +`exception` (in) +: an exception type + +## Default definition + +By default, the macros map to their respective C++ keywords: + +```cpp +#define JSON_CATCH_USER(exception) catch(exception) +#define JSON_THROW_USER(exception) throw exception +#define JSON_TRY_USER try +``` + +When exceptions are switched off, the `#!cpp try` block is executed unconditionally, and throwing exceptions is +replaced by calling [`std::abort`](https://en.cppreference.com/w/cpp/utility/program/abort) to make reaching the +`#!cpp throw` branch abort the process. + +```cpp +#define JSON_THROW_USER(exception) std::abort() +#define JSON_TRY_USER if (true) +#define JSON_CATCH_USER(exception) if (false) +``` + +## Examples + +??? example + + The code below switches off exceptions and creates a log entry with a detailed error message in case of errors. + + ```cpp + #include + + #define JSON_TRY_USER if(true) + #define JSON_CATCH_USER(exception) if(false) + #define JSON_THROW_USER(exception) \ + {std::clog << "Error in " << __FILE__ << ":" << __LINE__ \ + << " (function " << __FUNCTION__ << ") - " \ + << (exception).what() << std::endl; \ + std::abort();} + + #include + ``` + +## See also + +- [Switch off exceptions](../../home/exceptions.md#switch-off-exceptions) for more information how to switch off exceptions +- [JSON_NOEXCEPTION](json_noexception.md) - switch off exceptions + +## Version history + +- Added in version 3.1.0. diff --git a/docs/mkdocs/docs/api/macros/json_use_global_udls.md b/docs/mkdocs/docs/api/macros/json_use_global_udls.md new file mode 100644 index 00000000..69db9e77 --- /dev/null +++ b/docs/mkdocs/docs/api/macros/json_use_global_udls.md @@ -0,0 +1,98 @@ +# JSON_USE_GLOBAL_UDLS + +```cpp +#define JSON_USE_GLOBAL_UDLS /* value */ +``` + +When defined to `1`, the user-defined string literals (UDLs) are placed into the global namespace instead of +`nlohmann::literals::json_literals`. + +## Default definition + +The default value is `1`. + +```cpp +#define JSON_USE_GLOBAL_UDLS 1 +``` + +When the macro is not defined, the library will define it to its default value. + +## Notes + +!!! info "Future behavior change" + + The user-defined string literals will be removed from the global namespace in the next major release of the library. + + To prepare existing code, define `JSON_USE_GLOBAL_UDLS` to `0` and bring the string literals into scope where + needed. Refer to any of the [string literals](#see-also) for details. + +!!! hint "CMake option" + + The placement of user-defined string literals can also be controlled with the CMake option + [`JSON_GlobalUDLs`](../../integration/cmake.md#json_globaludls) (`ON` by default) which defines + `JSON_USE_GLOBAL_UDLS` accordingly. + +## Examples + +??? example "Example 1: Default behavior" + + The code below shows the default behavior using the `_json` UDL. + + ```cpp + #include + + #include + + int main() + { + auto j = "42"_json; + + std::cout << j << std::endl; + } + ``` + + Output: + + ```json + 42 + ``` + +??? example "Example 2: Namespaced UDLs" + + The code below shows how UDLs need to be brought into scope before using `_json` when `JSON_USE_GLOBAL_UDLS` is + defined to `0`. + + ```cpp + #define JSON_USE_GLOBAL_UDLS 0 + #include + + #include + + int main() + { + // auto j = "42"_json; // This line would fail to compile, + // because the UDLs are not in the global namespace + + // Bring the UDLs into scope + using namespace nlohmann::json_literals; + + auto j = "42"_json; + + std::cout << j << std::endl; + } + ``` + + Output: + + ```json + 42 + ``` + +## See also + +- [`operator""_json`](../operator_literal_json.md) +- [`operator""_json_pointer`](../operator_literal_json_pointer.md) + +## Version history + +- Added in version 3.11.0. diff --git a/docs/mkdocs/docs/api/macros/json_use_implicit_conversions.md b/docs/mkdocs/docs/api/macros/json_use_implicit_conversions.md new file mode 100644 index 00000000..557dfa29 --- /dev/null +++ b/docs/mkdocs/docs/api/macros/json_use_implicit_conversions.md @@ -0,0 +1,59 @@ +# JSON_USE_IMPLICIT_CONVERSIONS + +```cpp +#define JSON_USE_IMPLICIT_CONVERSIONS /* value */ +``` + +When defined to `0`, implicit conversions are switched off. By default, implicit conversions are switched on. The +value directly affects [`operator ValueType`](../basic_json/operator_ValueType.md). + +## Default definition + +By default, implicit conversions are enabled. + +```cpp +#define JSON_USE_IMPLICIT_CONVERSIONS 1 +``` + +## Notes + +!!! info "Future behavior change" + + Implicit conversions will be switched off by default in the next major release of the library. + + You can prepare existing code by already defining `JSON_USE_IMPLICIT_CONVERSIONS` to `0` and replace any implicit + conversions with calls to [`get`](../basic_json/get.md). + +!!! hint "CMake option" + + Implicit conversions can also be controlled with the CMake option + [`JSON_ImplicitConversions`](../../integration/cmake.md#json_legacydiscardedvaluecomparison) + (`ON` by default) which defines `JSON_USE_IMPLICIT_CONVERSIONS` accordingly. + +## Examples + +??? example + + This is an example for an implicit conversion: + + ```cpp + json j = "Hello, world!"; + std::string s = j; + ``` + + When `JSON_USE_IMPLICIT_CONVERSIONS` is defined to `0`, the code above does no longer compile. Instead, it must be + written like this: + + ```cpp + json j = "Hello, world!"; + auto s = j.template get(); + ``` + +## See also + +- [**operator ValueType**](../basic_json/operator_ValueType.md) - get a value (implicit) +- [**get**](../basic_json/get.md) - get a value (explicit) + +## Version history + +- Added in version 3.9.0. diff --git a/docs/mkdocs/docs/api/macros/json_use_legacy_discarded_value_comparison.md b/docs/mkdocs/docs/api/macros/json_use_legacy_discarded_value_comparison.md new file mode 100644 index 00000000..bc1d1434 --- /dev/null +++ b/docs/mkdocs/docs/api/macros/json_use_legacy_discarded_value_comparison.md @@ -0,0 +1,77 @@ +# JSON_USE_LEGACY_DISCARDED_VALUE_COMPARISON + +```cpp +#define JSON_USE_LEGACY_DISCARDED_VALUE_COMPARISON /* value */ +``` + +This macro enables the (incorrect) legacy comparison behavior of discarded JSON values. Possible values are `1` to +enable or `0` to disable (default). + +When enabled, comparisons involving at least one discarded JSON value yield results as follows: + +| **Operator** | **Result** | +|--------------|---------------| +| `==` | `#!cpp false` | +| `!=` | `#!cpp true` | +| `<` | `#!cpp false` | +| `<=` | `#!cpp true` | +| `>=` | `#!cpp true` | +| `>` | `#!cpp false` | + +Otherwise, comparisons involving at least one discarded JSON value always yield `#!cpp false`. + +## Default definition + +The default value is `0`. + +```cpp +#define JSON_USE_LEGACY_DISCARDED_VALUE_COMPARISON 0 +``` + +When the macro is not defined, the library will define it to its default value. + +## Notes + +!!! warning "Inconsistent behavior in C++20 and beyond" + + When targeting C++20 or above, enabling the legacy comparison behavior is _strongly_ + discouraged. + + - The 3-way comparison operator (`<=>`) will always give the correct result + (`#!cpp std::partial_ordering::unordered`) regardless of the value of + `JSON_USE_LEGACY_DISCARDED_VALUE_COMPARISON`. + - Overloads for the equality and relational operators emulate the legacy behavior. + + Code outside your control may use either 3-way comparison or the equality and relational operators, resulting in + inconsistent and unpredictable behavior. + + See [`operator<=>`](../basic_json/operator_spaceship.md) for more information on 3-way comparison. + +!!! warning "Deprecation" + + The legacy comparison behavior is deprecated and may be removed in a future major version release. + + New code should not depend on it and existing code should try to remove or rewrite expressions relying on it. + +!!! hint "CMake option" + + Legacy comparison can also be controlled with the CMake option + [`JSON_LegacyDiscardedValueComparison`](../../integration/cmake.md#json_legacydiscardedvaluecomparison) + (`OFF` by default) which defines `JSON_USE_LEGACY_DISCARDED_VALUE_COMPARISON` accordingly. + +## Examples + +??? example + + The code below switches on the legacy discarded value comparison behavior in the library. + + ```cpp + #define JSON_USE_LEGACY_DISCARDED_VALUE_COMPARISON 1 + #include + + ... + ``` + +## Version history + +- Added in version 3.11.0. diff --git a/docs/mkdocs/docs/api/macros/nlohmann_define_type_intrusive.md b/docs/mkdocs/docs/api/macros/nlohmann_define_type_intrusive.md new file mode 100644 index 00000000..ad425810 --- /dev/null +++ b/docs/mkdocs/docs/api/macros/nlohmann_define_type_intrusive.md @@ -0,0 +1,156 @@ +# NLOHMANN_DEFINE_TYPE_INTRUSIVE, NLOHMANN_DEFINE_TYPE_INTRUSIVE_WITH_DEFAULT, NLOHMANN_DEFINE_TYPE_INTRUSIVE_ONLY_SERIALIZE + +```cpp +#define NLOHMANN_DEFINE_TYPE_INTRUSIVE(type, member...) // (1) +#define NLOHMANN_DEFINE_TYPE_INTRUSIVE_WITH_DEFAULT(type, member...) // (2) +#define NLOHMANN_DEFINE_TYPE_INTRUSIVE_ONLY_SERIALIZE(type, member...) // (3) +``` + +These macros can be used to simplify the serialization/deserialization of types if you want to use a JSON object as +serialization and want to use the member variable names as object keys in that object. The macro is to be defined +**inside** the class/struct to create code for. Unlike +[`NLOHMANN_DEFINE_TYPE_NON_INTRUSIVE`](nlohmann_define_type_non_intrusive.md), it can access private members. The first +parameter is the name of the class/struct, and all remaining parameters name the members. + +1. Will use [`at`](../basic_json/at.md) during deserialization and will throw + [`out_of_range.403`](../../home/exceptions.md#jsonexceptionout_of_range403) if a key is missing in the JSON object. +2. Will use [`value`](../basic_json/value.md) during deserialization and fall back to the default value for the + respective type of the member variable if a key in the JSON object is missing. The generated `from_json()` function + default constructs an object and uses its values as the defaults when calling the `value` function. +3. Only defines the serialization. Useful in cases when the type does not have a default constructor and only serialization in required. + +## Parameters + +`type` (in) +: name of the type (class, struct) to serialize/deserialize + +`member` (in) +: name of the member variable to serialize/deserialize; up to 64 members can be given as comma-separated list + +## Default definition + +The macros add two friend functions to the class which take care of the serialization and deserialization: + +```cpp +friend void to_json(nlohmann::json&, const type&); +friend void from_json(const nlohmann::json&, type&); // except (3) +``` + +See examples below for the concrete generated code. + +## Notes + +!!! info "Prerequisites" + + 1. The type `type` must be default constructible (except (3)). See [How can I use `get()` for non-default + constructible/non-copyable types?][GetNonDefNonCopy] for how to overcome this limitation. + 2. The macro must be used inside the type (class/struct). + +[GetNonDefNonCopy]: ../../features/arbitrary_types.md#how-can-i-use-get-for-non-default-constructiblenon-copyable-types + +!!! warning "Implementation limits" + + - The current implementation is limited to at most 64 member variables. If you want to serialize/deserialize types + with more than 64 member variables, you need to define the `to_json`/`from_json` functions manually. + - The macros only work for the [`nlohmann::json`](../json.md) type; other specializations such as + [`nlohmann::ordered_json`](../ordered_json.md) are currently unsupported. + +## Examples + +??? example "Example (1): NLOHMANN_DEFINE_TYPE_INTRUSIVE" + + Consider the following complete example: + + ```cpp hl_lines="22" + --8<-- "examples/nlohmann_define_type_intrusive_macro.cpp" + ``` + + Output: + + ```json + --8<-- "examples/nlohmann_define_type_intrusive_macro.output" + ``` + + Notes: + + - `ns::person` is default-constructible. This is a requirement for using the macro. + - `ns::person` has private member variables. This makes `NLOHMANN_DEFINE_TYPE_INTRUSIVE` applicable, but not + `NLOHMANN_DEFINE_TYPE_NON_INTRUSIVE`. + - The macro `NLOHMANN_DEFINE_TYPE_INTRUSIVE` is used _inside_ the class. + - A missing key "age" in the deserialization yields an exception. To fall back to the default value, + `NLOHMANN_DEFINE_TYPE_INTRUSIVE_WITH_DEFAULT` can be used. + + The macro is equivalent to: + + ```cpp hl_lines="22 23 24 25 26 27 28 29 30 31 32 33 34" + --8<-- "examples/nlohmann_define_type_intrusive_explicit.cpp" + ``` + +??? example "Example (2): NLOHMANN_DEFINE_TYPE_INTRUSIVE_WITH_DEFAULT" + + Consider the following complete example: + + ```cpp hl_lines="22" + --8<-- "examples/nlohmann_define_type_intrusive_with_default_macro.cpp" + ``` + + Output: + + ```json + --8<-- "examples/nlohmann_define_type_intrusive_with_default_macro.output" + ``` + + Notes: + + - `ns::person` is default-constructible. This is a requirement for using the macro. + - `ns::person` has private member variables. This makes `NLOHMANN_DEFINE_TYPE_INTRUSIVE_WITH_DEFAULT` applicable, + but not `NLOHMANN_DEFINE_TYPE_NON_INTRUSIVE_WITH_DEFAULT`. + - The macro `NLOHMANN_DEFINE_TYPE_INTRUSIVE_WITH_DEFAULT` is used _inside_ the class. + - A missing key "age" in the deserialization does not yield an exception. Instead, the default value `-1` is used. + + The macro is equivalent to: + + ```cpp hl_lines="22 23 24 25 26 27 28 29 30 31 32 33 34 35" + --8<-- "examples/nlohmann_define_type_intrusive_with_default_explicit.cpp" + ``` + + Note how a default-initialized `person` object is used in the `from_json` to fill missing values. + +??? example "Example (3): NLOHMANN_DEFINE_TYPE_INTRUSIVE_ONLY_SERIALIZE" + Consider the following complete example: + + ```cpp hl_lines="22" + --8<-- "examples/nlohmann_define_type_intrusive_only_serialize_macro.cpp" + ``` + + Output: + + ```json + --8<-- "examples/nlohmann_define_type_intrusive_only_serialize_macro.output" + ``` + + Notes: + + - `ns::person` is non-default-constructible. This allows this macro to be used instead of + `NLOHMANN_DEFINE_TYPE_INTRUSIVE` and `NLOHMANN_DEFINE_TYPE_INTRUSIVE_WITH_DEFAULT`. + - `ns::person` has private member variables. This makes `NLOHMANN_DEFINE_TYPE_INTRUSIVE_ONLY_SERIALIZE` applicable, but not + `NLOHMANN_DEFINE_TYPE_NON_INTRUSIVE_ONLY_SERIALIZE`. + - The macro `NLOHMANN_DEFINE_TYPE_INTRUSIVE_ONLY_SERIALIZE` is used _inside_ the class. + + The macro is equivalent to: + + ```cpp hl_lines="22 22 23 24 25 26 27" + --8<-- "examples/nlohmann_define_type_intrusive_only_serialize_explicit.cpp" + ``` + +## See also + +- [NLOHMANN_DEFINE_TYPE_NON_INTRUSIVE{_WITH_DEFAULT, _ONLY_SERIALIZE}](nlohmann_define_type_non_intrusive.md) + for a similar macro that can be defined _outside_ the type. +- [Arbitrary Type Conversions](../../features/arbitrary_types.md) for an overview. + +## Version history + +1. Added in version 3.9.0. +2. Added in version 3.11.0. +3. Added in version TODO. diff --git a/docs/mkdocs/docs/api/macros/nlohmann_define_type_non_intrusive.md b/docs/mkdocs/docs/api/macros/nlohmann_define_type_non_intrusive.md new file mode 100644 index 00000000..5830f8ca --- /dev/null +++ b/docs/mkdocs/docs/api/macros/nlohmann_define_type_non_intrusive.md @@ -0,0 +1,157 @@ +# NLOHMANN_DEFINE_TYPE_NON_INTRUSIVE, NLOHMANN_DEFINE_TYPE_NON_INTRUSIVE_WITH_DEFAULT, NLOHMANN_DEFINE_TYPE_NON_INTRUSIVE_ONLY_SERIALIZE + +```cpp +#define NLOHMANN_DEFINE_TYPE_NON_INTRUSIVE(type, member...) // (1) +#define NLOHMANN_DEFINE_TYPE_NON_INTRUSIVE_WITH_DEFAULT(type, member...) // (2) +#define NLOHMANN_DEFINE_TYPE_NON_INTRUSIVE_ONLY_SERIALIZE(type, member...) // (3) +``` + +These macros can be used to simplify the serialization/deserialization of types if you want to use a JSON object as +serialization and want to use the member variable names as object keys in that object. The macro is to be defined +**outside** the class/struct to create code for, but **inside** its namespace. Unlike +[`NLOHMANN_DEFINE_TYPE_INTRUSIVE`](nlohmann_define_type_intrusive.md), it **cannot** access private members. The first +parameter is the name of the class/struct, and all remaining parameters name the members. + +1. Will use [`at`](../basic_json/at.md) during deserialization and will throw + [`out_of_range.403`](../../home/exceptions.md#jsonexceptionout_of_range403) if a key is missing in the JSON object. +2. Will use [`value`](../basic_json/value.md) during deserialization and fall back to the default value for the + respective type of the member variable if a key in the JSON object is missing. The generated `from_json()` function + default constructs an object and uses its values as the defaults when calling the `value` function. +3. Only defines the serialization. Useful in cases when the type does not have a default constructor and only serialization in required. + +## Parameters + +`type` (in) +: name of the type (class, struct) to serialize/deserialize + +`member` (in) +: name of the (public) member variable to serialize/deserialize; up to 64 members can be given as comma-separated list + +## Default definition + +The macros add two functions to the namespace which take care of the serialization and deserialization: + +```cpp +void to_json(nlohmann::json&, const type&); +void from_json(const nlohmann::json&, type&); // except (3) +``` + +See examples below for the concrete generated code. + +## Notes + +!!! info "Prerequisites" + + 1. The type `type` must be default constructible (except (3). See [How can I use `get()` for non-default constructible/non-copyable types?][GetNonDefNonCopy] + for how to overcome this limitation. + 2. The macro must be used outside the type (class/struct). + 3. The passed members must be public. + +[GetNonDefNonCopy]: ../../features/arbitrary_types.md#how-can-i-use-get-for-non-default-constructiblenon-copyable-types + +!!! warning "Implementation limits" + + - The current implementation is limited to at most 64 member variables. If you want to serialize/deserialize types + with more than 64 member variables, you need to define the `to_json`/`from_json` functions manually. + - The macros only work for the [`nlohmann::json`](../json.md) type; other specializations such as + [`nlohmann::ordered_json`](../ordered_json.md) are currently unsupported. + +## Examples + +??? example "Example (1): NLOHMANN_DEFINE_TYPE_NON_INTRUSIVE" + + Consider the following complete example: + + ```cpp hl_lines="16" + --8<-- "examples/nlohmann_define_type_non_intrusive_macro.cpp" + ``` + + Output: + + ```json + --8<-- "examples/nlohmann_define_type_non_intrusive_macro.output" + ``` + + Notes: + + - `ns::person` is default-constructible. This is a requirement for using the macro. + - `ns::person` has only public member variables. This makes `NLOHMANN_DEFINE_TYPE_NON_INTRUSIVE` applicable. + - The macro `NLOHMANN_DEFINE_TYPE_NON_INTRUSIVE` is used _outside_ the class, but _inside_ its namespace `ns`. + - A missing key "age" in the deserialization yields an exception. To fall back to the default value, + `NLOHMANN_DEFINE_TYPE_NON_INTRUSIVE_WITH_DEFAULT` can be used. + + The macro is equivalent to: + + ```cpp hl_lines="16 17 18 19 20 21 22 23 24 25 26 27 28" + --8<-- "examples/nlohmann_define_type_non_intrusive_explicit.cpp" + ``` + +??? example "Example (2): NLOHMANN_DEFINE_TYPE_NON_INTRUSIVE_WITH_DEFAULT" + + Consider the following complete example: + + ```cpp hl_lines="22" + --8<-- "examples/nlohmann_define_type_non_intrusive_with_default_macro.cpp" + ``` + + Output: + + ```json + --8<-- "examples/nlohmann_define_type_non_intrusive_with_default_macro.output" + ``` + + Notes: + + - `ns::person` is default-constructible. This is a requirement for using the macro. + - `ns::person` has only public member variables. This makes `NLOHMANN_DEFINE_TYPE_NON_INTRUSIVE_WITH_DEFAULT` + applicable. + - The macro `NLOHMANN_DEFINE_TYPE_NON_INTRUSIVE_WITH_DEFAULT` is used _outside_ the class, but _inside_ its + namespace `ns`. + - A missing key "age" in the deserialization does not yield an exception. Instead, the default value `-1` is used. + + The macro is equivalent to: + + ```cpp hl_lines="22 23 24 25 26 27 28 29 30 31 32 33 34 35" + --8<-- "examples/nlohmann_define_type_non_intrusive_with_default_explicit.cpp" + ``` + + Note how a default-initialized `person` object is used in the `from_json` to fill missing values. + +??? example "Example (3): NLOHMANN_DEFINE_TYPE_NON_INTRUSIVE_ONLY_SERIALIZE" + + Consider the following complete example: + + ```cpp hl_lines="16" + --8<-- "examples/nlohmann_define_type_non_intrusive_only_serialize_macro.cpp" + ``` + + Output: + + ```json + --8<-- "examples/nlohmann_define_type_non_intrusive_only_serialize_macro.output" + ``` + + Notes: + + - `ns::person` is non-default-constructible. This allows this macro to be used instead of + `NLOHMANN_DEFINE_TYPE_NON_INTRUSIVE` and `NLOHMANN_DEFINE_TYPE_NON_INTRUSIVE_WITH_DEFAULT`. + - `ns::person` has only public member variables. This makes `NLOHMANN_DEFINE_TYPE_NON_INTRUSIVE_ONLY_SERIALIZE` applicable. + - The macro `NLOHMANN_DEFINE_TYPE_NON_INTRUSIVE_ONLY_SERIALIZE` is used _outside_ the class, but _inside_ its namespace `ns`. + + The macro is equivalent to: + + ```cpp hl_lines="16 17 18 19 20 21" + --8<-- "examples/nlohmann_define_type_non_intrusive_only_serialize_explicit.cpp" + ``` + +## See also + +- [NLOHMANN_DEFINE_TYPE_INTRUSIVE{_WITH_DEFAULT, _ONLY_SERIALIZE}](nlohmann_define_type_intrusive.md) + for a similar macro that can be defined _inside_ the type. +- [Arbitrary Type Conversions](../../features/arbitrary_types.md) for an overview. + +## Version history + +1. Added in version 3.9.0. +2. Added in version 3.11.0. +3. Added in version TODO. diff --git a/docs/mkdocs/docs/api/macros/nlohmann_json_namespace.md b/docs/mkdocs/docs/api/macros/nlohmann_json_namespace.md new file mode 100644 index 00000000..5c54dba5 --- /dev/null +++ b/docs/mkdocs/docs/api/macros/nlohmann_json_namespace.md @@ -0,0 +1,41 @@ +# NLOHMANN_JSON_NAMESPACE + +```cpp +#define NLOHMANN_JSON_NAMESPACE /* value */ +``` + +This macro evaluates to the full name of the `nlohmann` namespace. + +## Default definition + +The default value consists of the root namespace (`nlohmann`) and an inline ABI namespace. See +[`nlohmann` Namespace](../../features/namespace.md#structure) for details. + +When the macro is not defined, the library will define it to its default value. Overriding this value has no effect on +the library. + +## Examples + +??? example + + The example shows how to use `NLOHMANN_JSON_NAMESPACE` instead of just `nlohmann`, as well as how to output the value + of `NLOHMANN_JSON_NAMESPACE`. + + ```cpp + --8<-- "examples/nlohmann_json_namespace.cpp" + ``` + + Output: + + ```json + --8<-- "examples/nlohmann_json_namespace.output" + ``` + +## See also + +- [`NLOHMANN_JSON_NAMESPACE_BEGIN, NLOHMANN_JSON_NAMESPACE_END`](nlohmann_json_namespace_begin.md) +- [`NLOHMANN_JSON_NAMESPACE_NO_VERSION`](nlohmann_json_namespace_no_version.md) + +## Version history + +- Added in version 3.11.0. Changed inline namespace name in version 3.11.2. diff --git a/docs/mkdocs/docs/api/macros/nlohmann_json_namespace_begin.md b/docs/mkdocs/docs/api/macros/nlohmann_json_namespace_begin.md new file mode 100644 index 00000000..1374264a --- /dev/null +++ b/docs/mkdocs/docs/api/macros/nlohmann_json_namespace_begin.md @@ -0,0 +1,61 @@ +# NLOHMANN_JSON_NAMESPACE_BEGIN, NLOHMANN_JSON_NAMESPACE_END + +```cpp +#define NLOHMANN_JSON_NAMESPACE_BEGIN /* value */ // (1) +#define NLOHMANN_JSON_NAMESPACE_END /* value */ // (2) +``` + +These macros can be used to open and close the `nlohmann` namespace. See +[`nlohmann` Namespace](../../features/namespace.md#structure) for details. + +1. Opens the namespace. +2. Closes the namespace. + +## Default definition + +The default definitions open and close the `nlohmann` namespace. The precise definition of +[`NLOHMANN_JSON_NAMESPACE_BEGIN`] varies as described [here](../../features/namespace.md#structure). + +1. Default definition of `NLOHMANN_JSON_NAMESPACE_BEGIN`: + + ```cpp + namespace nlohmann + { + inline namespace json_abi_v3_11_2 + { + ``` + +2. Default definition of `NLOHMANN_JSON_NAMESPACE_END`: + ```cpp + } // namespace json_abi_v3_11_2 + } // namespace nlohmann + ``` + +When these macros are not defined, the library will define them to their default definitions. + +## Examples + +??? example + + The example shows how to use `NLOHMANN_JSON_NAMESPACE_BEGIN`/`NLOHMANN_JSON_NAMESPACE_END` from the + [How do I convert third-party types?](../../features/arbitrary_types.md#how-do-i-convert-third-party-types) page. + + ```cpp + --8<-- "examples/nlohmann_json_namespace_begin.c++17.cpp" + ``` + + Output: + + ```json + --8<-- "examples/nlohmann_json_namespace_begin.c++17.output" + ``` + +## See also + +- [`nlohmann` Namespace](../../features/namespace.md) +- [NLOHMANN_JSON_NAMESPACE](nlohmann_json_namespace.md) +- [`NLOHMANN_JSON_NAMESPACE_NO_VERSION`](nlohmann_json_namespace_no_version.md) + +## Version history + +- Added in version 3.11.0. Changed inline namespace name in version 3.11.2. diff --git a/docs/mkdocs/docs/api/macros/nlohmann_json_namespace_no_version.md b/docs/mkdocs/docs/api/macros/nlohmann_json_namespace_no_version.md new file mode 100644 index 00000000..9e2a52d0 --- /dev/null +++ b/docs/mkdocs/docs/api/macros/nlohmann_json_namespace_no_version.md @@ -0,0 +1,45 @@ +# NLOHMANN_JSON_NAMESPACE_NO_VERSION + +```cpp +#define NLOHMANN_JSON_NAMESPACE_NO_VERSION /* value */ +``` + +If defined to `1`, the version component is omitted from the inline namespace. See +[`nlohmann` Namespace](../../features/namespace.md#structure) for details. + +## Default definition + +The default value is `0`. + +```cpp +#define NLOHMANN_JSON_NAMESPACE_NO_VERSION 0 +``` + +When the macro is not defined, the library will define it to its default value. + +## Examples + +??? example + + The example shows how to use `NLOHMANN_JSON_NAMESPACE_NO_VERSION` to disable the version component of the inline + namespace. + + ```cpp + --8<-- "examples/nlohmann_json_namespace_no_version.cpp" + ``` + + Output: + + ```json + --8<-- "examples/nlohmann_json_namespace_no_version.output" + ``` + +## See also + +- [`nlohmann` Namespace](../../features/namespace.md) +- [`NLOHMANN_JSON_NAMESPACE`](nlohmann_json_namespace.md) +- [`NLOHMANN_JSON_NAMESPACE_BEGIN, NLOHMANN_JSON_NAMESPACE_END`](nlohmann_json_namespace_begin.md) + +## Version history + +- Added in version 3.11.2. diff --git a/docs/mkdocs/docs/api/macros/nlohmann_json_serialize_enum.md b/docs/mkdocs/docs/api/macros/nlohmann_json_serialize_enum.md new file mode 100644 index 00000000..dc2cc8ec --- /dev/null +++ b/docs/mkdocs/docs/api/macros/nlohmann_json_serialize_enum.md @@ -0,0 +1,85 @@ +# NLOHMANN_JSON_SERIALIZE_ENUM + +```cpp +#define NLOHMANN_JSON_SERIALIZE_ENUM(type, conversion...) +``` + +By default, enum values are serialized to JSON as integers. In some cases this could result in undesired behavior. If an +enum is modified or re-ordered after data has been serialized to JSON, the later de-serialized JSON data may be +undefined or a different enum value than was originally intended. + +The `NLOHMANN_JSON_SERIALIZE_ENUM` allows to define a user-defined serialization for every enumerator. + +## Parameters + +`type` (in) +: name of the enum to serialize/deserialize + +`conversion` (in) +: a pair of an enumerator and a JSON serialization; arbitrary pairs can be given as a comma-separated list + +## Default definition + +The macros add two friend functions to the class which take care of the serialization and deserialization: + +```cpp +template +inline void to_json(BasicJsonType& j, const type& e); +template +inline void from_json(const BasicJsonType& j, type& e); +``` + +## Notes + +!!! info "Prerequisites" + + The macro must be used inside the namespace of the enum. + +!!! important "Important notes" + + - When using [`template get()`](../basic_json/get.md), undefined JSON values will default to the first specified + conversion. Select this default pair carefully. See example 1 below. + - If an enum or JSON value is specified in multiple conversions, the first matching conversion from the top of the + list will be returned when converting to or from JSON. See example 2 below. + +## Examples + +??? example "Example 1: Basic usage" + + The example shows how `NLOHMANN_JSON_SERIALIZE_ENUM` can be used to serialize/deserialize both classical enums and + C++11 enum classes: + + ```cpp hl_lines="16 17 18 19 20 21 22 29 30 31 32 33" + --8<-- "examples/nlohmann_json_serialize_enum.cpp" + ``` + + Output: + + ```json + --8<-- "examples/nlohmann_json_serialize_enum.output" + ``` + +??? example "Example 2: Multiple conversions for one enumerator" + + The example shows how to use multiple conversions for a single enumerator. In the example, `Color::red` will always + be *serialized* to `"red"`, because the first occurring conversion. The second conversion, however, offers an + alternative *deserialization* from `"rot"` to `Color::red`. + + ```cpp hl_lines="17" + --8<-- "examples/nlohmann_json_serialize_enum_2.cpp" + ``` + + Output: + + ```json + --8<-- "examples/nlohmann_json_serialize_enum_2.output" + ``` + +## See also + +- [Specializing enum conversion](../../features/enum_conversion.md) +- [`JSON_DISABLE_ENUM_SERIALIZATION`](json_disable_enum_serialization.md) + +## Version history + +Added in version 3.4.0. diff --git a/docs/mkdocs/docs/api/macros/nlohmann_json_version_major.md b/docs/mkdocs/docs/api/macros/nlohmann_json_version_major.md new file mode 100644 index 00000000..d7a31427 --- /dev/null +++ b/docs/mkdocs/docs/api/macros/nlohmann_json_version_major.md @@ -0,0 +1,40 @@ +# NLOHMANN_JSON_VERSION_MAJOR, NLOHMANN_JSON_VERSION_MINOR, NLOHMANN_JSON_VERSION_PATCH + +```cpp +#define NLOHMANN_JSON_VERSION_MAJOR /* value */ +#define NLOHMANN_JSON_VERSION_MINOR /* value */ +#define NLOHMANN_JSON_VERSION_PATCH /* value */ +``` + +These macros are defined by the library and contain the version numbers according to +[Semantic Versioning 2.0.0](https://semver.org/spec/v2.0.0.html). + +## Default definition + +The macros are defined according to the current library version. + +## Examples + +??? example + + The example below shows how `NLOHMANN_JSON_VERSION_MAJOR`, `NLOHMANN_JSON_VERSION_MINOR`, and + `NLOHMANN_JSON_VERSION_PATCH` are defined by the library. + + ```cpp + --8<-- "examples/nlohmann_json_version.cpp" + ``` + + Output: + + ```json + --8<-- "examples/nlohmann_json_version.output" + ``` + +## See also + +- [meta](../basic_json/meta.md) - returns version information on the library +- [JSON_SKIP_LIBRARY_VERSION_CHECK](json_skip_library_version_check.md) - skip library version check + +## Version history + +- Added in version 3.1.0. diff --git a/docs/mkdocs/docs/api/operator_gtgt.md b/docs/mkdocs/docs/api/operator_gtgt.md new file mode 100644 index 00000000..e76cc0db --- /dev/null +++ b/docs/mkdocs/docs/api/operator_gtgt.md @@ -0,0 +1,64 @@ +# nlohmann::operator>>(basic_json) + +```cpp +std::istream& operator>>(std::istream& i, basic_json& j); +``` + +Deserializes an input stream to a JSON value. + +## Parameters + +`i` (in, out) +: input stream to read a serialized JSON value from + +`j` (in, out) +: JSON value to write the deserialized input to + +## Return value + +the stream `i` + +## Exceptions + +- Throws [`parse_error.101`](../home/exceptions.md#jsonexceptionparse_error101) in case of an unexpected token. +- Throws [`parse_error.102`](../home/exceptions.md#jsonexceptionparse_error102) if to_unicode fails or surrogate error. +- Throws [`parse_error.103`](../home/exceptions.md#jsonexceptionparse_error103) if to_unicode fails. + +## Complexity + +Linear in the length of the input. The parser is a predictive LL(1) parser. + +## Notes + +A UTF-8 byte order mark is silently ignored. + +!!! warning "Deprecation" + + This function replaces function `#!cpp std::istream& operator<<(basic_json& j, std::istream& i)` which has + been deprecated in version 3.0.0. It will be removed in version 4.0.0. Please replace calls like `#!cpp j << i;` + with `#!cpp i >> j;`. + +## Examples + +??? example + + The example below shows how a JSON value is constructed by reading a serialization from a stream. + + ```cpp + --8<-- "examples/operator_deserialize.cpp" + ``` + + Output: + + ```json + --8<-- "examples/operator_deserialize.output" + ``` + +## See also + +- [accept](basic_json/accept.md) - check if the input is valid JSON +- [parse](basic_json/parse.md) - deserialize from a compatible input + +## Version history + +- Added in version 1.0.0. Deprecated in version 3.0.0. diff --git a/docs/mkdocs/docs/api/operator_literal_json.md b/docs/mkdocs/docs/api/operator_literal_json.md new file mode 100644 index 00000000..bc2b2cfc --- /dev/null +++ b/docs/mkdocs/docs/api/operator_literal_json.md @@ -0,0 +1,61 @@ +# nlohmann::operator""_json + +```cpp +json operator ""_json(const char* s, std::size_t n); +``` + +This operator implements a user-defined string literal for JSON objects. It can be used by adding `#!cpp _json` to a +string literal and returns a [`json`](json.md) object if no parse error occurred. + +It is recommended to bring the operator into scope using any of the following lines: +```cpp +using nlohmann::literals::operator ""_json; +using namespace nlohmann::literals; +using namespace nlohmann::json_literals; +using namespace nlohmann::literals::json_literals; +using namespace nlohmann; +``` + +This is suggested to ease migration to the next major version release of the library. See +['JSON_USE_GLOBAL_UDLS`](macros/json_use_global_udls.md#notes) for details. + +## Parameters + +`s` (in) +: a string representation of a JSON object + +`n` (in) +: length of string `s` + +## Return value + +[`json`](json.md) value parsed from `s` + +## Exceptions + +The function can throw anything that [`parse(s, s+n)`](basic_json/parse.md) would throw. + +## Complexity + +Linear. + +## Examples + +??? example + + The following code shows how to create JSON values from string literals. + + ```cpp + --8<-- "examples/operator_literal_json.cpp" + ``` + + Output: + + ```json + --8<-- "examples/operator_literal_json.output" + ``` + +## Version history + +- Added in version 1.0.0. +- Moved to namespace `nlohmann::literals::json_literals` in 3.11.0. diff --git a/docs/mkdocs/docs/api/operator_literal_json_pointer.md b/docs/mkdocs/docs/api/operator_literal_json_pointer.md new file mode 100644 index 00000000..0e12440e --- /dev/null +++ b/docs/mkdocs/docs/api/operator_literal_json_pointer.md @@ -0,0 +1,64 @@ +# nlohmann::operator""_json_pointer + +```cpp +json_pointer operator ""_json_pointer(const char* s, std::size_t n); +``` + +This operator implements a user-defined string literal for JSON Pointers. It can be used by adding `#!cpp _json_pointer` +to a string literal and returns a [`json_pointer`](json_pointer/index.md) object if no parse error occurred. + +It is recommended to bring the operator into scope using any of the following lines: +```cpp +using nlohmann::literals::operator ""_json_pointer; +using namespace nlohmann::literals; +using namespace nlohmann::json_literals; +using namespace nlohmann::literals::json_literals; +using namespace nlohmann; +``` +This is suggested to ease migration to the next major version release of the library. See +['JSON_USE_GLOBAL_UDLS`](macros/json_use_global_udls.md#notes) for details. + +## Parameters + +`s` (in) +: a string representation of a JSON Pointer + +`n` (in) +: length of string `s` + +## Return value + +[`json_pointer`](json_pointer/index.md) value parsed from `s` + +## Exceptions + +The function can throw anything that [`json_pointer::json_pointer`](json_pointer/index.md) would throw. + +## Complexity + +Linear. + +## Examples + +??? example + + The following code shows how to create JSON Pointers from string literals. + + ```cpp + --8<-- "examples/operator_literal_json_pointer.cpp" + ``` + + Output: + + ```json + --8<-- "examples/operator_literal_json_pointer.output" + ``` + +## See also + +- [json_pointer](json_pointer/index.md) - type to represent JSON Pointers + +## Version history + +- Added in version 2.0.0. +- Moved to namespace `nlohmann::literals::json_literals` in 3.11.0. diff --git a/docs/mkdocs/docs/api/operator_ltlt.md b/docs/mkdocs/docs/api/operator_ltlt.md new file mode 100644 index 00000000..1718b3c9 --- /dev/null +++ b/docs/mkdocs/docs/api/operator_ltlt.md @@ -0,0 +1,87 @@ +# nlohmann::operator<<(basic_json), nlohmann::operator<<(json_pointer) + +```cpp +std::ostream& operator<<(std::ostream& o, const basic_json& j); // (1) + +std::ostream& operator<<(std::ostream& o, const json_pointer& ptr); // (2) +``` + +1. Serialize the given JSON value `j` to the output stream `o`. The JSON value will be serialized using the + [`dump`](basic_json/dump.md) member function. + - The indentation of the output can be controlled with the member variable `width` of the output stream `o`. For + instance, using the manipulator `std::setw(4)` on `o` sets the indentation level to `4` and the serialization + result is the same as calling `dump(4)`. + - The indentation character can be controlled with the member variable `fill` of the output stream `o`. + For instance, the manipulator `std::setfill('\\t')` sets indentation to use a tab character rather than the + default space character. +2. Write a string representation of the given JSON pointer `ptr` to the output stream `o`. The string representation is + obtained using the [`to_string`](json_pointer/to_string.md) member function. + +## Parameters + +`o` (in, out) +: stream to write to + +`j` (in) +: JSON value to serialize + +`ptr` (in) +: JSON pointer to write + +## Return value + +the stream `o` + +## Exceptions + +1. Throws [`type_error.316`](../home/exceptions.md#jsonexceptiontype_error316) if a string stored inside the JSON + value is not UTF-8 encoded. Note that unlike the [`dump`](basic_json/dump.md) member functions, no `error_handler` + can be set. +2. None. + +## Complexity + +Linear. + +## Notes + +!!! warning "Deprecation" + + Function `#!cpp std::ostream& operator<<(std::ostream& o, const basic_json& j)` replaces function + `#!cpp std::ostream& operator>>(const basic_json& j, std::ostream& o)` which has been deprecated in version 3.0.0. + It will be removed in version 4.0.0. Please replace calls like `#!cpp j >> o;` with `#!cpp o << j;`. + +## Examples + +??? example "Example: (1) serialize JSON value to stream" + + The example below shows the serialization with different parameters to `width` to adjust the indentation level. + + ```cpp + --8<-- "examples/operator_ltlt__basic_json.cpp" + ``` + + Output: + + ```json + --8<-- "examples/operator_ltlt__basic_json.output" + ``` + +??? example "Example: (2) write JSON pointer to stream" + + The example below shows how to write a JSON pointer to a stream. + + ```cpp + --8<-- "examples/operator_ltlt__json_pointer.cpp" + ``` + + Output: + + ```json + --8<-- "examples/operator_ltlt__json_pointer.output" + ``` +## Version history + +1. Added in version 1.0.0. Added support for indentation character and deprecated + `#!cpp std::ostream& operator>>(const basic_json& j, std::ostream& o)` in version 3.0.0. +3. Added in version 3.11.0. diff --git a/docs/mkdocs/docs/api/ordered_json.md b/docs/mkdocs/docs/api/ordered_json.md new file mode 100644 index 00000000..7cfd9f4d --- /dev/null +++ b/docs/mkdocs/docs/api/ordered_json.md @@ -0,0 +1,32 @@ +# nlohmann::ordered_json + +```cpp +using ordered_json = basic_json; +``` + +This type preserves the insertion order of object keys. + +## Examples + +??? example + + The example below demonstrates how `ordered_json` preserves the insertion order of object keys. + + ```cpp + --8<-- "examples/ordered_json.cpp" + ``` + + Output: + + ```json + --8<-- "examples/ordered_json.output" + ``` + +## See also + +- [ordered_map](ordered_map.md) +- [Object Order](../features/object_order.md) + +## Version history + +Since version 3.9.0. diff --git a/docs/mkdocs/docs/api/ordered_map.md b/docs/mkdocs/docs/api/ordered_map.md new file mode 100644 index 00000000..160b85c2 --- /dev/null +++ b/docs/mkdocs/docs/api/ordered_map.md @@ -0,0 +1,77 @@ +# nlohmann::ordered_map + +```cpp +template, + class Allocator = std::allocator>> +struct ordered_map : std::vector, Allocator>; +``` + +A minimal map-like container that preserves insertion order for use within [`nlohmann::ordered_json`](ordered_json.md) +(`nlohmann::basic_json`). + +## Template parameters + +`Key` +: key type + +`T` +: mapped type + +`IgnoredLess` +: comparison function (ignored and only added to ensure compatibility with `#!cpp std::map`) + +`Allocator` +: allocator type + +## Member types + +- **key_type** - key type (`Key`) +- **mapped_type** - mapped type (`T`) +- **Container** - base container type (`#!cpp std::vector, Allocator>`) +- **iterator** +- **const_iterator** +- **size_type** +- **value_type** +- **key_compare** - key comparison function +```cpp +std::equal_to // until C++14 + +std::equal_to<> // since C++14 +``` + +## Member functions + +- (constructor) +- (destructor) +- **emplace** +- **operator\[\]** +- **at** +- **erase** +- **count** +- **find** +- **insert** + +## Examples + +??? example + + The example shows the different behavior of `std::map` and `nlohmann::ordered_map`. + + ```cpp + --8<-- "examples/ordered_map.cpp" + ``` + + Output: + + ```json + --8<-- "examples/ordered_map.output" + ``` + +## See also + +- [ordered_json](ordered_json.md) + +## Version history + +- Added in version 3.9.0 to implement [`nlohmann::ordered_json`](ordered_json.md). +- Added **key_compare** member in version 3.11.0. diff --git a/docs/mkdocs/docs/css/custom.css b/docs/mkdocs/docs/css/custom.css new file mode 100644 index 00000000..7a1008b0 --- /dev/null +++ b/docs/mkdocs/docs/css/custom.css @@ -0,0 +1,4 @@ +/* disable ligatures in code and preformatted blocks */ +code, pre { + font-variant-ligatures: none; +} diff --git a/docs/mkdocs/docs/features/arbitrary_types.md b/docs/mkdocs/docs/features/arbitrary_types.md new file mode 100644 index 00000000..9b54fcb3 --- /dev/null +++ b/docs/mkdocs/docs/features/arbitrary_types.md @@ -0,0 +1,274 @@ +# Arbitrary Type Conversions + +Every type can be serialized in JSON, not just STL containers and scalar types. Usually, you would do something along those lines: + +```cpp +namespace ns { + // a simple struct to model a person + struct person { + std::string name; + std::string address; + int age; + }; +} // namespace ns + +ns::person p = {"Ned Flanders", "744 Evergreen Terrace", 60}; + +// convert to JSON: copy each value into the JSON object +json j; +j["name"] = p.name; +j["address"] = p.address; +j["age"] = p.age; + +// ... + +// convert from JSON: copy each value from the JSON object +ns::person p { + j["name"].template get(), + j["address"].template get(), + j["age"].template get() +}; +``` + +It works, but that's quite a lot of boilerplate... Fortunately, there's a better way: + +```cpp +// create a person +ns::person p {"Ned Flanders", "744 Evergreen Terrace", 60}; + +// conversion: person -> json +json j = p; + +std::cout << j << std::endl; +// {"address":"744 Evergreen Terrace","age":60,"name":"Ned Flanders"} + +// conversion: json -> person +auto p2 = j.template get(); + +// that's it +assert(p == p2); +``` + +## Basic usage + +To make this work with one of your types, you only need to provide two functions: + +```cpp +using json = nlohmann::json; + +namespace ns { + void to_json(json& j, const person& p) { + j = json{ {"name", p.name}, {"address", p.address}, {"age", p.age} }; + } + + void from_json(const json& j, person& p) { + j.at("name").get_to(p.name); + j.at("address").get_to(p.address); + j.at("age").get_to(p.age); + } +} // namespace ns +``` + +That's all! When calling the `json` constructor with your type, your custom `to_json` method will be automatically called. +Likewise, when calling `template get()` or `get_to(your_type&)`, the `from_json` method will be called. + +Some important things: + +* Those methods **MUST** be in your type's namespace (which can be the global namespace), or the library will not be able to locate them (in this example, they are in namespace `ns`, where `person` is defined). +* Those methods **MUST** be available (e.g., proper headers must be included) everywhere you use these conversions. Look at [issue 1108](https://github.com/nlohmann/json/issues/1108) for errors that may occur otherwise. +* When using `template get()`, `your_type` **MUST** be [DefaultConstructible](https://en.cppreference.com/w/cpp/named_req/DefaultConstructible). (There is a way to bypass this requirement described later.) +* In function `from_json`, use function [`at()`](../api/basic_json/at.md) to access the object values rather than `operator[]`. In case a key does not exist, `at` throws an exception that you can handle, whereas `operator[]` exhibits undefined behavior. +* You do not need to add serializers or deserializers for STL types like `std::vector`: the library already implements these. + + +## Simplify your life with macros + +If you just want to serialize/deserialize some structs, the `to_json`/`from_json` functions can be a lot of boilerplate. + +There are four macros to make your life easier as long as you (1) want to use a JSON object as serialization and (2) want to use the member variable names as object keys in that object: + +- [`NLOHMANN_DEFINE_TYPE_NON_INTRUSIVE(name, member1, member2, ...)`](../api/macros/nlohmann_define_type_non_intrusive.md) is to be defined inside the namespace of the class/struct to create code for. It will throw an exception in `from_json()` due to a missing value in the JSON object. +- [`NLOHMANN_DEFINE_TYPE_NON_INTRUSIVE_WITH_DEFAULT(name, member1, member2, ...)`](../api/macros/nlohmann_define_type_non_intrusive.md) is to be defined inside the namespace of the class/struct to create code for. It will not throw an exception in `from_json()` due to a missing value in the JSON object, but fills in values from object which is default-constructed by the type. +- [`NLOHMANN_DEFINE_TYPE_INTRUSIVE(name, member1, member2, ...)`](../api/macros/nlohmann_define_type_intrusive.md) is to be defined inside the class/struct to create code for. This macro can also access private members. It will throw an exception in `from_json()` due to a missing value in the JSON object. +- [`NLOHMANN_DEFINE_TYPE_INTRUSIVE_WITH_DEFAULT(name, member1, member2, ...)`](../api/macros/nlohmann_define_type_intrusive.md) is to be defined inside the class/struct to create code for. This macro can also access private members. It will not throw an exception in `from_json()` due to a missing value in the JSON object, but fills in values from object which is default-constructed by the type. + +In all macros, the first parameter is the name of the class/struct, and all remaining parameters name the members. You can read more docs about them starting from [here](macros.md#nlohmann_define_type_intrusivetype-member). + +!!! info "Implementation limits" + + - The current macro implementations are limited to at most 64 member variables. If you want to serialize/deserialize + types with more than 64 member variables, you need to define the `to_json`/`from_json` functions manually. + - The macros only work for the [`nlohmann::json`](../api/json.md) type; other specializations such as + [`nlohmann::ordered_json`](../api/ordered_json.md) are currently unsupported. + +??? example + + The `to_json`/`from_json` functions for the `person` struct above can be created with: + + ```cpp + namespace ns { + NLOHMANN_DEFINE_TYPE_NON_INTRUSIVE(person, name, address, age) + } + ``` + + Here is an example with private members, where `NLOHMANN_DEFINE_TYPE_INTRUSIVE` is needed: + + ```cpp + namespace ns { + class address { + private: + std::string street; + int housenumber; + int postcode; + + public: + NLOHMANN_DEFINE_TYPE_INTRUSIVE(address, street, housenumber, postcode) + }; + } + ``` + +## How do I convert third-party types? + +This requires a bit more advanced technique. But first, let's see how this conversion mechanism works: + +The library uses **JSON Serializers** to convert types to json. +The default serializer for `nlohmann::json` is `nlohmann::adl_serializer` (ADL means [Argument-Dependent Lookup](https://en.cppreference.com/w/cpp/language/adl)). + +It is implemented like this (simplified): + +```cpp +template +struct adl_serializer { + static void to_json(json& j, const T& value) { + // calls the "to_json" method in T's namespace + } + + static void from_json(const json& j, T& value) { + // same thing, but with the "from_json" method + } +}; +``` + +This serializer works fine when you have control over the type's namespace. However, what about `boost::optional` or `std::filesystem::path` (C++17)? Hijacking the `boost` namespace is pretty bad, and it's illegal to add something other than template specializations to `std`... + +To solve this, you need to add a specialization of `adl_serializer` to the `nlohmann` namespace, here's an example: + +```cpp +// partial specialization (full specialization works too) +NLOHMANN_JSON_NAMESPACE_BEGIN +template +struct adl_serializer> { + static void to_json(json& j, const boost::optional& opt) { + if (opt == boost::none) { + j = nullptr; + } else { + j = *opt; // this will call adl_serializer::to_json which will + // find the free function to_json in T's namespace! + } + } + + static void from_json(const json& j, boost::optional& opt) { + if (j.is_null()) { + opt = boost::none; + } else { + opt = j.template get(); // same as above, but with + // adl_serializer::from_json + } + } +}; +NLOHMANN_JSON_NAMESPACE_END +``` + +!!! note "ABI compatibility" + + Use [`NLOHMANN_JSON_NAMESPACE_BEGIN`](../api/macros/nlohmann_json_namespace_begin.md) and `NLOHMANN_JSON_NAMESPACE_END` + instead of `#!cpp namespace nlohmann { }` in code which may be linked with different versions of this library. + +## How can I use `get()` for non-default constructible/non-copyable types? + +There is a way, if your type is [MoveConstructible](https://en.cppreference.com/w/cpp/named_req/MoveConstructible). You will need to specialize the `adl_serializer` as well, but with a special `from_json` overload: + +```cpp +struct move_only_type { + move_only_type() = delete; + move_only_type(int ii): i(ii) {} + move_only_type(const move_only_type&) = delete; + move_only_type(move_only_type&&) = default; + + int i; +}; + +namespace nlohmann { + template <> + struct adl_serializer { + // note: the return type is no longer 'void', and the method only takes + // one argument + static move_only_type from_json(const json& j) { + return {j.template get()}; + } + + // Here's the catch! You must provide a to_json method! Otherwise, you + // will not be able to convert move_only_type to json, since you fully + // specialized adl_serializer on that type + static void to_json(json& j, move_only_type t) { + j = t.i; + } + }; +} +``` + +## Can I write my own serializer? (Advanced use) + +Yes. You might want to take a look at [`unit-udt.cpp`](https://github.com/nlohmann/json/blob/develop/tests/src/unit-udt.cpp) in the test suite, to see a few examples. + +If you write your own serializer, you'll need to do a few things: + +- use a different `basic_json` alias than `nlohmann::json` (the last template parameter of `basic_json` is the `JSONSerializer`) +- use your `basic_json` alias (or a template parameter) in all your `to_json`/`from_json` methods +- use `nlohmann::to_json` and `nlohmann::from_json` when you need ADL + +Here is an example, without simplifications, that only accepts types with a size <= 32, and uses ADL. + +```cpp +// You should use void as a second template argument +// if you don't need compile-time checks on T +template::type> +struct less_than_32_serializer { + template + static void to_json(BasicJsonType& j, T value) { + // we want to use ADL, and call the correct to_json overload + using nlohmann::to_json; // this method is called by adl_serializer, + // this is where the magic happens + to_json(j, value); + } + + template + static void from_json(const BasicJsonType& j, T& value) { + // same thing here + using nlohmann::from_json; + from_json(j, value); + } +}; +``` + +Be **very** careful when reimplementing your serializer, you can stack overflow if you don't pay attention: + +```cpp +template +struct bad_serializer +{ + template + static void to_json(BasicJsonType& j, const T& value) { + // this calls BasicJsonType::json_serializer::to_json(j, value); + // if BasicJsonType::json_serializer == bad_serializer ... oops! + j = value; + } + + template + static void to_json(const BasicJsonType& j, T& value) { + // this calls BasicJsonType::json_serializer::from_json(j, value); + // if BasicJsonType::json_serializer == bad_serializer ... oops! + value = j.template template get(); // oops! + } +}; +``` diff --git a/docs/mkdocs/docs/features/assertions.md b/docs/mkdocs/docs/features/assertions.md new file mode 100644 index 00000000..2bad62e8 --- /dev/null +++ b/docs/mkdocs/docs/features/assertions.md @@ -0,0 +1,131 @@ +# Runtime Assertions + +The code contains numerous debug assertions to ensure class invariants are valid or to detect undefined behavior. +Whereas the former class invariants are nothing to be concerned of, the latter checks for undefined behavior are to +detect bugs in client code. + +## Switch off runtime assertions + +Runtime assertions can be switched off by defining the preprocessor macro `NDEBUG` (see the +[documentation of assert](https://en.cppreference.com/w/cpp/error/assert)) which is the default for release builds. + +## Change assertion behavior + +The behavior of runtime assertions can be changes by defining macro [`JSON_ASSERT(x)`](../api/macros/json_assert.md) +before including the `json.hpp` header. + +## Function with runtime assertions + +### Unchecked object access to a const value + +Function [`operator[]`](../api/basic_json/operator%5B%5D.md) implements unchecked access for objects. Whereas a missing +key is added in case of non-const objects, accessing a const object with a missing key is undefined behavior (think of a +dereferenced null pointer) and yields a runtime assertion. + +If you are not sure whether an element in an object exists, use checked access with the +[`at` function](../api/basic_json/at.md) or call the [`contains` function](../api/basic_json/contains.md) before. + +See also the documentation on [element access](element_access/index.md). + +??? example "Example 1: Missing object key" + + The following code will trigger an assertion at runtime: + + ```cpp + #include + + using json = nlohmann::json; + + int main() + { + const json j = {{"key", "value"}}; + auto v = j["missing"]; + } + ``` + + Output: + + ``` + Assertion failed: (m_value.object->find(key) != m_value.object->end()), function operator[], file json.hpp, line 2144. + ``` + +### Constructing from an uninitialized iterator range + +Constructing a JSON value from an iterator range (see [constructor](../api/basic_json/basic_json.md)) with an +uninitialized iterator is undefined behavior and yields a runtime assertion. + +??? example "Example 2: Uninitialized iterator range" + + The following code will trigger an assertion at runtime: + + ```cpp + #include + + using json = nlohmann::json; + + int main() + { + json::iterator it1, it2; + json j(it1, it2); + } + ``` + + Output: + + ``` + Assertion failed: (m_object != nullptr), function operator++, file iter_impl.hpp, line 368. + ``` + +### Operations on uninitialized iterators + +Any operation on uninitialized iterators (i.e., iterators that are not associated with any JSON value) is undefined +behavior and yields a runtime assertion. + +??? example "Example 3: Uninitialized iterator" + + The following code will trigger an assertion at runtime: + + ```cpp + #include + + using json = nlohmann::json; + + int main() + { + json::iterator it; + ++it; + } + ``` + + Output: + + ``` + Assertion failed: (m_object != nullptr), function operator++, file iter_impl.hpp, line 368. + ``` + +### Reading from a null `FILE` pointer + +Reading from a null `#!cpp FILE` pointer is undefined behavior and yields a runtime assertion. This can happen when +calling `#!cpp std::fopen` on a nonexistent file. + +??? example "Example 4: Uninitialized iterator" + + The following code will trigger an assertion at runtime: + + ```cpp + #include + + using json = nlohmann::json; + + int main() + { + std::FILE* f = std::fopen("nonexistent_file.json", "r"); + json j = json::parse(f); + } + ``` + + Output: + + ``` + Assertion failed: (m_file != nullptr), function file_input_adapter, file input_adapters.hpp, line 55. + ``` diff --git a/docs/mkdocs/docs/features/binary_formats/bjdata.md b/docs/mkdocs/docs/features/binary_formats/bjdata.md new file mode 100644 index 00000000..a89a2288 --- /dev/null +++ b/docs/mkdocs/docs/features/binary_formats/bjdata.md @@ -0,0 +1,194 @@ +# BJData + +The [BJData format](https://neurojson.org) was derived from and improved upon +[Universal Binary JSON(UBJSON)](https://ubjson.org) specification (Draft 12). Specifically, it introduces an optimized +array container for efficient storage of N-dimensional packed arrays (**ND-arrays**); it also adds 4 new type markers - +`[u] - uint16`, `[m] - uint32`, `[M] - uint64` and `[h] - float16` - to unambiguously map common binary numeric types; +furthermore, it uses little-endian (LE) to store all numerics instead of big-endian (BE) as in UBJSON to avoid +unnecessary conversions on commonly available platforms. + +Compared to other binary JSON-like formats such as MessagePack and CBOR, both BJData and UBJSON demonstrate a rare +combination of being both binary and **quasi-human-readable**. This is because all semantic elements in BJData and +UBJSON, including the data-type markers and name/string types are directly human-readable. Data stored in the +BJData/UBJSON format are not only compact in size, fast to read/write, but also can be directly searched or read using +simple processing. + +!!! abstract "References" + + - [BJData Specification](https://neurojson.org/bjdata/draft2) + +## Serialization + +The library uses the following mapping from JSON values types to BJData types according to the BJData specification: + +| JSON value type | value/range | BJData type | marker | +|-----------------|-------------------------------------------|----------------|--------| +| null | `null` | null | `Z` | +| boolean | `true` | true | `T` | +| boolean | `false` | false | `F` | +| number_integer | -9223372036854775808..-2147483649 | int64 | `L` | +| number_integer | -2147483648..-32769 | int32 | `l` | +| number_integer | -32768..-129 | int16 | `I` | +| number_integer | -128..127 | int8 | `i` | +| number_integer | 128..255 | uint8 | `U` | +| number_integer | 256..32767 | int16 | `I` | +| number_integer | 32768..65535 | uint16 | `u` | +| number_integer | 65536..2147483647 | int32 | `l` | +| number_integer | 2147483648..4294967295 | uint32 | `m` | +| number_integer | 4294967296..9223372036854775807 | int64 | `L` | +| number_integer | 9223372036854775808..18446744073709551615 | uint64 | `M` | +| number_unsigned | 0..127 | int8 | `i` | +| number_unsigned | 128..255 | uint8 | `U` | +| number_unsigned | 256..32767 | int16 | `I` | +| number_unsigned | 32768..65535 | uint16 | `u` | +| number_unsigned | 65536..2147483647 | int32 | `l` | +| number_unsigned | 2147483648..4294967295 | uint32 | `m` | +| number_unsigned | 4294967296..9223372036854775807 | int64 | `L` | +| number_unsigned | 9223372036854775808..18446744073709551615 | uint64 | `M` | +| number_float | *any value* | float64 | `D` | +| string | *with shortest length indicator* | string | `S` | +| array | *see notes on optimized format/ND-array* | array | `[` | +| object | *see notes on optimized format* | map | `{` | + +!!! success "Complete mapping" + + The mapping is **complete** in the sense that any JSON value type can be converted to a BJData value. + + Any BJData output created by `to_bjdata` can be successfully parsed by `from_bjdata`. + +!!! warning "Size constraints" + + The following values can **not** be converted to a BJData value: + + - strings with more than 18446744073709551615 bytes, i.e., $2^{64}-1$ bytes (theoretical) + +!!! info "Unused BJData markers" + + The following markers are not used in the conversion: + + - `Z`: no-op values are not created. + - `C`: single-byte strings are serialized with `S` markers. + +!!! info "NaN/infinity handling" + + If NaN or Infinity are stored inside a JSON number, they are serialized properly. This behavior differs from the + `dump()` function which serializes NaN or Infinity to `#!json null`. + +!!! info "Endianness" + + A breaking difference between BJData and UBJSON is the endianness of numerical values. In BJData, all numerical data + types (integers `UiuImlML` and floating-point values `hdD`) are stored in the little-endian (LE) byte order as + opposed to big-endian as used by UBJSON. Adopting LE to store numeric records avoids unnecessary byte swapping on + most modern computers where LE is used as the default byte order. + +!!! info "Optimized formats" + + Optimized formats for containers are supported via two parameters of + [`to_bjdata`](../../api/basic_json/to_bjdata.md): + + - Parameter `use_size` adds size information to the beginning of a container and removes the closing marker. + - Parameter `use_type` further checks whether all elements of a container have the same type and adds the type + marker to the beginning of the container. The `use_type` parameter must only be used together with + `use_size = true`. + + Note that `use_size = true` alone may result in larger representations - the benefit of this parameter is that the + receiving side is immediately informed of the number of elements in the container. + +!!! info "ND-array optimized format" + + BJData extends UBJSON's optimized array **size** marker to support ND-arrays of uniform numerical data types + (referred to as *packed arrays*). For example, the 2-D `uint8` integer array `[[1,2],[3,4],[5,6]]`, stored as nested + optimized array in UBJSON `[ [$U#i2 1 2 [$U#i2 3 4 [$U#i2 5 6 ]`, can be further compressed in BJData to + `[$U#[$i#i2 2 3 1 2 3 4 5 6` or `[$U#[i2 i3] 1 2 3 4 5 6`. + + To maintain type and size information, ND-arrays are converted to JSON objects following the **annotated array + format** (defined in the [JData specification (Draft 3)][JDataAAFmt]), when parsed using + [`from_bjdata`](../../api/basic_json/from_bjdata.md). For example, the above 2-D `uint8` array can be parsed and + accessed as + + ```json + { + "_ArrayType_": "uint8", + "_ArraySize_": [2,3], + "_ArrayData_": [1,2,3,4,5,6] + } + ``` + + Likewise, when a JSON object in the above form is serialzed using + [`to_bjdata`](../../api/basic_json/to_bjdata.md), it is automatically converted into a compact BJData ND-array. The + only exception is, that when the 1-dimensional vector stored in `"_ArraySize_"` contains a single integer or two + integers with one being 1, a regular 1-D optimized array is generated. + + The current version of this library does not yet support automatic detection of and conversion from a nested JSON + array input to a BJData ND-array. + + [JDataAAFmt]: https://github.com/NeuroJSON/jdata/blob/master/JData_specification.md#annotated-storage-of-n-d-arrays) + +!!! info "Restrictions in optimized data types for arrays and objects" + + Due to diminished space saving, hampered readability, and increased security risks, in BJData, the allowed data + types following the `$` marker in an optimized array and object container are restricted to + **non-zero-fixed-length** data types. Therefore, the valid optimized type markers can only be one of `UiuImlMLhdDC`. + This also means other variable (`[{SH`) or zero-length types (`TFN`) can not be used in an optimized array or object + in BJData. + +!!! info "Binary values" + + If the JSON data contains the binary type, the value stored is a list of integers, as suggested by the BJData + documentation. In particular, this means that the serialization and the deserialization of JSON containing binary + values into BJData and back will result in a different JSON object. + +??? example + + ```cpp + --8<-- "examples/to_bjdata.cpp" + ``` + + Output: + + ```c + --8<-- "examples/to_bjdata.output" + ``` + +## Deserialization + +The library maps BJData types to JSON value types as follows: + +| BJData type | JSON value type | marker | +|-------------|-----------------------------------------|--------| +| no-op | *no value, next value is read* | `N` | +| null | `null` | `Z` | +| false | `false` | `F` | +| true | `true` | `T` | +| float16 | number_float | `h` | +| float32 | number_float | `d` | +| float64 | number_float | `D` | +| uint8 | number_unsigned | `U` | +| int8 | number_integer | `i` | +| uint16 | number_unsigned | `u` | +| int16 | number_integer | `I` | +| uint32 | number_unsigned | `m` | +| int32 | number_integer | `l` | +| uint64 | number_unsigned | `M` | +| int64 | number_integer | `L` | +| string | string | `S` | +| char | string | `C` | +| array | array (optimized values are supported) | `[` | +| ND-array | object (in JData annotated array format)|`[$.#[.`| +| object | object (optimized values are supported) | `{` | + +!!! success "Complete mapping" + + The mapping is **complete** in the sense that any BJData value can be converted to a JSON value. + +??? example + + ```cpp + --8<-- "examples/from_bjdata.cpp" + ``` + + Output: + + ```json + --8<-- "examples/from_bjdata.output" + ``` diff --git a/docs/mkdocs/docs/features/binary_formats/bson.md b/docs/mkdocs/docs/features/binary_formats/bson.md new file mode 100644 index 00000000..f3b8cf18 --- /dev/null +++ b/docs/mkdocs/docs/features/binary_formats/bson.md @@ -0,0 +1,96 @@ +# BSON + +BSON, short for Binary JSON, is a binary-encoded serialization of JSON-like documents. Like JSON, BSON supports the +embedding of documents and arrays within other documents and arrays. BSON also contains extensions that allow +representation of data types that are not part of the JSON spec. For example, BSON has a Date type and a BinData type. + +!!! abstract "References" + + - [BSON Website](http://bsonspec.org) - the main source on BSON + - [BSON Specification](http://bsonspec.org/spec.html) - the specification + + +## Serialization + +The library uses the following mapping from JSON values types to BSON types: + +| JSON value type | value/range | BSON type | marker | +|-----------------|-------------------------------------------|-----------|--------| +| null | `null` | null | 0x0A | +| boolean | `true`, `false` | boolean | 0x08 | +| number_integer | -9223372036854775808..-2147483649 | int64 | 0x12 | +| number_integer | -2147483648..2147483647 | int32 | 0x10 | +| number_integer | 2147483648..9223372036854775807 | int64 | 0x12 | +| number_unsigned | 0..2147483647 | int32 | 0x10 | +| number_unsigned | 2147483648..9223372036854775807 | int64 | 0x12 | +| number_unsigned | 9223372036854775808..18446744073709551615 | -- | -- | +| number_float | *any value* | double | 0x01 | +| string | *any value* | string | 0x02 | +| array | *any value* | document | 0x04 | +| object | *any value* | document | 0x03 | +| binary | *any value* | binary | 0x05 | + +!!! warning "Incomplete mapping" + + The mapping is **incomplete**, since only JSON-objects (and things + contained therein) can be serialized to BSON. + Also, integers larger than 9223372036854775807 cannot be serialized to BSON, + and the keys may not contain U+0000, since they are serialized a + zero-terminated c-strings. + +??? example + + ```cpp + --8<-- "examples/to_bson.cpp" + ``` + + Output: + + ```c + --8<-- "examples/to_bson.output" + ``` + + +## Deserialization + +The library maps BSON record types to JSON value types as follows: + +| BSON type | BSON marker byte | JSON value type | +|-----------------------|------------------|-----------------| +| double | 0x01 | number_float | +| string | 0x02 | string | +| document | 0x03 | object | +| array | 0x04 | array | +| binary | 0x05 | binary | +| undefined | 0x06 | *unsupported* | +| ObjectId | 0x07 | *unsupported* | +| boolean | 0x08 | boolean | +| UTC Date-Time | 0x09 | *unsupported* | +| null | 0x0A | null | +| Regular Expr. | 0x0B | *unsupported* | +| DB Pointer | 0x0C | *unsupported* | +| JavaScript Code | 0x0D | *unsupported* | +| Symbol | 0x0E | *unsupported* | +| JavaScript Code | 0x0F | *unsupported* | +| int32 | 0x10 | number_integer | +| Timestamp | 0x11 | *unsupported* | +| 128-bit decimal float | 0x13 | *unsupported* | +| Max Key | 0x7F | *unsupported* | +| Min Key | 0xFF | *unsupported* | + +!!! warning "Incomplete mapping" + + The mapping is **incomplete**. The unsupported mappings are indicated in the table above. + + +??? example + + ```cpp + --8<-- "examples/from_bson.cpp" + ``` + + Output: + + ```json + --8<-- "examples/from_bson.output" + ``` diff --git a/docs/mkdocs/docs/features/binary_formats/cbor.md b/docs/mkdocs/docs/features/binary_formats/cbor.md new file mode 100644 index 00000000..2d0a1dae --- /dev/null +++ b/docs/mkdocs/docs/features/binary_formats/cbor.md @@ -0,0 +1,181 @@ +# CBOR + +The Concise Binary Object Representation (CBOR) is a data format whose design goals include the possibility of extremely +small code size, fairly small message size, and extensibility without the need for version negotiation. + +!!! abstract "References" + + - [CBOR Website](http://cbor.io) - the main source on CBOR + - [CBOR Playground](http://cbor.me) - an interactive webpage to translate between JSON and CBOR + - [RFC 7049](https://tools.ietf.org/html/rfc7049) - the CBOR specification + +## Serialization + +The library uses the following mapping from JSON values types to CBOR types according to the CBOR specification +([RFC 7049](https://www.rfc-editor.org/rfc/rfc7049.html)): + +| JSON value type | value/range | CBOR type | first byte | +|-----------------|--------------------------------------------|-----------------------------------|------------| +| null | `null` | Null | 0xF6 | +| boolean | `true` | True | 0xF5 | +| boolean | `false` | False | 0xF4 | +| number_integer | -9223372036854775808..-2147483649 | Negative integer (8 bytes follow) | 0x3B | +| number_integer | -2147483648..-32769 | Negative integer (4 bytes follow) | 0x3A | +| number_integer | -32768..-129 | Negative integer (2 bytes follow) | 0x39 | +| number_integer | -128..-25 | Negative integer (1 byte follow) | 0x38 | +| number_integer | -24..-1 | Negative integer | 0x20..0x37 | +| number_integer | 0..23 | Integer | 0x00..0x17 | +| number_integer | 24..255 | Unsigned integer (1 byte follow) | 0x18 | +| number_integer | 256..65535 | Unsigned integer (2 bytes follow) | 0x19 | +| number_integer | 65536..4294967295 | Unsigned integer (4 bytes follow) | 0x1A | +| number_integer | 4294967296..18446744073709551615 | Unsigned integer (8 bytes follow) | 0x1B | +| number_unsigned | 0..23 | Integer | 0x00..0x17 | +| number_unsigned | 24..255 | Unsigned integer (1 byte follow) | 0x18 | +| number_unsigned | 256..65535 | Unsigned integer (2 bytes follow) | 0x19 | +| number_unsigned | 65536..4294967295 | Unsigned integer (4 bytes follow) | 0x1A | +| number_unsigned | 4294967296..18446744073709551615 | Unsigned integer (8 bytes follow) | 0x1B | +| number_float | *any value representable by a float* | Single-Precision Float | 0xFA | +| number_float | *any value NOT representable by a float* | Double-Precision Float | 0xFB | +| string | *length*: 0..23 | UTF-8 string | 0x60..0x77 | +| string | *length*: 23..255 | UTF-8 string (1 byte follow) | 0x78 | +| string | *length*: 256..65535 | UTF-8 string (2 bytes follow) | 0x79 | +| string | *length*: 65536..4294967295 | UTF-8 string (4 bytes follow) | 0x7A | +| string | *length*: 4294967296..18446744073709551615 | UTF-8 string (8 bytes follow) | 0x7B | +| array | *size*: 0..23 | array | 0x80..0x97 | +| array | *size*: 23..255 | array (1 byte follow) | 0x98 | +| array | *size*: 256..65535 | array (2 bytes follow) | 0x99 | +| array | *size*: 65536..4294967295 | array (4 bytes follow) | 0x9A | +| array | *size*: 4294967296..18446744073709551615 | array (8 bytes follow) | 0x9B | +| object | *size*: 0..23 | map | 0xA0..0xB7 | +| object | *size*: 23..255 | map (1 byte follow) | 0xB8 | +| object | *size*: 256..65535 | map (2 bytes follow) | 0xB9 | +| object | *size*: 65536..4294967295 | map (4 bytes follow) | 0xBA | +| object | *size*: 4294967296..18446744073709551615 | map (8 bytes follow) | 0xBB | +| binary | *size*: 0..23 | byte string | 0x40..0x57 | +| binary | *size*: 23..255 | byte string (1 byte follow) | 0x58 | +| binary | *size*: 256..65535 | byte string (2 bytes follow) | 0x59 | +| binary | *size*: 65536..4294967295 | byte string (4 bytes follow) | 0x5A | +| binary | *size*: 4294967296..18446744073709551615 | byte string (8 bytes follow) | 0x5B | + +Binary values with subtype are mapped to tagged values (0xD8..0xDB) depending on the subtype, followed by a byte string, +see "binary" cells in the table above. + +!!! success "Complete mapping" + + The mapping is **complete** in the sense that any JSON value type can be converted to a CBOR value. + +!!! info "NaN/infinity handling" + + If NaN or Infinity are stored inside a JSON number, they are serialized properly. This behavior differs from the normal JSON serialization which serializes NaN or Infinity to `null`. + +!!! info "Unused CBOR types" + + The following CBOR types are not used in the conversion: + + - UTF-8 strings terminated by "break" (0x7F) + - arrays terminated by "break" (0x9F) + - maps terminated by "break" (0xBF) + - byte strings terminated by "break" (0x5F) + - date/time (0xC0..0xC1) + - bignum (0xC2..0xC3) + - decimal fraction (0xC4) + - bigfloat (0xC5) + - expected conversions (0xD5..0xD7) + - simple values (0xE0..0xF3, 0xF8) + - undefined (0xF7) + - half-precision floats (0xF9) + - break (0xFF) + +!!! info "Tagged items" + + Binary subtypes will be serialized as tagged items. See [binary values](../binary_values.md#cbor) for an example. + +??? example + + ```cpp + --8<-- "examples/to_cbor.cpp" + ``` + + Output: + + ```c + --8<-- "examples/to_cbor.output" + ``` + +## Deserialization + +The library maps CBOR types to JSON value types as follows: + +| CBOR type | JSON value type | first byte | +|------------------------|-----------------|------------| +| Integer | number_unsigned | 0x00..0x17 | +| Unsigned integer | number_unsigned | 0x18 | +| Unsigned integer | number_unsigned | 0x19 | +| Unsigned integer | number_unsigned | 0x1A | +| Unsigned integer | number_unsigned | 0x1B | +| Negative integer | number_integer | 0x20..0x37 | +| Negative integer | number_integer | 0x38 | +| Negative integer | number_integer | 0x39 | +| Negative integer | number_integer | 0x3A | +| Negative integer | number_integer | 0x3B | +| Byte string | binary | 0x40..0x57 | +| Byte string | binary | 0x58 | +| Byte string | binary | 0x59 | +| Byte string | binary | 0x5A | +| Byte string | binary | 0x5B | +| UTF-8 string | string | 0x60..0x77 | +| UTF-8 string | string | 0x78 | +| UTF-8 string | string | 0x79 | +| UTF-8 string | string | 0x7A | +| UTF-8 string | string | 0x7B | +| UTF-8 string | string | 0x7F | +| array | array | 0x80..0x97 | +| array | array | 0x98 | +| array | array | 0x99 | +| array | array | 0x9A | +| array | array | 0x9B | +| array | array | 0x9F | +| map | object | 0xA0..0xB7 | +| map | object | 0xB8 | +| map | object | 0xB9 | +| map | object | 0xBA | +| map | object | 0xBB | +| map | object | 0xBF | +| False | `false` | 0xF4 | +| True | `true` | 0xF5 | +| Null | `null` | 0xF6 | +| Half-Precision Float | number_float | 0xF9 | +| Single-Precision Float | number_float | 0xFA | +| Double-Precision Float | number_float | 0xFB | + +!!! warning "Incomplete mapping" + + The mapping is **incomplete** in the sense that not all CBOR types can be converted to a JSON value. The following CBOR types are not supported and will yield parse errors: + + - date/time (0xC0..0xC1) + - bignum (0xC2..0xC3) + - decimal fraction (0xC4) + - bigfloat (0xC5) + - expected conversions (0xD5..0xD7) + - simple values (0xE0..0xF3, 0xF8) + - undefined (0xF7) + +!!! warning "Object keys" + + CBOR allows map keys of any type, whereas JSON only allows strings as keys in object values. Therefore, CBOR maps with keys other than UTF-8 strings are rejected. + +!!! warning "Tagged items" + + Tagged items will throw a parse error by default. They can be ignored by passing `cbor_tag_handler_t::ignore` to function `from_cbor`. They can be stored by passing `cbor_tag_handler_t::store` to function `from_cbor`. + +??? example + + ```cpp + --8<-- "examples/from_cbor.cpp" + ``` + + Output: + + ```json + --8<-- "examples/from_cbor.output" + ``` diff --git a/docs/mkdocs/docs/features/binary_formats/index.md b/docs/mkdocs/docs/features/binary_formats/index.md new file mode 100644 index 00000000..e74290b0 --- /dev/null +++ b/docs/mkdocs/docs/features/binary_formats/index.md @@ -0,0 +1,52 @@ +# Binary Formats + +Though JSON is a ubiquitous data format, it is not a very compact format suitable for data exchange, for instance over +a network. Hence, the library supports + +- [BJData](bjdata.md) (Binary JData), +- [BSON](bson.md) (Binary JSON), +- [CBOR](cbor.md) (Concise Binary Object Representation), +- [MessagePack](messagepack.md), and +- [UBJSON](ubjson.md) (Universal Binary JSON) + +to efficiently encode JSON values to byte vectors and to decode such vectors. + +## Comparison + +### Completeness + +| Format | Serialization | Deserialization | +|-------------|-----------------------------------------------|----------------------------------------------| +| BJData | complete | complete | +| BSON | incomplete: top-level value must be an object | incomplete, but all JSON types are supported | +| CBOR | complete | incomplete, but all JSON types are supported | +| MessagePack | complete | complete | +| UBJSON | complete | complete | + +### Binary values + +| Format | Binary values | Binary subtypes | +|-------------|---------------|-----------------| +| BJData | not supported | not supported | +| BSON | supported | supported | +| CBOR | supported | supported | +| MessagePack | supported | supported | +| UBJSON | not supported | not supported | + +See [binary values](../binary_values.md) for more information. + +### Sizes + +| Format | canada.json | twitter.json | citm_catalog.json | jeopardy.json | +|--------------------|-------------|--------------|-------------------|---------------| +| BJData | 53.2 % | 91.1 % | 78.1 % | 96.6 % | +| BJData (size) | 58.6 % | 92.1 % | 86.7 % | 97.4 % | +| BJData (size+tyoe) | 58.6 % | 92.1 % | 86.5 % | 97.4 % | +| BSON | 85.8 % | 95.2 % | 95.8 % | 106.7 % | +| CBOR | 50.5 % | 86.3 % | 68.4 % | 88.0 % | +| MessagePack | 50.5 % | 86.0 % | 68.5 % | 87.9 % | +| UBJSON | 53.2 % | 91.3 % | 78.2 % | 96.6 % | +| UBJSON (size) | 58.6 % | 92.3 % | 86.8 % | 97.4 % | +| UBJSON (size+type) | 55.9 % | 92.3 % | 85.0 % | 95.0 % | + +Sizes compared to minified JSON value. diff --git a/docs/mkdocs/docs/features/binary_formats/messagepack.md b/docs/mkdocs/docs/features/binary_formats/messagepack.md new file mode 100644 index 00000000..b2f69f17 --- /dev/null +++ b/docs/mkdocs/docs/features/binary_formats/messagepack.md @@ -0,0 +1,143 @@ +# MessagePack + +MessagePack is an efficient binary serialization format. It lets you exchange data among multiple languages like JSON. +But it's faster and smaller. Small integers are encoded into a single byte, and typical short strings require only one +extra byte in addition to the strings themselves. + +!!! abstract "References" + + - [MessagePack website](https://msgpack.org) + - [MessagePack specification](https://github.com/msgpack/msgpack/blob/master/spec.md) + +## Serialization + +The library uses the following mapping from JSON values types to MessagePack types according to the MessagePack +specification: + +| JSON value type | value/range | MessagePack type | first byte | +|-----------------|------------------------------------------|------------------|------------| +| null | `null` | nil | 0xC0 | +| boolean | `true` | true | 0xC3 | +| boolean | `false` | false | 0xC2 | +| number_integer | -9223372036854775808..-2147483649 | int64 | 0xD3 | +| number_integer | -2147483648..-32769 | int32 | 0xD2 | +| number_integer | -32768..-129 | int16 | 0xD1 | +| number_integer | -128..-33 | int8 | 0xD0 | +| number_integer | -32..-1 | negative fixint | 0xE0..0xFF | +| number_integer | 0..127 | positive fixint | 0x00..0x7F | +| number_integer | 128..255 | uint 8 | 0xCC | +| number_integer | 256..65535 | uint 16 | 0xCD | +| number_integer | 65536..4294967295 | uint 32 | 0xCE | +| number_integer | 4294967296..18446744073709551615 | uint 64 | 0xCF | +| number_unsigned | 0..127 | positive fixint | 0x00..0x7F | +| number_unsigned | 128..255 | uint 8 | 0xCC | +| number_unsigned | 256..65535 | uint 16 | 0xCD | +| number_unsigned | 65536..4294967295 | uint 32 | 0xCE | +| number_unsigned | 4294967296..18446744073709551615 | uint 64 | 0xCF | +| number_float | *any value representable by a float* | float 32 | 0xCA | +| number_float | *any value NOT representable by a float* | float 64 | 0xCB | +| string | *length*: 0..31 | fixstr | 0xA0..0xBF | +| string | *length*: 32..255 | str 8 | 0xD9 | +| string | *length*: 256..65535 | str 16 | 0xDA | +| string | *length*: 65536..4294967295 | str 32 | 0xDB | +| array | *size*: 0..15 | fixarray | 0x90..0x9F | +| array | *size*: 16..65535 | array 16 | 0xDC | +| array | *size*: 65536..4294967295 | array 32 | 0xDD | +| object | *size*: 0..15 | fix map | 0x80..0x8F | +| object | *size*: 16..65535 | map 16 | 0xDE | +| object | *size*: 65536..4294967295 | map 32 | 0xDF | +| binary | *size*: 0..255 | bin 8 | 0xC4 | +| binary | *size*: 256..65535 | bin 16 | 0xC5 | +| binary | *size*: 65536..4294967295 | bin 32 | 0xC6 | + +!!! success "Complete mapping" + + The mapping is **complete** in the sense that any JSON value type can be converted to a MessagePack value. + + Any MessagePack output created by `to_msgpack` can be successfully parsed by `from_msgpack`. + +!!! warning "Size constraints" + + The following values can **not** be converted to a MessagePack value: + + - strings with more than 4294967295 bytes + - byte strings with more than 4294967295 bytes + - arrays with more than 4294967295 elements + - objects with more than 4294967295 elements + +!!! info "NaN/infinity handling" + + If NaN or Infinity are stored inside a JSON number, they are serialized properly in contrast to the + [dump](../../api/basic_json/dump.md) function which serializes NaN or Infinity to `null`. + +??? example + + ```cpp + --8<-- "examples/to_msgpack.cpp" + ``` + + Output: + + ```c + --8<-- "examples/to_msgpack.output" + ``` + +## Deserialization + +The library maps MessagePack types to JSON value types as follows: + +| MessagePack type | JSON value type | first byte | +|------------------|-----------------|------------| +| positive fixint | number_unsigned | 0x00..0x7F | +| fixmap | object | 0x80..0x8F | +| fixarray | array | 0x90..0x9F | +| fixstr | string | 0xA0..0xBF | +| nil | `null` | 0xC0 | +| false | `false` | 0xC2 | +| true | `true` | 0xC3 | +| float 32 | number_float | 0xCA | +| float 64 | number_float | 0xCB | +| uint 8 | number_unsigned | 0xCC | +| uint 16 | number_unsigned | 0xCD | +| uint 32 | number_unsigned | 0xCE | +| uint 64 | number_unsigned | 0xCF | +| int 8 | number_integer | 0xD0 | +| int 16 | number_integer | 0xD1 | +| int 32 | number_integer | 0xD2 | +| int 64 | number_integer | 0xD3 | +| str 8 | string | 0xD9 | +| str 16 | string | 0xDA | +| str 32 | string | 0xDB | +| array 16 | array | 0xDC | +| array 32 | array | 0xDD | +| map 16 | object | 0xDE | +| map 32 | object | 0xDF | +| bin 8 | binary | 0xC4 | +| bin 16 | binary | 0xC5 | +| bin 32 | binary | 0xC6 | +| ext 8 | binary | 0xC7 | +| ext 16 | binary | 0xC8 | +| ext 32 | binary | 0xC9 | +| fixext 1 | binary | 0xD4 | +| fixext 2 | binary | 0xD5 | +| fixext 4 | binary | 0xD6 | +| fixext 8 | binary | 0xD7 | +| fixext 16 | binary | 0xD8 | +| negative fixint | number_integer | 0xE0-0xFF | + +!!! info + + Any MessagePack output created by `to_msgpack` can be successfully parsed by `from_msgpack`. + + +??? example + + ```cpp + --8<-- "examples/from_msgpack.cpp" + ``` + + Output: + + ```json + --8<-- "examples/from_msgpack.output" + ``` diff --git a/docs/mkdocs/docs/features/binary_formats/ubjson.md b/docs/mkdocs/docs/features/binary_formats/ubjson.md new file mode 100644 index 00000000..76956d60 --- /dev/null +++ b/docs/mkdocs/docs/features/binary_formats/ubjson.md @@ -0,0 +1,126 @@ +# UBJSON + +Universal Binary JSON (UBJSON) is a binary form directly imitating JSON, but requiring fewer bytes of data. It aims to +achieve the generality of JSON, combined with being much easier to process than JSON. + +!!! abstract "References" + + - [UBJSON Website](http://ubjson.org) + +## Serialization + +The library uses the following mapping from JSON values types to UBJSON types according to the UBJSON specification: + +| JSON value type | value/range | UBJSON type | marker | +|-----------------|-----------------------------------|----------------|--------| +| null | `null` | null | `Z` | +| boolean | `true` | true | `T` | +| boolean | `false` | false | `F` | +| number_integer | -9223372036854775808..-2147483649 | int64 | `L` | +| number_integer | -2147483648..-32769 | int32 | `l` | +| number_integer | -32768..-129 | int16 | `I` | +| number_integer | -128..127 | int8 | `i` | +| number_integer | 128..255 | uint8 | `U` | +| number_integer | 256..32767 | int16 | `I` | +| number_integer | 32768..2147483647 | int32 | `l` | +| number_integer | 2147483648..9223372036854775807 | int64 | `L` | +| number_unsigned | 0..127 | int8 | `i` | +| number_unsigned | 128..255 | uint8 | `U` | +| number_unsigned | 256..32767 | int16 | `I` | +| number_unsigned | 32768..2147483647 | int32 | `l` | +| number_unsigned | 2147483648..9223372036854775807 | int64 | `L` | +| number_unsigned | 2147483649..18446744073709551615 | high-precision | `H` | +| number_float | *any value* | float64 | `D` | +| string | *with shortest length indicator* | string | `S` | +| array | *see notes on optimized format* | array | `[` | +| object | *see notes on optimized format* | map | `{` | + +!!! success "Complete mapping" + + The mapping is **complete** in the sense that any JSON value type can be converted to a UBJSON value. + + Any UBJSON output created by `to_ubjson` can be successfully parsed by `from_ubjson`. + +!!! warning "Size constraints" + + The following values can **not** be converted to a UBJSON value: + + - strings with more than 9223372036854775807 bytes (theoretical) + +!!! info "Unused UBJSON markers" + + The following markers are not used in the conversion: + + - `Z`: no-op values are not created. + - `C`: single-byte strings are serialized with `S` markers. + +!!! info "NaN/infinity handling" + + If NaN or Infinity are stored inside a JSON number, they are serialized properly. This behavior differs from the + `dump()` function which serializes NaN or Infinity to `null`. + +!!! info "Optimized formats" + + The optimized formats for containers are supported: Parameter `use_size` adds size information to the beginning of a + container and removes the closing marker. Parameter `use_type` further checks whether all elements of a container + have the same type and adds the type marker to the beginning of the container. The `use_type` parameter must only be + used together with `use_size = true`. + + Note that `use_size = true` alone may result in larger representations - the benefit of this parameter is that the + receiving side is immediately informed on the number of elements of the container. + +!!! info "Binary values" + + If the JSON data contains the binary type, the value stored is a list of integers, as suggested by the UBJSON + documentation. In particular, this means that serialization and the deserialization of a JSON containing binary + values into UBJSON and back will result in a different JSON object. + +??? example + + ```cpp + --8<-- "examples/to_ubjson.cpp" + ``` + + Output: + + ```c + --8<-- "examples/to_ubjson.output" + ``` + +## Deserialization + +The library maps UBJSON types to JSON value types as follows: + +| UBJSON type | JSON value type | marker | +|-------------|-----------------------------------------|--------| +| no-op | *no value, next value is read* | `N` | +| null | `null` | `Z` | +| false | `false` | `F` | +| true | `true` | `T` | +| float32 | number_float | `d` | +| float64 | number_float | `D` | +| uint8 | number_unsigned | `U` | +| int8 | number_integer | `i` | +| int16 | number_integer | `I` | +| int32 | number_integer | `l` | +| int64 | number_integer | `L` | +| string | string | `S` | +| char | string | `C` | +| array | array (optimized values are supported) | `[` | +| object | object (optimized values are supported) | `{` | + +!!! success "Complete mapping" + + The mapping is **complete** in the sense that any UBJSON value can be converted to a JSON value. + +??? example + + ```cpp + --8<-- "examples/from_ubjson.cpp" + ``` + + Output: + + ```json + --8<-- "examples/from_ubjson.output" + ``` diff --git a/docs/mkdocs/docs/features/binary_values.md b/docs/mkdocs/docs/features/binary_values.md new file mode 100644 index 00000000..5ad6433c --- /dev/null +++ b/docs/mkdocs/docs/features/binary_values.md @@ -0,0 +1,372 @@ +# Binary Values + +The library implements several [binary formats](binary_formats/index.md) that encode JSON in an efficient way. Most of +these formats support binary values; that is, values that have semantics define outside the library and only define a +sequence of bytes to be stored. + +JSON itself does not have a binary value. As such, binary values are an extension that this library implements to store +values received by a binary format. Binary values are never created by the JSON parser, and are only part of a +serialized JSON text if they have been created manually or via a binary format. + +## API for binary values + +```plantuml +class json::binary_t { + -- setters -- + +void set_subtype(std::uint64_t subtype) + +void clear_subtype() + -- getters -- + +std::uint64_t subtype() const + +bool has_subtype() const +} + +"std::vector" <|-- json::binary_t +``` + +By default, binary values are stored as `std::vector`. This type can be changed by providing a template +parameter to the `basic_json` type. To store binary subtypes, the storage type is extended and exposed as +`json::binary_t`: + +```cpp +auto binary = json::binary_t({0xCA, 0xFE, 0xBA, 0xBE}); +auto binary_with_subtype = json::binary_t({0xCA, 0xFE, 0xBA, 0xBE}, 42); +``` + +There are several convenience functions to check and set the subtype: + +```cpp +binary.has_subtype(); // returns false +binary_with_subtype.has_subtype(); // returns true + +binary_with_subtype.clear_subtype(); +binary_with_subtype.has_subtype(); // returns true + +binary_with_subtype.set_subtype(42); +binary.set_subtype(23); + +binary.subtype(); // returns 23 +``` + +As `json::binary_t` is subclassing `std::vector`, all member functions are available: + +```cpp +binary.size(); // returns 4 +binary[1]; // returns 0xFE +``` + +JSON values can be constructed from `json::binary_t`: + +```cpp +json j = binary; +``` + +Binary values are primitive values just like numbers or strings: + +```cpp +j.is_binary(); // returns true +j.is_primitive(); // returns true +``` + +Given a binary JSON value, the `binary_t` can be accessed by reference as via `get_binary()`: + +```cpp +j.get_binary().has_subtype(); // returns true +j.get_binary().size(); // returns 4 +``` + +For convenience, binary JSON values can be constructed via `json::binary`: + +```cpp +auto j2 = json::binary({0xCA, 0xFE, 0xBA, 0xBE}, 23); +auto j3 = json::binary({0xCA, 0xFE, 0xBA, 0xBE}); + +j2 == j; // returns true +j3.get_binary().has_subtype(); // returns false +j3.get_binary().subtype(); // returns std::uint64_t(-1) as j3 has no subtype +``` + + + +## Serialization + +Binary values are serialized differently according to the formats. + +### JSON + +JSON does not have a binary type, and this library does not introduce a new type as this would break conformance. +Instead, binary values are serialized as an object with two keys: `bytes` holds an array of integers, and `subtype` +is an integer or `null`. + +??? example + + Code: + + ```cpp + // create a binary value of subtype 42 + json j; + j["binary"] = json::binary({0xCA, 0xFE, 0xBA, 0xBE}, 42); + + // serialize to standard output + std::cout << j.dump(2) << std::endl; + ``` + + Output: + + ```json + { + "binary": { + "bytes": [202, 254, 186, 190], + "subtype": 42 + } + } + ``` + +!!! warning "No roundtrip for binary values" + + The JSON parser will not parse the objects generated by binary values back to binary values. This is by design to + remain standards compliant. Serializing binary values to JSON is only implemented for debugging purposes. + +### BJData + +[BJData](binary_formats/bjdata.md) neither supports binary values nor subtypes, and proposes to serialize binary values +as array of uint8 values. This translation is implemented by the library. + +??? example + + Code: + + ```cpp + // create a binary value of subtype 42 (will be ignored in BJData) + json j; + j["binary"] = json::binary({0xCA, 0xFE, 0xBA, 0xBE}, 42); + + // convert to BJData + auto v = json::to_bjdata(j); + ``` + + `v` is a `std::vector` with the following 20 elements: + + ```c + 0x7B // '{' + 0x69 0x06 // i 6 (length of the key) + 0x62 0x69 0x6E 0x61 0x72 0x79 // "binary" + 0x5B // '[' + 0x55 0xCA 0x55 0xFE 0x55 0xBA 0x55 0xBE // content (each byte prefixed with 'U') + 0x5D // ']' + 0x7D // '}' + ``` + + The following code uses the type and size optimization for UBJSON: + + ```cpp + // convert to UBJSON using the size and type optimization + auto v = json::to_bjdata(j, true, true); + ``` + + The resulting vector has 22 elements; the optimization is not effective for examples with few values: + + ```c + 0x7B // '{' + 0x23 0x69 0x01 // '#' 'i' type of the array elements: unsigned integers + 0x69 0x06 // i 6 (length of the key) + 0x62 0x69 0x6E 0x61 0x72 0x79 // "binary" + 0x5B // '[' array + 0x24 0x55 // '$' 'U' type of the array elements: unsigned integers + 0x23 0x69 0x04 // '#' i 4 number of array elements + 0xCA 0xFE 0xBA 0xBE // content + ``` + + Note that subtype (42) is **not** serialized and that UBJSON has **no binary type**, and deserializing `v` would + yield the following value: + + ```json + { + "binary": [202, 254, 186, 190] + } + ``` + +### BSON + +[BSON](binary_formats/bson.md) supports binary values and subtypes. If a subtype is given, it is used and added as +unsigned 8-bit integer. If no subtype is given, the generic binary subtype 0x00 is used. + +??? example + + Code: + + ```cpp + // create a binary value of subtype 42 + json j; + j["binary"] = json::binary({0xCA, 0xFE, 0xBA, 0xBE}, 42); + + // convert to BSON + auto v = json::to_bson(j); + ``` + + `v` is a `std::vector` with the following 22 elements: + + ```c + 0x16 0x00 0x00 0x00 // number of bytes in the document + 0x05 // binary value + 0x62 0x69 0x6E 0x61 0x72 0x79 0x00 // key "binary" + null byte + 0x04 0x00 0x00 0x00 // number of bytes + 0x2a // subtype + 0xCA 0xFE 0xBA 0xBE // content + 0x00 // end of the document + ``` + + Note that the serialization preserves the subtype, and deserializing `v` would yield the following value: + + ```json + { + "binary": { + "bytes": [202, 254, 186, 190], + "subtype": 42 + } + } + ``` + +### CBOR + +[CBOR](binary_formats/cbor.md) supports binary values, but no subtypes. Subtypes will be serialized as tags. Any binary +value will be serialized as byte strings. The library will choose the smallest representation using the length of the +byte array. + +??? example + + Code: + + ```cpp + // create a binary value of subtype 42 + json j; + j["binary"] = json::binary({0xCA, 0xFE, 0xBA, 0xBE}, 42); + + // convert to CBOR + auto v = json::to_cbor(j); + ``` + + `v` is a `std::vector` with the following 15 elements: + + ```c + 0xA1 // map(1) + 0x66 // text(6) + 0x62 0x69 0x6E 0x61 0x72 0x79 // "binary" + 0xD8 0x2A // tag(42) + 0x44 // bytes(4) + 0xCA 0xFE 0xBA 0xBE // content + ``` + + Note that the subtype is serialized as tag. However, parsing tagged values yield a parse error unless + `json::cbor_tag_handler_t::ignore` or `json::cbor_tag_handler_t::store` is passed to `json::from_cbor`. + + ```json + { + "binary": { + "bytes": [202, 254, 186, 190], + "subtype": null + } + } + ``` + +### MessagePack + +[MessagePack](binary_formats/messagepack.md) supports binary values and subtypes. If a subtype is given, the ext family +is used. The library will choose the smallest representation among fixext1, fixext2, fixext4, fixext8, ext8, ext16, and +ext32. The subtype is then added as signed 8-bit integer. + +If no subtype is given, the bin family (bin8, bin16, bin32) is used. + +??? example + + Code: + + ```cpp + // create a binary value of subtype 42 + json j; + j["binary"] = json::binary({0xCA, 0xFE, 0xBA, 0xBE}, 42); + + // convert to MessagePack + auto v = json::to_msgpack(j); + ``` + + `v` is a `std::vector` with the following 14 elements: + + ```c + 0x81 // fixmap1 + 0xA6 // fixstr6 + 0x62 0x69 0x6E 0x61 0x72 0x79 // "binary" + 0xD6 // fixext4 + 0x2A // subtype + 0xCA 0xFE 0xBA 0xBE // content + ``` + + Note that the serialization preserves the subtype, and deserializing `v` would yield the following value: + + ```json + { + "binary": { + "bytes": [202, 254, 186, 190], + "subtype": 42 + } + } + ``` + +### UBJSON + +[UBJSON](binary_formats/ubjson.md) neither supports binary values nor subtypes, and proposes to serialize binary values +as array of uint8 values. This translation is implemented by the library. + +??? example + + Code: + + ```cpp + // create a binary value of subtype 42 (will be ignored in UBJSON) + json j; + j["binary"] = json::binary({0xCA, 0xFE, 0xBA, 0xBE}, 42); + + // convert to UBJSON + auto v = json::to_ubjson(j); + ``` + + `v` is a `std::vector` with the following 20 elements: + + ```c + 0x7B // '{' + 0x69 0x06 // i 6 (length of the key) + 0x62 0x69 0x6E 0x61 0x72 0x79 // "binary" + 0x5B // '[' + 0x55 0xCA 0x55 0xFE 0x55 0xBA 0x55 0xBE // content (each byte prefixed with 'U') + 0x5D // ']' + 0x7D // '}' + ``` + + The following code uses the type and size optimization for UBJSON: + + ```cpp + // convert to UBJSON using the size and type optimization + auto v = json::to_ubjson(j, true, true); + ``` + + The resulting vector has 23 elements; the optimization is not effective for examples with few values: + + ```c + 0x7B // '{' + 0x24 // '$' type of the object elements + 0x5B // '[' array + 0x23 0x69 0x01 // '#' i 1 number of object elements + 0x69 0x06 // i 6 (length of the key) + 0x62 0x69 0x6E 0x61 0x72 0x79 // "binary" + 0x24 0x55 // '$' 'U' type of the array elements: unsigned integers + 0x23 0x69 0x04 // '#' i 4 number of array elements + 0xCA 0xFE 0xBA 0xBE // content + ``` + + Note that subtype (42) is **not** serialized and that UBJSON has **no binary type**, and deserializing `v` would + yield the following value: + + ```json + { + "binary": [202, 254, 186, 190] + } + ``` diff --git a/docs/mkdocs/docs/features/comments.md b/docs/mkdocs/docs/features/comments.md new file mode 100644 index 00000000..61266d9c --- /dev/null +++ b/docs/mkdocs/docs/features/comments.md @@ -0,0 +1,83 @@ +# Comments + +This library does not support comments *by default*. It does so for three reasons: + +1. Comments are not part of the [JSON specification](https://tools.ietf.org/html/rfc8259). You may argue that `//` or `/* */` are allowed in JavaScript, but JSON is not JavaScript. +2. This was not an oversight: Douglas Crockford [wrote on this](https://plus.google.com/118095276221607585885/posts/RK8qyGVaGSr) in May 2012: + + > I removed comments from JSON because I saw people were using them to hold parsing directives, a practice which would have destroyed interoperability. I know that the lack of comments makes some people sad, but it shouldn't. + + > Suppose you are using JSON to keep configuration files, which you would like to annotate. Go ahead and insert all the comments you like. Then pipe it through JSMin before handing it to your JSON parser. + +3. It is dangerous for interoperability if some libraries would add comment support while others don't. Please check [The Harmful Consequences of the Robustness Principle](https://tools.ietf.org/html/draft-iab-protocol-maintenance-01) on this. + +However, you can pass set parameter `ignore_comments` to `#!c true` in the parse function to ignore `//` or `/* */` comments. Comments will then be treated as whitespace. + +!!! example + + Consider the following JSON with comments. + + ```json + { + // update in 2006: removed Pluto + "planets": ["Mercury", "Venus", "Earth", "Mars", + "Jupiter", "Uranus", "Neptune" /*, "Pluto" */] + } + ``` + + When calling `parse` without additional argument, a parse error exception is thrown. If `ignore_comments` is set to `#! true`, the comments are ignored during parsing: + + ```cpp + #include + #include "json.hpp" + + using json = nlohmann::json; + + int main() + { + std::string s = R"( + { + // update in 2006: removed Pluto + "planets": ["Mercury", "Venus", "Earth", "Mars", + "Jupiter", "Uranus", "Neptune" /*, "Pluto" */] + } + )"; + + try + { + json j = json::parse(s); + } + catch (json::exception &e) + { + std::cout << e.what() << std::endl; + } + + json j = json::parse(s, + /* callback */ nullptr, + /* allow exceptions */ true, + /* ignore_comments */ true); + std::cout << j.dump(2) << '\n'; + } + ``` + + Output: + + ``` + [json.exception.parse_error.101] parse error at line 3, column 9: + syntax error while parsing object key - invalid literal; + last read: ' { /'; expected string literal + ``` + + ```json + { + "planets": [ + "Mercury", + "Venus", + "Earth", + "Mars", + "Jupiter", + "Uranus", + "Neptune" + ] + } + ``` diff --git a/docs/mkdocs/docs/features/element_access/checked_access.md b/docs/mkdocs/docs/features/element_access/checked_access.md new file mode 100644 index 00000000..c4023cce --- /dev/null +++ b/docs/mkdocs/docs/features/element_access/checked_access.md @@ -0,0 +1,91 @@ +# Checked access: at + +## Overview + +The [`at`](../../api/basic_json/at.md) member function performs checked access; that is, it returns a reference to the +desired value if it exists and throws a [`basic_json::out_of_range` exception](../../home/exceptions.md#out-of-range) +otherwise. + +??? example "Read access" + + Consider the following JSON value: + + ```json + { + "name": "Mary Smith", + "age": 42, + "hobbies": ["hiking", "reading"] + } + ``` + + Assume the value is parsed to a `json` variable `j`. + + | expression | value | + |-------------------------------|------------------------------------------------------------------------------| + | `#!cpp j` | `#!json {"name": "Mary Smith", "age": 42, "hobbies": ["hiking", "reading"]}` | + | `#!cpp j.at("name")` | `#!json "Mary Smith"` | + | `#!cpp j.at("age")` | `#!json 42` | + | `#!cpp j.at("hobbies")` | `#!json ["hiking", "reading"]` | + | `#!cpp j.at("hobbies").at(0)` | `#!json "hiking"` | + | `#!cpp j.at("hobbies").at(1)` | `#!json "reading"` | + +The return value is a reference, so it can be modified by the original value. + +??? example "Write access" + + ```cpp + j.at("name") = "John Smith"; + ``` + + This code produces the following JSON value: + + ```json + { + "name": "John Smith", + "age": 42, + "hobbies": ["hiking", "reading"] + } + ``` + +When accessing an invalid index (i.e., an index greater than or equal to the array size) or the passed object key is +non-existing, an exception is thrown. + +??? example "Accessing via invalid index or missing key" + + ```cpp + j.at("hobbies").at(3) = "cooking"; + ``` + + This code produces the following exception: + + ``` + [json.exception.out_of_range.401] array index 3 is out of range + ``` + + When you [extended diagnostic messages](../../home/exceptions.md#extended-diagnostic-messages) are enabled by + defining [`JSON_DIAGNOSTICS`](../../api/macros/json_diagnostics.md), the exception further gives information where + the key or index is missing or out of range. + + ``` + [json.exception.out_of_range.401] (/hobbies) array index 3 is out of range + ``` + +## Notes + + +!!! failure "Exceptions" + + - [`at`](../../api/basic_json/at.md) can only be used with objects (with a string argument) or with arrays (with a + numeric argument). For other types, a [`basic_json::type_error`](../../home/exceptions.md#jsonexceptiontype_error304) + is thrown. + - [`basic_json::out_of_range` exception](../../home/exceptions.md#out-of-range) exceptions are thrown if the + provided key is not found in an object or the provided index is invalid. + +## Summary + +| scenario | non-const value | const value | +|-----------------------------------|------------------------------------------------|------------------------------------------------| +| access to existing object key | reference to existing value is returned | const reference to existing value is returned | +| access to valid array index | reference to existing value is returned | const reference to existing value is returned | +| access to non-existing object key | `basic_json::out_of_range` exception is thrown | `basic_json::out_of_range` exception is thrown | +| access to invalid array index | `basic_json::out_of_range` exception is thrown | `basic_json::out_of_range` exception is thrown | diff --git a/docs/mkdocs/docs/features/element_access/default_value.md b/docs/mkdocs/docs/features/element_access/default_value.md new file mode 100644 index 00000000..02b4fea3 --- /dev/null +++ b/docs/mkdocs/docs/features/element_access/default_value.md @@ -0,0 +1,32 @@ +# Access with default value: value + +## Overview + +In many situations such as configuration files, missing values are not exceptional, but may be treated as if a default value was present. + +??? example + + Consider the following JSON value: + + ```json + { + "logOutput": "result.log", + "append": true + } + ``` + + Assume the value is parsed to a `json` variable `j`. + + | expression | value | + | ---------- | ----- | + | `#!cpp j` | `#!json {"logOutput": "result.log", "append": true}` | + | `#!cpp j.value("logOutput", "logfile.log")` | `#!json "result.log"` | + | `#!cpp j.value("append", true)` | `#!json true` | + | `#!cpp j.value("append", false)` | `#!json true` | + | `#!cpp j.value("logLevel", "verbose")` | `#!json "verbose"` | + +## Note + +!!! failure "Exceptions" + + - `value` can only be used with objects. For other types, a [`basic_json::type_error`](../../home/exceptions.md#jsonexceptiontype_error306) is thrown. diff --git a/docs/mkdocs/docs/features/element_access/index.md b/docs/mkdocs/docs/features/element_access/index.md new file mode 100644 index 00000000..0b39547e --- /dev/null +++ b/docs/mkdocs/docs/features/element_access/index.md @@ -0,0 +1,9 @@ +# Element Access + +There are many ways elements in a JSON value can be accessed: + +- unchecked access via [`operator[]`](unchecked_access.md) +- checked access via [`at`](checked_access.md) +- access with default value via [`value`](default_value.md) +- iterators +- JSON pointers diff --git a/docs/mkdocs/docs/features/element_access/unchecked_access.md b/docs/mkdocs/docs/features/element_access/unchecked_access.md new file mode 100644 index 00000000..39f06dc9 --- /dev/null +++ b/docs/mkdocs/docs/features/element_access/unchecked_access.md @@ -0,0 +1,112 @@ +# Unchecked access: operator[] + +## Overview + +Elements in a JSON object and a JSON array can be accessed via [`operator[]`](../../api/basic_json/operator%5B%5D.md) +similar to a `#!cpp std::map` and a `#!cpp std::vector`, respectively. + +??? example "Read access" + + Consider the following JSON value: + + ```json + { + "name": "Mary Smith", + "age": 42, + "hobbies": ["hiking", "reading"] + } + ``` + + Assume the value is parsed to a `json` variable `j`. + + | expression | value | + |-------------------------|------------------------------------------------------------------------------| + | `#!cpp j` | `#!json {"name": "Mary Smith", "age": 42, "hobbies": ["hiking", "reading"]}` | + | `#!cpp j["name"]` | `#!json "Mary Smith"` | + | `#!cpp j["age"]` | `#!json 42` | + | `#!cpp j["hobbies"]` | `#!json ["hiking", "reading"]` | + | `#!cpp j["hobbies"][0]` | `#!json "hiking"` | + | `#!cpp j["hobbies"][1]` | `#!json "reading"` | + +The return value is a reference, so it can modify the original value. In case the passed object key is non-existing, a +`#!json null` value is inserted which can be immediately be overwritten. + +??? example "Write access" + + ```cpp + j["name"] = "John Smith"; + j["maidenName"] = "Jones"; + ``` + + This code produces the following JSON value: + + ```json + { + "name": "John Smith", + "maidenName": "Jones", + "age": 42, + "hobbies": ["hiking", "reading"] + } + ``` + +When accessing an invalid index (i.e., an index greater than or equal to the array size), the JSON array is resized such +that the passed index is the new maximal index. Intermediate values are filled with `#!json null`. + +??? example "Filling up arrays with `#!json null` values" + + ```cpp + j["hobbies"][0] = "running"; + j["hobbies"][3] = "cooking"; + ``` + + This code produces the following JSON value: + + ```json + { + "name": "John Smith", + "maidenName": "Jones", + "age": 42, + "hobbies": ["running", "reading", null, "cooking"] + } + ``` + +## Notes + +!!! info "Design rationale" + + The library behaves differently to `#!cpp std::vector` and `#!cpp std::map`: + + - `#!cpp std::vector::operator[]` never inserts a new element. + - `#!cpp std::map::operator[]` is not available for const values. + + The type `#!cpp json` wraps all JSON value types. It would be impossible to remove + [`operator[]`](../../api/basic_json/operator%5B%5D.md) for const objects. At the same time, inserting elements for + non-const objects is really convenient as it avoids awkward `insert` calls. To this end, we decided to have an + inserting non-const behavior for both arrays and objects. + +!!! info + + The access is unchecked. In case the passed object key does not exist or the passed array index is invalid, no + exception is thrown. + +!!! danger + + - It is **undefined behavior** to access a const object with a non-existing key. + - It is **undefined behavior** to access a const array with an invalid index. + - In debug mode, an **assertion** will fire in both cases. You can disable assertions by defining the preprocessor + symbol `#!cpp NDEBUG` or redefine the macro [`JSON_ASSERT(x)`](../macros.md#json_assertx). See the documentation + on [runtime assertions](../assertions.md) for more information. + +!!! failure "Exceptions" + + `operator[]` can only be used with objects (with a string argument) or with arrays (with a numeric argument). For + other types, a [`basic_json::type_error`](../../home/exceptions.md#jsonexceptiontype_error305) is thrown. + +## Summary + +| scenario | non-const value | const value | +|-----------------------------------|------------------------------------------------------------------------------------------------------------------------------------------------------|-----------------------------------------------------------------------------| +| access to existing object key | reference to existing value is returned | const reference to existing value is returned | +| access to valid array index | reference to existing value is returned | const reference to existing value is returned | +| access to non-existing object key | reference to newly inserted `#!json null` value is returned | **undefined behavior**; [runtime assertion](../assertions.md) in debug mode | +| access to invalid array index | reference to newly inserted `#!json null` value is returned; any index between previous maximal index and passed index are filled with `#!json null` | **undefined behavior**; [runtime assertion](../assertions.md) in debug mode | diff --git a/docs/mkdocs/docs/features/enum_conversion.md b/docs/mkdocs/docs/features/enum_conversion.md new file mode 100644 index 00000000..1755bca2 --- /dev/null +++ b/docs/mkdocs/docs/features/enum_conversion.md @@ -0,0 +1,61 @@ +# Specializing enum conversion + +By default, enum values are serialized to JSON as integers. In some cases this could result in undesired behavior. If an +enum is modified or re-ordered after data has been serialized to JSON, the later de-serialized JSON data may be +undefined or a different enum value than was originally intended. + +It is possible to more precisely specify how a given enum is mapped to and from JSON as shown below: + +```cpp +// example enum type declaration +enum TaskState { + TS_STOPPED, + TS_RUNNING, + TS_COMPLETED, + TS_INVALID=-1, +}; + +// map TaskState values to JSON as strings +NLOHMANN_JSON_SERIALIZE_ENUM( TaskState, { + {TS_INVALID, nullptr}, + {TS_STOPPED, "stopped"}, + {TS_RUNNING, "running"}, + {TS_COMPLETED, "completed"}, +}) +``` + +The [`NLOHMANN_JSON_SERIALIZE_ENUM()` macro](../api/macros/nlohmann_json_serialize_enum.md) declares a set of +`to_json()` / `from_json()` functions for type `TaskState` while avoiding repetition and boilerplate serialization code. + +## Usage + +```cpp +// enum to JSON as string +json j = TS_STOPPED; +assert(j == "stopped"); + +// json string to enum +json j3 = "running"; +assert(j3.template get() == TS_RUNNING); + +// undefined json value to enum (where the first map entry above is the default) +json jPi = 3.14; +assert(jPi.template get() == TS_INVALID ); +``` + +## Notes + +Just as in [Arbitrary Type Conversions](arbitrary_types.md) above, + +- [`NLOHMANN_JSON_SERIALIZE_ENUM()`](../api/macros/nlohmann_json_serialize_enum.md) MUST be declared in your enum type's + namespace (which can be the global namespace), or the library will not be able to locate it, and it will default to + integer serialization. +- It MUST be available (e.g., proper headers must be included) everywhere you use the conversions. + +Other Important points: + +- When using `template get()`, undefined JSON values will default to the first pair specified in your map. Select this + default pair carefully. +- If an enum or JSON value is specified more than once in your map, the first matching occurrence from the top of the + map will be returned when converting to or from JSON. +- To disable the default serialization of enumerators as integers and force a compiler error instead, see [`JSON_DISABLE_ENUM_SERIALIZATION`](../api/macros/json_disable_enum_serialization.md). diff --git a/docs/mkdocs/docs/features/iterators.md b/docs/mkdocs/docs/features/iterators.md new file mode 100644 index 00000000..ce627e01 --- /dev/null +++ b/docs/mkdocs/docs/features/iterators.md @@ -0,0 +1,155 @@ +# Iterators + +## Overview + +A `basic_json` value is a container and allows access via iterators. Depending on the value type, `basic_json` stores zero or more values. + +As for other containers, `begin()` returns an iterator to the first value and `end()` returns an iterator to the value following the last value. The latter iterator is a placeholder and cannot be dereferenced. In case of null values, empty arrays, or empty objects, `begin()` will return `end()`. + +![Illustration from cppreference.com](../images/range-begin-end.svg) + +### Iteration order for objects + +When iterating over objects, values are ordered with respect to the `object_comparator_t` type which defaults to `std::less`. See the [types documentation](types/index.md#key-order) for more information. + +??? example + + ```cpp + // create JSON object {"one": 1, "two": 2, "three": 3} + json j; + j["one"] = 1; + j["two"] = 2; + j["three"] = 3; + + for (auto it = j.begin(); it != j.end(); ++it) + { + std::cout << *it << std::endl; + } + ``` + + Output: + + ```json + 1 + 3 + 2 + ``` + + The reason for the order is the lexicographic ordering of the object keys "one", "three", "two". + +### Access object key during iteration + +The JSON iterators have two member functions, `key()` and `value()` to access the object key and stored value, respectively. When calling `key()` on a non-object iterator, an [invalid_iterator.207](../home/exceptions.md#jsonexceptioninvalid_iterator207) exception is thrown. + +??? example + + ```cpp + // create JSON object {"one": 1, "two": 2, "three": 3} + json j; + j["one"] = 1; + j["two"] = 2; + j["three"] = 3; + + for (auto it = j.begin(); it != j.end(); ++it) + { + std::cout << it.key() << " : " << it.value() << std::endl; + } + ``` + + Output: + + ```json + one : 1 + three : 3 + two : 2 + ``` + +### Range-based for loops + +C++11 allows using range-based for loops to iterate over a container. + +```cpp +for (auto it : j_object) +{ + // "it" is of type json::reference and has no key() member + std::cout << "value: " << it << '\n'; +} +``` + +For this reason, the `items()` function allows accessing `iterator::key()` and `iterator::value()` during range-based for loops. In these loops, a reference to the JSON values is returned, so there is no access to the underlying iterator. + +```cpp +for (auto& el : j_object.items()) +{ + std::cout << "key: " << el.key() << ", value:" << el.value() << '\n'; +} +``` + +The items() function also allows using structured bindings (C++17): + +```cpp +for (auto& [key, val] : j_object.items()) +{ + std::cout << "key: " << key << ", value:" << val << '\n'; +} +``` + +!!! note + + When iterating over an array, `key()` will return the index of the element as string. For primitive types (e.g., numbers), `key()` returns an empty string. + +!!! warning + + Using `items()` on temporary objects is dangerous. Make sure the object's lifetime exceeds the iteration. See for more information. + +### Reverse iteration order + +`rbegin()` and `rend()` return iterators in the reverse sequence. + +![Illustration from cppreference.com](../images/range-rbegin-rend.svg) + +??? example + + ```cpp + json j = {1, 2, 3, 4}; + + for (auto it = j.rbegin(); it != j.rend(); ++it) + { + std::cout << *it << std::endl; + } + ``` + + Output: + + ```json + 4 + 3 + 2 + 1 + ``` + +### Iterating strings and binary values + +Note that "value" means a JSON value in this setting, not values stored in the underlying containers. That is, `*begin()` returns the complete string or binary array and is also safe the underlying string or binary array is empty. + +??? example + + ```cpp + json j = "Hello, world"; + for (auto it = j.begin(); it != j.end(); ++it) + { + std::cout << *it << std::endl; + } + ``` + + Output: + + ```json + "Hello, world" + ``` + +## Iterator invalidation + +| Operations | invalidated iterators | +|------------|-----------------------| +| `clear` | all | diff --git a/docs/mkdocs/docs/features/json_patch.md b/docs/mkdocs/docs/features/json_patch.md new file mode 100644 index 00000000..88c731a2 --- /dev/null +++ b/docs/mkdocs/docs/features/json_patch.md @@ -0,0 +1,47 @@ +# JSON Patch and Diff + +## Patches + +JSON Patch ([RFC 6902](https://tools.ietf.org/html/rfc6902)) defines a JSON document structure for expressing a sequence +of operations to apply to a JSON document. With the `patch` function, a JSON Patch is applied to the current JSON value +by executing all operations from the patch. + +??? example + + The following code shows how a JSON patch is applied to a value. + + ```cpp + --8<-- "examples/patch.cpp" + ``` + + Output: + + ```json + --8<-- "examples/patch.output" + ``` + +## Diff + +The library can also calculate a JSON patch (i.e., a **diff**) given two JSON values. + +!!! success "Invariant" + + For two JSON values *source* and *target*, the following code yields always true: + + ```cüü + source.patch(diff(source, target)) == target; + ``` + +??? example + + The following code shows how a JSON patch is created as a diff for two JSON values. + + ```cpp + --8<-- "examples/diff.cpp" + ``` + + Output: + + ```json + --8<-- "examples/diff.output" + ``` diff --git a/docs/mkdocs/docs/features/json_pointer.md b/docs/mkdocs/docs/features/json_pointer.md new file mode 100644 index 00000000..04aeca50 --- /dev/null +++ b/docs/mkdocs/docs/features/json_pointer.md @@ -0,0 +1,126 @@ +# JSON Pointer + +## Introduction + +The library supports **JSON Pointer** ([RFC 6901](https://tools.ietf.org/html/rfc6901)) as alternative means to address +structured values. A JSON Pointer is a string that identifies a specific value within a JSON document. + +Consider the following JSON document + +```json +{ + "array": ["A", "B", "C"], + "nested": { + "one": 1, + "two": 2, + "three": [true, false] + } +} +``` + +Then every value inside the JSON document can be identified as follows: + +| JSON Pointer | JSON value | +|-------------------|----------------------------------------------------------------------------------| +| `` | `#!json {"array":["A","B","C"],"nested":{"one":1,"two":2,"three":[true,false]}}` | +| `/array` | `#!json ["A","B","C"]` | +| `/array/0` | `#!json A` | +| `/array/1` | `#!json B` | +| `/array/2` | `#!json C` | +| `/nested` | `#!json {"one":1,"two":2,"three":[true,false]}` | +| `/nested/one` | `#!json 1` | +| `/nested/two` | `#!json 2` | +| `/nested/three` | `#!json [true,false]` | +| `/nested/three/0` | `#!json true` | +| `/nested/three/1` | `#!json false` | + +Note `/` does not identify the root (i.e., the whole document), but an object entry with empty key `""`. See +[RFC 6901](https://tools.ietf.org/html/rfc6901) for more information. + +## JSON Pointer creation + +JSON Pointers can be created from a string: + +```cpp +json::json_pointer p = "/nested/one"; +``` + +Furthermore, a user-defined string literal can be used to achieve the same result: + +```cpp +auto p = "/nested/one"_json_pointer; +``` + +The escaping rules of [RFC 6901](https://tools.ietf.org/html/rfc6901) are implemented. See the +[constructor documentation](../api/json_pointer/json_pointer.md) for more information. + +## Value access + +JSON Pointers can be used in the [`at`](../api/basic_json/at.md), [`operator[]`](../api/basic_json/operator%5B%5D.md), +and [`value`](../api/basic_json/value.md) functions just like object keys or array indices. + +```cpp +// the JSON value from above +auto j = json::parse(R"({ + "array": ["A", "B", "C"], + "nested": { + "one": 1, + "two": 2, + "three": [true, false] + } +})"); + +// access values +auto val = j["/"_json_pointer]; // {"array":["A","B","C"],...} +auto val1 = j["/nested/one"_json_pointer]; // 1 +auto val2 = j.at[json::json_pointer("/nested/three/1")]; // false +auto val3 = j.value[json::json_pointer("/nested/four", 0)]; // 0 +``` + +## Flatten / unflatten + +The library implements a function [`flatten`](../api/basic_json/flatten.md) to convert any JSON document into a JSON +object where each key is a JSON Pointer and each value is a primitive JSON value (i.e., a string, boolean, number, or +null). + +```cpp +// the JSON value from above +auto j = json::parse(R"({ + "array": ["A", "B", "C"], + "nested": { + "one": 1, + "two": 2, + "three": [true, false] + } +})"); + +// create flattened value +auto j_flat = j.flatten(); +``` + +The resulting value `j_flat` is: + +```json +{ + "/array/0": "A", + "/array/1": "B", + "/array/2": "C", + "/nested/one": 1, + "/nested/two": 2, + "/nested/three/0": true, + "/nested/three/1": false +} +``` + +The reverse function, [`unflatten`](../api/basic_json/unflatten.md) recreates the original value. + +```cpp +auto j_original = j_flat.unflatten(); +``` + +## See also + +- Class [`json_pointer`](../api/json_pointer/index.md) +- Function [`flatten`](../api/basic_json/flatten.md) +- Function [`unflatten`](../api/basic_json/unflatten.md) +- [JSON Patch](json_patch.md) diff --git a/docs/mkdocs/docs/features/macros.md b/docs/mkdocs/docs/features/macros.md new file mode 100644 index 00000000..926741b0 --- /dev/null +++ b/docs/mkdocs/docs/features/macros.md @@ -0,0 +1,167 @@ +# Supported Macros + +Some aspects of the library can be configured by defining preprocessor macros before including the `json.hpp` header. +See also the [API documentation for macros](../api/macros/index.md) for examples and more information. + +## `JSON_ASSERT(x)` + +This macro controls which code is executed for [runtime assertions](assertions.md) of the library. + +See [full documentation of `JSON_ASSERT(x)`](../api/macros/json_assert.md). + +## `JSON_CATCH_USER(exception)` + +This macro overrides [`#!cpp catch`](https://en.cppreference.com/w/cpp/language/try_catch) calls inside the library. + +See [full documentation of `JSON_CATCH_USER(exception)`](../api/macros/json_throw_user.md). + +## `JSON_DIAGNOSTICS` + +This macro enables extended diagnostics for exception messages. Possible values are `1` to enable or `0` to disable +(default). + +When enabled, exception messages contain a [JSON Pointer](json_pointer.md) to the JSON value that triggered the +exception, see [Extended diagnostic messages](../home/exceptions.md#extended-diagnostic-messages) for an example. Note +that enabling this macro increases the size of every JSON value by one pointer and adds some runtime overhead. + +The diagnostics messages can also be controlled with the CMake option `JSON_Diagnostics` (`OFF` by default) which sets +`JSON_DIAGNOSTICS` accordingly. + +See [full documentation of `JSON_DIAGNOSTICS`](../api/macros/json_diagnostics.md). + +## `JSON_HAS_CPP_11`, `JSON_HAS_CPP_14`, `JSON_HAS_CPP_17`, `JSON_HAS_CPP_20` + +The library targets C++11, but also supports some features introduced in later C++ versions (e.g., `std::string_view` +support for C++17). For these new features, the library implements some preprocessor checks to determine the C++ +standard. By defining any of these symbols, the internal check is overridden and the provided C++ version is +unconditionally assumed. This can be helpful for compilers that only implement parts of the standard and would be +detected incorrectly. + +See [full documentation of `JSON_HAS_CPP_11`, `JSON_HAS_CPP_14`, `JSON_HAS_CPP_17`, and `JSON_HAS_CPP_20`](../api/macros/json_has_cpp_11.md). + +## `JSON_HAS_FILESYSTEM`, `JSON_HAS_EXPERIMENTAL_FILESYSTEM` + +When compiling with C++17, the library provides conversions from and to `std::filesystem::path`. As compiler support +for filesystem is limited, the library tries to detect whether ``/`std::filesystem` (`JSON_HAS_FILESYSTEM`) +or ``/`std::experimental::filesystem` (`JSON_HAS_EXPERIMENTAL_FILESYSTEM`) should be used. +To override the built-in check, define `JSON_HAS_FILESYSTEM` or `JSON_HAS_EXPERIMENTAL_FILESYSTEM` to `1`. + +See [full documentation of `JSON_HAS_FILESYSTEM` and `JSON_HAS_EXPERIMENTAL_FILESYSTEM`](../api/macros/json_has_filesystem.md). + +## `JSON_NOEXCEPTION` + +Exceptions can be switched off by defining the symbol `JSON_NOEXCEPTION`. + +See [full documentation of `JSON_NOEXCEPTION`](../api/macros/json_noexception.md). + +## `JSON_DISABLE_ENUM_SERIALIZATION` + +When defined, default parse and serialize functions for enums are excluded and have to be provided by the user, for example, using [`NLOHMANN_JSON_SERIALIZE_ENUM`](../api/macros/nlohmann_json_serialize_enum.md). + +See [full documentation of `JSON_DISABLE_ENUM_SERIALIZATION`](../api/macros/json_disable_enum_serialization.md). + +## `JSON_NO_IO` + +When defined, headers ``, ``, ``, ``, and `` are not included and parse functions +relying on these headers are excluded. This is relevant for environment where these I/O functions are disallowed for +security reasons (e.g., Intel Software Guard Extensions (SGX)). + +See [full documentation of `JSON_NO_IO`](../api/macros/json_no_io.md). + +## `JSON_SKIP_LIBRARY_VERSION_CHECK` + +When defined, the library will not create a compiler warning when a different version of the library was already +included. + +See [full documentation of `JSON_SKIP_LIBRARY_VERSION_CHECK`](../api/macros/json_skip_library_version_check.md). + +## `JSON_SKIP_UNSUPPORTED_COMPILER_CHECK` + +When defined, the library will not create a compile error when a known unsupported compiler is detected. This allows to +use the library with compilers that do not fully support C++11 and may only work if unsupported features are not used. + +See [full documentation of `JSON_SKIP_UNSUPPORTED_COMPILER_CHECK`](../api/macros/json_skip_unsupported_compiler_check.md). + +## `JSON_THROW_USER(exception)` + +This macro overrides `#!cpp throw` calls inside the library. The argument is the exception to be thrown. + +See [full documentation of `JSON_THROW_USER(exception)`](../api/macros/json_throw_user.md). + +## `JSON_TRY_USER` + +This macro overrides `#!cpp try` calls inside the library. + +See [full documentation of `JSON_TRY_USER`](../api/macros/json_throw_user.md). + +## `JSON_USE_IMPLICIT_CONVERSIONS` + +When defined to `0`, implicit conversions are switched off. By default, implicit conversions are switched on. + +See [full documentation of `JSON_USE_IMPLICIT_CONVERSIONS`](../api/macros/json_use_implicit_conversions.md). + +## `NLOHMANN_DEFINE_TYPE_INTRUSIVE(type, member...)` + +This macro can be used to simplify the serialization/deserialization of types if (1) want to use a JSON object as +serialization and (2) want to use the member variable names as object keys in that object. + +The macro is to be defined inside the class/struct to create code for. Unlike +[`NLOHMANN_DEFINE_TYPE_NON_INTRUSIVE`](#nlohmann_define_type_non_intrusivetype-member), it can access private members. +The first parameter is the name of the class/struct, and all remaining parameters name the members. + +See [full documentation of `NLOHMANN_DEFINE_TYPE_INTRUSIVE`](../api/macros/nlohmann_define_type_intrusive.md). + +## `NLOHMANN_DEFINE_TYPE_INTRUSIVE_WITH_DEFAULT(type, member...)` + +This macro is similar to `NLOHMANN_DEFINE_TYPE_INTRUSIVE`. It will not throw an exception in `from_json()` due to a +missing value in the JSON object, but can throw due to a mismatched type. The `from_json()` function default constructs +an object and uses its values as the defaults when calling the [`value`](../api/basic_json/value.md) function. + +See [full documentation of `NLOHMANN_DEFINE_TYPE_INTRUSIVE_WITH_DEFAULT`](../api/macros/nlohmann_define_type_intrusive.md). + +## `NLOHMANN_DEFINE_TYPE_INTRUSIVE_ONLY_SERIALIZE(type, member...)` + +This macro is similar to `NLOHMANN_DEFINE_TYPE_INTRUSIVE` except that it defines only the serialization code. This is +useful when the user type does not have a default constructor and only the serialization is required. + +See [full documentation of `NLOHMANN_DEFINE_TYPE_INTRUSIVE_ONLY_SERIALIZE`](../api/macros//nlohmann_define_type_intrusive.md). + +## `NLOHMANN_DEFINE_TYPE_NON_INTRUSIVE(type, member...)` + +This macro can be used to simplify the serialization/deserialization of types if (1) want to use a JSON object as +serialization and (2) want to use the member variable names as object keys in that object. + +The macro is to be defined inside the namespace of the class/struct to create code for. Private members cannot be +accessed. Use [`NLOHMANN_DEFINE_TYPE_INTRUSIVE`](#nlohmann_define_type_intrusivetype-member) in these scenarios. The +first parameter is the name of the class/struct, and all remaining parameters name the members. + +See [full documentation of `NLOHMANN_DEFINE_TYPE_NON_INTRUSIVE`](../api/macros/nlohmann_define_type_non_intrusive.md). + +## `NLOHMANN_DEFINE_TYPE_NON_INTRUSIVE_WITH_DEFAULT(type, member...)` + +This macro is similar to `NLOHMANN_DEFINE_TYPE_NON_INTRUSIVE`. It will not throw an exception in `from_json()` due to a +missing value in the JSON object, but can throw due to a mismatched type. The `from_json()` function default constructs +an object and uses its values as the defaults when calling the [`value`](../api/basic_json/value.md) function. + +See [full documentation of `NLOHMANN_DEFINE_TYPE_NON_INTRUSIVE_WITH_DEFAULT`](../api/macros/nlohmann_define_type_non_intrusive.md). + +## `NLOHMANN_DEFINE_TYPE_NON_INTRUSIVE_ONLY_SERIALIZE(type, member...)` + +This macro is similar to `NLOHMANN_DEFINE_TYPE_NON_INTRUSIVE` except that it defines only the serialization code. This is +useful when the user type does not have a default constructor and only the serialization is required. + +See [full documentation of `NLOHMANN_DEFINE_TYPE_NON_INTRUSIVE_ONLY_SERIALIZE`](../api/macros//nlohmann_define_type_non_intrusive.md). + +## `NLOHMANN_JSON_SERIALIZE_ENUM(type, ...)` + +This macro simplifies the serialization/deserialization of enum types. See +[Specializing enum conversion](enum_conversion.md) for more information. + +See [full documentation of `NLOHMANN_JSON_SERIALIZE_ENUM`](../api/macros/nlohmann_json_serialize_enum.md). + +## `NLOHMANN_JSON_VERSION_MAJOR`, `NLOHMANN_JSON_VERSION_MINOR`, `NLOHMANN_JSON_VERSION_PATCH` + +These macros are defined by the library and contain the version numbers according to +[Semantic Versioning 2.0.0](https://semver.org/spec/v2.0.0.html). + +See [full documentation of `NLOHMANN_JSON_VERSION_MAJOR`, `NLOHMANN_JSON_VERSION_MINOR`, and `NLOHMANN_JSON_VERSION_PATCH`](../api/macros/nlohmann_json_version_major.md). diff --git a/docs/mkdocs/docs/features/merge_patch.md b/docs/mkdocs/docs/features/merge_patch.md new file mode 100644 index 00000000..84e0ab02 --- /dev/null +++ b/docs/mkdocs/docs/features/merge_patch.md @@ -0,0 +1,20 @@ +# JSON Merge Patch + +The library supports JSON Merge Patch ([RFC 7386](https://tools.ietf.org/html/rfc7386)) as a patch format. +The merge patch format is primarily intended for use with the HTTP PATCH method as a means of describing a set of modifications to a target resource's content. This function applies a merge patch to the current JSON value. + +Instead of using [JSON Pointer](json_pointer.md) to specify values to be manipulated, it describes the changes using a syntax that closely mimics the document being modified. + +??? example + + The following code shows how a JSON Merge Patch is applied to a JSON document. + + ```cpp + --8<-- "examples/merge_patch.cpp" + ``` + + Output: + + ```json + --8<-- "examples/merge_patch.output" + ``` diff --git a/docs/mkdocs/docs/features/namespace.md b/docs/mkdocs/docs/features/namespace.md new file mode 100644 index 00000000..8cee2ccf --- /dev/null +++ b/docs/mkdocs/docs/features/namespace.md @@ -0,0 +1,93 @@ +# `nlohmann` Namespace + +The 3.11.0 release introduced an +[inline namespace](https://en.cppreference.com/w/cpp/language/namespace#Inline_namespaces) to allow different parts of +a codebase to safely use different versions of the JSON library as long as they never exchange instances of library +types. + +## Structure + +The complete default namespace name is derived as follows: + +- The root namespace is always `nlohmann`. +- The inline namespace starts with `json_abi` and is followed by serveral optional ABI tags according to the value of + these ABI-affecting macros, in order: + - [`JSON_DIAGNOSTICS`](../api/macros/json_diagnostics.md) defined non-zero appends `_diag`. + - [`JSON_USE_LEGACY_DISCARDED_VALUE_COMPARISON`](../api/macros/json_use_legacy_discarded_value_comparison.md) + defined non-zero appends `_ldvcmp`. +- The inline namespace ends with the suffix `_v` followed by the 3 components of the version number separated by + underscores. To omit the version component, see [Disabling the version component](#disabling-the-version-component) + below. + +For example, the namespace name for version 3.11.2 with `JSON_DIAGNOSTICS` defined to `1` is: + +```cpp +nlohmann::json_abi_diag_v3_11_2 +``` + +## Purpose + +Several incompatibilities have been observed. Amongst the most common ones is linking code compiled with different +definitions of [`JSON_DIAGNOSTICS`](../api/macros/json_diagnostics.md). This is illustrated in the diagram below. + +```plantuml +[**nlohmann_json (v3.10.5)**\nJSON_DIAGNOSTICS=0] as [json] +[**nlohmann_json (v3.10.5)**\nJSON_DIAGNOSTICS=1] as [json_diag] +[**some_library**] as [library] +[**application**] as [app] + +[library] ..|> [json] +[app] ..|> [json_diag] +[app] ..|>[library] +``` + +In releases prior to 3.11.0, mixing any version of the JSON library with different `JSON_DIAGNOSTICS` settings would +result in a crashing application. If `some_library` never passes instances of JSON library types to the application, +this scenario became safe in version 3.11.0 and above due to the inline namespace yielding distinct symbol names. + +## Limitations + +Neither the compiler nor the linker will issue as much as a warning when translation units – intended to be linked +together and that include different versions and/or configurations of the JSON library – exchange and use library +types. + +There is an exception when forward declarations are used (i.e., when including `json_fwd.hpp`) in which case the linker +may complain about undefined references. + +## Disabling the version component + +Different versions are not necessarily ABI-incompatible, but the project does not actively track changes in the ABI and +recommends that all parts of a codebase exchanging library types be built with the same version. Users can, **at their +own risk**, disable the version component of the linline namespace, allowing different versions – but not +configurations – to be used in cases where the linker would otherwise output undefined reference errors. + +To do so, define [`NLOHMANN_JSON_NAMESPACE_NO_VERSION`](../api/macros/nlohmann_json_namespace_no_version.md) to `1`. + +This applies to version 3.11.2 and above only, versions 3.11.0 and 3.11.1 can apply the technique described in the next +section to emulate the effect of the `NLOHMANN_JSON_NAMESPACE_NO_VERSION` macro. + +!!! danger "Use at your own risk" + + Disabling the namespace version component and mixing ABI-incompatible versions will result in crashes or incorrect + behavior. You have been warned! +## Disabling the inline namespace completely + +When interoperability with code using a pre-3.11.0 version of the library is required, users can, **at their own risk** +restore the old namespace layout by redefining +[`NLOHMANN_JSON_NAMESPACE_BEGIN, NLOHMANN_JSON_NAMESPACE_END`](../api/macros/nlohmann_json_namespace_begin.md) as +follows: + +```cpp +#define NLOHMANN_JSON_NAMESPACE_BEGIN namespace nlohmann { +#define NLOHMANN_JSON_NAMESPACE_END } +``` + +!!! danger "Use at your own risk" + + Overriding the namespace and mixing ABI-incompatible versions will result in crashes or incorrect behavior. You + have been warned! + +## Version history + +- Introduced inline namespace (`json_v3_11_0[_abi-tag]*`) in version 3.11.0. +- Changed structure of inline namespace in version 3.11.2. diff --git a/docs/mkdocs/docs/features/object_order.md b/docs/mkdocs/docs/features/object_order.md new file mode 100644 index 00000000..3ee16a90 --- /dev/null +++ b/docs/mkdocs/docs/features/object_order.md @@ -0,0 +1,109 @@ +# Object Order + +The [JSON standard](https://tools.ietf.org/html/rfc8259.html) defines objects as "an unordered collection of zero or more name/value pairs". As such, an implementation does not need to preserve any specific order of object keys. + +## Default behavior: sort keys + +The default type `nlohmann::json` uses a `std::map` to store JSON objects, and thus stores object keys **sorted alphabetically**. + +??? example + + ```cpp + #include + #include "json.hpp" + + using json = nlohmann::json; + + int main() + { + json j; + j["one"] = 1; + j["two"] = 2; + j["three"] = 3; + + std::cout << j.dump(2) << '\n'; + } + ``` + + Output: + + ```json + { + "one": 1, + "three": 3, + "two": 2 + } + ``` + +## Alternative behavior: preserve insertion order + +If you do want to preserve the **insertion order**, you can try the type [`nlohmann::ordered_json`](https://github.com/nlohmann/json/issues/2179). + +??? example + + ```cpp + --8<-- "examples/ordered_json.cpp" + ``` + + Output: + + ```json + --8<-- "examples/ordered_json.output" + ``` + +Alternatively, you can use a more sophisticated ordered map like [`tsl::ordered_map`](https://github.com/Tessil/ordered-map) ([integration](https://github.com/nlohmann/json/issues/546#issuecomment-304447518)) or [`nlohmann::fifo_map`](https://github.com/nlohmann/fifo_map) ([integration](https://github.com/nlohmann/json/issues/485#issuecomment-333652309)). + +### Notes on parsing + +Note that you also need to call the right [`parse`](../api/basic_json/parse.md) function when reading from a file. +Assume file `input.json` contains the JSON object above: + +```json +{ + "one": 1, + "two": 2, + "three": 3 +} +``` + +!!! success "Right way" + + The following code correctly calls the `parse` function from `nlohmann::ordered_json`: + + ```cpp + std::ifstream i("input.json"); + auto j = nlohmann::ordered_json::parse(i); + std::cout << j.dump(2) << std::endl; + ``` + + The output will be: + + ```json + { + "one": 1, + "two": 2, + "three": 3 + } + ``` + +??? failure "Wrong way" + + The following code incorrectly calls the `parse` function from `nlohmann::json` which does not preserve the + insertion order, but sorts object keys. Assigning the result to `nlohmann::ordered_json` compiles, but does not + restore the order from the input file. + + ```cpp + std::ifstream i("input.json"); + nlohmann::ordered_json j = nlohmann::json::parse(i); + std::cout << j.dump(2) << std::endl; + ``` + + The output will be: + + ```json + { + "one": 1, + "three": 3 + "two": 2, + } + ``` diff --git a/docs/mkdocs/docs/features/parsing/index.md b/docs/mkdocs/docs/features/parsing/index.md new file mode 100644 index 00000000..29493520 --- /dev/null +++ b/docs/mkdocs/docs/features/parsing/index.md @@ -0,0 +1,13 @@ +# Parsing + +!!! note + + This page is under construction. + +## Input + +## SAX vs. DOM parsing + +## Exceptions + +See [parsing and exceptions](parse_exceptions.md). diff --git a/docs/mkdocs/docs/features/parsing/json_lines.md b/docs/mkdocs/docs/features/parsing/json_lines.md new file mode 100644 index 00000000..659d3179 --- /dev/null +++ b/docs/mkdocs/docs/features/parsing/json_lines.md @@ -0,0 +1,49 @@ +# JSON Lines + +The [JSON Lines](https://jsonlines.org) format is a text format of newline-delimited JSON. In particular: + +1. The input must be UTF-8 encoded. +2. Every line must be a valid JSON value. +3. The line separator must be `\n`. As `\r` is silently ignored, `\r\n` is also supported. +4. The final character may be `\n`, but is not required to be one. + +!!! example "JSON Text example" + + ```json + {"name": "Gilbert", "wins": [["straight", "7♣"], ["one pair", "10♥"]]} + {"name": "Alexa", "wins": [["two pair", "4♠"], ["two pair", "9♠"]]} + {"name": "May", "wins": []} + {"name": "Deloise", "wins": [["three of a kind", "5♣"]]} + ``` + +JSON Lines input with more than one value is treated as invalid JSON by the [`parse`](../../api/basic_json/parse.md) or +[`accept`](../../api/basic_json/accept.md) functions. To process it line by line, functions like +[`std::getline`](https://en.cppreference.com/w/cpp/string/basic_string/getline) can be used: + +!!! example "Example: Parse JSON Text input line by line" + + The example below demonstrates how JSON Lines can be processed. + + ```cpp + --8<-- "examples/json_lines.cpp" + ``` + + Output: + + ```json + --8<-- "examples/json_lines.output" + ``` + +!!! warning "Note" + + Using [`operator>>`](../../api/operator_gtgt.md) like + + ```cpp + json j; + while (input >> j) + { + std::cout << j << std::endl; + } + ``` + + with a JSON Lines input does not work, because the parser will try to parse one value after the last one. diff --git a/docs/mkdocs/docs/features/parsing/parse_exceptions.md b/docs/mkdocs/docs/features/parsing/parse_exceptions.md new file mode 100644 index 00000000..61c0ff29 --- /dev/null +++ b/docs/mkdocs/docs/features/parsing/parse_exceptions.md @@ -0,0 +1,121 @@ +# Parsing and Exceptions + +When the input is not valid JSON, an exception of type [`parse_error`](../../home/exceptions.md#parse-errors) is thrown. +This exception contains the position in the input where the error occurred, together with a diagnostic message and the +last read input token. The exceptions page contains a +[list of examples for parse error exceptions](../../home/exceptions.md#parse-errors). In case you process untrusted +input, always enclose your code with a `#!cpp try`/`#!cpp catch` block, like + +```cpp +json j; +try +{ + j = json::parse(my_input); +} +catch (json::parse_error& ex) +{ + std::cerr << "parse error at byte " << ex.byte << std::endl; +} +``` + +In case exceptions are undesired or not supported by the environment, there are different ways to proceed: + + +## Switch off exceptions + +The `parse()` function accepts a `#!cpp bool` parameter `allow_exceptions` which controls whether an exception is +thrown when a parse error occurs (`#!cpp true`, default) or whether a discarded value should be returned +(`#!cpp false`). + +```cpp +json j = json::parse(my_input, nullptr, false); +if (j.is_discarded()) +{ + std::cerr << "parse error" << std::endl; +} +``` + +Note there is no diagnostic information available in this scenario. + +## Use accept() function + +Alternatively, function `accept()` can be used which does not return a `json` value, but a `#!cpp bool` indicating +whether the input is valid JSON. + +```cpp +if (!json::accept(my_input)) +{ + std::cerr << "parse error" << std::endl; +} +``` + +Again, there is no diagnostic information available. + + +## User-defined SAX interface + +Finally, you can implement the [SAX interface](sax_interface.md) and decide what should happen in case of a parse error. + +This function has the following interface: + +```cpp +bool parse_error(std::size_t position, + const std::string& last_token, + const json::exception& ex); +``` + +The return value indicates whether the parsing should continue, so the function should usually return `#!cpp false`. + +??? example + + ```cpp + #include + #include "json.hpp" + + using json = nlohmann::json; + + class sax_no_exception : public nlohmann::detail::json_sax_dom_parser + { + public: + sax_no_exception(json& j) + : nlohmann::detail::json_sax_dom_parser(j, false) + {} + + bool parse_error(std::size_t position, + const std::string& last_token, + const json::exception& ex) + { + std::cerr << "parse error at input byte " << position << "\n" + << ex.what() << "\n" + << "last read: \"" << last_token << "\"" + << std::endl; + return false; + } + }; + + int main() + { + std::string myinput = "[1,2,3,]"; + + json result; + sax_no_exception sax(result); + + bool parse_result = json::sax_parse(myinput, &sax); + if (!parse_result) + { + std::cerr << "parsing unsuccessful!" << std::endl; + } + + std::cout << "parsed value: " << result << std::endl; + } + ``` + + Output: + + ``` + parse error at input byte 8 + [json.exception.parse_error.101] parse error at line 1, column 8: syntax error while parsing value - unexpected ']'; expected '[', '{', or a literal + last read: "3,]" + parsing unsuccessful! + parsed value: [1,2,3] + ``` diff --git a/docs/mkdocs/docs/features/parsing/parser_callbacks.md b/docs/mkdocs/docs/features/parsing/parser_callbacks.md new file mode 100644 index 00000000..ef076d12 --- /dev/null +++ b/docs/mkdocs/docs/features/parsing/parser_callbacks.md @@ -0,0 +1,83 @@ +# Parser Callbacks + +## Overview + +With a parser callback function, the result of parsing a JSON text can be influenced. When passed to `parse`, it is +called on certain events (passed as `parse_event_t` via parameter `event`) with a set recursion depth `depth` and +context JSON value `parsed`. The return value of the callback function is a boolean indicating whether the element that +emitted the callback shall be kept or not. + +The type of the callback function is: + +```cpp +template +using parser_callback_t = + std::function; +``` + + +## Callback event types + +We distinguish six scenarios (determined by the event type) in which the callback function can be called. The following +table describes the values of the parameters `depth`, `event`, and `parsed`. + +| parameter `event` | description | parameter `depth` | parameter `parsed` | +|-------------------------------|-----------------------------------------------------------|-------------------------------------------|----------------------------------| +| `parse_event_t::object_start` | the parser read `{` and started to process a JSON object | depth of the parent of the JSON object | a JSON value with type discarded | +| `parse_event_t::key` | the parser read a key of a value in an object | depth of the currently parsed JSON object | a JSON string containing the key | +| `parse_event_t::object_end` | the parser read `}` and finished processing a JSON object | depth of the parent of the JSON object | the parsed JSON object | +| `parse_event_t::array_start` | the parser read `[` and started to process a JSON array | depth of the parent of the JSON array | a JSON value with type discarded | +| `parse_event_t::array_end` | the parser read `]` and finished processing a JSON array | depth of the parent of the JSON array | the parsed JSON array | +| `parse_event_t::value` | the parser finished reading a JSON value | depth of the value | the parsed JSON value | + +??? example + + When parsing the following JSON text, + + ```json + { + "name": "Berlin", + "location": [ + 52.519444, + 13.406667 + ] + } + ``` + + these calls are made to the callback function: + + | event | depth | parsed | + | -------------- | ----- | ------ | + | `object_start` | 0 | *discarded* | + | `key` | 1 | `#!json "name"` | + | `value` | 1 | `#!json "Berlin"` | + | `key` | 1 | `#!json "location"` | + | `array_start` | 1 | *discarded* | + | `value` | 2 | `#!json 52.519444` | + | `value` | 2 | `#!json 13.406667` | + | `array_end` | 1 | `#!json [52.519444,13.406667]` | + | `object_end` | 0 | `#!json {"location":[52.519444,13.406667],"name":"Berlin"}` | + +## Return value + +Discarding a value (i.e., returning `#!c false`) has different effects depending on the context in which the function +was called: + +- Discarded values in structured types are skipped. That is, the parser will behave as if the discarded value was never + read. +- In case a value outside a structured type is skipped, it is replaced with `#!json null`. This case happens if the + top-level element is skipped. + +??? example + + The example below demonstrates the `parse()` function with and without callback function. + + ```cpp + --8<-- "examples/parse__string__parser_callback_t.cpp" + ``` + + Output: + + ```json + --8<-- "examples/parse__string__parser_callback_t.output" + ``` diff --git a/docs/mkdocs/docs/features/parsing/sax_interface.md b/docs/mkdocs/docs/features/parsing/sax_interface.md new file mode 100644 index 00000000..0796a55f --- /dev/null +++ b/docs/mkdocs/docs/features/parsing/sax_interface.md @@ -0,0 +1,73 @@ +# SAX Interface + +The library uses a SAX-like interface with the following functions: + +```plantuml +interface json::sax_t { + + {abstract} bool null() + + + {abstract} bool boolean(bool val) + + + {abstract} bool number_integer(number_integer_t val) + + {abstract} bool number_unsigned(number_unsigned_t val) + + + {abstract} bool number_float(number_float_t val, const string_t& s) + + + {abstract} bool string(string_t& val) + + {abstract} bool binary(binary_t& val) + + + {abstract} bool start_object(std::size_t elements) + + {abstract} bool end_object() + + {abstract} bool start_array(std::size_t elements) + + {abstract} bool end_array() + + {abstract} bool key(string_t& val) + + + {abstract} bool parse_error(std::size_t position, const std::string& last_token, const json::exception& ex) +} +``` + +```cpp +// called when null is parsed +bool null(); + +// called when a boolean is parsed; value is passed +bool boolean(bool val); + +// called when a signed or unsigned integer number is parsed; value is passed +bool number_integer(number_integer_t val); +bool number_unsigned(number_unsigned_t val); + +// called when a floating-point number is parsed; value and original string is passed +bool number_float(number_float_t val, const string_t& s); + +// called when a string is parsed; value is passed and can be safely moved away +bool string(string_t& val); +// called when a binary value is parsed; value is passed and can be safely moved away +bool binary(binary& val); + +// called when an object or array begins or ends, resp. The number of elements is passed (or -1 if not known) +bool start_object(std::size_t elements); +bool end_object(); +bool start_array(std::size_t elements); +bool end_array(); +// called when an object key is parsed; value is passed and can be safely moved away +bool key(string_t& val); + +// called when a parse error occurs; byte position, the last token, and an exception is passed +bool parse_error(std::size_t position, const std::string& last_token, const json::exception& ex); +``` + +The return value of each function determines whether parsing should proceed. + +To implement your own SAX handler, proceed as follows: + +1. Implement the SAX interface in a class. You can use class `nlohmann::json_sax` as base class, but you can also use any class where the functions described above are implemented and public. +2. Create an object of your SAX interface class, e.g. `my_sax`. +3. Call `#!cpp bool json::sax_parse(input, &my_sax);` where the first parameter can be any input like a string or an input stream and the second parameter is a pointer to your SAX interface. + +Note the `sax_parse` function only returns a `#!cpp bool` indicating the result of the last executed SAX event. It does not return `json` value - it is up to you to decide what to do with the SAX events. Furthermore, no exceptions are thrown in case of a parse error - it is up to you what to do with the exception object passed to your `parse_error` implementation. Internally, the SAX interface is used for the DOM parser (class `json_sax_dom_parser`) as well as the acceptor (`json_sax_acceptor`), see file `json_sax.hpp`. + +## See also + +- [json_sax](../../api/json_sax/index.md) - documentation of the SAX interface +- [sax_parse](../../api/basic_json/sax_parse.md) - SAX parser diff --git a/docs/mkdocs/docs/features/types/index.md b/docs/mkdocs/docs/features/types/index.md new file mode 100644 index 00000000..d9dfcc29 --- /dev/null +++ b/docs/mkdocs/docs/features/types/index.md @@ -0,0 +1,269 @@ +# Types + +This page gives an overview how JSON values are stored and how this can be configured. + +## Overview + +By default, JSON values are stored as follows: + +| JSON type | C++ type | +|-----------|-----------------------------------------------| +| object | `std::map` | +| array | `std::vector` | +| null | `std::nullptr_t` | +| string | `std::string` | +| boolean | `bool` | +| number | `std::int64_t`, `std::uint64_t`, and `double` | + +Note there are three different types for numbers - when parsing JSON text, the best fitting type is chosen. + +## Storage + +```plantuml +enum value_t { + null + object + array + string + boolean + number_integer + number_unsigned + number_float + binary + discarded +} + +class json_value << (U,orchid) >> { + object_t* object + array_t* array + string_t* string + binary_t* binary + boolean_t boolean + number_integer_t number_integer + number_unsigned_t number_unsigned + number_float_t number_float +} + +class basic_json { + -- type and value -- + value_t m_type + json_value m_value + -- derived types -- + + typedef object_t + + typedef array_t + + typedef binary_t + + typedef boolean_t + + typedef number_integer_t + + typedef number_unsigned_t + + typedef number_float_t +} + +basic_json .. json_value +basic_json .. value_t +``` + +## Template arguments + +The data types to store a JSON value are derived from the template arguments passed to class `basic_json`: + +```cpp +template< + template class ObjectType = std::map, + template class ArrayType = std::vector, + class StringType = std::string, + class BooleanType = bool, + class NumberIntegerType = std::int64_t, + class NumberUnsignedType = std::uint64_t, + class NumberFloatType = double, + template class AllocatorType = std::allocator, + template class JSONSerializer = adl_serializer, + class BinaryType = std::vector +> +class basic_json; +``` + +Type `json` is an alias for `basic_json<>` and uses the default types. + +From the template arguments, the following types are derived: + +```cpp +using object_comparator_t = std::less<>; +using object_t = ObjectType>>; + +using array_t = ArrayType>; + +using string_t = StringType; + +using boolean_t = BooleanType; + +using number_integer_t = NumberIntegerType; +using number_unsigned_t = NumberUnsignedType; +using number_float_t = NumberFloatType; + +using binary_t = nlohmann::byte_container_with_subtype; +``` + + +## Objects + +[RFC 8259](https://tools.ietf.org/html/rfc8259) describes JSON objects as follows: + +> An object is an unordered collection of zero or more name/value pairs, where a name is a string and a value is a string, number, boolean, null, object, or array. + +### Default type + +With the default values for *ObjectType* (`std::map`), *StringType* (`std::string`), and *AllocatorType* (`std::allocator`), the default value for `object_t` is: + +```cpp +std::map< + std::string, // key_type + basic_json, // value_type + std::less<>, // key_compare + std::allocator> // allocator_type +> +``` + +### Behavior + +The choice of `object_t` influences the behavior of the JSON class. With the default type, objects have the following behavior: + +- When all names are unique, objects will be interoperable in the sense that all software implementations receiving that object will agree on the name-value mappings. +- When the names within an object are not unique, it is unspecified which one of the values for a given key will be chosen. For instance, `#!json {"key": 2, "key": 1}` could be equal to either `#!json {"key": 1}` or `#!json {"key": 2}`. +- Internally, name/value pairs are stored in lexicographical order of the names. Objects will also be serialized (see `dump`) in this order. For instance, both `#!json {"b": 1, "a": 2}` and `#!json {"a": 2, "b": 1}` will be stored and serialized as `#!json {"a": 2, "b": 1}`. +- When comparing objects, the order of the name/value pairs is irrelevant. This makes objects interoperable in the sense that they will not be affected by these differences. For instance, `#!json {"b": 1, "a": 2}` and `#!json {"a": 2, "b": 1}` will be treated as equal. + +### Key order + +The order name/value pairs are added to the object is *not* preserved by the library. Therefore, iterating an object may return name/value pairs in a different order than they were originally stored. In fact, keys will be traversed in alphabetical order as `std::map` with `std::less` is used by default. Please note this behavior conforms to [RFC 8259](https://tools.ietf.org/html/rfc8259), because any order implements the specified "unordered" nature of JSON objects. + +### Limits + +[RFC 8259](https://tools.ietf.org/html/rfc8259) specifies: + +> An implementation may set limits on the maximum depth of nesting. + +In this class, the object's limit of nesting is not explicitly constrained. However, a maximum depth of nesting may be introduced by the compiler or runtime environment. A theoretical limit can be queried by calling the `max_size` function of a JSON object. + +### Storage + +Objects are stored as pointers in a `basic_json` type. That is, for any access to object values, a pointer of type `object_t*` must be dereferenced. + + +## Arrays + +[RFC 8259](https://tools.ietf.org/html/rfc8259) describes JSON arrays as follows: + +> An array is an ordered sequence of zero or more values. + +### Default type + +With the default values for *ArrayType* (`std::vector`) and *AllocatorType* (`std::allocator`), the default value for `array_t` is: + +```cpp +std::vector< + basic_json, // value_type + std::allocator // allocator_type +> +``` + +### Limits + +[RFC 8259](https://tools.ietf.org/html/rfc8259) specifies: + +> An implementation may set limits on the maximum depth of nesting. + +In this class, the array's limit of nesting is not explicitly constrained. However, a maximum depth of nesting may be introduced by the compiler or runtime environment. A theoretical limit can be queried by calling the `max_size` function of a JSON array. + +### Storage + +Arrays are stored as pointers in a `basic_json` type. That is, for any access to array values, a pointer of type `array_t*` must be dereferenced. + + +## Strings + +[RFC 8259](https://tools.ietf.org/html/rfc8259) describes JSON strings as follows: + +> A string is a sequence of zero or more Unicode characters. + +Unicode values are split by the JSON class into byte-sized characters during deserialization. + +### Default type + +With the default values for *StringType* (`std::string`), the default value for `string_t` is `#!cpp std::string`. + +### Encoding + +Strings are stored in UTF-8 encoding. Therefore, functions like `std::string::size()` or `std::string::length()` return the number of **bytes** in the string rather than the number of characters or glyphs. + +### String comparison + +[RFC 8259](https://tools.ietf.org/html/rfc8259) states: + +> Software implementations are typically required to test names of object members for equality. Implementations that transform the textual representation into sequences of Unicode code units and then perform the comparison numerically, code unit by code unit, are interoperable in the sense that implementations will agree in all cases on equality or inequality of two strings. For example, implementations that compare strings with escaped characters unconverted may incorrectly find that `"a\\b"` and `"a\u005Cb"` are not equal. + +This implementation is interoperable as it does compare strings code unit by code unit. + +### Storage + +String values are stored as pointers in a `basic_json` type. That is, for any access to string values, a pointer of type `string_t*` must be dereferenced. + + +## Booleans + +[RFC 8259](https://tools.ietf.org/html/rfc8259) implicitly describes a boolean as a type which differentiates the two literals `true` and `false`. + +### Default type + +With the default values for *BooleanType* (`#!cpp bool`), the default value for `boolean_t` is `#!cpp bool`. + +### Storage + +Boolean values are stored directly inside a `basic_json` type. + +## Numbers + +See the [number handling](number_handling.md) article for a detailed discussion on how numbers are handled by this library. + +[RFC 8259](https://tools.ietf.org/html/rfc8259) describes numbers as follows: + +> The representation of numbers is similar to that used in most programming languages. A number is represented in base 10 using decimal digits. It contains an integer component that may be prefixed with an optional minus sign, which may be followed by a fraction part and/or an exponent part. Leading zeros are not allowed. (...) Numeric values that cannot be represented in the grammar below (such as Infinity and NaN) are not permitted. + +This description includes both integer and floating-point numbers. However, C++ allows more precise storage if it is known whether the number is a signed integer, an unsigned integer or a floating-point number. Therefore, three different types, `number_integer_t`, `number_unsigned_t`, and `number_float_t` are used. + +### Default types + +With the default values for *NumberIntegerType* (`std::int64_t`), the default value for `number_integer_t` is `std::int64_t`. +With the default values for *NumberUnsignedType* (`std::uint64_t`), the default value for `number_unsigned_t` is `std::uint64_t`. +With the default values for *NumberFloatType* (`#!cpp double`), the default value for `number_float_t` is `#!cpp double`. + +### Default behavior + +- The restrictions about leading zeros is not enforced in C++. Instead, leading zeros in integer literals lead to an interpretation as octal number. Internally, the value will be stored as decimal number. For instance, the C++ integer literal `#!c 010` will be serialized to `#!c 8`. During deserialization, leading zeros yield an error. +- Not-a-number (NaN) values will be serialized to `#!json null`. + +### Limits + +[RFC 8259](https://tools.ietf.org/html/rfc8259) specifies: + +> An implementation may set limits on the range and precision of numbers. + +When the default type is used, the maximal integer number that can be stored is `#!c 9223372036854775807` (`INT64_MAX`) and the minimal integer number that can be stored is `#!c -9223372036854775808` (`INT64_MIN`). Integer numbers that are out of range will yield over/underflow when used in a constructor. During deserialization, too large or small integer numbers will be automatically be stored as `number_unsigned_t` or `number_float_t`. + +When the default type is used, the maximal unsigned integer number that can be stored is `#!c 18446744073709551615` (`UINT64_MAX`) and the minimal integer number that can be stored is `#!c 0`. Integer numbers that are out of range will yield over/underflow when used in a constructor. During deserialization, too large or small integer numbers will be automatically be stored as `number_integer_t` or `number_float_t`. + +[RFC 8259](https://tools.ietf.org/html/rfc8259) further states: + +> Note that when such software is used, numbers that are integers and are in the range $[-2^{53}+1, 2^{53}-1]$ are interoperable in the sense that implementations will agree exactly on their numeric values. + +As this range is a subrange of the exactly supported range [`INT64_MIN`, `INT64_MAX`], this class's integer type is interoperable. + +[RFC 8259](https://tools.ietf.org/html/rfc8259) states: + +> This specification allows implementations to set limits on the range and precision of numbers accepted. Since software that implements IEEE 754-2008 binary64 (double precision) numbers is generally available and widely used, good interoperability can be achieved by implementations that expect no more precision or range than these provide, in the sense that implementations will approximate JSON numbers within the expected precision. + +This implementation does exactly follow this approach, as it uses double precision floating-point numbers. Note values smaller than `#!c -1.79769313486232e+308` and values greater than `#!c 1.79769313486232e+308` will be stored as NaN internally and be serialized to `#!json null`. + +### Storage + +Integer number values, unsigned integer number values, and floating-point number values are stored directly inside a `basic_json` type. diff --git a/docs/mkdocs/docs/features/types/number_handling.md b/docs/mkdocs/docs/features/types/number_handling.md new file mode 100644 index 00000000..3dcca76a --- /dev/null +++ b/docs/mkdocs/docs/features/types/number_handling.md @@ -0,0 +1,328 @@ +# Number Handling + +This document describes how the library is handling numbers. + +## Background + +This section briefly summarizes how the JSON specification describes how numbers should be handled. + +### JSON number syntax + +JSON defines the syntax of numbers as follows: + +!!! quote "[RFC 8259](https://tools.ietf.org/html/rfc8259#section-6), Section 6" + + The representation of numbers is similar to that used in most + programming languages. A number is represented in base 10 using + decimal digits. It contains an integer component that may be + prefixed with an optional minus sign, which may be followed by a + fraction part and/or an exponent part. Leading zeros are not + allowed. + + A fraction part is a decimal point followed by one or more digits. + + An exponent part begins with the letter E in uppercase or lowercase, + which may be followed by a plus or minus sign. The E and optional + sign are followed by one or more digits. + +The following railroad diagram from [json.org](https://json.org) visualizes the number syntax: + +![Syntax for JSON numbers](../../images/json_syntax_number.png) + +### Number interoperability + +On number interoperability, the following remarks are made: + +!!! quote "[RFC 8259](https://tools.ietf.org/html/rfc8259#section-6), Section 6" + + This specification allows implementations to set limits on the range + and precision of numbers accepted. Since software that implements + IEEE 754 binary64 (double precision) numbers [IEEE754] is generally + available and widely used, good interoperability can be achieved by + implementations that expect no more precision or range than these + provide, in the sense that implementations will approximate JSON + numbers within the expected precision. A JSON number such as 1E400 + or 3.141592653589793238462643383279 may indicate potential + interoperability problems, since it suggests that the software that + created it expects receiving software to have greater capabilities + for numeric magnitude and precision than is widely available. + + Note that when such software is used, numbers that are integers and + are in the range $[-2^{53}+1, 2^{53}-1]$ are interoperable in the + sense that implementations will agree exactly on their numeric + values. + +## Library implementation + +This section describes how the above number specification is implemented by this library. + +### Number storage + +In the default [`json`](../../api/json.md) type, numbers are stored as `#!c std::uint64_t`, `#!c std::int64_t`, and +`#!c double`, respectively. Thereby, `#!c std::uint64_t` and `#!c std::int64_t` are used only if they can store the +number without loss of precision. If this is impossible (e.g., if the number is too large), the number is stored as +`#!c double`. + +!!! info "Notes" + + - Numbers with a decimal digit or scientific notation are always stored as `#!c double`. + - The number types can be changed, see [Template number types](#template-number-types). + - As of version 3.9.1, the conversion is realized by + [`std::strtoull`](https://en.cppreference.com/w/cpp/string/byte/strtoul), + [`std::strtoll`](https://en.cppreference.com/w/cpp/string/byte/strtol), and + [`std::strtod`](https://en.cppreference.com/w/cpp/string/byte/strtof), respectively. + +!!! example "Examples" + + - Integer `#!c -12345678912345789123456789` is smaller than `#!c INT64_MIN` and will be stored as floating-point + number `#!c -1.2345678912345788e+25`. + - Integer `#!c 1E3` will be stored as floating-point number `#!c 1000.0`. + +### Number limits + +- Any 64-bit signed or unsigned integer can be stored without loss of precision. +- Numbers exceeding the limits of `#!c double` (i.e., numbers that after conversion via +[`std::strtod`](https://en.cppreference.com/w/cpp/string/byte/strtof) are not satisfying +[`std::isfinite`](https://en.cppreference.com/w/cpp/numeric/math/isfinite) such as `#!c 1E400`) will throw exception +[`json.exception.out_of_range.406`](../../home/exceptions.md#jsonexceptionout_of_range406) during parsing. +- Floating-point numbers are rounded to the next number representable as `double`. For instance +`#!c 3.141592653589793238462643383279` is stored as [`0x400921fb54442d18`](https://float.exposed/0x400921fb54442d18). +This is the same behavior as the code `#!c double x = 3.141592653589793238462643383279;`. + +!!! success "Interoperability" + + - The library interoperable with respect to the specification, because its supported range $[-2^{63}, 2^{64}-1]$ is + larger than the described range $[-2^{53}+1, 2^{53}-1]$. + - All integers outside the range $[-2^{63}, 2^{64}-1]$, as well as floating-point numbers are stored as `double`. + This also concurs with the specification above. + +### Zeros + +The JSON number grammar allows for different ways to express zero, and this library will store zeros differently: + +| Literal | Stored value and type | Serialization | +|---------|------------------------|---------------| +| `0` | `#!c std::uint64_t(0)` | `0` | +| `-0` | `#!c std::int64_t(0)` | `0` | +| `0.0` | `#!c double(0.0)` | `0.0` | +| `-0.0` | `#!c double(-0.0)` | `-0.0` | +| `0E0` | `#!c double(0.0)` | `0.0` | +| `-0E0` | `#!c double(-0.0)` | `-0.0` | + +That is, `-0` is stored as a signed integer, but the serialization does not reproduce the `-`. + +### Number serialization + +- Integer numbers are serialized as is; that is, no scientific notation is used. +- Floating-point numbers are serialized as specified by the `#!c %g` printf modifier with + [`std::numeric_limits::max_digits10`](https://en.cppreference.com/w/cpp/types/numeric_limits/max_digits10) + significant digits. The rationale is to use the shortest representation while still allow round-tripping. + +!!! hint "Notes regarding precision of floating-point numbers" + + As described above, floating-point numbers are rounded to the nearest double and serialized with the shortest + representation to allow round-tripping. This can yield confusing examples: + + - The serialization can have fewer decimal places than the input: `#!c 2555.5599999999999` will be serialized as + `#!c 2555.56`. The reverse can also be true. + - The serialization can be in scientific notation even if the input is not: `#!c 0.0000972439793401814` will be + serialized as `#!c 9.72439793401814e-05`. The reverse can also be true: `#!c 12345E-5` will be serialized as + `#!c 0.12345`. + - Conversions from `#!c float` to `#!c double` can also introduce rounding errors: + ```cpp + float f = 0.3; + json j = f; + std::cout << j << '\n'; + ``` + yields `#!c 0.30000001192092896`. + + All examples here can be reproduced by passing the original double value to + + ```cpp + std::printf("%.*g\n", std::numeric_limits::max_digits10, double_value); + ``` + +#### NaN handling + +NaN (not-a-number) cannot be expressed with the number syntax described above and are in fact explicitly excluded: + +!!! quote "[RFC 8259](https://tools.ietf.org/html/rfc8259#section-6), Section 6" + + Numeric values that cannot be represented in the grammar below (such + as Infinity and NaN) are not permitted. + +That is, there is no way to *parse* a NaN value. However, NaN values can be stored in a JSON value by assignment. + +This library serializes NaN values as `#!js null`. This corresponds to the behavior of JavaScript's +[`JSON.stringify`](https://www.w3schools.com/js/js_json_stringify.asp) function. + +!!! example + + The following example shows how a NaN value is stored in a `json` value. + + ```cpp + int main() + { + double val = std::numeric_limits::quiet_NaN(); + std::cout << "val=" << val << std::endl; + json j = val; + std::cout << "j=" << j.dump() << std::endl; + val = j; + std::cout << "val=" << val << std::endl; + } + ``` + + output: + + ``` + val=nan + j=null + val=nan + ``` + +### Number comparison + +Floating-point inside JSON values numbers are compared with `#!c json::number_float_t::operator==` which is +`#!c double::operator==` by default. + +!!! example "Alternative comparison functions" + + To compare floating-point while respecting an epsilon, an alternative + [comparison function](https://github.com/mariokonrad/marnav/blob/master/include/marnav/math/floatingpoint.hpp#L34-#L39) + could be used, for instance + + ```cpp + template::value, T>::type> + inline bool is_same(T a, T b, T epsilon = std::numeric_limits::epsilon()) noexcept + { + return std::abs(a - b) <= epsilon; + } + ``` + Or you can self-define an operator equal function like this: + + ```cpp + bool my_equal(const_reference lhs, const_reference rhs) + { + const auto lhs_type lhs.type(); + const auto rhs_type rhs.type(); + if (lhs_type == rhs_type) + { + switch(lhs_type) + { + // self_defined case + case value_t::number_float: + return std::abs(lhs - rhs) <= std::numeric_limits::epsilon(); + + // other cases remain the same with the original + ... + } + } + ... + } + ``` + + (see [#703](https://github.com/nlohmann/json/issues/703) for more information.) + +!!! note + + NaN values never compare equal to themselves or to other NaN values. See [#514](https://github.com/nlohmann/json/issues/514). + +### Number conversion + +Just like the C++ language itself, the `get` family of functions allows conversions between unsigned and signed +integers, and between integers and floating-point values to integers. This behavior may be surprising. + +!!! warning "Unconditional number conversions" + + ```cpp hl_lines="3" + double d = 42.3; // non-integer double value 42.3 + json jd = d; // stores double value 42.3 + std::int64_t i = jd.template get(); // now i==42; no warning or error is produced + ``` + + Note the last line with throw a [`json.exception.type_error.302`](../../home/exceptions.md#jsonexceptiontype_error302) + exception if `jd` is not a numerical type, for instance a string. + +The rationale is twofold: + +1. JSON does not define a number type or precision (see above). +2. C++ also allows to silently convert between number types. + +!!! success "Conditional number conversion" + + The code above can be solved by explicitly checking the nature of the value with members such as + [`is_number_integer()`](../../api/basic_json/is_number_integer.md) or + [`is_number_unsigned()`](../../api/basic_json/is_number_unsigned.md): + + ```cpp hl_lines="2" + // check if jd is really integer-valued + if (jd.is_number_integer()) + { + // if so, do the conversion and use i + std::int64_t i = jd.template get(); + // ... + } + else + { + // otherwise, take appropriate action + // ... + } + ``` + + Note this approach also has the advantage that it can react on non-numerical JSON value types such as strings. + + (Example taken from [#777](https://github.com/nlohmann/json/issues/777#issuecomment-459968458).) + +### Determine number types + +As the example in [Number conversion](#number-conversion) shows, there are different functions to determine the type of +the stored number: + +- [`is_number()`](../../api/basic_json/is_number.md) returns `#!c true` for any number type +- [`is_number_integer()`](../../api/basic_json/is_number_integer.md) returns `#!c true` for signed and unsigned integers +- [`is_number_unsigned()`](../../api/basic_json/is_number_unsigned.md) returns `#!c true` for unsigned integers only +- [`is_number_float()`](../../api/basic_json/is_number_float.md) returns `#!c true` for floating-point numbers +- [`type_name()`](../../api/basic_json/type_name.md) returns `#!c "number"` for any number type +- [`type()`](../../api/basic_json/type.md) returns a different enumerator of + [`value_t`](../../api/basic_json/value_t.md) for all number types + +| function | unsigned integer | signed integer | floating-point | string | +|----------------------------------------------------------------------|-------------------|------------------|----------------|----------------| +| [`is_number()`](../../api/basic_json/is_number.md) | `#!c true` | `#!c true` | `#!c true` | `#!c false` | +| [`is_number_integer()`](../../api/basic_json/is_number_integer.md) | `#!c true` | `#!c true` | `#!c false` | `#!c false` | +| [`is_number_unsigned()`](../../api/basic_json/is_number_unsigned.md) | `#!c true` | `#!c false` | `#!c false` | `#!c false` | +| [`is_number_float()`](../../api/basic_json/is_number_float.md) | `#!c false` | `#!c false` | `#!c true` | `#!c false` | +| [`type_name()`](../../api/basic_json/type_name.md) | `#!c "number"` | `#!c "number"` | `#!c "number"` | `#!c "string"` | +| [`type()`](../../api/basic_json/type.md) | `number_unsigned` | `number_integer` | `number_float` | `string` | + +### Template number types + +The number types can be changed with template parameters. + +| position | number type | default type | possible values | +|----------|-------------------|---------------------|------------------------------------------------| +| 5 | signed integers | `#!c std::int64_t` | `#!c std::int32_t`, `#!c std::int16_t`, etc. | +| 6 | unsigned integers | `#!c std::uint64_t` | `#!c std::uint32_t`, `#!c std::uint16_t`, etc. | +| 7 | floating-point | `#!c double` | `#!c float`, `#!c long double` | + +!!! info "Constraints on number types" + + - The type for signed integers must be convertible from `#!c long long`. The type for floating-point numbers is used + in case of overflow. + - The type for unsigned integers must be convertible from `#!c unsigned long long`. The type for floating-point + numbers is used in case of overflow. + - The types for signed and unsigned integers must be distinct, see + [#2573](https://github.com/nlohmann/json/issues/2573). + - Only `#!c double`, `#!c float`, and `#!c long double` are supported for floating-point numbers. + +!!! example + + A `basic_json` type that uses `#!c long double` as floating-point type. + + ```cpp hl_lines="2" + using json_ld = nlohmann::basic_json; + ``` + + Note values should then be parsed with `json_ld::parse` rather than `json::parse` as the latter would parse + floating-point values to `#!c double` before then converting them to `#!c long double`. diff --git a/docs/mkdocs/docs/home/code_of_conduct.md b/docs/mkdocs/docs/home/code_of_conduct.md new file mode 100644 index 00000000..770b8173 --- /dev/null +++ b/docs/mkdocs/docs/home/code_of_conduct.md @@ -0,0 +1,46 @@ +# Contributor Covenant Code of Conduct + +## Our Pledge + +In the interest of fostering an open and welcoming environment, we as contributors and maintainers pledge to making participation in our project and our community a harassment-free experience for everyone, regardless of age, body size, disability, ethnicity, gender identity and expression, level of experience, nationality, personal appearance, race, religion, or sexual identity and orientation. + +## Our Standards + +Examples of behavior that contributes to creating a positive environment include: + +* Using welcoming and inclusive language +* Being respectful of differing viewpoints and experiences +* Gracefully accepting constructive criticism +* Focusing on what is best for the community +* Showing empathy towards other community members + +Examples of unacceptable behavior by participants include: + +* The use of sexualized language or imagery and unwelcome sexual attention or advances +* Trolling, insulting/derogatory comments, and personal or political attacks +* Public or private harassment +* Publishing others' private information, such as a physical or electronic address, without explicit permission +* Other conduct which could reasonably be considered inappropriate in a professional setting + +## Our Responsibilities + +Project maintainers are responsible for clarifying the standards of acceptable behavior and are expected to take appropriate and fair corrective action in response to any instances of unacceptable behavior. + +Project maintainers have the right and responsibility to remove, edit, or reject comments, commits, code, wiki edits, issues, and other contributions that are not aligned to this Code of Conduct, or to ban temporarily or permanently any contributor for other behaviors that they deem inappropriate, threatening, offensive, or harmful. + +## Scope + +This Code of Conduct applies both within project spaces and in public spaces when an individual is representing the project or its community. Examples of representing a project or community include using an official project e-mail address, posting via an official social media account, or acting as an appointed representative at an online or offline event. Representation of a project may be further defined and clarified by project maintainers. + +## Enforcement + +Instances of abusive, harassing, or otherwise unacceptable behavior may be reported by contacting the project team at mail@nlohmann.me. The project team will review and investigate all complaints, and will respond in a way that it deems appropriate to the circumstances. The project team is obligated to maintain confidentiality with regard to the reporter of an incident. Further details of specific enforcement policies may be posted separately. + +Project maintainers who do not follow or enforce the Code of Conduct in good faith may face temporary or permanent repercussions as determined by other members of the project's leadership. + +## Attribution + +This Code of Conduct is adapted from the [Contributor Covenant][homepage], version 1.4, available at [http://contributor-covenant.org/version/1/4][version] + +[homepage]: http://contributor-covenant.org +[version]: http://contributor-covenant.org/version/1/4/ diff --git a/docs/mkdocs/docs/home/design_goals.md b/docs/mkdocs/docs/home/design_goals.md new file mode 100644 index 00000000..b80551fe --- /dev/null +++ b/docs/mkdocs/docs/home/design_goals.md @@ -0,0 +1,17 @@ +# Design goals + +There are myriads of [JSON](https://json.org) libraries out there, and each may even have its reason to exist. Our class had these design goals: + +- **Intuitive syntax**. In languages such as Python, JSON feels like a first class data type. We used all the operator magic of modern C++ to achieve the same feeling in your code. Check out the [examples below](#examples), and you'll know what I mean. + +- **Trivial integration**. Our whole code consists of a single header file [`json.hpp`](https://github.com/nlohmann/json/blob/develop/single_include/nlohmann/json.hpp). That's it. No library, no subproject, no dependencies, no complex build system. The class is written in vanilla C++11. All in all, everything should require no adjustment of your compiler flags or project settings. + +- **Serious testing**. Our class is heavily [unit-tested](https://github.com/nlohmann/json/tree/develop/test/src) and covers [100%](https://coveralls.io/r/nlohmann/json) of the code, including all exceptional behavior. Furthermore, we checked with [Valgrind](http://valgrind.org) and the [Clang Sanitizers](https://clang.llvm.org/docs/index.html) that there are no memory leaks. [Google OSS-Fuzz](https://github.com/google/oss-fuzz/tree/master/projects/json) additionally runs fuzz tests against all parsers 24/7, effectively executing billions of tests so far. To maintain high quality, the project is following the [Core Infrastructure Initiative (CII) best practices](https://bestpractices.coreinfrastructure.org/projects/289). + +Other aspects were not so important to us: + +- **Memory efficiency**. Each JSON object has an overhead of one pointer (the maximal size of a union) and one enumeration element (1 byte). The default generalization uses the following C++ data types: `std::string` for strings, `int64_t`, `uint64_t` or `double` for numbers, `std::map` for objects, `std::vector` for arrays, and `bool` for Booleans. However, you can template the generalized class `basic_json` to your needs. + +- **Speed**. There are certainly [faster JSON libraries](https://github.com/miloyip/nativejson-benchmark#parsing-time) out there. However, if your goal is to speed up your development by adding JSON support with a single header, then this library is the way to go. If you know how to use a `std::vector` or `std::map`, you are already set. + +See the [contribution guidelines](https://github.com/nlohmann/json/blob/master/.github/CONTRIBUTING.md#please-dont) for more information. diff --git a/docs/mkdocs/docs/home/exceptions.md b/docs/mkdocs/docs/home/exceptions.md new file mode 100644 index 00000000..a0fee9e3 --- /dev/null +++ b/docs/mkdocs/docs/home/exceptions.md @@ -0,0 +1,896 @@ +# Exceptions + +## Overview + +### Base type + +All exceptions inherit from class `json::exception` (which in turn inherits from `std::exception`). It is used as the base class for all exceptions thrown by the `basic_json` class. This class can hence be used as "wildcard" to catch exceptions. + +```plantuml +std::exception <|-- json::exception +json::exception <|-- json::parse_error +json::exception <|-- json::invalid_iterator +json::exception <|-- json::type_error +json::exception <|-- json::out_of_range +json::exception <|-- json::other_error + +interface std::exception {} + +class json::exception { + + const int id + + const char* what() const +} + +class json::parse_error { + + const std::size_t byte +} +``` + +### Switch off exceptions + +Exceptions are used widely within the library. They can, however, be switched off with either using the compiler flag `-fno-exceptions` or by defining the symbol [`JSON_NOEXCEPTION`](../api/macros/json_noexception.md). In this case, exceptions are replaced by `abort()` calls. You can further control this behavior by defining `JSON_THROW_USER` (overriding `#!cpp throw`), `JSON_TRY_USER` (overriding `#!cpp try`), and `JSON_CATCH_USER` (overriding `#!cpp catch`). + +Note that [`JSON_THROW_USER`](../api/macros/json_throw_user.md) should leave the current scope (e.g., by throwing or aborting), as continuing after it may yield undefined behavior. + +??? example + + The code below switches off exceptions and creates a log entry with a detailed error message in case of errors. + + ```cpp + #include + + #define JSON_TRY_USER if(true) + #define JSON_CATCH_USER(exception) if(false) + #define JSON_THROW_USER(exception) \ + {std::clog << "Error in " << __FILE__ << ":" << __LINE__ \ + << " (function " << __FUNCTION__ << ") - " \ + << (exception).what() << std::endl; \ + std::abort();} + + #include + ``` + +Note the explanatory [`what()`](https://en.cppreference.com/w/cpp/error/exception/what) string of exceptions is not available for MSVC if exceptions are disabled, see [#2824](https://github.com/nlohmann/json/discussions/2824). + +See [documentation of `JSON_TRY_USER`, `JSON_CATCH_USER` and `JSON_THROW_USER`](../api/macros/json_throw_user.md) for more information. + +### Extended diagnostic messages + +Exceptions in the library are thrown in the local context of the JSON value they are detected. This makes detailed diagnostics messages, and hence debugging, difficult. + +??? example + + ```cpp + --8<-- "examples/diagnostics_standard.cpp" + ``` + + Output: + + ``` + --8<-- "examples/diagnostics_standard.output" + ``` + + This exception can be hard to debug if storing the value `#!c "12"` and accessing it is further apart. + +To create better diagnostics messages, each JSON value needs a pointer to its parent value such that a global context (i.e., a path from the root value to the value that lead to the exception) can be created. That global context is provided as [JSON Pointer](../features/json_pointer.md). + +As this global context comes at the price of storing one additional pointer per JSON value and runtime overhead to maintain the parent relation, extended diagnostics are disabled by default. They can, however, be enabled by defining the preprocessor symbol [`JSON_DIAGNOSTICS`](../api/macros/json_diagnostics.md) to `1` before including `json.hpp`. + +??? example + + ```cpp + --8<-- "examples/diagnostics_extended.cpp" + ``` + + Output: + + ``` + --8<-- "examples/diagnostics_extended.output" + ``` + + Now the exception message contains a JSON Pointer `/address/housenumber` that indicates which value has the wrong type. + +See [documentation of `JSON_DIAGNOSTICS`](../api/macros/json_diagnostics.md) for more information. + +## Parse errors + +This exception is thrown by the library when a parse error occurs. Parse errors +can occur during the deserialization of JSON text, CBOR, MessagePack, as well +as when using JSON Patch. + +Exceptions have ids 1xx. + +!!! info "Byte index" + + Member `byte` holds the byte index of the last read character in the input + file. + + For an input with n bytes, 1 is the index of the first character and n+1 + is the index of the terminating null byte or the end of file. This also + holds true when reading a byte vector (CBOR or MessagePack). + +??? example + + The following code shows how a `parse_error` exception can be caught. + + ```cpp + --8<-- "examples/parse_error.cpp" + ``` + + Output: + + ``` + --8<-- "examples/parse_error.output" + ``` + + +### json.exception.parse_error.101 + +This error indicates a syntax error while deserializing a JSON text. The error message describes that an unexpected token (character) was encountered, and the member `byte` indicates the error position. + +!!! failure "Example message" + + Input ended prematurely: + + ``` + [json.exception.parse_error.101] parse error at 2: unexpected end of input; expected string literal + ``` + + No input: + + ``` + [json.exception.parse_error.101] parse error at line 1, column 1: attempting to parse an empty input; check that your input string or stream contains the expected JSON + ``` + + Control character was not escaped: + + ``` + [json.exception.parse_error.101] parse error at line 1, column 2: syntax error while parsing value - invalid string: control character U+0009 (HT) must be escaped to \u0009 or \\; last read: '"'" + ``` + + String was not closed: + + ``` + [json.exception.parse_error.101] parse error at line 1, column 2: syntax error while parsing value - invalid string: missing closing quote; last read: '"' + ``` + + Invalid number format: + + ``` + [json.exception.parse_error.101] parse error at line 1, column 3: syntax error while parsing value - invalid number; expected '+', '-', or digit after exponent; last read: '1E' + ``` + + `\u` was not be followed by four hex digits: + + ``` + [json.exception.parse_error.101] parse error at line 1, column 6: syntax error while parsing value - invalid string: '\u' must be followed by 4 hex digits; last read: '"\u01"' + ``` + + Invalid UTF-8 surrogate pair: + + ``` + [json.exception.parse_error.101] parse error at line 1, column 13: syntax error while parsing value - invalid string: surrogate U+DC00..U+DFFF must follow U+D800..U+DBFF; last read: '"\uD7FF\uDC00'" + ``` + + Invalid UTF-8 byte: + + ``` + [json.exception.parse_error.101] parse error at line 3, column 24: syntax error while parsing value - invalid string: ill-formed UTF-8 byte; last read: '"vous \352t' + ``` + +!!! tip + + - Make sure the input is correctly read. Try to write the input to standard output to check if, for instance, the input file was successfully opened. + - Paste the input to a JSON validator like or a tool like [jq](https://stedolan.github.io/jq/). + +### json.exception.parse_error.102 + +JSON uses the `\uxxxx` format to describe Unicode characters. Code points above 0xFFFF are split into two `\uxxxx` entries ("surrogate pairs"). This error indicates that the surrogate pair is incomplete or contains an invalid code point. + +!!! failure "Example message" + + ``` + parse error at 14: missing or wrong low surrogate + ``` + +!!! note + + This exception is not used any more. Instead [json.exception.parse_error.101](#jsonexceptionparse_error101) with a more detailed description is used. + +### json.exception.parse_error.103 + +Unicode supports code points up to 0x10FFFF. Code points above 0x10FFFF are invalid. + +!!! failure "Example message" + + ``` + parse error: code points above 0x10FFFF are invalid + ``` + +!!! note + + This exception is not used any more. Instead [json.exception.parse_error.101](#jsonexceptionparse_error101) with a more detailed description is used. + +### json.exception.parse_error.104 + +[RFC 6902](https://tools.ietf.org/html/rfc6902) requires a JSON Patch document to be a JSON document that represents an array of objects. + +!!! failure "Example message" + + ``` + [json.exception.parse_error.104] parse error: JSON patch must be an array of objects + ``` + +### json.exception.parse_error.105 + +An operation of a JSON Patch document must contain exactly one "op" member, whose value indicates the operation to perform. Its value must be one of "add", "remove", "replace", "move", "copy", or "test"; other values are errors. + +!!! failure "Example message" + + ``` + [json.exception.parse_error.105] parse error: operation 'add' must have member 'value' + ``` + ``` + [json.exception.parse_error.105] parse error: operation 'copy' must have string member 'from' + ``` + ``` + [json.exception.parse_error.105] parse error: operation value 'foo' is invalid + ``` + +### json.exception.parse_error.106 + +An array index in a JSON Pointer ([RFC 6901](https://tools.ietf.org/html/rfc6901)) may be `0` or any number without a leading `0`. + +!!! failure "Example message" + + ``` + [json.exception.parse_error.106] parse error: array index '01' must not begin with '0' + ``` + +### json.exception.parse_error.107 + +A JSON Pointer must be a Unicode string containing a sequence of zero or more reference tokens, each prefixed by a `/` character. + +!!! failure "Example message" + + ``` + [json.exception.parse_error.107] parse error at byte 1: JSON pointer must be empty or begin with '/' - was: 'foo' + ``` + +### json.exception.parse_error.108 + +In a JSON Pointer, only `~0` and `~1` are valid escape sequences. + +!!! failure "Example message" + + ``` + [json.exception.parse_error.108] parse error: escape character '~' must be followed with '0' or '1' + ``` + +### json.exception.parse_error.109 + +A JSON Pointer array index must be a number. + +!!! failure "Example messages" + + ``` + [json.exception.parse_error.109] parse error: array index 'one' is not a number + ``` + ``` + [json.exception.parse_error.109] parse error: array index '+1' is not a number + ``` + +### json.exception.parse_error.110 + +When parsing CBOR or MessagePack, the byte vector ends before the complete value has been read. + +!!! failure "Example message" + + ``` + [json.exception.parse_error.110] parse error at byte 5: syntax error while parsing CBOR string: unexpected end of input + ``` + ``` + [json.exception.parse_error.110] parse error at byte 2: syntax error while parsing UBJSON value: expected end of input; last byte: 0x5A + ``` + +### json.exception.parse_error.112 + +An unexpected byte was read in a [binary format](../features/binary_formats/index.md) or length information is invalid ([BSON](../features/binary_formats/bson.md)). + +!!! failure "Example messages" + + ``` + [json.exception.parse_error.112] parse error at byte 1: syntax error while parsing CBOR value: invalid byte: 0x1C + ``` + ``` + [json.exception.parse_error.112] parse error at byte 1: syntax error while parsing MessagePack value: invalid byte: 0xC1 + ``` + ``` + [json.exception.parse_error.112] parse error at byte 4: syntax error while parsing BJData size: expected '#' after type information; last byte: 0x02 + ``` + ``` + [json.exception.parse_error.112] parse error at byte 4: syntax error while parsing UBJSON size: expected '#' after type information; last byte: 0x02 + ``` + ``` + [json.exception.parse_error.112] parse error at byte 10: syntax error while parsing BSON string: string length must be at least 1, is -2147483648 + ``` + ``` + [json.exception.parse_error.112] parse error at byte 15: syntax error while parsing BSON binary: byte array length cannot be negative, is -1 + ``` + +### json.exception.parse_error.113 + +While parsing a map key, a value that is not a string has been read. + +!!! failure "Example messages" + + ``` + [json.exception.parse_error.113] parse error at byte 2: syntax error while parsing CBOR string: expected length specification (0x60-0x7B) or indefinite string type (0x7F); last byte: 0xFF + ``` + ``` + [json.exception.parse_error.113] parse error at byte 2: syntax error while parsing MessagePack string: expected length specification (0xA0-0xBF, 0xD9-0xDB); last byte: 0xFF + ``` + ``` + [json.exception.parse_error.113] parse error at byte 2: syntax error while parsing UBJSON char: byte after 'C' must be in range 0x00..0x7F; last byte: 0x82 + ``` + +### json.exception.parse_error.114 + +The parsing of the corresponding BSON record type is not implemented (yet). + +!!! failure "Example message" + + ``` + [json.exception.parse_error.114] parse error at byte 5: Unsupported BSON record type 0xFF + ``` + +### json.exception.parse_error.115 + +A UBJSON high-precision number could not be parsed. + +!!! failure "Example message" + + ``` + [json.exception.parse_error.115] parse error at byte 5: syntax error while parsing UBJSON high-precision number: invalid number text: 1A + ``` + +## Iterator errors + +This exception is thrown if iterators passed to a library function do not match +the expected semantics. + +Exceptions have ids 2xx. + +??? example + + The following code shows how an `invalid_iterator` exception can be caught. + + ```cpp + --8<-- "examples/invalid_iterator.cpp" + ``` + + Output: + + ``` + --8<-- "examples/invalid_iterator.output" + ``` + +### json.exception.invalid_iterator.201 + +The iterators passed to constructor `basic_json(InputIT first, InputIT last)` are not compatible, meaning they do not belong to the same container. Therefore, the range (`first`, `last`) is invalid. + +!!! failure "Example message" + + ``` + [json.exception.invalid_iterator.201] iterators are not compatible + ``` + +### json.exception.invalid_iterator.202 + +In the [erase](../api/basic_json/erase.md) or insert function, the passed iterator `pos` does not belong to the JSON value for which the function was called. It hence does not define a valid position for the deletion/insertion. + +!!! failure "Example messages" + + ``` + [json.exception.invalid_iterator.202] iterator does not fit current value + ``` + ``` + [json.exception.invalid_iterator.202] iterators first and last must point to objects + ``` + +### json.exception.invalid_iterator.203 + +Either iterator passed to function [`erase(IteratorType first, IteratorType last`)](../api/basic_json/erase.md) does not belong to the JSON value from which values shall be erased. It hence does not define a valid range to delete values from. + +!!! failure "Example message" + + ``` + [json.exception.invalid_iterator.203] iterators do not fit current value + ``` + +### json.exception.invalid_iterator.204 + +When an iterator range for a primitive type (number, boolean, or string) is passed to a constructor or an [erase](../api/basic_json/erase.md) function, this range has to be exactly (`begin(),` `end()),` because this is the only way the single stored value is expressed. All other ranges are invalid. + +!!! failure "Example message" + + ``` + [json.exception.invalid_iterator.204] iterators out of range + ``` + +### json.exception.invalid_iterator.205 + +When an iterator for a primitive type (number, boolean, or string) is passed to an [erase](../api/basic_json/erase.md) function, the iterator has to be the `begin()` iterator, because it is the only way to address the stored value. All other iterators are invalid. + +!!! failure "Example message" + + ``` + [json.exception.invalid_iterator.205] iterator out of range + ``` + +### json.exception.invalid_iterator.206 + +The iterators passed to constructor `basic_json(InputIT first, InputIT last)` belong to a JSON null value and hence to not define a valid range. + +!!! failure "Example message" + + ``` + [json.exception.invalid_iterator.206] cannot construct with iterators from null + ``` + +### json.exception.invalid_iterator.207 + +The `key()` member function can only be used on iterators belonging to a JSON object, because other types do not have a concept of a key. + +!!! failure "Example message" + + ``` + [json.exception.invalid_iterator.207] cannot use key() for non-object iterators + ``` + + +### json.exception.invalid_iterator.208 + +The `operator[]` to specify a concrete offset cannot be used on iterators belonging to a JSON object, because JSON objects are unordered. + +!!! failure "Example message" + + ``` + [json.exception.invalid_iterator.208] cannot use operator[] for object iterators + ``` + +### json.exception.invalid_iterator.209 + +The offset operators (`+`, `-`, `+=`, `-=`) cannot be used on iterators belonging to a JSON object, because JSON objects are unordered. + +!!! failure "Example message" + + ``` + [json.exception.invalid_iterator.209] cannot use offsets with object iterators + ``` + +### json.exception.invalid_iterator.210 + +The iterator range passed to the insert function are not compatible, meaning they do not belong to the same container. Therefore, the range (`first`, `last`) is invalid. + +!!! failure "Example message" + + ``` + [json.exception.invalid_iterator.210] iterators do not fit + ``` + +### json.exception.invalid_iterator.211 + +The iterator range passed to the insert function must not be a subrange of the container to insert to. + +!!! failure "Example message" + + ``` + [json.exception.invalid_iterator.211] passed iterators may not belong to container + ``` + +### json.exception.invalid_iterator.212 + +When two iterators are compared, they must belong to the same container. + +!!! failure "Example message" + + ``` + [json.exception.invalid_iterator.212] cannot compare iterators of different containers + ``` + +### json.exception.invalid_iterator.213 + +The order of object iterators cannot be compared, because JSON objects are unordered. + +!!! failure "Example message" + + ``` + [json.exception.invalid_iterator.213] cannot compare order of object iterators + ``` + +### json.exception.invalid_iterator.214 + +Cannot get value for iterator: Either the iterator belongs to a null value or it is an iterator to a primitive type (number, boolean, or string), but the iterator is different to `begin()`. + +!!! failure "Example message" + + ``` + [json.exception.invalid_iterator.214] cannot get value + ``` + +## Type errors + +This exception is thrown in case of a type error; that is, a library function is executed on a JSON value whose type does not match the expected semantics. + +Exceptions have ids 3xx. + +??? example + + The following code shows how a `type_error` exception can be caught. + + ```cpp + --8<-- "examples/type_error.cpp" + ``` + + Output: + + ``` + --8<-- "examples/type_error.output" + ``` + +### json.exception.type_error.301 + +To create an object from an initializer list, the initializer list must consist only of a list of pairs whose first element is a string. When this constraint is violated, an array is created instead. + +!!! failure "Example message" + + ``` + [json.exception.type_error.301] cannot create object from initializer list + ``` + +### json.exception.type_error.302 + +During implicit or explicit value conversion, the JSON type must be compatible to the target type. For instance, a JSON string can only be converted into string types, but not into numbers or boolean types. + +!!! failure "Example messages" + + ``` + [json.exception.type_error.302] type must be object, but is null + ``` + ``` + [json.exception.type_error.302] type must be string, but is object + ``` + +### json.exception.type_error.303 + +To retrieve a reference to a value stored in a `basic_json` object with `get_ref`, the type of the reference must match the value type. For instance, for a JSON array, the `ReferenceType` must be `array_t &`. + +!!! failure "Example messages" + + ``` + [json.exception.type_error.303] incompatible ReferenceType for get_ref, actual type is object + ``` + ``` + [json.exception.type_error.303] incompatible ReferenceType for get_ref, actual type is number" + ``` + +### json.exception.type_error.304 + +The `at()` member functions can only be executed for certain JSON types. + +!!! failure "Example messages" + + ``` + [json.exception.type_error.304] cannot use at() with string + ``` + ``` + [json.exception.type_error.304] cannot use at() with number + ``` + +### json.exception.type_error.305 + +The `operator[]` member functions can only be executed for certain JSON types. + +!!! failure "Example messages" + + ``` + [json.exception.type_error.305] cannot use operator[] with a string argument with array + ``` + ``` + [json.exception.type_error.305] cannot use operator[] with a numeric argument with object + ``` + +### json.exception.type_error.306 + +The `value()` member functions can only be executed for certain JSON types. + +!!! failure "Example message" + + ``` + [json.exception.type_error.306] cannot use value() with number + ``` + +### json.exception.type_error.307 + +The [`erase()`](../api/basic_json/erase.md) member functions can only be executed for certain JSON types. + +!!! failure "Example message" + + ``` + [json.exception.type_error.307] cannot use erase() with string + ``` + +### json.exception.type_error.308 + +The `push_back()` and `operator+=` member functions can only be executed for certain JSON types. + +!!! failure "Example message" + + ``` + [json.exception.type_error.308] cannot use push_back() with string + ``` + +### json.exception.type_error.309 + +The `insert()` member functions can only be executed for certain JSON types. + +!!! failure "Example messages" + + ``` + [json.exception.type_error.309] cannot use insert() with array + ``` + ``` + [json.exception.type_error.309] cannot use insert() with number + ``` + +### json.exception.type_error.310 + +The `swap()` member functions can only be executed for certain JSON types. + +!!! failure "Example message" + + ``` + [json.exception.type_error.310] cannot use swap() with number + ``` + +### json.exception.type_error.311 + +The `emplace()` and `emplace_back()` member functions can only be executed for certain JSON types. + +!!! failure "Example messages" + + ``` + [json.exception.type_error.311] cannot use emplace() with number + ``` + ``` + [json.exception.type_error.311] cannot use emplace_back() with number + ``` + +### json.exception.type_error.312 + +The `update()` member functions can only be executed for certain JSON types. + +!!! failure "Example message" + + ``` + [json.exception.type_error.312] cannot use update() with array + ``` + +### json.exception.type_error.313 + +The `unflatten` function converts an object whose keys are JSON Pointers back into an arbitrary nested JSON value. The JSON Pointers must not overlap, because then the resulting value would not be well-defined. + +!!! failure "Example message" + + ``` + [json.exception.type_error.313] invalid value to unflatten + ``` + +### json.exception.type_error.314 + +The `unflatten` function only works for an object whose keys are JSON Pointers. + +!!! failure "Example message" + + Calling `unflatten()` on an array `#!json [1,2,3]`: + + ``` + [json.exception.type_error.314] only objects can be unflattened + ``` + +### json.exception.type_error.315 + +The `unflatten()` function only works for an object whose keys are JSON Pointers and whose values are primitive. + +!!! failure "Example message" + + Calling `unflatten()` on an object `#!json {"/1", [1,2,3]}`: + + ``` + [json.exception.type_error.315] values in object must be primitive + ``` + +### json.exception.type_error.316 + +The `dump()` function only works with UTF-8 encoded strings; that is, if you assign a `std::string` to a JSON value, make sure it is UTF-8 encoded. + +!!! failure "Example message" + + Calling `dump()` on a JSON value containing an ISO 8859-1 encoded string: + ``` + [json.exception.type_error.316] invalid UTF-8 byte at index 15: 0x6F + ``` + +!!! tip + + - Store the source file with UTF-8 encoding. + - Pass an error handler as last parameter to the `dump()` function to avoid this exception: + - `json::error_handler_t::replace` will replace invalid bytes sequences with `U+FFFD` + - `json::error_handler_t::ignore` will silently ignore invalid byte sequences + +### json.exception.type_error.317 + +The dynamic type of the object cannot be represented in the requested serialization format (e.g. a raw `true` or `null` JSON object cannot be serialized to BSON) + +!!! failure "Example messages" + + Serializing `#!json null` to BSON: + ``` + [json.exception.type_error.317] to serialize to BSON, top-level type must be object, but is null + ``` + Serializing `#!json [1,2,3]` to BSON: + ``` + [json.exception.type_error.317] to serialize to BSON, top-level type must be object, but is array + ``` + +!!! tip + + Encapsulate the JSON value in an object. That is, instead of serializing `#!json true`, serialize `#!json {"value": true}` + +## Out of range + +This exception is thrown in case a library function is called on an input parameter that exceeds the expected range, for instance in case of array indices or nonexisting object keys. + +Exceptions have ids 4xx. + +??? example + + The following code shows how an `out_of_range` exception can be caught. + + ```cpp + --8<-- "examples/out_of_range.cpp" + ``` + + Output: + + ``` + --8<-- "examples/out_of_range.output" + ``` + +### json.exception.out_of_range.401 + +The provided array index `i` is larger than `size-1`. + +!!! failure "Example message" + + ``` + array index 3 is out of range + ``` + +### json.exception.out_of_range.402 + +The special array index `-` in a JSON Pointer never describes a valid element of the array, but the index past the end. That is, it can only be used to add elements at this position, but not to read it. + +!!! failure "Example message" + + ``` + array index '-' (3) is out of range + ``` + +### json.exception.out_of_range.403 + +The provided key was not found in the JSON object. + +!!! failure "Example message" + + ``` + key 'foo' not found + ``` + +### json.exception.out_of_range.404 + +A reference token in a JSON Pointer could not be resolved. + +!!! failure "Example message" + + ``` + unresolved reference token 'foo' + ``` + +### json.exception.out_of_range.405 + +The JSON Patch operations 'remove' and 'add' can not be applied to the root element of the JSON value. + +!!! failure "Example message" + + ``` + JSON pointer has no parent + ``` + +### json.exception.out_of_range.406 + +A parsed number could not be stored as without changing it to NaN or INF. + +!!! failure "Example message" + + ``` + number overflow parsing '10E1000' + ``` + +### json.exception.out_of_range.407 + +UBJSON and BSON only support integer numbers up to 9223372036854775807. + +!!! failure "Example message" + + ``` + number overflow serializing '9223372036854775808' + ``` + +!!! note + + Since version 3.9.0, integer numbers beyond int64 are serialized as high-precision UBJSON numbers, and this exception does not further occur. + +### json.exception.out_of_range.408 + +The size (following `#`) of an UBJSON array or object exceeds the maximal capacity. + +!!! failure "Example message" + + ``` + excessive array size: 8658170730974374167 + ``` + +### json.exception.out_of_range.409 + +Key identifiers to be serialized to BSON cannot contain code point U+0000, since the key is stored as zero-terminated c-string. + +!!! failure "Example message" + + ``` + BSON key cannot contain code point U+0000 (at byte 2) + ``` + +## Further exceptions + +This exception is thrown in case of errors that cannot be classified with the +other exception types. + +Exceptions have ids 5xx. + +??? example + + The following code shows how an `other_error` exception can be caught. + + ```cpp + --8<-- "examples/other_error.cpp" + ``` + + Output: + + ``` + --8<-- "examples/other_error.output" + ``` + +### json.exception.other_error.501 + +A JSON Patch operation 'test' failed. The unsuccessful operation is also printed. + +!!! failure "Example message" + + Executing `#!json {"op":"test", "path":"/baz", "value":"bar"}` on `#!json {"baz": "qux"}`: + + ``` + [json.exception.other_error.501] unsuccessful: {"op":"test","path":"/baz","value":"bar"} + ``` diff --git a/docs/mkdocs/docs/home/faq.md b/docs/mkdocs/docs/home/faq.md new file mode 100644 index 00000000..dd426e07 --- /dev/null +++ b/docs/mkdocs/docs/home/faq.md @@ -0,0 +1,180 @@ +# Frequently Asked Questions (FAQ) + +## Known bugs + +### Brace initialization yields arrays + +!!! question + + Why does + + ```cpp + json j{true}; + ``` + + and + + ```cpp + json j(true); + ``` + + yield different results (`#!json [true]` vs. `#!json true`)? + +This is a known issue, and -- even worse -- the behavior differs between GCC and Clang. The "culprit" for this is the library's constructor overloads for initializer lists to allow syntax like + +```cpp +json array = {1, 2, 3, 4}; +``` + +for arrays and + +```cpp +json object = {{"one", 1}, {"two", 2}}; +``` + +for objects. + +!!! tip + + To avoid any confusion and ensure portable code, **do not** use brace initialization with the types `basic_json`, `json`, or `ordered_json` unless you want to create an object or array as shown in the examples above. + +## Limitations + +### Relaxed parsing + +!!! question + + Can you add an option to ignore trailing commas? + +This library does not support any feature which would jeopardize interoperability. + + +### Parse errors reading non-ASCII characters + +!!! question "Questions" + + - Why is the parser complaining about a Chinese character? + - Does the library support Unicode? + - I get an exception `[json.exception.parse_error.101] parse error at line 1, column 53: syntax error while parsing value - invalid string: ill-formed UTF-8 byte; last read: '"Testé$')"` + +The library supports **Unicode input** as follows: + +- Only **UTF-8** encoded input is supported which is the default encoding for JSON according to [RFC 8259](https://tools.ietf.org/html/rfc8259.html#section-8.1). +- `std::u16string` and `std::u32string` can be parsed, assuming UTF-16 and UTF-32 encoding, respectively. These encodings are not supported when reading from files or other input containers. +- Other encodings such as Latin-1 or ISO 8859-1 are **not** supported and will yield parse or serialization errors. +- [Unicode noncharacters](http://www.unicode.org/faq/private_use.html#nonchar1) will not be replaced by the library. +- Invalid surrogates (e.g., incomplete pairs such as `\uDEAD`) will yield parse errors. +- The strings stored in the library are UTF-8 encoded. When using the default string type (`std::string`), note that its length/size functions return the number of stored bytes rather than the number of characters or glyphs. +- When you store strings with different encodings in the library, calling [`dump()`](https://nlohmann.github.io/json/classnlohmann_1_1basic__json_a50ec80b02d0f3f51130d4abb5d1cfdc5.html#a50ec80b02d0f3f51130d4abb5d1cfdc5) may throw an exception unless `json::error_handler_t::replace` or `json::error_handler_t::ignore` are used as error handlers. + +In most cases, the parser is right to complain, because the input is not UTF-8 encoded. This is especially true for Microsoft Windows where Latin-1 or ISO 8859-1 is often the standard encoding. + + +### Wide string handling + +!!! question + + Why are wide strings (e.g., `std::wstring`) dumped as arrays of numbers? + +As described [above](#parse-errors-reading-non-ascii-characters), the library assumes UTF-8 as encoding. To store a wide string, you need to change the encoding. + +!!! example + + ```cpp + #include // codecvt_utf8 + #include // wstring_convert + + // encoding function + std::string to_utf8(std::wstring& wide_string) + { + static std::wstring_convert> utf8_conv; + return utf8_conv.to_bytes(wide_string); + } + + json j; + std::wstring ws = L"車B1234 こんにちは"; + + j["original"] = ws; + j["encoded"] = to_utf8(ws); + + std::cout << j << std::endl; + ``` + + The result is: + + ```json + { + "encoded": "車B1234 こんにちは", + "original": [36554, 66, 49, 50, 51, 52, 32, 12371, 12435, 12395, 12385, 12399] + } + ``` + +## Exceptions + +### Parsing without exceptions + +!!! question + + Is it possible to indicate a parse error without throwing an exception? + +Yes, see [Parsing and exceptions](../features/parsing/parse_exceptions.md). + + +### Key name in exceptions + +!!! question + + Can I get the key of the object item that caused an exception? + +Yes, you can. Please define the symbol [`JSON_DIAGNOSTICS`](../api/macros/json_diagnostics.md) to get [extended diagnostics messages](exceptions.md#extended-diagnostic-messages). + + +## Serialization issues + + +### Number precision + +!!! question + + - It seems that precision is lost when serializing a double. + - Can I change the precision for floating-point serialization? + +The library uses `std::numeric_limits::digits10` (15 for IEEE `double`s) digits for serialization. This value is sufficient to guarantee roundtripping. If one uses more than this number of digits of precision, then string -> value -> string is not guaranteed to round-trip. + +!!! quote "[cppreference.com](https://en.cppreference.com/w/cpp/types/numeric_limits/digits10)" + + The value of `std::numeric_limits::digits10` is the number of base-10 digits that can be represented by the type T without change, that is, any number with this many significant decimal digits can be converted to a value of type T and back to decimal form, without change due to rounding or overflow. + +!!! tip + + The website https://float.exposed gives a good insight into the internal storage of floating-point numbers. + +See [this section](../features/types/number_handling.md#number-serialization) on the library's number handling for more information. + +## Compilation issues + +### Android SDK + +!!! question + + Why does the code not compile with Android SDK? + +Android defaults to using very old compilers and C++ libraries. To fix this, add the following to your `Application.mk`. This will switch to the LLVM C++ library, the Clang compiler, and enable C++11 and other features disabled by default. + +```ini +APP_STL := c++_shared +NDK_TOOLCHAIN_VERSION := clang3.6 +APP_CPPFLAGS += -frtti -fexceptions +``` + +The code compiles successfully with [Android NDK](https://developer.android.com/ndk/index.html?hl=ml), Revision 9 - 11 (and possibly later) and [CrystaX's Android NDK](https://www.crystax.net/en/android/ndk) version 10. + + +### Missing STL function + +!!! question "Questions" + + - Why do I get a compilation error `'to_string' is not a member of 'std'` (or similarly, for `strtod` or `strtof`)? + - Why does the code not compile with MinGW or Android SDK? + +This is not an issue with the code, but rather with the compiler itself. On Android, see above to build with a newer environment. For MinGW, please refer to [this site](http://tehsausage.com/mingw-to-string) and [this discussion](https://github.com/nlohmann/json/issues/136) for information on how to fix this bug. For Android NDK using `APP_STL := gnustl_static`, please refer to [this discussion](https://github.com/nlohmann/json/issues/219). diff --git a/docs/mkdocs/docs/home/license.md b/docs/mkdocs/docs/home/license.md new file mode 100644 index 00000000..baef2f51 --- /dev/null +++ b/docs/mkdocs/docs/home/license.md @@ -0,0 +1,21 @@ +# License + + + +The class is licensed under the [MIT License](https://opensource.org/licenses/MIT): + +Copyright © 2013-2022 [Niels Lohmann](https://nlohmann.me) + +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. + +* * * + +The class contains the UTF-8 Decoder from Bjoern Hoehrmann which is licensed under the [MIT License](https://opensource.org/licenses/MIT) (see above). Copyright © 2008-2009 [Björn Hoehrmann](http://bjoern.hoehrmann.de/) + +The class contains a slightly modified version of the Grisu2 algorithm from Florian Loitsch which is licensed under the [MIT License](https://opensource.org/licenses/MIT) (see above). Copyright © 2009 [Florian Loitsch](https://florian.loitsch.com/) + +The class contains a copy of [Hedley](https://nemequ.github.io/hedley/) from Evan Nemerson which is licensed as [CC0-1.0](https://creativecommons.org/publicdomain/zero/1.0/). diff --git a/docs/mkdocs/docs/home/releases.md b/docs/mkdocs/docs/home/releases.md new file mode 100644 index 00000000..5237c425 --- /dev/null +++ b/docs/mkdocs/docs/home/releases.md @@ -0,0 +1,1225 @@ +# Releases + +## v3.7.3 + +!!! summary "Files" + + - [include.zip](https://github.com/nlohmann/json/releases/download/v3.7.3/include.zip) (274 KB) + - [include.zip.asc](https://github.com/nlohmann/json/releases/download/v3.7.3/include.zip.asc) (1 KB) + - [json.hpp](https://github.com/nlohmann/json/releases/download/v3.7.3/json.hpp) (791 KB) + - [json.hpp.asc](https://github.com/nlohmann/json/releases/download/v3.7.3/json.hpp.asc) (1 KB) + +Release date: 2019-11-17 +SHA-256: 3b5d2b8f8282b80557091514d8ab97e27f9574336c804ee666fda673a9b59926 (json.hpp), 87b5884741427220d3a33df1363ae0e8b898099fbc59f1c451113f6732891014 (include.zip) + +### Summary + +This release fixes a bug introduced in release 3.7.2 which could yield quadratic complexity in destructor calls. All changes are backward-compatible. + +### :bug: Bug Fixes + +- Removed `reserve()` calls from the destructor which could lead to quadratic complexity. #1837 #1838 + +### :fire: Deprecated functions + +This release does not deprecate any functions. As an overview, the following functions have been deprecated in earlier versions and will be removed in the next major version (i.e., 4.0.0): + +- Function [`iterator_wrapper`](http://nlohmann.github.io/json/doxygen/classnlohmann_1_1basic__json_af1592a06bc63811886ade4f9d965045e.html#af1592a06bc63811886ade4f9d965045e) are deprecated. Please use the member function [`items()`](http://nlohmann.github.io/json/doxygen/classnlohmann_1_1basic__json_afe3e137ace692efa08590d8df40f58dd.html#afe3e137ace692efa08590d8df40f58dd) instead. +- Functions [`friend std::istream& operator<<(basic_json&, std::istream&)`](http://nlohmann.github.io/json/doxygen/classnlohmann_1_1basic__json_ab7285a92514fcdbe6de505ebaba92ea3.html#ab7285a92514fcdbe6de505ebaba92ea3) and [`friend std::ostream& operator>>(const basic_json&, std::ostream&)`](http://nlohmann.github.io/json/doxygen/classnlohmann_1_1basic__json_a9e06deabe69262c3ffc5533d32856983.html#a9e06deabe69262c3ffc5533d32856983) are deprecated. Please use [`friend std::istream& operator>>(std::istream&, basic_json&)`](http://nlohmann.github.io/json/doxygen/classnlohmann_1_1basic__json_aaf363408931d76472ded14017e59c9e8.html#aaf363408931d76472ded14017e59c9e8) and [`friend operator<<(std::ostream&, const basic_json&)`](http://nlohmann.github.io/json/doxygen/classnlohmann_1_1basic__json_a5e34c5435e557d0bf666bd7311211405.html#a5e34c5435e557d0bf666bd7311211405) instead. + + +## v3.7.2 + +!!! summary "Files" + + - [include.zip](https://github.com/nlohmann/json/releases/download/v3.7.2/include.zip) (274 KB) + - [include.zip.asc](https://github.com/nlohmann/json/releases/download/v3.7.2/include.zip.asc) (1 KB) + - [json.hpp](https://github.com/nlohmann/json/releases/download/v3.7.2/json.hpp) (791 KB) + - [json.hpp.asc](https://github.com/nlohmann/json/releases/download/v3.7.2/json.hpp.asc) (1 KB) + +Release date: 2019-11-10 +SHA-256: 0a65fcbbe1b334d3f45c9498e5ee28c3f3b2428aea98557da4a3ff12f0f14ad6 (json.hpp), 67f69c9a93b7fa0612dc1b6273119d2c560317333581845f358aaa68bff8f087 (include.zip) + +### Summary + +Project [bad_json_parsers](https://github.com/lovasoa/bad_json_parsers) tested how JSON parser libraries react on **deeply nested inputs**. It turns out that this library segfaulted at a certain nesting depth. This bug was fixed with this release. **Now the parsing is only bounded by the available memory.** All changes are backward-compatible. + +### :bug: Bug Fixes + +* Fixed a bug that lead to stack overflow for deeply nested JSON values (objects, array) by changing the implementation of the destructor from a recursive to an iterative approach. #832, #1419, #1835 + +### :hammer: Further Changes + +* Added WhiteStone Bolt. #1830 + +### :fire: Deprecated functions + +This release does not deprecate any functions. As an overview, the following functions have been deprecated in earlier versions and will be removed in the next major version (i.e., 4.0.0): + +- Function [`iterator_wrapper`](http://nlohmann.github.io/json/doxygen/classnlohmann_1_1basic__json_af1592a06bc63811886ade4f9d965045e.html#af1592a06bc63811886ade4f9d965045e) are deprecated. Please use the member function [`items()`](http://nlohmann.github.io/json/doxygen/classnlohmann_1_1basic__json_afe3e137ace692efa08590d8df40f58dd.html#afe3e137ace692efa08590d8df40f58dd) instead. +- Functions [`friend std::istream& operator<<(basic_json&, std::istream&)`](http://nlohmann.github.io/json/doxygen/classnlohmann_1_1basic__json_ab7285a92514fcdbe6de505ebaba92ea3.html#ab7285a92514fcdbe6de505ebaba92ea3) and [`friend std::ostream& operator>>(const basic_json&, std::ostream&)`](http://nlohmann.github.io/json/doxygen/classnlohmann_1_1basic__json_a9e06deabe69262c3ffc5533d32856983.html#a9e06deabe69262c3ffc5533d32856983) are deprecated. Please use [`friend std::istream& operator>>(std::istream&, basic_json&)`](http://nlohmann.github.io/json/doxygen/classnlohmann_1_1basic__json_aaf363408931d76472ded14017e59c9e8.html#aaf363408931d76472ded14017e59c9e8) and [`friend operator<<(std::ostream&, const basic_json&)`](http://nlohmann.github.io/json/doxygen/classnlohmann_1_1basic__json_a5e34c5435e557d0bf666bd7311211405.html#a5e34c5435e557d0bf666bd7311211405) instead. + +## v3.7.1 + +!!! summary "Files" + + - [include.zip](https://github.com/nlohmann/json/releases/download/v3.7.1/include.zip) (273 KB) + - [include.zip.asc](https://github.com/nlohmann/json/releases/download/v3.7.1/include.zip.asc) (1 KB) + - [json.hpp](https://github.com/nlohmann/json/releases/download/v3.7.1/json.hpp) (789 KB) + - [json.hpp.asc](https://github.com/nlohmann/json/releases/download/v3.7.1/json.hpp.asc) (1 KB) + +Release date: 2019-11-06 +SHA-256: b5ba7228f3c22a882d379e93d08eab4349458ee16fbf45291347994eac7dc7ce (json.hpp), 77b9f54b34e7989e6f402afb516f7ff2830df551c3a36973085e2c7a6b1045fe (include.zip) + +### Summary + +This release fixes several small bugs in the library. All changes are backward-compatible. + +### :bug: Bug Fixes + +- Fixed a segmentation fault when serializing `std::int64_t` minimum value. #1708 #1722 +- Fixed the [`contains()`](https://nlohmann.github.io/json/classnlohmann_1_1basic__json_ab23b04802eb9da97dc3f664e54e09cb3.html#ab23b04802eb9da97dc3f664e54e09cb3) function for JSON Pointers. #1727 #1741 +- Fixed too lax SFINAE guard for conversion from `std::pair` and `std::tuple` to `json`. #1805 #1806 #1825 #1826 +- Fixed some regressions detected by UBSAN. Updated CI to use Clang-Tidy 7.1.0. #1716 #1728 +- Fixed integer truncation in `iteration_proxy`. #1797 +- Updated [Hedley](https://github.com/nemequ/hedley) to v11 to [fix a E2512 error](https://github.com/nemequ/hedley/issues/28) in MSVC. #1799 +- Fixed a compile error in enum deserialization of non non-default-constructible types. #1647 #1821 +- Fixed the conversion from `json` to `std::valarray`. + +### :zap: Improvements + +- The [`items()`](https://nlohmann.github.io/json/classnlohmann_1_1basic__json_afe3e137ace692efa08590d8df40f58dd.html#afe3e137ace692efa08590d8df40f58dd) function can now be used with a custom string type. #1765 +- Made [`json_pointer::back`](https://nlohmann.github.io/json/classnlohmann_1_1json__pointer_a213bc67c32a30c68ac6bf06f5195d482.html#a213bc67c32a30c68ac6bf06f5195d482) `const`. #1764 #1769 +- Meson is part of the release archive. #1672 #1694 +- Improved documentation on the Meson and Spack package manager. #1694 #1720 + +### :hammer: Further Changes + +- Added GitHub Workflow with `ubuntu-latest`/GCC 7.4.0 as CI step. +- Added GCC 9 to Travis CI to compile with C++20 support. #1724 +- Added MSVC 2019 to the AppVeyor CI. #1780 +- Added badge to [fuzzing status](https://bugs.chromium.org/p/oss-fuzz/issues/list?sort=-opened&can=1&q=proj:json). +- Fixed some cppcheck warnings. #1760 +- Fixed several typos in the documentation. #1720 #1767 #1803 +- Added documentation on the `JSON_THROW_USER`, `JSON_TRY_USER`, and `JSON_CATCH_USER` macros to control user-defined exception handling. +- Used GitHub's [CODEOWNERS](https://github.com/nlohmann/json/blob/develop/.github/CODEOWNERS) and [SECURITY](https://github.com/nlohmann/json/blob/develop/.github/SECURITY.md) feature. +- Removed `GLOB` from CMake files. #1779 +- Updated to [Doctest](https://github.com/onqtam/doctest) 2.3.5. + +### :fire: Deprecated functions + +This release does not deprecate any functions. As an overview, the following functions have been deprecated in earlier versions and will be removed in the next major version (i.e., 4.0.0): + +- Function [`iterator_wrapper`](http://nlohmann.github.io/json/doxygen/classnlohmann_1_1basic__json_af1592a06bc63811886ade4f9d965045e.html#af1592a06bc63811886ade4f9d965045e) are deprecated. Please use the member function [`items()`](http://nlohmann.github.io/json/doxygen/classnlohmann_1_1basic__json_afe3e137ace692efa08590d8df40f58dd.html#afe3e137ace692efa08590d8df40f58dd) instead. +- Functions [`friend std::istream& operator<<(basic_json&, std::istream&)`](http://nlohmann.github.io/json/doxygen/classnlohmann_1_1basic__json_ab7285a92514fcdbe6de505ebaba92ea3.html#ab7285a92514fcdbe6de505ebaba92ea3) and [`friend std::ostream& operator>>(const basic_json&, std::ostream&)`](http://nlohmann.github.io/json/doxygen/classnlohmann_1_1basic__json_a9e06deabe69262c3ffc5533d32856983.html#a9e06deabe69262c3ffc5533d32856983) are deprecated. Please use [`friend std::istream& operator>>(std::istream&, basic_json&)`](http://nlohmann.github.io/json/doxygen/classnlohmann_1_1basic__json_aaf363408931d76472ded14017e59c9e8.html#aaf363408931d76472ded14017e59c9e8) and [`friend operator<<(std::ostream&, const basic_json&)`](http://nlohmann.github.io/json/doxygen/classnlohmann_1_1basic__json_a5e34c5435e557d0bf666bd7311211405.html#a5e34c5435e557d0bf666bd7311211405) instead. + +## v3.7.0 + +!!! summary "Files" + + - [include.zip](https://github.com/nlohmann/json/releases/download/v3.7.0/include.zip) (143 KB) + - [include.zip.asc](https://github.com/nlohmann/json/releases/download/v3.7.0/include.zip.asc) (1 KB) + - [json.hpp](https://github.com/nlohmann/json/releases/download/v3.7.0/json.hpp) (782 KB) + - [json.hpp.asc](https://github.com/nlohmann/json/releases/download/v3.7.0/json.hpp.asc) (1 KB) + +Release date: 2019-07-28 +SHA-256: a503214947952b69f0062f572cb74c17582a495767446347ce2e452963fc2ca4 (json.hpp), 541c34438fd54182e9cdc68dd20c898d766713ad6d901fb2c6e28ff1f1e7c10d (include.zip) + +### Summary + +This release introduces a few convenience functions and performs a lot of house keeping (bug fixes and small improvements). All changes are backward-compatible. + +### :sparkles: New Features + +- Add overload of the **[`contains`](http://nlohmann.github.io/json/doxygen/classnlohmann_1_1basic__json_ab23b04802eb9da97dc3f664e54e09cb3.html#ab23b04802eb9da97dc3f664e54e09cb3) function** to check if a JSON pointer is valid without throwing exceptions, just like its [counterpart for object keys](http://nlohmann.github.io/json/doxygen/classnlohmann_1_1basic__json_a9286acdc0578fc66e9346323e69fc0e3.html#a9286acdc0578fc66e9346323e69fc0e3). #1600 +- Add a function **[`to_string`](http://nlohmann.github.io/json/doxygen/namespacenlohmann_a6ce645a0b8717757e096a5b5773b7a16.html#a6ce645a0b8717757e096a5b5773b7a16)** to allow for generic conversion to strings. #916 #1585 +- Add **return value for the [`emplace_back`](http://nlohmann.github.io/json/doxygen/classnlohmann_1_1basic__json_abf29131f898b05aad2c01a9c80e7a002.html#abf29131f898b05aad2c01a9c80e7a002) function**, returning a reference to the added element just like C++17 is [introducing this](https://en.cppreference.com/w/cpp/container/vector/emplace_back) for `std::vector`. #1609 +- Add info how to use the library with the **[pacman](https://wiki.archlinux.org/index.php/pacman) package manager** on MSYS2. #1670 + +### :bug: Bug Fixes + +- Fix an issue where typedefs with certain names yielded a compilation error. #1642 #1643 +- Fix a conversion to `std::string_view` in the unit tests. #1634 #1639 +- Fix MSVC Debug build. #1536 #1570 #1608 +- Fix [`get_to`](https://nlohmann.github.io/json/classnlohmann_1_1basic__json_a65753c68f06639eda0d355f919564e01.html#a65753c68f06639eda0d355f919564e01) method to clear existing content before writing. #1511 #1555 +- Fix a `-Wc++17-extensions` warning. `nodiscard` attributes are now only used with Clang when `-std=c++17` is used. #1535 #1551 + +### :zap: Improvements + +- Switch from [Catch](https://github.com/philsquared/Catch) to **[doctest](https://github.com/onqtam/doctest)** for the unit tests which speeds up compilation and runtime of the 112,112,308 tests. +- Add an explicit section to the [README](https://github.com/nlohmann/json/blob/develop/README.md) about the **frequently addressed topics** [character encoding](https://github.com/nlohmann/json#character-encoding), [comments in JSON](https://github.com/nlohmann/json#comments-in-json), and the [order of object keys](https://github.com/nlohmann/json#order-of-object-keys). + +### :hammer: Further Changes + +- Use [`GNUInstallDirs`](https://cmake.org/cmake/help/v3.0/module/GNUInstallDirs.html) to set library install directories. #1673 +- Fix links in the [README](https://github.com/nlohmann/json/blob/develop/README.md). #1620 #1621 #1622 #1623 #1625 +- Mention [`json` type](http://nlohmann.github.io/json/doxygen/namespacenlohmann_a2bfd99e845a2e5cd90aeaf1b1431f474.html#a2bfd99e845a2e5cd90aeaf1b1431f474) on the [documentation start page](http://nlohmann.github.io/json/doxygen/index.html). #1616 +- Complete documentation of [`value()` function](http://nlohmann.github.io/json/doxygen/classnlohmann_1_1basic__json_adcf8ca5079f5db993820bf50036bf45d.html#adcf8ca5079f5db993820bf50036bf45d) with respect to `type_error.302` exception. #1601 +- Fix links in the documentation. #1598 +- Add regression tests for MSVC. #1543 #1570 +- Use **[CircleCI](http://circleci.com)** for [continuous integration](https://circleci.com/gh/nlohmann/json). +- Use **[Doozer](https://doozer.io)** for [continuous integration](https://doozer.io/nlohmann/json) on Linux (CentOS, Raspbian, Fedora) +- Add tests to check each CMake flag (`JSON_BuildTests`, `JSON_Install`, `JSON_MultipleHeaders`, `JSON_Sanitizer`, `JSON_Valgrind`, `JSON_NoExceptions`, `JSON_Coverage`). +- Use [Hedley](https://nemequ.github.io/hedley/) to avoid re-inventing several compiler-agnostic feature macros like `JSON_DEPRECATED`, `JSON_NODISCARD`, `JSON_LIKELY`, `JSON_UNLIKELY`, `JSON_HAS_CPP_14`, or `JSON_HAS_CPP_17`. Functions taking or returning pointers are annotated accordingly when a pointer will not be null. +- Build and run tests on [AppVeyor](https://ci.appveyor.com/project/nlohmann/json) in DEBUG and RELEASE mode. + +### :fire: Deprecated functions + +This release does not deprecate any functions. As an overview, the following functions have been deprecated in earlier versions and will be removed in the next major version (i.e., 4.0.0): + +- Function [`iterator_wrapper`](http://nlohmann.github.io/json/doxygen/classnlohmann_1_1basic__json_af1592a06bc63811886ade4f9d965045e.html#af1592a06bc63811886ade4f9d965045e) are deprecated. Please use the member function [`items()`](http://nlohmann.github.io/json/doxygen/classnlohmann_1_1basic__json_afe3e137ace692efa08590d8df40f58dd.html#afe3e137ace692efa08590d8df40f58dd) instead. +- Functions [`friend std::istream& operator<<(basic_json&, std::istream&)`](http://nlohmann.github.io/json/doxygen/classnlohmann_1_1basic__json_ab7285a92514fcdbe6de505ebaba92ea3.html#ab7285a92514fcdbe6de505ebaba92ea3) and [`friend std::ostream& operator>>(const basic_json&, std::ostream&)`](http://nlohmann.github.io/json/doxygen/classnlohmann_1_1basic__json_a9e06deabe69262c3ffc5533d32856983.html#a9e06deabe69262c3ffc5533d32856983) are deprecated. Please use [`friend std::istream& operator>>(std::istream&, basic_json&)`](http://nlohmann.github.io/json/doxygen/classnlohmann_1_1basic__json_aaf363408931d76472ded14017e59c9e8.html#aaf363408931d76472ded14017e59c9e8) and [`friend operator<<(std::ostream&, const basic_json&)`](http://nlohmann.github.io/json/doxygen/classnlohmann_1_1basic__json_a5e34c5435e557d0bf666bd7311211405.html#a5e34c5435e557d0bf666bd7311211405) instead. + +## v3.6.1 + +!!! summary "Files" + + - [include.zip](https://github.com/nlohmann/json/releases/download/v3.6.1/include.zip) (136 KB) + - [include.zip.asc](https://github.com/nlohmann/json/releases/download/v3.6.1/include.zip.asc) (1 KB) + - [json.hpp](https://github.com/nlohmann/json/releases/download/v3.6.1/json.hpp) (711 KB) + - [json.hpp.asc](https://github.com/nlohmann/json/releases/download/v3.6.1/json.hpp.asc) (1 KB) + +Release date: 2019-03-20 +SHA-256: d2eeb25d2e95bffeb08ebb7704cdffd2e8fca7113eba9a0b38d60a5c391ea09a (json.hpp), 69cc88207ce91347ea530b227ff0776db82dcb8de6704e1a3d74f4841bc651cf (include.zip) + +### Summary + +This release **fixes a regression and a bug** introduced by the earlier 3.6.0 release. All changes are backward-compatible. + +### :bug: Bug Fixes + +- Fixed regression of #590 which could lead to compilation errors with GCC 7 and GCC 8. #1530 +- Fixed a compilation error when `` was included. #1531 + +### :hammer: Further Changes + +- Fixed a warning for missing field initializers. #1527 + +### :fire: Deprecated functions + +This release does not deprecate any functions. As an overview, the following functions have been deprecated in earlier versions and will be removed in the next major version (i.e., 4.0.0): + +- Function [`iterator_wrapper`](http://nlohmann.github.io/json/doxygen/classnlohmann_1_1basic__json_af1592a06bc63811886ade4f9d965045e.html#af1592a06bc63811886ade4f9d965045e) are deprecated. Please use the member function [`items()`](http://nlohmann.github.io/json/doxygen/classnlohmann_1_1basic__json_afe3e137ace692efa08590d8df40f58dd.html#afe3e137ace692efa08590d8df40f58dd) instead. +- Functions [`friend std::istream& operator<<(basic_json&, std::istream&)`](http://nlohmann.github.io/json/doxygen/classnlohmann_1_1basic__json_ab7285a92514fcdbe6de505ebaba92ea3.html#ab7285a92514fcdbe6de505ebaba92ea3) and [`friend std::ostream& operator>>(const basic_json&, std::ostream&)`](http://nlohmann.github.io/json/doxygen/classnlohmann_1_1basic__json_a9e06deabe69262c3ffc5533d32856983.html#a9e06deabe69262c3ffc5533d32856983) are deprecated. Please use [`friend std::istream& operator>>(std::istream&, basic_json&)`](http://nlohmann.github.io/json/doxygen/classnlohmann_1_1basic__json_aaf363408931d76472ded14017e59c9e8.html#aaf363408931d76472ded14017e59c9e8) and [`friend operator<<(std::ostream&, const basic_json&)`](http://nlohmann.github.io/json/doxygen/classnlohmann_1_1basic__json_a5e34c5435e557d0bf666bd7311211405.html#a5e34c5435e557d0bf666bd7311211405) instead. + +## v3.6.0 + +!!! summary "Files" + + - [include.zip](https://github.com/nlohmann/json/releases/download/v3.6.0/include.zip) (136 KB) + - [include.zip.asc](https://github.com/nlohmann/json/releases/download/v3.6.0/include.zip.asc) (1 KB) + - [json.hpp](https://github.com/nlohmann/json/releases/download/v3.6.0/json.hpp) (711 KB) + - [json.hpp.asc](https://github.com/nlohmann/json/releases/download/v3.6.0/json.hpp.asc) (1 KB) + +Release date: 2019-03-20 +SHA-256: ce9839370f28094c71107c405affb3b08c4a098154988014cbb0800b1c44a831 (json.hpp), 237c5e66e7f8186a02804ce9dbd5f69ce89fe7424ef84adf6142e973bd9532f4 (include.zip) + +ℹ️ **This release introduced a regression. Please update to [version 3.6.1](https://github.com/nlohmann/json/releases/tag/v3.6.1)!** + +### Summary + +This release adds some **convenience functions for JSON Pointers**, introduces a [`contains`]( +http://nlohmann.github.io/json/doxygen/classnlohmann_1_1basic__json_a0a45fc740637123fdf05fef970f8be47.html#a0a45fc740637123fdf05fef970f8be47) function to check if a key is present in an object, and improves the **performance of integer serialization**. Furthermore, a lot of small bug fixes and improvements have been made. All changes are backward-compatible. + +### :sparkles: New Features + +- Overworked the public interface for JSON Pointers. The creation of JSON Pointers is simplified with [`operator/`]( +http://nlohmann.github.io/json/doxygen/classnlohmann_1_1json__pointer_a90a11fe6c7f37b1746a3ff9cb24b0d53.html#a90a11fe6c7f37b1746a3ff9cb24b0d53) and [`operator/=`](http://nlohmann.github.io/json/doxygen/classnlohmann_1_1json__pointer_a7395bd0af29ac23fd3f21543c935cdfa.html#a7395bd0af29ac23fd3f21543c935cdfa). JSON Pointers can be inspected with [`empty`](http://nlohmann.github.io/json/doxygen/classnlohmann_1_1json__pointer_a649252bda4a2e75a0915b11a25d8bcc3.html#a649252bda4a2e75a0915b11a25d8bcc3), [`back`](http://nlohmann.github.io/json/doxygen/classnlohmann_1_1json__pointer_a6bd5b554c10f15672135c216893eef31.html#a6bd5b554c10f15672135c216893eef31), and [`parent_pointer`](http://nlohmann.github.io/json/doxygen/classnlohmann_1_1json__pointer_afdaacce1edb7145e0434e014f0e8685a.html#afdaacce1edb7145e0434e014f0e8685a), and manipulated with [`push_back`](http://nlohmann.github.io/json/doxygen/classnlohmann_1_1json__pointer_a697d12b5bd6205f8866691b166b7c7dc.html#a697d12b5bd6205f8866691b166b7c7dc) and [`pop_back`](http://nlohmann.github.io/json/doxygen/classnlohmann_1_1json__pointer_a4b1ee4d511ca195bed896a3da47e264c.html#a4b1ee4d511ca195bed896a3da47e264c). #1434 +- Added a boolean method [`contains`]( +http://nlohmann.github.io/json/doxygen/classnlohmann_1_1basic__json_a0a45fc740637123fdf05fef970f8be47.html#a0a45fc740637123fdf05fef970f8be47) to check whether an element exists in a JSON object with a given key. Returns false when called on non-object types. #1471 #1474 + +### :bug: Bug Fixes + +- Fixed a compilation issues with libc 2.12. #1483 #1514 +- Fixed endian conversion on PPC64. #1489 +- Fixed library to compile with GCC 9. #1472 #1492 +- Fixed a compilation issue with GCC 7 on CentOS. #1496 +- Fixed an integer overflow. #1447 +- Fixed buffer flushing in serializer. #1445 #1446 + +### :zap: Improvements + +- The performance of dumping integers has been greatly improved. #1411 +- Added CMake parameter `JSON_Install` to control whether the library should be installed (default: on). #1330 +- Fixed a lot of compiler and linter warnings. #1400 #1435 #1502 +- Reduced required CMake version from 3.8 to 3.1. #1409 #1428 #1441 #1498 +- Added `nodiscard` attribute to `meta()`, `array()`, `object()`, `from_cbor`, `from_msgpack`, `from_ubjson`, `from_bson`, and `parse`. #1433 + +### :hammer: Further Changes + +- Added missing headers. #1500 +- Fixed typos and broken links in README. #1417 #1423 #1425 #1451 #1455 #1491 +- Fixed documentation of parse function. #1473 +- Suppressed warning that cannot be fixed inside the library. #1401 #1468 +- Imroved package manager suppert: + - Updated Buckaroo instructions. #1495 + - Improved Meson support. #1463 + - Added Conda package manager documentation. #1430 + - Added NuGet package manager documentation. #1132 +- Continuous Integration + - Removed unstable or deprecated Travis builders (Xcode 6.4 - 8.2) and added Xcode 10.1 builder. + - Added Clang 7 to Travis CI. + - Fixed AppVeyor x64 builds. #1374 #1414 +- Updated thirdparty libraries: + - Catch 1.12.0 -> 1.12.2 + - Google Benchmark 1.3.0 -> 1.4.1 + - Doxygen 1.8.15 -> 1.8.16 + +### :fire: Deprecated functions + +This release does not deprecate any functions. As an overview, the following functions have been deprecated in earlier versions and will be removed in the next major version (i.e., 4.0.0): + +- Function [`iterator_wrapper`](http://nlohmann.github.io/json/doxygen/classnlohmann_1_1basic__json_af1592a06bc63811886ade4f9d965045e.html#af1592a06bc63811886ade4f9d965045e) are deprecated. Please use the member function [`items()`](http://nlohmann.github.io/json/doxygen/classnlohmann_1_1basic__json_afe3e137ace692efa08590d8df40f58dd.html#afe3e137ace692efa08590d8df40f58dd) instead. +- Functions [`friend std::istream& operator<<(basic_json&, std::istream&)`](http://nlohmann.github.io/json/doxygen/classnlohmann_1_1basic__json_ab7285a92514fcdbe6de505ebaba92ea3.html#ab7285a92514fcdbe6de505ebaba92ea3) and [`friend std::ostream& operator>>(const basic_json&, std::ostream&)`](http://nlohmann.github.io/json/doxygen/classnlohmann_1_1basic__json_a9e06deabe69262c3ffc5533d32856983.html#a9e06deabe69262c3ffc5533d32856983) are deprecated. Please use [`friend std::istream& operator>>(std::istream&, basic_json&)`](http://nlohmann.github.io/json/doxygen/classnlohmann_1_1basic__json_aaf363408931d76472ded14017e59c9e8.html#aaf363408931d76472ded14017e59c9e8) and [`friend operator<<(std::ostream&, const basic_json&)`](http://nlohmann.github.io/json/doxygen/classnlohmann_1_1basic__json_a5e34c5435e557d0bf666bd7311211405.html#a5e34c5435e557d0bf666bd7311211405) instead. + +## v3.5.0 + +!!! summary "Files" + + - [include.zip](https://github.com/nlohmann/json/releases/download/v3.5.0/include.zip) (133 KB) + - [include.zip.asc](https://github.com/nlohmann/json/releases/download/v3.5.0/include.zip.asc) (1 KB) + - [json.hpp](https://github.com/nlohmann/json/releases/download/v3.5.0/json.hpp) (693 KB) + - [json.hpp.asc](https://github.com/nlohmann/json/releases/download/v3.5.0/json.hpp.asc) (1 KB) + +Release date: 2018-12-22 +SHA-256: 8a6dbf3bf01156f438d0ca7e78c2971bca50eec4ca6f0cf59adf3464c43bb9d5 (json.hpp), 3564da9c5b0cf2e032f97c69baedf10ddbc98030c337d0327a215ea72259ea21 (include.zip) + +### Summary + +This release introduces the support for **structured bindings** and reading from **`FILE*`**. Besides, a few bugs have been fixed. All changes are backward-compatible. + +### :sparkles: New Features + +- **Structured bindings** are now supported for JSON objects and arrays via the [`items()`](https://nlohmann.github.io/json/classnlohmann_1_1basic__json_afe3e137ace692efa08590d8df40f58dd.html#afe3e137ace692efa08590d8df40f58dd) member function, so finally this code is possible: + ```cpp + for (auto& [key, val] : j.items()) { + std::cout << key << ':' << val << '\n'; + } + ``` + #1388 #1391 + +- Added support for **reading from `FILE*`** to support situations in which streams are nit available or would require too much RAM. #1370 #1392 + +### :bug: Bug Fixes + +- The `eofbit` was not set for input streams when the end of a stream was reached while parsing. #1340 #1343 +- Fixed a bug in the SAX parser for BSON arrays. + +### :zap: Improvements + +- Added support for Clang 5.0.1 (PS4 version). #1341 #1342 + +### :hammer: Further Changes + +- Added a warning for implicit conversions to the documentation: It is not recommended to use implicit conversions when reading **from** a JSON value. Details about this recommendation can be found [here](https://www.github.com/nlohmann/json/issues/958). #1363 +- Fixed typos in the documentation. #1329 #1380 #1382 +- Fixed a C4800 warning. #1364 +- Fixed a `-Wshadow` warning #1346 +- Wrapped `std::snprintf` calls to avoid error in MSVC. #1337 +- Added code to allow installation via Meson. #1345 + +### :fire: Deprecated functions + +This release does not deprecate any functions. As an overview, the following functions have been deprecated in earlier versions and will be removed in the next major version (i.e., 4.0.0): + +- Function [`iterator_wrapper`](http://nlohmann.github.io/json/doxygen/classnlohmann_1_1basic__json_af1592a06bc63811886ade4f9d965045e.html#af1592a06bc63811886ade4f9d965045e) are deprecated. Please use the member function [`items()`](http://nlohmann.github.io/json/doxygen/classnlohmann_1_1basic__json_afe3e137ace692efa08590d8df40f58dd.html#afe3e137ace692efa08590d8df40f58dd) instead. +- Functions [`friend std::istream& operator<<(basic_json&, std::istream&)`](http://nlohmann.github.io/json/doxygen/classnlohmann_1_1basic__json_ab7285a92514fcdbe6de505ebaba92ea3.html#ab7285a92514fcdbe6de505ebaba92ea3) and [`friend std::ostream& operator>>(const basic_json&, std::ostream&)`](http://nlohmann.github.io/json/doxygen/classnlohmann_1_1basic__json_a9e06deabe69262c3ffc5533d32856983.html#a9e06deabe69262c3ffc5533d32856983) are deprecated. Please use [`friend std::istream& operator>>(std::istream&, basic_json&)`](http://nlohmann.github.io/json/doxygen/classnlohmann_1_1basic__json_aaf363408931d76472ded14017e59c9e8.html#aaf363408931d76472ded14017e59c9e8) and [`friend operator<<(std::ostream&, const basic_json&)`](http://nlohmann.github.io/json/doxygen/classnlohmann_1_1basic__json_a5e34c5435e557d0bf666bd7311211405.html#a5e34c5435e557d0bf666bd7311211405) instead. + +## v3.4.0 + +!!! summary "Files" + + - [include.zip](https://github.com/nlohmann/json/releases/download/v3.4.0/include.zip) (132 KB) + - [include.zip.asc](https://github.com/nlohmann/json/releases/download/v3.4.0/include.zip.asc) (1 KB) + - [json.hpp](https://github.com/nlohmann/json/releases/download/v3.4.0/json.hpp) (689 KB) + - [json.hpp.asc](https://github.com/nlohmann/json/releases/download/v3.4.0/json.hpp.asc) (1 KB) + +Release date: 2018-10-30 +SHA-256: 63da6d1f22b2a7bb9e4ff7d6b255cf691a161ff49532dcc45d398a53e295835f (json.hpp), bfec46fc0cee01c509cf064d2254517e7fa80d1e7647fea37cf81d97c5682bdc (include.zip) + +### Summary + +This release introduces three new features: + +- **BSON (Binary JSON)** is next to CBOR, MessagePack, and UBJSON the fourth binary (de)serialization format supported by the library. +- **Adjustable error handlers for invalid Unicode** allows to specify the behavior when invalid byte sequences are serialized. +- **Simplified enum/JSON mapping** with a macro in case the default mapping to integers is not desired. + +Furthermore, some effort has been invested in improving the **parse error messages**. Besides, a few bugs have been fixed. All changes are backward-compatible. + +### :sparkles: New Features + +- The library can read and write a subset of **[BSON](http://bsonspec.org/) (Binary JSON)**. All data types known from JSON are supported, whereas other types more tied to MongoDB such as timestamps, object ids, or binary data are currently not implemented. See [the README](https://github.com/nlohmann/json#binary-formats-bson-cbor-messagepack-and-ubjson) for examples. #1244 #1320 +- The behavior when the library encounters an invalid Unicode sequence during serialization can now be controlled by defining one of three **Unicode error handlers**: (1) throw an exception (default behavior), (2) replace invalid sequences by the Unicode replacement character (U+FFFD), or (3) ignore/filter invalid sequences. See the [documentation of the `dump` function](https://nlohmann.github.io/json/classnlohmann_1_1basic__json_a50ec80b02d0f3f51130d4abb5d1cfdc5.html#a50ec80b02d0f3f51130d4abb5d1cfdc5) for examples. #1198 #1314 +- To easily specify a user-defined **enum/JSON mapping**, a macro `NLOHMANN_JSON_SERIALIZE_ENUM` has been introduced. See the [README section](https://github.com/nlohmann/json#specializing-enum-conversion) for more information. #1208 #1323 + +### :bug: Bug Fixes + +- fixed truncation #1286 #1315 +- fixed an issue with std::pair #1299 #1301 +- fixed an issue with std::variant #1292 #1294 +- fixed a bug in the JSON Pointer parser + +### :zap: Improvements + +- The **diagnosis messages for parse errors** have been improved: error messages now indicated line/column positions where possible (in addition to a byte count) and also the context in which the error occurred (e.g., "while parsing a JSON string"). Example: error `parse error at 2: syntax error - invalid string: control character must be escaped; last read: ''` is now reported as `parse error at line 1, column 2: syntax error while parsing value - invalid string: control character U+0009 (HT) must be escaped to \u0009 or \t; last read: ''`. #1280 #1288 #1303 + +### :hammer: Further Changes + +- improved Meson documentation #1305 +- fixed some more linter warnings #1280 +- fixed Clang detection for third-party Google Benchmark library #1277 + +### :fire: Deprecated functions + +This release does not deprecate any functions. As an overview, the following functions have been deprecated in earlier versions and will be removed in the next major version (i.e., 4.0.0): + +- Function [`iterator_wrapper`](http://nlohmann.github.io/json/doxygen/classnlohmann_1_1basic__json_af1592a06bc63811886ade4f9d965045e.html#af1592a06bc63811886ade4f9d965045e) are deprecated. Please use the member function [`items()`](http://nlohmann.github.io/json/doxygen/classnlohmann_1_1basic__json_afe3e137ace692efa08590d8df40f58dd.html#afe3e137ace692efa08590d8df40f58dd) instead. +- Functions [`friend std::istream& operator<<(basic_json&, std::istream&)`](http://nlohmann.github.io/json/doxygen/classnlohmann_1_1basic__json_ab7285a92514fcdbe6de505ebaba92ea3.html#ab7285a92514fcdbe6de505ebaba92ea3) and [`friend std::ostream& operator>>(const basic_json&, std::ostream&)`](http://nlohmann.github.io/json/doxygen/classnlohmann_1_1basic__json_a9e06deabe69262c3ffc5533d32856983.html#a9e06deabe69262c3ffc5533d32856983) are deprecated. Please use [`friend std::istream& operator>>(std::istream&, basic_json&)`](http://nlohmann.github.io/json/doxygen/classnlohmann_1_1basic__json_aaf363408931d76472ded14017e59c9e8.html#aaf363408931d76472ded14017e59c9e8) and [`friend operator<<(std::ostream&, const basic_json&)`](http://nlohmann.github.io/json/doxygen/classnlohmann_1_1basic__json_a5e34c5435e557d0bf666bd7311211405.html#a5e34c5435e557d0bf666bd7311211405) instead. + +## v3.3.0 + +!!! summary "Files" + + - [include.zip](https://github.com/nlohmann/json/releases/download/v3.3.0/include.zip) (123 KB) + - [include.zip.asc](https://github.com/nlohmann/json/releases/download/v3.3.0/include.zip.asc) (1 KB) + - [json.hpp](https://github.com/nlohmann/json/releases/download/v3.3.0/json.hpp) (635 KB) + - [json.hpp.asc](https://github.com/nlohmann/json/releases/download/v3.3.0/json.hpp.asc) (1 KB) + +Release date: 2018-10-05 +SHA-256: f1327bb60c58757a3dd2b0c9c45d49503d571337681d950ec621f8374bcc14d4 (json.hpp), 9588d63557333aaa485e92221ec38014a85a6134e7486fe3441e0541a5a89576 (include.zip) + +### Summary + +This release adds support for **GCC 4.8**. Furthermore, it adds a function [**`get_to`**](http://nlohmann.github.io/json/doxygen/classnlohmann_1_1basic__json_a8a3db7d78f74232d3a6fb8f1abf69709.html#a8a3db7d78f74232d3a6fb8f1abf69709) to write a JSON value to a passed reference. Another topic of this release was the **CMake support** which has been overworked and documented. + +Besides, a lot of bugs have been fixed and slight improvements have been made. All changes are backward-compatible. + +### :sparkles: New Features + +- The library can now also built with **GCC 4.8**. Though this compiler does not fully support C++11, it can successfully compile and run the test suite. Note that bug [57824](https://gcc.gnu.org/bugzilla/show_bug.cgi?id=57824) in GCC 4.8 still forbids to use multiline raw strings in arguments to macros. #1257 +- Added new function [**`get_to`**](http://nlohmann.github.io/json/doxygen/classnlohmann_1_1basic__json_a8a3db7d78f74232d3a6fb8f1abf69709.html#a8a3db7d78f74232d3a6fb8f1abf69709) to write a JSON value to a passed reference. The destination type is automatically derived which allows more succinct code compared to the `get` function. #1227 #1231 + +### :bug: Bug Fixes + +- Fixed a bug in the CMake file that made `target_link_libraries` to not properly include `nlohmann_json`. #1243 #1245 #1260 +- Fixed a warning in MSVC 2017 complaining about a constexpr if. #1204 #1268 #1272 +- Fixed a bug that prevented compilation with ICPC. #755 #1222 +- Improved the SFINAE correctness to fix a bug in the conversion operator. #1237 #1238 +- Fixed a `-Wctor-dtor-privacy` warning. #1224 +- Fixed a warning on a lambda in unevaluated context. #1225 #1230 +- Fixed a bug introduced in version 3.2.0 where defining `JSON_CATCH_USER` led to duplicate macro definition of `JSON_INTERNAL_CATCH`. #1213 #1214 +- Fixed a bug that prevented compilation with Clang 3.4.2 in RHEL 7. #1179 #1249 + +### :zap: Improvements + +- Added [documentation on CMake integration](https://github.com/nlohmann/json#cmake) of the library. #1270 +- Changed the CMake file to use `find_package(nlohmann_json)` without installing the library. #1202 +- Improved error messages in case `operator[]` is used with the wrong combination (json.exception.type_error.305) of JSON container type and argument type. Example: "cannot use operator[] with a string argument". #1220 #1221 +- Added a license and version information to the Meson build file. #1252 +- Removed static assertions to indicated missing `to_json` or `from_json` functions as such assertions do not play well with SFINAE. These assertions also led to problems with GMock. #960 #1212 #1228 +- The test suite now does not wait forever if run in a wrong directory and input files are not found. #1262 +- The test suite does not show deprecation warnings for deprecated functions which frequently led to confusion. #1271 + +### :hammer: Further Changes + +- GCC 4.8 and Xcode 10 were added to the [continuous integration suite](https://travis-ci.org/nlohmann/json) at Travis. +- Added [lgtm](https://lgtm.com/projects/g/nlohmann/json/context:cpp) checks to pull requests. +- Added tests for CMake integration. #1260 + +### :fire: Deprecated functions + +This release does not deprecate any functions. As an overview, the following functions have been deprecated in earlier versions and will be removed in the next major version (i.e., 4.0.0): + +- Function [`iterator_wrapper`](http://nlohmann.github.io/json/doxygen/classnlohmann_1_1basic__json_af1592a06bc63811886ade4f9d965045e.html#af1592a06bc63811886ade4f9d965045e) are deprecated. Please use the member function [`items()`](http://nlohmann.github.io/json/doxygen/classnlohmann_1_1basic__json_afe3e137ace692efa08590d8df40f58dd.html#afe3e137ace692efa08590d8df40f58dd) instead. +- Functions [`friend std::istream& operator<<(basic_json&, std::istream&)`](http://nlohmann.github.io/json/doxygen/classnlohmann_1_1basic__json_ab7285a92514fcdbe6de505ebaba92ea3.html#ab7285a92514fcdbe6de505ebaba92ea3) and [`friend std::ostream& operator>>(const basic_json&, std::ostream&)`](http://nlohmann.github.io/json/doxygen/classnlohmann_1_1basic__json_a9e06deabe69262c3ffc5533d32856983.html#a9e06deabe69262c3ffc5533d32856983) are deprecated. Please use [`friend std::istream& operator>>(std::istream&, basic_json&)`](http://nlohmann.github.io/json/doxygen/classnlohmann_1_1basic__json_aaf363408931d76472ded14017e59c9e8.html#aaf363408931d76472ded14017e59c9e8) and [`friend operator<<(std::ostream&, const basic_json&)`](http://nlohmann.github.io/json/doxygen/classnlohmann_1_1basic__json_a5e34c5435e557d0bf666bd7311211405.html#a5e34c5435e557d0bf666bd7311211405) instead. + + +## v3.2.0 + +!!! summary "Files" + + - [include.zip](https://github.com/nlohmann/json/releases/download/v3.2.0/include.zip) (124 KB) + - [include.zip.asc](https://github.com/nlohmann/json/releases/download/v3.2.0/include.zip.asc) (1 KB) + - [json.hpp](https://github.com/nlohmann/json/releases/download/v3.2.0/json.hpp) (636 KB) + - [json.hpp.asc](https://github.com/nlohmann/json/releases/download/v3.2.0/json.hpp.asc) (1 KB) + +Release date: 2018-08-20 +SHA-256: ce6b5610a051ec6795fa11c33854abebb086f0fd67c311f5921c3c07f9531b44 (json.hpp), 35ee642558b90e2f9bc758995c4788c4b4d4dec54eef95fb8f38cb4d49c8fc7c (include.zip) + +### Summary + +This release introduces a [**SAX interface**](https://nlohmann.github.io/json/structnlohmann_1_1json__sax.html) to the library. While this may be a very special feature used by only few people, it allowed to unify all functions that consumed input and created some kind of JSON value. Internally, now all existing functions like `parse`, `accept`, `from_cbor`, `from_msgpack`, and `from_ubjson` use the SAX interface with different event processors. This allowed to separate the input processing from the value generation. Furthermore, throwing an exception in case of a parse error is now optional and up to the event processor. Finally, the JSON parser is now non-recursive (meaning it does not use the call stack, but `std::vector` to track the hierarchy of structured values) which allows to process nested input more efficiently. + +Furthermore, the library finally is able to parse from **wide string types**. This is the first step toward opening the library from UTF-8 to UTF-16 and UTF-32. + +This release further fixes several bugs in the library. All changes are backward-compatible. + +### :sparkles: New Features + +- added a parser with a **SAX interface** (#971, #1153) +- support to parse from **wide string types** `std::wstring`, `std::u16string`, and `std::u32string`; the input will be converted to UTF-8 (#1031) +- added support for **`std::string_view`** when using C++17 (#1028) +- allow to **roundtrip `std::map` and `std::unordered_map`** from JSON if key type is not convertible to string; in these cases, values are serialized to arrays of pairs (#1079, #1089, #1133, #1138) + +### :bug: Bug Fixes + +- allow to create `nullptr_t` from JSON allowing to properly roundtrip `null` values (#1169) +- allow compare user-defined string types (#1130) +- better support for algorithms using iterators from `items()` (#1045, #1134) +- added parameter to avoid compilation error with MSVC 2015 debug builds (#1114) +- re-added accidentally skipped unit tests (#1176) +- fixed MSVC issue with `std::swap` (#1168) + +### :zap: Improvements + +- `key()` function for iterators returns a const reference rather than a string copy (#1098) +- binary formats CBOR, MessagePack, and UBJSON now supports `float` as type for floating-point numbers (#1021) + +### :hammer: Further Changes + +- changed issue templates +- improved continuous integration: added builders for Xcode 9.3 and 9.4, added builders for GCC 8 and Clang 6, added builder for MinGW, added builders for MSVC targeting x86 +- required CMake version is now at least 3.8 (#1040) +- overworked CMake file wrt. packaging (#1048) +- added package managers: Spack (#1041) and CocoaPods (#1148) +- fixed Meson include directory (#1142) +- preprocessor macro `JSON_SKIP_UNSUPPORTED_COMPILER_CHECK` can skip the rejection of unsupported compilers - use at your own risk! (#1128) +- preprocessor macro `JSON_INTERNAL_CATCH`/`JSON_INTERNAL_CATCH_USER` allows to control the behavior of exception handling inside the library (#1187) +- added note on `char` to JSON conversion +- added note how to send security-related issue via encrypted email +- removed dependency to `std::stringstream` (#1117) +- added SPDX-License-Identifier +- added updated JSON Parsing Test Suite, described in [Parsing JSON is a Minefield 💣](http://seriot.ch/parsing_json.php) +- updated to Catch 1.12.0 + +### :fire: Deprecated functions + +This release does not deprecate any functions. As an overview, the following functions have been deprecated in earlier versions and will be removed in the next major version (i.e., 4.0.0): + +- Function [`iterator_wrapper`](http://nlohmann.github.io/json/doxygen/classnlohmann_1_1basic__json_af1592a06bc63811886ade4f9d965045e.html#af1592a06bc63811886ade4f9d965045e) are deprecated. Please use the member function [`items()`](http://nlohmann.github.io/json/doxygen/classnlohmann_1_1basic__json_afe3e137ace692efa08590d8df40f58dd.html#afe3e137ace692efa08590d8df40f58dd) instead. +- Functions [`friend std::istream& operator<<(basic_json&, std::istream&)`](http://nlohmann.github.io/json/doxygen/classnlohmann_1_1basic__json_ab7285a92514fcdbe6de505ebaba92ea3.html#ab7285a92514fcdbe6de505ebaba92ea3) and [`friend std::ostream& operator>>(const basic_json&, std::ostream&)`](http://nlohmann.github.io/json/doxygen/classnlohmann_1_1basic__json_a9e06deabe69262c3ffc5533d32856983.html#a9e06deabe69262c3ffc5533d32856983) are deprecated. Please use [`friend std::istream& operator>>(std::istream&, basic_json&)`](http://nlohmann.github.io/json/doxygen/classnlohmann_1_1basic__json_aaf363408931d76472ded14017e59c9e8.html#aaf363408931d76472ded14017e59c9e8) and [`friend operator<<(std::ostream&, const basic_json&)`](http://nlohmann.github.io/json/doxygen/classnlohmann_1_1basic__json_a5e34c5435e557d0bf666bd7311211405.html#a5e34c5435e557d0bf666bd7311211405) instead. + + + +## v3.1.2 + +!!! summary "Files" + + - [include.zip](https://github.com/nlohmann/json/releases/download/v3.1.2/include.zip) (115 KB) + - [include.zip.asc](https://github.com/nlohmann/json/releases/download/v3.1.2/include.zip.asc) (1 KB) + - [json.hpp](https://github.com/nlohmann/json/releases/download/v3.1.2/json.hpp) (582 KB) + - [json.hpp.asc](https://github.com/nlohmann/json/releases/download/v3.1.2/json.hpp.asc) (1 KB) + +Release date: 2018-03-14 +SHA-256: fbdfec4b4cf63b3b565d09f87e6c3c183bdd45c5be1864d3fcb338f6f02c1733 (json.hpp), 495362ee1b9d03d9526ba9ccf1b4a9c37691abe3a642ddbced13e5778c16660c (include.zip) + +### Summary + +This release fixes several bugs in the library. All changes are backward-compatible. + +### :bug: Bug Fixes + +- Fixed a **memory leak** occurring in the parser callback (#1001). +- Different **specializations of `basic_json`** (e.g., using different template arguments for strings or objects) can now be used in assignments (#972, #977, #986). +- Fixed a logical error in an iterator range check (#992). + +### :zap: Improvements + +- The parser and the serialization now support **user-defined string types** (#1006, #1009). + +### :hammer: Further Changes + +- **[Clang Analyzer](http://clang-analyzer.llvm.org)** is now used as additional static analyzer; see `make clang_analyze`. +- Overworked [README](https://github.com/nlohmann/json/blob/develop/README.md) by adding links to the [documentation](https://nlohmann.github.io/json/) (#981). + +### :fire: Deprecated functions + +This release does not deprecate any functions. As an overview, the following functions have been deprecated in earlier versions and will be removed in the next major version (i.e., 4.0.0): + +- Function [`iterator_wrapper`](http://nlohmann.github.io/json/doxygen/classnlohmann_1_1basic__json_af1592a06bc63811886ade4f9d965045e.html#af1592a06bc63811886ade4f9d965045e) are deprecated. Please use the member function [`items()`](http://nlohmann.github.io/json/doxygen/classnlohmann_1_1basic__json_afe3e137ace692efa08590d8df40f58dd.html#afe3e137ace692efa08590d8df40f58dd) instead. +- Functions [`friend std::istream& operator<<(basic_json&, std::istream&)`](http://nlohmann.github.io/json/doxygen/classnlohmann_1_1basic__json_ab7285a92514fcdbe6de505ebaba92ea3.html#ab7285a92514fcdbe6de505ebaba92ea3) and [`friend std::ostream& operator>>(const basic_json&, std::ostream&)`](http://nlohmann.github.io/json/doxygen/classnlohmann_1_1basic__json_a9e06deabe69262c3ffc5533d32856983.html#a9e06deabe69262c3ffc5533d32856983) are deprecated. Please use [`friend std::istream& operator>>(std::istream&, basic_json&)`](http://nlohmann.github.io/json/doxygen/classnlohmann_1_1basic__json_aaf363408931d76472ded14017e59c9e8.html#aaf363408931d76472ded14017e59c9e8) and [`friend operator<<(std::ostream&, const basic_json&)`](http://nlohmann.github.io/json/doxygen/classnlohmann_1_1basic__json_a5e34c5435e557d0bf666bd7311211405.html#a5e34c5435e557d0bf666bd7311211405) instead. + + +## v3.1.1 + +!!! summary "Files" + + - [include.zip](https://github.com/nlohmann/json/releases/download/v3.1.1/include.zip) (114 KB) + - [include.zip.asc](https://github.com/nlohmann/json/releases/download/v3.1.1/include.zip.asc) (1 KB) + - [json.hpp](https://github.com/nlohmann/json/releases/download/v3.1.1/json.hpp) (577 KB) + - [json.hpp.asc](https://github.com/nlohmann/json/releases/download/v3.1.1/json.hpp.asc) (1 KB) + +Release date: 2018-02-13 +SHA-256: e14ce5e33d6a2daf748026bd4947f3d9686ca4cfd53d10c3da46a0a9aceb7f2e (json.hpp), fde771d4b9e4f222965c00758a2bdd627d04fb7b59e09b7f3d1965abdc848505 (include.zip) + +### Summary + +This release fixes several bugs in the library. All changes are backward-compatible. + +### :bug: Bug Fixes + +- Fixed parsing of **CBOR strings with indefinite length** (#961). Earlier versions of this library misinterpreted the CBOR standard and rejected input with the `0x7F` start byte. +- Fixed user-defined **conversion to vector type** (#924, #969). A wrong SFINAE check rejected code though a user-defined conversion was provided. +- Fixed documentation of the parser behavior for **objects with duplicate keys** (#963). The exact behavior is not specified by [RFC 8259](https://tools.ietf.org/html/rfc8259) and the library now also provides no guarantee which object key is stored. +- Added check to detect memory **overflow when parsing UBJSON containers** (#962). The optimized UBJSON format allowed for specifying an array with billions of `null` elements with a few bytes and the library did not check whether this size exceeded `max_size()`. + +### :hammer: Further Changes + +- [Code coverage](https://coveralls.io/github/nlohmann/json) is now calculated for the individual header files, allowing to find uncovered lines more quickly than by browsing through the single header version (#953, #957). +- A Makefile target `run_benchmarks` was added to quickly build and run the benchmark suite. +- The documentation was harmonized with respect to the header inclusion (#955). Now all examples and the README use `#include ` to allow for selecting `single_include` or `include` or whatever installation folder as include directory. +- Added note on how to use the library with the [cget](http://cget.readthedocs.io/en/latest/) package manager (#954). + +### :fire: Deprecated functions + +This release does not deprecate any functions. As an overview, the following functions have been deprecated in earlier versions and will be removed in the next major version (i.e., 4.0.0): + +- Function [`iterator_wrapper`](http://nlohmann.github.io/json/doxygen/classnlohmann_1_1basic__json_af1592a06bc63811886ade4f9d965045e.html#af1592a06bc63811886ade4f9d965045e) are deprecated. Please use the member function [`items()`](http://nlohmann.github.io/json/doxygen/classnlohmann_1_1basic__json_afe3e137ace692efa08590d8df40f58dd.html#afe3e137ace692efa08590d8df40f58dd) instead. +- Functions [`friend std::istream& operator<<(basic_json&, std::istream&)`](http://nlohmann.github.io/json/doxygen/classnlohmann_1_1basic__json_ab7285a92514fcdbe6de505ebaba92ea3.html#ab7285a92514fcdbe6de505ebaba92ea3) and [`friend std::ostream& operator>>(const basic_json&, std::ostream&)`](http://nlohmann.github.io/json/doxygen/classnlohmann_1_1basic__json_a9e06deabe69262c3ffc5533d32856983.html#a9e06deabe69262c3ffc5533d32856983) are deprecated. Please use [`friend std::istream& operator>>(std::istream&, basic_json&)`](http://nlohmann.github.io/json/doxygen/classnlohmann_1_1basic__json_aaf363408931d76472ded14017e59c9e8.html#aaf363408931d76472ded14017e59c9e8) and [`friend operator<<(std::ostream&, const basic_json&)`](http://nlohmann.github.io/json/doxygen/classnlohmann_1_1basic__json_a5e34c5435e557d0bf666bd7311211405.html#a5e34c5435e557d0bf666bd7311211405) instead. + +## v3.1.0 + +!!! summary "Files" + + - [include.zip](https://github.com/nlohmann/json/releases/download/v3.1.0/include.zip) (114 KB) + - [include.zip.asc](https://github.com/nlohmann/json/releases/download/v3.1.0/include.zip.asc) (1 KB) + - [json.hpp](https://github.com/nlohmann/json/releases/download/v3.1.0/json.hpp) (577 KB) + - [json.hpp.asc](https://github.com/nlohmann/json/releases/download/v3.1.0/json.hpp.asc) (1 KB) + +Release date: 2018-02-01 +SHA-256: d40f614d10a6e4e4e80dca9463da905285f20e93116c36d97d4dc1aa63d10ba4 (json.hpp), 2b7234fca394d1e27b7e017117ed80b7518fafbb4f4c13a7c069624f6f924673 (include.zip) + +### Summary + +This release adds support for the [**UBJSON**](http://ubjson.org) format and [**JSON Merge Patch**](https://tools.ietf.org/html/rfc7386). It also contains some minor changes and bug fixes. All changes are backward-compatible. + +### :sparkles: New features + +- The library now supports [**UBJSON**](http://ubjson.org) (Universal Binary JSON Specification) as binary format to read and write JSON values space-efficiently. See the [documentation overview](https://github.com/nlohmann/json/blob/develop/doc/binary_formats.md) for a comparison of the different formats CBOR, MessagePack, and UBJSON. +- [**JSON Merge Patch**](https://tools.ietf.org/html/rfc7386) (RFC 7386) offers an intuitive means to describe patches between JSON values (#876, #877). See the documentation of [`merge_patch`](http://nlohmann.github.io/json/doxygen/classnlohmann_1_1basic__json_a0ec0cd19cce42ae6071f3cc6870ea295.html#a0ec0cd19cce42ae6071f3cc6870ea295) for more information. + +### :zap: Improvements + +- The library now uses the **Grisu2 algorithm** for printing floating-point numbers (based on the reference implementation by Florian Loitsch) which produces a short representation which is guaranteed to round-trip (#360, #935, #936). +- The **UTF-8 handling** was further simplified by using the decoder of Björn Hoehrmann in more scenarios. + +### :truck: Reorganization + +- Though the library is released as a single header, its development got more and more complicated. With this release, the header is **split into several files** and the single-header file `json.hpp` can be generated from these development sources. In the repository, folder `include` contains the development sources and `single_include` contains the single `json.hpp` header (#700, #906, #907, #910, #911, #915, #920, #924, #925, #928, #944). +- The split further allowed for a **forward declaration header** `include/nlohmann/json_fwd.hpp` to speed up compilation times (#314). + +### :hammer: Further changes + +- [Google Benchmark](https://github.com/google/benchmark) is now used for micro benchmarks (see `benchmarks` folder, #921). +- The serialization (JSON and binary formats) now properly work with the libraries string template parameter, allowing for optimized string implementations to be used in constraint environments such as embedded software (#941, #950). +- The exceptional behavior can now be overridden by defining macros `JSON_THROW_USER`, `JSON_TRY_USER`, and `JSON_CATCH_USER`, defining the behavior of `throw`, `try` and `catch`, respectively. This allows to switch off C++'s exception mechanism yet still execute user-defined code in case an error condition occurs (#938). +- To facilitate the interplay with [flex](https://github.com/westes/flex) and [Bison](https://www.gnu.org/software/bison/), the library does not use the variable name `yytext` any more as it could clash with macro definitions (#933). +- The library now defines `NLOHMANN_JSON_VERSION_MAJOR`, `NLOHMANN_JSON_VERSION_MINOR`, and `NLOHMANN_JSON_VERSION_PATCH` to allow for conditional compilation based on the included library version (#943, #948). +- A compilation error with ICC has been fixed (#947). +- Typos and links in the documentation have been fixed (#900, #930). +- A compiler error related to incomplete types has been fixed (#919). +- The tests form the [UTF-8 decoder stress test](http://www.cl.cam.ac.uk/~mgk25/ucs/examples/UTF-8-test.txt) have been added to the test suite. + +### :fire: Deprecated functions + +- Function [`iterator_wrapper`](http://nlohmann.github.io/json/doxygen/classnlohmann_1_1basic__json_af1592a06bc63811886ade4f9d965045e.html#af1592a06bc63811886ade4f9d965045e) has been deprecated (#874). Since its introduction, the name was up for discussion, as it was too technical. We now introduced the member function [`items()`](http://nlohmann.github.io/json/doxygen/classnlohmann_1_1basic__json_afe3e137ace692efa08590d8df40f58dd.html#afe3e137ace692efa08590d8df40f58dd) with the same semantics. `iterator_wrapper` will be removed in the next major version (i.e., 4.0.0). + +Furthermore, the following functions are deprecated since version 3.0.0 and will be removed in the next major version (i.e., 4.0.0): + +- [`friend std::istream& operator<<(basic_json&, std::istream&)`](http://nlohmann.github.io/json/doxygen/classnlohmann_1_1basic__json_ab7285a92514fcdbe6de505ebaba92ea3.html#ab7285a92514fcdbe6de505ebaba92ea3) +- [`friend std::ostream& operator>>(const basic_json&, std::ostream&)`](http://nlohmann.github.io/json/doxygen/classnlohmann_1_1basic__json_a9e06deabe69262c3ffc5533d32856983.html#a9e06deabe69262c3ffc5533d32856983) + +Please use [`friend std::istream& operator>>(std::istream&, basic_json&)`](http://nlohmann.github.io/json/doxygen/classnlohmann_1_1basic__json_aaf363408931d76472ded14017e59c9e8.html#aaf363408931d76472ded14017e59c9e8) and [`friend operator<<(std::ostream&, const basic_json&)`](http://nlohmann.github.io/json/doxygen/classnlohmann_1_1basic__json_a5e34c5435e557d0bf666bd7311211405.html#a5e34c5435e557d0bf666bd7311211405) instead. + +## v3.0.1 + +!!! summary "Files" + + - [json.hpp](https://github.com/nlohmann/json/releases/download/v3.0.1/json.hpp) (502 KB) + - [json.hpp.asc](https://github.com/nlohmann/json/releases/download/v3.0.1/json.hpp.asc) (1 KB) + +Release date: 2017-12-29 +SHA-256: c9b3591f1bb94e723a0cd7be861733a3a555b234ef132be1e9027a0364118c4c + +### Summary + +This release fixes small issues in the implementation of **JSON Pointer** and **JSON Patch**. All changes are backward-compatible. + +### Changes + +- :bug: The **"copy" operation of JSON Patch** ([RFC 6902](https://tools.ietf.org/html/rfc6902)) requests that it is an error if the target path points into a non-existing array or object (see #894 for a detailed description). This release fixes the implementation to detect such invalid target paths and throw an exception. +- :bug: An **array index in a JSON Pointer** ([RFC 6901](https://tools.ietf.org/html/rfc6901)) must be an integer. This release fixes the implementation to throw an exception in case invalid array indices such as `10e2` are used. +- :white_check_mark: Added the [JSON Patch tests](https://github.com/json-patch/json-patch-tests) from Byron Ruth and Mike McCabe. +- :memo: Fixed the documentation of the [`at(ptr)` function with JSON Pointers](https://nlohmann.github.io/json/classnlohmann_1_1basic__json_a8ab61397c10f18b305520da7073b2b45.html#a8ab61397c10f18b305520da7073b2b45) to list all possible exceptions (see #888). +- :memo: Updated the [container overview documentation](https://nlohmann.github.io/json/) (see #883). +- :wrench: The CMake files now respect the [`BUILD_TESTING`](https://cmake.org/cmake/help/latest/module/CTest.html?highlight=build_testing) option (see #846, #885) +- :rotating_light: Fixed some compiler warnings (see #858, #882). + +### Deprecated functions + +:fire: To unify the interfaces and to improve similarity with the STL, the following functions are deprecated since version 3.0.0 and will be removed in the next major version (i.e., 4.0.0): + +- [`friend std::istream& operator<<(basic_json&, std::istream&)`](http://nlohmann.github.io/json/doxygen/classnlohmann_1_1basic__json_ab7285a92514fcdbe6de505ebaba92ea3.html#ab7285a92514fcdbe6de505ebaba92ea3) +- [`friend std::ostream& operator>>(const basic_json&, std::ostream&)`](http://nlohmann.github.io/json/doxygen/classnlohmann_1_1basic__json_a9e06deabe69262c3ffc5533d32856983.html#a9e06deabe69262c3ffc5533d32856983) + +Please use [`friend std::istream& operator>>(std::istream&, basic_json&)`](http://nlohmann.github.io/json/doxygen/classnlohmann_1_1basic__json_aaf363408931d76472ded14017e59c9e8.html#aaf363408931d76472ded14017e59c9e8) and [`friend operator<<(std::ostream&, const basic_json&)`](http://nlohmann.github.io/json/doxygen/classnlohmann_1_1basic__json_a5e34c5435e557d0bf666bd7311211405.html#a5e34c5435e557d0bf666bd7311211405) instead. + +## v3.0.0 + +!!! summary "Files" + + - [json.hpp](https://github.com/nlohmann/json/releases/download/v3.0.0/json.hpp) (501 KB) + - [json.hpp.asc](https://github.com/nlohmann/json/releases/download/v3.0.0/json.hpp.asc) (1 KB) + +Release date: 2017-12-17 +SHA-256: 076d4a0cb890a3c3d389c68421a11c3d77c64bd788e85d50f1b77ed252f2a462 + +### Summary + + + +After almost a year, here is finally a new release of JSON for Modern C++, and it is a major one! As we adhere to [semantic versioning](https://semver.org), this means the release includes some breaking changes, so please read the next section carefully before you update. But don't worry, we also added a few new features and put a lot of effort into fixing a lot of bugs and straighten out a few inconsistencies. + +### :boom: Breaking changes + +This section describes changes that change the public API of the library and may require changes in code using a previous version of the library. In section "Moving from 2.x.x to 3.0.0" at the end of the release notes, we describe in detail how existing code needs to be changed. + +- The library now uses [**user-defined exceptions**](http://nlohmann.github.io/json/doxygen/classnlohmann_1_1basic__json_a9a0aced019cb1d65bb49703406c84970.html#a9a0aced019cb1d65bb49703406c84970) instead of re-using those defined in `` (#244). This not only allows to add more information to the exceptions (every exception now has an identifier, and parse errors contain the position of the error), but also to easily catch all library exceptions with a single `catch(json::exception)`. +- When strings with a different encoding as UTF-8 were stored in JSON values, their serialization could not be parsed by the library itself, as only UTF-8 is supported. To enforce this library limitation and improve consistency, **non-UTF-8 encoded strings now yield a `json::type_error` exception during serialization** (#838). The check for valid UTF-8 is realized with code from [Björn Hoehrmann](http://bjoern.hoehrmann.de/). +- **NaN and infinity values can now be stored inside the JSON value** without throwing an exception. They are, however, still serialized as `null` (#388). +- The library's iterator tag was changed from RandomAccessIterator to **[BidirectionalIterator](http://en.cppreference.com/w/cpp/concept/BidirectionalIterator)** (#593). Supporting RandomAccessIterator was incorrect as it assumed an ordering of values in a JSON objects which are unordered by definition. +- The library does not include the standard headers ``, ``, and `` any more. You may need to add these headers to code relying on them. +- Removed constructor `explicit basic_json(std::istream& i, const parser_callback_t cb = nullptr)` which was deprecated in version 2.0.0 (#480). + +### :fire: Deprecated functions + +To unify the interfaces and to improve similarity with the STL, the following functions are now deprecated and will be removed in the next major version (i.e., 4.0.0): + +- [`friend std::istream& operator<<(basic_json&, std::istream&)`](http://nlohmann.github.io/json/doxygen/classnlohmann_1_1basic__json_ab7285a92514fcdbe6de505ebaba92ea3.html#ab7285a92514fcdbe6de505ebaba92ea3) +- [`friend std::ostream& operator>>(const basic_json&, std::ostream&)`](http://nlohmann.github.io/json/doxygen/classnlohmann_1_1basic__json_a9e06deabe69262c3ffc5533d32856983.html#a9e06deabe69262c3ffc5533d32856983) + +Please use [`friend std::istream& operator>>(std::istream&, basic_json&)`](http://nlohmann.github.io/json/doxygen/classnlohmann_1_1basic__json_aaf363408931d76472ded14017e59c9e8.html#aaf363408931d76472ded14017e59c9e8) and [`friend operator<<(std::ostream&, const basic_json&)`](http://nlohmann.github.io/json/doxygen/classnlohmann_1_1basic__json_a5e34c5435e557d0bf666bd7311211405.html#a5e34c5435e557d0bf666bd7311211405) instead. + +### :sparkles: New features + +With all this breaking and deprecation out of the way, let's talk about features! + +- We improved the **diagnostic information for syntax errors** (#301). Now, an exception [`json::parse_error`](http://nlohmann.github.io/json/doxygen/classnlohmann_1_1basic__json_af1efc2468e6022be6e35fc2944cabe4d.html#af1efc2468e6022be6e35fc2944cabe4d) is thrown which contains a detailed message on the error, but also a member `byte` to indicate the byte offset in the input where the error occurred. +- We added a **non-throwing syntax check** (#458): The new `accept` function returns a Boolean indicating whether the input is proper JSON. We also added a Boolean parameter `allow_exceptions` to the existing [`parse`](http://nlohmann.github.io/json/doxygen/classnlohmann_1_1basic__json_aa9676414f2e36383c4b181fe856aa3c0.html#aa9676414f2e36383c4b181fe856aa3c0) functions to return a `discarded` value in case a syntax error occurs instead of throwing an exception. +- An [`update`](http://nlohmann.github.io/json/doxygen/classnlohmann_1_1basic__json_a1cfa9ae5e7c2434cab4cfe69bffffe11.html#a1cfa9ae5e7c2434cab4cfe69bffffe11) function was added to **merge two JSON objects** (#428). In case you are wondering: the name was inspired by [Python](https://docs.python.org/2/library/stdtypes.html#dict.update). +- The [`insert`](http://nlohmann.github.io/json/doxygen/classnlohmann_1_1basic__json_a1b0a4e60d56f1fe80501ed941e122892.html#a1b0a4e60d56f1fe80501ed941e122892) function now also supports an iterator range to add elements to an object. +- The binary exchange formats **CBOR and MessagePack can now be parsed from input streams and written to output streams** (#477). +- Input streams are now only read until the end of a JSON value instead of the end of the input (#367). +- The serialization function [`dump`](http://nlohmann.github.io/json/doxygen/classnlohmann_1_1basic__json_a5adea76fedba9898d404fef8598aa663.html#a5adea76fedba9898d404fef8598aa663) now has two optional parameters `ensure_ascii` to **escape all non-ASCII characters** with `\uxxxx` and an `indent_char` parameter to choose whether to **indent with spaces or tabs** (#654). +- Added **built-in type support** for C arrays (#502), `std::pair` and `std::tuple` (#563, #614), `enum` and `enum class` (#545), `std::vector` (#494). Fixed support for `std::valarray` (#702), `std::array` (#553), and `std::map` (#600, #607). + +### :hammer: Further changes + +Furthermore, there have been a lot of changes under the hood: + +- Replaced the [re2c](http://re2c.org) generated scanner by a self-coded version which allows for a better modularization of the parser and better diagnostics. To test the new scanner, we added millions (8,860,608 to be exact) of unit tests to check all valid and invalid byte sequences of the Unicode standard. +- Google's OSS-Fuzz is still constantly fuzz-testing the library and found several issues that were fixed in this release (#497, #504, #514, #516, #518, #519, #575). +- We now also ignore UTF-8 byte order marks when parsing from an iterator range (#602). +- Values can be now moved from initializer lists (#663). +- Updated to [Catch](https://github.com/catchorg/Catch2) 1.9.7. Unfortunately, Catch2 currently has some performance issues. +- The non-exceptional paths of the library are now annotated with `__builtin_expect` to optimize branch prediction as long as no error occurs. +- MSVC now produces a stack trace in MSVC if a `from_json` or `to_json` function was not found for a user-defined type. We also added a debug visualizer [`nlohmann_json.natvis`](https://github.com/nlohmann/json/blob/develop/nlohmann_json.natvis) for better debugging in MSVC (#844). +- Overworked the documentation and added even more examples. +- The build workflow now relies on CMake and CTest. Special flags can be chosen with CMake, including coverage (`JSON_Coverage`), compilation without exceptions (`JSON_NoExceptions`), LLVM sanitizers (`JSON_Sanitizer`), or execution with Valgrind (`JSON_Valgrind`). +- Added support for package managers Meson (#576), Conan (#566), Hunter (#671, #829), and vcpkg (#753). +- Added CI builders: Xcode 8.3, 9.0, 9.1, and 9.2; GCC 7.2; Clang 3.8, 3.9, 4.0, and 5.0; Visual Studio 2017. The library is further built with C++17 settings on the latest Clang, GCC, and MSVC version to quickly detect new issues. + +### Moving from 2.x.x to 3.0.0 + +#### User-defined Exceptions + +There are five different exceptions inheriting from [`json::exception`](http://nlohmann.github.io/json/doxygen/classnlohmann_1_1basic__json_a9a0aced019cb1d65bb49703406c84970.html#a9a0aced019cb1d65bb49703406c84970): + +- [`json::parse_error`](http://nlohmann.github.io/json/doxygen/classnlohmann_1_1basic__json_af1efc2468e6022be6e35fc2944cabe4d.html#af1efc2468e6022be6e35fc2944cabe4d) for syntax errors (including the binary formats), +- [`json::invalid_iterator`](http://nlohmann.github.io/json/doxygen/classnlohmann_1_1basic__json_ac13d32f7cbd02d616e71d8dc30dadcbf.html#ac13d32f7cbd02d616e71d8dc30dadcbf) for errors related to iterators, +- [`json::type_error`](http://nlohmann.github.io/json/doxygen/classnlohmann_1_1basic__json_a4010e8e268fefd86da773c10318f2902.html#a4010e8e268fefd86da773c10318f2902) for errors where functions were called with the wrong JSON type, +- [`json::out_of_range`](http://nlohmann.github.io/json/doxygen/classnlohmann_1_1basic__json_a28f7c2f087274a0012eb7a2333ee1580.html#a28f7c2f087274a0012eb7a2333ee1580) for range errors, and +- [`json::other_error`](http://nlohmann.github.io/json/doxygen/classnlohmann_1_1basic__json_a3333a5a8714912adda33a35b369f7b3d.html#a3333a5a8714912adda33a35b369f7b3d) for miscellaneous errors. + +To support these exception, the `try`/`catch` blocks of your code need to be adjusted: + +| new exception | previous exception | +|:--|:--| +| parse_error.101 | invalid_argument | +| parse_error.102 | invalid_argument | +| parse_error.103 | invalid_argument | +| parse_error.104 | invalid_argument | +| parse_error.105 | invalid_argument | +| parse_error.106 | domain_error | +| parse_error.107 | domain_error | +| parse_error.108 | domain_error | +| parse_error.109 | invalid_argument | +| parse_error.110 | out_of_range | +| parse_error.111 | invalid_argument | +| parse_error.112 | invalid_argument | +| invalid_iterator.201 | domain_error | +| invalid_iterator.202 | domain_error | +| invalid_iterator.203 | domain_error | +| invalid_iterator.204 | out_of_range | +| invalid_iterator.205 | out_of_range | +| invalid_iterator.206 | domain_error | +| invalid_iterator.207 | domain_error | +| invalid_iterator.208 | domain_error | +| invalid_iterator.209 | domain_error | +| invalid_iterator.210 | domain_error | +| invalid_iterator.211 | domain_error | +| invalid_iterator.212 | domain_error | +| invalid_iterator.213 | domain_error | +| invalid_iterator.214 | out_of_range | +| type_error.301 | domain_error | +| type_error.302 | domain_error | +| type_error.303 | domain_error | +| type_error.304 | domain_error | +| type_error.305 | domain_error | +| type_error.306 | domain_error | +| type_error.307 | domain_error | +| type_error.308 | domain_error | +| type_error.309 | domain_error | +| type_error.310 | domain_error | +| type_error.311 | domain_error | +| type_error.313 | domain_error | +| type_error.314 | domain_error | +| type_error.315 | domain_error | +| out_of_range.401 | out_of_range | +| out_of_range.402 | out_of_range | +| out_of_range.403 | out_of_range | +| out_of_range.404 | out_of_range | +| out_of_range.405 | domain_error | +| other_error.501 | domain_error | + +#### Handling of NaN and INF + +- If an overflow occurs during parsing a number from a JSON text, an exception [`json::out_of_range`](http://nlohmann.github.io/json/doxygen/classnlohmann_1_1basic__json_a28f7c2f087274a0012eb7a2333ee1580.html#a28f7c2f087274a0012eb7a2333ee1580) is thrown so that the overflow is detected early and roundtripping is guaranteed. + +- NaN and INF floating-point values can be stored in a JSON value and are not replaced by null. That is, the basic_json class behaves like `double` in this regard (no exception occurs). However, NaN and INF are serialized to `null`. + +#### Removal of deprecated functions + +Function `explicit basic_json(std::istream& i, const parser_callback_t cb = nullptr)` should be replaced by the `parse` function: Let `ss` be a stream and `cb` be a parse callback function. + +Old code: + +```cpp +json j(ss, cb); +``` + +New code: + +```cpp +json j = json::parse(ss, cb); +``` + +If no callback function is used, also the following code works: + +```cpp +json j; +j << ss; +``` + +or + +```cpp +json j; +ss >> j; +``` + +## v2.1.1 + +!!! summary "Files" + + - [json.hpp](https://github.com/nlohmann/json/releases/download/v2.1.1/json.hpp) (437 KB) + - [json.hpp.asc](https://github.com/nlohmann/json/releases/download/v2.1.1/json.hpp.asc) (1 KB) + +Release date: 2017-02-25 +SHA-256: faa2321beb1aa7416d035e7417fcfa59692ac3d8c202728f9bcc302e2d558f57 + +### Summary + +This release **fixes a locale-related bug in the parser**. To do so, the whole number handling (lexer, parser, and also the serialization) have been overworked. Furthermore, a lot of small changes added up that were added to this release. All changes are backward-compatible. + +### Changes +- :bug: Locales that have a different character than `.` as decimal separator (e.g., the Norwegian locale `nb_NO.UTF-8`) led to truncated number parsing or parse errors. The library now has been fixed to work with **any locale**. Note that `.` is still the only valid decimal separator for JSON input. +- :bug: Numbers like `1.0` were correctly parsed as floating-point number, but serialized as integer (`1`). Now, **floating-point numbers correctly round trip**. +- :bug: Parsing incorrect JSON numbers with leading 0 (`0123`) could yield a [buffer overflow](https://github.com/nlohmann/json/issues/452). This is fixed now by detecting such errors directly by the lexer. +- :bug: Constructing a JSON value from a pointer was incorrectly interpreted as a Boolean; such code will now yield a compiler error. +- :bug: Comparing a JSON number with `0` led to a comparison with `null`. This is fixed now. +- :bug: All throw calls are now wrapped in macros. +- :lock: Starting during the preparation of this release (since 8 February 2017), commits and released files are **cryptographically signed** with [this GPG key](https://keybase.io/nlohmann/pgp_keys.asc?fingerprint=797167ae41c0a6d9232e48457f3cea63ae251b69). Previous releases have also been signed. +- :sparkles: The parser for MessagePack and CBOR now supports an optional start index parameter to define a byte offset for the parser. +- :rotating_light: Some more warnings have been fixed. With Clang, the code compiles **without warnings** with `-Weverything` (well, it needs `-Wno-documentation-unknown-command` and `-Wno-deprecated-declarations`, but you get the point). +- :hammer: The code can be compiled easier with many Android NDKs by avoiding macros like `UINT8_MAX` which previously required defining a preprocessor macro for compilation. +- :zap: The unit tests now compile two times faster. +- :heavy_plus_sign: [Cotire](https://github.com/sakra/cotire) is used to speed up the build. +- :pencil2: Fixed a lot of typos in the documentation. +- :memo: Added a section to the README file that lists all used [third-party code/tools](https://github.com/nlohmann/json#used-third-party-tools). +- :memo: Added a note on constructing a string value vs. parsing. +- :white_check_mark: The test suite now contains 11202597 unit tests. +- :memo: Improved the [Doxygen documentation](https://nlohmann.github.io/json/) by shortening the template parameters of class `basic_json`. +- :construction_worker: Removed Doozer. +- :construction_worker: Added Codacity. +- :arrow_up: Upgraded Catch to version 1.7.2. + + +## v2.1.0 + +!!! summary "Files" + + - [json.hpp](https://github.com/nlohmann/json/releases/download/v2.1.0/json.hpp) (426 KB) + - [json.hpp.asc](https://github.com/nlohmann/json/releases/download/v2.1.0/json.hpp.asc) (1 KB) + +- Release date: 2017-01-28 +- SHA-256: a571dee92515b685784fd527e38405cf3f5e13e96edbfe3f03d6df2e363a767b + +### Summary + +This release introduces a means to convert from/to user-defined types. The release is backwards compatible. + +![conversion](https://cloud.githubusercontent.com/assets/159488/22399173/aebe8f7a-e597-11e6-930f-7494ee615827.png) + +### Changes +- :sparkles: The library now offers an elegant way to **convert from and to arbitrary value types**. All you need to do is to implement two functions: `to_json` and `from_json`. Then, a conversion is as simple as putting a `=` between variables. See the [README](https://github.com/nlohmann/json#arbitrary-types-conversions) for more information and examples. +- :sparkles: **Exceptions can now be switched off.** This can be done by defining the preprocessor symbol `JSON_NOEXCEPTION` or by passing `-fno-exceptions` to your compiler. In case the code would usually thrown an exception, `abort()` is now called. +- :sparkles: **Information on the library** can be queried with the new (static) function `meta()` which returns a JSON object with information on the version, compiler, and platform. See the [documentation]() for an example. +- :bug: A bug in the CBOR parser was fixed which led to a buffer overflow. +- :sparkles: The function [`type_name()`]() is now public. It allows to query the type of a JSON value as string. +- :white_check_mark: Added the [Big List of Naughty Strings](https://github.com/minimaxir/big-list-of-naughty-strings) as test case. +- :arrow_up: Updated to [Catch v1.6.0](https://github.com/philsquared/Catch/releases/tag/v1.6.0). +- :memo: Some typos in the documentation have been fixed. + + +## v2.0.10 + +!!! summary "Files" + + - [json.hpp](https://github.com/nlohmann/json/releases/download/v2.0.10/json.hpp) (409 KB) + - [json.hpp.asc](https://github.com/nlohmann/json/releases/download/v2.0.10/json.hpp.asc) (1 KB) + +- Release date: 2017-01-02 +- SHA-256: ec27d4e74e9ce0f78066389a70724afd07f10761009322dc020656704ad5296d + +### Summary + +This release fixes several security-relevant bugs in the MessagePack and CBOR parsers. The fixes are backwards compatible. + +### Changes +- :bug: Fixed a lot of **bugs in the CBOR and MesssagePack parsers**. These bugs occurred if invalid input was parsed and then could lead in buffer overflows. These bugs were found with Google's [OSS-Fuzz](https://github.com/google/oss-fuzz), see #405, #407, #408, #409, #411, and #412 for more information. +- :construction_worker: We now also use the **[Doozer](https://doozer.io) continuous integration platform**. +- :construction_worker: The complete test suite is now also run with **Clang's address sanitizer and undefined-behavior sanitizer**. +- :white_check_mark: Overworked **fuzz testing**; CBOR and MessagePack implementations are now fuzz-tested. Furthermore, all fuzz tests now include a round trip which ensures created output can again be properly parsed and yields the same JSON value. +- :memo: Clarified documentation of `find()` function to always return `end()` when called on non-object value types. +- :hammer: Moved thirdparty test code to `test/thirdparty` directory. + +## v2.0.9 + +!!! summary "Files" + + - [json.hpp](https://github.com/nlohmann/json/releases/download/v2.0.9/json.hpp) (406 KB) + - [json.hpp.asc](https://github.com/nlohmann/json/releases/download/v2.0.9/json.hpp.asc) (1 KB) + +- Release date: 2016-12-16 +- SHA-256: fbf3396f13e187d6c214c297bddc742d918ea9b55e10bfb3d9f458b9bfdc22e5 + +### Summary + +This release implements with **[CBOR](http://cbor.io)** and **[MessagePack](http://msgpack.org)** two **binary serialization/deserialization formats**. It further contains some small fixes and improvements. The fixes are backwards compatible. + +![cbor](https://cloud.githubusercontent.com/assets/159488/22399181/d4d60d32-e597-11e6-8dcb-825abcf9ac2a.png) + +### Changes +- :sparkles: The library can now read and write the binary formats **[CBOR](http://cbor.io)** (Concise Binary Object Representation) and **[MessagePack](http://msgpack.org)**. Both formats are aimed to produce a very compact representation of JSON which can be parsed very efficiently. See the [README file](https://github.com/nlohmann/json#binary-formats-cbor-and-messagepack) for more information and examples. +- :fire: simplified the iteration implementation allowing to remove dozens of lines of code +- :bug: fixed an [integer overflow error](https://github.com/nlohmann/json/issues/389) detected by [Google's OSS-Fuzz](https://github.com/google/oss-fuzz) +- :bug: suppressed documentation warnings inside the library to facilitate compilation with `-Wdocumentation` +- :bug: fixed an overflow detection error in the number parser +- :memo: updated [contribution guidelines](https://github.com/nlohmann/json/blob/develop/.github/CONTRIBUTING.md) to a list of frequentely asked features that will most likely be never added to the library +- :memo: added a **table of contents** to the [README file](https://github.com/nlohmann/json/blob/develop/README.md) to add some structure +- :memo: mentioned the many [examples](https://github.com/nlohmann/json/tree/develop/doc/examples) and the [documentation](https://nlohmann.github.io/json/) in the [README file]() +- :hammer: split [unit tests](https://github.com/nlohmann/json/tree/develop/test/src) into individual independent binaries to speed up compilation and testing +- :white_check_mark: the test suite now contains **11201886** tests + +## v2.0.8 + +!!! summary "Files" + + - [json.hpp](https://github.com/nlohmann/json/releases/download/v2.0.8/json.hpp) (360 KB) + - [json.hpp.asc](https://github.com/nlohmann/json/releases/download/v2.0.8/json.hpp.asc) (1 KB) + +- Release date: 2016-12-02 +- SHA-256: b70db0ad34f8e0e61dc3f0cbab88099336c9674c193d8a3439d93d6aca2d7120 + +### Summary + +This release combines a lot of small fixes and improvements. The fixes are backwards compatible. + +### Changes +- :bug: fixed a bug that froze the parser if a passed file was not found (now, `std::invalid_argument` is thrown) +- :bug: fixed a bug that lead to an error of a file at EOF was parsed again (now, `std::invalid_argument` is thrown) +- :sparkles: the well known functions [`emplace`](http://nlohmann.github.io/json/doxygen/classnlohmann_1_1basic__json_a602f275f0359ab181221384989810604.html#a602f275f0359ab181221384989810604) and [`emplace_back`](http://nlohmann.github.io/json/doxygen/classnlohmann_1_1basic__json_af8a435033327d9237da414afc1cce513.html#af8a435033327d9237da414afc1cce513) have been added to JSON values and work as expected +- :zap: improved the performance of the serialization (`dump` function) +- :zap: improved the performance of the deserialization (parser) +- :construction_worker: some continuous integration images at [Travis](https://travis-ci.org/nlohmann/json) were added and retired; see [here](https://github.com/nlohmann/json#supported-compilers) for the current continuous integration setup +- :construction_worker: the [Coverity scan](https://scan.coverity.com/projects/nlohmann-json) works again +- :chart_with_upwards_trend: the benchmarking code has been improved to produce more stable results +- :memo: the [README](https://github.com/nlohmann/json/blob/develop/README.md) file has been extended and includes more frequently asked examples +- :white_check_mark: the test suite now contains 8905518 tests +- :arrow_up: updated [Catch](https://github.com/philsquared/Catch) to version 1.5.8 + +## v2.0.7 + +!!! summary "Files" + + - [json.hpp](https://github.com/nlohmann/json/releases/download/v2.0.7/json.hpp) (355 KB) + - [json.hpp.asc](https://github.com/nlohmann/json/releases/download/v2.0.7/json.hpp.asc) (1 KB) + +- Release date: 2016-11-02 +- SHA-256: 5545c323670f8165bae90b9dc6078825e86ec310d96cc4e5b47233ea43715bbf + +### Summary + +This release fixes a few bugs in the JSON parser found in the [Parsing JSON is a Minefield 💣](http://seriot.ch/parsing_json.html) article. The fixes are backwards compatible. + +### Changes +- The article [Parsing JSON is a Minefield 💣](http://seriot.ch/parsing_json.html) discusses a lot of pitfalls of the JSON specification. When investigating the published test cases, a few bugs in the library were found and fixed: + - Files with less than 5 bytes can now be parsed without error. + - The library now properly rejects any file encoding other than UTF-8. Furthermore, incorrect surrogate pairs are properly detected and rejected. + - The library now accepts all but one "yes" test (y_string_utf16.json): UTF-16 is not supported. + - The library rejects all but one "no" test (n_number_then_00.json): Null bytes are treated as end of file instead of an error. This allows to parse input from null-terminated strings. +- The string length passed to a user-defined string literal is now exploited to choose a more efficient constructor. +- A few grammar mistakes in the README file have been fixed. + +## v2.0.6 + +!!! summary "Files" + + - [json.hpp](https://github.com/nlohmann/json/releases/download/v2.0.6/json.hpp) (349 KB) + - [json.hpp.asc](https://github.com/nlohmann/json/releases/download/v2.0.6/json.hpp.asc) (1 KB) + +- Release date: 2016-10-15 +- SHA256: 459cc93d5e2f503e50c6d5876eb86bfea7daf405f5a567c5a2c9abc2383756ae + +### Summary + +This release fixes the semantics of `operator[]` for JSON Pointers (see below). This fix is backwards compatible. + +### Changes +- **`operator[]` for JSON Pointers** now behaves like the other versions of `operator[]` and transforms `null` values into objects or arrays if required. This allows to created nested structures like `j["/foo/bar/2"] = 17` (yielding `{"foo": "bar": [null, null, 17]}`) without problems. +- overworked a helper SFINAE function +- fixed some documentation issues +- fixed the CMake files to allow to run the test suite outside the main project directory +- restored test coverage to 100%. + +## v2.0.5 + +!!! summary "Files" + + - [json.hpp](https://github.com/nlohmann/json/releases/download/v2.0.5/json.hpp) (347 KB) + - [json.hpp.asc](https://github.com/nlohmann/json/releases/download/v2.0.5/json.hpp.asc) (1 KB) + +- Release date: 2016-09-14 +- SHA-256: 8b7565263a44e2b7d3b89808bc73d2d639037ff0c1f379e3d56dbd77e00b98d9 + +### Summary + +This release fixes a regression bug in the stream parser (function `parse()` and the `<<`/`>>` operators). This fix is backwards compatible. + +### Changes +- **Bug fix**: The end of a file stream was not detected properly which led to parse errors. This bug should have been fixed with 2.0.4, but there was still a flaw in the code. + +## v2.0.4 + +!!! summary "Files" + + - [json.hpp](https://github.com/nlohmann/json/releases/download/v2.0.4/json.hpp) (347 KB) + - [json.hpp.asc](https://github.com/nlohmann/json/releases/download/v2.0.4/json.hpp.asc) (1 KB) + +- Release date: 2016-09-11 +- SHA-256: 632ceec4c25c4e2153f71470d3a2b992c8355f6d8b4d627d05dd16095cd3aeda + +### Summary + +This release fixes a bug in the stream parser (function `parse()` and the `<<`/`>>` operators). This fix is backwards compatible. + +### Changes +- **Bug fix**: The end of a file stream was not detected properly which led to parse errors. +- Fixed a compiler warning about an unused variable. + +## v2.0.3 + +!!! summary "Files" + + - [json.hpp](https://github.com/nlohmann/json/releases/download/v2.0.3/json.hpp) (347 KB) + - [json.hpp.asc](https://github.com/nlohmann/json/releases/download/v2.0.3/json.hpp.asc) (1 KB) + +- Release date: 2016-08-31 +- SHA-256: 535b73efe5546fde9e763c14aeadfc7b58183c0b3cd43c29741025aba6cf6bd3 + +### Summary + +This release combines a lot of small fixes and improvements. The release is backwards compatible. + +### Changes +- The **parser/deserialization functions have been generalized** to process any contiguous sequence of 1-byte elements (e.g., `char`, `unsigned char`, `uint8_t`). This includes all kind of string representations (string literals, char arrays, `std::string`, `const char*`), contiguous containers (C-style arrays, `std::vector`, `std::array`, `std::valarray`, `std::initializer_list`). User-defined containers providing random-access iterator access via `std::begin` and `std::end` can be used as well. See the documentation ([1](https://nlohmann.github.io/json/classnlohmann_1_1basic__json_ace63ac4eb1dd7251a259d32e397461a3.html#ace63ac4eb1dd7251a259d32e397461a3), [2](https://nlohmann.github.io/json/classnlohmann_1_1basic__json_a90f05d55d9d0702c075cd281fd0d85ae.html#a90f05d55d9d0702c075cd281fd0d85ae), [3](https://nlohmann.github.io/json/classnlohmann_1_1basic__json_aeffd70f622f8f2a51fd3d95af64b63a7.html#aeffd70f622f8f2a51fd3d95af64b63a7), [4](https://nlohmann.github.io/json/classnlohmann_1_1basic__json_aa8dca2e91a6301c36890f844e64f0023.html#aa8dca2e91a6301c36890f844e64f0023)) for more information. Note that contiguous storage cannot be checked at compile time; if any of the parse functions are called with a noncompliant container, the behavior is undefined and will most likely yield segmentation violation. The preconditions are enforced by an assertion unless the library is compiled with preprocessor symbol `NDEBUG`. +- As a general remark on **assertions**: The library uses assertions to preclude undefined behavior. A [prominent example](https://github.com/nlohmann/json/issues/289) for this is the `operator[]` for const JSON objects. The behavior of this const version of the operator is undefined if the given key does not exist in the JSON object, because unlike the non-const version, it cannot add a `null` value at the given key. Assertions can be switched of by defining the preprocessor symbol `NDEBUG`. See the [documentation of `assert`](http://en.cppreference.com/w/cpp/error/assert) for more information. +- In the course of cleaning up the parser/deserialization functions, the constructor [`basic_json(std::istream&, const parser_callback_t)`](https://nlohmann.github.io/json/classnlohmann_1_1basic__json_a32350263eb105764844c5a85e156a255.html#a32350263eb105764844c5a85e156a255) has been **deprecated** and will be deleted with the next major release 3.0.0 to unify the interface of the library. Deserialization will be done by stream operators or by calling one of the `parse` functions. That is, calls like `json j(i);` for an input stream `i` need to be replaced by `json j = json::parse(i);`. Compilers will produce a deprecation warning if client code uses this function. +- Minor improvements: + - Improved the performance of the serialization by avoiding the re-creation of a locale object. + - Fixed two MSVC warnings. Compiling the test suite with `/Wall` now only warns about non-inlined functions (C4710) and the deprecation of the constructor from input-stream (C4996). +- Some project internals: + - The project has qualified for the [Core Infrastructure Initiative Best Practices Badge](https://bestpractices.coreinfrastructure.org/projects/289). While most requirements where already satisfied, some led to a more explicit documentation of quality-ensuring procedures. For instance, static analysis is now executed with every commit on the build server. Furthermore, the [contribution guidelines document](https://github.com/nlohmann/json/blob/develop/.github/CONTRIBUTING.md) how to communicate security issues privately. + - The test suite has been overworked and split into several files to allow for faster compilation and analysis. The execute the test suite, simply execute `make check`. + - The continuous integration with [Travis](https://travis-ci.org/nlohmann/json) was extended with Clang versions 3.6.0 to 3.8.1 and now includes 18 different compiler/OS combinations. + - An 11-day run of [American fuzzy lop](http://lcamtuf.coredump.cx/afl/) checked 962 million inputs on the parser and found no issue. + +## v2.0.2 + +!!! summary "Files" + + - [json.hpp](https://github.com/nlohmann/json/releases/download/v2.0.2/json.hpp) (338 KB) + - [json.hpp.asc](https://github.com/nlohmann/json/releases/download/v2.0.2/json.hpp.asc) (1 KB) + +- Release date: 2016-07-31 +- SHA-256: 8e97b7965b4594b00998d6704465412360e1a0ed927badb51ded8b82291a8f3d + +### Summary + +This release combines a lot of small fixes and improvements. The release is backwards compatible. + +### Changes +- The **parser** has been overworked, and a lot of small issues have been fixed: + - Improved parser performance by avoiding recursion and using move semantics for the return value. + - Unescaped control characters `\x10`-`\x1f` are not accepted any more. + - Fixed a bug in the parser when reading from an input stream. + - Improved test case coverage for UTF-8 parsing: now, all valid Unicode code points are tested both escaped and unescaped. + - The precision of output streams is now preserved by the parser. +- Started to check the **code correctness** by proving termination of important loops. Furthermore, individual assertions have been replaced by a more systematic function which checks the class invariants. Note that assertions should be switched off in production by defining the preprocessor macro `NDEBUG`, see the [documentation of `assert`](http://en.cppreference.com/w/cpp/error/assert). +- A lot of **code cleanup**: removed unused headers, fixed some compiler warnings, and fixed a build error for Windows-based Clang builds. +- Added some compile-time checks: + - Unsupported compilers are rejected during compilation with an `#error` command. + - Static assertion prohibits code with incompatible pointer types used in `get_ptr()`. +- Improved the [documentation](https://nlohmann.github.io/json/), and adjusted the documentation script to choose the correct version of `sed`. +- Replaced a lot of "raw loops" by STL functions like `std::all_of`, `std::for_each`, or `std::accumulate`. This facilitates reasoning about termination of loops and sometimes allowed to simplify functions to a single return statement. +- Implemented a `value()` function for JSON pointers (similar to `at` function). +- The Homebrew formula (see [Integration](https://github.com/nlohmann/json#integration)) is now tested for all Xcode builds (6.1 - 8.x) with Travis. +- Avoided output to `std::cout` in the test cases. + +## v2.0.1 + +!!! summary "Files" + + - [json.hpp](https://github.com/nlohmann/json/releases/download/v2.0.1/json.hpp) (321 KB) + - [json.hpp.asc](https://github.com/nlohmann/json/releases/download/v2.0.1/json.hpp.asc) (1 KB) + +- Release date: 2016-06-28 +- SHA-256: ef550fcd7df572555bf068e9ec4e9d3b9e4cdd441cecb0dcea9ea7fd313f72dd + +### Summary + +This release fixes a performance regression in the JSON serialization (function `dump()`). This fix is backwards compatible. + +### Changes +- The locale of the output stream (or the internal string stream if a JSON value is serialized to a string) is now adjusted once for the whole serialization instead of for each floating-point number. +- The locale of an output stream is now correctly reset to the previous value by the JSON library. + + +## v2.0.0 + +!!! summary "Files" + + - [json.hpp](https://github.com/nlohmann/json/releases/download/v2.0.0/json.hpp) (321 KB) + - [json.hpp.asc](https://github.com/nlohmann/json/releases/download/v2.0.0/json.hpp.asc) (1 KB) + +- Release date: 2016-06-24 +- SHA-256: ac9e1fb25c2ac9ca5fc501fcd2fe3281fe04f07018a1b48820e7b1b11491bb6c + +### Summary + +This release adds several features such as JSON Pointers, JSON Patch, or support for 64 bit unsigned integers. Furthermore, several (subtle) bugs have been fixed. + +As `noexcept` and `constexpr` specifier have been added to several functions, the public API has effectively been changed in a (potential) non-backwards compatible manner. As we adhere to [Semantic Versioning](http://semver.org), this calls for a new major version, so say hello to 2️⃣.0️⃣.0️⃣. + +### Changes +- 🔟 A JSON value now uses `uint64_t` (default value for template parameter `NumberUnsignedType`) as data type for **unsigned integer** values. This type is used automatically when an unsigned number is parsed. Furthermore, constructors, conversion operators and an `is_number_unsigned()` test have been added. +- 👉 **JSON Pointer** ([RFC 6901](https://tools.ietf.org/html/rfc6901)) support: A JSON Pointer is a string (similar to an XPath expression) to address a value inside a structured JSON value. JSON Pointers can be used in `at()` and `operator[]` functions. Furthermore, JSON values can be “flattened” to key/value pairs using `flatten()` where each key is a JSON Pointer. The original value can be restored by “unflattening” the flattened value using `unflatten()`. +- 🏥 **JSON Patch** ([RFC 6902](https://tools.ietf.org/html/rfc6902)) support. A JSON Patch is a JSON value that describes the required edit operations (add, change, remove, …) to transform a JSON value into another one. A JSON Patch can be created with function `diff(const basic_json&)` and applied with `patch(const basic_json&)`. Note the created patches use a rather primitive algorithm so far and leave room for improvement. +- 🇪🇺 The code is now **locale-independent**: Floating-point numbers are always serialized with a period (`.`) as decimal separator and ignores different settings from the locale. +- 🍺 **Homebrew** support: Install the library with `brew tap nlohmann/json && brew install nlohmann_json`. +- Added constructor to create a JSON value by parsing a `std::istream` (e.g., `std::stringstream` or `std::ifstream`). +- Added **`noexcept`** specifier to `basic_json(boolean_t)`, `basic_json(const number_integer_t)`, `basic_json(const int)`, `basic_json(const number_float_t)`, iterator functions (`begin()`, `end()`, etc.) +- When parsing numbers, the sign of `0.0` (vs. `-0.0`) is preserved. +- Improved MSVC 2015, Android, and MinGW support. See [README](https://github.com/nlohmann/json#supported-compilers) for more information. +- Improved test coverage (added 2,225,386 tests). +- Removed some misuses of `std::move`. +- Fixed several compiler warnings. +- Improved error messages from JSON parser. +- Updated to [`re2c`](http://re2c.org) to version 0.16 to use a minimal DFAs for the lexer. +- Updated test suite to use [Catch](https://github.com/philsquared/Catch) version 1.5.6. +- Made type getters (`is_number`, etc.) and const value access `constexpr`. +- Functions `push_back` and `operator+=` now work with key/value pairs passed as initializer list, e.g. `j_object += {"key", 1}`. +- Overworked `CMakeLists.txt` to make it easier to integrate the library into other projects. + +### Notes +- Parser error messages are still very vague and contain no information on the error location. +- The implemented `diff` function is rather primitive and does not create minimal diffs. +- The name of function `iteration_wrapper` may change in the future and the function will be deprecated in the next release. +- Roundtripping (i.e., parsing a JSON value from a string, serializing it, and comparing the strings) of floating-point numbers is not 100% accurate. Note that [RFC 8259](https://tools.ietf.org/html/rfc8259) defines no format to internally represent numbers and states not requirement for roundtripping. Nevertheless, benchmarks like [Native JSON Benchmark](https://github.com/miloyip/nativejson-benchmark) treat roundtripping deviations as conformance errors. + + +## v1.1.0 + +!!! summary "Files" + + - [json.hpp](https://github.com/nlohmann/json/releases/download/v1.1.0/json.hpp) (257 KB) + - [json.hpp.asc](https://github.com/nlohmann/json/releases/download/v1.1.0/json.hpp.asc) (1 KB) + +- Release date: 2016-01-24 +- SHA-256: c0cf0e3017798ca6bb18e757ebc570d21a3bdac877845e2b9e9573d183ed2f05 + +### Summary + +This release fixes several small bugs and adds functionality in a backwards-compatible manner. Compared to the [last version (1.0.0)](https://github.com/nlohmann/json/releases/tag/v1.0.0), the following changes have been made: + +### Changes +- _Fixed_: **Floating-point numbers** are now serialized and deserialized properly such that rountripping works in more cases. [#185, #186, #190, #191, #194] +- _Added_: The code now contains **assertions** to detect undefined behavior during development. As the standard function `assert` is used, the assertions can be switched off by defining the preprocessor symbol `NDEBUG` during compilation. [#168] +- _Added_: It is now possible to get a **reference** to the stored values via the newly added function `get_ref()`. [#128, #184] +- _Fixed_: Access to object values via keys (**`operator[]`**) now works with all kind of string representations. [#171, #189] +- _Fixed_: The code now compiles again with **Microsoft Visual Studio 2015**. [#144, #167, #188] +- _Fixed_: All required headers are now included. +- _Fixed_: Typos and other small issues. [#162, #166, #175, #177, #179, #180] + +### Notes + +There are still known open issues (#178, #187) which will be fixed in version 2.0.0. However, these fixes will require a small API change and will not be entirely backwards-compatible. + + +## v1.0.0 + +!!! summary "Files" + + - [json.hpp](https://github.com/nlohmann/json/releases/download/v1.0.0/json.hpp) (243 KB) + - [json.hpp.asc](https://github.com/nlohmann/json/releases/download/v1.0.0/json.hpp.asc) (1 KB) + +- Release date: 2015-12-28 +- SHA-256: 767dc2fab1819d7b9e19b6e456d61e38d21ef7182606ecf01516e3f5230446de + +### Summary + +This is the first official release. Compared to the [prerelease version 1.0.0-rc1](https://github.com/nlohmann/json/releases/tag/v1.0.0-rc1), only a few minor improvements have been made: + +### Changes +- _Changed_: A **UTF-8 byte order mark** is silently ignored. +- _Changed_: `sprintf` is no longer used. +- _Changed_: `iterator_wrapper` also works for const objects; note: the name may change! +- _Changed_: **Error messages** during deserialization have been improved. +- _Added_: The `parse` function now also works with type `std::istream&&`. +- _Added_: Function `value(key, default_value)` returns either a copy of an object's element at the specified key or a given default value if no element with the key exists. +- _Added_: Public functions are tagged with the version they were introduced. This shall allow for better **versioning** in the future. +- _Added_: All public functions and types are **documented** (see http://nlohmann.github.io/json/doxygen/) including executable examples. +- _Added_: Allocation of all types (in particular arrays, strings, and objects) is now exception-safe. +- _Added_: They descriptions of thrown exceptions have been overworked and are part of the tests suite and documentation. diff --git a/docs/mkdocs/docs/home/sponsors.md b/docs/mkdocs/docs/home/sponsors.md new file mode 100644 index 00000000..9097049d --- /dev/null +++ b/docs/mkdocs/docs/home/sponsors.md @@ -0,0 +1,13 @@ +# Sponsors + +You can sponsor this library at [GitHub Sponsors](https://github.com/sponsors/nlohmann). + +## Named Sponsors + +- [Michael Hartmann](https://github.com/reFX-Mike) +- [Stefan Hagen](https://github.com/sthagen) +- [Steve Sperandeo](https://github.com/homer6) +- [Robert Jefe Lindstädt](https://github.com/eljefedelrodeodeljefe) +- [Steve Wagner](https://github.com/ciroque) + +Thanks everyone! diff --git a/docs/mkdocs/docs/images/callback_events.png b/docs/mkdocs/docs/images/callback_events.png new file mode 100644 index 0000000000000000000000000000000000000000..09aa2b38355a7227b444b5b6779f2c7ca9fa05d6 GIT binary patch literal 46039 zcmeAS@N?(olHy`uVBq!ia0y~yU~FVyU|7k)#=yXE_G05{1_lO}bVpxD28NCO++tIX_n~F(p4KRj(qqfB^(-Dy%AU3vyFS5)~?P zbMlI=P7{9O-#x!EwNQn0$HR00}ywXWTqi($}5I?D>*+`A0(r1sAr%L zHydO;NYu)|C^I#$BoSo3ouLg_C5jl-9vgj-Wup%c6Hxfrarqol zk7QtQVDNNt45?sz6U*KZdi1K@_kG*)rArxKDkycyUb*ooX+!p{`A2UAI0i0OQ@XL( zF4;UQse9uQAyb!Y5sLylJtJ5*Hr^1^3|ew{lg{n<{r|t8-TV35yU)5hJ0ujpznN$L z_RP$g#p&m+Sce~B_Gg;MV#8S>^g-o;=Yh!$>Wt_DjsF!nfBb7dwQH-ZsX*fkwq3pn z+x9QJ`0&=;+-F_WPwQLHd;U#j!)6bM?eeEJ1@20f{JxlYt3LW{-?Qy&e|~uMRz;{F zJSohpA8f2kFR}fajr~y*V(U*JfEar9Jv!#=l6xrct-zwuQ;nU0oKCG ze+%ZhEL^sOtIX()VFIrK=Ngu8ELl5v#r%?2%TAu!zh{fm|DBKP^?aKA(&gTyUuIsA zS*p6NcJIyRY0c^Hb_iW4{p~5T@MdUFc|!f!LV3o?xf${>OLKc&cs@No(6eFfpEoyT zKflhqomYLl;69sPRK#t8(&ha@Jwj!LUOTzZh&Nnr{M+cxxblssvjqPht_tA|`X6c( z{;p$O*3dE`cZI+E+)LyY8FLt3 zZ97=8rd#UH*ZGMzzs4_L{#yB`DU)S}@(Y`r>#ps$>QS4x;CA!dP4y?EpKFH81ih>< zF}1(dnR7awaecv?FU8Zl|7WEwLEnBOdP=3Snv|sCmYm)-YT2GeU-WXkXo9p`1yoEWt zjh-zkJ^uO4e`}!=q2fhX4P)!&TQaWgJYvjSw$1dA;sK2U0a?8hQ``8iWo8EdzI;di zMC9>(B{^(GAFsa+a6kQQy|t9A-{hK2FYi38?0cLzWAhzG%Qv$hPj0Tcy|+lT?)J{N zF@|^f9dCc-XkAXOcdNrb3Cpy|7YC8dSWJrHJ3U6uJep?Y;$;Ognw`=G?wt#3;hsR_&LG6 zG1Xe4f^EV>eg@Cqwh5LWEFbtcJXvVH{rO5LfvST}EHv6sX3R^dRKSogm6 zxnG~PJ7|5M-gulTvVJ?u6LIEE#uZ#YOeS!}Y`1>5^DfVm2XFEc1Se!}ynDe$`bYVL z#|L5?-vmf36aD46A^!c3g8>H$KBeDHpZ!C6LTZBb9rg;#2_H||bLZ! z!{<&64Fbu52WCzMV2Umg`y&SF=YyI%wbn1lFw%w=S zC*N3KekbI^>zKsL3G-j=uzXQ)-CiqVm%7D6nFAXpE7ZuJ_;&Eykv(hJ?U+gq*A-l0 z{?1^;|0cj>L*J`y-$dR_wPJYo+u^R-4awMtErE{tMQ?Q2OB>r}Zty9TIes{0-}%Bj zIpJp=%H&#pH|Ur*R<38-RII#V@`>61u^VlKM-uAiH5| zQ;o%~hZ+xSj>|T$oT}z~NpMBM%WGZV1a3%v*Hw5Je?as=^UD)W>k9s}pYZGWAhm(N zz+d6=d$kGyj@XXNR9M`(h4fAtSX}JJ#IFzPJ(vQQuUXU2vQ1R$#QBE(tU-ydt=O_>ANX~0*Y+!}j!#cI z@;;1EU{?$ICeD1*ZKm37w%7CXx~=48Og7Gy<=i9aac|AzoZwxxuXpTklfSGwkLeDF zN(cl0Le>r96O84VtQTuHTAh>J@Y-U-s&nd|+zp=+ti)s)w)y8S|DB~!xtZsQXF>aI zyW20POMYIk)M#VTi@pX?4|@(f6T5)5FVqjju`gk|dilh|4Z>R%J$zy#j@URqGmUO4UD0yt&-i+?eXn6!t9SoeR@vmjvkq>%RgOvJ<|V zv0Zt%Vb!i%lFxJxC>}W6$lS2Ff#uoUpNnSy`_CqH;x*p_Yd_69EOXU!H~DU5J@eQ^ z;d6oQhq4En4oru)S?_4wcvtv$pV|TTqwQCOJzCwK`b%(JDGSp(@uZ zU3^{VS2K~Z6${e-vu zA0zoKEpADBT*%yb)@V+%*|tti2lE$I=ZrSkPE3=WAlshzx}=^pMg7pX#kY%f-^e_9 z+Qs~S{nU%Ge#=(hmbuN_n7UumLbgI-!h+A~yZ79GtHyZuwx0`EO~9H9?AG6ACkVY` zTgUc}n}<1`X;PT>(akd7*C$T8FWG0!6nt1eF)_8M|H;n-C)+=AhWuHxqeaf4jBm|> zH9SvtGe+>K{E<8%$fd2{__1VZC3D%Qy$mPXHu0>O`mc4v=0`^Fk289Hx0qnS=g}JH z!`>i!b?qs&PZ~a_8XP1I<=pjJ>KX2bY@7DS+VA`gPt^mvyms)O*mZ!B_w~{94T1`P zBihfGyqSJTWrN&Cx$Ga}I`zde%85qzsvWjXjxEfX``v)i>C_G>T!ge#yta$+mEro#cv#j1dz5mV9ei`PEhPO>9Gs z`E@4Fb+^zwl6r#nhiM$NjZ`1wT}K>)*ig zcKv4;IiB>R>N4C*Zx z{^uEE=}!HIxl^ZpoY~*qAa#TBLjTX33^qI-7g9IG-g|#ei!t_kM7SNpvc@(1^=v_g zo8N8Jt!1kbuHc^V!TQ1UQ)&PAa6INbUdwUD)uD`QP56`V1_6gvH(coFn&vhCYmLSP z2iN@~H+WQd*<+a-*3ACRz*){9x!qirAvXM`q7So?+-qy=g?bLW>W2;)+~kw&e4{U#GwA)}C;{V3}($^X*A~&2?6KZ+(j6qht!&C-VOkzVokV^ZZX+>m`nT zx%0N8uIGK<@gg3!tQ*W?=a!l5$lN+VJujW}iO{ZfHn&RB557IVBhUQhi|O6!hi@_O ze3Z6);@fM5&lDK@rrcSOY1(Vu^DX9|Ro}AG-FM5{(s!52oWHYEb;9eN&p#~|DZ08b z=2GG1i|g**IwPuXeKzM-&i2{v>o&yH-7MUcx#@0R)%IHNl4!2-&%ch9ecK~8)<>qy=tBY`T2n*+aha+miOP zr`1W7IA6{?|L6V`hjmtyPWN9r8M^;Y(B+4@S9Q(feOEu;efUn@Ek9%HKI=7WP0YpD zueG@OGUw!7G5PX;HoMgu%e))1=e;XEU*`UW!xmd#`9`Dafv;|RpY324KYV%@W*-`( zQ%#b&MLR@T+bIx-~Vx%cHi^oum88yZ;G$(XIG_}r{^2}n|BnZ zdf#uM3$hIF8RoM-QJ7z$H(|k)eXSSwzde$^ehp`1yPf6cCTwP^>-4(8C~90f9Pd|H_h)nwAT;3mF9rS#r=^G9uwJga;EfOD_y?8zWLjX z$>~=a3;xEJGwfes@$BdV`)@1Gd%SNuI)6i=SK_Tn?_N4QI8?rmW6$@Z#~1hBWUMf5 zdjBB!`=%!lx4ARjoZBGQBe(ap|B{vG7OvUjb1~lJcl-3xcRKccc|J#iIkj__9`#zT z%Wb9|Cf&bCS>o5hJ3oR`+WH*cOK0Ch@}eMTN;y;1&(FzcTf|uVA{~Ct_;h80>-3hM zW6Mr%+_fZP*~8=S7%CH*7JTEZ2-47xn(lM_sQItXqwaDZa`$o?7JY&F%@$-(%4{e;-{xBIz%%qwzP}4dn?DS5C|kD{8MU zgAMQe$n$V0XRA>+FV{11tx9j$XR7eYRzL z;?z*p+^^y{18uj1Qn&REmOJhzZbyo|k$L1{Ic?5u&-W8c7qFD5JE)#z|G@uXeS?iy zl~q9hla-&>Zd&k%YuxROQtTm=jRnZU*S$yQsgU*owZ+TewVOlybf8-qkZ$fpZnstSzE8vy$tI} zyzOzb(P(dOx9(b_lYI*36GNWPSnKxT@M)z}cQ-s=kS(2j?9m>ldXBy3qBTt%jLT~r zjUOCu3fy>qSH_M&$?%!Q_p}Qts@g!Fy1$KO!Jm@okkeapCLg%uv2wq%sIthU{}-n& z|2}uuBAq+;l#I?bzdqd-5pb#F@Y~~k?>Pdl8M;+^l?L2yt`AGB>`+Vcu==EXXWjw6 zDK8bdZ>yNw3SV&DaGyP6r^&j|9d_UUKYzr&y0`Y1yjbt-%QcFZ&uH_p9Gc727_jer z`m)QXoloBIye|9c+x^IwbIxQ!GSq?XI*ffHD?i*6Q?D;dYpgr`zjJB&^H3M9Ng+Ma zYuAK`JFVOHC@^zDOsKKF#GZtsyF`nph5hX~I>(^e#o_W6Ewe{2v(s1In_K$&Rq5C6 zygvzd4|hE~rjt5tYM8cNp1Ypa-2JZ0#pCV&x5)pke7n$g#_P3u>#b$AZpUQaH1QIQ zxBuV1Sgp3;Nu!7QTB~?<`L#E;oIR{oeEi~;JT|`{Q{$(+t-ZZyalhk)yN$aZ?|gZC z!}g$0dQ!H`7u;QqOLi&m*#2Q->3;j1TZISn=JNHMsjbUj)p>u;^z^@f&K)k7{xth= z+MmO(8DcJdSu>C2pSRG0qO{q%hfn<3#P8psV!k$R&xWe2mwtYIJuP%y%)SS|_}ya9 z&SaPxS}n5p(eaCGy?LkYdMDtmGI^PPj+fC?zKtjPd*)2uGF8t?X?xKkrMlHly28I)m$e*n~k$pV8x<1SS$0R5D z@$Z}Y+-1M(@%C4%v+ng>S6!#Dw%gBg`&0D?F1rNPj0+mNJy-Lr;@K^~s{4ZAl+(vI zR|$Pk`H<_aAhdDnsT<#qm+jt>RPxlcxPPNw^>2;rN70K#;>;dvyneOwc+~a%_OC+I zHQi#lFNfJFuQPquxtWi1zU5nqdxpy#w*M?N?!W!lYl(5@FG2g{1FG+3<7H;n7VYz8 zU3#hQ+>gV{F0(~Pac;Y?BG9z-?2hUD+OzVu#zd_AxkEJlh!(eBMXHOM?vjo6Re0n9%gK;K8BobpgUZKm1;QX|L{t zlM{qz_T04QXRqT+asMFlA@f0fgOyB}bi{$H#c_eNg%-Q>`1K3sFj?EqSoYBeR8H-y zR@*@8`zK#ubI3i|@-w7zB$i znH9XUAmH7euNPikpYTk4bDf2XO0Q_$MxhX~0P(;V$A0KBzW#QS{a-p)x|rxb~rz$B~AO=@5#ma_Ak~7pUC!JaQc6@ zr21SLqvZVuPfq_E^l{6N4gV#%mY(19bwO9U-k%pgyt$G(r62h3y(xP-r!?(AO#f{W zC&$C9Y>O)%oOn2QS#FO`Z%JOn|9|g;J8$^=p4RYMdMT{#M8(o<$InwIf3GaJ`)ri= zZ^xo@()+8-Uu>?s|K@#6zR4B4r~Doo{%fY!)tvZq`TdOYs>1)f`qO95aC^A&o2ifY zAIDL&xqRQ_@aNKOzBxbB^>(_tg{}~u_hdHrpU8P{7*@Q{Zggij&TJ`NA?tDC zok@i*%VUAUB_4A*mR<$VGW_cndhnnpxA>2>`n%L)i_=Y9gJn*%73i#3%6q$8&>GS`3dRkfg_9q5sMJb&B9}|4XeA$BP z56iOe|E+s5&H3KGzPVRfwe?<1j@k93c~Q;ka4Xe*v!iQ|F0(JF2u`k%sMs^9>s0l= zmWxxqoD^KRpyaUL5BsFveWAC4?gg|8(!S-E|UE${U#edcwkg1hxi%CED&LftDbPkAkU?S0S$ z4;eu(Nq>{&!J%my78kTW^sZm!{f$|A>#s>G)^Vx}zkFCB!q4iwwQj%t-+;wW`Ja@2 zo&WpS8^!BBvX#$ECohu^pEn`IBK1UT;{L5hQw{!QE#(pJ-)b<+WM9xzE#20sfs5-?S_%vr*!CEB0hhwFt`iWj1LFKXa1+DvHfrOsrwC&d%f4H zTd_a;S6X9q(dOwo<>j|$-{shG)pPCfw#se;tNT|AwH{CU?$^`EHBaXL zI=52eU9$0o$f%!t&wM#KnQvvlX;$H%^boIq?lsuAK#cZHF z^>DM-PfKrwiKjLxyxfp8slQwA>EqBvpDH=cLQ35aemHyZL*-Mi??)d$Q!kaCywOej z$BV0*`>M=7J>;)5J8KpEw!0u~(a)v(XG9;`GU0pDr>DF2^Ifj&UNi4P?V~fvdjGG^ zcDF5gx!?W1j_=3!l9`=9CoQvDHox!r(!x(h`>Sv4D!+74bp5xz&jo&;$Tg_&)Y9Bv z`c1M&{*$y`g#Te3k5>ME9{!+hf^Y6C=)U@>>l8hgLAmIP{}P66yO?M6B`B<)Q%|lYh2kx9y5(T{@<3Psr}4-@wsrlgA>diovPNGrTbH{ z?wRDvEs1s4=UtrE^>J;h`)ui~$r5JyY#-|Ek4@EFoz~xYO}uN}mPJ!PN!Xpw`(Iao zz-LKNZx`G8@~cPNR!p>hq{O(&R{DjP71!PE+q^Co+-=W_yZqovz@pn9*;gCr$lc7o zwr=?geXie=E>1ZTWOR#1N_gWoJF(aAr?)$$O_VgU|GDKRM{=*c_QOn#hb6K|n z%RCvd;Lq9Z;cIr3`@Jko33yoW@n>z;(IXq?=)Zrb#JTL~O{U7;`rk){&Gn-8*uC(- zFR5k1&tGchp13oeBSj+Ie0!t6!TtWX(k7p#EPS%J=)b`I!$xuzAExgAyRGEdT#1LD z7eAn`%l!xG>%(|g%vyI3npvU>HS-4>8cYPX8&k%tFx}; zt_u@p>1ArlFP6&8J~a3A()*X{pH$b+u0FZuaoSUHiS}bs1v}R#uAI1W^_GtbjK}6| zyz)D_x^_dzj(>Bvwgl`SlY2pzU*zSnT@@Qn=(DaoQhL32&5qqX%D+}tPgB1j zpgV7s<-s53^Au&?%kLKym;A0CtbX6ZNz&7sMJ`~L>eFviP2CQ(|5>!#^JwVt;B8ac zBWCDb-jP3l`i_s5&-ilgth>2onU3zi_Gwp-&TnkeGvujeHk-@ws4KOntR`$qq1e8t zl#?ENmLD`>eArMLC@1#*@V^^!6DNLi`@m{kSKz+9q0-e;Yi6drkAUnJsW*mlpAS4< zbl5OBSXM$MR^Ra*lgXmVrMoV8%sQ2oec{vg{ON(djMof(%yg zkNNwPVQ2csgqKHVXxs@)EB^el_Hux_{WW&xr&CV-`*i%O^U~kTnV$&Um>*#n;59Ll zFVASxBR9djAwQI#pYfCs6+Jnz|3J&^Jr{1LXY9|sS5h4G_ z>E~ZF*y{v)RyW!I7$k^WS`}tFL?&e4;nPGT>a< zlc}ECk1p)nvzo`TPTqa5#PcV{&X0H8Hi@YFRGU9RruRqxS{WVZ=e*PICj7s=iSg6r zHztl*2^JYn#!H?~{45+~sI}7PE~7zCI-3?xkBy?K_SMy&mtNd)q&ZQ!qw5Ucgsy zQ|pdau4E9I)Z#0judEg^eb48|p0U-x+RC*ImG+&y{AQ`luG`Gp_4QttTyL7ZyLejR(+$U8*Z<#p zU4HwS1ML}^t>(K*qH-Tks<4?kX~E0ig8h}BT5aSeyUK1mn4Wmj{%*nHj&t5G3s0UA zu9xzNeje?aog8Ys?s<5C`m4L0CimtQI9lGT3R_+qVD`cInMA)z&B6oXyl0OUZr9V0 zbqiXybo#BBz}s8OGMp2Z&A1f(g2k}+_tuG%vbn6fInVwm{?aNeT`cncn_-t;ikxipBO@5{2!=cM;0-kG^QcZR{YX}sz4 z>!J_0F7Iu#zwhQV*>Cym)J;8SWaaa7c#J*0CJTNo<%j9(J-zRS>w6BO_wlOkl+#5RYVc7Y$G?qlKvTwzw zp2&uK{0!V(-KO)hHLTw5lWCu3#>`7~mpFd!{N{5yu=@8?nKSF(ZScA(s=7*P^0B$o zs{G2VvNHP~GE6m>*(YsyVamrF^Iz|ETw?#`F;m+c?8Tut^MK`xs__ z{~iBh-Tw~rUT%KW$-n#QQoeaTf-9reotVWMAW{|f@gL*fd27~n`JaCsS#WTPOkub;bi_~oo+{cU_E>y_8eG+XO3S@mSWhl!rX^&5U|nz{J8sHoZf)SQfYMR!kZ z|9LWMW*zgiL<6toa}$>dX>Dn@7i9nXcsjbC*kRmdWE4PnJa5McZO9b1jo6i^hEuoLs6fS^n)p-@Wtpr^LPuHSJ6ZJ-lZ7{#k$i zz3A7g{k@_j(V{RSaAB!8%W3^7@~=NmW}mv=H)5aWzDa*BPEOx*)j+T)BQGoF^Uq1m z)i-RI*Drpowdd2^8@oI=_r*<2clqDeJDcfnep&A)zPbiU?pdvOuP*Vue}CEL$%e;$ zw%UJ6{qgx<&r{=-cc1)cI-imlGE4fi_0>2Rr@7yKmdH$7uX#$wu;HfD`@~PO<91Ks;^km%qvLUM$u^>rCdYLq z_dg8DUiALkWUnuuJowUg$O;`jUMZ))bcxN3Ne2aPw!5`H$k{Qs%}mgD`O!ZqpF|wz zEqEZhAo5InyMWD~Hn;r}*#-~wOqSl_bYpNb__g%q?kCN^FMWK~eYAbuoUJF?CmsE` zb20b7ua2uOzcSjHe5Odo?EBj@r=4Sz9-a_=Cet(J`@W)gp6cfLSyG&lOT4`PY+iTw z^ZopwvXF$G_xJ;fo~{t~x_w~9=M-(DUEdCupXXBh`@875ajg8>Jzpo>l~0donLY8? z>(A@{K1y#lU3b5tM?dx1(`gYJYokiA$(I+UVjbl*~DCa(u0dY4p>-2VZ%vR+owU|1?~XCMsHR6ZqfL_dsCM6_GZ?f691&C+LHAx?fZnEpO)-RKa*tfw0&0lulDII ze3nmod^e~6<*vNNJ;{4{PfF>-1qHe<vg|#ewIqW zj&*aN%QfVnJ{7lP6!9 zmtJ?TeY&mE?+^d4Q(r&-UR5r0XU~$N4KjApCG)>bj=p|)-Oqv+@856!6@^}P2>Icx zVzYMtoULNtLY-6U+kB7yviCi->*M2PkXSm;{I<~6f6|9h`H zTgZ38Qk`8sHt)(T1IiEFig!Pmx$6fY+oNzd(Zz~v3rxwwfal*tB;xO z+1UPu>8I(UJ6iD^C#JBLs5`6e|GQ+p%Qe1fdnJ{bmU@5QYj>$!a$4Sn-!mq}{=ZrK z#C$=2!poKVhn3CdF8sN0^Zz2h_}!P3_RHK|xoNMhiQz1)V?*6g(c+LJlS3b=RpU8Bqk@NPPc^_hJu7C2aNS^2-cP`x~ zLoGBe^}c8Q3WM8PQr4Z@4&C`zW0tr5ww$AE;qKxaZ)bZ8F7SVoF^l`2?ZfHU&syKx z_35qi`33h|+6(UsBy9d!^l8)0lGvYjWA4qoX5P5|W7*Q*ru$}dUp{ivBzi(_w9${K zeJ1~PCigB=W_)>T@ou5ub4O$LHJov_+o_&&^7Y;FiD{7wv?hg4pVnFNFmJo%-=%u~ zDfMNU8BeF{%4vwd+vW4`M8*0<&c&8$^+{)wdHD`)vQpb#b1(kfz3iPfta8WK`J856 zQ9Jc+%_e_euR6=^^J^k9PE6Ff(bl+W;cuf#$*`F>{r?I0oobb^G*6x(o#A)#YCyqv zobMU3JZql}p8Aipr)RS(dyiIjgzz zJ$!HO|KnujL-)8EuTuu8+TreJEKW%>%walmL1d0=9<$ay19NT- zE0q-HCnaS!)FXHW4`%KuoWNbV`{0p_?|t_5{dPJlx1lM?Jj9mUIsMc1b8T~ivN`@O z4Gs><`>|&KpQ86qi|l8bvOh8C$@%x?r*Kh*lB)gr7`M`)zp=d zMiF=IPTq8?<~na$`A2eMSJ3@etzVBFTId?4sZ=!C=+Ua?kbAGh8Z9|w6c^=Vkr+(xlvU{(hqdzyFNMHBV|jl%^Rz z*}6fF`&7e1iK*Y^3XLvp{w&kE;N8woSEMT+otUeh5>hA0>0mwe(a-*#50lyMTNo-% z{vrBV|6T67-=CsFTQ|SbUuGxfXZf=*V7Xb*k7Lrj$$r5puRbi8GG&SOfntr6fXl4y zjsa%NCNiGl^i0xpJK6cqCwTqS%V$$(am|=@{KKY)Vy90A2Va<=rEc?T<$S@%TUe(s zT36a#zc)en^!?vgE%z91tv$b0_t^a-@~RHM${dw4o*eK=6IeD)`rg51uLYdX#m$|x zbGO*3i}6Wot?#K!ydrw8Ou&8qJL}|E5}~^~^6fe{y-D zcFKM6-=}BP@>Z^6w8=VDlHJP& zi_f~Gn-?_yls0HCZ}G9*bUdiC+G@(D71N$_OiF2Z+Sr`xwcg_Uopi4t-{s~i!8IQw zU1uvEYm2^~V6Z{+uFcZd!sq876Lv9QB;0YsNQ3dN&x3#mkq7LVPcAN1ZE}x3uqWf@ zp>-*qw>p&5+md%?h*r(KTHW?!(t4pyr;lx!^Y-`|iCG`E*oLj}^GM^HaJt<1$+@kW zJ4^0AEz)Jh@j{L@;zM|*3R^K!aX{-M4HD2=YhW*JV8}G0;?=OTX z++VEl{pIdcg{p;>wk&BkqAk*=i+)m>HvQc(<6UbGs=M>YD*d0euQk0TxcCN-*`;Ue z#qK7lWUZUXQs%SdX$fnDb;H?h4vqY~tu_bM+dMN!k-h2OX>((p&;lX1r(5;nVz!m9 z*!3?>d*Y4zCTouEY4};RebSA+!tCcF4)eKa|9Cr7GEXV^Wc-c~hYq@K?VjJZ@5#cj zu-iVHX6$-!XQ?2E)XU!KeHnIJk5nv=o37}*ML1%Cw3XZnfgLUlrHNVoe4oy8E#LV1 z%7geFin`L@Uu(8Y7r)7u+~2Iqx95vNTJYk6S#t7Qozf1^$$fZi?@ZgJFFuqn5jyqz zXv>MtC(LrMY;Nh<&HR$TU&o5={CbJ@!@p`3yYIbMuUIOb{ggptnQ@k3+>8187_^vBAOf1He>3HApf=1w#H>->q)L*z$r(Z#A@yEOI>Uil~G+xAMAO#5Eut{%|L z8!n)ma;z($>)4h%Eqo8E-2Pmcu)j69C|KRQZ29b;4~p-}^sEZV{#*KHW#3Ev8B3nL zv02KH$yyl7X*FH_vp z%u?8FsWJbJmhG9AJ3n4l7x@V?ZCEy!g)uB^317w^*>bf+Nk^})C*5_NFV8GKrD`{m zU7yKaR?9bIu4918u}x}`Y;roryDMJyy-VnA)eUuEeWAR~DXegX+JoM!Owu#t{`$lx z>}`B}jc3WUA665DT94i|ZJXNt_mt%tD=*VGF4MM7^?8sd-cY;j@r9yo!J-Qf9i8Wp zUi1I+{on7j)UWDHmz$A0m*wrx2VFDHL|6rUliA{9=6KU=vE-ZYhTp^|2yz!4%zhDSpo~``zqo-=^H1b+}A!#y-E2P=cZ=E>~Cj^C7*7xR%zn=W5r{zb+hkfFZI~3^EFc)?4@(l zm~2j)PhqfX>bTY1Sui=`YQ3DK?$oZ5C38=U-#1|2xoCUUkDVM3rmt+yZF#@p-a5Ar zZ>KQ|EtPB2YkE{PW!5Ueto*y@yn|!@-8esGe!}iQ`{ph4IbJyZ>*q&B>{X5LAFhnl zXZ-o4=B$v*hCSb|30~4|zy|5^#6czTrzFhUj$tmAG|6ZFWQk1!p z|MgkV{r2zgH->z2F`oLUBkbw^(yWL+hhePDuR*UUp&8n5inNGR-{mT*4RIpD2#PSb-fgXEe0lTEiPE6;t<=5plFOS^at z)y*@Q?{*&Zsm^zQKle+Nx+HJ+mK7S7yB|fViHAn0{Vd{e`JlSrb!}R!T2Q8Pv6!-pO5ix_MttPi{{^g=dSU~$7twF-%ttdiLn>dFj~;}oGWwVy%V>8XlbQ* zt~hP%7JGO7?q4;r(!rVuJ4J?Wa)16-XoVeGs4g5l$pvA9yZlT>F?8*Hk?jhUI&fhW^U<`$r^}f!(uqli$=#(Q8tEad+bNe19+5C$~I&gXSIn z*S~Kp7x^sO6UBV)g3#GJACf0BCm z@MIdLdN_LI-L74jb0cW!vlp$i_Z<7XJydsh#wX9MysMW_WodThtvEe<)};fkPyZZx zwk)N@_TH>NGX-aE3*4)oFhA*nSBk->uNDE%KeFABoVK+4!RB6pPKTHOIK8e-YAy_V z6?LK^URCPqdG)0;e%fq)UKIHK@R6D#akJC%v%44Xx%;Omd7*0d^yMk{ZRYK}Wk5;*@x+d1Z{9DFr=kkr;i&)&=A73b9xso)U>Dm9&_UQdp?JIVlQ$DG5gMvoqtraan%a7(Aix!Wc&uTDtK4Uq19Ak?51D9p* zZW}sYjlCn#awmP-rIPdohs=uacIHX1_nC3wFN1Pj?e~C^U4{4KYg@B}C%uxMv_*2d#y6I%g$A=ua6gn@n7Q$|=BMWMPwXq&AGm0&Y`>s* zXS0gpSC8EqGp6m*EBvXOd5if~6h|2g|Gls8nmUEQb6madcP#pcy>H~ocZ`Q)_G`-i zci+@rnf>6Lcv$*gjb+kY@gE-T7FKSYZKE=|nZv|4r31 z?R7m%7Z_hyv}8?-O4b2^C=$+q3@)ejDj`u$_^{Ma^Tr{z&AQ{)W` zm+!v%W!d`GcjWfJo$=GsilNLbYcvpx4jl&;1g4 z_v4)4%CI8e9rZ6Vl|MaMw&vHZU27(C_{F-eDKLt>b2L9@QeK~U;{(^uI~fHg3Nc!` znj3G}mAHJGy}4>@K8tNu!Hr#e=A7Q@HSbNyi?_>`&n`4LZBWU}eOK&>T^sl{3ywP$@G7cE4#O$zpPuTy+= zPM2i7D-h2QmD}OD+-z}dqHNY&KFM<}IvUA~X78M~`rG3){ggXjl~1%Bce(p;%KMx< z-3Q+7Q2x8&u89^Qrp?u)EyOLUhm;+6E=6YEov#a!yCVR(xP)Om6^UzJAb9{&eD|F=WZYDkM+xM$T!-x zCVRur#y{@yJ6cRWua^kFvfiq)>;C+%eSeyNOflSXs^Q;kHGjD&Yocm*P4y|$JNLa- zpsIvxmcqR~^R2Fazx?vD|B*fV59&)!-G7mOKBS=VMdfo@iBGQWzpIwU8z`M$CEW1t zmsb?ORUA{a{h?P2Y#f9GIX|f{p7LUe^Y4Qpr{6A7zTi8#(Dba>8@`=;9lfHeb~t`6 z{Jr(~I)C>am8&vyT#r6m)NC`E{nmEw9iNv7J6J}GEPQ;DZvpQupL-JfR3)E2I;e8z z<1O#Uea>=kJ?EEL9<<}`D_U%PA)v4HW6|3mvrf)bPH#77lxJDT{BDM9!(XG2S2wxW zzY@xdD^0)SwTL<3bk&X)!JtxwX@06)9~L$oyJf+zCG&Zok7^4pwE-QCqXmNzAgmz7<$ zOpm=}{XjbR?F;}gSlXqnp2z>~`o9?+?%&^rEc%xCMrMo6&NVR==lUi&tk#Th zH_YXiw~5|%=1tc(Q+wa%%kFYjYyZoOyLE5gp1eM{&xOx3i@$Ir&x?AR&HW`>_RYD; z+qNHdY2WQ@uKV}yyO^@_nC*9cUw(e!P)^qkC>!d?V)fT-| z+$Hyn?>3{t`yFR;da`b_FU@Wfm3+x~(c~UeW@#(?qIE-TOu}o?_yW&-evQ3 z`nl68Ke`_UJQU>Bf^bbMqF*1bx<@v&TO?{ujf1{l5ze11pWKvZ(Thj{EUx#ZuhT8k3Z>n%)ak` zK>FRZsp%4|mlD1Ov#ve$Z_kq08e;*2pcmc+&)u$1O`rR*X#Rqo<%hCt^xt0;|8G&< zwAVf$=5|TYdK>$7H+t?hoqfT!I^@$kX|rD^O*eiKGM@Fv(31D=`!)6JI@P8>a=QL8 z>`BU2eTlwYo2%&$e2O&eT1`ZApEM@Qm8@ae7OlRZJ?_l9+wV^8lbe<56Mm!op434j z#?xE(8o%;8o_qh^%RJ_KEx$Ywp{+u9+06c5)u>qVYKPwRa~by^F0|YxIREmaSz;zR zc>&LD9#8*G!`aY=Cd-nAk#&G(746fam+oZG#Q`ETjZl@`K$S*oiJN2xCV zbnK7i4Xq2sB^@lM+W5oYW^PoOer@Smt33uM9lh7}DfH?mY&6oJ%DMV}c;{n_^mRTe zO%@@!k*$phuV$Kld~*9Y-~WlQvj8S>#Yz0VIwRTrT&2p!oSP11e{#O;c*-mv`{nfA zpJ@*!{b~4rs%Cz@(YhV~Lkl%ZWfP;88=r9YeLBVAr|q~;r z&|P z_V2&n;p=7@JS;ydw43qzoZxphISbh>Uxh7GGCA}sU3NRvyb|`8}wPtcbs# zek|idf0dLCpZzK% zRz>Mp>~-D0uhwi_FSexF{`KCfpAEfXHd61Twr_tkcl&41=9+y%FE02oOznPkyo%{{ z!|8of{JDiE*%U3{iEq|!GUUIrIc*z{OW}@(Y8TloS@jKUpY?l+-V@QinQ-FmhkaF6 z(}dho=cXveA5)yLKlk^q_tRdOiJvq06xYW;)#Rb8QS!z=>~(WAQ`1c5C^o2lm9nea zq@pI8UD#9bx8UY-_oZvDe!ROg%fD*L^^#pVmt`f_7(Hocp7cpZ?UlJsl>Yj+`6t?M zO#E%UXwK0+FCNcb_0UbpYh&J?PpAAE{pL1>?YX6OtGKe)aM_%4nZ~basmBW@y4d~xmjheO*-H3Z&-E>x6tQaK?^_ejKj&ZQ7QTFz+?#(tx@+og1fH|y zP7wIc^5L#tiSoX8$!*dfj|#81IkhUz@_PK-9|f27PrH@vTVHc-S;6%B^=sF~-Mt(B zq2%q3;P2=8#r_Fz|5U!V*OlL|ZPNLL#Z}iI{X3}Kzhv@5J^ts%SNp$8leoWnYtYl5 z`>RW*+V!3KV)LU+Wkc+==5s5ji@2@7)2XGUJ3)=ddfLM6C$qV>$^^^EOq$Nlo|?kH zf6kffj)pdxDHFYaK4#K#(Q@w%sS}L0Okc6$$)=YA9;{Ot-5b+?C@6e()j6jA-(%$h zyVE@xL3gDOPi{G7fB4A8gtg4!?>(4;Uo5+o@H$Y}Q{dQ2^ZSJ-mauP^tJT!wX_lWp z)u_a8kI%lbdB|ND0+QIh^F2ylmR**vO(;F0_*O=`Y;eP{$E8LHiEptu+Uq%J1W>QJqlDWZS^q$Z}6+Ro}A3 zIxlZc{XO@_o`fI2eWh1TGY?xIEtK0;Cpy>u&CeHIwq?oe2l@{5J^Nc1%=uwwai)NJ zYmn{#FF!1$YaSXep7zu4)TV;wj?mc?zRd33ccg!}{l7m)eY(Fk7jC+|_u|I`GykVt z^18mvH`0H7Y<>ChblyrM3Wi=UU7=HnYT@S`S;BRp%WStxBot+ zRTC7X$yCGqApggWovlxK^~5z)U+O*FU90-DuzqKM-Q|T}=5FB8-?jYf5z$K#a)pPC zY?RjVHRdy{HV=)>XWE?f+QLNgU0v`^+4_qgg$^wj6W($Cng2VBoo}wiUAlZrKX{&x zl!tzB=W^x!^A+w}?X%WB{WC`C@Q-b8UkU2w`}@16yZjgbb*eC)S0MW^!_FT;OIr0; zMb7`a*`BMpq~;BS$M=grpTFPvYEAI!pKKXtZ_L-e!?F3_o69<{_iPM%Te|E{wR zYW)jNPDwTXV&yS?tGUgq#+jz^z7D~<-w(vZ?mWNtTGzvATMPJC?<|@jI@jE1=Cw}` z!#;~2ekFAEFkj%8IClrb5{VVIO4o~@O250he12a3B_+{4mek#BVxetG?fDt@IB~w_~4wpEO>WXT&+b&%a`mBm(>d5vGGo1-Jr!NqM zuX%Y=&Texyuib`TpA~FglOnXH_NfMkZ7=xn=-KD`Uxhy&ivL@Z&c~6)?8n^CR`l{& zWtd?4-RQ19USp1)LA|9EI1*OjXm++1C3SL>=i z{*aiyzTr3D9I#_N!6VH>e*`3V?4@P{&Jo%zT~yP z=Xd$1M?n`|pX4n0&VI+VRy3;pqUV#D{=aXZ_W7|O-|*8;aXsH^=0Jajv!))^dS>VI zW6UGm+z+&$4nM9xm9_fec`szS2Qwa91|a#kiV7M^TqP7uUJ>JV@C3a+K1-u57M5M z78&pRV_H35^p%tT(cgC&H|?|EXT3YGPlmrgygyD!{M*Nqf&r`c-wW3EU>Q_ z*V{OyANh^t>?bG9)7+VVFnrVN8B0G&I;k0n+<*R;wQ9N~yUz62Q7fiSGUxf-SF^Mw z{mb+`jqBeRnq74de0JmIQtu?Ab@Mfw3$K5@@i*+m-CJsn|r%=iJwxmdHea0LM89~+&>mF;a)%EcWj)TAR+p#Bg#^ya@B+`uGA?lUAtJ5 zwpuJZ^7Kwj!p~V71Yel1Sy=S2ka@!F)JJ!?UIy5+2v1h}cKnm-gqmAl*EnpC44B*Z z`C5A8jJa=L&xscC2upFzJf@?^Y1^6~=Cr-y!bPD2hyS`2ofWm8F8_J$pVF-*B7Ytf zRFr<7Qo1U0+2gx>8g<8ayx`xFBeq`a!R-sOv0?r3zg0HewPL)+c+D)To7l}_>EvH{c5l|+Ij!qc-u5n?DOGdogTuM_g)^9Y*sbo{f1hZxm~GXm zP1m1KPx9TrYxWYiGl73X?!`0z7rr3bpzeO2ZJlIuXiCdsi-kY-g-@Qe%$EC!>aX<& zs_OT9-Hf;xAE&YHiO=f(lHK;Yg|GS=1A7sLpoHZ<-nA3;;&Yj%2!uuFiAE=DmCnr zd&5)j6~O^)HX`z8rzP%u6O{G)+L6_-CndaEcKM6R!}-U2Cra&2imDwqE37?kZa1B+^SgfOpD4zh>|@(4<-D@BmG<0OVlr`ar%ZIF_W6K$ zXBPk8v}CWymVFn)!XmQYAL5_(!}oWq<{bI8hXQsiFuPNfZ&%5DS+y@9vF~-VQk+Ab zK~5{r(Pyt8mMUErTkz#aLTAt`9giKBlg0bODqOaNy0hu;x>>IAbk&(@Po-EAE8b7G zjHr<9JDZ*o+8Ffe$DY)9joQ3brtKeEquWxf*ltB1JK4p5*qqzkC;Vr`j@KK^vo2qI zHDP65*_kP>$6X(FHZ{m!Uiii2@h5-jtIuXn+v|Je&&%n1G(LS>x?cFkq?aWn8~T0*XoF)I>C^FOdC;!v8y6l-ROSYVxm6q&o|9aY-ZFT!}|DAF> zx_-k_xd#nF%i>CM{$_jLJ|Lt#y<@xh|7laUopqa;8iGyXJvSyu7sR zRIry#@zNBz`}vqx=DRHYpGPiM1}bVD;4c2dpwxd(2;OYG{zBDG1!xScAmc0Ox8`Zw5IGw#o`jl4MmEF!_BEA$WZFhvSlZ(6wG z%P*ckFAnZ%G1R?t^tg1}%9bBFLMDIfE>FMCdeiXft3CU?#r&RnC+pp8IMw_h8*9vb?=YY zCEL#GyuPGqV|Isq=j$Em7thT}5lOIqx!+K7UV~ThH=#-yccsU>*G||a6r(wjKehk; z-Kb8RmH#T@UoO6O_pcG3|Juu^W}G=(%{G;n^JYtJ(_TXvd*N`OH7e^5f1G(lRP!hI zpZ>V+0-57~Hf0ByEuDR3?gy>?0c+MLce;gLKRKNvzDe=dZAI^@GPkMCN@3MZo8L~K z^JC``_K$B5JD!$GVa}L-?Lq5?iOoBn=o=+B^kg5~bWHv4lAXIxM4WN@_J`%?{q1o{ zs=l9;FUi>X&5LX8fBAG~(Z%O~mxw+8CH`IH=j~%#YPudT3ZJOf+i3Ys>ClPrWeXn^ zxd~qn_;DeyVDhxxTcX$SyjtS#a)zQ6)4Q9QB!C7ZQ&U0b9>?KMGL33%;_upyY6q@l?xemSq?9L z&aL@ZQ^N7nb(#F;1+yZYA3ge$$o;Otr{HPLZ>vMPYVQPZ2sy|$x@sPrH@R9&s;;pZjI=%TlYG|8Cwq>zaPta&LCwhn7F`qW_j`U{~76o0D64H}k2N zy7ioQx)%$L17FTh@cnb^iB{yTr+@US{Lh@*KKpgqrecu~xy?aN89(%s4XbV2I?w(n zu<2iyxYprE;SU!L&8=sye4lpm^nAW)wXcLe6>A93;hP%1kefr77?Qw5MJvwM3Z|KWgJhuAMXzPM$L0`I=~KbgKUb?wWqb*xr3c)?y>b7mi>zRjZG z8SYXhZC^Zk)_weRdnSiHL*=K(k6&_s*PGVPJEuy?bNh}pxgMuW=l=P`cef?P;aYyy zwATlp*Y3LS6z^EzqVsm`IFm?H0=INuS) zy2J30%>L8zujQkQt>;xqm6*MKHfejN$HgG`oYZx9!i3!Q4HS>Qk(C?kU-%Hk~!*P~ki2V8w0L!P}?IpR0Z?y8Q35+lP9Nq}2T1^+NQ= zr!QMSPT8ve=lbf3+n*-Sm7k`~$`NS<&MX$b<-EvE>RY(ZR-Kc1y4m=|qCmeN z&(GBBMV((iSE%F0CcRx55!;(Km#x&XS-(BhU|Tr%ysM`d#b5jpw|hpU_qUGhU&usU66`H|PKcU_`q2vbFKb0NrYWK4)$Nme7DR!33 zxR7Xa_vfF5wwudOyxFxr^X1DE1|OQ6?z7hkYV^``!US{J!O#n&F#`15&EUBk?-tGqkcI$FN#{I6YQ{PV@0wtBgD z)7O~QHGgdhp0M1YFaOFc*P^sHPnU%Y{8#MRdR#$w+E(eVeT=s=D}G+q5Hq$l|CjcK zT4bbx+#^Kf7&E(kox0^e&e}kqPZ8DCaD@Jv{(xndNvFc@sdsqy zhW3Uo;qG0~IQ!tG^kers?1U}0CB(~o{&A!7mEmcVyklQ}uqgZUZJhLyvorIe`_uNH zdzpK$rLKD1{;7T0YtB?FyWEJ$lh>Qy*R2p|cehAtOy<@%`}6X*>a2NblKY-7IDULa zWs%H}`!fI2zgRufkGZziKP&ljj?ULFhYFqq>NxAVW%3>0IC=Zze3SoX1wIEOPu#W( zxbD6{*-{|U{~^mUtr9iXh>FOmf6_na$38uiTbd$iq4(cm#cTc#&wg`tbjV&7ka;t& zAY;v50H2%%%u7AkS< z7yrw7pV!z`s+D4;kk4O#{}=n~)e{BpZYz4elDYP;?1|IKU-zps+6LWhSTuj~;vZ{H z%+aj)kn4S*^1s^5`R@*8ZjlOJb=`B{G(l7L!_UI}BZY2DFBCl|VLx@@mDjJb7f)XB z;dgUnhzn&>vbwbPY(5eO9PtNFVIQ{Gil+mrT8JNwyby=jiJ#CMkY{5~(2SxvvyQtoBJ zaWIjIo$;joM6Heo%h_goE;(lXo}H6SrcW#6jgRTxti8jv&oDUg@ns1? z(cNDyCovYBII{Q6&o-mNruWVl_HweYGI5;0B*Arur^TKlKdE5XiMUm(AE^Hn@0ek+ zX`{-euFU?ghkolkTE|f;aOsTexjNMj?-_R&?0SBvXI8fQlDjko4M_<(>~qdl zJot1jqa`~hVl%tcb+yHNdowCjT&$`aO(Ni3)u^Eb0ofnh8?(Z^~gR?@A!bt&t!gd%vTWJ zP<}s?|9b+lFaf_P7t?$Z)r+*h7 zn`l)PBk&<%8;|EdmNQ$9Cxkpc6S8B%6NS56(Q>Q%f2REV8MKD^wtq{*o)s~xqPq@1 zxVChqpNmsizF~WbLFf0$mnZCL7x>EHp2^_Re(Ztik`oRd&gTyYxa&O4b6lOsbwxP( z@+r5yTl*uLP4s7oggn}~*<-bOkk9sl(-F>l=OLOQ%(Q%$_G!pfi)1H$mAxeutW$%G|73 zo)@nw+1TmKoM*G*jn>n-GcGbVY`h)aVJZKxW8KWl2D_bZ8uh*^JjBnyJZ+s7XSLDZ z>rD;KH;T<~`MPv)D8{lqD!4a4^8BT*uRr9SUG~)Zv;BwAA7*Kn-ks9l`~66;?{${{ zAsPQ<`jz|QmRT(1wA|i${=gTDo(q1SyXCe%VSJ}3>3++;nlo@=UK3B9__p5v&#ZKF zEjmjkwElX+#@)2iFUH&d;pd&xx3^b4b@o`gQS-*kOxZpAPrcKe|9Fw^!?68o?_-pf z{FC~4#eeEwHzVVpyV~sw=l;)Cobu1`m%*XZS>Mft?rn?Tv7lMLYr(hep0n)47H4Wr zdBmday8Axc#qcSqKWxtx`Iqpk2|V~9XmDxr#UHWDGPkX$y%BPyvHllh{RJ1DotAG> zE}jlO{O+iaGQ0gGY1yvC+d`dnSV8Rb>7c+ ze=KVZ1+M3OjK6F<|N5)*316O0JZi>z;>FANLGupkt*S3L?!~h$g;||b^?v{xqqe~G z?7jJBVWN){UxfEQ+%CQOtKEc?_3yrBFTb)kHvHkd8)+Ll+Pn;smuYg^9CXfE^zqw- zxBEr@YLvw7@mS5sxP{HQ?0n|De-eqS7hWu0`!DWAd{A8fUZ$^0wiG`U|K#eBxa!P4 zH||9%K6_00vBYloL!roPt~YP4TN}8gvsX+o@zL#jIwtqHqg=PU-RHfZxjN;N+ve3~ z+Zb}?87zMJDc%yit+-o$!UeUTwny*J&MTC0vfWm_W>T$3>Vt-xvIReP^C_*a*|I+D zz1XXh^U@NpbMAY7Am^O>Z;ukyXg=wNfLp z+b`Y@{a;H$Z_DS1Uff&sM9oJg&41F2BrD-0%MYh2w<#S-da<)sZwKf7Q(h|)w!mPF4kFFQ#&z`~3m-kb(Z1tj5 z%l0&NvhxKfd*!$(3Cb8Y8$7zPD@M$7zg^I&yh|$n$Cpj)C|SCt=7xlbcv0<%&I?CY zB%a<-e~r!lk3H|P!zXIJbB~mssa&2f_u#cRf zHuLRpEHpWgk-Av$%!OnZyZ#OA9Bg@;RcQJJB9tW$8tVw)vRwF~7>dKX8@UVQWa zS1a??1>bmNDtg2g@Tp8Ws?$32VcYF3tDoHyuFm+=8}a&aa^|7V(5aulZ#crxp~JEE zlE9519wnC1)J^fAkD}^slcUCRoGGn>5h?ULlp8Fx)dkdOUX3t-@&h2P& zjQY~QY+rjD-t9kFx}&Q6;g&3}4Mz{gpNm_6`>n0{;~4?1hM^ZD_|$s8l-7AF%M}6`Wsf}!i`58l8?pEies%l0(Ngx{U5Q^J z6#FEj?M~{YpRg!A=5eG~GPw1o<*}uA4sQs$cx|ftGim95iPSt9}|C*pTUx{hSSzAM-M(>GU|SEYUv%>%?t;&fA-R%9slRXW(s#I&j!fM!5BIINF zxvu`b!=$qE@vgjL=bF!aw?bY%+*cU#Y+LT9#l5`J+Ia^zPHz5__43CjkL%HaljdI% zWC;_CGTfrm)+cCwI5BqK_0X!MROjilC!`&|@XGlRkECwik)Njz-+9$HdDWr0{~2~h z&iTo>Ye_(z!l`YkE$Iua;C>lixt0Wt+~=JtGZ}5$Fh^@ z6Ymzc}+^;g$zj=Ndl{YQ9f;#%vo&wM$ii^K`%%I}hW%lYWgF1G2i zIW`emE0?`_%(le5()LEN%v9&U3mq)7PpL2FJ0|}&A>`BED}hb&QjGiAQa;73yjq-p zQeOF(G+S_u-M4#-D*p(tj`J>QEWSClC`Tx<+2Yb?rH4lwCn<}ro1znGRHwe;R~_qN zAM4sH5+BVg{*^e!zBzqaeUtdX2m=X2>o$*6J6$J1k;$nMpHs7i#Q36f-AWxpy&uo| zHhZ4L{`vY%)tNULcr0BHW-@cUzV^}M-o~U2Vu|&MNkM{xOY*Ki7k}kxz4ND|_7iR` zc_n_IJ)!C_r_aPK`y;ubW{-1}c_v+uF@ z_a4pqb-Bejq-cYaxBTyetA6jk8mv*z!zNk5oAR)@<${sJqI035*OZrSw(pY^{`dUR z(YOfJNfs^Lhn!~Zb$-@6A@b0?PrC~LbqoHn_I>Rcy<)d$iv;K88Tx80eA0C43XZ%0xtDQN!!{SNb$H&QU?tI*R?4H5mH^15nc7N}e z(Ud!^@4xA&@x^at4I3nw9%US_<-$ z7`B~KD@{D1@o~m^-s@M=p3HOgE{Z>tze>fJAxX-le){w|x+-OVPpkf^S@rt!(wcz# zaX#G#;yWLe_3H6$-8tt$#?i#?+MtQn6$ZM$TQ=3$&ClO;h%@a)h9U1$nfG7c{40I9NBQ*HJx5p`8Ems?|FWxh@2cgE%nke*LFU$RA&+}^ zdAACkoAq$5;Hkn@H0vMR1AEvD{f@n2-IMp@rqb;E=fN{0W1XHJIP=#`YU0C; z=aTMyV%vjd!mOGPl>Cyl^vZeo?#5*cwztzSlqB#@^t;SxY|CdXuuhV8^n zU(C)88}5A!J8;L#Kwu{Cm0pV;so7h<7>kGbWXyaO&pFSsL()Ri@}u%n7wv}q3Mbz; z&P@+muzFS(n^tF1h>Aeb=}6 zxRip~tY*!hRUX>^SxYZ8u8>YMnDo$P)JWl-p0NEx`EwCcGtrM7nbH~7N3>c z^A@u(TepQ?$>Z`0`!+Z2>bc?rya^we8%1XT*k+oye3SXy9I zduD~-qy6&l^dBu+`tRxvj_+6A9sbMgEL<xFNcewq7SKl;{3t66`AKdL9K%}ohkv_^p=lcltmG4=1-YJ%CW_f(~ z(7NLZA070JrCth)s@-eTJz##})6cAjN&jqSYsDycJ*;<0%w5<#pZD~Ml^Zkz?xvl+ z((1ig{_qc`#M~s2Z~QG&&lJsJ+gkiFsBV+&^s4jHns&zpb3(hPe-IA7{HA=$<}3X7 zpL$O_a4DGWiuer1nK=hS*557CTuK4VOtdafkTaINJRfAcm8 zh7T&8`vrdLo$F3q^kFaSqO+UU?Ofy_eZD*De$T%?-ya9pu^3DYG+3y}XBiWE^UDlI zX2Bg>f?8Ju@YX#&q?-Akjjz!oqNG6~TFyB}F=5i0HpN?EGukTGCAvJ=)VTNE#|V!0 zkeWD?LtdfFo>#;?%Q=*vcjte{tJYeTJ9{5xzijZ0pT&DbWS#xJ&Au4FKd3Xg8~O+6AUbzMGshlTX- zZJW*pXbWdCZkf5_jMa*TqT$T5RykLm%3yQT37OA7mS*ljyE zGRQGA9_1*h@4WjVwDXq0E^yc=9(w(rA-zWc1+9@?%&R^ zpXa(qjLV<71v3&Dj&N%qaB}WQE>_N7t=Hx1YJKCkq@K8T@z-Me<3Fcg6+3e;eU1yq z#?P#xCwR9o9XXI)ry*b{qa*xq6UXo1VnwO52Oc{9Ji6pcLceHDeRaFzOBuCzufq2= zs`Fo+S{`gTJ529NT3E<}CF|1Gm?a&Z%;0_VyI9ITr6-HO1$n%&rQC|ELAs(xT)7xc5$Jn$fxeitye8(=dWR3ZD7Xy!$$f3uee7A zVZSBsFg@A1F5>L}xqJ8a?E9&$s>i+JfSSyO+vU7r%KNi5+YRi`UUGa;8>e5K{(xoi zL)JCdg03%di}X>@=igkc|2Z>iX~)r9NABcxKX6ZM;ZvB)vF0i(_rDj$u5MLJu9;Ss ziCHf9;`%wcWxp(o@`gK47kqGBBapM`jzzWm>^&1X9v@r~5+3SY5ZTS|=iq9R*4ZNQ znsbI1ef;?B&TZ)U5sOw^9ae-m}PUj9i`Tj$u+5H`!6 z$#qi&s$D&;vLhC6oR@xmGlK+cE5ll;Nnx5T&X&ms{|3h#e{|~bRv~f0u44!L)752C zcmy1kn6{Lb-dmdMQ#jqecXG9;_Ji>36~?D*bI)*Z^~=7uJ#oLUaA(0nxoVj$5l0wX z78bhtEZbecI8*SeonxM-&QZQAPJw^VXh?VXzZ{QmUawld#Xzp*nr_b{$zIb-FqWZQm5 zmvw<6$%d`A(-iLNUP$m!>Zv|+$;Qxb_5H=OvOdS$kLLL)&=h2@?IR#BP&^~L!PQsD zFPE)A_m3f>d*&gW_NR`=iki{e@iKhkv*(3Y*+ zHcRr>fy?3RIo8U5idN2emU;7-`n`9nGq-9q-?00m^X$6$=Q)$~onN=d<*@WBuFH8G z?En4hmZ)h9m!xdkUH@*^#*M2282hrm?7lojcHOyu;T2JZl8je!Wvll18&|ECm5zH} z6Z|+!En?n%&dnP(PlH=+d-Fr8 zXRa^Uw`*PAcfrb+hL2DDvfAoC>%#jBzMoagr@a; zyY8cc6YfW>3{?bIRXAy#nfD;~My+Ogd_vT!)9acqMQJG;_W#X!epC2QW79&bx0_z< zJZi=H{zyjt@vH3DH}6=&!CS5_xGINP15dkLtx9Hv61QEM5t2XAKwgt&{q;&i=B6ZcOG3u02dUi$lcLUhTg7w@JNt z-`Y=chBwPkwuNffZp^6MyKa_cWK9o8vvo?5Sa!#~C$F}C)8pLyarXMXfqS)5GA^$1 zk+HqWA-wbE)ofWw<4wKUpWeNmd2&5(Xhe5FeBZG{S2wa*#9N-cUw-vaZg%_MmEPuc z=_%PSwDR|x@^|mF-COf#*@tsi55LR2?;0b&I%~#@SKIzE3oZWeQTOzfx1tBC1m5wb zewAOg^rPHEDVg=mcX@(^+tyF76e(XHxvB8)gqOCVf*hioG`!q>Uu8A!RrbE!6G7za*Q{bFW1(+ORoCjWiZE` zS7|&j-V`=0Fd2}^sy3pm|`N0q0ez{Unwf*v&-}?^S*if?F*}JeTD!bg; zKl`Of{elFc(_T5{L3hjQ^PJzTFBD|{F|lXmlDdB%;<(n{Ppoh*Nmw@fD~Efg_-aY! z1$CJV1twXX7yi1p{ZyY5pZ)uQ5n>*On??_#zb6sQq?GvqwqV_+H`akDZQP{Hf9U-oDOwolAHE#;icYm^tS|i-u z##Xbg@0J{Mu4-t@)_Z&wYFHW9H4! zj@{z<`q(!2@Bm4l%55BR6MOYQl)IJt5@Z?@aFpYgqV49pj~UM>81 z#JXI6=G(VF&+g6%Zj8QTeQx`f@P5ls-W*Z>&cu-K4QCd0afHWxOUZJ7G5eQ{Yhn7- zY4X$W_LV=MRWa$_(=;vHH>w=#T-HeLE?Op_zWk$d7|Z3N?$Z_PeS^+iT^$}c zz8D4P7Y7yc%6Gmt@qXj-lh37K#(~BIi-Oq%>!PML-LZIBaL7S}>#uRmQ-xjMR_Si7 z+;Z@gGTRyki8@5%f%(?pEPYflwF_&IlHsOy?%HIL8jT;kZGHf`3auOC)il|LV{ zf5mDE>lKM#FPIA;?v&X|dhZSFd^XyL7jE zPII)^T3+-b*T0~V;j!wbdflt(Q?JUn1>9U~^!wUt=W2sTDHC+P-_D=<Pwqd9 zl(h5hmy+LEY?e3ew?xpKc`?P0W~+SIRQvhV!fjT1n{w}-Y&&?avFN*N-Sn!glHmWV z@7P|qIaB35HNvMT;dDQP%BxLt&PW-wGfAuwyO^CbVZG6WtDb-C_S~(xc=cZFify4@ z+2QX0S+0KdeEG6Xb-(&5@1-}Eujf5yy8MZt@hyh0c`m2F8B9DElW^gNT-ch;TuZbv z4VS8~o)a{0e$9mAu3pTm|GKhfGS%LmFw4A9*wnQ5)q*cB5}%A+v=&x#3aMGnpQ@~w z7oYGg$T!F+lW8g24FQj@7p_!1|GVKRL&=+`KW^=Eu7KjD3(&t~EJceRUn19v5!IJu~#qhp<adtaZ@(6!RPL=#Tz+GFT3<3~^R;Z=*-J93>{_U-&% zBAuXTvpIbIsoN{pztMjBr7U{;ddo*y8w)pZtd;sRZ)4hoj+{6CZQZ|hxHg^k-!r|d zsmwIsd{5rX|3XL4^PafMr5#)8#J^FKzm)e!vC^KJV~)*NrQ7Pn;x77k^}PAg71|uf zU&m{6{mIsaJ9w`q`-$ED+!As3bx_rE-niF!zAT*lU;0?~Rll7edhzPt>8HQ9*dKWy z6u19!^5_1))}rMaM%~9|{(rIfh(*GB_wRade9sg(i(TBBw&8J~u=B#@@eOY`ng!gB zy1rDo`g^Z=MXA!6ecSH^DK9lzXnS9_U3u-HiT$tFZhFD~MC}ddElKMeA_ae9-u$cI zlfXDXeX9SF*|)A-dAD(S*StM#Uk{r2p7l!Sw)->TbY$?N^2>|;#NH+{UAx{PX=$1D zj!4D!`^T*zF|)~6>(*4hPP0T?1gQTdoKDt zXxzH<(z~5&M2@9AZd}b^5q?>43g=PF{&r=y2jbncN-N*jmD_C04DIic`Kn~Wo46tI zpuiCm8GF04N1d-8JN)lp_ItI6HLjDx7>(SHJ?=kwN^*??@8#OL8uHV`?&Qv!xvaxG zBW!i?r+}jo=`j^k7YS8ucdj{>yMIwtk!O>e3Ja&OhD+Hott}bO)^AKJO6p2WJ}>A! zbj3>Q{uH0@TLb@8iQZ33-F!>x<(<5+x6?K`q_NGHSY^EJ*RRmM+LupCWa~Sw6Wj1I zcK^E*-CGJiaQLs=btYhHKt`ymW0iG=GOKUR^&U}~e9w{G{oyo8S3 zQ|~^sx@Nfc?K}1jcQ|LgZVRj06qEeLw>i%wbgfBH_8(1UcS#wo{!q5VF^^h{Wz_h4 z6)pOvTWI%5PYwLPQmm8RpdctX^t$}UGgr^m7G`{HI37Fm-OZ|{g-g<2y#Jh-ZLhkF z>qgrC=~pk+{{PLK&Lrk2Ti9c9sAog{fz~gYCM?-mryOS7yvEd#yuqvcX|K3@%d4A7 z0!}=Y59C(d+jN$rPddC%jIVg+X8V@2n;ah)%19V1T{-aVaQAZiw2(jCN8@grzjKm0 zZZR)u%Es*<_a0c>TJlR+!qV!`E6L@R^*1ZtF-RQ!u=q%1M2MZt+LYJ>b2j`;UUe~J zf{97k)2CB+96YheU55ASW{zsB7+&v~gNNpiQfXIvEH z`P|ktQJe8I2j40iuGiPL8-^I937p6@t(mwej%R^H#-XBHDZjNEXL5Yq6`H=W;OhLF z*Ka3&ah+XhA^EVYa&zp=H~$aS+m{{w_n>=K$)SY@8&uSSwghAxc=hW?!El{&6*!+FSu{q+85QkX}X2` z=0|x(Qt4NHr>fhFo|H75^Zi)g$1RujINzH&&(O~dD7>V!_0PZDGdrBq7@RkDNc4Mc zWneJ8;OXKR@~&yurC#@Wulrikca;{JuUVhz6@Iqntz2qOy1}GnEKQ~x8)uz-7gYGb z{EfuD)oUJmUwqJ+`L@uCgK18qX-m2Enbll7ch2#jc2YC(m{-kGj;gd@YY)yfjolNo zQzc5$`u_CBeY2BfC)u%PAIe&=LXt1I>(=XRBkgtm|3&ZthD8?w zCv1+jT^#&7*7jcg{@2?WzHxNCX!3Zr%hzmGuwFFB>ASm1Z{NJRpniRp(zkSKY#V`8+pTE~tH&db%q8X^JM(u4hHcGdiTJ zCZsgZzNM^n_+0$fjSAM*QOh^}lf1fQ*^bpJ`nKYa`=3wsaNCglbAw6ndV#s_)3#;Z z^fQnx(q?&o$BJibBhQXk*RK3DE;@C1Ppzlz&iolQce3=~&)9Q(!|&I7md?~mUh=GY zVR*Sj&_$mruTQVcxB7R!KVnk0F5>Oi%*=T{tTtH->^t^(x=p)L{yVa3k=fMrkYi41 z(r3k=UXb(hSslGuQT_01HDFy*7yE8-j@AG%2e#U(>RuS z6i$8pd2`W=gKzsj<#j7OwJ3PlewsyreYvminJM)zFZEtN)_c=pYli22_d890x5fIo zKEJuS__WR=zY|%058C@gq-(n3s-5}E|A|z7@)vH*=iOUy@_~}Lu=BAF=?5wA^0r4+ z*BQ*J)6a4J_xtFjbKwDYKYr{NyXW=(^rcnYcC)5`<~%xacE-lu&>ayaH#eou+xSF0 z)xiWh8t9SWzH_Eb^1Xzp{3K|^kd z?oLiCJ^$VA+|4;0$zS(Z-Y=Z@G0eiOZgQwL3YVy>;WlRrgKW>({8yRP{J)XK;R5(46JY?TnYMc$&;Q z#DBc|nb?XghP(CGDk-@am>Dm4{#SL|l=OJ!SKdP9ORj}RM={8In7&)ozPW%ez#x~zGL|7XPVM_yl6-t38b*P0+Y#p9zJBYdy$f7y7|`2I6q#w(VU z(*myFQT03W>QiJALo(M9!@NCTuH1O_{Lyc&O~w&|6R%DA!qQl$WwkrJBg16(-EHlf zwRdOiv#OTo=Y48!C=?yVqmY`DAi0V?`Ow^({&#PD=TZ2dYPNJj+JsN#3yS6xR3tY@ zFdR#d`P9Q+b<3U2!FF@!!m~V&3RToHV^jm?%*{I-9FuiJT;hrP-D*!4P5XPPu@c9* z&VHKu>lOPYqc6oLHz;h<{j;F_!mMb{bsP401U1IiUOg!J^=kJ;g&o$8@xrH=W*jKF z#anvz?LNP~?gkmp7D((=T4baVP}8FoBZ_ou=4#$QOE1h;XcdtdCq@oLJS&~i*S6X{<$rFBah3B`>k*9v>bFzeLQ7D>1J`+ z&`#$^`mU?x4&OVV*0CyK?+Z)QJ86v%Z?*n4-m=DO)>p0j8tGEJ1!>d2e%rl$%AA@z zzLV|#T-jdu{dkT*WVd_o7jE|+k>^LHB)-j$xOPb^&^{~YZmYNb>58|n-ESzIkSdgk zy!Er;=Tf;Nk|qtBf=U)yAy-+wr+>OGaoA1Irf%9~d({f=)*m@dvttsvU&wAwe;%5& zI>vd|9L__RjJ^AUUngg9%3oub$bdXV{ zX=R4gO_`F0j8f*SS1o2PzGB;YrA+nEwkgx3rvI8ZWB=0Ue_Qic_FQ|^@%iroX7On} zd#~n2+zD?!Gih__gRk6<6ZRX-+2$%AjIJM-7H{;v z^>o9(LudWk=NwBv5_5j>U8!Y8b03DQ1P3Q;7qmQC%5pg5@s=46@|=Inv;BBvy_JC( zt9*;X_S>HhAE$g zHa<4C4h5l&<>i0=7_ZGex%vph2R+`ELY=D5<=J9i#-Dj88822C|LLjI9PQ+z$M3Ws zj{B}K-Cp9a<(1MUAC5cUos%ED-=s~cS$C0tky3V5N04H}uHe-W3dkC`SaKkBz(Y}z8xY!kq?YFdqXwZP`~+*R8r+f~i6 zU}jA}Qo@+pIp<$;znJjurJIkgUVY>Gg)cIVY(7C}Z~WJdeD>FRYK!oJKEsE)t9++O z?mnpD;k>3^@Bd%!_qSi=y^%ZdUB9UK>50h6Gk+~#o1?w;*wQyMzTQlajoWbR(EY=V zmgcL@6u*Duzq&f%x7RyijWv4;K0Z2kKHA{c@56mU<|~#xk9Yd=u4z^Iv!{l=F%ioD zSaK%FFV~z{e{P=bj-GF7IUA*xIa=IGi<7vWdF4)+1>-~J)mih~#RB{a3<^#d2&A+8 z2vbk?5u0>JZhrD-g{QyHE}osVAn{VvJ+%ezzq#;qdwHY;++TZydG_wYZPf|gwlkI% zCJGw`=vm&r`XwtUn^AZ}`j2nVmIhRRW4Y+Yz*svs#C7JxX>RYsHb@*e@iB=Z?f>DA zn>od{Zwqx=!~H_pPdND2!Qb~^TO59{zwKPy0f8dPW&cf9EZ?`?I>wI8_?M`~leWq& zr|#=Ty_v+*aOzmo7m+9brHnrrNHD2=>B(KaTFy0d$t%r7g{j9Q#NJPJ-fA*Aw>i_Q zduC+ilxw9jlixn;ve_nhx_3tOlMQb-D|aLbLayO}=yQwgsPw zSa$ptcSFuqrEix?O&;ux)PGQ8Y~zuhe6oi@TW)7t=hb6A{y%KB<~?2O(>8J9x%r1B znO!Cbtv|eTZFRP^V7}FvRR1GWpM0<06O|}ey}G*o(#qQEtjGVRe62n3@4-w5yS}VB z297DL2^YK0{V+HXsdK}w`jN}SnKqT$XHM@_DC~31*ts!Nm_M0$t9D35K6_$Xoc~!b zr#H9rC#&&n$?X$5e)LsDVeW)l!!)0xKYj8XxKk6@w;5?q=WRT()PJ|ky~W9TuV-E4 zd^dS#GOk}X|9XrajW^oaPRe6V|A><{$z5yWZT~33@Yd1|fe|nCs-=38{RH+&g0N3}<}K%+6DEk$*Q^T#W* z&xuU`=l<>c{M<=ei!AykEtpgABe{X&zfNXDilEADgR`m|lWLY#{rLW<{pO*sr$24p zR(Es%>4#m<<#mKNJo!=(@>|t<{i=DP`@fzmaX$R>P)hUm-HOF$-(?A0^8K^kBuA_1 z+17a`VwOcqey~ZeczPq{E?4Cr19|?qANP*WHE+IQ`iQaWx2@y5O9}oAq75GuPQ?ct z5Q)ka*?YWvf~a2X`~Bxn+t<#{Z`u65KMczOz;d}?(wt2ge8{gKFRJmtT1^)LuOC+Ve@_O8Qq$MK5kim zWtT>NmdxJmV)un|lIGlptr9H50cz%0v;Ac74iY2N`PA}DQ zXyi|f|5iI;+jGS?Kay|1Y18{WeTls`r_{2~-vlSCF8}-Vr^F>*>xJ$-iRs?3F5*-@|IUl&3+;X%UXeeobet?TzBfAXUXck{*W*&!PyYjS&j(vyP;Ji5%%#(Fc1 z_rI1p@|oe6Pi`I$<1Kc_{r?U)A9G$@zk1u-qLvGb%|8b`oy)NIio}h@{U0xA8XvSX zNXz*cm7Mqdp~2CH6b8n$d)BL0=N~k_%Un8J>)P~M(OWk*?5(@pxAo%H)AQbbsdt%j zfMvZ+S0`RpaB^*sYinN?vL>{< z^~jxbpX-tuIzG)iJa6t6)3ppy`l;_rBPw$(cHKU|a;e&}?P29fHIIsuB3O_)$<@zUEOzI9@)O&u>2v(ttw*wR zROa=6H2;55&spbmyUqcwGT9x$`=xH%{O>F)O7jos{M(hDe0u)Y51$Vz+se)QACaD6 z5?Qg~^yY_rU+=ozS(tacd_}y*2H}i9i9+0)?&>#u@RTT0%v~P6`S-N+E!$RP`Wuv4 zrnuhOU9K48s^0D1@pH;_^I8ersjddnW(G&|!o3YTbJe$B@vYqy?eKlszpZS}Z@0u` zM4K^o?u@Qk7Rsm{6p_i6KKC`t?6?V4`wF^m&N*?Iote??)%i1j?q9w;|MilY&%>|H zOsx4}uqt0>`WM?Hn=Xr%Uom-qa{q=eZnKU~x}mXEd@@F^8Ogtqq8JvGULa z*Tf`WKdb-V`-`{RtAB3zp;uG)@wKe!17|4nh?Q7N|d zGr8j;{%5gYjoIdU-R`@KiVu5+g-+(N(k5zxDHGA%o66nyMGeD_tbyTZostod)scjtGzC_yYg`Zx7Ty~n0=STFS*YDG-1Y+r(KPox(-z}=b!zgUB7}eGlkhW@zb^r zZK2fKvg1c0S&}(E?{{>*JL6?={t8acP4SkE0cTv_u=rdyy7+Ft!xia^miCL2cU8Tf z@iy>=@21^Na@W)E#{B6ExG<;f`+2AT+7nx@3LEJk-WPFPZ|>nwr*%AJjx+f11Z`nn z_Wh*yUcJosW^($XIeL3m--{79uD@m%{QL7Kb*ta~JC=mVb#wOa>09P+d0Vu1&e|D| zdaD-JO@1c$U%aQ|dE<3Phh_hcO|I?BI<541YDXlqQql6x`+?&MONinWUeakbYLy^!2K<5-W|)w{OmjGP?5n?wp4X zGhSE4#;D1v)!A(Row0w_9FMEwWnW+Hf2{N3c!;gD;rjQLg_0s_62E_JlvBPOQf$Ma z^@H2EYH9j^PUC9N22I(A=lbPdZ(6-MYhK&)-RJ&&ZTnyQr(%2RJ_-BnWqHq~jgLnZ0@}+oquqh(4yD#E$_SKnDD%=pLX)B{r9x?=BQ-6NU(1I?bG*sHH>XVjIQzQtvSAT z!_mNl6+AnNDjcrg$T@IA(zvs1-;AsI6}6!sVs1S7vBO(Vd!@;d86_(`Q(J9cO}=Y% zQ+c*mvi%P+vm#1EoZHscB%ODh3QUJS#oJ-Cj1rID|%7&?%BT+CCtUnyr~fu zalhqsDOB!K@4F3)zqfRsjd^mfY2R<{tfXHXr@#NvefQalb5b@pY)_obl(zdUpVcO3 z?04eJC#NKa^GWiLo21Lxe4RgXKi#n8zmVpAb>V`Jy3d8rk61`ptdLl-y6ftMEQ7Nr zIyNmkcSgW9ovC<*Y53PyYWo%*6J65bpTqXy!<{`}>aw%{P1idjp<(~-Q`L`K89dXz zXiUvXe$$}Jyy~E!2S>@5RU*Ezdw=dPv(iaPF%DS&G>?_X;n1JF&#zgO^)}D?d6N6? za_xx$3|SX1_L!vZWQ=3I7##g2X>x2>?d>_?+jDjI^UvF;?{vqfU#~7u*zlBle3;qn zx$XOWj%z6-IB%~h-yXQt;EBVB+0hGj{hT;wTm3^?`-vonxg#;F_?A3=&YUcYe{MlG|c-pIl z@_Py;XLj%(st8;lIPD-u_w(roFX>NEnCy3E!Ve$m8B2{rw=LVB@b`K_nCaCPBNblH z*X$lGrSoKY{!~{Bt(`Oy#E6hqlF)g~Ue4{dwf)=xB0wb%o2Bh&R@$&yO*L zNC)q?7AR6mbi4oRLyO$a8lM$W^X<}J_1#`M$KU?NMa{*BG^UEG`CqSU(Pm~dzb9WFDcM<{GUIc~ zc2UU>t332oUd=4JCH{2t{5Rh=$p!1h{7u^)A39~W@?X7g;T@BY#N=>1zNd6{qu1tt zY}&RHW9+x>@cp~qJ#NQizLkALB^fPCY+BRgN5`ms=dLhaF)KK`lI z>*Sh~Uu{r7#TI;WGSjt4PQ9}de4+(=cUcKntnpd%YeU69yC0KdpBcYMEyr@FFlPro(Q>glvb&+1;`t|y8P#lmD8y&FTZSm%22-b z?ShwwHdyYOrts{~_Hh2%?vEyxiRPl2v3aR14_$A19+_^^_i4G9`BBa$|8IZ14O+Fm zReCtOzL>nxZkU?0+-bUF>gUVpyY9|Ad1j%)$xjQWO|87v(0~|CR*; zYm}p;XU^ymQrjlKLjUW!L)zZ2M5hPI^lX?PzUM}z!qW4#%Wl_OEiD$B`!=X~*I5b8 zmm4@eS$;BX^->Z`-P`8PCw3?Q@Kw3+paqUz_BLxgrnsKBsWWVQ&hWc`8r^8-s_ZSMxk%&Ryq~yn#1`#_PG*e$qJFvZKXa zX8DQohYk`#yH(hg&P4QXX#chSu1T%))kSfUx0ZU#y)N4H?`L1xhx~`84sRCbU!GXR z=yxjj$4+Unnm;MmEoF^$b07^x12nhGO#3bAKk>t`MAjIX+nO!;RTfpFPa%e5&bl^3=HoNiA>o#`OujU7yaE z)xCYu>-czftFiTA#yyO$*6V!S`Qycrn)b_|zaM4kD3~m|cFU5Zf6wm_TGIAl!jj$A ztw-ak7kxMUELZ=glSlmh`duBjl4~B^e-`xl+a&SbcV?8|`&O@%&!l{SOJN_&<#iE7 z`vdp>%zEZ^_~ms8f0en-OqkaB1a*Pm@Z{CURH%X#Vc_uxa__O%6FvAL`9nA8Go1X`XxN^^NgPdGEd( ze+-yi_b&YU`iuIfz098lTB^>ia_>vuowh?{;pOTig+jdE0wceY)13y{Ap2ca=WnUw?CDZ(j1OA}7v?)0sBftSwt~>~YQ3<7fRs zW@^SRY2LSDi+q5|V$U;kZcID&eCiA9htDUSU9Vra{d>czO)u74gl8O0*4i~=aoXqY zxe*tZO_x$)vV79zX{0^(XxzG0%Z=-AAIf~JX7=*X+4c3GYSssf5&HtgZ=96m#ds9RePhxTbVWV7k<8uPt8{^V^q``6FmSJs^> zGiE(;biu~i%E!A_`?9HccUAh{t6a)|Yc<>NoanFR-f~HK_owRYn7xDTs`JdXj?c~& z7;Y|Gd@=X5#<%6%<&zE0r^z%FHZ?cSmtm9IKVPhh@7aWso@8zXBd&sKlcGsSq+hfVV(wSpTN5?EUrYEFC9dJz5LvqScg*+6w~n3Rzq@PWpA#!nKm6Rof;tG+(LWJ6^7I<$m~v=}9gNq@5iZYu@;5th33ly}Q>^ zZrK4-W54f-H#T@l>9bkrm|Q<{zx?c3-5mRUHSP)q;oL08j^8kimp!VqHGESWTh0}a zTm7akP94`=XP7Ua9wzovSZn`1OEyDB^K*~=g_wg(SQf=tbZhQiy{7jZujQE~6*W%1 zE!F-f6qP)9lArl3`=-CyE^Jor3 z?vr3R82Xpr;@ojJjaxR%8`4XXR`E{0(RcXa&)+Fby5H8@$H+6xfAlbt_2sK~TaULX zK5+I>dlcp;njLWXeb}FkbER_E?77gKyXf1oDG^T#&#(%nxUeriI5YMvbKi$1BcX7= z6n>vC8?u)<*mYiI$keqsc<_L~2=kY_hTeX8{ujPU3;(F-Of)gGMt~IZ?>+KKUteHv z#&D96-*x$_@Wb8*VMa}xuWIqp1WL^m~JtPcNp?6H_UofQ&ztqDo@RNk%H4g zVHqA7ISB>n`As`#m9ly$eO$XNbHd9DksOA6ku}<~${Ww$TNk$JpUEQ5pX{a$oF|+$ zI>>K|$)7@l50{TJWS%^$ z5fm9H!^*ltUP}Do+POaN_YDN!)bgF!5dYzK%m;st4-1SL59t~*?5wdaKfK#j|J#mx zuLb{?XrB>Pl2v3`!Lm~FWz5=4gJ(P4KX7aG)n$6L>v%t45O;gG;{J-=)An{g=6Bze z!OW16+MxLGlcTLj+o^dETsQtc7b&n^D{tGS1x9lpBs@@WW}H=7yy>m)jSSsG(G22C zm(FQ#yzyQ$f=lXDsrR}E6Hgds1gn;Ro)xiMmVaaPxyHD@#pnLoD(<_QwBKJXp}2IH zIro+tZilS+f_u-Z?dM+Ie1qrMy5@g34I>yU?#_x>EAeRMVmw7U$M4=SC^s}3z$->5l}Uo`wf+~0k{_Wg$~c^W3XXqm6a_F~Bn20q(g z*|F<3)n0Y&lFDMY=WomWV6?gUzonQ&;9h^XsYi4k*crc@wUl%I7u!pWE=%_5GILn+ z?2Pc+sG7ITxs!?Y2cPiP&v)K#NS}T>X``XiqVHwwU#Av#t}Keo`jC&pPts``}K zf=MdNT7NM`JhWg}F#W66ep7g6H4ce*8hr$xGug! zocrsiMX|5Gx(cg?3GH8LyQnkm^T!KsG%mH6NFUpGS?502x4A3p*Zi=&CGhReuOkdI zuOvxJeZHysP_92atX^ix(ITNu*8RN_9!e*AH?lu#tm(Yae^)UsrhAk1rOm2t8;ZDu zkH-WBs{cLf_`zP>`X4K!MAnvV50%r|B{*1TFtR-HOqh1P;xF13*O zp_tH+c8M`>#q}Cf)_srUlCA94d${;#?Rs@C_3Op&TV~r?nTb9494*Srxp0MfO{v=D z*E>HlOxK&AsM~t8{y<6W-kLQlH!`{%-*x?l@18!}4c5W2@pWAMZ>6|c`KEvP<<;|t zZ@tqO;XIM=7nT(WhVdE73Y#zFWWLv?abdeO|Ep5f^un!m;cw*jolyD}v%-9h&D^7_ zW)#}jZ!i4%Y2F8o{MwJvuIpc=S8X|)cE9ZWM*9z^j+N|ocz#cbEoxrsc8*==Cw}Yq zu(Rnf(C>SmGm$eu%CL!{q&|~XLEoVNB)TZQ@r1U2r;LaDO*Bv zH0KLHPk7+o$2hBWvisfH=FdAa?#AkHT{rtMwI^<}kn82t2N5Eyd6%#ft3k{T#9TA`L$8 zbX{@ltdDQCU-X_lMQ)pWY)>aF)l1*`RLpk4dOO1dN#1M*vVy($)DKO)w0q?of3AgH zZ7*tdLR60)`4s)%JCpzGTi5#q;?*u0^SF0TD%`)T>bTkUukW9nE^$|y&~aC6{(gS7 zgzzusHgkGj=ftQ#s1g!y4NLv9L`+McN0+-K{{N&k7x#TL?Pmu0vZqnA_0#QZhi-u`B<9F{l z#&F+1ueXC?4qM~rbkXvP7Q@dKS1Z0mO!#|a?Vh z@-rv?>!_OIo<8}+f@xEm)*Y$Re0Ns4*S$Y;^^aXoC%gMAudr2QoWq$Y6TJ5Rr2044 z9)44A<*+!b;#E-F@;W%CxG?v)>&M@o4<;Vw=-%DtDgLZj7A#l;{45lfNW3f0(PZDz0gL#3eq#b-Ozx9hX(SHu&v6=cW`Cg%qEnmZ}=m}bP1>UN?;XkGGL50^S>8)~H z_?_v6Z&?f$?0@zDPo$wsWaO{AJLe~heljw@+kE3ttKH1ynfgijTmPwC4xY*I_s5nH z6~DPQ0^j&;zbFUa{E~dLyq)olJfCa^JM(>6=7}p5*FK+YQY_Sclq+gie5d4{)7hzB zo-rZG%@aA=k7zZ1`}#oiyg~l)dAHtkA3v4iY(M?zs^_lne_p*_uyNTXM*mk==l^xu z{b#d&==2q#%g?S3e0}rz+1MR7TelbWd$(TLrY03S=Y!A9O-7ey#&tLA*qX1tY{$FW za&Fm*;ODFdCG;AWEqL{F$)0YV+GFL5QrDV%I4*p*<-xK@tCPH*SGzfW?lWNebU!)v z#g^T^Q`RD$2I(zH&?grQS76lRt%$_X~J5Ia3*>*MRh)B`jX9rWbp4HCD@AThjh{E-0(K`SSe1vr_wV?w{XkpDTU-(yb-N;Xeww#j;kIua!8}vO7Scbf-^o z{IT0#<{sJecA1x(iiWb&f1YzzeI4B`1rj0?CD%p0*XCXuX}6Z;$v?*JM;w0!o0sGMQT#+m@}oE^>#*x3uLC4OK-Fjs~!_3I6v?(K`2cOG$OK>Ems^!6$f2n36d( zay})vuU2P0dTw=dV}2`R(1Zmye>cZ&@66t}qyKZy%QXv|!dMH|@T^tjdSW>FS-hP6 znGfaXQ z(u;WgexJp+51#Ttd&*KzcHU4p7CeXZ?3v>##{b@~zL%vkb;#-?Z#KXn0)X!8oPR7dz-_rzl~xN zjJ!V8o1e|Q`c}e|^K{u^hBq3gJ!6t~>74laIN`v-1KSTX1bPS@h;$0I|M{wL*%7^@ zCp8y0ywC}@6}ZtP-|?!ww_QC(biMM=X#X`cLi`pMF8NpYlhxo;Ra@HkIdA`jzgZZ( zK6SG9oizsftM2Xi$+L|8e%i#j?~UWH|98mF5DJr;ZsdA+?XT~@_OkMCI6ZxP_?ZVL zA6f*$|0Hj`Ud><;^!GnG%=g3EUw*!=HQ!Jh>k zdH*lXvCM2?-TXpy-o3)E6}NxreJ-o((Ud#)dV9avy<4Hj_WLm>cRW_uD1WY4i0#eP zhP^&IZd$xdFGM$o7sU3xKEH#b?}*D0t|crJ<^Bfmj$7s8^O7A- znO?8;_D%2(Ep{`AG-7yrYbmQz(w&3X-dG4NJ-XpQ@Xe{8pJ}~&AiLp9Y|>e`4O>c@ zni<)d?=vzdFsS6U?&hfR5nsJO-iTfP!_yAwHtQn}8&%JUR^Hf=e`xk5A?|INo2Ey7 z*714eAj?yKyL{`Zv)L^ir4KW=UTZ73r?(;KI<%+ZjkZXsbIAhDstdTNSb z#in)NA8h!}emqM0V9y=9fLnH*zH9iuz1k|5meXAJ??=^>-ufe)o8SH3cY6yLj`p52UY{R66Ia}9ot}C-blNq!FH3m@ms;iO-EPas(c8mVvsJI% zRZ8kcuRDvRpLojGT$?v?Rc@9BVUwTU*=y5Vc=z}oi<~`4;T^1M2N%u|{>IAu<*{np zkABUqRWHO9PanwKp`+&T>7P^DlGtl+`6Fii6;}U!Vb`QfLZ>?mwm)i(y7m9n{5zhH zRDK8^R8T%V)qYw}Sa!Bp^y!N%>lZROHC*hHzGvU;nE!m$zJmv*$bO9MF)h%Qc)lK- zI>eZ_P0b6gi@0;XH9XL0$DQ>FmpM;O`Oy=8l0#$P%iX?WAD0~v&d_dL^FK5HFyG0i z5gU&@NIP>N$Nn5oPQ>$l=Oq-F?nNp1%6h`e#8;OJQ&+f#dTFDdOlq|(Oa zv3>hBE|rZn&u<=VXl~4JX6(Mv%yIjRr1Ag1=?o#pTnb74iltu#>eV0VO#axe)*x2A zpzHC}+dox94$03v+cc4fq2P<##Z59*lLW`kFo%PknU8IsG@FA#r$b%1($48d9Twh9x!05Lzdd&QXYhNo z$sP^fTJ4vDPb)lsHCgYq|g623A2;w8&W>BRNyJ*iygJ5GPy zDZ*Zup|(YY#CUZ8B!Pn=mAJjHzBaqk>9HtiqNWi-wm zP5R(GNpRzpb6i|eX<{dT&M^mt7`X2~O~NCUsq^TCeGHMG0~wyWDQx6xx@GrP%=p-~ zV)5k_N>`Tr_nywk_CV>oUsrrgq!Fu6lf>~e6Q>;Ot>@J~;&$-$nfu3h1?43A6xOnM z9hOy6s26KDUa|Y@?sGrSd}QTYV{s4~M8<4U$xPqc*6(f1UO9o);X@*4%=hh~yDQVr zUkqSqaFyTIV7ozLLHCLM0?{I&a{|A=pPTQ=<{;%N@@N~&G3Dd`=Dhsn9Khad`}M=Ow>Fl5A&CWgT#i;y|Hu7ie!|G$*3hfJoNK5IPx2tn;Tu)9HJame*FyJleIQd zxI^&5ItTAY7l*ZM0u@HTGBhJT>Q28Yv`6?kSOcgQ;AA#CsM_Rb{JU<)xvUpL zKK{0kIjPO)V#1chw&bt#LatPYSN+Sc_{Pti^QC9zn}Z){uaqU%CC1^mW72|0oYJ*;`D5R`MQ4KYZJDDC3=9mOu6{1- HoD!MeN; literal 0 HcmV?d00001 diff --git a/docs/mkdocs/docs/images/json_syntax_number.png b/docs/mkdocs/docs/images/json_syntax_number.png new file mode 100644 index 0000000000000000000000000000000000000000..be23ffa69d02833fb3b109b6a8c3e50e9701e2ff GIT binary patch literal 37014 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�Af9J+)CVM@= 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 literal 0 HcmV?d00001 diff --git a/docs/mkdocs/docs/images/range-begin-end.svg b/docs/mkdocs/docs/images/range-begin-end.svg new file mode 100644 index 00000000..8e2b2fb6 --- /dev/null +++ b/docs/mkdocs/docs/images/range-begin-end.svg @@ -0,0 +1,435 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + image/svg+xml + + + + + + + + + + + + + + + + + + + + + + + + + + Past-the-last element + + + + begin + + + + end + + + + + diff --git a/docs/mkdocs/docs/images/range-rbegin-rend.svg b/docs/mkdocs/docs/images/range-rbegin-rend.svg new file mode 100644 index 00000000..dc6045fc --- /dev/null +++ b/docs/mkdocs/docs/images/range-rbegin-rend.svg @@ -0,0 +1,1232 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + image/svg+xml + + + + + + + + + + + + + + + + + + + + + + + + + + Past-the-last element + + + + begin + + + + end + + + + + + + + + + + + + + + + + + + + + + + + + Reversed sequence + + Reverse past-the-last element + + + + + + + + rend + + + + rbegin + + + Reverse iterator stores an iterator to the nextelement than the one it actually refers to + + + + + + + + + diff --git a/docs/mkdocs/docs/index.md b/docs/mkdocs/docs/index.md new file mode 100644 index 00000000..0e49c836 --- /dev/null +++ b/docs/mkdocs/docs/index.md @@ -0,0 +1,3 @@ +# JSON for Modern C++ + +![](images/json.gif) diff --git a/docs/mkdocs/docs/integration/cmake.md b/docs/mkdocs/docs/integration/cmake.md new file mode 100644 index 00000000..545f53f3 --- /dev/null +++ b/docs/mkdocs/docs/integration/cmake.md @@ -0,0 +1,172 @@ +# CMake + +## Integration + +You can use the `nlohmann_json::nlohmann_json` interface target in CMake. This target populates the appropriate usage +requirements for [`INTERFACE_INCLUDE_DIRECTORIES`](https://cmake.org/cmake/help/latest/prop_tgt/INTERFACE_INCLUDE_DIRECTORIES.html) +to point to the appropriate include directories and [`INTERFACE_COMPILE_FEATURES`](https://cmake.org/cmake/help/latest/prop_tgt/INTERFACE_COMPILE_FEATURES.html) +for the necessary C++11 flags. + +### External + +To use this library from a CMake project, you can locate it directly with [`find_package()`](https://cmake.org/cmake/help/latest/command/find_package.html) +and use the namespaced imported target from the generated package configuration: + +!!! example + + ```cmake title="CMakeLists.txt" + cmake_minimum_required(VERSION 3.1) + project(ExampleProject LANGUAGES CXX) + + find_package(nlohmann_json 3.11.3 REQUIRED) + + add_executable(example example.cpp) + target_link_libraries(example PRIVATE nlohmann_json::nlohmann_json) + ``` + +The package configuration file, `nlohmann_jsonConfig.cmake`, can be used either from an install tree or directly out of +the build tree. + +### Embedded + +To embed the library directly into an existing CMake project, place the entire source tree in a subdirectory and call +`add_subdirectory()` in your `CMakeLists.txt` file. + +!!! example + + ```cmake title="CMakeLists.txt" + cmake_minimum_required(VERSION 3.1) + project(ExampleProject LANGUAGES CXX) + + # If you only include this third party in PRIVATE source files, you do not need to install it + # when your main project gets installed. + set(JSON_Install OFF CACHE INTERNAL "") + + add_subdirectory(nlohmann_json) + + add_executable(example example.cpp) + target_link_libraries(example PRIVATE nlohmann_json::nlohmann_json) + ``` + +!!! note + + Do not use `#!cmake include(nlohmann_json/CMakeLists.txt)`, since that carries with it unintended consequences that + will break the build. It is generally discouraged (although not necessarily well documented as such) to use + `#!cmake include(...)` for pulling in other CMake projects anyways. + + +### Supporting Both + +To allow your project to support either an externally supplied or an embedded JSON library, you can use a pattern akin +to the following. + +!!! example + + ```cmake title="CMakeLists.txt" + project(ExampleProject LANGUAGES CXX) + + option(EXAMPLE_USE_EXTERNAL_JSON "Use an external JSON library" OFF) + + add_subdirectory(thirdparty) + + add_executable(example example.cpp) + + # Note that the namespaced target will always be available regardless of the import method + target_link_libraries(example PRIVATE nlohmann_json::nlohmann_json) + ``` + + ```cmake title="thirdparty/CMakeLists.txt" + if(EXAMPLE_USE_EXTERNAL_JSON) + find_package(nlohmann_json 3.11.3 REQUIRED) + else() + set(JSON_BuildTests OFF CACHE INTERNAL "") + add_subdirectory(nlohmann_json) + endif() + ``` + + `thirdparty/nlohmann_json` is then a complete copy of this source tree. + + +### FetchContent + +Since CMake v3.11, [FetchContent](https://cmake.org/cmake/help/v3.11/module/FetchContent.html) can be used to +automatically download a release as a dependency at configure type. + +!!! example + + ```cmake title="CMakeLists.txt" + cmake_minimum_required(VERSION 3.11) + project(ExampleProject LANGUAGES CXX) + + include(FetchContent) + + FetchContent_Declare(json URL https://github.com/nlohmann/json/releases/download/v3.11.3/json.tar.xz) + FetchContent_MakeAvailable(json) + + add_executable(example example.cpp) + target_link_libraries(example PRIVATE nlohmann_json::nlohmann_json) + ``` + +!!! Note + + It is recommended to use the URL approach described above which is supported as of version 3.10.0. It is also + possible to pass the Git repository like + + ```cmake + FetchContent_Declare(json + GIT_REPOSITORY https://github.com/nlohmann/json + GIT_TAG v3.11.3 + ) + ``` + + However, the repository download size is quite large. You might want to depend on + a smaller repository. For instance, you might want to replace the URL in the example by + . + +## CMake Options + +### `JSON_BuildTests` + +Build the unit tests when [`BUILD_TESTING`](https://cmake.org/cmake/help/latest/command/enable_testing.html) is enabled. This option is `ON` by default if the library's CMake project is the top project. That is, when integrating the library as described above, the test suite is not built unless explicitly switched on with this option. + +### `JSON_CI` + +Enable CI build targets. The exact targets are used during the several CI steps and are subject to change without notice. This option is `OFF` by default. + +### `JSON_Diagnostics` + +Enable [extended diagnostic messages](../home/exceptions.md#extended-diagnostic-messages) by defining macro [`JSON_DIAGNOSTICS`](../api/macros/json_diagnostics.md). This option is `OFF` by default. + +### `JSON_DisableEnumSerialization` + +Disable default `enum` serialization by defining the macro +[`JSON_DISABLE_ENUM_SERIALIZATION`](../api/macros/json_disable_enum_serialization.md). This option is `OFF` by default. + +### `JSON_FastTests` + +Skip expensive/slow test suites. This option is `OFF` by default. Depends on `JSON_BuildTests`. + +### `JSON_GlobalUDLs` + +Place user-defined string literals in the global namespace by defining the macro +[`JSON_USE_GLOBAL_UDLS`](../api/macros/json_use_global_udls.md). This option is `OFF` by default. + +### `JSON_ImplicitConversions` + +Enable implicit conversions by defining macro [`JSON_USE_IMPLICIT_CONVERSIONS`](../api/macros/json_use_implicit_conversions.md). This option is `ON` by default. + +### `JSON_Install` + +Install CMake targets during install step. This option is `ON` by default if the library's CMake project is the top project. + +### `JSON_MultipleHeaders` + +Use non-amalgamated version of the library. This option is `OFF` by default. + +### `JSON_SystemInclude` + +Treat the library headers like system headers (i.e., adding `SYSTEM` to the [`target_include_directories`](https://cmake.org/cmake/help/latest/command/target_include_directories.html) call) to checks for this library by tools like Clang-Tidy. This option is `OFF` by default. + +### `JSON_Valgrind` + +Execute test suite with [Valgrind](https://valgrind.org). This option is `OFF` by default. Depends on `JSON_BuildTests`. diff --git a/docs/mkdocs/docs/integration/conan/CMakeLists.txt b/docs/mkdocs/docs/integration/conan/CMakeLists.txt new file mode 100644 index 00000000..fd3e9ca7 --- /dev/null +++ b/docs/mkdocs/docs/integration/conan/CMakeLists.txt @@ -0,0 +1,9 @@ +project(json_example) +cmake_minimum_required(VERSION 2.8.12) +add_definitions("-std=c++11") + +include(${CMAKE_BINARY_DIR}/conanbuildinfo.cmake) +conan_basic_setup() + +add_executable(json_example example.cpp) +target_link_libraries(json_example ${CONAN_LIBS}) diff --git a/docs/mkdocs/docs/integration/conan/Conanfile.txt b/docs/mkdocs/docs/integration/conan/Conanfile.txt new file mode 100644 index 00000000..a8a3e703 --- /dev/null +++ b/docs/mkdocs/docs/integration/conan/Conanfile.txt @@ -0,0 +1,5 @@ +[requires] +nlohmann_json/3.7.3 + +[generators] +cmake diff --git a/docs/mkdocs/docs/integration/conan/example.cpp b/docs/mkdocs/docs/integration/conan/example.cpp new file mode 100644 index 00000000..e5a31be4 --- /dev/null +++ b/docs/mkdocs/docs/integration/conan/example.cpp @@ -0,0 +1,9 @@ +#include +#include + +using json = nlohmann::json; + +int main() +{ + std::cout << json::meta() << std::endl; +} diff --git a/docs/mkdocs/docs/integration/example.cpp b/docs/mkdocs/docs/integration/example.cpp new file mode 100644 index 00000000..1a7ac4de --- /dev/null +++ b/docs/mkdocs/docs/integration/example.cpp @@ -0,0 +1,10 @@ +#include +#include +#include + +using json = nlohmann::json; + +int main() +{ + std::cout << std::setw(4) << json::meta() << std::endl; +} diff --git a/docs/mkdocs/docs/integration/index.md b/docs/mkdocs/docs/integration/index.md new file mode 100644 index 00000000..2bbaa860 --- /dev/null +++ b/docs/mkdocs/docs/integration/index.md @@ -0,0 +1,18 @@ +# Header only + +[`json.hpp`](https://github.com/nlohmann/json/blob/develop/single_include/nlohmann/json.hpp) is the single required +file in `single_include/nlohmann` or [released here](https://github.com/nlohmann/json/releases). You need to add + +```cpp +#include + +// for convenience +using json = nlohmann::json; +``` + +to the files you want to process JSON and set the necessary switches to enable C++11 (e.g., `-std=c++11` for GCC and +Clang). + +You can further use file +[`single_include/nlohmann/json_fwd.hpp`](https://github.com/nlohmann/json/blob/develop/single_include/nlohmann/json_fwd.hpp) +for forward declarations. diff --git a/docs/mkdocs/docs/integration/migration_guide.md b/docs/mkdocs/docs/integration/migration_guide.md new file mode 100644 index 00000000..d250f5b2 --- /dev/null +++ b/docs/mkdocs/docs/integration/migration_guide.md @@ -0,0 +1,264 @@ +# Migration Guide + +This page collects some guidelines on how to future-proof your code for future versions of this library. + +## Replace deprecated functions + +The following functions have been deprecated and will be removed in the next major version (i.e., 4.0.0). All +deprecations are annotated with +[`HEDLEY_DEPRECATED_FOR`](https://nemequ.github.io/hedley/api-reference.html#HEDLEY_DEPRECATED_FOR) to report which +function to use instead. + +#### Parsing + +- Function `friend std::istream& operator<<(basic_json&, std::istream&)` is deprecated since 3.0.0. Please use + [`friend std::istream& operator>>(std::istream&, basic_json&)`](../api/operator_gtgt.md) instead. + + === "Deprecated" + + ```cpp + nlohmann::json j; + std::stringstream ss("[1,2,3]"); + j << ss; + ``` + + === "Future-proof" + + ```cpp + nlohmann::json j; + std::stringstream ss("[1,2,3]"); + ss >> j; + ``` + +- Passing iterator pairs or pointer/length pairs to parsing functions ([`parse`](../api/basic_json/parse.md), + [`accept`](../api/basic_json/accept.md), [`sax_parse`](../api/basic_json/sax_parse.md), + [`from_cbor`](../api/basic_json/from_cbor.md), [`from_msgpack`](../api/basic_json/from_msgpack.md), + [`from_ubjson`](../api/basic_json/from_ubjson.md), and [`from_bson`](../api/basic_json/from_bson.md) via initializer + lists is deprecated since 3.8.0. Instead, pass two iterators; for instance, call `from_cbor(ptr, ptr+len)` instead of + `from_cbor({ptr, len})`. + + === "Deprecated" + + ```cpp + const char* s = "[1,2,3]"; + bool ok = nlohmann::json::accept({s, s + std::strlen(s)}); + ``` + + === "Future-proof" + + ```cpp + const char* s = "[1,2,3]"; + bool ok = nlohmann::json::accept(s, s + std::strlen(s)); + ``` + +#### JSON Pointers + +- Comparing JSON Pointers with strings via [`operator==`](../api/json_pointer/operator_eq.md) and + [`operator!=`](../api/json_pointer/operator_ne.md) is deprecated since 3.11.2. To compare a + [`json_pointer`](../api/json_pointer/index.md) `p` with a string `s`, convert `s` to a `json_pointer` first and use + [`json_pointer::operator==`](../api/json_pointer/operator_eq.md) or + [`json_pointer::operator!=`](../api/json_pointer/operator_ne.md). + + === "Deprecated" + + ```cpp + nlohmann::json::json_pointer lhs("/foo/bar/1"); + assert(lhs == "/foo/bar/1"); + ``` + + === "Future-proof" + + ```cpp + nlohmann::json::json_pointer lhs("/foo/bar/1"); + assert(lhs == nlohmann::json::json_pointer("/foo/bar/1")); + ``` + +- The implicit conversion from JSON Pointers to string + ([`json_pointer::operator string_t`](../api/json_pointer/operator_string_t.md)) is deprecated since 3.11.0. Use + [`json_pointer::to_string`](../api/json_pointer/to_string.md) instead. + + === "Deprecated" + + ```cpp + nlohmann::json::json_pointer ptr("/foo/bar/1"); + std::string s = ptr; + ``` + + === "Future-proof" + + ```cpp + nlohmann::json::json_pointer ptr("/foo/bar/1"); + std::string s = ptr.to_string(); + ``` + +- Passing a `basic_json` specialization as template parameter `RefStringType` to + [`json_pointer`](../api/json_pointer/index.md) is deprecated since 3.11.0. The string type can now be directly + provided. + + === "Deprecated" + + ```cpp + using my_json = nlohmann::basic_json; + nlohmann::json_pointer ptr("/foo/bar/1"); + ``` + + === "Future-proof" + + ```cpp + nlohmann::json_pointer ptr("/foo/bar/1"); + ``` + + Thereby, `nlohmann::my_json::json_pointer` is an alias for `nlohmann::json_pointer` and is always an + alias to the `json_pointer` with the appropriate string type for all specializations of `basic_json`. + +#### Miscellaneous functions + +- The function `iterator_wrapper` is deprecated since 3.1.0. Please use the member function + [`items`](../api/basic_json/items.md) instead. + + === "Deprecated" + + ```cpp + for (auto &x : nlohmann::json::iterator_wrapper(j)) + { + std::cout << x.key() << ":" << x.value() << std::endl; + } + ``` + + === "Future-proof" + + ```cpp + for (auto &x : j.items()) + { + std::cout << x.key() << ":" << x.value() << std::endl; + } + ``` + +- Function `friend std::ostream& operator>>(const basic_json&, std::ostream&)` is deprecated since 3.0.0. Please use + [`friend operator<<(std::ostream&, const basic_json&)`](../api/operator_ltlt.md) instead. + + === "Deprecated" + + ```cpp + j >> std::cout; + ``` + + === "Future-proof" + + ```cpp + std::cout << j; + ``` + +- The legacy comparison behavior for discarded values is deprecated since 3.11.0. It is already disabled by default and + can still be enabled by defining + [`JSON_USE_LEGACY_DISCARDED_VALUE_COMPARISON`](../api/macros/json_use_legacy_discarded_value_comparison.md) to `1`. + + === "Deprecated" + + ```cpp + #define JSON_USE_LEGACY_DISCARDED_VALUE_COMPARISON 1 + #include + ``` + + === "Future-proof" + + ```cpp + #include + ``` + +## Replace implicit conversions + +Implicit conversions via [`operator ValueType`](../api/basic_json/operator_ValueType.md) will be switched off by default +in the next major release of the library. + +You can prepare existing code by already defining +[`JSON_USE_IMPLICIT_CONVERSIONS`](../api/macros/json_use_implicit_conversions.md) to `0` and replace any implicit +conversions with calls to [`get`](../api/basic_json/get.md), [`get_to`](../api/basic_json/get_to.md), +[`get_ref`](../api/basic_json/get_ref.md), or [`get_ptr`](../api/basic_json/get_ptr.md). + +=== "Deprecated" + + ```cpp + nlohmann::json j = "Hello, world!"; + std::string s = j; + ``` + +=== "Future-proof" + + ```cpp + nlohmann::json j = "Hello, world!"; + auto s = j.template get(); + ``` + +=== "Future-proof (alternative)" + + ```cpp + nlohmann::json j = "Hello, world!"; + std::string s; + j.get_to(s); + ``` + +You can prepare existing code by already defining +[`JSON_USE_IMPLICIT_CONVERSIONS`](../api/macros/json_use_implicit_conversions.md) to `0` and replace any implicit +conversions with calls to [`get`](../api/basic_json/get.md). + +## Import namespace `literals` for UDLs + +The user-defined string literals [`operator""_json`](../api/operator_literal_json.md) and +[`operator""_json_pointer`](../api/operator_literal_json_pointer.md) will be removed from the global namespace in the +next major release of the library. + +=== "Deprecated" + + ```cpp + nlohmann::json j = "[1,2,3]"_json; + ``` + +=== "Future-proof" + + ```cpp + using namespace nlohmann::literals; + nlohmann::json j = "[1,2,3]"_json; + ``` + +To prepare existing code, define [`JSON_USE_GLOBAL_UDLS`](../api/macros/json_use_global_udls.md) to `0` and bring the +string literals into scope where needed. + +## Do not hard-code the complete library namespace + +The [`nlohmann` namespace](../features/namespace.md) contains a sub-namespace to avoid problems when different +versions or configurations of the library are used in the same project. Always use `nlohmann` as namespace or, when the +exact version and configuration is relevant, use macro +[`NLOHMANN_JSON_NAMESPACE`](../api/macros/nlohmann_json_namespace.md) to denote the namespace. + +=== "Dangerous" + + ```cpp + void to_json(nlohmann::json_abi_v3_11_2::json& j, const person& p) + { + j["age"] = p.age; + } + ``` + +=== "Future-proof" + + ```cpp + void to_json(nlohmann::json& j, const person& p) + { + j["age"] = p.age; + } + ``` + +=== "Future-proof (alternative)" + + ```cpp + void to_json(NLOHMANN_JSON_NAMESPACE::json& j, const person& p) + { + j["age"] = p.age; + } + ``` + +## Do not use the `details` namespace + +The `details` namespace is not part of the public API of the library and can change in any version without announcement. +Do not rely on any function or type in the `details` namespace. diff --git a/docs/mkdocs/docs/integration/package_managers.md b/docs/mkdocs/docs/integration/package_managers.md new file mode 100644 index 00000000..c9a273a5 --- /dev/null +++ b/docs/mkdocs/docs/integration/package_managers.md @@ -0,0 +1,198 @@ +# Package Managers + +Throughout this page, we will describe how to compile the example file `example.cpp` below. + +```cpp +--8<-- "integration/example.cpp" +``` + +When executed, this program should create output similar to + +```json +--8<-- "examples/meta.output" +``` + +## Homebrew + +If you are using OS X and [Homebrew](http://brew.sh), just type + +```sh +brew install nlohmann-json +``` + +and you're set. If you want the bleeding edge rather than the latest release, use + +```sh +brew install nlohmann-json --HEAD +``` + +instead. See [nlohmann-json](https://formulae.brew.sh/formula/nlohmann-json) for more information. + +??? example + + 1. Create the following file: + + ```cpp title="example.cpp" + --8<-- "integration/example.cpp" + ``` + + 2. Install the package + + ```sh + brew install nlohmann-json + ``` + + 3. Determine the include path, which defaults to `/usr/local/Cellar/nlohmann-json/$version/include`, where `$version` is the version of the library, e.g. `3.7.3`. The path of the library can be determined with + + ```sh + brew list nlohmann-json + ``` + + 4. Compile the code. For instance, the code can be compiled using Clang with + + ```sh + clang++ example.cpp -I/usr/local/Cellar/nlohmann-json/3.7.3/include -std=c++11 -o example + ``` + +:material-update: The [formula](https://formulae.brew.sh/formula/nlohmann-json) is updated automatically. + +## Meson + +If you are using the [Meson Build System](http://mesonbuild.com), add this source tree as a [meson subproject](https://mesonbuild.com/Subprojects.html#using-a-subproject). You may also use the `include.zip` published in this project's [Releases](https://github.com/nlohmann/json/releases) to reduce the size of the vendored source tree. Alternatively, you can get a wrap file by downloading it from [Meson WrapDB](https://wrapdb.mesonbuild.com/nlohmann_json), or simply use `meson wrap install nlohmann_json`. Please see the meson project for any issues regarding the packaging. + +The provided `meson.build` can also be used as an alternative to cmake for installing `nlohmann_json` system-wide in which case a pkg-config file is installed. To use it, simply have your build system require the `nlohmann_json` pkg-config dependency. In Meson, it is preferred to use the [`dependency()`](https://mesonbuild.com/Reference-manual.html#dependency) object with a subproject fallback, rather than using the subproject directly. + +## Bazel + +This repository provides a [Bazel](https://bazel.build/) `WORKSPACE.bazel` and a corresponding `BUILD.bazel` file. Therefore, this repository can be referenced by workspace rules such as `http_archive`, `git_repository`, or `local_repository` from other Bazel workspaces. To use the library you only need to depend on the target `@nlohmann_json//:json` (e.g. via `deps` attribute). + +## Conan + +If you are using [Conan](https://www.conan.io/) to manage your dependencies, merely add `nlohmann_json/x.y.z` to your `conanfile`'s requires, where `x.y.z` is the release version you want to use. Please file issues [here](https://github.com/conan-io/conan-center-index/issues) if you experience problems with the packages. + +??? example + + 1. Create the following files: + + ```ini title="Conanfile.txt" + --8<-- "integration/conan/Conanfile.txt" + ``` + + ```cmake title="CMakeLists.txt" + --8<-- "integration/conan/CMakeLists.txt" + ``` + + ```cpp title="example.cpp" + --8<-- "integration/conan/example.cpp" + ``` + + 2. Build: + + ```sh + mkdir build + cd build + conan install .. + cmake .. + cmake --build . + ``` + +:material-update: The [package](https://conan.io/center/nlohmann_json) is updated automatically. + +## Spack + +If you are using [Spack](https://www.spack.io/) to manage your dependencies, you can use the [`nlohmann-json` package](https://spack.readthedocs.io/en/latest/package_list.html#nlohmann-json). Please see the [spack project](https://github.com/spack/spack) for any issues regarding the packaging. + +## Hunter + +If you are using [hunter](https://github.com/cpp-pm/hunter) on your project for external dependencies, then you can use the [nlohmann_json package](https://hunter.readthedocs.io/en/latest/packages/pkg/nlohmann_json.html). Please see the hunter project for any issues regarding the packaging. + +## Buckaroo + +If you are using [Buckaroo](https://buckaroo.pm), you can install this library's module with `buckaroo add github.com/buckaroo-pm/nlohmann-json`. Please file issues [here](https://github.com/buckaroo-pm/nlohmann-json). There is a demo repo [here](https://github.com/njlr/buckaroo-nholmann-json-example). + +## vcpkg + +If you are using [vcpkg](https://github.com/Microsoft/vcpkg/) on your project for external dependencies, then you can install the [nlohmann-json package](https://github.com/Microsoft/vcpkg/tree/master/ports/nlohmann-json) with `vcpkg install nlohmann-json` and follow the then displayed descriptions. Please see the vcpkg project for any issues regarding the packaging. + +??? example + + 1. Create the following files: + + ```cmake title="CMakeLists.txt" + --8<-- "integration/vcpkg/CMakeLists.txt" + ``` + + ```cpp title="example.cpp" + --8<-- "integration/vcpkg/example.cpp" + ``` + + 2. Install package: + + ```sh + vcpkg install nlohmann-json + ``` + + 3. Build: + + ```sh + mkdir build + cd build + cmake .. -DCMAKE_TOOLCHAIN_FILE=/path/to/vcpkg/scripts/buildsystems/vcpkg.cmake + cmake --build . + ``` + + Note you need to adjust `/path/to/vcpkg/scripts/buildsystems/vcpkg.cmake` to your system. + +## cget + +If you are using [cget](http://cget.readthedocs.io/en/latest/), you can install the latest development version with `cget install nlohmann/json`. A specific version can be installed with `cget install nlohmann/json@v3.1.0`. Also, the multiple header version can be installed by adding the `-DJSON_MultipleHeaders=ON` flag (i.e., `cget install nlohmann/json -DJSON_MultipleHeaders=ON`). + +:material-update: cget reads directly from the [GitHub repository](https://github.com/nlohmann/json) and is always up-to-date. + +## CocoaPods + +If you are using [CocoaPods](https://cocoapods.org), you can use the library by adding pod `"nlohmann_json", '~>3.1.2'` to your podfile (see [an example](https://bitbucket.org/benman/nlohmann_json-cocoapod/src/master/)). Please file issues [here](https://bitbucket.org/benman/nlohmann_json-cocoapod/issues?status=new&status=open). + +## NuGet + +If you are using [NuGet](https://www.nuget.org), you can use the package [nlohmann.json](https://www.nuget.org/packages/nlohmann.json/). Please check [this extensive description](https://github.com/nlohmann/json/issues/1132#issuecomment-452250255) on how to use the package. Please file issues [here](https://github.com/hnkb/nlohmann-json-nuget/issues). + +## Conda + +If you are using [conda](https://conda.io/), you can use the package [nlohmann_json](https://github.com/conda-forge/nlohmann_json-feedstock) from [conda-forge](https://conda-forge.org) executing `conda install -c conda-forge nlohmann_json`. Please file issues [here](https://github.com/conda-forge/nlohmann_json-feedstock/issues). + +## MSYS2 + +If you are using [MSYS2](http://www.msys2.org/), you can use the [mingw-w64-nlohmann-json](https://packages.msys2.org/base/mingw-w64-nlohmann-json) package, just type `pacman -S mingw-w64-i686-nlohmann-json` or `pacman -S mingw-w64-x86_64-nlohmann-json` for installation. Please file issues [here](https://github.com/msys2/MINGW-packages/issues/new?title=%5Bnlohmann-json%5D) if you experience problems with the packages. + +:material-update: The [package](https://packages.msys2.org/base/mingw-w64-nlohmann-json) is updated automatically. + +## MacPorts + +If you are using [MacPorts](https://ports.macports.org), execute `sudo port install nlohmann-json` to install the [nlohmann-json](https://ports.macports.org/port/nlohmann-json/) package. + +:material-update: The [package](https://ports.macports.org/port/nlohmann-json/) is updated automatically. + +## build2 + +If you are using [`build2`](https://build2.org), you can use the [`nlohmann-json`](https://cppget.org/nlohmann-json) package from the public repository or directly from the [package's sources repository](https://github.com/build2-packaging/nlohmann-json). In your project's `manifest` file, just add `depends: nlohmann-json` (probably with some [version constraints](https://build2.org/build2-toolchain/doc/build2-toolchain-intro.xhtml#guide-add-remove-deps)). If you are not familiar with using dependencies in `build2`, [please read this introduction](https://build2.org/build2-toolchain/doc/build2-toolchain-intro.xhtml). +Please file issues [here](https://github.com/build2-packaging/nlohmann-json) if you experience problems with the packages. + +:material-update: The [package](https://cppget.org/nlohmann-json) is updated automatically. + +## wsjcpp + +If you are using [`wsjcpp`](http://wsjcpp.org), you can use the command `wsjcpp install "https://github.com/nlohmann/json:develop"` to get the latest version. Note you can change the branch ":develop" to an existing tag or another branch. + +:material-update: wsjcpp reads directly from the [GitHub repository](https://github.com/nlohmann/json) and is always up-to-date. + +## CPM.cmake + +If you are using [`CPM.cmake`](https://github.com/TheLartians/CPM.cmake), you can check this [`example`](https://github.com/TheLartians/CPM.cmake/tree/master/examples/json). After [adding CPM script](https://github.com/TheLartians/CPM.cmake#adding-cpm) to your project, implement the following snippet to your CMake: + +```cmake +CPMAddPackage( + NAME nlohmann_json + GITHUB_REPOSITORY nlohmann/json + VERSION 3.9.1) +``` diff --git a/docs/mkdocs/docs/integration/pkg-config.md b/docs/mkdocs/docs/integration/pkg-config.md new file mode 100644 index 00000000..429d0dea --- /dev/null +++ b/docs/mkdocs/docs/integration/pkg-config.md @@ -0,0 +1,13 @@ +# Pkg-config + +If you are using bare Makefiles, you can use `pkg-config` to generate the include flags that point to where the library is installed: + +```sh +pkg-config nlohmann_json --cflags +``` + +Users of the [Meson build system](package_managers.md#meson) will also be able to use a system-wide library, which will be found by `pkg-config`: + +```meson +json = dependency('nlohmann_json', required: true) +``` diff --git a/docs/mkdocs/docs/integration/vcpkg/CMakeLists.txt b/docs/mkdocs/docs/integration/vcpkg/CMakeLists.txt new file mode 100644 index 00000000..d31f4e83 --- /dev/null +++ b/docs/mkdocs/docs/integration/vcpkg/CMakeLists.txt @@ -0,0 +1,7 @@ +project(json_example) +cmake_minimum_required(VERSION 2.8.12) + +find_package(nlohmann_json CONFIG REQUIRED) + +add_executable(json_example example.cpp) +target_link_libraries(json_example PRIVATE nlohmann_json::nlohmann_json) diff --git a/docs/mkdocs/docs/integration/vcpkg/example.cpp b/docs/mkdocs/docs/integration/vcpkg/example.cpp new file mode 100644 index 00000000..e5a31be4 --- /dev/null +++ b/docs/mkdocs/docs/integration/vcpkg/example.cpp @@ -0,0 +1,9 @@ +#include +#include + +using json = nlohmann::json; + +int main() +{ + std::cout << json::meta() << std::endl; +} diff --git a/docs/mkdocs/mkdocs.yml b/docs/mkdocs/mkdocs.yml new file mode 100644 index 00000000..5e66db59 --- /dev/null +++ b/docs/mkdocs/mkdocs.yml @@ -0,0 +1,366 @@ +# Project information +site_name: JSON for Modern C++ +site_author: Niels Lohmann +site_url: https://json.nlohmann.me/ + +# Repository +repo_name: nlohmann/json +repo_url: https://github.com/nlohmann/json +edit_uri: edit/develop/docs/mkdocs/docs + +# Copyright +copyright: Copyright © 2013 - 2023 Niels Lohmann + +# Configuration +theme: + name: material + language: en + palette: + - media: '(prefers-color-scheme: light)' + scheme: default + primary: indigo + accent: indigo + toggle: + icon: material/brightness-7 + name: Switch to dark mode + - media: '(prefers-color-scheme: dark)' + scheme: slate + primary: indigo + accent: indigo + toggle: + icon: material/brightness-4 + name: Switch to light mode + + font: + text: Roboto + code: JetBrains Mono + features: + - navigation.instant + - navigation.tracking + - navigation.tabs + - navigation.indexes + - navigation.top + - content.tabs.link + +nav: + - Home: + - index.md + - home/license.md + - "Code of Conduct": home/code_of_conduct.md + - "FAQ": home/faq.md + - home/exceptions.md + - home/releases.md + - home/design_goals.md + - home/sponsors.md + - Features: + - features/arbitrary_types.md + - Binary Formats: + - features/binary_formats/index.md + - features/binary_formats/bjdata.md + - features/binary_formats/bson.md + - features/binary_formats/cbor.md + - features/binary_formats/messagepack.md + - features/binary_formats/ubjson.md + - features/binary_values.md + - features/comments.md + - Element Access: + - features/element_access/index.md + - features/element_access/unchecked_access.md + - features/element_access/checked_access.md + - features/element_access/default_value.md + - features/iterators.md + - features/json_pointer.md + - features/json_patch.md + - features/merge_patch.md + - 'nlohmann Namespace': features/namespace.md + - features/object_order.md + - Parsing: + - features/parsing/index.md + - features/parsing/json_lines.md + - features/parsing/parse_exceptions.md + - features/parsing/parser_callbacks.md + - features/parsing/sax_interface.md + - features/assertions.md + - features/enum_conversion.md + - features/macros.md + - Types: + - features/types/index.md + - features/types/number_handling.md + - Integration: + - integration/index.md + - integration/migration_guide.md + - integration/cmake.md + - integration/package_managers.md + - integration/pkg-config.md + - API Documentation: + - basic_json: + - 'Overview': api/basic_json/index.md + - '(Constructor)': api/basic_json/basic_json.md + - '(Destructor)': api/basic_json/~basic_json.md + - 'accept': api/basic_json/accept.md + - 'array': api/basic_json/array.md + - 'array_t': api/basic_json/array_t.md + - 'at': api/basic_json/at.md + - 'back': api/basic_json/back.md + - 'begin': api/basic_json/begin.md + - 'binary': api/basic_json/binary.md + - 'binary_t': api/basic_json/binary_t.md + - 'boolean_t': api/basic_json/boolean_t.md + - 'cbegin': api/basic_json/cbegin.md + - 'cbor_tag_handler_t': api/basic_json/cbor_tag_handler_t.md + - 'cend': api/basic_json/cend.md + - 'clear': api/basic_json/clear.md + - 'contains': api/basic_json/contains.md + - 'count': api/basic_json/count.md + - 'crbegin': api/basic_json/crbegin.md + - 'crend': api/basic_json/crend.md + - 'default_object_comparator_t': api/basic_json/default_object_comparator_t.md + - 'diff': api/basic_json/diff.md + - 'dump': api/basic_json/dump.md + - 'emplace': api/basic_json/emplace.md + - 'emplace_back': api/basic_json/emplace_back.md + - 'empty': api/basic_json/empty.md + - 'end': api/basic_json/end.md + - 'erase': api/basic_json/erase.md + - 'error_handler_t': api/basic_json/error_handler_t.md + - 'exception': api/basic_json/exception.md + - 'find': api/basic_json/find.md + - 'flatten': api/basic_json/flatten.md + - 'from_bjdata': api/basic_json/from_bjdata.md + - 'from_bson': api/basic_json/from_bson.md + - 'from_cbor': api/basic_json/from_cbor.md + - 'from_msgpack': api/basic_json/from_msgpack.md + - 'from_ubjson': api/basic_json/from_ubjson.md + - 'front': api/basic_json/front.md + - 'get': api/basic_json/get.md + - 'get_allocator': api/basic_json/get_allocator.md + - 'get_binary': api/basic_json/get_binary.md + - 'get_ptr': api/basic_json/get_ptr.md + - 'get_ref': api/basic_json/get_ref.md + - 'get_to': api/basic_json/get_to.md + - 'std::hash<basic_json>': api/basic_json/std_hash.md + - 'input_format_t': api/basic_json/input_format_t.md + - 'insert': api/basic_json/insert.md + - 'invalid_iterator': api/basic_json/invalid_iterator.md + - 'is_array': api/basic_json/is_array.md + - 'is_binary': api/basic_json/is_binary.md + - 'is_boolean': api/basic_json/is_boolean.md + - 'is_discarded': api/basic_json/is_discarded.md + - 'is_null': api/basic_json/is_null.md + - 'is_number': api/basic_json/is_number.md + - 'is_number_float': api/basic_json/is_number_float.md + - 'is_number_integer': api/basic_json/is_number_integer.md + - 'is_number_unsigned': api/basic_json/is_number_unsigned.md + - 'is_object': api/basic_json/is_object.md + - 'is_primitive': api/basic_json/is_primitive.md + - 'is_string': api/basic_json/is_string.md + - 'is_structured': api/basic_json/is_structured.md + - 'items': api/basic_json/items.md + - 'json_base_class_t': api/basic_json/json_base_class_t.md + - 'json_serializer': api/basic_json/json_serializer.md + - 'max_size': api/basic_json/max_size.md + - 'meta': api/basic_json/meta.md + - 'merge_patch': api/basic_json/merge_patch.md + - 'number_float_t': api/basic_json/number_float_t.md + - 'number_integer_t': api/basic_json/number_integer_t.md + - 'number_unsigned_t': api/basic_json/number_unsigned_t.md + - 'object': api/basic_json/object.md + - 'object_comparator_t': api/basic_json/object_comparator_t.md + - 'object_t': api/basic_json/object_t.md + - 'operator ValueType': api/basic_json/operator_ValueType.md + - 'operator value_t': api/basic_json/operator_value_t.md + - 'operator[]': api/basic_json/operator[].md + - 'operator=': api/basic_json/operator=.md + - 'operator+=': api/basic_json/operator+=.md + - 'operator==': api/basic_json/operator_eq.md + - 'operator!=': api/basic_json/operator_ne.md + - 'operator<': api/basic_json/operator_lt.md + - 'operator>': api/basic_json/operator_gt.md + - 'operator<=': api/basic_json/operator_le.md + - 'operator>=': api/basic_json/operator_ge.md + - 'operator<=>': api/basic_json/operator_spaceship.md + - 'out_of_range': api/basic_json/out_of_range.md + - 'other_error': api/basic_json/other_error.md + - 'parse': api/basic_json/parse.md + - 'parse_error': api/basic_json/parse_error.md + - 'parse_event_t': api/basic_json/parse_event_t.md + - 'parser_callback_t': api/basic_json/parser_callback_t.md + - 'patch': api/basic_json/patch.md + - 'patch_inplace': api/basic_json/patch_inplace.md + - 'push_back': api/basic_json/push_back.md + - 'rbegin': api/basic_json/rbegin.md + - 'rend': api/basic_json/rend.md + - 'sax_parse': api/basic_json/sax_parse.md + - 'size': api/basic_json/size.md + - 'string_t': api/basic_json/string_t.md + - 'swap': api/basic_json/swap.md + - 'std::swap<basic_json>': api/basic_json/std_swap.md + - 'to_bjdata': api/basic_json/to_bjdata.md + - 'to_bson': api/basic_json/to_bson.md + - 'to_cbor': api/basic_json/to_cbor.md + - 'to_msgpack': api/basic_json/to_msgpack.md + - 'to_string': api/basic_json/to_string.md + - 'to_ubjson': api/basic_json/to_ubjson.md + - 'type': api/basic_json/type.md + - 'type_error': api/basic_json/type_error.md + - 'type_name': api/basic_json/type_name.md + - 'unflatten': api/basic_json/unflatten.md + - 'update': api/basic_json/update.md + - 'value': api/basic_json/value.md + - 'value_t': api/basic_json/value_t.md + - byte_container_with_subtype: + - 'Overview': api/byte_container_with_subtype/index.md + - '(constructor)': api/byte_container_with_subtype/byte_container_with_subtype.md + - 'clear_subtype': api/byte_container_with_subtype/clear_subtype.md + - 'has_subtype': api/byte_container_with_subtype/has_subtype.md + - 'set_subtype': api/byte_container_with_subtype/set_subtype.md + - 'subtype': api/byte_container_with_subtype/subtype.md + - adl_serializer: + - 'Overview': api/adl_serializer/index.md + - 'from_json': api/adl_serializer/from_json.md + - 'to_json': api/adl_serializer/to_json.md + - 'json': api/json.md + - json_pointer: + - 'Overview': api/json_pointer/index.md + - '(Constructor)': api/json_pointer/json_pointer.md + - 'back': api/json_pointer/back.md + - 'empty': api/json_pointer/empty.md + - 'operator string_t': api/json_pointer/operator_string_t.md + - 'operator==': api/json_pointer/operator_eq.md + - 'operator!=': api/json_pointer/operator_ne.md + - 'operator/': api/json_pointer/operator_slash.md + - 'operator/=': api/json_pointer/operator_slasheq.md + - 'parent_pointer': api/json_pointer/parent_pointer.md + - 'pop_back': api/json_pointer/pop_back.md + - 'push_back': api/json_pointer/push_back.md + - 'string_t': api/json_pointer/string_t.md + - 'to_string': api/json_pointer/to_string.md + - json_sax: + - 'Overview': api/json_sax/index.md + - 'binary': api/json_sax/binary.md + - 'boolean': api/json_sax/boolean.md + - 'end_array': api/json_sax/end_array.md + - 'end_object': api/json_sax/end_object.md + - 'key': api/json_sax/key.md + - 'null': api/json_sax/null.md + - 'number_float': api/json_sax/number_float.md + - 'number_integer': api/json_sax/number_integer.md + - 'number_unsigned': api/json_sax/number_unsigned.md + - 'parse_error': api/json_sax/parse_error.md + - 'start_array': api/json_sax/start_array.md + - 'start_object': api/json_sax/start_object.md + - 'string': api/json_sax/string.md + - 'operator<<(basic_json)': api/operator_ltlt.md + - 'operator<<(json_pointer)': api/operator_ltlt.md + - 'operator>>(basic_json)': api/operator_gtgt.md + - 'operator""_json': api/operator_literal_json.md + - 'operator""_json_pointer': api/operator_literal_json_pointer.md + - 'ordered_json': api/ordered_json.md + - 'ordered_map': api/ordered_map.md + - macros: + - 'Overview': api/macros/index.md + - 'JSON_ASSERT': api/macros/json_assert.md + - 'JSON_CATCH_USER': api/macros/json_throw_user.md + - 'JSON_DIAGNOSTICS': api/macros/json_diagnostics.md + - 'JSON_DISABLE_ENUM_SERIALIZATION': api/macros/json_disable_enum_serialization.md + - 'JSON_HAS_CPP_11': api/macros/json_has_cpp_11.md + - 'JSON_HAS_CPP_14': api/macros/json_has_cpp_11.md + - 'JSON_HAS_CPP_17': api/macros/json_has_cpp_11.md + - 'JSON_HAS_CPP_20': api/macros/json_has_cpp_11.md + - 'JSON_HAS_EXPERIMENTAL_FILESYSTEM': api/macros/json_has_filesystem.md + - 'JSON_HAS_FILESYSTEM': api/macros/json_has_filesystem.md + - 'JSON_HAS_RANGES': api/macros/json_has_ranges.md + - 'JSON_HAS_STATIC_RTTI': api/macros/json_has_static_rtti.md + - 'JSON_HAS_THREE_WAY_COMPARISON': api/macros/json_has_three_way_comparison.md + - 'JSON_NOEXCEPTION': api/macros/json_noexception.md + - 'JSON_NO_IO': api/macros/json_no_io.md + - 'JSON_SKIP_LIBRARY_VERSION_CHECK': api/macros/json_skip_library_version_check.md + - 'JSON_SKIP_UNSUPPORTED_COMPILER_CHECK': api/macros/json_skip_unsupported_compiler_check.md + - 'JSON_THROW_USER': api/macros/json_throw_user.md + - 'JSON_TRY_USER': api/macros/json_throw_user.md + - 'JSON_USE_GLOBAL_UDLS': api/macros/json_use_global_udls.md + - 'JSON_USE_IMPLICIT_CONVERSIONS': api/macros/json_use_implicit_conversions.md + - 'JSON_USE_LEGACY_DISCARDED_VALUE_COMPARISON': api/macros/json_use_legacy_discarded_value_comparison.md + - 'NLOHMANN_DEFINE_TYPE_INTRUSIVE': api/macros/nlohmann_define_type_intrusive.md + - 'NLOHMANN_DEFINE_TYPE_INTRUSIVE_WITH_DEFAULT': api/macros/nlohmann_define_type_intrusive.md + - 'NLOHMANN_DEFINE_TYPE_NON_INTRUSIVE': api/macros/nlohmann_define_type_non_intrusive.md + - 'NLOHMANN_DEFINE_TYPE_NON_INTRUSIVE_WITH_DEFAULT': api/macros/nlohmann_define_type_non_intrusive.md + - 'NLOHMANN_JSON_NAMESPACE': api/macros/nlohmann_json_namespace.md + - 'NLOHMANN_JSON_NAMESPACE_BEGIN': api/macros/nlohmann_json_namespace_begin.md + - 'NLOHMANN_JSON_NAMESPACE_END': api/macros/nlohmann_json_namespace_begin.md + - 'NLOHMANN_JSON_NAMESPACE_NO_VERSION': api/macros/nlohmann_json_namespace_no_version.md + - 'NLOHMANN_JSON_SERIALIZE_ENUM': api/macros/nlohmann_json_serialize_enum.md + - 'NLOHMANN_JSON_VERSION_MAJOR': api/macros/nlohmann_json_version_major.md + - 'NLOHMANN_JSON_VERSION_MINOR': api/macros/nlohmann_json_version_major.md + - 'NLOHMANN_JSON_VERSION_PATCH': api/macros/nlohmann_json_version_major.md + +# Extras +extra: + social: + - icon: fontawesome/brands/github + link: https://github.com/nlohmann + - icon: fontawesome/brands/twitter + link: https://twitter.com/nlohmann + - icon: fontawesome/brands/linkedin + link: https://www.linkedin.com/in/nielslohmann/ + - icon: fontawesome/brands/xing + link: https://www.xing.com/profile/Niels_Lohmann + - icon: fontawesome/brands/paypal + link: https://www.paypal.me/nlohmann + generator: false + +# Extensions +markdown_extensions: + - abbr + - admonition + - attr_list + - def_list + - codehilite: + guess_lang: false + - toc: + permalink: true + - pymdownx.arithmatex + - pymdownx.betterem: + smart_enable: all + - pymdownx.caret + - pymdownx.critic + - pymdownx.details + - pymdownx.emoji: + emoji_index: !!python/name:material.extensions.emoji.twemoji + emoji_generator: !!python/name:material.extensions.emoji.to_svg + - pymdownx.inlinehilite + - pymdownx.magiclink + - pymdownx.mark + #- pymdownx.smartsymbols + - pymdownx.superfences + - pymdownx.tasklist: + custom_checkbox: true + - pymdownx.tabbed: + alternate_style: true + - pymdownx.tilde + - pymdownx.snippets: + base_path: docs + check_paths: true + - plantuml_markdown: + format: svg + +plugins: + - search: + separator: '[\s\-\.]' + lang: en + - minify: + minify_html: true + - git-revision-date-localized + - redirects: + redirect_maps: + 'api/basic_json/operator_gtgt.md': api/operator_gtgt.md + 'api/basic_json/operator_ltlt.md': api/operator_ltlt.md + 'api/basic_json/operator_literal_json.md': api/operator_literal_json.md + 'api/basic_json/operator_literal_json_pointer.md': api/operator_literal_json_pointer.md + 'api/json_pointer/operator_string.md': api/json_pointer/operator_string_t.md + +extra_css: + - css/custom.css + +extra_javascript: + - https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.0/MathJax.js?config=TeX-MML-AM_CHTML diff --git a/docs/mkdocs/requirements.txt b/docs/mkdocs/requirements.txt new file mode 100644 index 00000000..b397d545 --- /dev/null +++ b/docs/mkdocs/requirements.txt @@ -0,0 +1,49 @@ +Babel==2.13.1 +certifi==2023.7.22 +charset-normalizer==3.3.1 +click==8.1.7 +csscompressor==0.9.5 +future==0.18.3 +ghp-import==2.1.0 +gitdb==4.0.11 +GitPython==3.1.40 +htmlmin==0.1.12 +httplib2==0.22.0 +idna==3.4 +importlib-metadata==6.8.0 +Jinja2==3.1.2 +joblib==1.3.2 +jsmin==3.0.1 +livereload==2.6.3 +lunr==0.7.0.post1 +Markdown==3.5 +markdown-include==0.8.1 +MarkupSafe==2.1.3 +mergedeep==1.3.4 +mkdocs==1.5.3 +mkdocs-git-revision-date-localized-plugin==1.2.1 +mkdocs-material==9.4.7 +mkdocs-material-extensions==1.3 +mkdocs-minify-plugin==0.7.1 +mkdocs-redirects==1.2.1 +mkdocs-simple-hooks==0.1.5 +nltk==3.8.1 +packaging==23.2 +plantuml==0.3.0 +plantuml-markdown==3.9.2 +Pygments==2.16.1 +pymdown-extensions==10.3.1 +pyparsing==3.1.1 +python-dateutil==2.8.2 +pytz==2023.3.post1 +PyYAML==6.0.1 +pyyaml_env_tag==0.1 +regex==2023.10.3 +requests==2.31.0 +six==1.16.0 +smmap==5.0.1 +tornado==6.3.3 +tqdm==4.66.1 +urllib3==2.0.7 +watchdog==3.0.0 +zipp==3.17.0 diff --git a/docs/mkdocs/scripts/check_structure.py b/docs/mkdocs/scripts/check_structure.py new file mode 100755 index 00000000..643482af --- /dev/null +++ b/docs/mkdocs/scripts/check_structure.py @@ -0,0 +1,179 @@ +#!/usr/bin/env python + +import glob +import os.path +import re +import sys + +warnings = 0 + + +def report(rule, location, description): + global warnings + warnings += 1 + print(f'{warnings:3}. {location}: {description} [{rule}]') + + +def check_structure(): + expected_sections = [ + 'Template parameters', + 'Specializations', + 'Iterator invalidation', + 'Requirements', + 'Member types', + 'Member functions', + 'Member variables', + 'Static functions', + 'Non-member functions', + 'Literals', + 'Helper classes', + 'Parameters', + 'Return value', + 'Exception safety', + 'Exceptions', + 'Complexity', + 'Possible implementation', + 'Default definition', + 'Notes', + 'Examples', + 'See also', + 'Version history' + ] + + required_sections = [ + 'Examples', + 'Version history' + ] + + files = sorted(glob.glob('api/**/*.md', recursive=True)) + for file in files: + with open(file) as file_content: + section_idx = -1 # the index of the current h2 section + existing_sections = [] # the list of h2 sections in the file + in_initial_code_example = False # whether we are inside the first code example block + previous_line = None # the previous read line + h1sections = 0 # the number of h1 sections in the file + last_overload = 0 # the last seen overload number in the code example + documented_overloads = {} # the overloads that have been documented in the current block + current_section = None # the name of the current section + + for lineno, original_line in enumerate(file_content.readlines()): + line = original_line.strip() + + if line.startswith('# '): + h1sections += 1 + + # there should only be one top-level title + if h1sections > 1: + report('structure/unexpected_section', f'{file}:{lineno+1}', f'unexpected top-level title "{line}"') + h1sections = 1 + + # Overview pages should have a better title + if line == '# Overview': + report('style/title', f'{file}:{lineno+1}', 'overview pages should have a better title than "Overview"') + + # lines longer than 160 characters are bad (unless they are tables) + if len(line) > 160 and '|' not in line: + report('whitespace/line_length', f'{file}:{lineno+1} ({current_section})', f'line is too long ({len(line)} vs. 160 chars)') + + # sections in `` comments are treated as present + if line.startswith('') + existing_sections.append(current_section) + + # check if sections are correct + if line.startswith('## '): + # before starting a new section, check if the previous one documented all overloads + if current_section in documented_overloads and last_overload != 0: + if len(documented_overloads[current_section]) > 0 and len(documented_overloads[current_section]) != last_overload: + expected = list(range(1, last_overload+1)) + undocumented = [x for x in expected if x not in documented_overloads[current_section]] + unexpected = [x for x in documented_overloads[current_section] if x not in expected] + if len(undocumented): + report('style/numbering', f'{file}:{lineno} ({current_section})', f'undocumented overloads: {", ".join([f"({x})" for x in undocumented])}') + if len(unexpected): + report('style/numbering', f'{file}:{lineno} ({current_section})', f'unexpected overloads: {", ".join([f"({x})" for x in unexpected])}') + + current_section = line.strip('## ') + existing_sections.append(current_section) + + if current_section in expected_sections: + idx = expected_sections.index(current_section) + if idx <= section_idx: + report('structure/section_order', f'{file}:{lineno+1}', f'section "{current_section}" is in an unexpected order (should be before "{expected_sections[section_idx]}")') + section_idx = idx + else: + if 'index.md' not in file: # index.md files may have a different structure + report('structure/unknown_section', f'{file}:{lineno+1}', f'section "{current_section}" is not part of the expected sections') + + # collect the numbered items of the current section to later check if they match the number of overloads + if last_overload != 0 and not in_initial_code_example: + if len(original_line) and original_line[0].isdigit(): + number = int(re.findall(r"^(\d+).", original_line)[0]) + if current_section not in documented_overloads: + documented_overloads[current_section] = [] + documented_overloads[current_section].append(number) + + # code example + if line == '```cpp' and section_idx == -1: + in_initial_code_example = True + + if in_initial_code_example and line.startswith('//') and line not in ['// since C++20', '// until C++20']: + # check numbering of overloads + if any(map(str.isdigit, line)): + number = int(re.findall(r'\d+', line)[0]) + if number != last_overload + 1: + report('style/numbering', f'{file}:{lineno+1}', f'expected number ({number}) to be ({last_overload +1 })') + last_overload = number + + if any(map(str.isdigit, line)) and '(' not in line: + report('style/numbering', f'{file}:{lineno+1}', f'number should be in parentheses: {line}') + + if line == '```' and in_initial_code_example: + in_initial_code_example = False + + # consecutive blank lines are bad + if line == '' and previous_line == '': + report('whitespace/blank_lines', f'{file}:{lineno}-{lineno+1} ({current_section})', 'consecutive blank lines') + + # check that non-example admonitions have titles + untitled_admonition = re.match(r'^(\?\?\?|!!!) ([^ ]+)$', line) + if untitled_admonition and untitled_admonition.group(2) != 'example': + report('style/admonition_title', f'{file}:{lineno} ({current_section})', f'"{untitled_admonition.group(2)}" admonitions should have a title') + + previous_line = line + + if 'index.md' not in file: # index.md files may have a different structure + for required_section in required_sections: + if required_section not in existing_sections: + report('structure/missing_section', f'{file}:{lineno+1}', f'required section "{required_section}" was not found') + + +def check_examples(): + example_files = sorted(glob.glob('../../examples/*.cpp')) + markdown_files = sorted(glob.glob('**/*.md', recursive=True)) + + # check if every example file is used in at least one markdown file + for example_file in example_files: + example_file = os.path.join('examples', os.path.basename(example_file)) + + found = False + for markdown_file in markdown_files: + content = ' '.join(open(markdown_file).readlines()) + if example_file in content: + found = True + break + + if not found: + report('examples/missing', f'{example_file}', 'example file is not used in any documentation file') + + +if __name__ == '__main__': + print(120 * '-') + check_structure() + check_examples() + print(120 * '-') + + if warnings > 0: + sys.exit(1) diff --git a/docs/usages/ios.png b/docs/usages/ios.png new file mode 100755 index 0000000000000000000000000000000000000000..1d2c1b80717bc563b8880882369b179d86840611 GIT binary patch literal 208669 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 DN4lRwR z=KIesH&OJ`Omv!}`gGcKOVD*13l3~w=r^fdTTa20anrk9ufw+P+TicKMdYDo@8py; zK^E@TnHp1)^7nofTi&H|p(ljR^?GEw?3CHbeU>IqGSo}9I@xq>S`xiIZ;9Zet@kp| zBzk(B(>G!IDYMwEmuvFXjXJAKwM=y$-6=jFdhywGuJvhKVdV{P z(_=0~tHpEZ?0T^%F;Z=b;GvHUFSotCxjFqsebtA9?5Y1Aw#&&5Q7`)$KRkIAc+cQ!214p`k7$#MNwz-Q^uMKjp~r-e;Z zu%9s1R`yub+4EY4mo^u2tyoaO?0@Cz2g`Z2rwbnzxOnpgxv@B}%u?8YR^4o&keW-RP=4j4hbx)p zhla!rz~RnOj-uYN06b|dl7lZWl{Y8$sU$Y?S19>4D7$Sz;=;pg-D_Dj#al&gFqsC~M{ z#OcS=>GA7?*6(=4r5(s%M_?;;hMfpmSBgVOjSu zSAOMm4v$?-Tcu{S7WndR-4LicEAv50W-8|==E$3u6W5%qnQ{^}Bun2U2p>#|^L+jM z*O!;gRbN`}?5tQnGgfIqVRu}&!O4ivjaXI#(!hzkhWqNMv%{ zw5z|K&CWm9CC|5Kipi#WJSg6U|9(|26C<)Pz4><2^lp zyRC8CnXK01Pfku&zH8yjq7vH}#e2qS$FjDl8!Lp)n$&FCvWewqMZnqVF8&sJp{UMA#iK5KU8MC`5-N87Y^&j0_u?*|=F$thFyVxdcxCeO(w z^;h^eT(_#cD*EB{pDSX~IgN*{--Ps@nxG)V#}VGg(H4}tV8dDUsMtd-8s3j|^Nsh+ z%9!k`^PQ8QZK9Vq_wOw(-j}7*GX(SJKk!*}Er7?*dF{;a>pWNTbY<=3xa_%u1|z#$V^sJc*%7osy342`jr4~P(E(+N95yK zXWVD55mL65Uf#gvH9fy8H8buwpPB5LZoOR|+j%Z~f^J@ZSoru@W>DwyruF;(&2o=X z@>Kh~xURwDo?hA~t3B^IE;}D;G4X2;QS(aMyQOimutv`3&amkQil-)3oaXlT5z{?j zQgxbx(RQ+XnE1EM&S}fc&s|X37|p@3m4A6+SKH03m3Q}qr1jf=b8ro7cr-(C!Bv&r z?{;Y?a@>u|UhB%B-qNtmI(PlvZ&ivGpu4Rm6}rq5is|!t)Y889N3LmjMfmnTI;%_L z+LJZy+I2S{uPpd>GkvyEqQdgGlX{+--q?MBiF-p#Uf0XZsezI!I%7nh#Y|;C|G+8g zM$ap~Iif0;0@iK4aBS7XHBy}nmao@rRxz73-$_l*u5#Y5@9)oNTE4#Y^mZ=4`;(1E zHakL~p_!E+cIYLq=~7T;{(;EMKIZYWu%*IJa&37}ve)f&`#06!?q`dsn2VFU#QBo1 zz2^5O{0p>CaNGOiQTHC5Ls8Q#pU(-7{1N&-D?}~T#h@`zVJRZ?O~7W#Z;398kKovf)%mt?`E!rx|xhI{ex5`P^X!sikqP+mD_pTdrCc zevIw?iomwzt>vYsPj8CipZ*tg;OeY|N5{CoZY-#~{j^wiPYu79(gv1ID|$@Trk&n! zXjZfTtqJp-m2Fkq&URe>#U*c9w502>(&jz}exEa&J_fcMCLe402ugoUxl?a+>+iET z;};=kx9-u(XIti!zWmgCN=5HCJmXsIUAW9-m5cG(cZiI;Y_`7dCa<0^Idhn_G-CH@ zPFq?jYkgzZfhp4S-gQ)8yXW!Z%1YtoQa!uN-e#S0|I1LUYP0J@HYdkzp9%NG4Yej4 zDb1LpG2zlP;kA08n)u_i{;-Kjg7YfwNj%+7L7LKHYk?&W-W+6`}XDXWEIK$ltAU z_$r%SSxVqcuj{K*8584vxrf~7S>hnu`q(tE^P*POH6Bg5<+CDv6;`_`IYfL}JN+kU zGy81K$uiRfyo}~$C7p_#uDAcgHvYBBbKn)i)pwk&+R|BGi@i)PA2@mGl+Y9QO`Db< zo{_iD1hZ1eW-9*h;NYDNQcM+1Q|C$N?=hSx#d@f{Wrh3$UztfC=Ny|AV?3eZg&^}uf*oOUF7UbyoW;dR??WnG*l@ms=Qb|p`Md#!8LV;u&wgX$?{~Yk<5)Cu+}Ql~wkQ|8Ub{W4 zaLwUVMk(V3XMP!4yQ$3o%R7C^L<>+@d7M<&QJuE^mto^E=G7a_H_lX_rVA?m$A9U6^+D``z;R zBFU*IUoQPTJ2D9tWMAxh`(ruX!ki~}hbtZHm(PEFV@F85ROMZ%|^;*mDV<+P&+jF#l(ib=}@?QA@8cZeF>>!Rxl_(rXfm z%eAIn6fdoudwd^v-qMVve04U@-Y-f^$$X_0bEzVbJG@0uU*wo}b8px*)=gO|OfD}g z`I0B@xjX-maGlt>n^QOI#ny3ZHGgn%kV;GtI}|BfcqKqsdMbmD$>bxEQIXq^^6W|p z`+N4(x+9tfYP0f}KA)a(Qfj$FgiBW=G!1QSI@zwZqw=Nv54QF%TUb|}F`4;{MeBDX zzx|&HvcEpOfA#IUK2v1>iXPLznXAs~Y=o87zO_>CmwtbJ{k(+SeaENPTWr!^gueY1 zG;_szfq$C4#+y1`GF^SV@wi;~1Rbs5t(!tJUf%x{vaDp{yuww^4J%dW*nU}})3quk zeCgT5qx|s&4~+u^;;SZKD%xaZ=2xer&>O69`pK_j>a%8sYTV~boKXFC>-9}SD#x~4 z_Vk7=xcEu9FmH0o2hp@wHy2LJO;j*fEm;w6tR1*z)0R6ea~4HzJNR4R``vQ+#yKgy zyF>0DySd|3k=ErMW)CLGHh$}7Fy>gJ+ViaSw!TbWWwOABv}+PE(n?zwPJJ4(OtJKt zlWb#IAA|nEP0ZZ|TEX{E6=i})Pr!pR7gljtOwA14 zvDW}HY6BWIq^2Jvyg^gw3z%- zqeS!c&mcx_UUfGF&;0f1Q~(N{a$sc&fdaFuUDwdUiRs0t)1-L|E%}awzvA9@|$I{@=m+m z<^wrJlQ&;>}t7R9xx> z=c!=HGOIsl^Xr83<{wO(@qB*$zOs{In|8n5Hd|=V$79lp*WQ@8)vS-(+mZ75d4PvV zT;}QQ+Vm$k_?*S#o&e{vM+yG}S0DNLeExj4#Z^CV-~SiZSs-y(?ylgxNipt|okJB* zY0b?I(3!U@Ol3D?^b)fJhgR_0{ZP1KaCFg;vn6YEm`X*WgYVAd!v%5LdSAUprUQ+7e z0kz2AQ%(J%n6_Sg?~#<3wtQ>MZ}|na zZOHugdj0-+MgQF^k}7I_%~V8RTwKg9b?8v;gt+>@UzdIc4Y+iQN2UlWB~CliBDE~S zy0 zGIegRsrt>|s{Uy53TKU-eQVdXWQHyL8KSmSbgG7|j1>DC2fvB;PlX07n%Kgd_KJ7< zLL-w4e6m&-W}h*=9`lCP!#U+i+HObb_~ZTZ`Yu5$&IJ409%cJzwdJj`?5TR?cd7s1 zdKG}iOunXqj=bI0oGu(VujgyVj$=~U9iBIOx4hkUdzJ&Yfpu8aCe!I}x83GDZ24jJ zVVe)y9)@LcYeeMua$m9QHfXcae+iOv~+e z%VuA>mj9!~an_OOeJpJp{zudU**AAM+&1H1eW6Bc@+D9bYn&5QxHg7WRm$^5!m@h> zl3K|usG_wraXQX76vlxYYLh zo#4BmOTG@N?w%;Yw0KIW|7F$a;)R;+i_Y18kI^i+&s+HZ`9XI1kc;i|brwaJayLHubk)Nr&Gww#?>EZDtNtBwT>AFL z#^l2+uh(vu`*>#h!4Ms}xD`hhyY+7JU=o~HYHq31y}`EtbbarfRi%#iL09-)nXLa| z+3dVYt3c7dv`x+6^dg~MNHGsmn(8@y&efQLLT|>xl^%ODUYHgY+(>NioMZdv!{L;TKURf2`*d1A zT+qT;>F1Zn!fHMf@2E>PXJOK4eS>$BjQQ^GsL zrT^V4uHAj&HFev~H0dkTu210fJ+%M--}n7CpFEh(^i7Q8cK2AeXCf#qDM^P2M10+l zI!R57XG=hi*WK2mf@zPlFBpW*EL`mO(YNib{oc4s`8RaD16N+Nn&fIDae`~lY@hN~ zwN4sm?}2mT%O5JQ60F=CbuI`+$8ug?-;=XnFiqG4|t?&+=Jz-`-BRnyQ?Rc@Mdx<6T5D4d@Gtp0HC8*Ba z=hduZJliLq)`bSi#pR$NnHADB?c~NI zr>91koVWRWVz=8Yc(5pRYt?Ud@Xje!_1VmIcDd1ts2g2gQ|@IXTz(oIyTwU#%Z7?Mk@UbnS7-|9^ikp3PISQk%E% zaI^Q+Q_H=#Jv+22^j^fn4dvzq+@R|OrXK3-WZO1DreNw*(;Hhs10$axFm>{b!iWw$4-a7!|JT{xpKVVAB=1+(j}k8IO?4Bor;DaM@I^Eg5Sj_^OhXhY6Qw*EvM_|*Z-^Z zHMlt2z3Zik)D5Mg16#VoCY*5YQw&{s=EOwhROL&Df-0EO+Pe9-f7t2t=yI-Sh_d0# zuNG!nEnZO(XYyyJPTMHKx}b2zfrCbZyQf@b1?8@kUT3Ql+qW zX3OIE{dHn19k`|@PMDq8CK-_Ma_Mxl@9Q^ZUo@Ov@LPEDJ!7rvT~Ah>WmWvvsXJ}G zSK1G0-W)+o1=V01rm+2?D|z;5#Kx9h4RwCF=0>26|A!;X!6|Ih5jpnh^R{gL{wz9+`iP_4$zJAkOJDa;sb~5RT%#J8e zTxk7vi*VavhDGa5I(-a2x;*+)<+(p`v(D5!)2o7!TIwgRScERm>Vk)l;+h2pb6BI2 zR%<6pZ7!WvWO_-z_RA6OJyo&xpvKqUiwBmS-X4|Fs+EzbY#6$HmxH9%Ve@A{C$#M{ zNLzN0ub*kY*~HVb;cplB+i5BMn6ui7^^T}caBF43?F|!LCr*zk@@xs`nyT2Xs~49( zw^Sl&XW|Q%x4t>=ggbrTOZxV@oQyo{s_n3G-K#hLCL2O0F<)t5<&vpOG+P!Saii+> z+No_<&wgRmxtJi=K2uZaWBbkHHbSt3repWO_}j&U<&G&F-rJ5=WqPbJJs5a=$(en> z-)ZkIyI=eL!aY#nP1gBpYI)`0q4N8++owF4F5WG2{?1a@E;sFcLC#0hBd1ubm|+yS zpfySOwVsZM`vRWyS6yCDguYw64f|{wvO-Ax8o16|*|mCQU(QppdCd2`HaELzT>j!R z5tJnb<_drGyaG>Ur)H+jpZH{LP+GF!A?q16zJfWG{0^&E21Nz#1ho?u)vWGDX(vdW zjADGfn{!2`mRgP0(xpasqP$8AtYUMwUd@;*7}pu{Z1?+pk7sXC3p*0Od`J7?_Zu{g zLNv7ut$e4>BY4&`$O?0Z1 z*OaCG`=(5`SkdyU<)K)Y?|N%(k>sZyi+^QopKD#dZC%5LwLbo9rdI{dob@W>#)ibK z>NiJ{$^Pe1U~X-wYwTE>tSF-SbyD5oG{y|o zW!ER#O+Guj|Ch)#PlW|b^Lcjd**3G{^z|$M4sQzj;CV$+M7j-Jr7iV6?7H_((dpJ& z)7jr2dhnHM=eREQ&Ntbh`RVK>q@=OjXa<+>L+$x{%Fn(L`tJNx>wy4Y+?Ry8BC;`c zn+&`YXJqE=6F6MHe&(e`T-=wJt7pu4QXq|^7FY%^&1crzoe zKYikYmv;_1OrCwm>GdoFYh_+#v9BkBE6%AskJJBIYR>!EIo$}Ht#ZGB;u9~ zXbnjm>pI9{6!0j>6woS_$~QL4kp?j=L2F3%aK(TILkb{cAR3@mDxYpt`XPo%GKyK| zoZ3<;x&uBU(x4mwTBY)I}R_+`UnjoAX&KX9ZKITC>Fb>SxL8laKWzex6kzzo>21^Fy*wM>HCRq;0=j#{E57 z@y^QNNLkULEgGc zFXwK*8zwcc@R(#`)lvPuUoIs+3HGr+E?T^&*sW9uBk zOd9uozZd;6=ac9$;cdF!PJeG2fG#8gErH>=`bRfmQJR?O!{yLmB*UECZ8zVDFePq_;Jp>f z4Vr&!op!J6cCJ_bB~NwFXU_b#DMB}HyG{&`t6Zv-zyEKU_AIuOX^qo<+)SUp)thBi zkfisXXS1@qCRk48bo{&loSJ-F9lBTWR7)1w{CLou)3Mfftt2z34;q;f(&ov&?IIul zH@=>L7Z(?|_sScexA{ChzD`nYL*s_9^*lz0eOD=KeSS7O|I;5|sc-3NPtwjD7B%BMW#qQcrsN6NN=*x?XKbSk-Twfo*VpZ$r6+ZjCrp;w|r^M_#`-_oE z^qI%~_I|UXR{D6wdbEp7zR4N%guhCiLGnkY(2nB03Y6sdGUeGH zi6bw5y53adu9NjrLZ5@B8w6N?Xd&N@#vuFcmc3$62~`eY(x!@97t=Hm?bs z`Tc&qy-%cMn|#KN8_E5)A`d=V`J^!?`i8i@oAz?~{D1H3|L6Q48O4X|LIEH7vSyqS!jGRIboXZvq|OaOsI2z3!FD z_1fu^u)m`O<5ujoIt>noYER zzi0E4lGoRIFPC1AH5a+PJwIMaJSt-$ui1@;1B<%#q~c7qiXSwxw|z7y5-L8ypAyox za-G4R_a0TsXgCr zWxr>0e|~Om;EtlTK1x#;-VvD`8Q`Spt+#W@%gjbdxBl~CetUsT(}-E8=9Jyam5o=jwu&%NQ=Z1>V!~_FVQ=+edxn zy98I4tf0(8Eu7A6JdSFaPK~od4qaWIsmY*t*5>n>&yV}?<$vu)?G^-uY`L9F3Ki%isTZ+s&Q#>wX)WeOU7QUiEvylkGlM zWp6xscn`bWa)@X;^&#Z!?nfLpzu#}l@Pr_;^1NIv&zVl7(XGtFz-cB2WV2c)OYw5c@u$8Q~Rq9?B{F)21=+U$HI{n%ix ze?6yql*D3czg`XBnPqxn_4WV4GCC6dpVA_|j7&Ei6_1xW&NFH2uGUw|pzWUPwqA>3 zVdIfVV9E@vO1v$$gGb(Oj){yxnyRsu^XkLaClp_JILF=UnIt*&Ve0A)s>0j8A6^^7 z53YS5aBNXy`ntrZ>Pc#zhh3$#UGcT_2bzNC8%}Ll6x`k>e@v*i=|CcLBBz$~w~5N` zO1;AW>gUSa^>Uel@ns+5my@n0 zyxeNEqWrS2x#HwyP04KsLc?QSpHx1d>po-a-lPNOcM6&%i>^hc7j`y3HOh*57XJGF z{{53Ar*cmJ`>AQK+KdR_r73QyJ))7Ca?qAZMl{PSx756SKht=nzxB*>N{u+QC?>Q% zvPQWiM?uFub%yT+lNPUy{!cQ$HJ&JZe600q!fHL2)QEz`Jr}F@NJZ`x*}Gpk@Mnmc z_tJn~gFB}})Gnro&E=5Xry-GbI!ly;eYy$z5!KZPrv*r6u)9cZ{8h!Zg{;mmS^jsDT)VL5>LAHSZ&z1UytgRTN?uU~F8>?ToENx;xXIs0P)PsC z?!UK3xJUI{(&oUK-1>Vaq(6OeVbwj^@;iZxx%1;cuj=57n0Rc}y4c-Z`qCVg$*PkU zf7F?8uE4S>>F|uW3dKpC2E4r%IWt}!n0e$>fZes@PJXIlQxDcJ&R_E}N`Ozo@8oHj znKd?MrfQ*Yx6kpKX3KS@`_z*wt`SL#PU_6PCjDcFt=_H|N*Rpu_gXn#nVLv3+c+n! zWs7!771(+!YxT;k2TDbg0vE;oQM)%oSTnxnqwCTXuNV7uU)%rxHcwW5+nu}43=BFx zo-U3d{fd!dQ!PK8P@Wpw-O+o>p?5s?#>TlY??SMXq*9sSu zv=;BXS0{Pp@Yg+VsXC4l38or{n`QoKuiX-qvNrCi>fg!!b|+P(Ih;AU<`*2|RMB|C zyX4{&_MJVa1Wv9HJ~c(ZQNmZQ^VEbl$E5SOq`X+OeTV4bL;OM^a!W&3iMaagUC|RM z$hO7ET+94oikUfwYp0afvkA_8hBL#Ob(a{`Jas*^QbAa+po8D?$cDtjQ-ZoL=o-E+ z(yr^)-KJpFed@xxDL(mm(o+LdzMK{ln{+-%S}$_*MkiZvP0*lx!Gh(Lb81EU)T`6? zoRHFr@<^RA^}>V(WtB4?H}n)+f~7eYE4ExN(K^h;VY{zAgze#q-1%j$3i?at)Ox^4!;LPmxd&5{? zW?%G6<*|k2`3pH5Qx+PXO>>U@^6>WOJy(;sdsm-I$x)NsEjeLQdFziqK37vN2c;}J zsgit*_dVZc?=_oGE-Jq)WR%wpjjqWG4?>oCY8|=?&10bD>_!|GQ#G4sJuifG2tYz= zjt5ryOb%&T{SZ>fg2F0Qpg=2_&Gh_ZgphAjL-0(sl^o%R5nYi}ARBnH<{d`}&0=9( zZsZ#zxULQ23Q#9y3djb@D>nTIArnp}ztmYvlwx=hT@j7uhTxe-D=Os>LK#9Vb55Cf zy6%vIwxRnPlmplpmm8%9e6~RdT~Gnd|4!;EFh!c3ms+dW9D3;{of{&)m3v{u`@P>K zsw|7TZdX2^TmN-+yzZtGN|u?6yg?IWVKL=*O9N{vex0*^|L4>6{VI~jL1)^25PJCQ zkpSoX@_UsVUo2?m>w5IIEi^LhLKM}++iqD4}DEM+YU z6vT3OJZ#hKwC#nIp9f6(9saI7^W)>=?X!wN_pvwiJ9-NCwnKPO7(?>u%;~_3>9yyze zJ39(bRUeZ~U$ghyEvfzGHxk=}{VZE6>Si9a{CGros+!cH@3-^qZN$Q33R#^#^p(87 zH+Sdk^82;Z8|yDDaNN)s8XjBv<;BHQ(LZPVr)r4&U3&gr_50e(zUH2XmUvG7_3iEM zBSPK=tZd&`oz!lgC-mdVWdE>N$%f}`zt5TUcH?n5u9(WFQ_H40v@jcTyt%ymd{VdW zwl|wjzuWiwoxknZDNEOjsxCGvzf*YJ>~_xOt=Zvkc++q4S-&xub;R(vOtPziFuRLw z^|vLS1|LB;L!|$lBUkgmG4jg=Xa2}CNR|44V@ov4EB{nb+o{*2XIazN^Y#BWC%pr$ zs{q|y)wS`yj5n8nvC!BfrWm~ULY*sb@`s*e&!*YEjs$|b9b^VQ-v z7X{88@J!-h&$jltW%YUubMwYvCQ!R~ll%UkA#BscxEf0*{=HZIes1ctNS%2*C%KBp zPPu%9Q|+h9uF}_HnL=~W0;OW?fn6%}3RP(AFr{~{p=U@Nh$~E=pQT@7&Z@1l^SNrYe zn((Q4+`3x?&dsR(em8tqs&2s9c$e zN2=BDcBcCoFBO^C|MgmQe@c?Q#HWMo@)7GMoT~YHHC$--oubpdlE%+wWv@GE-WtW8Kz`uW5GF}W*I(~Z13P$fA`y~tKDC8o;}rSUN?vR zjElilrzE%C)yrh0l-KY57S-Fde&4TEEz1KWkCm#X#W~;9-~GnuXvT@-2Nzs^VLt!V zgc~cS8X0X>`FSQzvu*nUtI}64DO^(z)}-41da+p9_fW8M_w)Jnb|1IZy_i#cZexn# z)Pt(Z8-4h+7@ujo^+^WKESYjf`}5!L_q`MT|NE;tA=KzdOUSdc=J&6te%@rD?8(Fz z{UIew`+$|=CWp0kKOVNfm^9xCTJ)N;+-f+rX6Lh6JA!wF{pp0iaQ zrzXt%DkJst$5TtWWlWO|EuXI7(Y91M7`Eufom0zZ=Xp7v$%qh4To9(!92@lST6Dgt z<=*P=YDTT6KHTct)GuLpXj3@b6V}8f>5N?A`+vXN-6v~3NiZm*(^)IIhP(gbr(nL% z-76G8&UZq%H+ijnmoK+dOue}$|{Fy=LM!K z&fM6TY#Nri_KeYKox>}|HiaBITWlj=8~E$zv)TO*L8n|jzp{eo{=Vd@)~PaHi{od{ z$x@tpP*<_hC&$w~aORqwJy9!pva3}7Z#*t%eA_g3l2dAq;rpG>=Vjkq%+SZRvvPsa zp6zQ6+ZiOETQ%X-hnZqqlx%x+t@L(0V0z*nvP?iVaOQ{IMr$5Vd$|2>nKYBLR^DnSEZ}VB=$cKK= zU0$0N&3ryRoA|6}+x@!gOWmg)YQO3vSZu$M%Gn;ib9AJt`Rpf|oaZYGn!SlM* z=e9wB_SB6#<))dUah8yi_Ff6mAjw;uTSA!?xI;awA8eTVSk0aBY~Z2uHBFjM$Na%Vb{Xv)TRKj~ z6rEJvb4ysR$M)Mkp?$(_ao3s*{FiL>3Q4=MA<^n-q0AAnz42M?`msz)ovfO#zEcmLHRes4yXv6T6X#o7s??Sk?fI^EcgC%z zRhu^b{&1LI-SDg5+u5;+4)3QQOgikr4{Lb%vqZV1{xkmd_y2KD^*JAoipO`%DrjZ+ zClt{U)OpGwPlxe-*hOt8o)1+l&ue27bb?d?NN-m zE+lsLd(nxc&cog<|9_sZ=gN)K@7KF2rCd8fZHdv6Df5|6?%B08{20gQm*SkBON`nk zX}P|h1;pO=XADiXJ{64MZi4%L; zx>X`cY{#!xt4pVbAJ7S6+|DeCOrrX;koXQ7JL;pnI}8DgQX zMK993R`AR?@ZrNFk4mN~dHMFPZ6B7(sCvgo3wwSDhIH5(GdUZLLewtSO-p&@trdFN zxc@+ULWK1pmr2)-w49W<{qNKC{SO{+D(m`GeR{P2;a%0=8|KC49%5+wu&y_4$`ZMC znqgw;z6+krIH05`$Z9ud^5ivlRG(Ef%q`!!d4j&8*y>8wxic3Z+9SfX`03q^e=Z&E zDZF>VgDbU)31+`sBU{kSOu60Li~{ns%966QS#NENsZE}+efRA!Uj4g}Ug`p9FEFrK zD#ve$_^q40E821{y9B9Coe`UKj&J=vlf((q(7y16AkgfX$U(D{=P$+DEj^qaoEuan zE!O4Eb@*_t=j{MV{aa8&B|%+Fo~;k8pyddtYv~EXUQMNk>|!oaS&~rH}EIrq`g(IJBRu3Rgav{d$MyidUa}YuoctCyfwx|MGqzt@2$^g?jeDr?1!J{b!lH zJj`#OBOm%a%uI&yy@M2Ap|og#@l?=#7|TxEg~e4q1+6eEs|BqIeS0ghUG~kT((AF} zaa@PDYy%zJ4Z60W{@>5==-jOzA0KZIFFtfVuKI0Qbney{i@MKQKA)4lcI!1kcbSET z`s$~J{cQ?gENl-tbt`+lZN`NK+wWCr`~3Oy`Mi9^gGPz1$E31licToz@B5kdD|FWb zP^0H&>h!xMmwiF~itqQT_0L30=5?w~DtkV+eBG8yUVndo?{BgHbV51f(&lu3gM&9@ zd_lK)ga#<)1q!Y$wt{x0ctKq$uRG{nsZ>yd*D>(t?S;`>Or9@nm-}`1ecku&_&-iRE{k5U*#GO*YP0M6OGPyH2nQ$JLF$LC zU2MEmWYyiQSs}VBOsyw4X-I`Pzu)uuoPPaJ@4FWDe;&&#Yb>fWvg#G`cU|7Q)M&xa zZ@2TMWw>>>O!)BBy#3UiibtJZ%L==9gSI%CDuyzL+-sB0`!W0epR^+#f}kbcC0Soy zT)dsL*>}2L?6E%CXjATq{Puqg4o_O?lCbS&n)2>T_Fu0A7oWE+uMqtkU;Fjyl-1_< zYd-TBpAmTW_icXtY2`F!lZj{g?S64=a_Y3L`oiJ8P_sQtU|w>cWnA6Qrv|;P-1+w2 zH-9zO|9u^Qh3{AKbkKDt8W;YAJbN17p>3FwtoM= zD(?exqCSb;>(n&(_WC;i7f`=2Z1b*ww_%r;Y+4ZZ&Vg%TMhx$#CpqQ4yG{x8cI_#PDISKrut zQ=IcCZ_meLo6lLTE`EM)&L@G-pU>M*j&oi7VgCO==`3Y$ZcJQV{bpmk%hQ;@kGl0$ zvVK0DzW;Hb^*PJuGIPUzdHbxMmQi#ob9wH@qhiNSI%zQ*&9y3Z%Kc;bBj=pm@0?zN zsc)laiQKDOR`8nrg1oZ@=%(|j=T>|}bXDJbem>PBX?$$fcBb$5>+2W&)Z81oa79$> z1Fs{8zhCm!7xl`U%+mTSU?HgeAbM7|{HSR7hbf;9aqB*R}>9XGCsuA6zPkBobvI*VgBb@dcE)W{nq>c zYDeK?6?XNVpX93FY&>$t;&D%?tg-GzmY+VoD=q%Eg*>~NK0j2Y*ymEp-mlk`+m=Vq zb=%*%{r~OL-9!V%B9ni^xl9* zEdIeyHaiAMp0{|+V>~(Y6r^iixbX4e;8`!`-O1noHzB8|m1Cj* z@>ZFG1B@Uynw#YcO$m!F4UH*Z79nDwb@B&pF3v^)Z zUa2p>Z1D7oXr98<#3UgN$;mAokJ*>=*dH=)KgA1r7J## z-HvsyPUV^FEQe|ZL^@5 zfk`v6MdeW5AEO|(|KF59)_gwOuJ~~BMz`0c*CO2)6-;*7T(snV{r|tEU(Xny7vX!T zzu|S(3-PTiu%Uxw&55%Tnto|im-ss^@#v}AB0srpo`Hn5YJy9c(;M^FQyr&_7cQO| zAgq0D(P}YHV`qyP-C32O(+1W3=By}s+JC3)c5bK2<7cz;<3c^`dM>gA@0&CwT07vU z+7t2ct1>t9_UmjoTo$(Hq-EB}9i=z^B* zOY_A~oV5L3)oL9hbw(|mM4WuJiM^^j8V6vqcO9ypRoE2u8(VS<}6#w`su1# z?t|(dH|2wllauLn}R-7tle|wjYiw@T{WgzS5>AQ z(-B(Q5^`+aC$G~7+2z-SSznJSo*6jJq4Ce{ev?*P!R@?O2jm{8hR2qMZqK`$vSXUX z1G&c{wvuuQr2#&EPn8y3GjTswd^>%9?J=LFZ7G`q^m5MIyxM-hZg-l0&ou3VkLB6gbvvI)Sqe%vnC4_}QLr`E*~))8uiM?V`O(LqN3-52b>A{G z$~+umsONl0=EvtNOP?H`m%rm@;rBbm{wt6F?I_4|TXs=s6tfjCVawY?^a3(N0k_c(qy@Q=^Pla-4g~fu)J>78zJS{BygX%ni~vFzT{bqQ%*nuQROC&)MXi!<^!IyF6z&Hbbf+BwI+Y6$YS^U zUa>O^JDS2pC-EysI!MoSyJ&Lcna0X}`hqK*gt@xA4JP(}`~9d}pKHS2Z?{e>X)~KB zsxCfyEA&RcQe}_gCbiuj>$ma7C$dEvNfxRKsKs(rFMKEvv*e@Jv|GlPC(bdtG2>t2 zf)9Q@2`O2gt7aV*{j{XCNHau@_57+{<0~@@7T$WhoLRGF(LU1^T@PHvOqt~#cN(6T ze{H&UnbJFRpJ?I=qN$LMkuUIe(@rd3IAbN(xjJS8FBNuCK9tR>&E6?EZmd z8D_}Nde!{8+XJGuS$~0 z_`F_e&hkYUd~-wC>{9$+O%hvYt+~)M!-H>XqN>sRGD8~=ZMg>~PeszyV=8_>{qC|V z_06fMW+v66(g#)a8gAQkui#nw*+$pr$J2*G%b1=mOSIHVK3{)jR?F=gM*Wk*&BFJ( zIGEj1H?Ycy$(?zsxztVn%a)!=n*Kr)1M^dtKR7?BfbVlup!JgL8G=8r>P(+Hi9b11 zYx3eHZGT)A_{`K1&N_OeC#a!qRn{X-ja?%1ZdF%SY}1kBnL0gPT`7B0_m`~OYy6EG z&9q$}D;mjvb2_}1(b>A^OY!N5LQr^b=?c)x)4rJ}9C0Ljl5Oj$B@ZIE7PeUl>xJz8 zTcXe!aAiANsGwAggh1p551u74pQUX~qI_NNs9J4J362FF0#~~JPQnhoL?IT52cK8+ z=!xB(aONVz(~Iu%YlC+_jZ_L3jh8FAa{a|d9&tVH?_YRY%$wBHthR!N$3j0(5^8hN ztXQ?sZrU-oeW12t*OpA>szrZRd!0Y!Ym)d^);lS(Le)9Kd6sMHsmvrU;S&puroCCQ zxNnl0Lh?j0jXi(0s+Eo8$lyy>Nz271r9!^U6!cq z_mS~v>SZylOwDOo7qd>~)YUB)Ia^EGrpFXOX9DlOq6D8 zTx7JtoO62hWR^2qW$m9fSl*Q2oK#f%GFCKDaut7yMSy4+dv~g-`K1}tT{sp=xuiy{ z7gkDm=oTPZeJcF(woN(rklf zzXVai$s4X+a(Z@9+9#{7#Au2C5~FJjTJDj$>5ghl+===oGE=WSkhC$G+xz(Dnm(r1 z@+6kUzN#C{Zn}KzY5#;Hkmasl{kQtxr)#rcX*|-qm>IG#_+n=AN*;$7yy80)leMm> z%s(|_cFBzmi3L7tj&E2q+kB$82|et--^wahBJ5*q==SN~le^{j&tCA@1lqg0@4St6 zpj&Al&(bw2Pcx74?YXlgMU*wyX85nwm&QL?gcy**~j6YxG$`8ru$-xq$A2J75pkchlQ^+(mZ^oFDWD}I#4o) zr!XMm^b0O`{nu+9u#Sfyjr?yv8#%Tyqj01##Bv{g<(D+*B|P~ z`O8T#bg6D!v;O(AG+W8jTUcdRAM*5heaWIXm^WO{@Iri{;EK*^dQ%r0*;HMuR+y0K zQhTX*Ugficf$^XM{=^jS*vM0 zpHc!NW4PvpN~f!=LZtmAN>5rA^BQnAI0v$8TVGZGY_tAU*ADLzsn8c8CASK+lD*@O zaOM=O-SuX=-r;F$KNJeuehfDMH0k2w*LrJ@OlL1w(|@t&1N#AwAG37lD)ifNbnc5u zs@%HG?Qimz)z_7OF6w#o@#YEV1DedMRG!3Nbzy!fdF5-Z&7Egay%}5)3tDH*nB%3z zyis@_!-+?1HbI-6-Pmj_R3<_5(x((hxE zSerjxdbwGNF(PCwkKBvSaxZ7W%z&w$V!kE~HvSJ&@&%?YY<8=7niwbfQs!@#p#Q@c zslweRifi{It4z~q^JI%{&3(4zRfZtv$#y|!DVJ296*aQr_jotn@gW9SB*K7;rv}SIDVQ|%iaqGTNc%Cw&VT!WcC`9`7;h#8)k{7T)ZQ1 zRqXw$wMjG3TVY)AUlW0GDTfuKTuZA`OI{3`7>9k;1T*#bXhM5cpkRJY3I zi!QeXOUiA!s{BDpaL1EiNudW-oc2nGW{aOWcjNT=HEkzn#j5G&uiT*4kk}k3_MKCY zv9@VZR;@$S+TYzw-|UMC`%kS_iHCv}_{De*cbIB5>-Xwi?NUCV6tCU)l0k0k zQnvN~Zn0Nvnbc`MZR@9FtD1wC-CL5juX_wa+YhflWey-=W;<}%^-g^;y8BKJC{8Wg?$7#Y~y-SnmN ziHlY<-_MG$+&L4UwPtOf&$mRN>({jfYs(&qUR)9MMyOT_5u##&GmqWu^q$Ec|68s0 zF_+eqp4U@5Q~ta%lWULswBAVbFxQbal^X;6ye#&wsp0fd|M*EnIQLt??D=;8weo~~ zE-&%CIz{Aol*~QRRdbFlI(&3}oTR>`&GJu=wEYiUsk`PD80ww#%%kUN@6-zmJ#-nE z^8L~t24woFsK_5X^`^96Gtp^B6l3y%)WVAX#A-@6C(ZUxFOH=Nu3eXc!C-t=~Z)SVQ>u&+kD!`&4=TRwX) zG^>ekl(oKj##mdmn)Som4{LNKHW&FG{`ki6@G^rpI>x-WUo3+Ud2dy^kQTD6==)ZW z(zh?dO1*z+q*`0Py}n-lKIhi64{vo|&07W=fu7LsaCZgI?!_BBKYHu$of1DUwp1%Q zK!t72DHW!tC!s^ew?vszSAe#o?Ytb)}F7=;p_k3RUyWj8k=O1-#T;(;XP4@1I z?y%E(yWhOq{r=yTVEC!nO=)nT>ShTbin6$ue5mF*^|+ccV?!~>)b1|Or<(I z*u?N#;TM_4Db|^nmh7wjt+(-r5a^Vp6BbiBUmrRQi?Rj*4d+ye7)8koQ*NfupL^ih z?EJnp8Een%{eI8-w9e*&(Bm@2XBM)Y*4;jbOKfUm&>5@OYySJ1%6@s;XZ`;c>~bnQ2Lu2Am%%HU7T1xOnxor8`(NeLQ~zOxKI;a0H$H z1v&uzQr5#(@qa&`&(~b!+|CzsH1zY$^!b5ZI#ER@RVU7$Kb>Xj(b~^v&DUhRDclpu z?0DRDxlh)*?)Tg6KbbDNGcX-0JT6=QuvPq#s*-+t@XS?L-%f;v^;@yVPa$k!2Yn_m ziU&!i<(j+$T^a3lp!(JN=@@Z1Ontxp>j0*}v#WkN! zs?W75Rl2mYhv8#9EH^rEOj&NUgV#yGS*!T-S@Uca&{`v%ULlu|w6mtyx3Ea(Y+&5E ztNi`C86Br=KA$n3v@(9$X&z~_9>#l{+!+hI13WDzd=lFEXNvQkCXYXEDd~#cqK(!p zwGRx1qGxR1WMQ=FfGbm>&fcHTW^>)I{eCy*lz7KwkIwwPU&AyH=>OAFntMt@0XB76 fz~b=WKSR{tbP0l+XkK-M1jT literal 0 HcmV?d00001 diff --git a/docs/usages/macos.png b/docs/usages/macos.png new file mode 100644 index 0000000000000000000000000000000000000000..107b5f07fd5993ce241e2ccba0664f5b8c2084dd GIT binary patch literal 1305068 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

-YNn;rIws~JMySn2!ER?g1-w9m&buAzF9!t=Ng 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

EB7QIUTmIXy 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 z%0D@*^_QXzbb_9WzpbB8B&)S`cvv=HOcI3|U71~cv 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

W55Bay`{<8)3*?jt& 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�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

MIKL$O_tf(9HUS{;>VpC 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
;1 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

!Ez=nmM}})G|DOmU7qG9aXD36Kz^MCGN3; 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

MZmiw6QVb7&VuP`~cI3woJ`rqv5 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

lTTM07Kdt9 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

B8ystii~xgFn76Ha^T_Ej(wLTW9lw29=%yM^UT@ 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ð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 z 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
g}LW}9y*ey{uQ!n}*W`tmI& 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

kaO38 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

(W*vy5#;$%$z-` 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 ZOwIGl9z}%yWME)m@O1TaS?83{1OR2M!)O2i literal 0 HcmV?d00001 diff --git a/include/nlohmann/adl_serializer.hpp b/include/nlohmann/adl_serializer.hpp new file mode 100644 index 00000000..56a606c0 --- /dev/null +++ b/include/nlohmann/adl_serializer.hpp @@ -0,0 +1,55 @@ +// __ _____ _____ _____ +// __| | __| | | | JSON for Modern C++ +// | | |__ | | | | | | version 3.11.3 +// |_____|_____|_____|_|___| https://github.com/nlohmann/json +// +// SPDX-FileCopyrightText: 2013-2023 Niels Lohmann +// SPDX-License-Identifier: MIT + +#pragma once + +#include + +#include +#include +#include +#include + +NLOHMANN_JSON_NAMESPACE_BEGIN + +/// @sa https://json.nlohmann.me/api/adl_serializer/ +template +struct adl_serializer +{ + /// @brief convert a JSON value to any value type + /// @sa https://json.nlohmann.me/api/adl_serializer/from_json/ + template + static auto from_json(BasicJsonType && j, TargetType& val) noexcept( + noexcept(::nlohmann::from_json(std::forward(j), val))) + -> decltype(::nlohmann::from_json(std::forward(j), val), void()) + { + ::nlohmann::from_json(std::forward(j), val); + } + + /// @brief convert a JSON value to any value type + /// @sa https://json.nlohmann.me/api/adl_serializer/from_json/ + template + static auto from_json(BasicJsonType && j) noexcept( + noexcept(::nlohmann::from_json(std::forward(j), detail::identity_tag {}))) + -> decltype(::nlohmann::from_json(std::forward(j), detail::identity_tag {})) + { + return ::nlohmann::from_json(std::forward(j), detail::identity_tag {}); + } + + /// @brief convert any value type to a JSON value + /// @sa https://json.nlohmann.me/api/adl_serializer/to_json/ + template + static auto to_json(BasicJsonType& j, TargetType && val) noexcept( + noexcept(::nlohmann::to_json(j, std::forward(val)))) + -> decltype(::nlohmann::to_json(j, std::forward(val)), void()) + { + ::nlohmann::to_json(j, std::forward(val)); + } +}; + +NLOHMANN_JSON_NAMESPACE_END diff --git a/include/nlohmann/byte_container_with_subtype.hpp b/include/nlohmann/byte_container_with_subtype.hpp new file mode 100644 index 00000000..91382cd6 --- /dev/null +++ b/include/nlohmann/byte_container_with_subtype.hpp @@ -0,0 +1,103 @@ +// __ _____ _____ _____ +// __| | __| | | | JSON for Modern C++ +// | | |__ | | | | | | version 3.11.3 +// |_____|_____|_____|_|___| https://github.com/nlohmann/json +// +// SPDX-FileCopyrightText: 2013-2023 Niels Lohmann +// SPDX-License-Identifier: MIT + +#pragma once + +#include // uint8_t, uint64_t +#include // tie +#include // move + +#include + +NLOHMANN_JSON_NAMESPACE_BEGIN + +/// @brief an internal type for a backed binary type +/// @sa https://json.nlohmann.me/api/byte_container_with_subtype/ +template +class byte_container_with_subtype : public BinaryType +{ + public: + using container_type = BinaryType; + using subtype_type = std::uint64_t; + + /// @sa https://json.nlohmann.me/api/byte_container_with_subtype/byte_container_with_subtype/ + byte_container_with_subtype() noexcept(noexcept(container_type())) + : container_type() + {} + + /// @sa https://json.nlohmann.me/api/byte_container_with_subtype/byte_container_with_subtype/ + byte_container_with_subtype(const container_type& b) noexcept(noexcept(container_type(b))) + : container_type(b) + {} + + /// @sa https://json.nlohmann.me/api/byte_container_with_subtype/byte_container_with_subtype/ + byte_container_with_subtype(container_type&& b) noexcept(noexcept(container_type(std::move(b)))) + : container_type(std::move(b)) + {} + + /// @sa https://json.nlohmann.me/api/byte_container_with_subtype/byte_container_with_subtype/ + byte_container_with_subtype(const container_type& b, subtype_type subtype_) noexcept(noexcept(container_type(b))) + : container_type(b) + , m_subtype(subtype_) + , m_has_subtype(true) + {} + + /// @sa https://json.nlohmann.me/api/byte_container_with_subtype/byte_container_with_subtype/ + byte_container_with_subtype(container_type&& b, subtype_type subtype_) noexcept(noexcept(container_type(std::move(b)))) + : container_type(std::move(b)) + , m_subtype(subtype_) + , m_has_subtype(true) + {} + + bool operator==(const byte_container_with_subtype& rhs) const + { + return std::tie(static_cast(*this), m_subtype, m_has_subtype) == + std::tie(static_cast(rhs), rhs.m_subtype, rhs.m_has_subtype); + } + + bool operator!=(const byte_container_with_subtype& rhs) const + { + return !(rhs == *this); + } + + /// @brief sets the binary subtype + /// @sa https://json.nlohmann.me/api/byte_container_with_subtype/set_subtype/ + void set_subtype(subtype_type subtype_) noexcept + { + m_subtype = subtype_; + m_has_subtype = true; + } + + /// @brief return the binary subtype + /// @sa https://json.nlohmann.me/api/byte_container_with_subtype/subtype/ + constexpr subtype_type subtype() const noexcept + { + return m_has_subtype ? m_subtype : static_cast(-1); + } + + /// @brief return whether the value has a subtype + /// @sa https://json.nlohmann.me/api/byte_container_with_subtype/has_subtype/ + constexpr bool has_subtype() const noexcept + { + return m_has_subtype; + } + + /// @brief clears the binary subtype + /// @sa https://json.nlohmann.me/api/byte_container_with_subtype/clear_subtype/ + void clear_subtype() noexcept + { + m_subtype = 0; + m_has_subtype = false; + } + + private: + subtype_type m_subtype = 0; + bool m_has_subtype = false; +}; + +NLOHMANN_JSON_NAMESPACE_END diff --git a/include/nlohmann/detail/abi_macros.hpp b/include/nlohmann/detail/abi_macros.hpp new file mode 100644 index 00000000..f48b9eb1 --- /dev/null +++ b/include/nlohmann/detail/abi_macros.hpp @@ -0,0 +1,100 @@ +// __ _____ _____ _____ +// __| | __| | | | JSON for Modern C++ +// | | |__ | | | | | | version 3.11.3 +// |_____|_____|_____|_|___| https://github.com/nlohmann/json +// +// SPDX-FileCopyrightText: 2013-2023 Niels Lohmann +// SPDX-License-Identifier: MIT + +#pragma once + +// This file contains all macro definitions affecting or depending on the ABI + +#ifndef JSON_SKIP_LIBRARY_VERSION_CHECK + #if defined(NLOHMANN_JSON_VERSION_MAJOR) && defined(NLOHMANN_JSON_VERSION_MINOR) && defined(NLOHMANN_JSON_VERSION_PATCH) + #if NLOHMANN_JSON_VERSION_MAJOR != 3 || NLOHMANN_JSON_VERSION_MINOR != 11 || NLOHMANN_JSON_VERSION_PATCH != 3 + #warning "Already included a different version of the library!" + #endif + #endif +#endif + +#define NLOHMANN_JSON_VERSION_MAJOR 3 // NOLINT(modernize-macro-to-enum) +#define NLOHMANN_JSON_VERSION_MINOR 11 // NOLINT(modernize-macro-to-enum) +#define NLOHMANN_JSON_VERSION_PATCH 3 // NOLINT(modernize-macro-to-enum) + +#ifndef JSON_DIAGNOSTICS + #define JSON_DIAGNOSTICS 0 +#endif + +#ifndef JSON_USE_LEGACY_DISCARDED_VALUE_COMPARISON + #define JSON_USE_LEGACY_DISCARDED_VALUE_COMPARISON 0 +#endif + +#if JSON_DIAGNOSTICS + #define NLOHMANN_JSON_ABI_TAG_DIAGNOSTICS _diag +#else + #define NLOHMANN_JSON_ABI_TAG_DIAGNOSTICS +#endif + +#if JSON_USE_LEGACY_DISCARDED_VALUE_COMPARISON + #define NLOHMANN_JSON_ABI_TAG_LEGACY_DISCARDED_VALUE_COMPARISON _ldvcmp +#else + #define NLOHMANN_JSON_ABI_TAG_LEGACY_DISCARDED_VALUE_COMPARISON +#endif + +#ifndef NLOHMANN_JSON_NAMESPACE_NO_VERSION + #define NLOHMANN_JSON_NAMESPACE_NO_VERSION 0 +#endif + +// Construct the namespace ABI tags component +#define NLOHMANN_JSON_ABI_TAGS_CONCAT_EX(a, b) json_abi ## a ## b +#define NLOHMANN_JSON_ABI_TAGS_CONCAT(a, b) \ + NLOHMANN_JSON_ABI_TAGS_CONCAT_EX(a, b) + +#define NLOHMANN_JSON_ABI_TAGS \ + NLOHMANN_JSON_ABI_TAGS_CONCAT( \ + NLOHMANN_JSON_ABI_TAG_DIAGNOSTICS, \ + NLOHMANN_JSON_ABI_TAG_LEGACY_DISCARDED_VALUE_COMPARISON) + +// Construct the namespace version component +#define NLOHMANN_JSON_NAMESPACE_VERSION_CONCAT_EX(major, minor, patch) \ + _v ## major ## _ ## minor ## _ ## patch +#define NLOHMANN_JSON_NAMESPACE_VERSION_CONCAT(major, minor, patch) \ + NLOHMANN_JSON_NAMESPACE_VERSION_CONCAT_EX(major, minor, patch) + +#if NLOHMANN_JSON_NAMESPACE_NO_VERSION +#define NLOHMANN_JSON_NAMESPACE_VERSION +#else +#define NLOHMANN_JSON_NAMESPACE_VERSION \ + NLOHMANN_JSON_NAMESPACE_VERSION_CONCAT(NLOHMANN_JSON_VERSION_MAJOR, \ + NLOHMANN_JSON_VERSION_MINOR, \ + NLOHMANN_JSON_VERSION_PATCH) +#endif + +// Combine namespace components +#define NLOHMANN_JSON_NAMESPACE_CONCAT_EX(a, b) a ## b +#define NLOHMANN_JSON_NAMESPACE_CONCAT(a, b) \ + NLOHMANN_JSON_NAMESPACE_CONCAT_EX(a, b) + +#ifndef NLOHMANN_JSON_NAMESPACE +#define NLOHMANN_JSON_NAMESPACE \ + nlohmann::NLOHMANN_JSON_NAMESPACE_CONCAT( \ + NLOHMANN_JSON_ABI_TAGS, \ + NLOHMANN_JSON_NAMESPACE_VERSION) +#endif + +#ifndef NLOHMANN_JSON_NAMESPACE_BEGIN +#define NLOHMANN_JSON_NAMESPACE_BEGIN \ + namespace nlohmann \ + { \ + inline namespace NLOHMANN_JSON_NAMESPACE_CONCAT( \ + NLOHMANN_JSON_ABI_TAGS, \ + NLOHMANN_JSON_NAMESPACE_VERSION) \ + { +#endif + +#ifndef NLOHMANN_JSON_NAMESPACE_END +#define NLOHMANN_JSON_NAMESPACE_END \ + } /* namespace (inline namespace) NOLINT(readability/namespace) */ \ + } // namespace nlohmann +#endif diff --git a/include/nlohmann/detail/conversions/from_json.hpp b/include/nlohmann/detail/conversions/from_json.hpp new file mode 100644 index 00000000..aa2f0cbf --- /dev/null +++ b/include/nlohmann/detail/conversions/from_json.hpp @@ -0,0 +1,497 @@ +// __ _____ _____ _____ +// __| | __| | | | JSON for Modern C++ +// | | |__ | | | | | | version 3.11.3 +// |_____|_____|_____|_|___| https://github.com/nlohmann/json +// +// SPDX-FileCopyrightText: 2013-2023 Niels Lohmann +// SPDX-License-Identifier: MIT + +#pragma once + +#include // transform +#include // array +#include // forward_list +#include // inserter, front_inserter, end +#include // map +#include // string +#include // tuple, make_tuple +#include // is_arithmetic, is_same, is_enum, underlying_type, is_convertible +#include // unordered_map +#include // pair, declval +#include // valarray + +#include +#include +#include +#include +#include +#include +#include +#include + +NLOHMANN_JSON_NAMESPACE_BEGIN +namespace detail +{ + +template +inline void from_json(const BasicJsonType& j, typename std::nullptr_t& n) +{ + if (JSON_HEDLEY_UNLIKELY(!j.is_null())) + { + JSON_THROW(type_error::create(302, concat("type must be null, but is ", j.type_name()), &j)); + } + n = nullptr; +} + +// overloads for basic_json template parameters +template < typename BasicJsonType, typename ArithmeticType, + enable_if_t < std::is_arithmetic::value&& + !std::is_same::value, + int > = 0 > +void get_arithmetic_value(const BasicJsonType& j, ArithmeticType& val) +{ + switch (static_cast(j)) + { + case value_t::number_unsigned: + { + val = static_cast(*j.template get_ptr()); + break; + } + case value_t::number_integer: + { + val = static_cast(*j.template get_ptr()); + break; + } + case value_t::number_float: + { + val = static_cast(*j.template get_ptr()); + break; + } + + case value_t::null: + case value_t::object: + case value_t::array: + case value_t::string: + case value_t::boolean: + case value_t::binary: + case value_t::discarded: + default: + JSON_THROW(type_error::create(302, concat("type must be number, but is ", j.type_name()), &j)); + } +} + +template +inline void from_json(const BasicJsonType& j, typename BasicJsonType::boolean_t& b) +{ + if (JSON_HEDLEY_UNLIKELY(!j.is_boolean())) + { + JSON_THROW(type_error::create(302, concat("type must be boolean, but is ", j.type_name()), &j)); + } + b = *j.template get_ptr(); +} + +template +inline void from_json(const BasicJsonType& j, typename BasicJsonType::string_t& s) +{ + if (JSON_HEDLEY_UNLIKELY(!j.is_string())) + { + JSON_THROW(type_error::create(302, concat("type must be string, but is ", j.type_name()), &j)); + } + s = *j.template get_ptr(); +} + +template < + typename BasicJsonType, typename StringType, + enable_if_t < + std::is_assignable::value + && is_detected_exact::value + && !std::is_same::value + && !is_json_ref::value, int > = 0 > +inline void from_json(const BasicJsonType& j, StringType& s) +{ + if (JSON_HEDLEY_UNLIKELY(!j.is_string())) + { + JSON_THROW(type_error::create(302, concat("type must be string, but is ", j.type_name()), &j)); + } + + s = *j.template get_ptr(); +} + +template +inline void from_json(const BasicJsonType& j, typename BasicJsonType::number_float_t& val) +{ + get_arithmetic_value(j, val); +} + +template +inline void from_json(const BasicJsonType& j, typename BasicJsonType::number_unsigned_t& val) +{ + get_arithmetic_value(j, val); +} + +template +inline void from_json(const BasicJsonType& j, typename BasicJsonType::number_integer_t& val) +{ + get_arithmetic_value(j, val); +} + +#if !JSON_DISABLE_ENUM_SERIALIZATION +template::value, int> = 0> +inline void from_json(const BasicJsonType& j, EnumType& e) +{ + typename std::underlying_type::type val; + get_arithmetic_value(j, val); + e = static_cast(val); +} +#endif // JSON_DISABLE_ENUM_SERIALIZATION + +// forward_list doesn't have an insert method +template::value, int> = 0> +inline void from_json(const BasicJsonType& j, std::forward_list& l) +{ + if (JSON_HEDLEY_UNLIKELY(!j.is_array())) + { + JSON_THROW(type_error::create(302, concat("type must be array, but is ", j.type_name()), &j)); + } + l.clear(); + std::transform(j.rbegin(), j.rend(), + std::front_inserter(l), [](const BasicJsonType & i) + { + return i.template get(); + }); +} + +// valarray doesn't have an insert method +template::value, int> = 0> +inline void from_json(const BasicJsonType& j, std::valarray& l) +{ + if (JSON_HEDLEY_UNLIKELY(!j.is_array())) + { + JSON_THROW(type_error::create(302, concat("type must be array, but is ", j.type_name()), &j)); + } + l.resize(j.size()); + std::transform(j.begin(), j.end(), std::begin(l), + [](const BasicJsonType & elem) + { + return elem.template get(); + }); +} + +template +auto from_json(const BasicJsonType& j, T (&arr)[N]) // NOLINT(cppcoreguidelines-avoid-c-arrays,hicpp-avoid-c-arrays,modernize-avoid-c-arrays) +-> decltype(j.template get(), void()) +{ + for (std::size_t i = 0; i < N; ++i) + { + arr[i] = j.at(i).template get(); + } +} + +template +inline void from_json_array_impl(const BasicJsonType& j, typename BasicJsonType::array_t& arr, priority_tag<3> /*unused*/) +{ + arr = *j.template get_ptr(); +} + +template +auto from_json_array_impl(const BasicJsonType& j, std::array& arr, + priority_tag<2> /*unused*/) +-> decltype(j.template get(), void()) +{ + for (std::size_t i = 0; i < N; ++i) + { + arr[i] = j.at(i).template get(); + } +} + +template::value, + int> = 0> +auto from_json_array_impl(const BasicJsonType& j, ConstructibleArrayType& arr, priority_tag<1> /*unused*/) +-> decltype( + arr.reserve(std::declval()), + j.template get(), + void()) +{ + using std::end; + + ConstructibleArrayType ret; + ret.reserve(j.size()); + std::transform(j.begin(), j.end(), + std::inserter(ret, end(ret)), [](const BasicJsonType & i) + { + // get() returns *this, this won't call a from_json + // method when value_type is BasicJsonType + return i.template get(); + }); + arr = std::move(ret); +} + +template::value, + int> = 0> +inline void from_json_array_impl(const BasicJsonType& j, ConstructibleArrayType& arr, + priority_tag<0> /*unused*/) +{ + using std::end; + + ConstructibleArrayType ret; + std::transform( + j.begin(), j.end(), std::inserter(ret, end(ret)), + [](const BasicJsonType & i) + { + // get() returns *this, this won't call a from_json + // method when value_type is BasicJsonType + return i.template get(); + }); + arr = std::move(ret); +} + +template < typename BasicJsonType, typename ConstructibleArrayType, + enable_if_t < + is_constructible_array_type::value&& + !is_constructible_object_type::value&& + !is_constructible_string_type::value&& + !std::is_same::value&& + !is_basic_json::value, + int > = 0 > +auto from_json(const BasicJsonType& j, ConstructibleArrayType& arr) +-> decltype(from_json_array_impl(j, arr, priority_tag<3> {}), +j.template get(), +void()) +{ + if (JSON_HEDLEY_UNLIKELY(!j.is_array())) + { + JSON_THROW(type_error::create(302, concat("type must be array, but is ", j.type_name()), &j)); + } + + from_json_array_impl(j, arr, priority_tag<3> {}); +} + +template < typename BasicJsonType, typename T, std::size_t... Idx > +std::array from_json_inplace_array_impl(BasicJsonType&& j, + identity_tag> /*unused*/, index_sequence /*unused*/) +{ + return { { std::forward(j).at(Idx).template get()... } }; +} + +template < typename BasicJsonType, typename T, std::size_t N > +auto from_json(BasicJsonType&& j, identity_tag> tag) +-> decltype(from_json_inplace_array_impl(std::forward(j), tag, make_index_sequence {})) +{ + if (JSON_HEDLEY_UNLIKELY(!j.is_array())) + { + JSON_THROW(type_error::create(302, concat("type must be array, but is ", j.type_name()), &j)); + } + + return from_json_inplace_array_impl(std::forward(j), tag, make_index_sequence {}); +} + +template +inline void from_json(const BasicJsonType& j, typename BasicJsonType::binary_t& bin) +{ + if (JSON_HEDLEY_UNLIKELY(!j.is_binary())) + { + JSON_THROW(type_error::create(302, concat("type must be binary, but is ", j.type_name()), &j)); + } + + bin = *j.template get_ptr(); +} + +template::value, int> = 0> +inline void from_json(const BasicJsonType& j, ConstructibleObjectType& obj) +{ + if (JSON_HEDLEY_UNLIKELY(!j.is_object())) + { + JSON_THROW(type_error::create(302, concat("type must be object, but is ", j.type_name()), &j)); + } + + ConstructibleObjectType ret; + const auto* inner_object = j.template get_ptr(); + using value_type = typename ConstructibleObjectType::value_type; + std::transform( + inner_object->begin(), inner_object->end(), + std::inserter(ret, ret.begin()), + [](typename BasicJsonType::object_t::value_type const & p) + { + return value_type(p.first, p.second.template get()); + }); + obj = std::move(ret); +} + +// overload for arithmetic types, not chosen for basic_json template arguments +// (BooleanType, etc..); note: Is it really necessary to provide explicit +// overloads for boolean_t etc. in case of a custom BooleanType which is not +// an arithmetic type? +template < typename BasicJsonType, typename ArithmeticType, + enable_if_t < + std::is_arithmetic::value&& + !std::is_same::value&& + !std::is_same::value&& + !std::is_same::value&& + !std::is_same::value, + int > = 0 > +inline void from_json(const BasicJsonType& j, ArithmeticType& val) +{ + switch (static_cast(j)) + { + case value_t::number_unsigned: + { + val = static_cast(*j.template get_ptr()); + break; + } + case value_t::number_integer: + { + val = static_cast(*j.template get_ptr()); + break; + } + case value_t::number_float: + { + val = static_cast(*j.template get_ptr()); + break; + } + case value_t::boolean: + { + val = static_cast(*j.template get_ptr()); + break; + } + + case value_t::null: + case value_t::object: + case value_t::array: + case value_t::string: + case value_t::binary: + case value_t::discarded: + default: + JSON_THROW(type_error::create(302, concat("type must be number, but is ", j.type_name()), &j)); + } +} + +template +std::tuple from_json_tuple_impl_base(BasicJsonType&& j, index_sequence /*unused*/) +{ + return std::make_tuple(std::forward(j).at(Idx).template get()...); +} + +template < typename BasicJsonType, class A1, class A2 > +std::pair from_json_tuple_impl(BasicJsonType&& j, identity_tag> /*unused*/, priority_tag<0> /*unused*/) +{ + return {std::forward(j).at(0).template get(), + std::forward(j).at(1).template get()}; +} + +template +inline void from_json_tuple_impl(BasicJsonType&& j, std::pair& p, priority_tag<1> /*unused*/) +{ + p = from_json_tuple_impl(std::forward(j), identity_tag> {}, priority_tag<0> {}); +} + +template +std::tuple from_json_tuple_impl(BasicJsonType&& j, identity_tag> /*unused*/, priority_tag<2> /*unused*/) +{ + return from_json_tuple_impl_base(std::forward(j), index_sequence_for {}); +} + +template +inline void from_json_tuple_impl(BasicJsonType&& j, std::tuple& t, priority_tag<3> /*unused*/) +{ + t = from_json_tuple_impl_base(std::forward(j), index_sequence_for {}); +} + +template +auto from_json(BasicJsonType&& j, TupleRelated&& t) +-> decltype(from_json_tuple_impl(std::forward(j), std::forward(t), priority_tag<3> {})) +{ + if (JSON_HEDLEY_UNLIKELY(!j.is_array())) + { + JSON_THROW(type_error::create(302, concat("type must be array, but is ", j.type_name()), &j)); + } + + return from_json_tuple_impl(std::forward(j), std::forward(t), priority_tag<3> {}); +} + +template < typename BasicJsonType, typename Key, typename Value, typename Compare, typename Allocator, + typename = enable_if_t < !std::is_constructible < + typename BasicJsonType::string_t, Key >::value >> +inline void from_json(const BasicJsonType& j, std::map& m) +{ + if (JSON_HEDLEY_UNLIKELY(!j.is_array())) + { + JSON_THROW(type_error::create(302, concat("type must be array, but is ", j.type_name()), &j)); + } + m.clear(); + for (const auto& p : j) + { + if (JSON_HEDLEY_UNLIKELY(!p.is_array())) + { + JSON_THROW(type_error::create(302, concat("type must be array, but is ", p.type_name()), &j)); + } + m.emplace(p.at(0).template get(), p.at(1).template get()); + } +} + +template < typename BasicJsonType, typename Key, typename Value, typename Hash, typename KeyEqual, typename Allocator, + typename = enable_if_t < !std::is_constructible < + typename BasicJsonType::string_t, Key >::value >> +inline void from_json(const BasicJsonType& j, std::unordered_map& m) +{ + if (JSON_HEDLEY_UNLIKELY(!j.is_array())) + { + JSON_THROW(type_error::create(302, concat("type must be array, but is ", j.type_name()), &j)); + } + m.clear(); + for (const auto& p : j) + { + if (JSON_HEDLEY_UNLIKELY(!p.is_array())) + { + JSON_THROW(type_error::create(302, concat("type must be array, but is ", p.type_name()), &j)); + } + m.emplace(p.at(0).template get(), p.at(1).template get()); + } +} + +#if JSON_HAS_FILESYSTEM || JSON_HAS_EXPERIMENTAL_FILESYSTEM +template +inline void from_json(const BasicJsonType& j, std_fs::path& p) +{ + if (JSON_HEDLEY_UNLIKELY(!j.is_string())) + { + JSON_THROW(type_error::create(302, concat("type must be string, but is ", j.type_name()), &j)); + } + p = *j.template get_ptr(); +} +#endif + +struct from_json_fn +{ + template + auto operator()(const BasicJsonType& j, T&& val) const + noexcept(noexcept(from_json(j, std::forward(val)))) + -> decltype(from_json(j, std::forward(val))) + { + return from_json(j, std::forward(val)); + } +}; + +} // namespace detail + +#ifndef JSON_HAS_CPP_17 +/// namespace to hold default `from_json` function +/// to see why this is required: +/// http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2015/n4381.html +namespace // NOLINT(cert-dcl59-cpp,fuchsia-header-anon-namespaces,google-build-namespaces) +{ +#endif +JSON_INLINE_VARIABLE constexpr const auto& from_json = // NOLINT(misc-definitions-in-headers) + detail::static_const::value; +#ifndef JSON_HAS_CPP_17 +} // namespace +#endif + +NLOHMANN_JSON_NAMESPACE_END diff --git a/include/nlohmann/detail/conversions/to_chars.hpp b/include/nlohmann/detail/conversions/to_chars.hpp new file mode 100644 index 00000000..e10741c9 --- /dev/null +++ b/include/nlohmann/detail/conversions/to_chars.hpp @@ -0,0 +1,1118 @@ +// __ _____ _____ _____ +// __| | __| | | | JSON for Modern C++ +// | | |__ | | | | | | version 3.11.3 +// |_____|_____|_____|_|___| https://github.com/nlohmann/json +// +// SPDX-FileCopyrightText: 2009 Florian Loitsch +// SPDX-FileCopyrightText: 2013-2023 Niels Lohmann +// SPDX-License-Identifier: MIT + +#pragma once + +#include // array +#include // signbit, isfinite +#include // intN_t, uintN_t +#include // memcpy, memmove +#include // numeric_limits +#include // conditional + +#include + +NLOHMANN_JSON_NAMESPACE_BEGIN +namespace detail +{ + +/*! +@brief implements the Grisu2 algorithm for binary to decimal floating-point +conversion. + +This implementation is a slightly modified version of the reference +implementation which may be obtained from +http://florian.loitsch.com/publications (bench.tar.gz). + +The code is distributed under the MIT license, Copyright (c) 2009 Florian Loitsch. + +For a detailed description of the algorithm see: + +[1] Loitsch, "Printing Floating-Point Numbers Quickly and Accurately with + Integers", Proceedings of the ACM SIGPLAN 2010 Conference on Programming + Language Design and Implementation, PLDI 2010 +[2] Burger, Dybvig, "Printing Floating-Point Numbers Quickly and Accurately", + Proceedings of the ACM SIGPLAN 1996 Conference on Programming Language + Design and Implementation, PLDI 1996 +*/ +namespace dtoa_impl +{ + +template +Target reinterpret_bits(const Source source) +{ + static_assert(sizeof(Target) == sizeof(Source), "size mismatch"); + + Target target; + std::memcpy(&target, &source, sizeof(Source)); + return target; +} + +struct diyfp // f * 2^e +{ + static constexpr int kPrecision = 64; // = q + + std::uint64_t f = 0; + int e = 0; + + constexpr diyfp(std::uint64_t f_, int e_) noexcept : f(f_), e(e_) {} + + /*! + @brief returns x - y + @pre x.e == y.e and x.f >= y.f + */ + static diyfp sub(const diyfp& x, const diyfp& y) noexcept + { + JSON_ASSERT(x.e == y.e); + JSON_ASSERT(x.f >= y.f); + + return {x.f - y.f, x.e}; + } + + /*! + @brief returns x * y + @note The result is rounded. (Only the upper q bits are returned.) + */ + static diyfp mul(const diyfp& x, const diyfp& y) noexcept + { + static_assert(kPrecision == 64, "internal error"); + + // Computes: + // f = round((x.f * y.f) / 2^q) + // e = x.e + y.e + q + + // Emulate the 64-bit * 64-bit multiplication: + // + // p = u * v + // = (u_lo + 2^32 u_hi) (v_lo + 2^32 v_hi) + // = (u_lo v_lo ) + 2^32 ((u_lo v_hi ) + (u_hi v_lo )) + 2^64 (u_hi v_hi ) + // = (p0 ) + 2^32 ((p1 ) + (p2 )) + 2^64 (p3 ) + // = (p0_lo + 2^32 p0_hi) + 2^32 ((p1_lo + 2^32 p1_hi) + (p2_lo + 2^32 p2_hi)) + 2^64 (p3 ) + // = (p0_lo ) + 2^32 (p0_hi + p1_lo + p2_lo ) + 2^64 (p1_hi + p2_hi + p3) + // = (p0_lo ) + 2^32 (Q ) + 2^64 (H ) + // = (p0_lo ) + 2^32 (Q_lo + 2^32 Q_hi ) + 2^64 (H ) + // + // (Since Q might be larger than 2^32 - 1) + // + // = (p0_lo + 2^32 Q_lo) + 2^64 (Q_hi + H) + // + // (Q_hi + H does not overflow a 64-bit int) + // + // = p_lo + 2^64 p_hi + + const std::uint64_t u_lo = x.f & 0xFFFFFFFFu; + const std::uint64_t u_hi = x.f >> 32u; + const std::uint64_t v_lo = y.f & 0xFFFFFFFFu; + const std::uint64_t v_hi = y.f >> 32u; + + const std::uint64_t p0 = u_lo * v_lo; + const std::uint64_t p1 = u_lo * v_hi; + const std::uint64_t p2 = u_hi * v_lo; + const std::uint64_t p3 = u_hi * v_hi; + + const std::uint64_t p0_hi = p0 >> 32u; + const std::uint64_t p1_lo = p1 & 0xFFFFFFFFu; + const std::uint64_t p1_hi = p1 >> 32u; + const std::uint64_t p2_lo = p2 & 0xFFFFFFFFu; + const std::uint64_t p2_hi = p2 >> 32u; + + std::uint64_t Q = p0_hi + p1_lo + p2_lo; + + // The full product might now be computed as + // + // p_hi = p3 + p2_hi + p1_hi + (Q >> 32) + // p_lo = p0_lo + (Q << 32) + // + // But in this particular case here, the full p_lo is not required. + // Effectively we only need to add the highest bit in p_lo to p_hi (and + // Q_hi + 1 does not overflow). + + Q += std::uint64_t{1} << (64u - 32u - 1u); // round, ties up + + const std::uint64_t h = p3 + p2_hi + p1_hi + (Q >> 32u); + + return {h, x.e + y.e + 64}; + } + + /*! + @brief normalize x such that the significand is >= 2^(q-1) + @pre x.f != 0 + */ + static diyfp normalize(diyfp x) noexcept + { + JSON_ASSERT(x.f != 0); + + while ((x.f >> 63u) == 0) + { + x.f <<= 1u; + x.e--; + } + + return x; + } + + /*! + @brief normalize x such that the result has the exponent E + @pre e >= x.e and the upper e - x.e bits of x.f must be zero. + */ + static diyfp normalize_to(const diyfp& x, const int target_exponent) noexcept + { + const int delta = x.e - target_exponent; + + JSON_ASSERT(delta >= 0); + JSON_ASSERT(((x.f << delta) >> delta) == x.f); + + return {x.f << delta, target_exponent}; + } +}; + +struct boundaries +{ + diyfp w; + diyfp minus; + diyfp plus; +}; + +/*! +Compute the (normalized) diyfp representing the input number 'value' and its +boundaries. + +@pre value must be finite and positive +*/ +template +boundaries compute_boundaries(FloatType value) +{ + JSON_ASSERT(std::isfinite(value)); + JSON_ASSERT(value > 0); + + // Convert the IEEE representation into a diyfp. + // + // If v is denormal: + // value = 0.F * 2^(1 - bias) = ( F) * 2^(1 - bias - (p-1)) + // If v is normalized: + // value = 1.F * 2^(E - bias) = (2^(p-1) + F) * 2^(E - bias - (p-1)) + + static_assert(std::numeric_limits::is_iec559, + "internal error: dtoa_short requires an IEEE-754 floating-point implementation"); + + constexpr int kPrecision = std::numeric_limits::digits; // = p (includes the hidden bit) + constexpr int kBias = std::numeric_limits::max_exponent - 1 + (kPrecision - 1); + constexpr int kMinExp = 1 - kBias; + constexpr std::uint64_t kHiddenBit = std::uint64_t{1} << (kPrecision - 1); // = 2^(p-1) + + using bits_type = typename std::conditional::type; + + const auto bits = static_cast(reinterpret_bits(value)); + const std::uint64_t E = bits >> (kPrecision - 1); + const std::uint64_t F = bits & (kHiddenBit - 1); + + const bool is_denormal = E == 0; + const diyfp v = is_denormal + ? diyfp(F, kMinExp) + : diyfp(F + kHiddenBit, static_cast(E) - kBias); + + // Compute the boundaries m- and m+ of the floating-point value + // v = f * 2^e. + // + // Determine v- and v+, the floating-point predecessor and successor if v, + // respectively. + // + // v- = v - 2^e if f != 2^(p-1) or e == e_min (A) + // = v - 2^(e-1) if f == 2^(p-1) and e > e_min (B) + // + // v+ = v + 2^e + // + // Let m- = (v- + v) / 2 and m+ = (v + v+) / 2. All real numbers _strictly_ + // between m- and m+ round to v, regardless of how the input rounding + // algorithm breaks ties. + // + // ---+-------------+-------------+-------------+-------------+--- (A) + // v- m- v m+ v+ + // + // -----------------+------+------+-------------+-------------+--- (B) + // v- m- v m+ v+ + + const bool lower_boundary_is_closer = F == 0 && E > 1; + const diyfp m_plus = diyfp(2 * v.f + 1, v.e - 1); + const diyfp m_minus = lower_boundary_is_closer + ? diyfp(4 * v.f - 1, v.e - 2) // (B) + : diyfp(2 * v.f - 1, v.e - 1); // (A) + + // Determine the normalized w+ = m+. + const diyfp w_plus = diyfp::normalize(m_plus); + + // Determine w- = m- such that e_(w-) = e_(w+). + const diyfp w_minus = diyfp::normalize_to(m_minus, w_plus.e); + + return {diyfp::normalize(v), w_minus, w_plus}; +} + +// Given normalized diyfp w, Grisu needs to find a (normalized) cached +// power-of-ten c, such that the exponent of the product c * w = f * 2^e lies +// within a certain range [alpha, gamma] (Definition 3.2 from [1]) +// +// alpha <= e = e_c + e_w + q <= gamma +// +// or +// +// f_c * f_w * 2^alpha <= f_c 2^(e_c) * f_w 2^(e_w) * 2^q +// <= f_c * f_w * 2^gamma +// +// Since c and w are normalized, i.e. 2^(q-1) <= f < 2^q, this implies +// +// 2^(q-1) * 2^(q-1) * 2^alpha <= c * w * 2^q < 2^q * 2^q * 2^gamma +// +// or +// +// 2^(q - 2 + alpha) <= c * w < 2^(q + gamma) +// +// The choice of (alpha,gamma) determines the size of the table and the form of +// the digit generation procedure. Using (alpha,gamma)=(-60,-32) works out well +// in practice: +// +// The idea is to cut the number c * w = f * 2^e into two parts, which can be +// processed independently: An integral part p1, and a fractional part p2: +// +// f * 2^e = ( (f div 2^-e) * 2^-e + (f mod 2^-e) ) * 2^e +// = (f div 2^-e) + (f mod 2^-e) * 2^e +// = p1 + p2 * 2^e +// +// The conversion of p1 into decimal form requires a series of divisions and +// modulos by (a power of) 10. These operations are faster for 32-bit than for +// 64-bit integers, so p1 should ideally fit into a 32-bit integer. This can be +// achieved by choosing +// +// -e >= 32 or e <= -32 := gamma +// +// In order to convert the fractional part +// +// p2 * 2^e = p2 / 2^-e = d[-1] / 10^1 + d[-2] / 10^2 + ... +// +// into decimal form, the fraction is repeatedly multiplied by 10 and the digits +// d[-i] are extracted in order: +// +// (10 * p2) div 2^-e = d[-1] +// (10 * p2) mod 2^-e = d[-2] / 10^1 + ... +// +// The multiplication by 10 must not overflow. It is sufficient to choose +// +// 10 * p2 < 16 * p2 = 2^4 * p2 <= 2^64. +// +// Since p2 = f mod 2^-e < 2^-e, +// +// -e <= 60 or e >= -60 := alpha + +constexpr int kAlpha = -60; +constexpr int kGamma = -32; + +struct cached_power // c = f * 2^e ~= 10^k +{ + std::uint64_t f; + int e; + int k; +}; + +/*! +For a normalized diyfp w = f * 2^e, this function returns a (normalized) cached +power-of-ten c = f_c * 2^e_c, such that the exponent of the product w * c +satisfies (Definition 3.2 from [1]) + + alpha <= e_c + e + q <= gamma. +*/ +inline cached_power get_cached_power_for_binary_exponent(int e) +{ + // Now + // + // alpha <= e_c + e + q <= gamma (1) + // ==> f_c * 2^alpha <= c * 2^e * 2^q + // + // and since the c's are normalized, 2^(q-1) <= f_c, + // + // ==> 2^(q - 1 + alpha) <= c * 2^(e + q) + // ==> 2^(alpha - e - 1) <= c + // + // If c were an exact power of ten, i.e. c = 10^k, one may determine k as + // + // k = ceil( log_10( 2^(alpha - e - 1) ) ) + // = ceil( (alpha - e - 1) * log_10(2) ) + // + // From the paper: + // "In theory the result of the procedure could be wrong since c is rounded, + // and the computation itself is approximated [...]. In practice, however, + // this simple function is sufficient." + // + // For IEEE double precision floating-point numbers converted into + // normalized diyfp's w = f * 2^e, with q = 64, + // + // e >= -1022 (min IEEE exponent) + // -52 (p - 1) + // -52 (p - 1, possibly normalize denormal IEEE numbers) + // -11 (normalize the diyfp) + // = -1137 + // + // and + // + // e <= +1023 (max IEEE exponent) + // -52 (p - 1) + // -11 (normalize the diyfp) + // = 960 + // + // This binary exponent range [-1137,960] results in a decimal exponent + // range [-307,324]. One does not need to store a cached power for each + // k in this range. For each such k it suffices to find a cached power + // such that the exponent of the product lies in [alpha,gamma]. + // This implies that the difference of the decimal exponents of adjacent + // table entries must be less than or equal to + // + // floor( (gamma - alpha) * log_10(2) ) = 8. + // + // (A smaller distance gamma-alpha would require a larger table.) + + // NB: + // Actually this function returns c, such that -60 <= e_c + e + 64 <= -34. + + constexpr int kCachedPowersMinDecExp = -300; + constexpr int kCachedPowersDecStep = 8; + + static constexpr std::array kCachedPowers = + { + { + { 0xAB70FE17C79AC6CA, -1060, -300 }, + { 0xFF77B1FCBEBCDC4F, -1034, -292 }, + { 0xBE5691EF416BD60C, -1007, -284 }, + { 0x8DD01FAD907FFC3C, -980, -276 }, + { 0xD3515C2831559A83, -954, -268 }, + { 0x9D71AC8FADA6C9B5, -927, -260 }, + { 0xEA9C227723EE8BCB, -901, -252 }, + { 0xAECC49914078536D, -874, -244 }, + { 0x823C12795DB6CE57, -847, -236 }, + { 0xC21094364DFB5637, -821, -228 }, + { 0x9096EA6F3848984F, -794, -220 }, + { 0xD77485CB25823AC7, -768, -212 }, + { 0xA086CFCD97BF97F4, -741, -204 }, + { 0xEF340A98172AACE5, -715, -196 }, + { 0xB23867FB2A35B28E, -688, -188 }, + { 0x84C8D4DFD2C63F3B, -661, -180 }, + { 0xC5DD44271AD3CDBA, -635, -172 }, + { 0x936B9FCEBB25C996, -608, -164 }, + { 0xDBAC6C247D62A584, -582, -156 }, + { 0xA3AB66580D5FDAF6, -555, -148 }, + { 0xF3E2F893DEC3F126, -529, -140 }, + { 0xB5B5ADA8AAFF80B8, -502, -132 }, + { 0x87625F056C7C4A8B, -475, -124 }, + { 0xC9BCFF6034C13053, -449, -116 }, + { 0x964E858C91BA2655, -422, -108 }, + { 0xDFF9772470297EBD, -396, -100 }, + { 0xA6DFBD9FB8E5B88F, -369, -92 }, + { 0xF8A95FCF88747D94, -343, -84 }, + { 0xB94470938FA89BCF, -316, -76 }, + { 0x8A08F0F8BF0F156B, -289, -68 }, + { 0xCDB02555653131B6, -263, -60 }, + { 0x993FE2C6D07B7FAC, -236, -52 }, + { 0xE45C10C42A2B3B06, -210, -44 }, + { 0xAA242499697392D3, -183, -36 }, + { 0xFD87B5F28300CA0E, -157, -28 }, + { 0xBCE5086492111AEB, -130, -20 }, + { 0x8CBCCC096F5088CC, -103, -12 }, + { 0xD1B71758E219652C, -77, -4 }, + { 0x9C40000000000000, -50, 4 }, + { 0xE8D4A51000000000, -24, 12 }, + { 0xAD78EBC5AC620000, 3, 20 }, + { 0x813F3978F8940984, 30, 28 }, + { 0xC097CE7BC90715B3, 56, 36 }, + { 0x8F7E32CE7BEA5C70, 83, 44 }, + { 0xD5D238A4ABE98068, 109, 52 }, + { 0x9F4F2726179A2245, 136, 60 }, + { 0xED63A231D4C4FB27, 162, 68 }, + { 0xB0DE65388CC8ADA8, 189, 76 }, + { 0x83C7088E1AAB65DB, 216, 84 }, + { 0xC45D1DF942711D9A, 242, 92 }, + { 0x924D692CA61BE758, 269, 100 }, + { 0xDA01EE641A708DEA, 295, 108 }, + { 0xA26DA3999AEF774A, 322, 116 }, + { 0xF209787BB47D6B85, 348, 124 }, + { 0xB454E4A179DD1877, 375, 132 }, + { 0x865B86925B9BC5C2, 402, 140 }, + { 0xC83553C5C8965D3D, 428, 148 }, + { 0x952AB45CFA97A0B3, 455, 156 }, + { 0xDE469FBD99A05FE3, 481, 164 }, + { 0xA59BC234DB398C25, 508, 172 }, + { 0xF6C69A72A3989F5C, 534, 180 }, + { 0xB7DCBF5354E9BECE, 561, 188 }, + { 0x88FCF317F22241E2, 588, 196 }, + { 0xCC20CE9BD35C78A5, 614, 204 }, + { 0x98165AF37B2153DF, 641, 212 }, + { 0xE2A0B5DC971F303A, 667, 220 }, + { 0xA8D9D1535CE3B396, 694, 228 }, + { 0xFB9B7CD9A4A7443C, 720, 236 }, + { 0xBB764C4CA7A44410, 747, 244 }, + { 0x8BAB8EEFB6409C1A, 774, 252 }, + { 0xD01FEF10A657842C, 800, 260 }, + { 0x9B10A4E5E9913129, 827, 268 }, + { 0xE7109BFBA19C0C9D, 853, 276 }, + { 0xAC2820D9623BF429, 880, 284 }, + { 0x80444B5E7AA7CF85, 907, 292 }, + { 0xBF21E44003ACDD2D, 933, 300 }, + { 0x8E679C2F5E44FF8F, 960, 308 }, + { 0xD433179D9C8CB841, 986, 316 }, + { 0x9E19DB92B4E31BA9, 1013, 324 }, + } + }; + + // This computation gives exactly the same results for k as + // k = ceil((kAlpha - e - 1) * 0.30102999566398114) + // for |e| <= 1500, but doesn't require floating-point operations. + // NB: log_10(2) ~= 78913 / 2^18 + JSON_ASSERT(e >= -1500); + JSON_ASSERT(e <= 1500); + const int f = kAlpha - e - 1; + const int k = (f * 78913) / (1 << 18) + static_cast(f > 0); + + const int index = (-kCachedPowersMinDecExp + k + (kCachedPowersDecStep - 1)) / kCachedPowersDecStep; + JSON_ASSERT(index >= 0); + JSON_ASSERT(static_cast(index) < kCachedPowers.size()); + + const cached_power cached = kCachedPowers[static_cast(index)]; + JSON_ASSERT(kAlpha <= cached.e + e + 64); + JSON_ASSERT(kGamma >= cached.e + e + 64); + + return cached; +} + +/*! +For n != 0, returns k, such that pow10 := 10^(k-1) <= n < 10^k. +For n == 0, returns 1 and sets pow10 := 1. +*/ +inline int find_largest_pow10(const std::uint32_t n, std::uint32_t& pow10) +{ + // LCOV_EXCL_START + if (n >= 1000000000) + { + pow10 = 1000000000; + return 10; + } + // LCOV_EXCL_STOP + if (n >= 100000000) + { + pow10 = 100000000; + return 9; + } + if (n >= 10000000) + { + pow10 = 10000000; + return 8; + } + if (n >= 1000000) + { + pow10 = 1000000; + return 7; + } + if (n >= 100000) + { + pow10 = 100000; + return 6; + } + if (n >= 10000) + { + pow10 = 10000; + return 5; + } + if (n >= 1000) + { + pow10 = 1000; + return 4; + } + if (n >= 100) + { + pow10 = 100; + return 3; + } + if (n >= 10) + { + pow10 = 10; + return 2; + } + + pow10 = 1; + return 1; +} + +inline void grisu2_round(char* buf, int len, std::uint64_t dist, std::uint64_t delta, + std::uint64_t rest, std::uint64_t ten_k) +{ + JSON_ASSERT(len >= 1); + JSON_ASSERT(dist <= delta); + JSON_ASSERT(rest <= delta); + JSON_ASSERT(ten_k > 0); + + // <--------------------------- delta ----> + // <---- dist ---------> + // --------------[------------------+-------------------]-------------- + // M- w M+ + // + // ten_k + // <------> + // <---- rest ----> + // --------------[------------------+----+--------------]-------------- + // w V + // = buf * 10^k + // + // ten_k represents a unit-in-the-last-place in the decimal representation + // stored in buf. + // Decrement buf by ten_k while this takes buf closer to w. + + // The tests are written in this order to avoid overflow in unsigned + // integer arithmetic. + + while (rest < dist + && delta - rest >= ten_k + && (rest + ten_k < dist || dist - rest > rest + ten_k - dist)) + { + JSON_ASSERT(buf[len - 1] != '0'); + buf[len - 1]--; + rest += ten_k; + } +} + +/*! +Generates V = buffer * 10^decimal_exponent, such that M- <= V <= M+. +M- and M+ must be normalized and share the same exponent -60 <= e <= -32. +*/ +inline void grisu2_digit_gen(char* buffer, int& length, int& decimal_exponent, + diyfp M_minus, diyfp w, diyfp M_plus) +{ + static_assert(kAlpha >= -60, "internal error"); + static_assert(kGamma <= -32, "internal error"); + + // Generates the digits (and the exponent) of a decimal floating-point + // number V = buffer * 10^decimal_exponent in the range [M-, M+]. The diyfp's + // w, M- and M+ share the same exponent e, which satisfies alpha <= e <= gamma. + // + // <--------------------------- delta ----> + // <---- dist ---------> + // --------------[------------------+-------------------]-------------- + // M- w M+ + // + // Grisu2 generates the digits of M+ from left to right and stops as soon as + // V is in [M-,M+]. + + JSON_ASSERT(M_plus.e >= kAlpha); + JSON_ASSERT(M_plus.e <= kGamma); + + std::uint64_t delta = diyfp::sub(M_plus, M_minus).f; // (significand of (M+ - M-), implicit exponent is e) + std::uint64_t dist = diyfp::sub(M_plus, w ).f; // (significand of (M+ - w ), implicit exponent is e) + + // Split M+ = f * 2^e into two parts p1 and p2 (note: e < 0): + // + // M+ = f * 2^e + // = ((f div 2^-e) * 2^-e + (f mod 2^-e)) * 2^e + // = ((p1 ) * 2^-e + (p2 )) * 2^e + // = p1 + p2 * 2^e + + const diyfp one(std::uint64_t{1} << -M_plus.e, M_plus.e); + + auto p1 = static_cast(M_plus.f >> -one.e); // p1 = f div 2^-e (Since -e >= 32, p1 fits into a 32-bit int.) + std::uint64_t p2 = M_plus.f & (one.f - 1); // p2 = f mod 2^-e + + // 1) + // + // Generate the digits of the integral part p1 = d[n-1]...d[1]d[0] + + JSON_ASSERT(p1 > 0); + + std::uint32_t pow10{}; + const int k = find_largest_pow10(p1, pow10); + + // 10^(k-1) <= p1 < 10^k, pow10 = 10^(k-1) + // + // p1 = (p1 div 10^(k-1)) * 10^(k-1) + (p1 mod 10^(k-1)) + // = (d[k-1] ) * 10^(k-1) + (p1 mod 10^(k-1)) + // + // M+ = p1 + p2 * 2^e + // = d[k-1] * 10^(k-1) + (p1 mod 10^(k-1)) + p2 * 2^e + // = d[k-1] * 10^(k-1) + ((p1 mod 10^(k-1)) * 2^-e + p2) * 2^e + // = d[k-1] * 10^(k-1) + ( rest) * 2^e + // + // Now generate the digits d[n] of p1 from left to right (n = k-1,...,0) + // + // p1 = d[k-1]...d[n] * 10^n + d[n-1]...d[0] + // + // but stop as soon as + // + // rest * 2^e = (d[n-1]...d[0] * 2^-e + p2) * 2^e <= delta * 2^e + + int n = k; + while (n > 0) + { + // Invariants: + // M+ = buffer * 10^n + (p1 + p2 * 2^e) (buffer = 0 for n = k) + // pow10 = 10^(n-1) <= p1 < 10^n + // + const std::uint32_t d = p1 / pow10; // d = p1 div 10^(n-1) + const std::uint32_t r = p1 % pow10; // r = p1 mod 10^(n-1) + // + // M+ = buffer * 10^n + (d * 10^(n-1) + r) + p2 * 2^e + // = (buffer * 10 + d) * 10^(n-1) + (r + p2 * 2^e) + // + JSON_ASSERT(d <= 9); + buffer[length++] = static_cast('0' + d); // buffer := buffer * 10 + d + // + // M+ = buffer * 10^(n-1) + (r + p2 * 2^e) + // + p1 = r; + n--; + // + // M+ = buffer * 10^n + (p1 + p2 * 2^e) + // pow10 = 10^n + // + + // Now check if enough digits have been generated. + // Compute + // + // p1 + p2 * 2^e = (p1 * 2^-e + p2) * 2^e = rest * 2^e + // + // Note: + // Since rest and delta share the same exponent e, it suffices to + // compare the significands. + const std::uint64_t rest = (std::uint64_t{p1} << -one.e) + p2; + if (rest <= delta) + { + // V = buffer * 10^n, with M- <= V <= M+. + + decimal_exponent += n; + + // We may now just stop. But instead look if the buffer could be + // decremented to bring V closer to w. + // + // pow10 = 10^n is now 1 ulp in the decimal representation V. + // The rounding procedure works with diyfp's with an implicit + // exponent of e. + // + // 10^n = (10^n * 2^-e) * 2^e = ulp * 2^e + // + const std::uint64_t ten_n = std::uint64_t{pow10} << -one.e; + grisu2_round(buffer, length, dist, delta, rest, ten_n); + + return; + } + + pow10 /= 10; + // + // pow10 = 10^(n-1) <= p1 < 10^n + // Invariants restored. + } + + // 2) + // + // The digits of the integral part have been generated: + // + // M+ = d[k-1]...d[1]d[0] + p2 * 2^e + // = buffer + p2 * 2^e + // + // Now generate the digits of the fractional part p2 * 2^e. + // + // Note: + // No decimal point is generated: the exponent is adjusted instead. + // + // p2 actually represents the fraction + // + // p2 * 2^e + // = p2 / 2^-e + // = d[-1] / 10^1 + d[-2] / 10^2 + ... + // + // Now generate the digits d[-m] of p1 from left to right (m = 1,2,...) + // + // p2 * 2^e = d[-1]d[-2]...d[-m] * 10^-m + // + 10^-m * (d[-m-1] / 10^1 + d[-m-2] / 10^2 + ...) + // + // using + // + // 10^m * p2 = ((10^m * p2) div 2^-e) * 2^-e + ((10^m * p2) mod 2^-e) + // = ( d) * 2^-e + ( r) + // + // or + // 10^m * p2 * 2^e = d + r * 2^e + // + // i.e. + // + // M+ = buffer + p2 * 2^e + // = buffer + 10^-m * (d + r * 2^e) + // = (buffer * 10^m + d) * 10^-m + 10^-m * r * 2^e + // + // and stop as soon as 10^-m * r * 2^e <= delta * 2^e + + JSON_ASSERT(p2 > delta); + + int m = 0; + for (;;) + { + // Invariant: + // M+ = buffer * 10^-m + 10^-m * (d[-m-1] / 10 + d[-m-2] / 10^2 + ...) * 2^e + // = buffer * 10^-m + 10^-m * (p2 ) * 2^e + // = buffer * 10^-m + 10^-m * (1/10 * (10 * p2) ) * 2^e + // = buffer * 10^-m + 10^-m * (1/10 * ((10*p2 div 2^-e) * 2^-e + (10*p2 mod 2^-e)) * 2^e + // + JSON_ASSERT(p2 <= (std::numeric_limits::max)() / 10); + p2 *= 10; + const std::uint64_t d = p2 >> -one.e; // d = (10 * p2) div 2^-e + const std::uint64_t r = p2 & (one.f - 1); // r = (10 * p2) mod 2^-e + // + // M+ = buffer * 10^-m + 10^-m * (1/10 * (d * 2^-e + r) * 2^e + // = buffer * 10^-m + 10^-m * (1/10 * (d + r * 2^e)) + // = (buffer * 10 + d) * 10^(-m-1) + 10^(-m-1) * r * 2^e + // + JSON_ASSERT(d <= 9); + buffer[length++] = static_cast('0' + d); // buffer := buffer * 10 + d + // + // M+ = buffer * 10^(-m-1) + 10^(-m-1) * r * 2^e + // + p2 = r; + m++; + // + // M+ = buffer * 10^-m + 10^-m * p2 * 2^e + // Invariant restored. + + // Check if enough digits have been generated. + // + // 10^-m * p2 * 2^e <= delta * 2^e + // p2 * 2^e <= 10^m * delta * 2^e + // p2 <= 10^m * delta + delta *= 10; + dist *= 10; + if (p2 <= delta) + { + break; + } + } + + // V = buffer * 10^-m, with M- <= V <= M+. + + decimal_exponent -= m; + + // 1 ulp in the decimal representation is now 10^-m. + // Since delta and dist are now scaled by 10^m, we need to do the + // same with ulp in order to keep the units in sync. + // + // 10^m * 10^-m = 1 = 2^-e * 2^e = ten_m * 2^e + // + const std::uint64_t ten_m = one.f; + grisu2_round(buffer, length, dist, delta, p2, ten_m); + + // By construction this algorithm generates the shortest possible decimal + // number (Loitsch, Theorem 6.2) which rounds back to w. + // For an input number of precision p, at least + // + // N = 1 + ceil(p * log_10(2)) + // + // decimal digits are sufficient to identify all binary floating-point + // numbers (Matula, "In-and-Out conversions"). + // This implies that the algorithm does not produce more than N decimal + // digits. + // + // N = 17 for p = 53 (IEEE double precision) + // N = 9 for p = 24 (IEEE single precision) +} + +/*! +v = buf * 10^decimal_exponent +len is the length of the buffer (number of decimal digits) +The buffer must be large enough, i.e. >= max_digits10. +*/ +JSON_HEDLEY_NON_NULL(1) +inline void grisu2(char* buf, int& len, int& decimal_exponent, + diyfp m_minus, diyfp v, diyfp m_plus) +{ + JSON_ASSERT(m_plus.e == m_minus.e); + JSON_ASSERT(m_plus.e == v.e); + + // --------(-----------------------+-----------------------)-------- (A) + // m- v m+ + // + // --------------------(-----------+-----------------------)-------- (B) + // m- v m+ + // + // First scale v (and m- and m+) such that the exponent is in the range + // [alpha, gamma]. + + const cached_power cached = get_cached_power_for_binary_exponent(m_plus.e); + + const diyfp c_minus_k(cached.f, cached.e); // = c ~= 10^-k + + // The exponent of the products is = v.e + c_minus_k.e + q and is in the range [alpha,gamma] + const diyfp w = diyfp::mul(v, c_minus_k); + const diyfp w_minus = diyfp::mul(m_minus, c_minus_k); + const diyfp w_plus = diyfp::mul(m_plus, c_minus_k); + + // ----(---+---)---------------(---+---)---------------(---+---)---- + // w- w w+ + // = c*m- = c*v = c*m+ + // + // diyfp::mul rounds its result and c_minus_k is approximated too. w, w- and + // w+ are now off by a small amount. + // In fact: + // + // w - v * 10^k < 1 ulp + // + // To account for this inaccuracy, add resp. subtract 1 ulp. + // + // --------+---[---------------(---+---)---------------]---+-------- + // w- M- w M+ w+ + // + // Now any number in [M-, M+] (bounds included) will round to w when input, + // regardless of how the input rounding algorithm breaks ties. + // + // And digit_gen generates the shortest possible such number in [M-, M+]. + // Note that this does not mean that Grisu2 always generates the shortest + // possible number in the interval (m-, m+). + const diyfp M_minus(w_minus.f + 1, w_minus.e); + const diyfp M_plus (w_plus.f - 1, w_plus.e ); + + decimal_exponent = -cached.k; // = -(-k) = k + + grisu2_digit_gen(buf, len, decimal_exponent, M_minus, w, M_plus); +} + +/*! +v = buf * 10^decimal_exponent +len is the length of the buffer (number of decimal digits) +The buffer must be large enough, i.e. >= max_digits10. +*/ +template +JSON_HEDLEY_NON_NULL(1) +void grisu2(char* buf, int& len, int& decimal_exponent, FloatType value) +{ + static_assert(diyfp::kPrecision >= std::numeric_limits::digits + 3, + "internal error: not enough precision"); + + JSON_ASSERT(std::isfinite(value)); + JSON_ASSERT(value > 0); + + // If the neighbors (and boundaries) of 'value' are always computed for double-precision + // numbers, all float's can be recovered using strtod (and strtof). However, the resulting + // decimal representations are not exactly "short". + // + // The documentation for 'std::to_chars' (https://en.cppreference.com/w/cpp/utility/to_chars) + // says "value is converted to a string as if by std::sprintf in the default ("C") locale" + // and since sprintf promotes floats to doubles, I think this is exactly what 'std::to_chars' + // does. + // On the other hand, the documentation for 'std::to_chars' requires that "parsing the + // representation using the corresponding std::from_chars function recovers value exactly". That + // indicates that single precision floating-point numbers should be recovered using + // 'std::strtof'. + // + // NB: If the neighbors are computed for single-precision numbers, there is a single float + // (7.0385307e-26f) which can't be recovered using strtod. The resulting double precision + // value is off by 1 ulp. +#if 0 // NOLINT(readability-avoid-unconditional-preprocessor-if) + const boundaries w = compute_boundaries(static_cast(value)); +#else + const boundaries w = compute_boundaries(value); +#endif + + grisu2(buf, len, decimal_exponent, w.minus, w.w, w.plus); +} + +/*! +@brief appends a decimal representation of e to buf +@return a pointer to the element following the exponent. +@pre -1000 < e < 1000 +*/ +JSON_HEDLEY_NON_NULL(1) +JSON_HEDLEY_RETURNS_NON_NULL +inline char* append_exponent(char* buf, int e) +{ + JSON_ASSERT(e > -1000); + JSON_ASSERT(e < 1000); + + if (e < 0) + { + e = -e; + *buf++ = '-'; + } + else + { + *buf++ = '+'; + } + + auto k = static_cast(e); + if (k < 10) + { + // Always print at least two digits in the exponent. + // This is for compatibility with printf("%g"). + *buf++ = '0'; + *buf++ = static_cast('0' + k); + } + else if (k < 100) + { + *buf++ = static_cast('0' + k / 10); + k %= 10; + *buf++ = static_cast('0' + k); + } + else + { + *buf++ = static_cast('0' + k / 100); + k %= 100; + *buf++ = static_cast('0' + k / 10); + k %= 10; + *buf++ = static_cast('0' + k); + } + + return buf; +} + +/*! +@brief prettify v = buf * 10^decimal_exponent + +If v is in the range [10^min_exp, 10^max_exp) it will be printed in fixed-point +notation. Otherwise it will be printed in exponential notation. + +@pre min_exp < 0 +@pre max_exp > 0 +*/ +JSON_HEDLEY_NON_NULL(1) +JSON_HEDLEY_RETURNS_NON_NULL +inline char* format_buffer(char* buf, int len, int decimal_exponent, + int min_exp, int max_exp) +{ + JSON_ASSERT(min_exp < 0); + JSON_ASSERT(max_exp > 0); + + const int k = len; + const int n = len + decimal_exponent; + + // v = buf * 10^(n-k) + // k is the length of the buffer (number of decimal digits) + // n is the position of the decimal point relative to the start of the buffer. + + if (k <= n && n <= max_exp) + { + // digits[000] + // len <= max_exp + 2 + + std::memset(buf + k, '0', static_cast(n) - static_cast(k)); + // Make it look like a floating-point number (#362, #378) + buf[n + 0] = '.'; + buf[n + 1] = '0'; + return buf + (static_cast(n) + 2); + } + + if (0 < n && n <= max_exp) + { + // dig.its + // len <= max_digits10 + 1 + + JSON_ASSERT(k > n); + + std::memmove(buf + (static_cast(n) + 1), buf + n, static_cast(k) - static_cast(n)); + buf[n] = '.'; + return buf + (static_cast(k) + 1U); + } + + if (min_exp < n && n <= 0) + { + // 0.[000]digits + // len <= 2 + (-min_exp - 1) + max_digits10 + + std::memmove(buf + (2 + static_cast(-n)), buf, static_cast(k)); + buf[0] = '0'; + buf[1] = '.'; + std::memset(buf + 2, '0', static_cast(-n)); + return buf + (2U + static_cast(-n) + static_cast(k)); + } + + if (k == 1) + { + // dE+123 + // len <= 1 + 5 + + buf += 1; + } + else + { + // d.igitsE+123 + // len <= max_digits10 + 1 + 5 + + std::memmove(buf + 2, buf + 1, static_cast(k) - 1); + buf[1] = '.'; + buf += 1 + static_cast(k); + } + + *buf++ = 'e'; + return append_exponent(buf, n - 1); +} + +} // namespace dtoa_impl + +/*! +@brief generates a decimal representation of the floating-point number value in [first, last). + +The format of the resulting decimal representation is similar to printf's %g +format. Returns an iterator pointing past-the-end of the decimal representation. + +@note The input number must be finite, i.e. NaN's and Inf's are not supported. +@note The buffer must be large enough. +@note The result is NOT null-terminated. +*/ +template +JSON_HEDLEY_NON_NULL(1, 2) +JSON_HEDLEY_RETURNS_NON_NULL +char* to_chars(char* first, const char* last, FloatType value) +{ + static_cast(last); // maybe unused - fix warning + JSON_ASSERT(std::isfinite(value)); + + // Use signbit(value) instead of (value < 0) since signbit works for -0. + if (std::signbit(value)) + { + value = -value; + *first++ = '-'; + } + +#ifdef __GNUC__ +#pragma GCC diagnostic push +#pragma GCC diagnostic ignored "-Wfloat-equal" +#endif + if (value == 0) // +-0 + { + *first++ = '0'; + // Make it look like a floating-point number (#362, #378) + *first++ = '.'; + *first++ = '0'; + return first; + } +#ifdef __GNUC__ +#pragma GCC diagnostic pop +#endif + + JSON_ASSERT(last - first >= std::numeric_limits::max_digits10); + + // Compute v = buffer * 10^decimal_exponent. + // The decimal digits are stored in the buffer, which needs to be interpreted + // as an unsigned decimal integer. + // len is the length of the buffer, i.e. the number of decimal digits. + int len = 0; + int decimal_exponent = 0; + dtoa_impl::grisu2(first, len, decimal_exponent, value); + + JSON_ASSERT(len <= std::numeric_limits::max_digits10); + + // Format the buffer like printf("%.*g", prec, value) + constexpr int kMinExp = -4; + // Use digits10 here to increase compatibility with version 2. + constexpr int kMaxExp = std::numeric_limits::digits10; + + JSON_ASSERT(last - first >= kMaxExp + 2); + JSON_ASSERT(last - first >= 2 + (-kMinExp - 1) + std::numeric_limits::max_digits10); + JSON_ASSERT(last - first >= std::numeric_limits::max_digits10 + 6); + + return dtoa_impl::format_buffer(first, len, decimal_exponent, kMinExp, kMaxExp); +} + +} // namespace detail +NLOHMANN_JSON_NAMESPACE_END diff --git a/include/nlohmann/detail/conversions/to_json.hpp b/include/nlohmann/detail/conversions/to_json.hpp new file mode 100644 index 00000000..e39b7797 --- /dev/null +++ b/include/nlohmann/detail/conversions/to_json.hpp @@ -0,0 +1,446 @@ +// __ _____ _____ _____ +// __| | __| | | | JSON for Modern C++ +// | | |__ | | | | | | version 3.11.3 +// |_____|_____|_____|_|___| https://github.com/nlohmann/json +// +// SPDX-FileCopyrightText: 2013-2023 Niels Lohmann +// SPDX-License-Identifier: MIT + +#pragma once + +#include // copy +#include // begin, end +#include // string +#include // tuple, get +#include // is_same, is_constructible, is_floating_point, is_enum, underlying_type +#include // move, forward, declval, pair +#include // valarray +#include // vector + +#include +#include +#include +#include +#include +#include + +NLOHMANN_JSON_NAMESPACE_BEGIN +namespace detail +{ + +////////////////// +// constructors // +////////////////// + +/* + * Note all external_constructor<>::construct functions need to call + * j.m_data.m_value.destroy(j.m_data.m_type) to avoid a memory leak in case j contains an + * allocated value (e.g., a string). See bug issue + * https://github.com/nlohmann/json/issues/2865 for more information. + */ + +template struct external_constructor; + +template<> +struct external_constructor +{ + template + static void construct(BasicJsonType& j, typename BasicJsonType::boolean_t b) noexcept + { + j.m_data.m_value.destroy(j.m_data.m_type); + j.m_data.m_type = value_t::boolean; + j.m_data.m_value = b; + j.assert_invariant(); + } +}; + +template<> +struct external_constructor +{ + template + static void construct(BasicJsonType& j, const typename BasicJsonType::string_t& s) + { + j.m_data.m_value.destroy(j.m_data.m_type); + j.m_data.m_type = value_t::string; + j.m_data.m_value = s; + j.assert_invariant(); + } + + template + static void construct(BasicJsonType& j, typename BasicJsonType::string_t&& s) + { + j.m_data.m_value.destroy(j.m_data.m_type); + j.m_data.m_type = value_t::string; + j.m_data.m_value = std::move(s); + j.assert_invariant(); + } + + template < typename BasicJsonType, typename CompatibleStringType, + enable_if_t < !std::is_same::value, + int > = 0 > + static void construct(BasicJsonType& j, const CompatibleStringType& str) + { + j.m_data.m_value.destroy(j.m_data.m_type); + j.m_data.m_type = value_t::string; + j.m_data.m_value.string = j.template create(str); + j.assert_invariant(); + } +}; + +template<> +struct external_constructor +{ + template + static void construct(BasicJsonType& j, const typename BasicJsonType::binary_t& b) + { + j.m_data.m_value.destroy(j.m_data.m_type); + j.m_data.m_type = value_t::binary; + j.m_data.m_value = typename BasicJsonType::binary_t(b); + j.assert_invariant(); + } + + template + static void construct(BasicJsonType& j, typename BasicJsonType::binary_t&& b) + { + j.m_data.m_value.destroy(j.m_data.m_type); + j.m_data.m_type = value_t::binary; + j.m_data.m_value = typename BasicJsonType::binary_t(std::move(b)); + j.assert_invariant(); + } +}; + +template<> +struct external_constructor +{ + template + static void construct(BasicJsonType& j, typename BasicJsonType::number_float_t val) noexcept + { + j.m_data.m_value.destroy(j.m_data.m_type); + j.m_data.m_type = value_t::number_float; + j.m_data.m_value = val; + j.assert_invariant(); + } +}; + +template<> +struct external_constructor +{ + template + static void construct(BasicJsonType& j, typename BasicJsonType::number_unsigned_t val) noexcept + { + j.m_data.m_value.destroy(j.m_data.m_type); + j.m_data.m_type = value_t::number_unsigned; + j.m_data.m_value = val; + j.assert_invariant(); + } +}; + +template<> +struct external_constructor +{ + template + static void construct(BasicJsonType& j, typename BasicJsonType::number_integer_t val) noexcept + { + j.m_data.m_value.destroy(j.m_data.m_type); + j.m_data.m_type = value_t::number_integer; + j.m_data.m_value = val; + j.assert_invariant(); + } +}; + +template<> +struct external_constructor +{ + template + static void construct(BasicJsonType& j, const typename BasicJsonType::array_t& arr) + { + j.m_data.m_value.destroy(j.m_data.m_type); + j.m_data.m_type = value_t::array; + j.m_data.m_value = arr; + j.set_parents(); + j.assert_invariant(); + } + + template + static void construct(BasicJsonType& j, typename BasicJsonType::array_t&& arr) + { + j.m_data.m_value.destroy(j.m_data.m_type); + j.m_data.m_type = value_t::array; + j.m_data.m_value = std::move(arr); + j.set_parents(); + j.assert_invariant(); + } + + template < typename BasicJsonType, typename CompatibleArrayType, + enable_if_t < !std::is_same::value, + int > = 0 > + static void construct(BasicJsonType& j, const CompatibleArrayType& arr) + { + using std::begin; + using std::end; + + j.m_data.m_value.destroy(j.m_data.m_type); + j.m_data.m_type = value_t::array; + j.m_data.m_value.array = j.template create(begin(arr), end(arr)); + j.set_parents(); + j.assert_invariant(); + } + + template + static void construct(BasicJsonType& j, const std::vector& arr) + { + j.m_data.m_value.destroy(j.m_data.m_type); + j.m_data.m_type = value_t::array; + j.m_data.m_value = value_t::array; + j.m_data.m_value.array->reserve(arr.size()); + for (const bool x : arr) + { + j.m_data.m_value.array->push_back(x); + j.set_parent(j.m_data.m_value.array->back()); + } + j.assert_invariant(); + } + + template::value, int> = 0> + static void construct(BasicJsonType& j, const std::valarray& arr) + { + j.m_data.m_value.destroy(j.m_data.m_type); + j.m_data.m_type = value_t::array; + j.m_data.m_value = value_t::array; + j.m_data.m_value.array->resize(arr.size()); + if (arr.size() > 0) + { + std::copy(std::begin(arr), std::end(arr), j.m_data.m_value.array->begin()); + } + j.set_parents(); + j.assert_invariant(); + } +}; + +template<> +struct external_constructor +{ + template + static void construct(BasicJsonType& j, const typename BasicJsonType::object_t& obj) + { + j.m_data.m_value.destroy(j.m_data.m_type); + j.m_data.m_type = value_t::object; + j.m_data.m_value = obj; + j.set_parents(); + j.assert_invariant(); + } + + template + static void construct(BasicJsonType& j, typename BasicJsonType::object_t&& obj) + { + j.m_data.m_value.destroy(j.m_data.m_type); + j.m_data.m_type = value_t::object; + j.m_data.m_value = std::move(obj); + j.set_parents(); + j.assert_invariant(); + } + + template < typename BasicJsonType, typename CompatibleObjectType, + enable_if_t < !std::is_same::value, int > = 0 > + static void construct(BasicJsonType& j, const CompatibleObjectType& obj) + { + using std::begin; + using std::end; + + j.m_data.m_value.destroy(j.m_data.m_type); + j.m_data.m_type = value_t::object; + j.m_data.m_value.object = j.template create(begin(obj), end(obj)); + j.set_parents(); + j.assert_invariant(); + } +}; + +///////////// +// to_json // +///////////// + +template::value, int> = 0> +inline void to_json(BasicJsonType& j, T b) noexcept +{ + external_constructor::construct(j, b); +} + +template < typename BasicJsonType, typename BoolRef, + enable_if_t < + ((std::is_same::reference, BoolRef>::value + && !std::is_same ::reference, typename BasicJsonType::boolean_t&>::value) + || (std::is_same::const_reference, BoolRef>::value + && !std::is_same ::const_reference>, + typename BasicJsonType::boolean_t >::value)) + && std::is_convertible::value, int > = 0 > +inline void to_json(BasicJsonType& j, const BoolRef& b) noexcept +{ + external_constructor::construct(j, static_cast(b)); +} + +template::value, int> = 0> +inline void to_json(BasicJsonType& j, const CompatibleString& s) +{ + external_constructor::construct(j, s); +} + +template +inline void to_json(BasicJsonType& j, typename BasicJsonType::string_t&& s) +{ + external_constructor::construct(j, std::move(s)); +} + +template::value, int> = 0> +inline void to_json(BasicJsonType& j, FloatType val) noexcept +{ + external_constructor::construct(j, static_cast(val)); +} + +template::value, int> = 0> +inline void to_json(BasicJsonType& j, CompatibleNumberUnsignedType val) noexcept +{ + external_constructor::construct(j, static_cast(val)); +} + +template::value, int> = 0> +inline void to_json(BasicJsonType& j, CompatibleNumberIntegerType val) noexcept +{ + external_constructor::construct(j, static_cast(val)); +} + +#if !JSON_DISABLE_ENUM_SERIALIZATION +template::value, int> = 0> +inline void to_json(BasicJsonType& j, EnumType e) noexcept +{ + using underlying_type = typename std::underlying_type::type; + external_constructor::construct(j, static_cast(e)); +} +#endif // JSON_DISABLE_ENUM_SERIALIZATION + +template +inline void to_json(BasicJsonType& j, const std::vector& e) +{ + external_constructor::construct(j, e); +} + +template < typename BasicJsonType, typename CompatibleArrayType, + enable_if_t < is_compatible_array_type::value&& + !is_compatible_object_type::value&& + !is_compatible_string_type::value&& + !std::is_same::value&& + !is_basic_json::value, + int > = 0 > +inline void to_json(BasicJsonType& j, const CompatibleArrayType& arr) +{ + external_constructor::construct(j, arr); +} + +template +inline void to_json(BasicJsonType& j, const typename BasicJsonType::binary_t& bin) +{ + external_constructor::construct(j, bin); +} + +template::value, int> = 0> +inline void to_json(BasicJsonType& j, const std::valarray& arr) +{ + external_constructor::construct(j, std::move(arr)); +} + +template +inline void to_json(BasicJsonType& j, typename BasicJsonType::array_t&& arr) +{ + external_constructor::construct(j, std::move(arr)); +} + +template < typename BasicJsonType, typename CompatibleObjectType, + enable_if_t < is_compatible_object_type::value&& !is_basic_json::value, int > = 0 > +inline void to_json(BasicJsonType& j, const CompatibleObjectType& obj) +{ + external_constructor::construct(j, obj); +} + +template +inline void to_json(BasicJsonType& j, typename BasicJsonType::object_t&& obj) +{ + external_constructor::construct(j, std::move(obj)); +} + +template < + typename BasicJsonType, typename T, std::size_t N, + enable_if_t < !std::is_constructible::value, // NOLINT(cppcoreguidelines-avoid-c-arrays,hicpp-avoid-c-arrays,modernize-avoid-c-arrays) + int > = 0 > +inline void to_json(BasicJsonType& j, const T(&arr)[N]) // NOLINT(cppcoreguidelines-avoid-c-arrays,hicpp-avoid-c-arrays,modernize-avoid-c-arrays) +{ + external_constructor::construct(j, arr); +} + +template < typename BasicJsonType, typename T1, typename T2, enable_if_t < std::is_constructible::value&& std::is_constructible::value, int > = 0 > +inline void to_json(BasicJsonType& j, const std::pair& p) +{ + j = { p.first, p.second }; +} + +// for https://github.com/nlohmann/json/pull/1134 +template>::value, int> = 0> +inline void to_json(BasicJsonType& j, const T& b) +{ + j = { {b.key(), b.value()} }; +} + +template +inline void to_json_tuple_impl(BasicJsonType& j, const Tuple& t, index_sequence /*unused*/) +{ + j = { std::get(t)... }; +} + +template::value, int > = 0> +inline void to_json(BasicJsonType& j, const T& t) +{ + to_json_tuple_impl(j, t, make_index_sequence::value> {}); +} + +#if JSON_HAS_FILESYSTEM || JSON_HAS_EXPERIMENTAL_FILESYSTEM +template +inline void to_json(BasicJsonType& j, const std_fs::path& p) +{ + j = p.string(); +} +#endif + +struct to_json_fn +{ + template + auto operator()(BasicJsonType& j, T&& val) const noexcept(noexcept(to_json(j, std::forward(val)))) + -> decltype(to_json(j, std::forward(val)), void()) + { + return to_json(j, std::forward(val)); + } +}; +} // namespace detail + +#ifndef JSON_HAS_CPP_17 +/// namespace to hold default `to_json` function +/// to see why this is required: +/// http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2015/n4381.html +namespace // NOLINT(cert-dcl59-cpp,fuchsia-header-anon-namespaces,google-build-namespaces) +{ +#endif +JSON_INLINE_VARIABLE constexpr const auto& to_json = // NOLINT(misc-definitions-in-headers) + detail::static_const::value; +#ifndef JSON_HAS_CPP_17 +} // namespace +#endif + +NLOHMANN_JSON_NAMESPACE_END diff --git a/include/nlohmann/detail/exceptions.hpp b/include/nlohmann/detail/exceptions.hpp new file mode 100644 index 00000000..5974d7be --- /dev/null +++ b/include/nlohmann/detail/exceptions.hpp @@ -0,0 +1,257 @@ +// __ _____ _____ _____ +// __| | __| | | | JSON for Modern C++ +// | | |__ | | | | | | version 3.11.3 +// |_____|_____|_____|_|___| https://github.com/nlohmann/json +// +// SPDX-FileCopyrightText: 2013-2023 Niels Lohmann +// SPDX-License-Identifier: MIT + +#pragma once + +#include // nullptr_t +#include // exception +#if JSON_DIAGNOSTICS + #include // accumulate +#endif +#include // runtime_error +#include // to_string +#include // vector + +#include +#include +#include +#include +#include +#include +#include + +NLOHMANN_JSON_NAMESPACE_BEGIN +namespace detail +{ + +//////////////// +// exceptions // +//////////////// + +/// @brief general exception of the @ref basic_json class +/// @sa https://json.nlohmann.me/api/basic_json/exception/ +class exception : public std::exception +{ + public: + /// returns the explanatory string + const char* what() const noexcept override + { + return m.what(); + } + + /// the id of the exception + const int id; // NOLINT(cppcoreguidelines-non-private-member-variables-in-classes) + + protected: + JSON_HEDLEY_NON_NULL(3) + exception(int id_, const char* what_arg) : id(id_), m(what_arg) {} // NOLINT(bugprone-throw-keyword-missing) + + static std::string name(const std::string& ename, int id_) + { + return concat("[json.exception.", ename, '.', std::to_string(id_), "] "); + } + + static std::string diagnostics(std::nullptr_t /*leaf_element*/) + { + return ""; + } + + template + static std::string diagnostics(const BasicJsonType* leaf_element) + { +#if JSON_DIAGNOSTICS + std::vector tokens; + for (const auto* current = leaf_element; current != nullptr && current->m_parent != nullptr; current = current->m_parent) + { + switch (current->m_parent->type()) + { + case value_t::array: + { + for (std::size_t i = 0; i < current->m_parent->m_data.m_value.array->size(); ++i) + { + if (¤t->m_parent->m_data.m_value.array->operator[](i) == current) + { + tokens.emplace_back(std::to_string(i)); + break; + } + } + break; + } + + case value_t::object: + { + for (const auto& element : *current->m_parent->m_data.m_value.object) + { + if (&element.second == current) + { + tokens.emplace_back(element.first.c_str()); + break; + } + } + break; + } + + case value_t::null: // LCOV_EXCL_LINE + case value_t::string: // LCOV_EXCL_LINE + case value_t::boolean: // LCOV_EXCL_LINE + case value_t::number_integer: // LCOV_EXCL_LINE + case value_t::number_unsigned: // LCOV_EXCL_LINE + case value_t::number_float: // LCOV_EXCL_LINE + case value_t::binary: // LCOV_EXCL_LINE + case value_t::discarded: // LCOV_EXCL_LINE + default: // LCOV_EXCL_LINE + break; // LCOV_EXCL_LINE + } + } + + if (tokens.empty()) + { + return ""; + } + + auto str = std::accumulate(tokens.rbegin(), tokens.rend(), std::string{}, + [](const std::string & a, const std::string & b) + { + return concat(a, '/', detail::escape(b)); + }); + return concat('(', str, ") "); +#else + static_cast(leaf_element); + return ""; +#endif + } + + private: + /// an exception object as storage for error messages + std::runtime_error m; +}; + +/// @brief exception indicating a parse error +/// @sa https://json.nlohmann.me/api/basic_json/parse_error/ +class parse_error : public exception +{ + public: + /*! + @brief create a parse error exception + @param[in] id_ the id of the exception + @param[in] pos the position where the error occurred (or with + chars_read_total=0 if the position cannot be + determined) + @param[in] what_arg the explanatory string + @return parse_error object + */ + template::value, int> = 0> + static parse_error create(int id_, const position_t& pos, const std::string& what_arg, BasicJsonContext context) + { + const std::string w = concat(exception::name("parse_error", id_), "parse error", + position_string(pos), ": ", exception::diagnostics(context), what_arg); + return {id_, pos.chars_read_total, w.c_str()}; + } + + template::value, int> = 0> + static parse_error create(int id_, std::size_t byte_, const std::string& what_arg, BasicJsonContext context) + { + const std::string w = concat(exception::name("parse_error", id_), "parse error", + (byte_ != 0 ? (concat(" at byte ", std::to_string(byte_))) : ""), + ": ", exception::diagnostics(context), what_arg); + return {id_, byte_, w.c_str()}; + } + + /*! + @brief byte index of the parse error + + The byte index of the last read character in the input file. + + @note For an input with n bytes, 1 is the index of the first character and + n+1 is the index of the terminating null byte or the end of file. + This also holds true when reading a byte vector (CBOR or MessagePack). + */ + const std::size_t byte; + + private: + parse_error(int id_, std::size_t byte_, const char* what_arg) + : exception(id_, what_arg), byte(byte_) {} + + static std::string position_string(const position_t& pos) + { + return concat(" at line ", std::to_string(pos.lines_read + 1), + ", column ", std::to_string(pos.chars_read_current_line)); + } +}; + +/// @brief exception indicating errors with iterators +/// @sa https://json.nlohmann.me/api/basic_json/invalid_iterator/ +class invalid_iterator : public exception +{ + public: + template::value, int> = 0> + static invalid_iterator create(int id_, const std::string& what_arg, BasicJsonContext context) + { + const std::string w = concat(exception::name("invalid_iterator", id_), exception::diagnostics(context), what_arg); + return {id_, w.c_str()}; + } + + private: + JSON_HEDLEY_NON_NULL(3) + invalid_iterator(int id_, const char* what_arg) + : exception(id_, what_arg) {} +}; + +/// @brief exception indicating executing a member function with a wrong type +/// @sa https://json.nlohmann.me/api/basic_json/type_error/ +class type_error : public exception +{ + public: + template::value, int> = 0> + static type_error create(int id_, const std::string& what_arg, BasicJsonContext context) + { + const std::string w = concat(exception::name("type_error", id_), exception::diagnostics(context), what_arg); + return {id_, w.c_str()}; + } + + private: + JSON_HEDLEY_NON_NULL(3) + type_error(int id_, const char* what_arg) : exception(id_, what_arg) {} +}; + +/// @brief exception indicating access out of the defined range +/// @sa https://json.nlohmann.me/api/basic_json/out_of_range/ +class out_of_range : public exception +{ + public: + template::value, int> = 0> + static out_of_range create(int id_, const std::string& what_arg, BasicJsonContext context) + { + const std::string w = concat(exception::name("out_of_range", id_), exception::diagnostics(context), what_arg); + return {id_, w.c_str()}; + } + + private: + JSON_HEDLEY_NON_NULL(3) + out_of_range(int id_, const char* what_arg) : exception(id_, what_arg) {} +}; + +/// @brief exception indicating other library errors +/// @sa https://json.nlohmann.me/api/basic_json/other_error/ +class other_error : public exception +{ + public: + template::value, int> = 0> + static other_error create(int id_, const std::string& what_arg, BasicJsonContext context) + { + const std::string w = concat(exception::name("other_error", id_), exception::diagnostics(context), what_arg); + return {id_, w.c_str()}; + } + + private: + JSON_HEDLEY_NON_NULL(3) + other_error(int id_, const char* what_arg) : exception(id_, what_arg) {} +}; + +} // namespace detail +NLOHMANN_JSON_NAMESPACE_END diff --git a/include/nlohmann/detail/hash.hpp b/include/nlohmann/detail/hash.hpp new file mode 100644 index 00000000..4464e8e6 --- /dev/null +++ b/include/nlohmann/detail/hash.hpp @@ -0,0 +1,129 @@ +// __ _____ _____ _____ +// __| | __| | | | JSON for Modern C++ +// | | |__ | | | | | | version 3.11.3 +// |_____|_____|_____|_|___| https://github.com/nlohmann/json +// +// SPDX-FileCopyrightText: 2013-2023 Niels Lohmann +// SPDX-License-Identifier: MIT + +#pragma once + +#include // uint8_t +#include // size_t +#include // hash + +#include +#include + +NLOHMANN_JSON_NAMESPACE_BEGIN +namespace detail +{ + +// boost::hash_combine +inline std::size_t combine(std::size_t seed, std::size_t h) noexcept +{ + seed ^= h + 0x9e3779b9 + (seed << 6U) + (seed >> 2U); + return seed; +} + +/*! +@brief hash a JSON value + +The hash function tries to rely on std::hash where possible. Furthermore, the +type of the JSON value is taken into account to have different hash values for +null, 0, 0U, and false, etc. + +@tparam BasicJsonType basic_json specialization +@param j JSON value to hash +@return hash value of j +*/ +template +std::size_t hash(const BasicJsonType& j) +{ + using string_t = typename BasicJsonType::string_t; + using number_integer_t = typename BasicJsonType::number_integer_t; + using number_unsigned_t = typename BasicJsonType::number_unsigned_t; + using number_float_t = typename BasicJsonType::number_float_t; + + const auto type = static_cast(j.type()); + switch (j.type()) + { + case BasicJsonType::value_t::null: + case BasicJsonType::value_t::discarded: + { + return combine(type, 0); + } + + case BasicJsonType::value_t::object: + { + auto seed = combine(type, j.size()); + for (const auto& element : j.items()) + { + const auto h = std::hash {}(element.key()); + seed = combine(seed, h); + seed = combine(seed, hash(element.value())); + } + return seed; + } + + case BasicJsonType::value_t::array: + { + auto seed = combine(type, j.size()); + for (const auto& element : j) + { + seed = combine(seed, hash(element)); + } + return seed; + } + + case BasicJsonType::value_t::string: + { + const auto h = std::hash {}(j.template get_ref()); + return combine(type, h); + } + + case BasicJsonType::value_t::boolean: + { + const auto h = std::hash {}(j.template get()); + return combine(type, h); + } + + case BasicJsonType::value_t::number_integer: + { + const auto h = std::hash {}(j.template get()); + return combine(type, h); + } + + case BasicJsonType::value_t::number_unsigned: + { + const auto h = std::hash {}(j.template get()); + return combine(type, h); + } + + case BasicJsonType::value_t::number_float: + { + const auto h = std::hash {}(j.template get()); + return combine(type, h); + } + + case BasicJsonType::value_t::binary: + { + auto seed = combine(type, j.get_binary().size()); + const auto h = std::hash {}(j.get_binary().has_subtype()); + seed = combine(seed, h); + seed = combine(seed, static_cast(j.get_binary().subtype())); + for (const auto byte : j.get_binary()) + { + seed = combine(seed, std::hash {}(byte)); + } + return seed; + } + + default: // LCOV_EXCL_LINE + JSON_ASSERT(false); // NOLINT(cert-dcl03-c,hicpp-static-assert,misc-static-assert) LCOV_EXCL_LINE + return 0; // LCOV_EXCL_LINE + } +} + +} // namespace detail +NLOHMANN_JSON_NAMESPACE_END diff --git a/include/nlohmann/detail/input/binary_reader.hpp b/include/nlohmann/detail/input/binary_reader.hpp new file mode 100644 index 00000000..a6e100e7 --- /dev/null +++ b/include/nlohmann/detail/input/binary_reader.hpp @@ -0,0 +1,3009 @@ +// __ _____ _____ _____ +// __| | __| | | | JSON for Modern C++ +// | | |__ | | | | | | version 3.11.3 +// |_____|_____|_____|_|___| https://github.com/nlohmann/json +// +// SPDX-FileCopyrightText: 2013-2023 Niels Lohmann +// SPDX-License-Identifier: MIT + +#pragma once + +#include // generate_n +#include // array +#include // ldexp +#include // size_t +#include // uint8_t, uint16_t, uint32_t, uint64_t +#include // snprintf +#include // memcpy +#include // back_inserter +#include // numeric_limits +#include // char_traits, string +#include // make_pair, move +#include // vector + +#include +#include +#include +#include +#include +#include +#include +#include +#include + +NLOHMANN_JSON_NAMESPACE_BEGIN +namespace detail +{ + +/// how to treat CBOR tags +enum class cbor_tag_handler_t +{ + error, ///< throw a parse_error exception in case of a tag + ignore, ///< ignore tags + store ///< store tags as binary type +}; + +/*! +@brief determine system byte order + +@return true if and only if system's byte order is little endian + +@note from https://stackoverflow.com/a/1001328/266378 +*/ +static inline bool little_endianness(int num = 1) noexcept +{ + return *reinterpret_cast(&num) == 1; +} + +/////////////////// +// binary reader // +/////////////////// + +/*! +@brief deserialization of CBOR, MessagePack, and UBJSON values +*/ +template> +class binary_reader +{ + using number_integer_t = typename BasicJsonType::number_integer_t; + using number_unsigned_t = typename BasicJsonType::number_unsigned_t; + using number_float_t = typename BasicJsonType::number_float_t; + using string_t = typename BasicJsonType::string_t; + using binary_t = typename BasicJsonType::binary_t; + using json_sax_t = SAX; + using char_type = typename InputAdapterType::char_type; + using char_int_type = typename char_traits::int_type; + + public: + /*! + @brief create a binary reader + + @param[in] adapter input adapter to read from + */ + explicit binary_reader(InputAdapterType&& adapter, const input_format_t format = input_format_t::json) noexcept : ia(std::move(adapter)), input_format(format) + { + (void)detail::is_sax_static_asserts {}; + } + + // make class move-only + binary_reader(const binary_reader&) = delete; + binary_reader(binary_reader&&) = default; // NOLINT(hicpp-noexcept-move,performance-noexcept-move-constructor) + binary_reader& operator=(const binary_reader&) = delete; + binary_reader& operator=(binary_reader&&) = default; // NOLINT(hicpp-noexcept-move,performance-noexcept-move-constructor) + ~binary_reader() = default; + + /*! + @param[in] format the binary format to parse + @param[in] sax_ a SAX event processor + @param[in] strict whether to expect the input to be consumed completed + @param[in] tag_handler how to treat CBOR tags + + @return whether parsing was successful + */ + JSON_HEDLEY_NON_NULL(3) + bool sax_parse(const input_format_t format, + json_sax_t* sax_, + const bool strict = true, + const cbor_tag_handler_t tag_handler = cbor_tag_handler_t::error) + { + sax = sax_; + bool result = false; + + switch (format) + { + case input_format_t::bson: + result = parse_bson_internal(); + break; + + case input_format_t::cbor: + result = parse_cbor_internal(true, tag_handler); + break; + + case input_format_t::msgpack: + result = parse_msgpack_internal(); + break; + + case input_format_t::ubjson: + case input_format_t::bjdata: + result = parse_ubjson_internal(); + break; + + case input_format_t::json: // LCOV_EXCL_LINE + default: // LCOV_EXCL_LINE + JSON_ASSERT(false); // NOLINT(cert-dcl03-c,hicpp-static-assert,misc-static-assert) LCOV_EXCL_LINE + } + + // strict mode: next byte must be EOF + if (result && strict) + { + if (input_format == input_format_t::ubjson || input_format == input_format_t::bjdata) + { + get_ignore_noop(); + } + else + { + get(); + } + + if (JSON_HEDLEY_UNLIKELY(current != char_traits::eof())) + { + return sax->parse_error(chars_read, get_token_string(), parse_error::create(110, chars_read, + exception_message(input_format, concat("expected end of input; last byte: 0x", get_token_string()), "value"), nullptr)); + } + } + + return result; + } + + private: + ////////// + // BSON // + ////////// + + /*! + @brief Reads in a BSON-object and passes it to the SAX-parser. + @return whether a valid BSON-value was passed to the SAX parser + */ + bool parse_bson_internal() + { + std::int32_t document_size{}; + get_number(input_format_t::bson, document_size); + + if (JSON_HEDLEY_UNLIKELY(!sax->start_object(static_cast(-1)))) + { + return false; + } + + if (JSON_HEDLEY_UNLIKELY(!parse_bson_element_list(/*is_array*/false))) + { + return false; + } + + return sax->end_object(); + } + + /*! + @brief Parses a C-style string from the BSON input. + @param[in,out] result A reference to the string variable where the read + string is to be stored. + @return `true` if the \x00-byte indicating the end of the string was + encountered before the EOF; false` indicates an unexpected EOF. + */ + bool get_bson_cstr(string_t& result) + { + auto out = std::back_inserter(result); + while (true) + { + get(); + if (JSON_HEDLEY_UNLIKELY(!unexpect_eof(input_format_t::bson, "cstring"))) + { + return false; + } + if (current == 0x00) + { + return true; + } + *out++ = static_cast(current); + } + } + + /*! + @brief Parses a zero-terminated string of length @a len from the BSON + input. + @param[in] len The length (including the zero-byte at the end) of the + string to be read. + @param[in,out] result A reference to the string variable where the read + string is to be stored. + @tparam NumberType The type of the length @a len + @pre len >= 1 + @return `true` if the string was successfully parsed + */ + template + bool get_bson_string(const NumberType len, string_t& result) + { + if (JSON_HEDLEY_UNLIKELY(len < 1)) + { + auto last_token = get_token_string(); + return sax->parse_error(chars_read, last_token, parse_error::create(112, chars_read, + exception_message(input_format_t::bson, concat("string length must be at least 1, is ", std::to_string(len)), "string"), nullptr)); + } + + return get_string(input_format_t::bson, len - static_cast(1), result) && get() != char_traits::eof(); + } + + /*! + @brief Parses a byte array input of length @a len from the BSON input. + @param[in] len The length of the byte array to be read. + @param[in,out] result A reference to the binary variable where the read + array is to be stored. + @tparam NumberType The type of the length @a len + @pre len >= 0 + @return `true` if the byte array was successfully parsed + */ + template + bool get_bson_binary(const NumberType len, binary_t& result) + { + if (JSON_HEDLEY_UNLIKELY(len < 0)) + { + auto last_token = get_token_string(); + return sax->parse_error(chars_read, last_token, parse_error::create(112, chars_read, + exception_message(input_format_t::bson, concat("byte array length cannot be negative, is ", std::to_string(len)), "binary"), nullptr)); + } + + // All BSON binary values have a subtype + std::uint8_t subtype{}; + get_number(input_format_t::bson, subtype); + result.set_subtype(subtype); + + return get_binary(input_format_t::bson, len, result); + } + + /*! + @brief Read a BSON document element of the given @a element_type. + @param[in] element_type The BSON element type, c.f. http://bsonspec.org/spec.html + @param[in] element_type_parse_position The position in the input stream, + where the `element_type` was read. + @warning Not all BSON element types are supported yet. An unsupported + @a element_type will give rise to a parse_error.114: + Unsupported BSON record type 0x... + @return whether a valid BSON-object/array was passed to the SAX parser + */ + bool parse_bson_element_internal(const char_int_type element_type, + const std::size_t element_type_parse_position) + { + switch (element_type) + { + case 0x01: // double + { + double number{}; + return get_number(input_format_t::bson, number) && sax->number_float(static_cast(number), ""); + } + + case 0x02: // string + { + std::int32_t len{}; + string_t value; + return get_number(input_format_t::bson, len) && get_bson_string(len, value) && sax->string(value); + } + + case 0x03: // object + { + return parse_bson_internal(); + } + + case 0x04: // array + { + return parse_bson_array(); + } + + case 0x05: // binary + { + std::int32_t len{}; + binary_t value; + return get_number(input_format_t::bson, len) && get_bson_binary(len, value) && sax->binary(value); + } + + case 0x08: // boolean + { + return sax->boolean(get() != 0); + } + + case 0x0A: // null + { + return sax->null(); + } + + case 0x10: // int32 + { + std::int32_t value{}; + return get_number(input_format_t::bson, value) && sax->number_integer(value); + } + + case 0x12: // int64 + { + std::int64_t value{}; + return get_number(input_format_t::bson, value) && sax->number_integer(value); + } + + default: // anything else not supported (yet) + { + std::array cr{{}}; + static_cast((std::snprintf)(cr.data(), cr.size(), "%.2hhX", static_cast(element_type))); // NOLINT(cppcoreguidelines-pro-type-vararg,hicpp-vararg) + const std::string cr_str{cr.data()}; + return sax->parse_error(element_type_parse_position, cr_str, + parse_error::create(114, element_type_parse_position, concat("Unsupported BSON record type 0x", cr_str), nullptr)); + } + } + } + + /*! + @brief Read a BSON element list (as specified in the BSON-spec) + + The same binary layout is used for objects and arrays, hence it must be + indicated with the argument @a is_array which one is expected + (true --> array, false --> object). + + @param[in] is_array Determines if the element list being read is to be + treated as an object (@a is_array == false), or as an + array (@a is_array == true). + @return whether a valid BSON-object/array was passed to the SAX parser + */ + bool parse_bson_element_list(const bool is_array) + { + string_t key; + + while (auto element_type = get()) + { + if (JSON_HEDLEY_UNLIKELY(!unexpect_eof(input_format_t::bson, "element list"))) + { + return false; + } + + const std::size_t element_type_parse_position = chars_read; + if (JSON_HEDLEY_UNLIKELY(!get_bson_cstr(key))) + { + return false; + } + + if (!is_array && !sax->key(key)) + { + return false; + } + + if (JSON_HEDLEY_UNLIKELY(!parse_bson_element_internal(element_type, element_type_parse_position))) + { + return false; + } + + // get_bson_cstr only appends + key.clear(); + } + + return true; + } + + /*! + @brief Reads an array from the BSON input and passes it to the SAX-parser. + @return whether a valid BSON-array was passed to the SAX parser + */ + bool parse_bson_array() + { + std::int32_t document_size{}; + get_number(input_format_t::bson, document_size); + + if (JSON_HEDLEY_UNLIKELY(!sax->start_array(static_cast(-1)))) + { + return false; + } + + if (JSON_HEDLEY_UNLIKELY(!parse_bson_element_list(/*is_array*/true))) + { + return false; + } + + return sax->end_array(); + } + + ////////// + // CBOR // + ////////// + + /*! + @param[in] get_char whether a new character should be retrieved from the + input (true) or whether the last read character should + be considered instead (false) + @param[in] tag_handler how CBOR tags should be treated + + @return whether a valid CBOR value was passed to the SAX parser + */ + bool parse_cbor_internal(const bool get_char, + const cbor_tag_handler_t tag_handler) + { + switch (get_char ? get() : current) + { + // EOF + case char_traits::eof(): + return unexpect_eof(input_format_t::cbor, "value"); + + // Integer 0x00..0x17 (0..23) + case 0x00: + case 0x01: + case 0x02: + case 0x03: + case 0x04: + case 0x05: + case 0x06: + case 0x07: + case 0x08: + case 0x09: + case 0x0A: + case 0x0B: + case 0x0C: + case 0x0D: + case 0x0E: + case 0x0F: + case 0x10: + case 0x11: + case 0x12: + case 0x13: + case 0x14: + case 0x15: + case 0x16: + case 0x17: + return sax->number_unsigned(static_cast(current)); + + case 0x18: // Unsigned integer (one-byte uint8_t follows) + { + std::uint8_t number{}; + return get_number(input_format_t::cbor, number) && sax->number_unsigned(number); + } + + case 0x19: // Unsigned integer (two-byte uint16_t follows) + { + std::uint16_t number{}; + return get_number(input_format_t::cbor, number) && sax->number_unsigned(number); + } + + case 0x1A: // Unsigned integer (four-byte uint32_t follows) + { + std::uint32_t number{}; + return get_number(input_format_t::cbor, number) && sax->number_unsigned(number); + } + + case 0x1B: // Unsigned integer (eight-byte uint64_t follows) + { + std::uint64_t number{}; + return get_number(input_format_t::cbor, number) && sax->number_unsigned(number); + } + + // Negative integer -1-0x00..-1-0x17 (-1..-24) + case 0x20: + case 0x21: + case 0x22: + case 0x23: + case 0x24: + case 0x25: + case 0x26: + case 0x27: + case 0x28: + case 0x29: + case 0x2A: + case 0x2B: + case 0x2C: + case 0x2D: + case 0x2E: + case 0x2F: + case 0x30: + case 0x31: + case 0x32: + case 0x33: + case 0x34: + case 0x35: + case 0x36: + case 0x37: + return sax->number_integer(static_cast(0x20 - 1 - current)); + + case 0x38: // Negative integer (one-byte uint8_t follows) + { + std::uint8_t number{}; + return get_number(input_format_t::cbor, number) && sax->number_integer(static_cast(-1) - number); + } + + case 0x39: // Negative integer -1-n (two-byte uint16_t follows) + { + std::uint16_t number{}; + return get_number(input_format_t::cbor, number) && sax->number_integer(static_cast(-1) - number); + } + + case 0x3A: // Negative integer -1-n (four-byte uint32_t follows) + { + std::uint32_t number{}; + return get_number(input_format_t::cbor, number) && sax->number_integer(static_cast(-1) - number); + } + + case 0x3B: // Negative integer -1-n (eight-byte uint64_t follows) + { + std::uint64_t number{}; + return get_number(input_format_t::cbor, number) && sax->number_integer(static_cast(-1) + - static_cast(number)); + } + + // Binary data (0x00..0x17 bytes follow) + case 0x40: + case 0x41: + case 0x42: + case 0x43: + case 0x44: + case 0x45: + case 0x46: + case 0x47: + case 0x48: + case 0x49: + case 0x4A: + case 0x4B: + case 0x4C: + case 0x4D: + case 0x4E: + case 0x4F: + case 0x50: + case 0x51: + case 0x52: + case 0x53: + case 0x54: + case 0x55: + case 0x56: + case 0x57: + case 0x58: // Binary data (one-byte uint8_t for n follows) + case 0x59: // Binary data (two-byte uint16_t for n follow) + case 0x5A: // Binary data (four-byte uint32_t for n follow) + case 0x5B: // Binary data (eight-byte uint64_t for n follow) + case 0x5F: // Binary data (indefinite length) + { + binary_t b; + return get_cbor_binary(b) && sax->binary(b); + } + + // UTF-8 string (0x00..0x17 bytes follow) + case 0x60: + case 0x61: + case 0x62: + case 0x63: + case 0x64: + case 0x65: + case 0x66: + case 0x67: + case 0x68: + case 0x69: + case 0x6A: + case 0x6B: + case 0x6C: + case 0x6D: + case 0x6E: + case 0x6F: + case 0x70: + case 0x71: + case 0x72: + case 0x73: + case 0x74: + case 0x75: + case 0x76: + case 0x77: + case 0x78: // UTF-8 string (one-byte uint8_t for n follows) + case 0x79: // UTF-8 string (two-byte uint16_t for n follow) + case 0x7A: // UTF-8 string (four-byte uint32_t for n follow) + case 0x7B: // UTF-8 string (eight-byte uint64_t for n follow) + case 0x7F: // UTF-8 string (indefinite length) + { + string_t s; + return get_cbor_string(s) && sax->string(s); + } + + // array (0x00..0x17 data items follow) + case 0x80: + case 0x81: + case 0x82: + case 0x83: + case 0x84: + case 0x85: + case 0x86: + case 0x87: + case 0x88: + case 0x89: + case 0x8A: + case 0x8B: + case 0x8C: + case 0x8D: + case 0x8E: + case 0x8F: + case 0x90: + case 0x91: + case 0x92: + case 0x93: + case 0x94: + case 0x95: + case 0x96: + case 0x97: + return get_cbor_array( + conditional_static_cast(static_cast(current) & 0x1Fu), tag_handler); + + case 0x98: // array (one-byte uint8_t for n follows) + { + std::uint8_t len{}; + return get_number(input_format_t::cbor, len) && get_cbor_array(static_cast(len), tag_handler); + } + + case 0x99: // array (two-byte uint16_t for n follow) + { + std::uint16_t len{}; + return get_number(input_format_t::cbor, len) && get_cbor_array(static_cast(len), tag_handler); + } + + case 0x9A: // array (four-byte uint32_t for n follow) + { + std::uint32_t len{}; + return get_number(input_format_t::cbor, len) && get_cbor_array(conditional_static_cast(len), tag_handler); + } + + case 0x9B: // array (eight-byte uint64_t for n follow) + { + std::uint64_t len{}; + return get_number(input_format_t::cbor, len) && get_cbor_array(conditional_static_cast(len), tag_handler); + } + + case 0x9F: // array (indefinite length) + return get_cbor_array(static_cast(-1), tag_handler); + + // map (0x00..0x17 pairs of data items follow) + case 0xA0: + case 0xA1: + case 0xA2: + case 0xA3: + case 0xA4: + case 0xA5: + case 0xA6: + case 0xA7: + case 0xA8: + case 0xA9: + case 0xAA: + case 0xAB: + case 0xAC: + case 0xAD: + case 0xAE: + case 0xAF: + case 0xB0: + case 0xB1: + case 0xB2: + case 0xB3: + case 0xB4: + case 0xB5: + case 0xB6: + case 0xB7: + return get_cbor_object(conditional_static_cast(static_cast(current) & 0x1Fu), tag_handler); + + case 0xB8: // map (one-byte uint8_t for n follows) + { + std::uint8_t len{}; + return get_number(input_format_t::cbor, len) && get_cbor_object(static_cast(len), tag_handler); + } + + case 0xB9: // map (two-byte uint16_t for n follow) + { + std::uint16_t len{}; + return get_number(input_format_t::cbor, len) && get_cbor_object(static_cast(len), tag_handler); + } + + case 0xBA: // map (four-byte uint32_t for n follow) + { + std::uint32_t len{}; + return get_number(input_format_t::cbor, len) && get_cbor_object(conditional_static_cast(len), tag_handler); + } + + case 0xBB: // map (eight-byte uint64_t for n follow) + { + std::uint64_t len{}; + return get_number(input_format_t::cbor, len) && get_cbor_object(conditional_static_cast(len), tag_handler); + } + + case 0xBF: // map (indefinite length) + return get_cbor_object(static_cast(-1), tag_handler); + + case 0xC6: // tagged item + case 0xC7: + case 0xC8: + case 0xC9: + case 0xCA: + case 0xCB: + case 0xCC: + case 0xCD: + case 0xCE: + case 0xCF: + case 0xD0: + case 0xD1: + case 0xD2: + case 0xD3: + case 0xD4: + case 0xD8: // tagged item (1 bytes follow) + case 0xD9: // tagged item (2 bytes follow) + case 0xDA: // tagged item (4 bytes follow) + case 0xDB: // tagged item (8 bytes follow) + { + switch (tag_handler) + { + case cbor_tag_handler_t::error: + { + auto last_token = get_token_string(); + return sax->parse_error(chars_read, last_token, parse_error::create(112, chars_read, + exception_message(input_format_t::cbor, concat("invalid byte: 0x", last_token), "value"), nullptr)); + } + + case cbor_tag_handler_t::ignore: + { + // ignore binary subtype + switch (current) + { + case 0xD8: + { + std::uint8_t subtype_to_ignore{}; + get_number(input_format_t::cbor, subtype_to_ignore); + break; + } + case 0xD9: + { + std::uint16_t subtype_to_ignore{}; + get_number(input_format_t::cbor, subtype_to_ignore); + break; + } + case 0xDA: + { + std::uint32_t subtype_to_ignore{}; + get_number(input_format_t::cbor, subtype_to_ignore); + break; + } + case 0xDB: + { + std::uint64_t subtype_to_ignore{}; + get_number(input_format_t::cbor, subtype_to_ignore); + break; + } + default: + break; + } + return parse_cbor_internal(true, tag_handler); + } + + case cbor_tag_handler_t::store: + { + binary_t b; + // use binary subtype and store in binary container + switch (current) + { + case 0xD8: + { + std::uint8_t subtype{}; + get_number(input_format_t::cbor, subtype); + b.set_subtype(detail::conditional_static_cast(subtype)); + break; + } + case 0xD9: + { + std::uint16_t subtype{}; + get_number(input_format_t::cbor, subtype); + b.set_subtype(detail::conditional_static_cast(subtype)); + break; + } + case 0xDA: + { + std::uint32_t subtype{}; + get_number(input_format_t::cbor, subtype); + b.set_subtype(detail::conditional_static_cast(subtype)); + break; + } + case 0xDB: + { + std::uint64_t subtype{}; + get_number(input_format_t::cbor, subtype); + b.set_subtype(detail::conditional_static_cast(subtype)); + break; + } + default: + return parse_cbor_internal(true, tag_handler); + } + get(); + return get_cbor_binary(b) && sax->binary(b); + } + + default: // LCOV_EXCL_LINE + JSON_ASSERT(false); // NOLINT(cert-dcl03-c,hicpp-static-assert,misc-static-assert) LCOV_EXCL_LINE + return false; // LCOV_EXCL_LINE + } + } + + case 0xF4: // false + return sax->boolean(false); + + case 0xF5: // true + return sax->boolean(true); + + case 0xF6: // null + return sax->null(); + + case 0xF9: // Half-Precision Float (two-byte IEEE 754) + { + const auto byte1_raw = get(); + if (JSON_HEDLEY_UNLIKELY(!unexpect_eof(input_format_t::cbor, "number"))) + { + return false; + } + const auto byte2_raw = get(); + if (JSON_HEDLEY_UNLIKELY(!unexpect_eof(input_format_t::cbor, "number"))) + { + return false; + } + + const auto byte1 = static_cast(byte1_raw); + const auto byte2 = static_cast(byte2_raw); + + // code from RFC 7049, Appendix D, Figure 3: + // As half-precision floating-point numbers were only added + // to IEEE 754 in 2008, today's programming platforms often + // still only have limited support for them. It is very + // easy to include at least decoding support for them even + // without such support. An example of a small decoder for + // half-precision floating-point numbers in the C language + // is shown in Fig. 3. + const auto half = static_cast((byte1 << 8u) + byte2); + const double val = [&half] + { + const int exp = (half >> 10u) & 0x1Fu; + const unsigned int mant = half & 0x3FFu; + JSON_ASSERT(0 <= exp&& exp <= 32); + JSON_ASSERT(mant <= 1024); + switch (exp) + { + case 0: + return std::ldexp(mant, -24); + case 31: + return (mant == 0) + ? std::numeric_limits::infinity() + : std::numeric_limits::quiet_NaN(); + default: + return std::ldexp(mant + 1024, exp - 25); + } + }(); + return sax->number_float((half & 0x8000u) != 0 + ? static_cast(-val) + : static_cast(val), ""); + } + + case 0xFA: // Single-Precision Float (four-byte IEEE 754) + { + float number{}; + return get_number(input_format_t::cbor, number) && sax->number_float(static_cast(number), ""); + } + + case 0xFB: // Double-Precision Float (eight-byte IEEE 754) + { + double number{}; + return get_number(input_format_t::cbor, number) && sax->number_float(static_cast(number), ""); + } + + default: // anything else (0xFF is handled inside the other types) + { + auto last_token = get_token_string(); + return sax->parse_error(chars_read, last_token, parse_error::create(112, chars_read, + exception_message(input_format_t::cbor, concat("invalid byte: 0x", last_token), "value"), nullptr)); + } + } + } + + /*! + @brief reads a CBOR string + + This function first reads starting bytes to determine the expected + string length and then copies this number of bytes into a string. + Additionally, CBOR's strings with indefinite lengths are supported. + + @param[out] result created string + + @return whether string creation completed + */ + bool get_cbor_string(string_t& result) + { + if (JSON_HEDLEY_UNLIKELY(!unexpect_eof(input_format_t::cbor, "string"))) + { + return false; + } + + switch (current) + { + // UTF-8 string (0x00..0x17 bytes follow) + case 0x60: + case 0x61: + case 0x62: + case 0x63: + case 0x64: + case 0x65: + case 0x66: + case 0x67: + case 0x68: + case 0x69: + case 0x6A: + case 0x6B: + case 0x6C: + case 0x6D: + case 0x6E: + case 0x6F: + case 0x70: + case 0x71: + case 0x72: + case 0x73: + case 0x74: + case 0x75: + case 0x76: + case 0x77: + { + return get_string(input_format_t::cbor, static_cast(current) & 0x1Fu, result); + } + + case 0x78: // UTF-8 string (one-byte uint8_t for n follows) + { + std::uint8_t len{}; + return get_number(input_format_t::cbor, len) && get_string(input_format_t::cbor, len, result); + } + + case 0x79: // UTF-8 string (two-byte uint16_t for n follow) + { + std::uint16_t len{}; + return get_number(input_format_t::cbor, len) && get_string(input_format_t::cbor, len, result); + } + + case 0x7A: // UTF-8 string (four-byte uint32_t for n follow) + { + std::uint32_t len{}; + return get_number(input_format_t::cbor, len) && get_string(input_format_t::cbor, len, result); + } + + case 0x7B: // UTF-8 string (eight-byte uint64_t for n follow) + { + std::uint64_t len{}; + return get_number(input_format_t::cbor, len) && get_string(input_format_t::cbor, len, result); + } + + case 0x7F: // UTF-8 string (indefinite length) + { + while (get() != 0xFF) + { + string_t chunk; + if (!get_cbor_string(chunk)) + { + return false; + } + result.append(chunk); + } + return true; + } + + default: + { + auto last_token = get_token_string(); + return sax->parse_error(chars_read, last_token, parse_error::create(113, chars_read, + exception_message(input_format_t::cbor, concat("expected length specification (0x60-0x7B) or indefinite string type (0x7F); last byte: 0x", last_token), "string"), nullptr)); + } + } + } + + /*! + @brief reads a CBOR byte array + + This function first reads starting bytes to determine the expected + byte array length and then copies this number of bytes into the byte array. + Additionally, CBOR's byte arrays with indefinite lengths are supported. + + @param[out] result created byte array + + @return whether byte array creation completed + */ + bool get_cbor_binary(binary_t& result) + { + if (JSON_HEDLEY_UNLIKELY(!unexpect_eof(input_format_t::cbor, "binary"))) + { + return false; + } + + switch (current) + { + // Binary data (0x00..0x17 bytes follow) + case 0x40: + case 0x41: + case 0x42: + case 0x43: + case 0x44: + case 0x45: + case 0x46: + case 0x47: + case 0x48: + case 0x49: + case 0x4A: + case 0x4B: + case 0x4C: + case 0x4D: + case 0x4E: + case 0x4F: + case 0x50: + case 0x51: + case 0x52: + case 0x53: + case 0x54: + case 0x55: + case 0x56: + case 0x57: + { + return get_binary(input_format_t::cbor, static_cast(current) & 0x1Fu, result); + } + + case 0x58: // Binary data (one-byte uint8_t for n follows) + { + std::uint8_t len{}; + return get_number(input_format_t::cbor, len) && + get_binary(input_format_t::cbor, len, result); + } + + case 0x59: // Binary data (two-byte uint16_t for n follow) + { + std::uint16_t len{}; + return get_number(input_format_t::cbor, len) && + get_binary(input_format_t::cbor, len, result); + } + + case 0x5A: // Binary data (four-byte uint32_t for n follow) + { + std::uint32_t len{}; + return get_number(input_format_t::cbor, len) && + get_binary(input_format_t::cbor, len, result); + } + + case 0x5B: // Binary data (eight-byte uint64_t for n follow) + { + std::uint64_t len{}; + return get_number(input_format_t::cbor, len) && + get_binary(input_format_t::cbor, len, result); + } + + case 0x5F: // Binary data (indefinite length) + { + while (get() != 0xFF) + { + binary_t chunk; + if (!get_cbor_binary(chunk)) + { + return false; + } + result.insert(result.end(), chunk.begin(), chunk.end()); + } + return true; + } + + default: + { + auto last_token = get_token_string(); + return sax->parse_error(chars_read, last_token, parse_error::create(113, chars_read, + exception_message(input_format_t::cbor, concat("expected length specification (0x40-0x5B) or indefinite binary array type (0x5F); last byte: 0x", last_token), "binary"), nullptr)); + } + } + } + + /*! + @param[in] len the length of the array or static_cast(-1) for an + array of indefinite size + @param[in] tag_handler how CBOR tags should be treated + @return whether array creation completed + */ + bool get_cbor_array(const std::size_t len, + const cbor_tag_handler_t tag_handler) + { + if (JSON_HEDLEY_UNLIKELY(!sax->start_array(len))) + { + return false; + } + + if (len != static_cast(-1)) + { + for (std::size_t i = 0; i < len; ++i) + { + if (JSON_HEDLEY_UNLIKELY(!parse_cbor_internal(true, tag_handler))) + { + return false; + } + } + } + else + { + while (get() != 0xFF) + { + if (JSON_HEDLEY_UNLIKELY(!parse_cbor_internal(false, tag_handler))) + { + return false; + } + } + } + + return sax->end_array(); + } + + /*! + @param[in] len the length of the object or static_cast(-1) for an + object of indefinite size + @param[in] tag_handler how CBOR tags should be treated + @return whether object creation completed + */ + bool get_cbor_object(const std::size_t len, + const cbor_tag_handler_t tag_handler) + { + if (JSON_HEDLEY_UNLIKELY(!sax->start_object(len))) + { + return false; + } + + if (len != 0) + { + string_t key; + if (len != static_cast(-1)) + { + for (std::size_t i = 0; i < len; ++i) + { + get(); + if (JSON_HEDLEY_UNLIKELY(!get_cbor_string(key) || !sax->key(key))) + { + return false; + } + + if (JSON_HEDLEY_UNLIKELY(!parse_cbor_internal(true, tag_handler))) + { + return false; + } + key.clear(); + } + } + else + { + while (get() != 0xFF) + { + if (JSON_HEDLEY_UNLIKELY(!get_cbor_string(key) || !sax->key(key))) + { + return false; + } + + if (JSON_HEDLEY_UNLIKELY(!parse_cbor_internal(true, tag_handler))) + { + return false; + } + key.clear(); + } + } + } + + return sax->end_object(); + } + + ///////////// + // MsgPack // + ///////////// + + /*! + @return whether a valid MessagePack value was passed to the SAX parser + */ + bool parse_msgpack_internal() + { + switch (get()) + { + // EOF + case char_traits::eof(): + return unexpect_eof(input_format_t::msgpack, "value"); + + // positive fixint + case 0x00: + case 0x01: + case 0x02: + case 0x03: + case 0x04: + case 0x05: + case 0x06: + case 0x07: + case 0x08: + case 0x09: + case 0x0A: + case 0x0B: + case 0x0C: + case 0x0D: + case 0x0E: + case 0x0F: + case 0x10: + case 0x11: + case 0x12: + case 0x13: + case 0x14: + case 0x15: + case 0x16: + case 0x17: + case 0x18: + case 0x19: + case 0x1A: + case 0x1B: + case 0x1C: + case 0x1D: + case 0x1E: + case 0x1F: + case 0x20: + case 0x21: + case 0x22: + case 0x23: + case 0x24: + case 0x25: + case 0x26: + case 0x27: + case 0x28: + case 0x29: + case 0x2A: + case 0x2B: + case 0x2C: + case 0x2D: + case 0x2E: + case 0x2F: + case 0x30: + case 0x31: + case 0x32: + case 0x33: + case 0x34: + case 0x35: + case 0x36: + case 0x37: + case 0x38: + case 0x39: + case 0x3A: + case 0x3B: + case 0x3C: + case 0x3D: + case 0x3E: + case 0x3F: + case 0x40: + case 0x41: + case 0x42: + case 0x43: + case 0x44: + case 0x45: + case 0x46: + case 0x47: + case 0x48: + case 0x49: + case 0x4A: + case 0x4B: + case 0x4C: + case 0x4D: + case 0x4E: + case 0x4F: + case 0x50: + case 0x51: + case 0x52: + case 0x53: + case 0x54: + case 0x55: + case 0x56: + case 0x57: + case 0x58: + case 0x59: + case 0x5A: + case 0x5B: + case 0x5C: + case 0x5D: + case 0x5E: + case 0x5F: + case 0x60: + case 0x61: + case 0x62: + case 0x63: + case 0x64: + case 0x65: + case 0x66: + case 0x67: + case 0x68: + case 0x69: + case 0x6A: + case 0x6B: + case 0x6C: + case 0x6D: + case 0x6E: + case 0x6F: + case 0x70: + case 0x71: + case 0x72: + case 0x73: + case 0x74: + case 0x75: + case 0x76: + case 0x77: + case 0x78: + case 0x79: + case 0x7A: + case 0x7B: + case 0x7C: + case 0x7D: + case 0x7E: + case 0x7F: + return sax->number_unsigned(static_cast(current)); + + // fixmap + case 0x80: + case 0x81: + case 0x82: + case 0x83: + case 0x84: + case 0x85: + case 0x86: + case 0x87: + case 0x88: + case 0x89: + case 0x8A: + case 0x8B: + case 0x8C: + case 0x8D: + case 0x8E: + case 0x8F: + return get_msgpack_object(conditional_static_cast(static_cast(current) & 0x0Fu)); + + // fixarray + case 0x90: + case 0x91: + case 0x92: + case 0x93: + case 0x94: + case 0x95: + case 0x96: + case 0x97: + case 0x98: + case 0x99: + case 0x9A: + case 0x9B: + case 0x9C: + case 0x9D: + case 0x9E: + case 0x9F: + return get_msgpack_array(conditional_static_cast(static_cast(current) & 0x0Fu)); + + // fixstr + case 0xA0: + case 0xA1: + case 0xA2: + case 0xA3: + case 0xA4: + case 0xA5: + case 0xA6: + case 0xA7: + case 0xA8: + case 0xA9: + case 0xAA: + case 0xAB: + case 0xAC: + case 0xAD: + case 0xAE: + case 0xAF: + case 0xB0: + case 0xB1: + case 0xB2: + case 0xB3: + case 0xB4: + case 0xB5: + case 0xB6: + case 0xB7: + case 0xB8: + case 0xB9: + case 0xBA: + case 0xBB: + case 0xBC: + case 0xBD: + case 0xBE: + case 0xBF: + case 0xD9: // str 8 + case 0xDA: // str 16 + case 0xDB: // str 32 + { + string_t s; + return get_msgpack_string(s) && sax->string(s); + } + + case 0xC0: // nil + return sax->null(); + + case 0xC2: // false + return sax->boolean(false); + + case 0xC3: // true + return sax->boolean(true); + + case 0xC4: // bin 8 + case 0xC5: // bin 16 + case 0xC6: // bin 32 + case 0xC7: // ext 8 + case 0xC8: // ext 16 + case 0xC9: // ext 32 + case 0xD4: // fixext 1 + case 0xD5: // fixext 2 + case 0xD6: // fixext 4 + case 0xD7: // fixext 8 + case 0xD8: // fixext 16 + { + binary_t b; + return get_msgpack_binary(b) && sax->binary(b); + } + + case 0xCA: // float 32 + { + float number{}; + return get_number(input_format_t::msgpack, number) && sax->number_float(static_cast(number), ""); + } + + case 0xCB: // float 64 + { + double number{}; + return get_number(input_format_t::msgpack, number) && sax->number_float(static_cast(number), ""); + } + + case 0xCC: // uint 8 + { + std::uint8_t number{}; + return get_number(input_format_t::msgpack, number) && sax->number_unsigned(number); + } + + case 0xCD: // uint 16 + { + std::uint16_t number{}; + return get_number(input_format_t::msgpack, number) && sax->number_unsigned(number); + } + + case 0xCE: // uint 32 + { + std::uint32_t number{}; + return get_number(input_format_t::msgpack, number) && sax->number_unsigned(number); + } + + case 0xCF: // uint 64 + { + std::uint64_t number{}; + return get_number(input_format_t::msgpack, number) && sax->number_unsigned(number); + } + + case 0xD0: // int 8 + { + std::int8_t number{}; + return get_number(input_format_t::msgpack, number) && sax->number_integer(number); + } + + case 0xD1: // int 16 + { + std::int16_t number{}; + return get_number(input_format_t::msgpack, number) && sax->number_integer(number); + } + + case 0xD2: // int 32 + { + std::int32_t number{}; + return get_number(input_format_t::msgpack, number) && sax->number_integer(number); + } + + case 0xD3: // int 64 + { + std::int64_t number{}; + return get_number(input_format_t::msgpack, number) && sax->number_integer(number); + } + + case 0xDC: // array 16 + { + std::uint16_t len{}; + return get_number(input_format_t::msgpack, len) && get_msgpack_array(static_cast(len)); + } + + case 0xDD: // array 32 + { + std::uint32_t len{}; + return get_number(input_format_t::msgpack, len) && get_msgpack_array(conditional_static_cast(len)); + } + + case 0xDE: // map 16 + { + std::uint16_t len{}; + return get_number(input_format_t::msgpack, len) && get_msgpack_object(static_cast(len)); + } + + case 0xDF: // map 32 + { + std::uint32_t len{}; + return get_number(input_format_t::msgpack, len) && get_msgpack_object(conditional_static_cast(len)); + } + + // negative fixint + case 0xE0: + case 0xE1: + case 0xE2: + case 0xE3: + case 0xE4: + case 0xE5: + case 0xE6: + case 0xE7: + case 0xE8: + case 0xE9: + case 0xEA: + case 0xEB: + case 0xEC: + case 0xED: + case 0xEE: + case 0xEF: + case 0xF0: + case 0xF1: + case 0xF2: + case 0xF3: + case 0xF4: + case 0xF5: + case 0xF6: + case 0xF7: + case 0xF8: + case 0xF9: + case 0xFA: + case 0xFB: + case 0xFC: + case 0xFD: + case 0xFE: + case 0xFF: + return sax->number_integer(static_cast(current)); + + default: // anything else + { + auto last_token = get_token_string(); + return sax->parse_error(chars_read, last_token, parse_error::create(112, chars_read, + exception_message(input_format_t::msgpack, concat("invalid byte: 0x", last_token), "value"), nullptr)); + } + } + } + + /*! + @brief reads a MessagePack string + + This function first reads starting bytes to determine the expected + string length and then copies this number of bytes into a string. + + @param[out] result created string + + @return whether string creation completed + */ + bool get_msgpack_string(string_t& result) + { + if (JSON_HEDLEY_UNLIKELY(!unexpect_eof(input_format_t::msgpack, "string"))) + { + return false; + } + + switch (current) + { + // fixstr + case 0xA0: + case 0xA1: + case 0xA2: + case 0xA3: + case 0xA4: + case 0xA5: + case 0xA6: + case 0xA7: + case 0xA8: + case 0xA9: + case 0xAA: + case 0xAB: + case 0xAC: + case 0xAD: + case 0xAE: + case 0xAF: + case 0xB0: + case 0xB1: + case 0xB2: + case 0xB3: + case 0xB4: + case 0xB5: + case 0xB6: + case 0xB7: + case 0xB8: + case 0xB9: + case 0xBA: + case 0xBB: + case 0xBC: + case 0xBD: + case 0xBE: + case 0xBF: + { + return get_string(input_format_t::msgpack, static_cast(current) & 0x1Fu, result); + } + + case 0xD9: // str 8 + { + std::uint8_t len{}; + return get_number(input_format_t::msgpack, len) && get_string(input_format_t::msgpack, len, result); + } + + case 0xDA: // str 16 + { + std::uint16_t len{}; + return get_number(input_format_t::msgpack, len) && get_string(input_format_t::msgpack, len, result); + } + + case 0xDB: // str 32 + { + std::uint32_t len{}; + return get_number(input_format_t::msgpack, len) && get_string(input_format_t::msgpack, len, result); + } + + default: + { + auto last_token = get_token_string(); + return sax->parse_error(chars_read, last_token, parse_error::create(113, chars_read, + exception_message(input_format_t::msgpack, concat("expected length specification (0xA0-0xBF, 0xD9-0xDB); last byte: 0x", last_token), "string"), nullptr)); + } + } + } + + /*! + @brief reads a MessagePack byte array + + This function first reads starting bytes to determine the expected + byte array length and then copies this number of bytes into a byte array. + + @param[out] result created byte array + + @return whether byte array creation completed + */ + bool get_msgpack_binary(binary_t& result) + { + // helper function to set the subtype + auto assign_and_return_true = [&result](std::int8_t subtype) + { + result.set_subtype(static_cast(subtype)); + return true; + }; + + switch (current) + { + case 0xC4: // bin 8 + { + std::uint8_t len{}; + return get_number(input_format_t::msgpack, len) && + get_binary(input_format_t::msgpack, len, result); + } + + case 0xC5: // bin 16 + { + std::uint16_t len{}; + return get_number(input_format_t::msgpack, len) && + get_binary(input_format_t::msgpack, len, result); + } + + case 0xC6: // bin 32 + { + std::uint32_t len{}; + return get_number(input_format_t::msgpack, len) && + get_binary(input_format_t::msgpack, len, result); + } + + case 0xC7: // ext 8 + { + std::uint8_t len{}; + std::int8_t subtype{}; + return get_number(input_format_t::msgpack, len) && + get_number(input_format_t::msgpack, subtype) && + get_binary(input_format_t::msgpack, len, result) && + assign_and_return_true(subtype); + } + + case 0xC8: // ext 16 + { + std::uint16_t len{}; + std::int8_t subtype{}; + return get_number(input_format_t::msgpack, len) && + get_number(input_format_t::msgpack, subtype) && + get_binary(input_format_t::msgpack, len, result) && + assign_and_return_true(subtype); + } + + case 0xC9: // ext 32 + { + std::uint32_t len{}; + std::int8_t subtype{}; + return get_number(input_format_t::msgpack, len) && + get_number(input_format_t::msgpack, subtype) && + get_binary(input_format_t::msgpack, len, result) && + assign_and_return_true(subtype); + } + + case 0xD4: // fixext 1 + { + std::int8_t subtype{}; + return get_number(input_format_t::msgpack, subtype) && + get_binary(input_format_t::msgpack, 1, result) && + assign_and_return_true(subtype); + } + + case 0xD5: // fixext 2 + { + std::int8_t subtype{}; + return get_number(input_format_t::msgpack, subtype) && + get_binary(input_format_t::msgpack, 2, result) && + assign_and_return_true(subtype); + } + + case 0xD6: // fixext 4 + { + std::int8_t subtype{}; + return get_number(input_format_t::msgpack, subtype) && + get_binary(input_format_t::msgpack, 4, result) && + assign_and_return_true(subtype); + } + + case 0xD7: // fixext 8 + { + std::int8_t subtype{}; + return get_number(input_format_t::msgpack, subtype) && + get_binary(input_format_t::msgpack, 8, result) && + assign_and_return_true(subtype); + } + + case 0xD8: // fixext 16 + { + std::int8_t subtype{}; + return get_number(input_format_t::msgpack, subtype) && + get_binary(input_format_t::msgpack, 16, result) && + assign_and_return_true(subtype); + } + + default: // LCOV_EXCL_LINE + return false; // LCOV_EXCL_LINE + } + } + + /*! + @param[in] len the length of the array + @return whether array creation completed + */ + bool get_msgpack_array(const std::size_t len) + { + if (JSON_HEDLEY_UNLIKELY(!sax->start_array(len))) + { + return false; + } + + for (std::size_t i = 0; i < len; ++i) + { + if (JSON_HEDLEY_UNLIKELY(!parse_msgpack_internal())) + { + return false; + } + } + + return sax->end_array(); + } + + /*! + @param[in] len the length of the object + @return whether object creation completed + */ + bool get_msgpack_object(const std::size_t len) + { + if (JSON_HEDLEY_UNLIKELY(!sax->start_object(len))) + { + return false; + } + + string_t key; + for (std::size_t i = 0; i < len; ++i) + { + get(); + if (JSON_HEDLEY_UNLIKELY(!get_msgpack_string(key) || !sax->key(key))) + { + return false; + } + + if (JSON_HEDLEY_UNLIKELY(!parse_msgpack_internal())) + { + return false; + } + key.clear(); + } + + return sax->end_object(); + } + + //////////// + // UBJSON // + //////////// + + /*! + @param[in] get_char whether a new character should be retrieved from the + input (true, default) or whether the last read + character should be considered instead + + @return whether a valid UBJSON value was passed to the SAX parser + */ + bool parse_ubjson_internal(const bool get_char = true) + { + return get_ubjson_value(get_char ? get_ignore_noop() : current); + } + + /*! + @brief reads a UBJSON string + + This function is either called after reading the 'S' byte explicitly + indicating a string, or in case of an object key where the 'S' byte can be + left out. + + @param[out] result created string + @param[in] get_char whether a new character should be retrieved from the + input (true, default) or whether the last read + character should be considered instead + + @return whether string creation completed + */ + bool get_ubjson_string(string_t& result, const bool get_char = true) + { + if (get_char) + { + get(); // TODO(niels): may we ignore N here? + } + + if (JSON_HEDLEY_UNLIKELY(!unexpect_eof(input_format, "value"))) + { + return false; + } + + switch (current) + { + case 'U': + { + std::uint8_t len{}; + return get_number(input_format, len) && get_string(input_format, len, result); + } + + case 'i': + { + std::int8_t len{}; + return get_number(input_format, len) && get_string(input_format, len, result); + } + + case 'I': + { + std::int16_t len{}; + return get_number(input_format, len) && get_string(input_format, len, result); + } + + case 'l': + { + std::int32_t len{}; + return get_number(input_format, len) && get_string(input_format, len, result); + } + + case 'L': + { + std::int64_t len{}; + return get_number(input_format, len) && get_string(input_format, len, result); + } + + case 'u': + { + if (input_format != input_format_t::bjdata) + { + break; + } + std::uint16_t len{}; + return get_number(input_format, len) && get_string(input_format, len, result); + } + + case 'm': + { + if (input_format != input_format_t::bjdata) + { + break; + } + std::uint32_t len{}; + return get_number(input_format, len) && get_string(input_format, len, result); + } + + case 'M': + { + if (input_format != input_format_t::bjdata) + { + break; + } + std::uint64_t len{}; + return get_number(input_format, len) && get_string(input_format, len, result); + } + + default: + break; + } + auto last_token = get_token_string(); + std::string message; + + if (input_format != input_format_t::bjdata) + { + message = "expected length type specification (U, i, I, l, L); last byte: 0x" + last_token; + } + else + { + message = "expected length type specification (U, i, u, I, m, l, M, L); last byte: 0x" + last_token; + } + return sax->parse_error(chars_read, last_token, parse_error::create(113, chars_read, exception_message(input_format, message, "string"), nullptr)); + } + + /*! + @param[out] dim an integer vector storing the ND array dimensions + @return whether reading ND array size vector is successful + */ + bool get_ubjson_ndarray_size(std::vector& dim) + { + std::pair size_and_type; + size_t dimlen = 0; + bool no_ndarray = true; + + if (JSON_HEDLEY_UNLIKELY(!get_ubjson_size_type(size_and_type, no_ndarray))) + { + return false; + } + + if (size_and_type.first != npos) + { + if (size_and_type.second != 0) + { + if (size_and_type.second != 'N') + { + for (std::size_t i = 0; i < size_and_type.first; ++i) + { + if (JSON_HEDLEY_UNLIKELY(!get_ubjson_size_value(dimlen, no_ndarray, size_and_type.second))) + { + return false; + } + dim.push_back(dimlen); + } + } + } + else + { + for (std::size_t i = 0; i < size_and_type.first; ++i) + { + if (JSON_HEDLEY_UNLIKELY(!get_ubjson_size_value(dimlen, no_ndarray))) + { + return false; + } + dim.push_back(dimlen); + } + } + } + else + { + while (current != ']') + { + if (JSON_HEDLEY_UNLIKELY(!get_ubjson_size_value(dimlen, no_ndarray, current))) + { + return false; + } + dim.push_back(dimlen); + get_ignore_noop(); + } + } + return true; + } + + /*! + @param[out] result determined size + @param[in,out] is_ndarray for input, `true` means already inside an ndarray vector + or ndarray dimension is not allowed; `false` means ndarray + is allowed; for output, `true` means an ndarray is found; + is_ndarray can only return `true` when its initial value + is `false` + @param[in] prefix type marker if already read, otherwise set to 0 + + @return whether size determination completed + */ + bool get_ubjson_size_value(std::size_t& result, bool& is_ndarray, char_int_type prefix = 0) + { + if (prefix == 0) + { + prefix = get_ignore_noop(); + } + + switch (prefix) + { + case 'U': + { + std::uint8_t number{}; + if (JSON_HEDLEY_UNLIKELY(!get_number(input_format, number))) + { + return false; + } + result = static_cast(number); + return true; + } + + case 'i': + { + std::int8_t number{}; + if (JSON_HEDLEY_UNLIKELY(!get_number(input_format, number))) + { + return false; + } + if (number < 0) + { + return sax->parse_error(chars_read, get_token_string(), parse_error::create(113, chars_read, + exception_message(input_format, "count in an optimized container must be positive", "size"), nullptr)); + } + result = static_cast(number); // NOLINT(bugprone-signed-char-misuse,cert-str34-c): number is not a char + return true; + } + + case 'I': + { + std::int16_t number{}; + if (JSON_HEDLEY_UNLIKELY(!get_number(input_format, number))) + { + return false; + } + if (number < 0) + { + return sax->parse_error(chars_read, get_token_string(), parse_error::create(113, chars_read, + exception_message(input_format, "count in an optimized container must be positive", "size"), nullptr)); + } + result = static_cast(number); + return true; + } + + case 'l': + { + std::int32_t number{}; + if (JSON_HEDLEY_UNLIKELY(!get_number(input_format, number))) + { + return false; + } + if (number < 0) + { + return sax->parse_error(chars_read, get_token_string(), parse_error::create(113, chars_read, + exception_message(input_format, "count in an optimized container must be positive", "size"), nullptr)); + } + result = static_cast(number); + return true; + } + + case 'L': + { + std::int64_t number{}; + if (JSON_HEDLEY_UNLIKELY(!get_number(input_format, number))) + { + return false; + } + if (number < 0) + { + return sax->parse_error(chars_read, get_token_string(), parse_error::create(113, chars_read, + exception_message(input_format, "count in an optimized container must be positive", "size"), nullptr)); + } + if (!value_in_range_of(number)) + { + return sax->parse_error(chars_read, get_token_string(), out_of_range::create(408, + exception_message(input_format, "integer value overflow", "size"), nullptr)); + } + result = static_cast(number); + return true; + } + + case 'u': + { + if (input_format != input_format_t::bjdata) + { + break; + } + std::uint16_t number{}; + if (JSON_HEDLEY_UNLIKELY(!get_number(input_format, number))) + { + return false; + } + result = static_cast(number); + return true; + } + + case 'm': + { + if (input_format != input_format_t::bjdata) + { + break; + } + std::uint32_t number{}; + if (JSON_HEDLEY_UNLIKELY(!get_number(input_format, number))) + { + return false; + } + result = conditional_static_cast(number); + return true; + } + + case 'M': + { + if (input_format != input_format_t::bjdata) + { + break; + } + std::uint64_t number{}; + if (JSON_HEDLEY_UNLIKELY(!get_number(input_format, number))) + { + return false; + } + if (!value_in_range_of(number)) + { + return sax->parse_error(chars_read, get_token_string(), out_of_range::create(408, + exception_message(input_format, "integer value overflow", "size"), nullptr)); + } + result = detail::conditional_static_cast(number); + return true; + } + + case '[': + { + if (input_format != input_format_t::bjdata) + { + break; + } + if (is_ndarray) // ndarray dimensional vector can only contain integers, and can not embed another array + { + return sax->parse_error(chars_read, get_token_string(), parse_error::create(113, chars_read, exception_message(input_format, "ndarray dimensional vector is not allowed", "size"), nullptr)); + } + std::vector dim; + if (JSON_HEDLEY_UNLIKELY(!get_ubjson_ndarray_size(dim))) + { + return false; + } + if (dim.size() == 1 || (dim.size() == 2 && dim.at(0) == 1)) // return normal array size if 1D row vector + { + result = dim.at(dim.size() - 1); + return true; + } + if (!dim.empty()) // if ndarray, convert to an object in JData annotated array format + { + for (auto i : dim) // test if any dimension in an ndarray is 0, if so, return a 1D empty container + { + if ( i == 0 ) + { + result = 0; + return true; + } + } + + string_t key = "_ArraySize_"; + if (JSON_HEDLEY_UNLIKELY(!sax->start_object(3) || !sax->key(key) || !sax->start_array(dim.size()))) + { + return false; + } + result = 1; + for (auto i : dim) + { + result *= i; + if (result == 0 || result == npos) // because dim elements shall not have zeros, result = 0 means overflow happened; it also can't be npos as it is used to initialize size in get_ubjson_size_type() + { + return sax->parse_error(chars_read, get_token_string(), out_of_range::create(408, exception_message(input_format, "excessive ndarray size caused overflow", "size"), nullptr)); + } + if (JSON_HEDLEY_UNLIKELY(!sax->number_unsigned(static_cast(i)))) + { + return false; + } + } + is_ndarray = true; + return sax->end_array(); + } + result = 0; + return true; + } + + default: + break; + } + auto last_token = get_token_string(); + std::string message; + + if (input_format != input_format_t::bjdata) + { + message = "expected length type specification (U, i, I, l, L) after '#'; last byte: 0x" + last_token; + } + else + { + message = "expected length type specification (U, i, u, I, m, l, M, L) after '#'; last byte: 0x" + last_token; + } + return sax->parse_error(chars_read, last_token, parse_error::create(113, chars_read, exception_message(input_format, message, "size"), nullptr)); + } + + /*! + @brief determine the type and size for a container + + In the optimized UBJSON format, a type and a size can be provided to allow + for a more compact representation. + + @param[out] result pair of the size and the type + @param[in] inside_ndarray whether the parser is parsing an ND array dimensional vector + + @return whether pair creation completed + */ + bool get_ubjson_size_type(std::pair& result, bool inside_ndarray = false) + { + result.first = npos; // size + result.second = 0; // type + bool is_ndarray = false; + + get_ignore_noop(); + + if (current == '$') + { + result.second = get(); // must not ignore 'N', because 'N' maybe the type + if (input_format == input_format_t::bjdata + && JSON_HEDLEY_UNLIKELY(std::binary_search(bjd_optimized_type_markers.begin(), bjd_optimized_type_markers.end(), result.second))) + { + auto last_token = get_token_string(); + return sax->parse_error(chars_read, last_token, parse_error::create(112, chars_read, + exception_message(input_format, concat("marker 0x", last_token, " is not a permitted optimized array type"), "type"), nullptr)); + } + + if (JSON_HEDLEY_UNLIKELY(!unexpect_eof(input_format, "type"))) + { + return false; + } + + get_ignore_noop(); + if (JSON_HEDLEY_UNLIKELY(current != '#')) + { + if (JSON_HEDLEY_UNLIKELY(!unexpect_eof(input_format, "value"))) + { + return false; + } + auto last_token = get_token_string(); + return sax->parse_error(chars_read, last_token, parse_error::create(112, chars_read, + exception_message(input_format, concat("expected '#' after type information; last byte: 0x", last_token), "size"), nullptr)); + } + + const bool is_error = get_ubjson_size_value(result.first, is_ndarray); + if (input_format == input_format_t::bjdata && is_ndarray) + { + if (inside_ndarray) + { + return sax->parse_error(chars_read, get_token_string(), parse_error::create(112, chars_read, + exception_message(input_format, "ndarray can not be recursive", "size"), nullptr)); + } + result.second |= (1 << 8); // use bit 8 to indicate ndarray, all UBJSON and BJData markers should be ASCII letters + } + return is_error; + } + + if (current == '#') + { + const bool is_error = get_ubjson_size_value(result.first, is_ndarray); + if (input_format == input_format_t::bjdata && is_ndarray) + { + return sax->parse_error(chars_read, get_token_string(), parse_error::create(112, chars_read, + exception_message(input_format, "ndarray requires both type and size", "size"), nullptr)); + } + return is_error; + } + + return true; + } + + /*! + @param prefix the previously read or set type prefix + @return whether value creation completed + */ + bool get_ubjson_value(const char_int_type prefix) + { + switch (prefix) + { + case char_traits::eof(): // EOF + return unexpect_eof(input_format, "value"); + + case 'T': // true + return sax->boolean(true); + case 'F': // false + return sax->boolean(false); + + case 'Z': // null + return sax->null(); + + case 'U': + { + std::uint8_t number{}; + return get_number(input_format, number) && sax->number_unsigned(number); + } + + case 'i': + { + std::int8_t number{}; + return get_number(input_format, number) && sax->number_integer(number); + } + + case 'I': + { + std::int16_t number{}; + return get_number(input_format, number) && sax->number_integer(number); + } + + case 'l': + { + std::int32_t number{}; + return get_number(input_format, number) && sax->number_integer(number); + } + + case 'L': + { + std::int64_t number{}; + return get_number(input_format, number) && sax->number_integer(number); + } + + case 'u': + { + if (input_format != input_format_t::bjdata) + { + break; + } + std::uint16_t number{}; + return get_number(input_format, number) && sax->number_unsigned(number); + } + + case 'm': + { + if (input_format != input_format_t::bjdata) + { + break; + } + std::uint32_t number{}; + return get_number(input_format, number) && sax->number_unsigned(number); + } + + case 'M': + { + if (input_format != input_format_t::bjdata) + { + break; + } + std::uint64_t number{}; + return get_number(input_format, number) && sax->number_unsigned(number); + } + + case 'h': + { + if (input_format != input_format_t::bjdata) + { + break; + } + const auto byte1_raw = get(); + if (JSON_HEDLEY_UNLIKELY(!unexpect_eof(input_format, "number"))) + { + return false; + } + const auto byte2_raw = get(); + if (JSON_HEDLEY_UNLIKELY(!unexpect_eof(input_format, "number"))) + { + return false; + } + + const auto byte1 = static_cast(byte1_raw); + const auto byte2 = static_cast(byte2_raw); + + // code from RFC 7049, Appendix D, Figure 3: + // As half-precision floating-point numbers were only added + // to IEEE 754 in 2008, today's programming platforms often + // still only have limited support for them. It is very + // easy to include at least decoding support for them even + // without such support. An example of a small decoder for + // half-precision floating-point numbers in the C language + // is shown in Fig. 3. + const auto half = static_cast((byte2 << 8u) + byte1); + const double val = [&half] + { + const int exp = (half >> 10u) & 0x1Fu; + const unsigned int mant = half & 0x3FFu; + JSON_ASSERT(0 <= exp&& exp <= 32); + JSON_ASSERT(mant <= 1024); + switch (exp) + { + case 0: + return std::ldexp(mant, -24); + case 31: + return (mant == 0) + ? std::numeric_limits::infinity() + : std::numeric_limits::quiet_NaN(); + default: + return std::ldexp(mant + 1024, exp - 25); + } + }(); + return sax->number_float((half & 0x8000u) != 0 + ? static_cast(-val) + : static_cast(val), ""); + } + + case 'd': + { + float number{}; + return get_number(input_format, number) && sax->number_float(static_cast(number), ""); + } + + case 'D': + { + double number{}; + return get_number(input_format, number) && sax->number_float(static_cast(number), ""); + } + + case 'H': + { + return get_ubjson_high_precision_number(); + } + + case 'C': // char + { + get(); + if (JSON_HEDLEY_UNLIKELY(!unexpect_eof(input_format, "char"))) + { + return false; + } + if (JSON_HEDLEY_UNLIKELY(current > 127)) + { + auto last_token = get_token_string(); + return sax->parse_error(chars_read, last_token, parse_error::create(113, chars_read, + exception_message(input_format, concat("byte after 'C' must be in range 0x00..0x7F; last byte: 0x", last_token), "char"), nullptr)); + } + string_t s(1, static_cast(current)); + return sax->string(s); + } + + case 'S': // string + { + string_t s; + return get_ubjson_string(s) && sax->string(s); + } + + case '[': // array + return get_ubjson_array(); + + case '{': // object + return get_ubjson_object(); + + default: // anything else + break; + } + auto last_token = get_token_string(); + return sax->parse_error(chars_read, last_token, parse_error::create(112, chars_read, exception_message(input_format, "invalid byte: 0x" + last_token, "value"), nullptr)); + } + + /*! + @return whether array creation completed + */ + bool get_ubjson_array() + { + std::pair size_and_type; + if (JSON_HEDLEY_UNLIKELY(!get_ubjson_size_type(size_and_type))) + { + return false; + } + + // if bit-8 of size_and_type.second is set to 1, encode bjdata ndarray as an object in JData annotated array format (https://github.com/NeuroJSON/jdata): + // {"_ArrayType_" : "typeid", "_ArraySize_" : [n1, n2, ...], "_ArrayData_" : [v1, v2, ...]} + + if (input_format == input_format_t::bjdata && size_and_type.first != npos && (size_and_type.second & (1 << 8)) != 0) + { + size_and_type.second &= ~(static_cast(1) << 8); // use bit 8 to indicate ndarray, here we remove the bit to restore the type marker + auto it = std::lower_bound(bjd_types_map.begin(), bjd_types_map.end(), size_and_type.second, [](const bjd_type & p, char_int_type t) + { + return p.first < t; + }); + string_t key = "_ArrayType_"; + if (JSON_HEDLEY_UNLIKELY(it == bjd_types_map.end() || it->first != size_and_type.second)) + { + auto last_token = get_token_string(); + return sax->parse_error(chars_read, last_token, parse_error::create(112, chars_read, + exception_message(input_format, "invalid byte: 0x" + last_token, "type"), nullptr)); + } + + string_t type = it->second; // sax->string() takes a reference + if (JSON_HEDLEY_UNLIKELY(!sax->key(key) || !sax->string(type))) + { + return false; + } + + if (size_and_type.second == 'C') + { + size_and_type.second = 'U'; + } + + key = "_ArrayData_"; + if (JSON_HEDLEY_UNLIKELY(!sax->key(key) || !sax->start_array(size_and_type.first) )) + { + return false; + } + + for (std::size_t i = 0; i < size_and_type.first; ++i) + { + if (JSON_HEDLEY_UNLIKELY(!get_ubjson_value(size_and_type.second))) + { + return false; + } + } + + return (sax->end_array() && sax->end_object()); + } + + if (size_and_type.first != npos) + { + if (JSON_HEDLEY_UNLIKELY(!sax->start_array(size_and_type.first))) + { + return false; + } + + if (size_and_type.second != 0) + { + if (size_and_type.second != 'N') + { + for (std::size_t i = 0; i < size_and_type.first; ++i) + { + if (JSON_HEDLEY_UNLIKELY(!get_ubjson_value(size_and_type.second))) + { + return false; + } + } + } + } + else + { + for (std::size_t i = 0; i < size_and_type.first; ++i) + { + if (JSON_HEDLEY_UNLIKELY(!parse_ubjson_internal())) + { + return false; + } + } + } + } + else + { + if (JSON_HEDLEY_UNLIKELY(!sax->start_array(static_cast(-1)))) + { + return false; + } + + while (current != ']') + { + if (JSON_HEDLEY_UNLIKELY(!parse_ubjson_internal(false))) + { + return false; + } + get_ignore_noop(); + } + } + + return sax->end_array(); + } + + /*! + @return whether object creation completed + */ + bool get_ubjson_object() + { + std::pair size_and_type; + if (JSON_HEDLEY_UNLIKELY(!get_ubjson_size_type(size_and_type))) + { + return false; + } + + // do not accept ND-array size in objects in BJData + if (input_format == input_format_t::bjdata && size_and_type.first != npos && (size_and_type.second & (1 << 8)) != 0) + { + auto last_token = get_token_string(); + return sax->parse_error(chars_read, last_token, parse_error::create(112, chars_read, + exception_message(input_format, "BJData object does not support ND-array size in optimized format", "object"), nullptr)); + } + + string_t key; + if (size_and_type.first != npos) + { + if (JSON_HEDLEY_UNLIKELY(!sax->start_object(size_and_type.first))) + { + return false; + } + + if (size_and_type.second != 0) + { + for (std::size_t i = 0; i < size_and_type.first; ++i) + { + if (JSON_HEDLEY_UNLIKELY(!get_ubjson_string(key) || !sax->key(key))) + { + return false; + } + if (JSON_HEDLEY_UNLIKELY(!get_ubjson_value(size_and_type.second))) + { + return false; + } + key.clear(); + } + } + else + { + for (std::size_t i = 0; i < size_and_type.first; ++i) + { + if (JSON_HEDLEY_UNLIKELY(!get_ubjson_string(key) || !sax->key(key))) + { + return false; + } + if (JSON_HEDLEY_UNLIKELY(!parse_ubjson_internal())) + { + return false; + } + key.clear(); + } + } + } + else + { + if (JSON_HEDLEY_UNLIKELY(!sax->start_object(static_cast(-1)))) + { + return false; + } + + while (current != '}') + { + if (JSON_HEDLEY_UNLIKELY(!get_ubjson_string(key, false) || !sax->key(key))) + { + return false; + } + if (JSON_HEDLEY_UNLIKELY(!parse_ubjson_internal())) + { + return false; + } + get_ignore_noop(); + key.clear(); + } + } + + return sax->end_object(); + } + + // Note, no reader for UBJSON binary types is implemented because they do + // not exist + + bool get_ubjson_high_precision_number() + { + // get size of following number string + std::size_t size{}; + bool no_ndarray = true; + auto res = get_ubjson_size_value(size, no_ndarray); + if (JSON_HEDLEY_UNLIKELY(!res)) + { + return res; + } + + // get number string + std::vector number_vector; + for (std::size_t i = 0; i < size; ++i) + { + get(); + if (JSON_HEDLEY_UNLIKELY(!unexpect_eof(input_format, "number"))) + { + return false; + } + number_vector.push_back(static_cast(current)); + } + + // parse number string + using ia_type = decltype(detail::input_adapter(number_vector)); + auto number_lexer = detail::lexer(detail::input_adapter(number_vector), false); + const auto result_number = number_lexer.scan(); + const auto number_string = number_lexer.get_token_string(); + const auto result_remainder = number_lexer.scan(); + + using token_type = typename detail::lexer_base::token_type; + + if (JSON_HEDLEY_UNLIKELY(result_remainder != token_type::end_of_input)) + { + return sax->parse_error(chars_read, number_string, parse_error::create(115, chars_read, + exception_message(input_format, concat("invalid number text: ", number_lexer.get_token_string()), "high-precision number"), nullptr)); + } + + switch (result_number) + { + case token_type::value_integer: + return sax->number_integer(number_lexer.get_number_integer()); + case token_type::value_unsigned: + return sax->number_unsigned(number_lexer.get_number_unsigned()); + case token_type::value_float: + return sax->number_float(number_lexer.get_number_float(), std::move(number_string)); + case token_type::uninitialized: + case token_type::literal_true: + case token_type::literal_false: + case token_type::literal_null: + case token_type::value_string: + case token_type::begin_array: + case token_type::begin_object: + case token_type::end_array: + case token_type::end_object: + case token_type::name_separator: + case token_type::value_separator: + case token_type::parse_error: + case token_type::end_of_input: + case token_type::literal_or_value: + default: + return sax->parse_error(chars_read, number_string, parse_error::create(115, chars_read, + exception_message(input_format, concat("invalid number text: ", number_lexer.get_token_string()), "high-precision number"), nullptr)); + } + } + + /////////////////////// + // Utility functions // + /////////////////////// + + /*! + @brief get next character from the input + + This function provides the interface to the used input adapter. It does + not throw in case the input reached EOF, but returns a -'ve valued + `char_traits::eof()` in that case. + + @return character read from the input + */ + char_int_type get() + { + ++chars_read; + return current = ia.get_character(); + } + + /*! + @return character read from the input after ignoring all 'N' entries + */ + char_int_type get_ignore_noop() + { + do + { + get(); + } + while (current == 'N'); + + return current; + } + + /* + @brief read a number from the input + + @tparam NumberType the type of the number + @param[in] format the current format (for diagnostics) + @param[out] result number of type @a NumberType + + @return whether conversion completed + + @note This function needs to respect the system's endianness, because + bytes in CBOR, MessagePack, and UBJSON are stored in network order + (big endian) and therefore need reordering on little endian systems. + On the other hand, BSON and BJData use little endian and should reorder + on big endian systems. + */ + template + bool get_number(const input_format_t format, NumberType& result) + { + // step 1: read input into array with system's byte order + std::array vec{}; + for (std::size_t i = 0; i < sizeof(NumberType); ++i) + { + get(); + if (JSON_HEDLEY_UNLIKELY(!unexpect_eof(format, "number"))) + { + return false; + } + + // reverse byte order prior to conversion if necessary + if (is_little_endian != (InputIsLittleEndian || format == input_format_t::bjdata)) + { + vec[sizeof(NumberType) - i - 1] = static_cast(current); + } + else + { + vec[i] = static_cast(current); // LCOV_EXCL_LINE + } + } + + // step 2: convert array into number of type T and return + std::memcpy(&result, vec.data(), sizeof(NumberType)); + return true; + } + + /*! + @brief create a string by reading characters from the input + + @tparam NumberType the type of the number + @param[in] format the current format (for diagnostics) + @param[in] len number of characters to read + @param[out] result string created by reading @a len bytes + + @return whether string creation completed + + @note We can not reserve @a len bytes for the result, because @a len + may be too large. Usually, @ref unexpect_eof() detects the end of + the input before we run out of string memory. + */ + template + bool get_string(const input_format_t format, + const NumberType len, + string_t& result) + { + bool success = true; + for (NumberType i = 0; i < len; i++) + { + get(); + if (JSON_HEDLEY_UNLIKELY(!unexpect_eof(format, "string"))) + { + success = false; + break; + } + result.push_back(static_cast(current)); + } + return success; + } + + /*! + @brief create a byte array by reading bytes from the input + + @tparam NumberType the type of the number + @param[in] format the current format (for diagnostics) + @param[in] len number of bytes to read + @param[out] result byte array created by reading @a len bytes + + @return whether byte array creation completed + + @note We can not reserve @a len bytes for the result, because @a len + may be too large. Usually, @ref unexpect_eof() detects the end of + the input before we run out of memory. + */ + template + bool get_binary(const input_format_t format, + const NumberType len, + binary_t& result) + { + bool success = true; + for (NumberType i = 0; i < len; i++) + { + get(); + if (JSON_HEDLEY_UNLIKELY(!unexpect_eof(format, "binary"))) + { + success = false; + break; + } + result.push_back(static_cast(current)); + } + return success; + } + + /*! + @param[in] format the current format (for diagnostics) + @param[in] context further context information (for diagnostics) + @return whether the last read character is not EOF + */ + JSON_HEDLEY_NON_NULL(3) + bool unexpect_eof(const input_format_t format, const char* context) const + { + if (JSON_HEDLEY_UNLIKELY(current == char_traits::eof())) + { + return sax->parse_error(chars_read, "", + parse_error::create(110, chars_read, exception_message(format, "unexpected end of input", context), nullptr)); + } + return true; + } + + /*! + @return a string representation of the last read byte + */ + std::string get_token_string() const + { + std::array cr{{}}; + static_cast((std::snprintf)(cr.data(), cr.size(), "%.2hhX", static_cast(current))); // NOLINT(cppcoreguidelines-pro-type-vararg,hicpp-vararg) + return std::string{cr.data()}; + } + + /*! + @param[in] format the current format + @param[in] detail a detailed error message + @param[in] context further context information + @return a message string to use in the parse_error exceptions + */ + std::string exception_message(const input_format_t format, + const std::string& detail, + const std::string& context) const + { + std::string error_msg = "syntax error while parsing "; + + switch (format) + { + case input_format_t::cbor: + error_msg += "CBOR"; + break; + + case input_format_t::msgpack: + error_msg += "MessagePack"; + break; + + case input_format_t::ubjson: + error_msg += "UBJSON"; + break; + + case input_format_t::bson: + error_msg += "BSON"; + break; + + case input_format_t::bjdata: + error_msg += "BJData"; + break; + + case input_format_t::json: // LCOV_EXCL_LINE + default: // LCOV_EXCL_LINE + JSON_ASSERT(false); // NOLINT(cert-dcl03-c,hicpp-static-assert,misc-static-assert) LCOV_EXCL_LINE + } + + return concat(error_msg, ' ', context, ": ", detail); + } + + private: + static JSON_INLINE_VARIABLE constexpr std::size_t npos = static_cast(-1); + + /// input adapter + InputAdapterType ia; + + /// the current character + char_int_type current = char_traits::eof(); + + /// the number of characters read + std::size_t chars_read = 0; + + /// whether we can assume little endianness + const bool is_little_endian = little_endianness(); + + /// input format + const input_format_t input_format = input_format_t::json; + + /// the SAX parser + json_sax_t* sax = nullptr; + + // excluded markers in bjdata optimized type +#define JSON_BINARY_READER_MAKE_BJD_OPTIMIZED_TYPE_MARKERS_ \ + make_array('F', 'H', 'N', 'S', 'T', 'Z', '[', '{') + +#define JSON_BINARY_READER_MAKE_BJD_TYPES_MAP_ \ + make_array( \ + bjd_type{'C', "char"}, \ + bjd_type{'D', "double"}, \ + bjd_type{'I', "int16"}, \ + bjd_type{'L', "int64"}, \ + bjd_type{'M', "uint64"}, \ + bjd_type{'U', "uint8"}, \ + bjd_type{'d', "single"}, \ + bjd_type{'i', "int8"}, \ + bjd_type{'l', "int32"}, \ + bjd_type{'m', "uint32"}, \ + bjd_type{'u', "uint16"}) + + JSON_PRIVATE_UNLESS_TESTED: + // lookup tables + // NOLINTNEXTLINE(cppcoreguidelines-non-private-member-variables-in-classes) + const decltype(JSON_BINARY_READER_MAKE_BJD_OPTIMIZED_TYPE_MARKERS_) bjd_optimized_type_markers = + JSON_BINARY_READER_MAKE_BJD_OPTIMIZED_TYPE_MARKERS_; + + using bjd_type = std::pair; + // NOLINTNEXTLINE(cppcoreguidelines-non-private-member-variables-in-classes) + const decltype(JSON_BINARY_READER_MAKE_BJD_TYPES_MAP_) bjd_types_map = + JSON_BINARY_READER_MAKE_BJD_TYPES_MAP_; + +#undef JSON_BINARY_READER_MAKE_BJD_OPTIMIZED_TYPE_MARKERS_ +#undef JSON_BINARY_READER_MAKE_BJD_TYPES_MAP_ +}; + +#ifndef JSON_HAS_CPP_17 + template + constexpr std::size_t binary_reader::npos; +#endif + +} // namespace detail +NLOHMANN_JSON_NAMESPACE_END diff --git a/include/nlohmann/detail/input/input_adapters.hpp b/include/nlohmann/detail/input/input_adapters.hpp new file mode 100644 index 00000000..33fca3e4 --- /dev/null +++ b/include/nlohmann/detail/input/input_adapters.hpp @@ -0,0 +1,492 @@ +// __ _____ _____ _____ +// __| | __| | | | JSON for Modern C++ +// | | |__ | | | | | | version 3.11.3 +// |_____|_____|_____|_|___| https://github.com/nlohmann/json +// +// SPDX-FileCopyrightText: 2013-2023 Niels Lohmann +// SPDX-License-Identifier: MIT + +#pragma once + +#include // array +#include // size_t +#include // strlen +#include // begin, end, iterator_traits, random_access_iterator_tag, distance, next +#include // shared_ptr, make_shared, addressof +#include // accumulate +#include // string, char_traits +#include // enable_if, is_base_of, is_pointer, is_integral, remove_pointer +#include // pair, declval + +#ifndef JSON_NO_IO + #include // FILE * + #include // istream +#endif // JSON_NO_IO + +#include +#include +#include + +NLOHMANN_JSON_NAMESPACE_BEGIN +namespace detail +{ + +/// the supported input formats +enum class input_format_t { json, cbor, msgpack, ubjson, bson, bjdata }; + +//////////////////// +// input adapters // +//////////////////// + +#ifndef JSON_NO_IO +/*! +Input adapter for stdio file access. This adapter read only 1 byte and do not use any + buffer. This adapter is a very low level adapter. +*/ +class file_input_adapter +{ + public: + using char_type = char; + + JSON_HEDLEY_NON_NULL(2) + explicit file_input_adapter(std::FILE* f) noexcept + : m_file(f) + { + JSON_ASSERT(m_file != nullptr); + } + + // make class move-only + file_input_adapter(const file_input_adapter&) = delete; + file_input_adapter(file_input_adapter&&) noexcept = default; + file_input_adapter& operator=(const file_input_adapter&) = delete; + file_input_adapter& operator=(file_input_adapter&&) = delete; + ~file_input_adapter() = default; + + std::char_traits::int_type get_character() noexcept + { + return std::fgetc(m_file); + } + + private: + /// the file pointer to read from + std::FILE* m_file; +}; + +/*! +Input adapter for a (caching) istream. Ignores a UFT Byte Order Mark at +beginning of input. Does not support changing the underlying std::streambuf +in mid-input. Maintains underlying std::istream and std::streambuf to support +subsequent use of standard std::istream operations to process any input +characters following those used in parsing the JSON input. Clears the +std::istream flags; any input errors (e.g., EOF) will be detected by the first +subsequent call for input from the std::istream. +*/ +class input_stream_adapter +{ + public: + using char_type = char; + + ~input_stream_adapter() + { + // clear stream flags; we use underlying streambuf I/O, do not + // maintain ifstream flags, except eof + if (is != nullptr) + { + is->clear(is->rdstate() & std::ios::eofbit); + } + } + + explicit input_stream_adapter(std::istream& i) + : is(&i), sb(i.rdbuf()) + {} + + // delete because of pointer members + input_stream_adapter(const input_stream_adapter&) = delete; + input_stream_adapter& operator=(input_stream_adapter&) = delete; + input_stream_adapter& operator=(input_stream_adapter&&) = delete; + + input_stream_adapter(input_stream_adapter&& rhs) noexcept + : is(rhs.is), sb(rhs.sb) + { + rhs.is = nullptr; + rhs.sb = nullptr; + } + + // std::istream/std::streambuf use std::char_traits::to_int_type, to + // ensure that std::char_traits::eof() and the character 0xFF do not + // end up as the same value, e.g. 0xFFFFFFFF. + std::char_traits::int_type get_character() + { + auto res = sb->sbumpc(); + // set eof manually, as we don't use the istream interface. + if (JSON_HEDLEY_UNLIKELY(res == std::char_traits::eof())) + { + is->clear(is->rdstate() | std::ios::eofbit); + } + return res; + } + + private: + /// the associated input stream + std::istream* is = nullptr; + std::streambuf* sb = nullptr; +}; +#endif // JSON_NO_IO + +// General-purpose iterator-based adapter. It might not be as fast as +// theoretically possible for some containers, but it is extremely versatile. +template +class iterator_input_adapter +{ + public: + using char_type = typename std::iterator_traits::value_type; + + iterator_input_adapter(IteratorType first, IteratorType last) + : current(std::move(first)), end(std::move(last)) + {} + + typename char_traits::int_type get_character() + { + if (JSON_HEDLEY_LIKELY(current != end)) + { + auto result = char_traits::to_int_type(*current); + std::advance(current, 1); + return result; + } + + return char_traits::eof(); + } + + private: + IteratorType current; + IteratorType end; + + template + friend struct wide_string_input_helper; + + bool empty() const + { + return current == end; + } +}; + +template +struct wide_string_input_helper; + +template +struct wide_string_input_helper +{ + // UTF-32 + static void fill_buffer(BaseInputAdapter& input, + std::array::int_type, 4>& utf8_bytes, + size_t& utf8_bytes_index, + size_t& utf8_bytes_filled) + { + utf8_bytes_index = 0; + + if (JSON_HEDLEY_UNLIKELY(input.empty())) + { + utf8_bytes[0] = std::char_traits::eof(); + utf8_bytes_filled = 1; + } + else + { + // get the current character + const auto wc = input.get_character(); + + // UTF-32 to UTF-8 encoding + if (wc < 0x80) + { + utf8_bytes[0] = static_cast::int_type>(wc); + utf8_bytes_filled = 1; + } + else if (wc <= 0x7FF) + { + utf8_bytes[0] = static_cast::int_type>(0xC0u | ((static_cast(wc) >> 6u) & 0x1Fu)); + utf8_bytes[1] = static_cast::int_type>(0x80u | (static_cast(wc) & 0x3Fu)); + utf8_bytes_filled = 2; + } + else if (wc <= 0xFFFF) + { + utf8_bytes[0] = static_cast::int_type>(0xE0u | ((static_cast(wc) >> 12u) & 0x0Fu)); + utf8_bytes[1] = static_cast::int_type>(0x80u | ((static_cast(wc) >> 6u) & 0x3Fu)); + utf8_bytes[2] = static_cast::int_type>(0x80u | (static_cast(wc) & 0x3Fu)); + utf8_bytes_filled = 3; + } + else if (wc <= 0x10FFFF) + { + utf8_bytes[0] = static_cast::int_type>(0xF0u | ((static_cast(wc) >> 18u) & 0x07u)); + utf8_bytes[1] = static_cast::int_type>(0x80u | ((static_cast(wc) >> 12u) & 0x3Fu)); + utf8_bytes[2] = static_cast::int_type>(0x80u | ((static_cast(wc) >> 6u) & 0x3Fu)); + utf8_bytes[3] = static_cast::int_type>(0x80u | (static_cast(wc) & 0x3Fu)); + utf8_bytes_filled = 4; + } + else + { + // unknown character + utf8_bytes[0] = static_cast::int_type>(wc); + utf8_bytes_filled = 1; + } + } + } +}; + +template +struct wide_string_input_helper +{ + // UTF-16 + static void fill_buffer(BaseInputAdapter& input, + std::array::int_type, 4>& utf8_bytes, + size_t& utf8_bytes_index, + size_t& utf8_bytes_filled) + { + utf8_bytes_index = 0; + + if (JSON_HEDLEY_UNLIKELY(input.empty())) + { + utf8_bytes[0] = std::char_traits::eof(); + utf8_bytes_filled = 1; + } + else + { + // get the current character + const auto wc = input.get_character(); + + // UTF-16 to UTF-8 encoding + if (wc < 0x80) + { + utf8_bytes[0] = static_cast::int_type>(wc); + utf8_bytes_filled = 1; + } + else if (wc <= 0x7FF) + { + utf8_bytes[0] = static_cast::int_type>(0xC0u | ((static_cast(wc) >> 6u))); + utf8_bytes[1] = static_cast::int_type>(0x80u | (static_cast(wc) & 0x3Fu)); + utf8_bytes_filled = 2; + } + else if (0xD800 > wc || wc >= 0xE000) + { + utf8_bytes[0] = static_cast::int_type>(0xE0u | ((static_cast(wc) >> 12u))); + utf8_bytes[1] = static_cast::int_type>(0x80u | ((static_cast(wc) >> 6u) & 0x3Fu)); + utf8_bytes[2] = static_cast::int_type>(0x80u | (static_cast(wc) & 0x3Fu)); + utf8_bytes_filled = 3; + } + else + { + if (JSON_HEDLEY_UNLIKELY(!input.empty())) + { + const auto wc2 = static_cast(input.get_character()); + const auto charcode = 0x10000u + (((static_cast(wc) & 0x3FFu) << 10u) | (wc2 & 0x3FFu)); + utf8_bytes[0] = static_cast::int_type>(0xF0u | (charcode >> 18u)); + utf8_bytes[1] = static_cast::int_type>(0x80u | ((charcode >> 12u) & 0x3Fu)); + utf8_bytes[2] = static_cast::int_type>(0x80u | ((charcode >> 6u) & 0x3Fu)); + utf8_bytes[3] = static_cast::int_type>(0x80u | (charcode & 0x3Fu)); + utf8_bytes_filled = 4; + } + else + { + utf8_bytes[0] = static_cast::int_type>(wc); + utf8_bytes_filled = 1; + } + } + } + } +}; + +// Wraps another input adapter to convert wide character types into individual bytes. +template +class wide_string_input_adapter +{ + public: + using char_type = char; + + wide_string_input_adapter(BaseInputAdapter base) + : base_adapter(base) {} + + typename std::char_traits::int_type get_character() noexcept + { + // check if buffer needs to be filled + if (utf8_bytes_index == utf8_bytes_filled) + { + fill_buffer(); + + JSON_ASSERT(utf8_bytes_filled > 0); + JSON_ASSERT(utf8_bytes_index == 0); + } + + // use buffer + JSON_ASSERT(utf8_bytes_filled > 0); + JSON_ASSERT(utf8_bytes_index < utf8_bytes_filled); + return utf8_bytes[utf8_bytes_index++]; + } + + private: + BaseInputAdapter base_adapter; + + template + void fill_buffer() + { + wide_string_input_helper::fill_buffer(base_adapter, utf8_bytes, utf8_bytes_index, utf8_bytes_filled); + } + + /// a buffer for UTF-8 bytes + std::array::int_type, 4> utf8_bytes = {{0, 0, 0, 0}}; + + /// index to the utf8_codes array for the next valid byte + std::size_t utf8_bytes_index = 0; + /// number of valid bytes in the utf8_codes array + std::size_t utf8_bytes_filled = 0; +}; + +template +struct iterator_input_adapter_factory +{ + using iterator_type = IteratorType; + using char_type = typename std::iterator_traits::value_type; + using adapter_type = iterator_input_adapter; + + static adapter_type create(IteratorType first, IteratorType last) + { + return adapter_type(std::move(first), std::move(last)); + } +}; + +template +struct is_iterator_of_multibyte +{ + using value_type = typename std::iterator_traits::value_type; + enum + { + value = sizeof(value_type) > 1 + }; +}; + +template +struct iterator_input_adapter_factory::value>> +{ + using iterator_type = IteratorType; + using char_type = typename std::iterator_traits::value_type; + using base_adapter_type = iterator_input_adapter; + using adapter_type = wide_string_input_adapter; + + static adapter_type create(IteratorType first, IteratorType last) + { + return adapter_type(base_adapter_type(std::move(first), std::move(last))); + } +}; + +// General purpose iterator-based input +template +typename iterator_input_adapter_factory::adapter_type input_adapter(IteratorType first, IteratorType last) +{ + using factory_type = iterator_input_adapter_factory; + return factory_type::create(first, last); +} + +// Convenience shorthand from container to iterator +// Enables ADL on begin(container) and end(container) +// Encloses the using declarations in namespace for not to leak them to outside scope + +namespace container_input_adapter_factory_impl +{ + +using std::begin; +using std::end; + +template +struct container_input_adapter_factory {}; + +template +struct container_input_adapter_factory< ContainerType, + void_t()), end(std::declval()))>> + { + using adapter_type = decltype(input_adapter(begin(std::declval()), end(std::declval()))); + + static adapter_type create(const ContainerType& container) +{ + return input_adapter(begin(container), end(container)); +} + }; + +} // namespace container_input_adapter_factory_impl + +template +typename container_input_adapter_factory_impl::container_input_adapter_factory::adapter_type input_adapter(const ContainerType& container) +{ + return container_input_adapter_factory_impl::container_input_adapter_factory::create(container); +} + +#ifndef JSON_NO_IO +// Special cases with fast paths +inline file_input_adapter input_adapter(std::FILE* file) +{ + return file_input_adapter(file); +} + +inline input_stream_adapter input_adapter(std::istream& stream) +{ + return input_stream_adapter(stream); +} + +inline input_stream_adapter input_adapter(std::istream&& stream) +{ + return input_stream_adapter(stream); +} +#endif // JSON_NO_IO + +using contiguous_bytes_input_adapter = decltype(input_adapter(std::declval(), std::declval())); + +// Null-delimited strings, and the like. +template < typename CharT, + typename std::enable_if < + std::is_pointer::value&& + !std::is_array::value&& + std::is_integral::type>::value&& + sizeof(typename std::remove_pointer::type) == 1, + int >::type = 0 > +contiguous_bytes_input_adapter input_adapter(CharT b) +{ + auto length = std::strlen(reinterpret_cast(b)); + const auto* ptr = reinterpret_cast(b); + return input_adapter(ptr, ptr + length); +} + +template +auto input_adapter(T (&array)[N]) -> decltype(input_adapter(array, array + N)) // NOLINT(cppcoreguidelines-avoid-c-arrays,hicpp-avoid-c-arrays,modernize-avoid-c-arrays) +{ + return input_adapter(array, array + N); +} + +// This class only handles inputs of input_buffer_adapter type. +// It's required so that expressions like {ptr, len} can be implicitly cast +// to the correct adapter. +class span_input_adapter +{ + public: + template < typename CharT, + typename std::enable_if < + std::is_pointer::value&& + std::is_integral::type>::value&& + sizeof(typename std::remove_pointer::type) == 1, + int >::type = 0 > + span_input_adapter(CharT b, std::size_t l) + : ia(reinterpret_cast(b), reinterpret_cast(b) + l) {} + + template::iterator_category, std::random_access_iterator_tag>::value, + int>::type = 0> + span_input_adapter(IteratorType first, IteratorType last) + : ia(input_adapter(first, last)) {} + + contiguous_bytes_input_adapter&& get() + { + return std::move(ia); // NOLINT(hicpp-move-const-arg,performance-move-const-arg) + } + + private: + contiguous_bytes_input_adapter ia; +}; + +} // namespace detail +NLOHMANN_JSON_NAMESPACE_END diff --git a/include/nlohmann/detail/input/json_sax.hpp b/include/nlohmann/detail/input/json_sax.hpp new file mode 100644 index 00000000..c772521c --- /dev/null +++ b/include/nlohmann/detail/input/json_sax.hpp @@ -0,0 +1,727 @@ +// __ _____ _____ _____ +// __| | __| | | | JSON for Modern C++ +// | | |__ | | | | | | version 3.11.3 +// |_____|_____|_____|_|___| https://github.com/nlohmann/json +// +// SPDX-FileCopyrightText: 2013-2023 Niels Lohmann +// SPDX-License-Identifier: MIT + +#pragma once + +#include +#include // string +#include // move +#include // vector + +#include +#include +#include + +NLOHMANN_JSON_NAMESPACE_BEGIN + +/*! +@brief SAX interface + +This class describes the SAX interface used by @ref nlohmann::json::sax_parse. +Each function is called in different situations while the input is parsed. The +boolean return value informs the parser whether to continue processing the +input. +*/ +template +struct json_sax +{ + using number_integer_t = typename BasicJsonType::number_integer_t; + using number_unsigned_t = typename BasicJsonType::number_unsigned_t; + using number_float_t = typename BasicJsonType::number_float_t; + using string_t = typename BasicJsonType::string_t; + using binary_t = typename BasicJsonType::binary_t; + + /*! + @brief a null value was read + @return whether parsing should proceed + */ + virtual bool null() = 0; + + /*! + @brief a boolean value was read + @param[in] val boolean value + @return whether parsing should proceed + */ + virtual bool boolean(bool val) = 0; + + /*! + @brief an integer number was read + @param[in] val integer value + @return whether parsing should proceed + */ + virtual bool number_integer(number_integer_t val) = 0; + + /*! + @brief an unsigned integer number was read + @param[in] val unsigned integer value + @return whether parsing should proceed + */ + virtual bool number_unsigned(number_unsigned_t val) = 0; + + /*! + @brief a floating-point number was read + @param[in] val floating-point value + @param[in] s raw token value + @return whether parsing should proceed + */ + virtual bool number_float(number_float_t val, const string_t& s) = 0; + + /*! + @brief a string value was read + @param[in] val string value + @return whether parsing should proceed + @note It is safe to move the passed string value. + */ + virtual bool string(string_t& val) = 0; + + /*! + @brief a binary value was read + @param[in] val binary value + @return whether parsing should proceed + @note It is safe to move the passed binary value. + */ + virtual bool binary(binary_t& val) = 0; + + /*! + @brief the beginning of an object was read + @param[in] elements number of object elements or -1 if unknown + @return whether parsing should proceed + @note binary formats may report the number of elements + */ + virtual bool start_object(std::size_t elements) = 0; + + /*! + @brief an object key was read + @param[in] val object key + @return whether parsing should proceed + @note It is safe to move the passed string. + */ + virtual bool key(string_t& val) = 0; + + /*! + @brief the end of an object was read + @return whether parsing should proceed + */ + virtual bool end_object() = 0; + + /*! + @brief the beginning of an array was read + @param[in] elements number of array elements or -1 if unknown + @return whether parsing should proceed + @note binary formats may report the number of elements + */ + virtual bool start_array(std::size_t elements) = 0; + + /*! + @brief the end of an array was read + @return whether parsing should proceed + */ + virtual bool end_array() = 0; + + /*! + @brief a parse error occurred + @param[in] position the position in the input where the error occurs + @param[in] last_token the last read token + @param[in] ex an exception object describing the error + @return whether parsing should proceed (must return false) + */ + virtual bool parse_error(std::size_t position, + const std::string& last_token, + const detail::exception& ex) = 0; + + json_sax() = default; + json_sax(const json_sax&) = default; + json_sax(json_sax&&) noexcept = default; + json_sax& operator=(const json_sax&) = default; + json_sax& operator=(json_sax&&) noexcept = default; + virtual ~json_sax() = default; +}; + +namespace detail +{ +/*! +@brief SAX implementation to create a JSON value from SAX events + +This class implements the @ref json_sax interface and processes the SAX events +to create a JSON value which makes it basically a DOM parser. The structure or +hierarchy of the JSON value is managed by the stack `ref_stack` which contains +a pointer to the respective array or object for each recursion depth. + +After successful parsing, the value that is passed by reference to the +constructor contains the parsed value. + +@tparam BasicJsonType the JSON type +*/ +template +class json_sax_dom_parser +{ + public: + using number_integer_t = typename BasicJsonType::number_integer_t; + using number_unsigned_t = typename BasicJsonType::number_unsigned_t; + using number_float_t = typename BasicJsonType::number_float_t; + using string_t = typename BasicJsonType::string_t; + using binary_t = typename BasicJsonType::binary_t; + + /*! + @param[in,out] r reference to a JSON value that is manipulated while + parsing + @param[in] allow_exceptions_ whether parse errors yield exceptions + */ + explicit json_sax_dom_parser(BasicJsonType& r, const bool allow_exceptions_ = true) + : root(r), allow_exceptions(allow_exceptions_) + {} + + // make class move-only + json_sax_dom_parser(const json_sax_dom_parser&) = delete; + json_sax_dom_parser(json_sax_dom_parser&&) = default; // NOLINT(hicpp-noexcept-move,performance-noexcept-move-constructor) + json_sax_dom_parser& operator=(const json_sax_dom_parser&) = delete; + json_sax_dom_parser& operator=(json_sax_dom_parser&&) = default; // NOLINT(hicpp-noexcept-move,performance-noexcept-move-constructor) + ~json_sax_dom_parser() = default; + + bool null() + { + handle_value(nullptr); + return true; + } + + bool boolean(bool val) + { + handle_value(val); + return true; + } + + bool number_integer(number_integer_t val) + { + handle_value(val); + return true; + } + + bool number_unsigned(number_unsigned_t val) + { + handle_value(val); + return true; + } + + bool number_float(number_float_t val, const string_t& /*unused*/) + { + handle_value(val); + return true; + } + + bool string(string_t& val) + { + handle_value(val); + return true; + } + + bool binary(binary_t& val) + { + handle_value(std::move(val)); + return true; + } + + bool start_object(std::size_t len) + { + ref_stack.push_back(handle_value(BasicJsonType::value_t::object)); + + if (JSON_HEDLEY_UNLIKELY(len != static_cast(-1) && len > ref_stack.back()->max_size())) + { + JSON_THROW(out_of_range::create(408, concat("excessive object size: ", std::to_string(len)), ref_stack.back())); + } + + return true; + } + + bool key(string_t& val) + { + JSON_ASSERT(!ref_stack.empty()); + JSON_ASSERT(ref_stack.back()->is_object()); + + // add null at given key and store the reference for later + object_element = &(ref_stack.back()->m_data.m_value.object->operator[](val)); + return true; + } + + bool end_object() + { + JSON_ASSERT(!ref_stack.empty()); + JSON_ASSERT(ref_stack.back()->is_object()); + + ref_stack.back()->set_parents(); + ref_stack.pop_back(); + return true; + } + + bool start_array(std::size_t len) + { + ref_stack.push_back(handle_value(BasicJsonType::value_t::array)); + + if (JSON_HEDLEY_UNLIKELY(len != static_cast(-1) && len > ref_stack.back()->max_size())) + { + JSON_THROW(out_of_range::create(408, concat("excessive array size: ", std::to_string(len)), ref_stack.back())); + } + + return true; + } + + bool end_array() + { + JSON_ASSERT(!ref_stack.empty()); + JSON_ASSERT(ref_stack.back()->is_array()); + + ref_stack.back()->set_parents(); + ref_stack.pop_back(); + return true; + } + + template + bool parse_error(std::size_t /*unused*/, const std::string& /*unused*/, + const Exception& ex) + { + errored = true; + static_cast(ex); + if (allow_exceptions) + { + JSON_THROW(ex); + } + return false; + } + + constexpr bool is_errored() const + { + return errored; + } + + private: + /*! + @invariant If the ref stack is empty, then the passed value will be the new + root. + @invariant If the ref stack contains a value, then it is an array or an + object to which we can add elements + */ + template + JSON_HEDLEY_RETURNS_NON_NULL + BasicJsonType* handle_value(Value&& v) + { + if (ref_stack.empty()) + { + root = BasicJsonType(std::forward(v)); + return &root; + } + + JSON_ASSERT(ref_stack.back()->is_array() || ref_stack.back()->is_object()); + + if (ref_stack.back()->is_array()) + { + ref_stack.back()->m_data.m_value.array->emplace_back(std::forward(v)); + return &(ref_stack.back()->m_data.m_value.array->back()); + } + + JSON_ASSERT(ref_stack.back()->is_object()); + JSON_ASSERT(object_element); + *object_element = BasicJsonType(std::forward(v)); + return object_element; + } + + /// the parsed JSON value + BasicJsonType& root; + /// stack to model hierarchy of values + std::vector ref_stack {}; + /// helper to hold the reference for the next object element + BasicJsonType* object_element = nullptr; + /// whether a syntax error occurred + bool errored = false; + /// whether to throw exceptions in case of errors + const bool allow_exceptions = true; +}; + +template +class json_sax_dom_callback_parser +{ + public: + using number_integer_t = typename BasicJsonType::number_integer_t; + using number_unsigned_t = typename BasicJsonType::number_unsigned_t; + using number_float_t = typename BasicJsonType::number_float_t; + using string_t = typename BasicJsonType::string_t; + using binary_t = typename BasicJsonType::binary_t; + using parser_callback_t = typename BasicJsonType::parser_callback_t; + using parse_event_t = typename BasicJsonType::parse_event_t; + + json_sax_dom_callback_parser(BasicJsonType& r, + const parser_callback_t cb, + const bool allow_exceptions_ = true) + : root(r), callback(cb), allow_exceptions(allow_exceptions_) + { + keep_stack.push_back(true); + } + + // make class move-only + json_sax_dom_callback_parser(const json_sax_dom_callback_parser&) = delete; + json_sax_dom_callback_parser(json_sax_dom_callback_parser&&) = default; // NOLINT(hicpp-noexcept-move,performance-noexcept-move-constructor) + json_sax_dom_callback_parser& operator=(const json_sax_dom_callback_parser&) = delete; + json_sax_dom_callback_parser& operator=(json_sax_dom_callback_parser&&) = default; // NOLINT(hicpp-noexcept-move,performance-noexcept-move-constructor) + ~json_sax_dom_callback_parser() = default; + + bool null() + { + handle_value(nullptr); + return true; + } + + bool boolean(bool val) + { + handle_value(val); + return true; + } + + bool number_integer(number_integer_t val) + { + handle_value(val); + return true; + } + + bool number_unsigned(number_unsigned_t val) + { + handle_value(val); + return true; + } + + bool number_float(number_float_t val, const string_t& /*unused*/) + { + handle_value(val); + return true; + } + + bool string(string_t& val) + { + handle_value(val); + return true; + } + + bool binary(binary_t& val) + { + handle_value(std::move(val)); + return true; + } + + bool start_object(std::size_t len) + { + // check callback for object start + const bool keep = callback(static_cast(ref_stack.size()), parse_event_t::object_start, discarded); + keep_stack.push_back(keep); + + auto val = handle_value(BasicJsonType::value_t::object, true); + ref_stack.push_back(val.second); + + // check object limit + if (ref_stack.back() && JSON_HEDLEY_UNLIKELY(len != static_cast(-1) && len > ref_stack.back()->max_size())) + { + JSON_THROW(out_of_range::create(408, concat("excessive object size: ", std::to_string(len)), ref_stack.back())); + } + + return true; + } + + bool key(string_t& val) + { + BasicJsonType k = BasicJsonType(val); + + // check callback for key + const bool keep = callback(static_cast(ref_stack.size()), parse_event_t::key, k); + key_keep_stack.push_back(keep); + + // add discarded value at given key and store the reference for later + if (keep && ref_stack.back()) + { + object_element = &(ref_stack.back()->m_data.m_value.object->operator[](val) = discarded); + } + + return true; + } + + bool end_object() + { + if (ref_stack.back()) + { + if (!callback(static_cast(ref_stack.size()) - 1, parse_event_t::object_end, *ref_stack.back())) + { + // discard object + *ref_stack.back() = discarded; + } + else + { + ref_stack.back()->set_parents(); + } + } + + JSON_ASSERT(!ref_stack.empty()); + JSON_ASSERT(!keep_stack.empty()); + ref_stack.pop_back(); + keep_stack.pop_back(); + + if (!ref_stack.empty() && ref_stack.back() && ref_stack.back()->is_structured()) + { + // remove discarded value + for (auto it = ref_stack.back()->begin(); it != ref_stack.back()->end(); ++it) + { + if (it->is_discarded()) + { + ref_stack.back()->erase(it); + break; + } + } + } + + return true; + } + + bool start_array(std::size_t len) + { + const bool keep = callback(static_cast(ref_stack.size()), parse_event_t::array_start, discarded); + keep_stack.push_back(keep); + + auto val = handle_value(BasicJsonType::value_t::array, true); + ref_stack.push_back(val.second); + + // check array limit + if (ref_stack.back() && JSON_HEDLEY_UNLIKELY(len != static_cast(-1) && len > ref_stack.back()->max_size())) + { + JSON_THROW(out_of_range::create(408, concat("excessive array size: ", std::to_string(len)), ref_stack.back())); + } + + return true; + } + + bool end_array() + { + bool keep = true; + + if (ref_stack.back()) + { + keep = callback(static_cast(ref_stack.size()) - 1, parse_event_t::array_end, *ref_stack.back()); + if (keep) + { + ref_stack.back()->set_parents(); + } + else + { + // discard array + *ref_stack.back() = discarded; + } + } + + JSON_ASSERT(!ref_stack.empty()); + JSON_ASSERT(!keep_stack.empty()); + ref_stack.pop_back(); + keep_stack.pop_back(); + + // remove discarded value + if (!keep && !ref_stack.empty() && ref_stack.back()->is_array()) + { + ref_stack.back()->m_data.m_value.array->pop_back(); + } + + return true; + } + + template + bool parse_error(std::size_t /*unused*/, const std::string& /*unused*/, + const Exception& ex) + { + errored = true; + static_cast(ex); + if (allow_exceptions) + { + JSON_THROW(ex); + } + return false; + } + + constexpr bool is_errored() const + { + return errored; + } + + private: + /*! + @param[in] v value to add to the JSON value we build during parsing + @param[in] skip_callback whether we should skip calling the callback + function; this is required after start_array() and + start_object() SAX events, because otherwise we would call the + callback function with an empty array or object, respectively. + + @invariant If the ref stack is empty, then the passed value will be the new + root. + @invariant If the ref stack contains a value, then it is an array or an + object to which we can add elements + + @return pair of boolean (whether value should be kept) and pointer (to the + passed value in the ref_stack hierarchy; nullptr if not kept) + */ + template + std::pair handle_value(Value&& v, const bool skip_callback = false) + { + JSON_ASSERT(!keep_stack.empty()); + + // do not handle this value if we know it would be added to a discarded + // container + if (!keep_stack.back()) + { + return {false, nullptr}; + } + + // create value + auto value = BasicJsonType(std::forward(v)); + + // check callback + const bool keep = skip_callback || callback(static_cast(ref_stack.size()), parse_event_t::value, value); + + // do not handle this value if we just learnt it shall be discarded + if (!keep) + { + return {false, nullptr}; + } + + if (ref_stack.empty()) + { + root = std::move(value); + return {true, & root}; + } + + // skip this value if we already decided to skip the parent + // (https://github.com/nlohmann/json/issues/971#issuecomment-413678360) + if (!ref_stack.back()) + { + return {false, nullptr}; + } + + // we now only expect arrays and objects + JSON_ASSERT(ref_stack.back()->is_array() || ref_stack.back()->is_object()); + + // array + if (ref_stack.back()->is_array()) + { + ref_stack.back()->m_data.m_value.array->emplace_back(std::move(value)); + return {true, & (ref_stack.back()->m_data.m_value.array->back())}; + } + + // object + JSON_ASSERT(ref_stack.back()->is_object()); + // check if we should store an element for the current key + JSON_ASSERT(!key_keep_stack.empty()); + const bool store_element = key_keep_stack.back(); + key_keep_stack.pop_back(); + + if (!store_element) + { + return {false, nullptr}; + } + + JSON_ASSERT(object_element); + *object_element = std::move(value); + return {true, object_element}; + } + + /// the parsed JSON value + BasicJsonType& root; + /// stack to model hierarchy of values + std::vector ref_stack {}; + /// stack to manage which values to keep + std::vector keep_stack {}; + /// stack to manage which object keys to keep + std::vector key_keep_stack {}; + /// helper to hold the reference for the next object element + BasicJsonType* object_element = nullptr; + /// whether a syntax error occurred + bool errored = false; + /// callback function + const parser_callback_t callback = nullptr; + /// whether to throw exceptions in case of errors + const bool allow_exceptions = true; + /// a discarded value for the callback + BasicJsonType discarded = BasicJsonType::value_t::discarded; +}; + +template +class json_sax_acceptor +{ + public: + using number_integer_t = typename BasicJsonType::number_integer_t; + using number_unsigned_t = typename BasicJsonType::number_unsigned_t; + using number_float_t = typename BasicJsonType::number_float_t; + using string_t = typename BasicJsonType::string_t; + using binary_t = typename BasicJsonType::binary_t; + + bool null() + { + return true; + } + + bool boolean(bool /*unused*/) + { + return true; + } + + bool number_integer(number_integer_t /*unused*/) + { + return true; + } + + bool number_unsigned(number_unsigned_t /*unused*/) + { + return true; + } + + bool number_float(number_float_t /*unused*/, const string_t& /*unused*/) + { + return true; + } + + bool string(string_t& /*unused*/) + { + return true; + } + + bool binary(binary_t& /*unused*/) + { + return true; + } + + bool start_object(std::size_t /*unused*/ = static_cast(-1)) + { + return true; + } + + bool key(string_t& /*unused*/) + { + return true; + } + + bool end_object() + { + return true; + } + + bool start_array(std::size_t /*unused*/ = static_cast(-1)) + { + return true; + } + + bool end_array() + { + return true; + } + + bool parse_error(std::size_t /*unused*/, const std::string& /*unused*/, const detail::exception& /*unused*/) + { + return false; + } +}; + +} // namespace detail +NLOHMANN_JSON_NAMESPACE_END diff --git a/include/nlohmann/detail/input/lexer.hpp b/include/nlohmann/detail/input/lexer.hpp new file mode 100644 index 00000000..4b3bf77d --- /dev/null +++ b/include/nlohmann/detail/input/lexer.hpp @@ -0,0 +1,1633 @@ +// __ _____ _____ _____ +// __| | __| | | | JSON for Modern C++ +// | | |__ | | | | | | version 3.11.3 +// |_____|_____|_____|_|___| https://github.com/nlohmann/json +// +// SPDX-FileCopyrightText: 2013-2023 Niels Lohmann +// SPDX-License-Identifier: MIT + +#pragma once + +#include // array +#include // localeconv +#include // size_t +#include // snprintf +#include // strtof, strtod, strtold, strtoll, strtoull +#include // initializer_list +#include // char_traits, string +#include // move +#include // vector + +#include +#include +#include +#include + +NLOHMANN_JSON_NAMESPACE_BEGIN +namespace detail +{ + +/////////// +// lexer // +/////////// + +template +class lexer_base +{ + public: + /// token types for the parser + enum class token_type + { + uninitialized, ///< indicating the scanner is uninitialized + literal_true, ///< the `true` literal + literal_false, ///< the `false` literal + literal_null, ///< the `null` literal + value_string, ///< a string -- use get_string() for actual value + value_unsigned, ///< an unsigned integer -- use get_number_unsigned() for actual value + value_integer, ///< a signed integer -- use get_number_integer() for actual value + value_float, ///< an floating point number -- use get_number_float() for actual value + begin_array, ///< the character for array begin `[` + begin_object, ///< the character for object begin `{` + end_array, ///< the character for array end `]` + end_object, ///< the character for object end `}` + name_separator, ///< the name separator `:` + value_separator, ///< the value separator `,` + parse_error, ///< indicating a parse error + end_of_input, ///< indicating the end of the input buffer + literal_or_value ///< a literal or the begin of a value (only for diagnostics) + }; + + /// return name of values of type token_type (only used for errors) + JSON_HEDLEY_RETURNS_NON_NULL + JSON_HEDLEY_CONST + static const char* token_type_name(const token_type t) noexcept + { + switch (t) + { + case token_type::uninitialized: + return ""; + case token_type::literal_true: + return "true literal"; + case token_type::literal_false: + return "false literal"; + case token_type::literal_null: + return "null literal"; + case token_type::value_string: + return "string literal"; + case token_type::value_unsigned: + case token_type::value_integer: + case token_type::value_float: + return "number literal"; + case token_type::begin_array: + return "'['"; + case token_type::begin_object: + return "'{'"; + case token_type::end_array: + return "']'"; + case token_type::end_object: + return "'}'"; + case token_type::name_separator: + return "':'"; + case token_type::value_separator: + return "','"; + case token_type::parse_error: + return ""; + case token_type::end_of_input: + return "end of input"; + case token_type::literal_or_value: + return "'[', '{', or a literal"; + // LCOV_EXCL_START + default: // catch non-enum values + return "unknown token"; + // LCOV_EXCL_STOP + } + } +}; +/*! +@brief lexical analysis + +This class organizes the lexical analysis during JSON deserialization. +*/ +template +class lexer : public lexer_base +{ + using number_integer_t = typename BasicJsonType::number_integer_t; + using number_unsigned_t = typename BasicJsonType::number_unsigned_t; + using number_float_t = typename BasicJsonType::number_float_t; + using string_t = typename BasicJsonType::string_t; + using char_type = typename InputAdapterType::char_type; + using char_int_type = typename char_traits::int_type; + + public: + using token_type = typename lexer_base::token_type; + + explicit lexer(InputAdapterType&& adapter, bool ignore_comments_ = false) noexcept + : ia(std::move(adapter)) + , ignore_comments(ignore_comments_) + , decimal_point_char(static_cast(get_decimal_point())) + {} + + // delete because of pointer members + lexer(const lexer&) = delete; + lexer(lexer&&) = default; // NOLINT(hicpp-noexcept-move,performance-noexcept-move-constructor) + lexer& operator=(lexer&) = delete; + lexer& operator=(lexer&&) = default; // NOLINT(hicpp-noexcept-move,performance-noexcept-move-constructor) + ~lexer() = default; + + private: + ///////////////////// + // locales + ///////////////////// + + /// return the locale-dependent decimal point + JSON_HEDLEY_PURE + static char get_decimal_point() noexcept + { + const auto* loc = localeconv(); + JSON_ASSERT(loc != nullptr); + return (loc->decimal_point == nullptr) ? '.' : *(loc->decimal_point); + } + + ///////////////////// + // scan functions + ///////////////////// + + /*! + @brief get codepoint from 4 hex characters following `\u` + + For input "\u c1 c2 c3 c4" the codepoint is: + (c1 * 0x1000) + (c2 * 0x0100) + (c3 * 0x0010) + c4 + = (c1 << 12) + (c2 << 8) + (c3 << 4) + (c4 << 0) + + Furthermore, the possible characters '0'..'9', 'A'..'F', and 'a'..'f' + must be converted to the integers 0x0..0x9, 0xA..0xF, 0xA..0xF, resp. The + conversion is done by subtracting the offset (0x30, 0x37, and 0x57) + between the ASCII value of the character and the desired integer value. + + @return codepoint (0x0000..0xFFFF) or -1 in case of an error (e.g. EOF or + non-hex character) + */ + int get_codepoint() + { + // this function only makes sense after reading `\u` + JSON_ASSERT(current == 'u'); + int codepoint = 0; + + const auto factors = { 12u, 8u, 4u, 0u }; + for (const auto factor : factors) + { + get(); + + if (current >= '0' && current <= '9') + { + codepoint += static_cast((static_cast(current) - 0x30u) << factor); + } + else if (current >= 'A' && current <= 'F') + { + codepoint += static_cast((static_cast(current) - 0x37u) << factor); + } + else if (current >= 'a' && current <= 'f') + { + codepoint += static_cast((static_cast(current) - 0x57u) << factor); + } + else + { + return -1; + } + } + + JSON_ASSERT(0x0000 <= codepoint && codepoint <= 0xFFFF); + return codepoint; + } + + /*! + @brief check if the next byte(s) are inside a given range + + Adds the current byte and, for each passed range, reads a new byte and + checks if it is inside the range. If a violation was detected, set up an + error message and return false. Otherwise, return true. + + @param[in] ranges list of integers; interpreted as list of pairs of + inclusive lower and upper bound, respectively + + @pre The passed list @a ranges must have 2, 4, or 6 elements; that is, + 1, 2, or 3 pairs. This precondition is enforced by an assertion. + + @return true if and only if no range violation was detected + */ + bool next_byte_in_range(std::initializer_list ranges) + { + JSON_ASSERT(ranges.size() == 2 || ranges.size() == 4 || ranges.size() == 6); + add(current); + + for (auto range = ranges.begin(); range != ranges.end(); ++range) + { + get(); + if (JSON_HEDLEY_LIKELY(*range <= current && current <= *(++range))) // NOLINT(bugprone-inc-dec-in-conditions) + { + add(current); + } + else + { + error_message = "invalid string: ill-formed UTF-8 byte"; + return false; + } + } + + return true; + } + + /*! + @brief scan a string literal + + This function scans a string according to Sect. 7 of RFC 8259. While + scanning, bytes are escaped and copied into buffer token_buffer. Then the + function returns successfully, token_buffer is *not* null-terminated (as it + may contain \0 bytes), and token_buffer.size() is the number of bytes in the + string. + + @return token_type::value_string if string could be successfully scanned, + token_type::parse_error otherwise + + @note In case of errors, variable error_message contains a textual + description. + */ + token_type scan_string() + { + // reset token_buffer (ignore opening quote) + reset(); + + // we entered the function by reading an open quote + JSON_ASSERT(current == '\"'); + + while (true) + { + // get next character + switch (get()) + { + // end of file while parsing string + case char_traits::eof(): + { + error_message = "invalid string: missing closing quote"; + return token_type::parse_error; + } + + // closing quote + case '\"': + { + return token_type::value_string; + } + + // escapes + case '\\': + { + switch (get()) + { + // quotation mark + case '\"': + add('\"'); + break; + // reverse solidus + case '\\': + add('\\'); + break; + // solidus + case '/': + add('/'); + break; + // backspace + case 'b': + add('\b'); + break; + // form feed + case 'f': + add('\f'); + break; + // line feed + case 'n': + add('\n'); + break; + // carriage return + case 'r': + add('\r'); + break; + // tab + case 't': + add('\t'); + break; + + // unicode escapes + case 'u': + { + const int codepoint1 = get_codepoint(); + int codepoint = codepoint1; // start with codepoint1 + + if (JSON_HEDLEY_UNLIKELY(codepoint1 == -1)) + { + error_message = "invalid string: '\\u' must be followed by 4 hex digits"; + return token_type::parse_error; + } + + // check if code point is a high surrogate + if (0xD800 <= codepoint1 && codepoint1 <= 0xDBFF) + { + // expect next \uxxxx entry + if (JSON_HEDLEY_LIKELY(get() == '\\' && get() == 'u')) + { + const int codepoint2 = get_codepoint(); + + if (JSON_HEDLEY_UNLIKELY(codepoint2 == -1)) + { + error_message = "invalid string: '\\u' must be followed by 4 hex digits"; + return token_type::parse_error; + } + + // check if codepoint2 is a low surrogate + if (JSON_HEDLEY_LIKELY(0xDC00 <= codepoint2 && codepoint2 <= 0xDFFF)) + { + // overwrite codepoint + codepoint = static_cast( + // high surrogate occupies the most significant 22 bits + (static_cast(codepoint1) << 10u) + // low surrogate occupies the least significant 15 bits + + static_cast(codepoint2) + // there is still the 0xD800, 0xDC00 and 0x10000 noise + // in the result, so we have to subtract with: + // (0xD800 << 10) + DC00 - 0x10000 = 0x35FDC00 + - 0x35FDC00u); + } + else + { + error_message = "invalid string: surrogate U+D800..U+DBFF must be followed by U+DC00..U+DFFF"; + return token_type::parse_error; + } + } + else + { + error_message = "invalid string: surrogate U+D800..U+DBFF must be followed by U+DC00..U+DFFF"; + return token_type::parse_error; + } + } + else + { + if (JSON_HEDLEY_UNLIKELY(0xDC00 <= codepoint1 && codepoint1 <= 0xDFFF)) + { + error_message = "invalid string: surrogate U+DC00..U+DFFF must follow U+D800..U+DBFF"; + return token_type::parse_error; + } + } + + // result of the above calculation yields a proper codepoint + JSON_ASSERT(0x00 <= codepoint && codepoint <= 0x10FFFF); + + // translate codepoint into bytes + if (codepoint < 0x80) + { + // 1-byte characters: 0xxxxxxx (ASCII) + add(static_cast(codepoint)); + } + else if (codepoint <= 0x7FF) + { + // 2-byte characters: 110xxxxx 10xxxxxx + add(static_cast(0xC0u | (static_cast(codepoint) >> 6u))); + add(static_cast(0x80u | (static_cast(codepoint) & 0x3Fu))); + } + else if (codepoint <= 0xFFFF) + { + // 3-byte characters: 1110xxxx 10xxxxxx 10xxxxxx + add(static_cast(0xE0u | (static_cast(codepoint) >> 12u))); + add(static_cast(0x80u | ((static_cast(codepoint) >> 6u) & 0x3Fu))); + add(static_cast(0x80u | (static_cast(codepoint) & 0x3Fu))); + } + else + { + // 4-byte characters: 11110xxx 10xxxxxx 10xxxxxx 10xxxxxx + add(static_cast(0xF0u | (static_cast(codepoint) >> 18u))); + add(static_cast(0x80u | ((static_cast(codepoint) >> 12u) & 0x3Fu))); + add(static_cast(0x80u | ((static_cast(codepoint) >> 6u) & 0x3Fu))); + add(static_cast(0x80u | (static_cast(codepoint) & 0x3Fu))); + } + + break; + } + + // other characters after escape + default: + error_message = "invalid string: forbidden character after backslash"; + return token_type::parse_error; + } + + break; + } + + // invalid control characters + case 0x00: + { + error_message = "invalid string: control character U+0000 (NUL) must be escaped to \\u0000"; + return token_type::parse_error; + } + + case 0x01: + { + error_message = "invalid string: control character U+0001 (SOH) must be escaped to \\u0001"; + return token_type::parse_error; + } + + case 0x02: + { + error_message = "invalid string: control character U+0002 (STX) must be escaped to \\u0002"; + return token_type::parse_error; + } + + case 0x03: + { + error_message = "invalid string: control character U+0003 (ETX) must be escaped to \\u0003"; + return token_type::parse_error; + } + + case 0x04: + { + error_message = "invalid string: control character U+0004 (EOT) must be escaped to \\u0004"; + return token_type::parse_error; + } + + case 0x05: + { + error_message = "invalid string: control character U+0005 (ENQ) must be escaped to \\u0005"; + return token_type::parse_error; + } + + case 0x06: + { + error_message = "invalid string: control character U+0006 (ACK) must be escaped to \\u0006"; + return token_type::parse_error; + } + + case 0x07: + { + error_message = "invalid string: control character U+0007 (BEL) must be escaped to \\u0007"; + return token_type::parse_error; + } + + case 0x08: + { + error_message = "invalid string: control character U+0008 (BS) must be escaped to \\u0008 or \\b"; + return token_type::parse_error; + } + + case 0x09: + { + error_message = "invalid string: control character U+0009 (HT) must be escaped to \\u0009 or \\t"; + return token_type::parse_error; + } + + case 0x0A: + { + error_message = "invalid string: control character U+000A (LF) must be escaped to \\u000A or \\n"; + return token_type::parse_error; + } + + case 0x0B: + { + error_message = "invalid string: control character U+000B (VT) must be escaped to \\u000B"; + return token_type::parse_error; + } + + case 0x0C: + { + error_message = "invalid string: control character U+000C (FF) must be escaped to \\u000C or \\f"; + return token_type::parse_error; + } + + case 0x0D: + { + error_message = "invalid string: control character U+000D (CR) must be escaped to \\u000D or \\r"; + return token_type::parse_error; + } + + case 0x0E: + { + error_message = "invalid string: control character U+000E (SO) must be escaped to \\u000E"; + return token_type::parse_error; + } + + case 0x0F: + { + error_message = "invalid string: control character U+000F (SI) must be escaped to \\u000F"; + return token_type::parse_error; + } + + case 0x10: + { + error_message = "invalid string: control character U+0010 (DLE) must be escaped to \\u0010"; + return token_type::parse_error; + } + + case 0x11: + { + error_message = "invalid string: control character U+0011 (DC1) must be escaped to \\u0011"; + return token_type::parse_error; + } + + case 0x12: + { + error_message = "invalid string: control character U+0012 (DC2) must be escaped to \\u0012"; + return token_type::parse_error; + } + + case 0x13: + { + error_message = "invalid string: control character U+0013 (DC3) must be escaped to \\u0013"; + return token_type::parse_error; + } + + case 0x14: + { + error_message = "invalid string: control character U+0014 (DC4) must be escaped to \\u0014"; + return token_type::parse_error; + } + + case 0x15: + { + error_message = "invalid string: control character U+0015 (NAK) must be escaped to \\u0015"; + return token_type::parse_error; + } + + case 0x16: + { + error_message = "invalid string: control character U+0016 (SYN) must be escaped to \\u0016"; + return token_type::parse_error; + } + + case 0x17: + { + error_message = "invalid string: control character U+0017 (ETB) must be escaped to \\u0017"; + return token_type::parse_error; + } + + case 0x18: + { + error_message = "invalid string: control character U+0018 (CAN) must be escaped to \\u0018"; + return token_type::parse_error; + } + + case 0x19: + { + error_message = "invalid string: control character U+0019 (EM) must be escaped to \\u0019"; + return token_type::parse_error; + } + + case 0x1A: + { + error_message = "invalid string: control character U+001A (SUB) must be escaped to \\u001A"; + return token_type::parse_error; + } + + case 0x1B: + { + error_message = "invalid string: control character U+001B (ESC) must be escaped to \\u001B"; + return token_type::parse_error; + } + + case 0x1C: + { + error_message = "invalid string: control character U+001C (FS) must be escaped to \\u001C"; + return token_type::parse_error; + } + + case 0x1D: + { + error_message = "invalid string: control character U+001D (GS) must be escaped to \\u001D"; + return token_type::parse_error; + } + + case 0x1E: + { + error_message = "invalid string: control character U+001E (RS) must be escaped to \\u001E"; + return token_type::parse_error; + } + + case 0x1F: + { + error_message = "invalid string: control character U+001F (US) must be escaped to \\u001F"; + return token_type::parse_error; + } + + // U+0020..U+007F (except U+0022 (quote) and U+005C (backspace)) + case 0x20: + case 0x21: + case 0x23: + case 0x24: + case 0x25: + case 0x26: + case 0x27: + case 0x28: + case 0x29: + case 0x2A: + case 0x2B: + case 0x2C: + case 0x2D: + case 0x2E: + case 0x2F: + case 0x30: + case 0x31: + case 0x32: + case 0x33: + case 0x34: + case 0x35: + case 0x36: + case 0x37: + case 0x38: + case 0x39: + case 0x3A: + case 0x3B: + case 0x3C: + case 0x3D: + case 0x3E: + case 0x3F: + case 0x40: + case 0x41: + case 0x42: + case 0x43: + case 0x44: + case 0x45: + case 0x46: + case 0x47: + case 0x48: + case 0x49: + case 0x4A: + case 0x4B: + case 0x4C: + case 0x4D: + case 0x4E: + case 0x4F: + case 0x50: + case 0x51: + case 0x52: + case 0x53: + case 0x54: + case 0x55: + case 0x56: + case 0x57: + case 0x58: + case 0x59: + case 0x5A: + case 0x5B: + case 0x5D: + case 0x5E: + case 0x5F: + case 0x60: + case 0x61: + case 0x62: + case 0x63: + case 0x64: + case 0x65: + case 0x66: + case 0x67: + case 0x68: + case 0x69: + case 0x6A: + case 0x6B: + case 0x6C: + case 0x6D: + case 0x6E: + case 0x6F: + case 0x70: + case 0x71: + case 0x72: + case 0x73: + case 0x74: + case 0x75: + case 0x76: + case 0x77: + case 0x78: + case 0x79: + case 0x7A: + case 0x7B: + case 0x7C: + case 0x7D: + case 0x7E: + case 0x7F: + { + add(current); + break; + } + + // U+0080..U+07FF: bytes C2..DF 80..BF + case 0xC2: + case 0xC3: + case 0xC4: + case 0xC5: + case 0xC6: + case 0xC7: + case 0xC8: + case 0xC9: + case 0xCA: + case 0xCB: + case 0xCC: + case 0xCD: + case 0xCE: + case 0xCF: + case 0xD0: + case 0xD1: + case 0xD2: + case 0xD3: + case 0xD4: + case 0xD5: + case 0xD6: + case 0xD7: + case 0xD8: + case 0xD9: + case 0xDA: + case 0xDB: + case 0xDC: + case 0xDD: + case 0xDE: + case 0xDF: + { + if (JSON_HEDLEY_UNLIKELY(!next_byte_in_range({0x80, 0xBF}))) + { + return token_type::parse_error; + } + break; + } + + // U+0800..U+0FFF: bytes E0 A0..BF 80..BF + case 0xE0: + { + if (JSON_HEDLEY_UNLIKELY(!(next_byte_in_range({0xA0, 0xBF, 0x80, 0xBF})))) + { + return token_type::parse_error; + } + break; + } + + // U+1000..U+CFFF: bytes E1..EC 80..BF 80..BF + // U+E000..U+FFFF: bytes EE..EF 80..BF 80..BF + case 0xE1: + case 0xE2: + case 0xE3: + case 0xE4: + case 0xE5: + case 0xE6: + case 0xE7: + case 0xE8: + case 0xE9: + case 0xEA: + case 0xEB: + case 0xEC: + case 0xEE: + case 0xEF: + { + if (JSON_HEDLEY_UNLIKELY(!(next_byte_in_range({0x80, 0xBF, 0x80, 0xBF})))) + { + return token_type::parse_error; + } + break; + } + + // U+D000..U+D7FF: bytes ED 80..9F 80..BF + case 0xED: + { + if (JSON_HEDLEY_UNLIKELY(!(next_byte_in_range({0x80, 0x9F, 0x80, 0xBF})))) + { + return token_type::parse_error; + } + break; + } + + // U+10000..U+3FFFF F0 90..BF 80..BF 80..BF + case 0xF0: + { + if (JSON_HEDLEY_UNLIKELY(!(next_byte_in_range({0x90, 0xBF, 0x80, 0xBF, 0x80, 0xBF})))) + { + return token_type::parse_error; + } + break; + } + + // U+40000..U+FFFFF F1..F3 80..BF 80..BF 80..BF + case 0xF1: + case 0xF2: + case 0xF3: + { + if (JSON_HEDLEY_UNLIKELY(!(next_byte_in_range({0x80, 0xBF, 0x80, 0xBF, 0x80, 0xBF})))) + { + return token_type::parse_error; + } + break; + } + + // U+100000..U+10FFFF F4 80..8F 80..BF 80..BF + case 0xF4: + { + if (JSON_HEDLEY_UNLIKELY(!(next_byte_in_range({0x80, 0x8F, 0x80, 0xBF, 0x80, 0xBF})))) + { + return token_type::parse_error; + } + break; + } + + // remaining bytes (80..C1 and F5..FF) are ill-formed + default: + { + error_message = "invalid string: ill-formed UTF-8 byte"; + return token_type::parse_error; + } + } + } + } + + /*! + * @brief scan a comment + * @return whether comment could be scanned successfully + */ + bool scan_comment() + { + switch (get()) + { + // single-line comments skip input until a newline or EOF is read + case '/': + { + while (true) + { + switch (get()) + { + case '\n': + case '\r': + case char_traits::eof(): + case '\0': + return true; + + default: + break; + } + } + } + + // multi-line comments skip input until */ is read + case '*': + { + while (true) + { + switch (get()) + { + case char_traits::eof(): + case '\0': + { + error_message = "invalid comment; missing closing '*/'"; + return false; + } + + case '*': + { + switch (get()) + { + case '/': + return true; + + default: + { + unget(); + continue; + } + } + } + + default: + continue; + } + } + } + + // unexpected character after reading '/' + default: + { + error_message = "invalid comment; expecting '/' or '*' after '/'"; + return false; + } + } + } + + JSON_HEDLEY_NON_NULL(2) + static void strtof(float& f, const char* str, char** endptr) noexcept + { + f = std::strtof(str, endptr); + } + + JSON_HEDLEY_NON_NULL(2) + static void strtof(double& f, const char* str, char** endptr) noexcept + { + f = std::strtod(str, endptr); + } + + JSON_HEDLEY_NON_NULL(2) + static void strtof(long double& f, const char* str, char** endptr) noexcept + { + f = std::strtold(str, endptr); + } + + /*! + @brief scan a number literal + + This function scans a string according to Sect. 6 of RFC 8259. + + The function is realized with a deterministic finite state machine derived + from the grammar described in RFC 8259. Starting in state "init", the + input is read and used to determined the next state. Only state "done" + accepts the number. State "error" is a trap state to model errors. In the + table below, "anything" means any character but the ones listed before. + + state | 0 | 1-9 | e E | + | - | . | anything + ---------|----------|----------|----------|---------|---------|----------|----------- + init | zero | any1 | [error] | [error] | minus | [error] | [error] + minus | zero | any1 | [error] | [error] | [error] | [error] | [error] + zero | done | done | exponent | done | done | decimal1 | done + any1 | any1 | any1 | exponent | done | done | decimal1 | done + decimal1 | decimal2 | decimal2 | [error] | [error] | [error] | [error] | [error] + decimal2 | decimal2 | decimal2 | exponent | done | done | done | done + exponent | any2 | any2 | [error] | sign | sign | [error] | [error] + sign | any2 | any2 | [error] | [error] | [error] | [error] | [error] + any2 | any2 | any2 | done | done | done | done | done + + The state machine is realized with one label per state (prefixed with + "scan_number_") and `goto` statements between them. The state machine + contains cycles, but any cycle can be left when EOF is read. Therefore, + the function is guaranteed to terminate. + + During scanning, the read bytes are stored in token_buffer. This string is + then converted to a signed integer, an unsigned integer, or a + floating-point number. + + @return token_type::value_unsigned, token_type::value_integer, or + token_type::value_float if number could be successfully scanned, + token_type::parse_error otherwise + + @note The scanner is independent of the current locale. Internally, the + locale's decimal point is used instead of `.` to work with the + locale-dependent converters. + */ + token_type scan_number() // lgtm [cpp/use-of-goto] + { + // reset token_buffer to store the number's bytes + reset(); + + // the type of the parsed number; initially set to unsigned; will be + // changed if minus sign, decimal point or exponent is read + token_type number_type = token_type::value_unsigned; + + // state (init): we just found out we need to scan a number + switch (current) + { + case '-': + { + add(current); + goto scan_number_minus; + } + + case '0': + { + add(current); + goto scan_number_zero; + } + + case '1': + case '2': + case '3': + case '4': + case '5': + case '6': + case '7': + case '8': + case '9': + { + add(current); + goto scan_number_any1; + } + + // all other characters are rejected outside scan_number() + default: // LCOV_EXCL_LINE + JSON_ASSERT(false); // NOLINT(cert-dcl03-c,hicpp-static-assert,misc-static-assert) LCOV_EXCL_LINE + } + +scan_number_minus: + // state: we just parsed a leading minus sign + number_type = token_type::value_integer; + switch (get()) + { + case '0': + { + add(current); + goto scan_number_zero; + } + + case '1': + case '2': + case '3': + case '4': + case '5': + case '6': + case '7': + case '8': + case '9': + { + add(current); + goto scan_number_any1; + } + + default: + { + error_message = "invalid number; expected digit after '-'"; + return token_type::parse_error; + } + } + +scan_number_zero: + // state: we just parse a zero (maybe with a leading minus sign) + switch (get()) + { + case '.': + { + add(decimal_point_char); + goto scan_number_decimal1; + } + + case 'e': + case 'E': + { + add(current); + goto scan_number_exponent; + } + + default: + goto scan_number_done; + } + +scan_number_any1: + // state: we just parsed a number 0-9 (maybe with a leading minus sign) + switch (get()) + { + case '0': + case '1': + case '2': + case '3': + case '4': + case '5': + case '6': + case '7': + case '8': + case '9': + { + add(current); + goto scan_number_any1; + } + + case '.': + { + add(decimal_point_char); + goto scan_number_decimal1; + } + + case 'e': + case 'E': + { + add(current); + goto scan_number_exponent; + } + + default: + goto scan_number_done; + } + +scan_number_decimal1: + // state: we just parsed a decimal point + number_type = token_type::value_float; + switch (get()) + { + case '0': + case '1': + case '2': + case '3': + case '4': + case '5': + case '6': + case '7': + case '8': + case '9': + { + add(current); + goto scan_number_decimal2; + } + + default: + { + error_message = "invalid number; expected digit after '.'"; + return token_type::parse_error; + } + } + +scan_number_decimal2: + // we just parsed at least one number after a decimal point + switch (get()) + { + case '0': + case '1': + case '2': + case '3': + case '4': + case '5': + case '6': + case '7': + case '8': + case '9': + { + add(current); + goto scan_number_decimal2; + } + + case 'e': + case 'E': + { + add(current); + goto scan_number_exponent; + } + + default: + goto scan_number_done; + } + +scan_number_exponent: + // we just parsed an exponent + number_type = token_type::value_float; + switch (get()) + { + case '+': + case '-': + { + add(current); + goto scan_number_sign; + } + + case '0': + case '1': + case '2': + case '3': + case '4': + case '5': + case '6': + case '7': + case '8': + case '9': + { + add(current); + goto scan_number_any2; + } + + default: + { + error_message = + "invalid number; expected '+', '-', or digit after exponent"; + return token_type::parse_error; + } + } + +scan_number_sign: + // we just parsed an exponent sign + switch (get()) + { + case '0': + case '1': + case '2': + case '3': + case '4': + case '5': + case '6': + case '7': + case '8': + case '9': + { + add(current); + goto scan_number_any2; + } + + default: + { + error_message = "invalid number; expected digit after exponent sign"; + return token_type::parse_error; + } + } + +scan_number_any2: + // we just parsed a number after the exponent or exponent sign + switch (get()) + { + case '0': + case '1': + case '2': + case '3': + case '4': + case '5': + case '6': + case '7': + case '8': + case '9': + { + add(current); + goto scan_number_any2; + } + + default: + goto scan_number_done; + } + +scan_number_done: + // unget the character after the number (we only read it to know that + // we are done scanning a number) + unget(); + + char* endptr = nullptr; // NOLINT(cppcoreguidelines-pro-type-vararg,hicpp-vararg) + errno = 0; + + // try to parse integers first and fall back to floats + if (number_type == token_type::value_unsigned) + { + const auto x = std::strtoull(token_buffer.data(), &endptr, 10); + + // we checked the number format before + JSON_ASSERT(endptr == token_buffer.data() + token_buffer.size()); + + if (errno == 0) + { + value_unsigned = static_cast(x); + if (value_unsigned == x) + { + return token_type::value_unsigned; + } + } + } + else if (number_type == token_type::value_integer) + { + const auto x = std::strtoll(token_buffer.data(), &endptr, 10); + + // we checked the number format before + JSON_ASSERT(endptr == token_buffer.data() + token_buffer.size()); + + if (errno == 0) + { + value_integer = static_cast(x); + if (value_integer == x) + { + return token_type::value_integer; + } + } + } + + // this code is reached if we parse a floating-point number or if an + // integer conversion above failed + strtof(value_float, token_buffer.data(), &endptr); + + // we checked the number format before + JSON_ASSERT(endptr == token_buffer.data() + token_buffer.size()); + + return token_type::value_float; + } + + /*! + @param[in] literal_text the literal text to expect + @param[in] length the length of the passed literal text + @param[in] return_type the token type to return on success + */ + JSON_HEDLEY_NON_NULL(2) + token_type scan_literal(const char_type* literal_text, const std::size_t length, + token_type return_type) + { + JSON_ASSERT(char_traits::to_char_type(current) == literal_text[0]); + for (std::size_t i = 1; i < length; ++i) + { + if (JSON_HEDLEY_UNLIKELY(char_traits::to_char_type(get()) != literal_text[i])) + { + error_message = "invalid literal"; + return token_type::parse_error; + } + } + return return_type; + } + + ///////////////////// + // input management + ///////////////////// + + /// reset token_buffer; current character is beginning of token + void reset() noexcept + { + token_buffer.clear(); + token_string.clear(); + token_string.push_back(char_traits::to_char_type(current)); + } + + /* + @brief get next character from the input + + This function provides the interface to the used input adapter. It does + not throw in case the input reached EOF, but returns a + `char_traits::eof()` in that case. Stores the scanned characters + for use in error messages. + + @return character read from the input + */ + char_int_type get() + { + ++position.chars_read_total; + ++position.chars_read_current_line; + + if (next_unget) + { + // just reset the next_unget variable and work with current + next_unget = false; + } + else + { + current = ia.get_character(); + } + + if (JSON_HEDLEY_LIKELY(current != char_traits::eof())) + { + token_string.push_back(char_traits::to_char_type(current)); + } + + if (current == '\n') + { + ++position.lines_read; + position.chars_read_current_line = 0; + } + + return current; + } + + /*! + @brief unget current character (read it again on next get) + + We implement unget by setting variable next_unget to true. The input is not + changed - we just simulate ungetting by modifying chars_read_total, + chars_read_current_line, and token_string. The next call to get() will + behave as if the unget character is read again. + */ + void unget() + { + next_unget = true; + + --position.chars_read_total; + + // in case we "unget" a newline, we have to also decrement the lines_read + if (position.chars_read_current_line == 0) + { + if (position.lines_read > 0) + { + --position.lines_read; + } + } + else + { + --position.chars_read_current_line; + } + + if (JSON_HEDLEY_LIKELY(current != char_traits::eof())) + { + JSON_ASSERT(!token_string.empty()); + token_string.pop_back(); + } + } + + /// add a character to token_buffer + void add(char_int_type c) + { + token_buffer.push_back(static_cast(c)); + } + + public: + ///////////////////// + // value getters + ///////////////////// + + /// return integer value + constexpr number_integer_t get_number_integer() const noexcept + { + return value_integer; + } + + /// return unsigned integer value + constexpr number_unsigned_t get_number_unsigned() const noexcept + { + return value_unsigned; + } + + /// return floating-point value + constexpr number_float_t get_number_float() const noexcept + { + return value_float; + } + + /// return current string value (implicitly resets the token; useful only once) + string_t& get_string() + { + return token_buffer; + } + + ///////////////////// + // diagnostics + ///////////////////// + + /// return position of last read token + constexpr position_t get_position() const noexcept + { + return position; + } + + /// return the last read token (for errors only). Will never contain EOF + /// (an arbitrary value that is not a valid char value, often -1), because + /// 255 may legitimately occur. May contain NUL, which should be escaped. + std::string get_token_string() const + { + // escape control characters + std::string result; + for (const auto c : token_string) + { + if (static_cast(c) <= '\x1F') + { + // escape control characters + std::array cs{{}}; + static_cast((std::snprintf)(cs.data(), cs.size(), "", static_cast(c))); // NOLINT(cppcoreguidelines-pro-type-vararg,hicpp-vararg) + result += cs.data(); + } + else + { + // add character as is + result.push_back(static_cast(c)); + } + } + + return result; + } + + /// return syntax error message + JSON_HEDLEY_RETURNS_NON_NULL + constexpr const char* get_error_message() const noexcept + { + return error_message; + } + + ///////////////////// + // actual scanner + ///////////////////// + + /*! + @brief skip the UTF-8 byte order mark + @return true iff there is no BOM or the correct BOM has been skipped + */ + bool skip_bom() + { + if (get() == 0xEF) + { + // check if we completely parse the BOM + return get() == 0xBB && get() == 0xBF; + } + + // the first character is not the beginning of the BOM; unget it to + // process is later + unget(); + return true; + } + + void skip_whitespace() + { + do + { + get(); + } + while (current == ' ' || current == '\t' || current == '\n' || current == '\r'); + } + + token_type scan() + { + // initially, skip the BOM + if (position.chars_read_total == 0 && !skip_bom()) + { + error_message = "invalid BOM; must be 0xEF 0xBB 0xBF if given"; + return token_type::parse_error; + } + + // read next character and ignore whitespace + skip_whitespace(); + + // ignore comments + while (ignore_comments && current == '/') + { + if (!scan_comment()) + { + return token_type::parse_error; + } + + // skip following whitespace + skip_whitespace(); + } + + switch (current) + { + // structural characters + case '[': + return token_type::begin_array; + case ']': + return token_type::end_array; + case '{': + return token_type::begin_object; + case '}': + return token_type::end_object; + case ':': + return token_type::name_separator; + case ',': + return token_type::value_separator; + + // literals + case 't': + { + std::array true_literal = {{static_cast('t'), static_cast('r'), static_cast('u'), static_cast('e')}}; + return scan_literal(true_literal.data(), true_literal.size(), token_type::literal_true); + } + case 'f': + { + std::array false_literal = {{static_cast('f'), static_cast('a'), static_cast('l'), static_cast('s'), static_cast('e')}}; + return scan_literal(false_literal.data(), false_literal.size(), token_type::literal_false); + } + case 'n': + { + std::array null_literal = {{static_cast('n'), static_cast('u'), static_cast('l'), static_cast('l')}}; + return scan_literal(null_literal.data(), null_literal.size(), token_type::literal_null); + } + + // string + case '\"': + return scan_string(); + + // number + case '-': + case '0': + case '1': + case '2': + case '3': + case '4': + case '5': + case '6': + case '7': + case '8': + case '9': + return scan_number(); + + // end of input (the null byte is needed when parsing from + // string literals) + case '\0': + case char_traits::eof(): + return token_type::end_of_input; + + // error + default: + error_message = "invalid literal"; + return token_type::parse_error; + } + } + + private: + /// input adapter + InputAdapterType ia; + + /// whether comments should be ignored (true) or signaled as errors (false) + const bool ignore_comments = false; + + /// the current character + char_int_type current = char_traits::eof(); + + /// whether the next get() call should just return current + bool next_unget = false; + + /// the start position of the current token + position_t position {}; + + /// raw input token string (for error messages) + std::vector token_string {}; + + /// buffer for variable-length tokens (numbers, strings) + string_t token_buffer {}; + + /// a description of occurred lexer errors + const char* error_message = ""; + + // number values + number_integer_t value_integer = 0; + number_unsigned_t value_unsigned = 0; + number_float_t value_float = 0; + + /// the decimal point + const char_int_type decimal_point_char = '.'; +}; + +} // namespace detail +NLOHMANN_JSON_NAMESPACE_END diff --git a/include/nlohmann/detail/input/parser.hpp b/include/nlohmann/detail/input/parser.hpp new file mode 100644 index 00000000..bdf85ba2 --- /dev/null +++ b/include/nlohmann/detail/input/parser.hpp @@ -0,0 +1,519 @@ +// __ _____ _____ _____ +// __| | __| | | | JSON for Modern C++ +// | | |__ | | | | | | version 3.11.3 +// |_____|_____|_____|_|___| https://github.com/nlohmann/json +// +// SPDX-FileCopyrightText: 2013-2023 Niels Lohmann +// SPDX-License-Identifier: MIT + +#pragma once + +#include // isfinite +#include // uint8_t +#include // function +#include // string +#include // move +#include // vector + +#include +#include +#include +#include +#include +#include +#include +#include + +NLOHMANN_JSON_NAMESPACE_BEGIN +namespace detail +{ +//////////// +// parser // +//////////// + +enum class parse_event_t : std::uint8_t +{ + /// the parser read `{` and started to process a JSON object + object_start, + /// the parser read `}` and finished processing a JSON object + object_end, + /// the parser read `[` and started to process a JSON array + array_start, + /// the parser read `]` and finished processing a JSON array + array_end, + /// the parser read a key of a value in an object + key, + /// the parser finished reading a JSON value + value +}; + +template +using parser_callback_t = + std::function; + +/*! +@brief syntax analysis + +This class implements a recursive descent parser. +*/ +template +class parser +{ + using number_integer_t = typename BasicJsonType::number_integer_t; + using number_unsigned_t = typename BasicJsonType::number_unsigned_t; + using number_float_t = typename BasicJsonType::number_float_t; + using string_t = typename BasicJsonType::string_t; + using lexer_t = lexer; + using token_type = typename lexer_t::token_type; + + public: + /// a parser reading from an input adapter + explicit parser(InputAdapterType&& adapter, + const parser_callback_t cb = nullptr, + const bool allow_exceptions_ = true, + const bool skip_comments = false) + : callback(cb) + , m_lexer(std::move(adapter), skip_comments) + , allow_exceptions(allow_exceptions_) + { + // read first token + get_token(); + } + + /*! + @brief public parser interface + + @param[in] strict whether to expect the last token to be EOF + @param[in,out] result parsed JSON value + + @throw parse_error.101 in case of an unexpected token + @throw parse_error.102 if to_unicode fails or surrogate error + @throw parse_error.103 if to_unicode fails + */ + void parse(const bool strict, BasicJsonType& result) + { + if (callback) + { + json_sax_dom_callback_parser sdp(result, callback, allow_exceptions); + sax_parse_internal(&sdp); + + // in strict mode, input must be completely read + if (strict && (get_token() != token_type::end_of_input)) + { + sdp.parse_error(m_lexer.get_position(), + m_lexer.get_token_string(), + parse_error::create(101, m_lexer.get_position(), + exception_message(token_type::end_of_input, "value"), nullptr)); + } + + // in case of an error, return discarded value + if (sdp.is_errored()) + { + result = value_t::discarded; + return; + } + + // set top-level value to null if it was discarded by the callback + // function + if (result.is_discarded()) + { + result = nullptr; + } + } + else + { + json_sax_dom_parser sdp(result, allow_exceptions); + sax_parse_internal(&sdp); + + // in strict mode, input must be completely read + if (strict && (get_token() != token_type::end_of_input)) + { + sdp.parse_error(m_lexer.get_position(), + m_lexer.get_token_string(), + parse_error::create(101, m_lexer.get_position(), exception_message(token_type::end_of_input, "value"), nullptr)); + } + + // in case of an error, return discarded value + if (sdp.is_errored()) + { + result = value_t::discarded; + return; + } + } + + result.assert_invariant(); + } + + /*! + @brief public accept interface + + @param[in] strict whether to expect the last token to be EOF + @return whether the input is a proper JSON text + */ + bool accept(const bool strict = true) + { + json_sax_acceptor sax_acceptor; + return sax_parse(&sax_acceptor, strict); + } + + template + JSON_HEDLEY_NON_NULL(2) + bool sax_parse(SAX* sax, const bool strict = true) + { + (void)detail::is_sax_static_asserts {}; + const bool result = sax_parse_internal(sax); + + // strict mode: next byte must be EOF + if (result && strict && (get_token() != token_type::end_of_input)) + { + return sax->parse_error(m_lexer.get_position(), + m_lexer.get_token_string(), + parse_error::create(101, m_lexer.get_position(), exception_message(token_type::end_of_input, "value"), nullptr)); + } + + return result; + } + + private: + template + JSON_HEDLEY_NON_NULL(2) + bool sax_parse_internal(SAX* sax) + { + // stack to remember the hierarchy of structured values we are parsing + // true = array; false = object + std::vector states; + // value to avoid a goto (see comment where set to true) + bool skip_to_state_evaluation = false; + + while (true) + { + if (!skip_to_state_evaluation) + { + // invariant: get_token() was called before each iteration + switch (last_token) + { + case token_type::begin_object: + { + if (JSON_HEDLEY_UNLIKELY(!sax->start_object(static_cast(-1)))) + { + return false; + } + + // closing } -> we are done + if (get_token() == token_type::end_object) + { + if (JSON_HEDLEY_UNLIKELY(!sax->end_object())) + { + return false; + } + break; + } + + // parse key + if (JSON_HEDLEY_UNLIKELY(last_token != token_type::value_string)) + { + return sax->parse_error(m_lexer.get_position(), + m_lexer.get_token_string(), + parse_error::create(101, m_lexer.get_position(), exception_message(token_type::value_string, "object key"), nullptr)); + } + if (JSON_HEDLEY_UNLIKELY(!sax->key(m_lexer.get_string()))) + { + return false; + } + + // parse separator (:) + if (JSON_HEDLEY_UNLIKELY(get_token() != token_type::name_separator)) + { + return sax->parse_error(m_lexer.get_position(), + m_lexer.get_token_string(), + parse_error::create(101, m_lexer.get_position(), exception_message(token_type::name_separator, "object separator"), nullptr)); + } + + // remember we are now inside an object + states.push_back(false); + + // parse values + get_token(); + continue; + } + + case token_type::begin_array: + { + if (JSON_HEDLEY_UNLIKELY(!sax->start_array(static_cast(-1)))) + { + return false; + } + + // closing ] -> we are done + if (get_token() == token_type::end_array) + { + if (JSON_HEDLEY_UNLIKELY(!sax->end_array())) + { + return false; + } + break; + } + + // remember we are now inside an array + states.push_back(true); + + // parse values (no need to call get_token) + continue; + } + + case token_type::value_float: + { + const auto res = m_lexer.get_number_float(); + + if (JSON_HEDLEY_UNLIKELY(!std::isfinite(res))) + { + return sax->parse_error(m_lexer.get_position(), + m_lexer.get_token_string(), + out_of_range::create(406, concat("number overflow parsing '", m_lexer.get_token_string(), '\''), nullptr)); + } + + if (JSON_HEDLEY_UNLIKELY(!sax->number_float(res, m_lexer.get_string()))) + { + return false; + } + + break; + } + + case token_type::literal_false: + { + if (JSON_HEDLEY_UNLIKELY(!sax->boolean(false))) + { + return false; + } + break; + } + + case token_type::literal_null: + { + if (JSON_HEDLEY_UNLIKELY(!sax->null())) + { + return false; + } + break; + } + + case token_type::literal_true: + { + if (JSON_HEDLEY_UNLIKELY(!sax->boolean(true))) + { + return false; + } + break; + } + + case token_type::value_integer: + { + if (JSON_HEDLEY_UNLIKELY(!sax->number_integer(m_lexer.get_number_integer()))) + { + return false; + } + break; + } + + case token_type::value_string: + { + if (JSON_HEDLEY_UNLIKELY(!sax->string(m_lexer.get_string()))) + { + return false; + } + break; + } + + case token_type::value_unsigned: + { + if (JSON_HEDLEY_UNLIKELY(!sax->number_unsigned(m_lexer.get_number_unsigned()))) + { + return false; + } + break; + } + + case token_type::parse_error: + { + // using "uninitialized" to avoid "expected" message + return sax->parse_error(m_lexer.get_position(), + m_lexer.get_token_string(), + parse_error::create(101, m_lexer.get_position(), exception_message(token_type::uninitialized, "value"), nullptr)); + } + case token_type::end_of_input: + { + if (JSON_HEDLEY_UNLIKELY(m_lexer.get_position().chars_read_total == 1)) + { + return sax->parse_error(m_lexer.get_position(), + m_lexer.get_token_string(), + parse_error::create(101, m_lexer.get_position(), + "attempting to parse an empty input; check that your input string or stream contains the expected JSON", nullptr)); + } + + return sax->parse_error(m_lexer.get_position(), + m_lexer.get_token_string(), + parse_error::create(101, m_lexer.get_position(), exception_message(token_type::literal_or_value, "value"), nullptr)); + } + case token_type::uninitialized: + case token_type::end_array: + case token_type::end_object: + case token_type::name_separator: + case token_type::value_separator: + case token_type::literal_or_value: + default: // the last token was unexpected + { + return sax->parse_error(m_lexer.get_position(), + m_lexer.get_token_string(), + parse_error::create(101, m_lexer.get_position(), exception_message(token_type::literal_or_value, "value"), nullptr)); + } + } + } + else + { + skip_to_state_evaluation = false; + } + + // we reached this line after we successfully parsed a value + if (states.empty()) + { + // empty stack: we reached the end of the hierarchy: done + return true; + } + + if (states.back()) // array + { + // comma -> next value + if (get_token() == token_type::value_separator) + { + // parse a new value + get_token(); + continue; + } + + // closing ] + if (JSON_HEDLEY_LIKELY(last_token == token_type::end_array)) + { + if (JSON_HEDLEY_UNLIKELY(!sax->end_array())) + { + return false; + } + + // We are done with this array. Before we can parse a + // new value, we need to evaluate the new state first. + // By setting skip_to_state_evaluation to false, we + // are effectively jumping to the beginning of this if. + JSON_ASSERT(!states.empty()); + states.pop_back(); + skip_to_state_evaluation = true; + continue; + } + + return sax->parse_error(m_lexer.get_position(), + m_lexer.get_token_string(), + parse_error::create(101, m_lexer.get_position(), exception_message(token_type::end_array, "array"), nullptr)); + } + + // states.back() is false -> object + + // comma -> next value + if (get_token() == token_type::value_separator) + { + // parse key + if (JSON_HEDLEY_UNLIKELY(get_token() != token_type::value_string)) + { + return sax->parse_error(m_lexer.get_position(), + m_lexer.get_token_string(), + parse_error::create(101, m_lexer.get_position(), exception_message(token_type::value_string, "object key"), nullptr)); + } + + if (JSON_HEDLEY_UNLIKELY(!sax->key(m_lexer.get_string()))) + { + return false; + } + + // parse separator (:) + if (JSON_HEDLEY_UNLIKELY(get_token() != token_type::name_separator)) + { + return sax->parse_error(m_lexer.get_position(), + m_lexer.get_token_string(), + parse_error::create(101, m_lexer.get_position(), exception_message(token_type::name_separator, "object separator"), nullptr)); + } + + // parse values + get_token(); + continue; + } + + // closing } + if (JSON_HEDLEY_LIKELY(last_token == token_type::end_object)) + { + if (JSON_HEDLEY_UNLIKELY(!sax->end_object())) + { + return false; + } + + // We are done with this object. Before we can parse a + // new value, we need to evaluate the new state first. + // By setting skip_to_state_evaluation to false, we + // are effectively jumping to the beginning of this if. + JSON_ASSERT(!states.empty()); + states.pop_back(); + skip_to_state_evaluation = true; + continue; + } + + return sax->parse_error(m_lexer.get_position(), + m_lexer.get_token_string(), + parse_error::create(101, m_lexer.get_position(), exception_message(token_type::end_object, "object"), nullptr)); + } + } + + /// get next token from lexer + token_type get_token() + { + return last_token = m_lexer.scan(); + } + + std::string exception_message(const token_type expected, const std::string& context) + { + std::string error_msg = "syntax error "; + + if (!context.empty()) + { + error_msg += concat("while parsing ", context, ' '); + } + + error_msg += "- "; + + if (last_token == token_type::parse_error) + { + error_msg += concat(m_lexer.get_error_message(), "; last read: '", + m_lexer.get_token_string(), '\''); + } + else + { + error_msg += concat("unexpected ", lexer_t::token_type_name(last_token)); + } + + if (expected != token_type::uninitialized) + { + error_msg += concat("; expected ", lexer_t::token_type_name(expected)); + } + + return error_msg; + } + + private: + /// callback function + const parser_callback_t callback = nullptr; + /// the type of the last read token + token_type last_token = token_type::uninitialized; + /// the lexer + lexer_t m_lexer; + /// whether to throw exceptions in case of errors + const bool allow_exceptions = true; +}; + +} // namespace detail +NLOHMANN_JSON_NAMESPACE_END diff --git a/include/nlohmann/detail/input/position_t.hpp b/include/nlohmann/detail/input/position_t.hpp new file mode 100644 index 00000000..8ac7c78c --- /dev/null +++ b/include/nlohmann/detail/input/position_t.hpp @@ -0,0 +1,37 @@ +// __ _____ _____ _____ +// __| | __| | | | JSON for Modern C++ +// | | |__ | | | | | | version 3.11.3 +// |_____|_____|_____|_|___| https://github.com/nlohmann/json +// +// SPDX-FileCopyrightText: 2013-2023 Niels Lohmann +// SPDX-License-Identifier: MIT + +#pragma once + +#include // size_t + +#include + +NLOHMANN_JSON_NAMESPACE_BEGIN +namespace detail +{ + +/// struct to capture the start position of the current token +struct position_t +{ + /// the total number of characters read + std::size_t chars_read_total = 0; + /// the number of characters read in the current line + std::size_t chars_read_current_line = 0; + /// the number of lines read + std::size_t lines_read = 0; + + /// conversion to size_t to preserve SAX interface + constexpr operator size_t() const + { + return chars_read_total; + } +}; + +} // namespace detail +NLOHMANN_JSON_NAMESPACE_END diff --git a/include/nlohmann/detail/iterators/internal_iterator.hpp b/include/nlohmann/detail/iterators/internal_iterator.hpp new file mode 100644 index 00000000..2991ee69 --- /dev/null +++ b/include/nlohmann/detail/iterators/internal_iterator.hpp @@ -0,0 +1,35 @@ +// __ _____ _____ _____ +// __| | __| | | | JSON for Modern C++ +// | | |__ | | | | | | version 3.11.3 +// |_____|_____|_____|_|___| https://github.com/nlohmann/json +// +// SPDX-FileCopyrightText: 2013-2023 Niels Lohmann +// SPDX-License-Identifier: MIT + +#pragma once + +#include +#include + +NLOHMANN_JSON_NAMESPACE_BEGIN +namespace detail +{ + +/*! +@brief an iterator value + +@note This structure could easily be a union, but MSVC currently does not allow +unions members with complex constructors, see https://github.com/nlohmann/json/pull/105. +*/ +template struct internal_iterator +{ + /// iterator for JSON objects + typename BasicJsonType::object_t::iterator object_iterator {}; + /// iterator for JSON arrays + typename BasicJsonType::array_t::iterator array_iterator {}; + /// generic iterator for all other types + primitive_iterator_t primitive_iterator {}; +}; + +} // namespace detail +NLOHMANN_JSON_NAMESPACE_END diff --git a/include/nlohmann/detail/iterators/iter_impl.hpp b/include/nlohmann/detail/iterators/iter_impl.hpp new file mode 100644 index 00000000..44470913 --- /dev/null +++ b/include/nlohmann/detail/iterators/iter_impl.hpp @@ -0,0 +1,751 @@ +// __ _____ _____ _____ +// __| | __| | | | JSON for Modern C++ +// | | |__ | | | | | | version 3.11.3 +// |_____|_____|_____|_|___| https://github.com/nlohmann/json +// +// SPDX-FileCopyrightText: 2013-2023 Niels Lohmann +// SPDX-License-Identifier: MIT + +#pragma once + +#include // iterator, random_access_iterator_tag, bidirectional_iterator_tag, advance, next +#include // conditional, is_const, remove_const + +#include +#include +#include +#include +#include +#include +#include + +NLOHMANN_JSON_NAMESPACE_BEGIN +namespace detail +{ + +// forward declare, to be able to friend it later on +template class iteration_proxy; +template class iteration_proxy_value; + +/*! +@brief a template for a bidirectional iterator for the @ref basic_json class +This class implements a both iterators (iterator and const_iterator) for the +@ref basic_json class. +@note An iterator is called *initialized* when a pointer to a JSON value has + been set (e.g., by a constructor or a copy assignment). If the iterator is + default-constructed, it is *uninitialized* and most methods are undefined. + **The library uses assertions to detect calls on uninitialized iterators.** +@requirement The class satisfies the following concept requirements: +- +[BidirectionalIterator](https://en.cppreference.com/w/cpp/named_req/BidirectionalIterator): + The iterator that can be moved can be moved in both directions (i.e. + incremented and decremented). +@since version 1.0.0, simplified in version 2.0.9, change to bidirectional + iterators in version 3.0.0 (see https://github.com/nlohmann/json/issues/593) +*/ +template +class iter_impl // NOLINT(cppcoreguidelines-special-member-functions,hicpp-special-member-functions) +{ + /// the iterator with BasicJsonType of different const-ness + using other_iter_impl = iter_impl::value, typename std::remove_const::type, const BasicJsonType>::type>; + /// allow basic_json to access private members + friend other_iter_impl; + friend BasicJsonType; + friend iteration_proxy; + friend iteration_proxy_value; + + using object_t = typename BasicJsonType::object_t; + using array_t = typename BasicJsonType::array_t; + // make sure BasicJsonType is basic_json or const basic_json + static_assert(is_basic_json::type>::value, + "iter_impl only accepts (const) basic_json"); + // superficial check for the LegacyBidirectionalIterator named requirement + static_assert(std::is_base_of::value + && std::is_base_of::iterator_category>::value, + "basic_json iterator assumes array and object type iterators satisfy the LegacyBidirectionalIterator named requirement."); + + public: + /// The std::iterator class template (used as a base class to provide typedefs) is deprecated in C++17. + /// The C++ Standard has never required user-defined iterators to derive from std::iterator. + /// A user-defined iterator should provide publicly accessible typedefs named + /// iterator_category, value_type, difference_type, pointer, and reference. + /// Note that value_type is required to be non-const, even for constant iterators. + using iterator_category = std::bidirectional_iterator_tag; + + /// the type of the values when the iterator is dereferenced + using value_type = typename BasicJsonType::value_type; + /// a type to represent differences between iterators + using difference_type = typename BasicJsonType::difference_type; + /// defines a pointer to the type iterated over (value_type) + using pointer = typename std::conditional::value, + typename BasicJsonType::const_pointer, + typename BasicJsonType::pointer>::type; + /// defines a reference to the type iterated over (value_type) + using reference = + typename std::conditional::value, + typename BasicJsonType::const_reference, + typename BasicJsonType::reference>::type; + + iter_impl() = default; + ~iter_impl() = default; + iter_impl(iter_impl&&) noexcept = default; + iter_impl& operator=(iter_impl&&) noexcept = default; + + /*! + @brief constructor for a given JSON instance + @param[in] object pointer to a JSON object for this iterator + @pre object != nullptr + @post The iterator is initialized; i.e. `m_object != nullptr`. + */ + explicit iter_impl(pointer object) noexcept : m_object(object) + { + JSON_ASSERT(m_object != nullptr); + + switch (m_object->m_data.m_type) + { + case value_t::object: + { + m_it.object_iterator = typename object_t::iterator(); + break; + } + + case value_t::array: + { + m_it.array_iterator = typename array_t::iterator(); + break; + } + + case value_t::null: + case value_t::string: + case value_t::boolean: + case value_t::number_integer: + case value_t::number_unsigned: + case value_t::number_float: + case value_t::binary: + case value_t::discarded: + default: + { + m_it.primitive_iterator = primitive_iterator_t(); + break; + } + } + } + + /*! + @note The conventional copy constructor and copy assignment are implicitly + defined. Combined with the following converting constructor and + assignment, they support: (1) copy from iterator to iterator, (2) + copy from const iterator to const iterator, and (3) conversion from + iterator to const iterator. However conversion from const iterator + to iterator is not defined. + */ + + /*! + @brief const copy constructor + @param[in] other const iterator to copy from + @note This copy constructor had to be defined explicitly to circumvent a bug + occurring on msvc v19.0 compiler (VS 2015) debug build. For more + information refer to: https://github.com/nlohmann/json/issues/1608 + */ + iter_impl(const iter_impl& other) noexcept + : m_object(other.m_object), m_it(other.m_it) + {} + + /*! + @brief converting assignment + @param[in] other const iterator to copy from + @return const/non-const iterator + @note It is not checked whether @a other is initialized. + */ + iter_impl& operator=(const iter_impl& other) noexcept + { + if (&other != this) + { + m_object = other.m_object; + m_it = other.m_it; + } + return *this; + } + + /*! + @brief converting constructor + @param[in] other non-const iterator to copy from + @note It is not checked whether @a other is initialized. + */ + iter_impl(const iter_impl::type>& other) noexcept + : m_object(other.m_object), m_it(other.m_it) + {} + + /*! + @brief converting assignment + @param[in] other non-const iterator to copy from + @return const/non-const iterator + @note It is not checked whether @a other is initialized. + */ + iter_impl& operator=(const iter_impl::type>& other) noexcept // NOLINT(cert-oop54-cpp) + { + m_object = other.m_object; + m_it = other.m_it; + return *this; + } + + JSON_PRIVATE_UNLESS_TESTED: + /*! + @brief set the iterator to the first value + @pre The iterator is initialized; i.e. `m_object != nullptr`. + */ + void set_begin() noexcept + { + JSON_ASSERT(m_object != nullptr); + + switch (m_object->m_data.m_type) + { + case value_t::object: + { + m_it.object_iterator = m_object->m_data.m_value.object->begin(); + break; + } + + case value_t::array: + { + m_it.array_iterator = m_object->m_data.m_value.array->begin(); + break; + } + + case value_t::null: + { + // set to end so begin()==end() is true: null is empty + m_it.primitive_iterator.set_end(); + break; + } + + case value_t::string: + case value_t::boolean: + case value_t::number_integer: + case value_t::number_unsigned: + case value_t::number_float: + case value_t::binary: + case value_t::discarded: + default: + { + m_it.primitive_iterator.set_begin(); + break; + } + } + } + + /*! + @brief set the iterator past the last value + @pre The iterator is initialized; i.e. `m_object != nullptr`. + */ + void set_end() noexcept + { + JSON_ASSERT(m_object != nullptr); + + switch (m_object->m_data.m_type) + { + case value_t::object: + { + m_it.object_iterator = m_object->m_data.m_value.object->end(); + break; + } + + case value_t::array: + { + m_it.array_iterator = m_object->m_data.m_value.array->end(); + break; + } + + case value_t::null: + case value_t::string: + case value_t::boolean: + case value_t::number_integer: + case value_t::number_unsigned: + case value_t::number_float: + case value_t::binary: + case value_t::discarded: + default: + { + m_it.primitive_iterator.set_end(); + break; + } + } + } + + public: + /*! + @brief return a reference to the value pointed to by the iterator + @pre The iterator is initialized; i.e. `m_object != nullptr`. + */ + reference operator*() const + { + JSON_ASSERT(m_object != nullptr); + + switch (m_object->m_data.m_type) + { + case value_t::object: + { + JSON_ASSERT(m_it.object_iterator != m_object->m_data.m_value.object->end()); + return m_it.object_iterator->second; + } + + case value_t::array: + { + JSON_ASSERT(m_it.array_iterator != m_object->m_data.m_value.array->end()); + return *m_it.array_iterator; + } + + case value_t::null: + JSON_THROW(invalid_iterator::create(214, "cannot get value", m_object)); + + case value_t::string: + case value_t::boolean: + case value_t::number_integer: + case value_t::number_unsigned: + case value_t::number_float: + case value_t::binary: + case value_t::discarded: + default: + { + if (JSON_HEDLEY_LIKELY(m_it.primitive_iterator.is_begin())) + { + return *m_object; + } + + JSON_THROW(invalid_iterator::create(214, "cannot get value", m_object)); + } + } + } + + /*! + @brief dereference the iterator + @pre The iterator is initialized; i.e. `m_object != nullptr`. + */ + pointer operator->() const + { + JSON_ASSERT(m_object != nullptr); + + switch (m_object->m_data.m_type) + { + case value_t::object: + { + JSON_ASSERT(m_it.object_iterator != m_object->m_data.m_value.object->end()); + return &(m_it.object_iterator->second); + } + + case value_t::array: + { + JSON_ASSERT(m_it.array_iterator != m_object->m_data.m_value.array->end()); + return &*m_it.array_iterator; + } + + case value_t::null: + case value_t::string: + case value_t::boolean: + case value_t::number_integer: + case value_t::number_unsigned: + case value_t::number_float: + case value_t::binary: + case value_t::discarded: + default: + { + if (JSON_HEDLEY_LIKELY(m_it.primitive_iterator.is_begin())) + { + return m_object; + } + + JSON_THROW(invalid_iterator::create(214, "cannot get value", m_object)); + } + } + } + + /*! + @brief post-increment (it++) + @pre The iterator is initialized; i.e. `m_object != nullptr`. + */ + iter_impl operator++(int)& // NOLINT(cert-dcl21-cpp) + { + auto result = *this; + ++(*this); + return result; + } + + /*! + @brief pre-increment (++it) + @pre The iterator is initialized; i.e. `m_object != nullptr`. + */ + iter_impl& operator++() + { + JSON_ASSERT(m_object != nullptr); + + switch (m_object->m_data.m_type) + { + case value_t::object: + { + std::advance(m_it.object_iterator, 1); + break; + } + + case value_t::array: + { + std::advance(m_it.array_iterator, 1); + break; + } + + case value_t::null: + case value_t::string: + case value_t::boolean: + case value_t::number_integer: + case value_t::number_unsigned: + case value_t::number_float: + case value_t::binary: + case value_t::discarded: + default: + { + ++m_it.primitive_iterator; + break; + } + } + + return *this; + } + + /*! + @brief post-decrement (it--) + @pre The iterator is initialized; i.e. `m_object != nullptr`. + */ + iter_impl operator--(int)& // NOLINT(cert-dcl21-cpp) + { + auto result = *this; + --(*this); + return result; + } + + /*! + @brief pre-decrement (--it) + @pre The iterator is initialized; i.e. `m_object != nullptr`. + */ + iter_impl& operator--() + { + JSON_ASSERT(m_object != nullptr); + + switch (m_object->m_data.m_type) + { + case value_t::object: + { + std::advance(m_it.object_iterator, -1); + break; + } + + case value_t::array: + { + std::advance(m_it.array_iterator, -1); + break; + } + + case value_t::null: + case value_t::string: + case value_t::boolean: + case value_t::number_integer: + case value_t::number_unsigned: + case value_t::number_float: + case value_t::binary: + case value_t::discarded: + default: + { + --m_it.primitive_iterator; + break; + } + } + + return *this; + } + + /*! + @brief comparison: equal + @pre The iterator is initialized; i.e. `m_object != nullptr`. + */ + template < typename IterImpl, detail::enable_if_t < (std::is_same::value || std::is_same::value), std::nullptr_t > = nullptr > + bool operator==(const IterImpl& other) const + { + // if objects are not the same, the comparison is undefined + if (JSON_HEDLEY_UNLIKELY(m_object != other.m_object)) + { + JSON_THROW(invalid_iterator::create(212, "cannot compare iterators of different containers", m_object)); + } + + JSON_ASSERT(m_object != nullptr); + + switch (m_object->m_data.m_type) + { + case value_t::object: + return (m_it.object_iterator == other.m_it.object_iterator); + + case value_t::array: + return (m_it.array_iterator == other.m_it.array_iterator); + + case value_t::null: + case value_t::string: + case value_t::boolean: + case value_t::number_integer: + case value_t::number_unsigned: + case value_t::number_float: + case value_t::binary: + case value_t::discarded: + default: + return (m_it.primitive_iterator == other.m_it.primitive_iterator); + } + } + + /*! + @brief comparison: not equal + @pre The iterator is initialized; i.e. `m_object != nullptr`. + */ + template < typename IterImpl, detail::enable_if_t < (std::is_same::value || std::is_same::value), std::nullptr_t > = nullptr > + bool operator!=(const IterImpl& other) const + { + return !operator==(other); + } + + /*! + @brief comparison: smaller + @pre The iterator is initialized; i.e. `m_object != nullptr`. + */ + bool operator<(const iter_impl& other) const + { + // if objects are not the same, the comparison is undefined + if (JSON_HEDLEY_UNLIKELY(m_object != other.m_object)) + { + JSON_THROW(invalid_iterator::create(212, "cannot compare iterators of different containers", m_object)); + } + + JSON_ASSERT(m_object != nullptr); + + switch (m_object->m_data.m_type) + { + case value_t::object: + JSON_THROW(invalid_iterator::create(213, "cannot compare order of object iterators", m_object)); + + case value_t::array: + return (m_it.array_iterator < other.m_it.array_iterator); + + case value_t::null: + case value_t::string: + case value_t::boolean: + case value_t::number_integer: + case value_t::number_unsigned: + case value_t::number_float: + case value_t::binary: + case value_t::discarded: + default: + return (m_it.primitive_iterator < other.m_it.primitive_iterator); + } + } + + /*! + @brief comparison: less than or equal + @pre The iterator is initialized; i.e. `m_object != nullptr`. + */ + bool operator<=(const iter_impl& other) const + { + return !other.operator < (*this); + } + + /*! + @brief comparison: greater than + @pre The iterator is initialized; i.e. `m_object != nullptr`. + */ + bool operator>(const iter_impl& other) const + { + return !operator<=(other); + } + + /*! + @brief comparison: greater than or equal + @pre The iterator is initialized; i.e. `m_object != nullptr`. + */ + bool operator>=(const iter_impl& other) const + { + return !operator<(other); + } + + /*! + @brief add to iterator + @pre The iterator is initialized; i.e. `m_object != nullptr`. + */ + iter_impl& operator+=(difference_type i) + { + JSON_ASSERT(m_object != nullptr); + + switch (m_object->m_data.m_type) + { + case value_t::object: + JSON_THROW(invalid_iterator::create(209, "cannot use offsets with object iterators", m_object)); + + case value_t::array: + { + std::advance(m_it.array_iterator, i); + break; + } + + case value_t::null: + case value_t::string: + case value_t::boolean: + case value_t::number_integer: + case value_t::number_unsigned: + case value_t::number_float: + case value_t::binary: + case value_t::discarded: + default: + { + m_it.primitive_iterator += i; + break; + } + } + + return *this; + } + + /*! + @brief subtract from iterator + @pre The iterator is initialized; i.e. `m_object != nullptr`. + */ + iter_impl& operator-=(difference_type i) + { + return operator+=(-i); + } + + /*! + @brief add to iterator + @pre The iterator is initialized; i.e. `m_object != nullptr`. + */ + iter_impl operator+(difference_type i) const + { + auto result = *this; + result += i; + return result; + } + + /*! + @brief addition of distance and iterator + @pre The iterator is initialized; i.e. `m_object != nullptr`. + */ + friend iter_impl operator+(difference_type i, const iter_impl& it) + { + auto result = it; + result += i; + return result; + } + + /*! + @brief subtract from iterator + @pre The iterator is initialized; i.e. `m_object != nullptr`. + */ + iter_impl operator-(difference_type i) const + { + auto result = *this; + result -= i; + return result; + } + + /*! + @brief return difference + @pre The iterator is initialized; i.e. `m_object != nullptr`. + */ + difference_type operator-(const iter_impl& other) const + { + JSON_ASSERT(m_object != nullptr); + + switch (m_object->m_data.m_type) + { + case value_t::object: + JSON_THROW(invalid_iterator::create(209, "cannot use offsets with object iterators", m_object)); + + case value_t::array: + return m_it.array_iterator - other.m_it.array_iterator; + + case value_t::null: + case value_t::string: + case value_t::boolean: + case value_t::number_integer: + case value_t::number_unsigned: + case value_t::number_float: + case value_t::binary: + case value_t::discarded: + default: + return m_it.primitive_iterator - other.m_it.primitive_iterator; + } + } + + /*! + @brief access to successor + @pre The iterator is initialized; i.e. `m_object != nullptr`. + */ + reference operator[](difference_type n) const + { + JSON_ASSERT(m_object != nullptr); + + switch (m_object->m_data.m_type) + { + case value_t::object: + JSON_THROW(invalid_iterator::create(208, "cannot use operator[] for object iterators", m_object)); + + case value_t::array: + return *std::next(m_it.array_iterator, n); + + case value_t::null: + JSON_THROW(invalid_iterator::create(214, "cannot get value", m_object)); + + case value_t::string: + case value_t::boolean: + case value_t::number_integer: + case value_t::number_unsigned: + case value_t::number_float: + case value_t::binary: + case value_t::discarded: + default: + { + if (JSON_HEDLEY_LIKELY(m_it.primitive_iterator.get_value() == -n)) + { + return *m_object; + } + + JSON_THROW(invalid_iterator::create(214, "cannot get value", m_object)); + } + } + } + + /*! + @brief return the key of an object iterator + @pre The iterator is initialized; i.e. `m_object != nullptr`. + */ + const typename object_t::key_type& key() const + { + JSON_ASSERT(m_object != nullptr); + + if (JSON_HEDLEY_LIKELY(m_object->is_object())) + { + return m_it.object_iterator->first; + } + + JSON_THROW(invalid_iterator::create(207, "cannot use key() for non-object iterators", m_object)); + } + + /*! + @brief return the value of an iterator + @pre The iterator is initialized; i.e. `m_object != nullptr`. + */ + reference value() const + { + return operator*(); + } + + JSON_PRIVATE_UNLESS_TESTED: + /// associated JSON instance + pointer m_object = nullptr; + /// the actual iterator of the associated instance + internal_iterator::type> m_it {}; +}; + +} // namespace detail +NLOHMANN_JSON_NAMESPACE_END diff --git a/include/nlohmann/detail/iterators/iteration_proxy.hpp b/include/nlohmann/detail/iterators/iteration_proxy.hpp new file mode 100644 index 00000000..76293de2 --- /dev/null +++ b/include/nlohmann/detail/iterators/iteration_proxy.hpp @@ -0,0 +1,242 @@ +// __ _____ _____ _____ +// __| | __| | | | JSON for Modern C++ +// | | |__ | | | | | | version 3.11.3 +// |_____|_____|_____|_|___| https://github.com/nlohmann/json +// +// SPDX-FileCopyrightText: 2013-2023 Niels Lohmann +// SPDX-License-Identifier: MIT + +#pragma once + +#include // size_t +#include // input_iterator_tag +#include // string, to_string +#include // tuple_size, get, tuple_element +#include // move + +#if JSON_HAS_RANGES + #include // enable_borrowed_range +#endif + +#include +#include +#include + +NLOHMANN_JSON_NAMESPACE_BEGIN +namespace detail +{ + +template +void int_to_string( string_type& target, std::size_t value ) +{ + // For ADL + using std::to_string; + target = to_string(value); +} +template class iteration_proxy_value +{ + public: + using difference_type = std::ptrdiff_t; + using value_type = iteration_proxy_value; + using pointer = value_type *; + using reference = value_type &; + using iterator_category = std::input_iterator_tag; + using string_type = typename std::remove_cv< typename std::remove_reference().key() ) >::type >::type; + + private: + /// the iterator + IteratorType anchor{}; + /// an index for arrays (used to create key names) + std::size_t array_index = 0; + /// last stringified array index + mutable std::size_t array_index_last = 0; + /// a string representation of the array index + mutable string_type array_index_str = "0"; + /// an empty string (to return a reference for primitive values) + string_type empty_str{}; + + public: + explicit iteration_proxy_value() = default; + explicit iteration_proxy_value(IteratorType it, std::size_t array_index_ = 0) + noexcept(std::is_nothrow_move_constructible::value + && std::is_nothrow_default_constructible::value) + : anchor(std::move(it)) + , array_index(array_index_) + {} + + iteration_proxy_value(iteration_proxy_value const&) = default; + iteration_proxy_value& operator=(iteration_proxy_value const&) = default; + // older GCCs are a bit fussy and require explicit noexcept specifiers on defaulted functions + iteration_proxy_value(iteration_proxy_value&&) + noexcept(std::is_nothrow_move_constructible::value + && std::is_nothrow_move_constructible::value) = default; // NOLINT(hicpp-noexcept-move,performance-noexcept-move-constructor,cppcoreguidelines-noexcept-move-operations) + iteration_proxy_value& operator=(iteration_proxy_value&&) + noexcept(std::is_nothrow_move_assignable::value + && std::is_nothrow_move_assignable::value) = default; // NOLINT(hicpp-noexcept-move,performance-noexcept-move-constructor,cppcoreguidelines-noexcept-move-operations) + ~iteration_proxy_value() = default; + + /// dereference operator (needed for range-based for) + const iteration_proxy_value& operator*() const + { + return *this; + } + + /// increment operator (needed for range-based for) + iteration_proxy_value& operator++() + { + ++anchor; + ++array_index; + + return *this; + } + + iteration_proxy_value operator++(int)& // NOLINT(cert-dcl21-cpp) + { + auto tmp = iteration_proxy_value(anchor, array_index); + ++anchor; + ++array_index; + return tmp; + } + + /// equality operator (needed for InputIterator) + bool operator==(const iteration_proxy_value& o) const + { + return anchor == o.anchor; + } + + /// inequality operator (needed for range-based for) + bool operator!=(const iteration_proxy_value& o) const + { + return anchor != o.anchor; + } + + /// return key of the iterator + const string_type& key() const + { + JSON_ASSERT(anchor.m_object != nullptr); + + switch (anchor.m_object->type()) + { + // use integer array index as key + case value_t::array: + { + if (array_index != array_index_last) + { + int_to_string( array_index_str, array_index ); + array_index_last = array_index; + } + return array_index_str; + } + + // use key from the object + case value_t::object: + return anchor.key(); + + // use an empty key for all primitive types + case value_t::null: + case value_t::string: + case value_t::boolean: + case value_t::number_integer: + case value_t::number_unsigned: + case value_t::number_float: + case value_t::binary: + case value_t::discarded: + default: + return empty_str; + } + } + + /// return value of the iterator + typename IteratorType::reference value() const + { + return anchor.value(); + } +}; + +/// proxy class for the items() function +template class iteration_proxy +{ + private: + /// the container to iterate + typename IteratorType::pointer container = nullptr; + + public: + explicit iteration_proxy() = default; + + /// construct iteration proxy from a container + explicit iteration_proxy(typename IteratorType::reference cont) noexcept + : container(&cont) {} + + iteration_proxy(iteration_proxy const&) = default; + iteration_proxy& operator=(iteration_proxy const&) = default; + iteration_proxy(iteration_proxy&&) noexcept = default; + iteration_proxy& operator=(iteration_proxy&&) noexcept = default; + ~iteration_proxy() = default; + + /// return iterator begin (needed for range-based for) + iteration_proxy_value begin() const noexcept + { + return iteration_proxy_value(container->begin()); + } + + /// return iterator end (needed for range-based for) + iteration_proxy_value end() const noexcept + { + return iteration_proxy_value(container->end()); + } +}; + +// Structured Bindings Support +// For further reference see https://blog.tartanllama.xyz/structured-bindings/ +// And see https://github.com/nlohmann/json/pull/1391 +template = 0> +auto get(const nlohmann::detail::iteration_proxy_value& i) -> decltype(i.key()) +{ + return i.key(); +} +// Structured Bindings Support +// For further reference see https://blog.tartanllama.xyz/structured-bindings/ +// And see https://github.com/nlohmann/json/pull/1391 +template = 0> +auto get(const nlohmann::detail::iteration_proxy_value& i) -> decltype(i.value()) +{ + return i.value(); +} + +} // namespace detail +NLOHMANN_JSON_NAMESPACE_END + +// The Addition to the STD Namespace is required to add +// Structured Bindings Support to the iteration_proxy_value class +// For further reference see https://blog.tartanllama.xyz/structured-bindings/ +// And see https://github.com/nlohmann/json/pull/1391 +namespace std +{ + +#if defined(__clang__) + // Fix: https://github.com/nlohmann/json/issues/1401 + #pragma clang diagnostic push + #pragma clang diagnostic ignored "-Wmismatched-tags" +#endif +template +class tuple_size<::nlohmann::detail::iteration_proxy_value> // NOLINT(cert-dcl58-cpp) + : public std::integral_constant {}; + +template +class tuple_element> // NOLINT(cert-dcl58-cpp) +{ + public: + using type = decltype( + get(std::declval < + ::nlohmann::detail::iteration_proxy_value> ())); +}; +#if defined(__clang__) + #pragma clang diagnostic pop +#endif + +} // namespace std + +#if JSON_HAS_RANGES + template + inline constexpr bool ::std::ranges::enable_borrowed_range<::nlohmann::detail::iteration_proxy> = true; +#endif diff --git a/include/nlohmann/detail/iterators/iterator_traits.hpp b/include/nlohmann/detail/iterators/iterator_traits.hpp new file mode 100644 index 00000000..84cc27a8 --- /dev/null +++ b/include/nlohmann/detail/iterators/iterator_traits.hpp @@ -0,0 +1,61 @@ +// __ _____ _____ _____ +// __| | __| | | | JSON for Modern C++ +// | | |__ | | | | | | version 3.11.3 +// |_____|_____|_____|_|___| https://github.com/nlohmann/json +// +// SPDX-FileCopyrightText: 2013-2023 Niels Lohmann +// SPDX-License-Identifier: MIT + +#pragma once + +#include // random_access_iterator_tag + +#include +#include +#include + +NLOHMANN_JSON_NAMESPACE_BEGIN +namespace detail +{ + +template +struct iterator_types {}; + +template +struct iterator_types < + It, + void_t> +{ + using difference_type = typename It::difference_type; + using value_type = typename It::value_type; + using pointer = typename It::pointer; + using reference = typename It::reference; + using iterator_category = typename It::iterator_category; +}; + +// This is required as some compilers implement std::iterator_traits in a way that +// doesn't work with SFINAE. See https://github.com/nlohmann/json/issues/1341. +template +struct iterator_traits +{ +}; + +template +struct iterator_traits < T, enable_if_t < !std::is_pointer::value >> + : iterator_types +{ +}; + +template +struct iterator_traits::value>> +{ + using iterator_category = std::random_access_iterator_tag; + using value_type = T; + using difference_type = ptrdiff_t; + using pointer = T*; + using reference = T&; +}; + +} // namespace detail +NLOHMANN_JSON_NAMESPACE_END diff --git a/include/nlohmann/detail/iterators/json_reverse_iterator.hpp b/include/nlohmann/detail/iterators/json_reverse_iterator.hpp new file mode 100644 index 00000000..006d5499 --- /dev/null +++ b/include/nlohmann/detail/iterators/json_reverse_iterator.hpp @@ -0,0 +1,130 @@ +// __ _____ _____ _____ +// __| | __| | | | JSON for Modern C++ +// | | |__ | | | | | | version 3.11.3 +// |_____|_____|_____|_|___| https://github.com/nlohmann/json +// +// SPDX-FileCopyrightText: 2013-2023 Niels Lohmann +// SPDX-License-Identifier: MIT + +#pragma once + +#include // ptrdiff_t +#include // reverse_iterator +#include // declval + +#include + +NLOHMANN_JSON_NAMESPACE_BEGIN +namespace detail +{ + +////////////////////// +// reverse_iterator // +////////////////////// + +/*! +@brief a template for a reverse iterator class + +@tparam Base the base iterator type to reverse. Valid types are @ref +iterator (to create @ref reverse_iterator) and @ref const_iterator (to +create @ref const_reverse_iterator). + +@requirement The class satisfies the following concept requirements: +- +[BidirectionalIterator](https://en.cppreference.com/w/cpp/named_req/BidirectionalIterator): + The iterator that can be moved can be moved in both directions (i.e. + incremented and decremented). +- [OutputIterator](https://en.cppreference.com/w/cpp/named_req/OutputIterator): + It is possible to write to the pointed-to element (only if @a Base is + @ref iterator). + +@since version 1.0.0 +*/ +template +class json_reverse_iterator : public std::reverse_iterator +{ + public: + using difference_type = std::ptrdiff_t; + /// shortcut to the reverse iterator adapter + using base_iterator = std::reverse_iterator; + /// the reference type for the pointed-to element + using reference = typename Base::reference; + + /// create reverse iterator from iterator + explicit json_reverse_iterator(const typename base_iterator::iterator_type& it) noexcept + : base_iterator(it) {} + + /// create reverse iterator from base class + explicit json_reverse_iterator(const base_iterator& it) noexcept : base_iterator(it) {} + + /// post-increment (it++) + json_reverse_iterator operator++(int)& // NOLINT(cert-dcl21-cpp) + { + return static_cast(base_iterator::operator++(1)); + } + + /// pre-increment (++it) + json_reverse_iterator& operator++() + { + return static_cast(base_iterator::operator++()); + } + + /// post-decrement (it--) + json_reverse_iterator operator--(int)& // NOLINT(cert-dcl21-cpp) + { + return static_cast(base_iterator::operator--(1)); + } + + /// pre-decrement (--it) + json_reverse_iterator& operator--() + { + return static_cast(base_iterator::operator--()); + } + + /// add to iterator + json_reverse_iterator& operator+=(difference_type i) + { + return static_cast(base_iterator::operator+=(i)); + } + + /// add to iterator + json_reverse_iterator operator+(difference_type i) const + { + return static_cast(base_iterator::operator+(i)); + } + + /// subtract from iterator + json_reverse_iterator operator-(difference_type i) const + { + return static_cast(base_iterator::operator-(i)); + } + + /// return difference + difference_type operator-(const json_reverse_iterator& other) const + { + return base_iterator(*this) - base_iterator(other); + } + + /// access to successor + reference operator[](difference_type n) const + { + return *(this->operator+(n)); + } + + /// return the key of an object iterator + auto key() const -> decltype(std::declval().key()) + { + auto it = --this->base(); + return it.key(); + } + + /// return the value of an iterator + reference value() const + { + auto it = --this->base(); + return it.operator * (); + } +}; + +} // namespace detail +NLOHMANN_JSON_NAMESPACE_END diff --git a/include/nlohmann/detail/iterators/primitive_iterator.hpp b/include/nlohmann/detail/iterators/primitive_iterator.hpp new file mode 100644 index 00000000..0b6e8499 --- /dev/null +++ b/include/nlohmann/detail/iterators/primitive_iterator.hpp @@ -0,0 +1,132 @@ +// __ _____ _____ _____ +// __| | __| | | | JSON for Modern C++ +// | | |__ | | | | | | version 3.11.3 +// |_____|_____|_____|_|___| https://github.com/nlohmann/json +// +// SPDX-FileCopyrightText: 2013-2023 Niels Lohmann +// SPDX-License-Identifier: MIT + +#pragma once + +#include // ptrdiff_t +#include // numeric_limits + +#include + +NLOHMANN_JSON_NAMESPACE_BEGIN +namespace detail +{ + +/* +@brief an iterator for primitive JSON types + +This class models an iterator for primitive JSON types (boolean, number, +string). It's only purpose is to allow the iterator/const_iterator classes +to "iterate" over primitive values. Internally, the iterator is modeled by +a `difference_type` variable. Value begin_value (`0`) models the begin, +end_value (`1`) models past the end. +*/ +class primitive_iterator_t +{ + private: + using difference_type = std::ptrdiff_t; + static constexpr difference_type begin_value = 0; + static constexpr difference_type end_value = begin_value + 1; + + JSON_PRIVATE_UNLESS_TESTED: + /// iterator as signed integer type + difference_type m_it = (std::numeric_limits::min)(); + + public: + constexpr difference_type get_value() const noexcept + { + return m_it; + } + + /// set iterator to a defined beginning + void set_begin() noexcept + { + m_it = begin_value; + } + + /// set iterator to a defined past the end + void set_end() noexcept + { + m_it = end_value; + } + + /// return whether the iterator can be dereferenced + constexpr bool is_begin() const noexcept + { + return m_it == begin_value; + } + + /// return whether the iterator is at end + constexpr bool is_end() const noexcept + { + return m_it == end_value; + } + + friend constexpr bool operator==(primitive_iterator_t lhs, primitive_iterator_t rhs) noexcept + { + return lhs.m_it == rhs.m_it; + } + + friend constexpr bool operator<(primitive_iterator_t lhs, primitive_iterator_t rhs) noexcept + { + return lhs.m_it < rhs.m_it; + } + + primitive_iterator_t operator+(difference_type n) noexcept + { + auto result = *this; + result += n; + return result; + } + + friend constexpr difference_type operator-(primitive_iterator_t lhs, primitive_iterator_t rhs) noexcept + { + return lhs.m_it - rhs.m_it; + } + + primitive_iterator_t& operator++() noexcept + { + ++m_it; + return *this; + } + + primitive_iterator_t operator++(int)& noexcept // NOLINT(cert-dcl21-cpp) + { + auto result = *this; + ++m_it; + return result; + } + + primitive_iterator_t& operator--() noexcept + { + --m_it; + return *this; + } + + primitive_iterator_t operator--(int)& noexcept // NOLINT(cert-dcl21-cpp) + { + auto result = *this; + --m_it; + return result; + } + + primitive_iterator_t& operator+=(difference_type n) noexcept + { + m_it += n; + return *this; + } + + primitive_iterator_t& operator-=(difference_type n) noexcept + { + m_it -= n; + return *this; + } +}; + +} // namespace detail +NLOHMANN_JSON_NAMESPACE_END diff --git a/include/nlohmann/detail/json_custom_base_class.hpp b/include/nlohmann/detail/json_custom_base_class.hpp new file mode 100644 index 00000000..d1e29162 --- /dev/null +++ b/include/nlohmann/detail/json_custom_base_class.hpp @@ -0,0 +1,39 @@ +// __ _____ _____ _____ +// __| | __| | | | JSON for Modern C++ +// | | |__ | | | | | | version 3.11.3 +// |_____|_____|_____|_|___| https://github.com/nlohmann/json +// +// SPDX-FileCopyrightText: 2013-2023 Niels Lohmann +// SPDX-License-Identifier: MIT + +#pragma once + +#include // conditional, is_same + +#include + +NLOHMANN_JSON_NAMESPACE_BEGIN +namespace detail +{ + +/*! +@brief Default base class of the @ref basic_json class. + +So that the correct implementations of the copy / move ctors / assign operators +of @ref basic_json do not require complex case distinctions +(no base class / custom base class used as customization point), +@ref basic_json always has a base class. +By default, this class is used because it is empty and thus has no effect +on the behavior of @ref basic_json. +*/ +struct json_default_base {}; + +template +using json_base_class = typename std::conditional < + std::is_same::value, + json_default_base, + T + >::type; + +} // namespace detail +NLOHMANN_JSON_NAMESPACE_END diff --git a/include/nlohmann/detail/json_pointer.hpp b/include/nlohmann/detail/json_pointer.hpp new file mode 100644 index 00000000..4fdcd9ad --- /dev/null +++ b/include/nlohmann/detail/json_pointer.hpp @@ -0,0 +1,988 @@ +// __ _____ _____ _____ +// __| | __| | | | JSON for Modern C++ +// | | |__ | | | | | | version 3.11.3 +// |_____|_____|_____|_|___| https://github.com/nlohmann/json +// +// SPDX-FileCopyrightText: 2013-2023 Niels Lohmann +// SPDX-License-Identifier: MIT + +#pragma once + +#include // all_of +#include // isdigit +#include // errno, ERANGE +#include // strtoull +#ifndef JSON_NO_IO + #include // ostream +#endif // JSON_NO_IO +#include // max +#include // accumulate +#include // string +#include // move +#include // vector + +#include +#include +#include +#include +#include + +NLOHMANN_JSON_NAMESPACE_BEGIN + +/// @brief JSON Pointer defines a string syntax for identifying a specific value within a JSON document +/// @sa https://json.nlohmann.me/api/json_pointer/ +template +class json_pointer +{ + // allow basic_json to access private members + NLOHMANN_BASIC_JSON_TPL_DECLARATION + friend class basic_json; + + template + friend class json_pointer; + + template + struct string_t_helper + { + using type = T; + }; + + NLOHMANN_BASIC_JSON_TPL_DECLARATION + struct string_t_helper + { + using type = StringType; + }; + + public: + // for backwards compatibility accept BasicJsonType + using string_t = typename string_t_helper::type; + + /// @brief create JSON pointer + /// @sa https://json.nlohmann.me/api/json_pointer/json_pointer/ + explicit json_pointer(const string_t& s = "") + : reference_tokens(split(s)) + {} + + /// @brief return a string representation of the JSON pointer + /// @sa https://json.nlohmann.me/api/json_pointer/to_string/ + string_t to_string() const + { + return std::accumulate(reference_tokens.begin(), reference_tokens.end(), + string_t{}, + [](const string_t& a, const string_t& b) + { + return detail::concat(a, '/', detail::escape(b)); + }); + } + + /// @brief return a string representation of the JSON pointer + /// @sa https://json.nlohmann.me/api/json_pointer/operator_string/ + JSON_HEDLEY_DEPRECATED_FOR(3.11.0, to_string()) + operator string_t() const + { + return to_string(); + } + +#ifndef JSON_NO_IO + /// @brief write string representation of the JSON pointer to stream + /// @sa https://json.nlohmann.me/api/basic_json/operator_ltlt/ + friend std::ostream& operator<<(std::ostream& o, const json_pointer& ptr) + { + o << ptr.to_string(); + return o; + } +#endif + + /// @brief append another JSON pointer at the end of this JSON pointer + /// @sa https://json.nlohmann.me/api/json_pointer/operator_slasheq/ + json_pointer& operator/=(const json_pointer& ptr) + { + reference_tokens.insert(reference_tokens.end(), + ptr.reference_tokens.begin(), + ptr.reference_tokens.end()); + return *this; + } + + /// @brief append an unescaped reference token at the end of this JSON pointer + /// @sa https://json.nlohmann.me/api/json_pointer/operator_slasheq/ + json_pointer& operator/=(string_t token) + { + push_back(std::move(token)); + return *this; + } + + /// @brief append an array index at the end of this JSON pointer + /// @sa https://json.nlohmann.me/api/json_pointer/operator_slasheq/ + json_pointer& operator/=(std::size_t array_idx) + { + return *this /= std::to_string(array_idx); + } + + /// @brief create a new JSON pointer by appending the right JSON pointer at the end of the left JSON pointer + /// @sa https://json.nlohmann.me/api/json_pointer/operator_slash/ + friend json_pointer operator/(const json_pointer& lhs, + const json_pointer& rhs) + { + return json_pointer(lhs) /= rhs; + } + + /// @brief create a new JSON pointer by appending the unescaped token at the end of the JSON pointer + /// @sa https://json.nlohmann.me/api/json_pointer/operator_slash/ + friend json_pointer operator/(const json_pointer& lhs, string_t token) // NOLINT(performance-unnecessary-value-param) + { + return json_pointer(lhs) /= std::move(token); + } + + /// @brief create a new JSON pointer by appending the array-index-token at the end of the JSON pointer + /// @sa https://json.nlohmann.me/api/json_pointer/operator_slash/ + friend json_pointer operator/(const json_pointer& lhs, std::size_t array_idx) + { + return json_pointer(lhs) /= array_idx; + } + + /// @brief returns the parent of this JSON pointer + /// @sa https://json.nlohmann.me/api/json_pointer/parent_pointer/ + json_pointer parent_pointer() const + { + if (empty()) + { + return *this; + } + + json_pointer res = *this; + res.pop_back(); + return res; + } + + /// @brief remove last reference token + /// @sa https://json.nlohmann.me/api/json_pointer/pop_back/ + void pop_back() + { + if (JSON_HEDLEY_UNLIKELY(empty())) + { + JSON_THROW(detail::out_of_range::create(405, "JSON pointer has no parent", nullptr)); + } + + reference_tokens.pop_back(); + } + + /// @brief return last reference token + /// @sa https://json.nlohmann.me/api/json_pointer/back/ + const string_t& back() const + { + if (JSON_HEDLEY_UNLIKELY(empty())) + { + JSON_THROW(detail::out_of_range::create(405, "JSON pointer has no parent", nullptr)); + } + + return reference_tokens.back(); + } + + /// @brief append an unescaped token at the end of the reference pointer + /// @sa https://json.nlohmann.me/api/json_pointer/push_back/ + void push_back(const string_t& token) + { + reference_tokens.push_back(token); + } + + /// @brief append an unescaped token at the end of the reference pointer + /// @sa https://json.nlohmann.me/api/json_pointer/push_back/ + void push_back(string_t&& token) + { + reference_tokens.push_back(std::move(token)); + } + + /// @brief return whether pointer points to the root document + /// @sa https://json.nlohmann.me/api/json_pointer/empty/ + bool empty() const noexcept + { + return reference_tokens.empty(); + } + + private: + /*! + @param[in] s reference token to be converted into an array index + + @return integer representation of @a s + + @throw parse_error.106 if an array index begins with '0' + @throw parse_error.109 if an array index begins not with a digit + @throw out_of_range.404 if string @a s could not be converted to an integer + @throw out_of_range.410 if an array index exceeds size_type + */ + template + static typename BasicJsonType::size_type array_index(const string_t& s) + { + using size_type = typename BasicJsonType::size_type; + + // error condition (cf. RFC 6901, Sect. 4) + if (JSON_HEDLEY_UNLIKELY(s.size() > 1 && s[0] == '0')) + { + JSON_THROW(detail::parse_error::create(106, 0, detail::concat("array index '", s, "' must not begin with '0'"), nullptr)); + } + + // error condition (cf. RFC 6901, Sect. 4) + if (JSON_HEDLEY_UNLIKELY(s.size() > 1 && !(s[0] >= '1' && s[0] <= '9'))) + { + JSON_THROW(detail::parse_error::create(109, 0, detail::concat("array index '", s, "' is not a number"), nullptr)); + } + + const char* p = s.c_str(); + char* p_end = nullptr; + errno = 0; // strtoull doesn't reset errno + const unsigned long long res = std::strtoull(p, &p_end, 10); // NOLINT(runtime/int) + if (p == p_end // invalid input or empty string + || errno == ERANGE // out of range + || JSON_HEDLEY_UNLIKELY(static_cast(p_end - p) != s.size())) // incomplete read + { + JSON_THROW(detail::out_of_range::create(404, detail::concat("unresolved reference token '", s, "'"), nullptr)); + } + + // only triggered on special platforms (like 32bit), see also + // https://github.com/nlohmann/json/pull/2203 + if (res >= static_cast((std::numeric_limits::max)())) // NOLINT(runtime/int) + { + JSON_THROW(detail::out_of_range::create(410, detail::concat("array index ", s, " exceeds size_type"), nullptr)); // LCOV_EXCL_LINE + } + + return static_cast(res); + } + + JSON_PRIVATE_UNLESS_TESTED: + json_pointer top() const + { + if (JSON_HEDLEY_UNLIKELY(empty())) + { + JSON_THROW(detail::out_of_range::create(405, "JSON pointer has no parent", nullptr)); + } + + json_pointer result = *this; + result.reference_tokens = {reference_tokens[0]}; + return result; + } + + private: + /*! + @brief create and return a reference to the pointed to value + + @complexity Linear in the number of reference tokens. + + @throw parse_error.109 if array index is not a number + @throw type_error.313 if value cannot be unflattened + */ + template + BasicJsonType& get_and_create(BasicJsonType& j) const + { + auto* result = &j; + + // in case no reference tokens exist, return a reference to the JSON value + // j which will be overwritten by a primitive value + for (const auto& reference_token : reference_tokens) + { + switch (result->type()) + { + case detail::value_t::null: + { + if (reference_token == "0") + { + // start a new array if reference token is 0 + result = &result->operator[](0); + } + else + { + // start a new object otherwise + result = &result->operator[](reference_token); + } + break; + } + + case detail::value_t::object: + { + // create an entry in the object + result = &result->operator[](reference_token); + break; + } + + case detail::value_t::array: + { + // create an entry in the array + result = &result->operator[](array_index(reference_token)); + break; + } + + /* + The following code is only reached if there exists a reference + token _and_ the current value is primitive. In this case, we have + an error situation, because primitive values may only occur as + single value; that is, with an empty list of reference tokens. + */ + case detail::value_t::string: + case detail::value_t::boolean: + case detail::value_t::number_integer: + case detail::value_t::number_unsigned: + case detail::value_t::number_float: + case detail::value_t::binary: + case detail::value_t::discarded: + default: + JSON_THROW(detail::type_error::create(313, "invalid value to unflatten", &j)); + } + } + + return *result; + } + + /*! + @brief return a reference to the pointed to value + + @note This version does not throw if a value is not present, but tries to + create nested values instead. For instance, calling this function + with pointer `"/this/that"` on a null value is equivalent to calling + `operator[]("this").operator[]("that")` on that value, effectively + changing the null value to an object. + + @param[in] ptr a JSON value + + @return reference to the JSON value pointed to by the JSON pointer + + @complexity Linear in the length of the JSON pointer. + + @throw parse_error.106 if an array index begins with '0' + @throw parse_error.109 if an array index was not a number + @throw out_of_range.404 if the JSON pointer can not be resolved + */ + template + BasicJsonType& get_unchecked(BasicJsonType* ptr) const + { + for (const auto& reference_token : reference_tokens) + { + // convert null values to arrays or objects before continuing + if (ptr->is_null()) + { + // check if reference token is a number + const bool nums = + std::all_of(reference_token.begin(), reference_token.end(), + [](const unsigned char x) + { + return std::isdigit(x); + }); + + // change value to array for numbers or "-" or to object otherwise + *ptr = (nums || reference_token == "-") + ? detail::value_t::array + : detail::value_t::object; + } + + switch (ptr->type()) + { + case detail::value_t::object: + { + // use unchecked object access + ptr = &ptr->operator[](reference_token); + break; + } + + case detail::value_t::array: + { + if (reference_token == "-") + { + // explicitly treat "-" as index beyond the end + ptr = &ptr->operator[](ptr->m_data.m_value.array->size()); + } + else + { + // convert array index to number; unchecked access + ptr = &ptr->operator[](array_index(reference_token)); + } + break; + } + + case detail::value_t::null: + case detail::value_t::string: + case detail::value_t::boolean: + case detail::value_t::number_integer: + case detail::value_t::number_unsigned: + case detail::value_t::number_float: + case detail::value_t::binary: + case detail::value_t::discarded: + default: + JSON_THROW(detail::out_of_range::create(404, detail::concat("unresolved reference token '", reference_token, "'"), ptr)); + } + } + + return *ptr; + } + + /*! + @throw parse_error.106 if an array index begins with '0' + @throw parse_error.109 if an array index was not a number + @throw out_of_range.402 if the array index '-' is used + @throw out_of_range.404 if the JSON pointer can not be resolved + */ + template + BasicJsonType& get_checked(BasicJsonType* ptr) const + { + for (const auto& reference_token : reference_tokens) + { + switch (ptr->type()) + { + case detail::value_t::object: + { + // note: at performs range check + ptr = &ptr->at(reference_token); + break; + } + + case detail::value_t::array: + { + if (JSON_HEDLEY_UNLIKELY(reference_token == "-")) + { + // "-" always fails the range check + JSON_THROW(detail::out_of_range::create(402, detail::concat( + "array index '-' (", std::to_string(ptr->m_data.m_value.array->size()), + ") is out of range"), ptr)); + } + + // note: at performs range check + ptr = &ptr->at(array_index(reference_token)); + break; + } + + case detail::value_t::null: + case detail::value_t::string: + case detail::value_t::boolean: + case detail::value_t::number_integer: + case detail::value_t::number_unsigned: + case detail::value_t::number_float: + case detail::value_t::binary: + case detail::value_t::discarded: + default: + JSON_THROW(detail::out_of_range::create(404, detail::concat("unresolved reference token '", reference_token, "'"), ptr)); + } + } + + return *ptr; + } + + /*! + @brief return a const reference to the pointed to value + + @param[in] ptr a JSON value + + @return const reference to the JSON value pointed to by the JSON + pointer + + @throw parse_error.106 if an array index begins with '0' + @throw parse_error.109 if an array index was not a number + @throw out_of_range.402 if the array index '-' is used + @throw out_of_range.404 if the JSON pointer can not be resolved + */ + template + const BasicJsonType& get_unchecked(const BasicJsonType* ptr) const + { + for (const auto& reference_token : reference_tokens) + { + switch (ptr->type()) + { + case detail::value_t::object: + { + // use unchecked object access + ptr = &ptr->operator[](reference_token); + break; + } + + case detail::value_t::array: + { + if (JSON_HEDLEY_UNLIKELY(reference_token == "-")) + { + // "-" cannot be used for const access + JSON_THROW(detail::out_of_range::create(402, detail::concat("array index '-' (", std::to_string(ptr->m_data.m_value.array->size()), ") is out of range"), ptr)); + } + + // use unchecked array access + ptr = &ptr->operator[](array_index(reference_token)); + break; + } + + case detail::value_t::null: + case detail::value_t::string: + case detail::value_t::boolean: + case detail::value_t::number_integer: + case detail::value_t::number_unsigned: + case detail::value_t::number_float: + case detail::value_t::binary: + case detail::value_t::discarded: + default: + JSON_THROW(detail::out_of_range::create(404, detail::concat("unresolved reference token '", reference_token, "'"), ptr)); + } + } + + return *ptr; + } + + /*! + @throw parse_error.106 if an array index begins with '0' + @throw parse_error.109 if an array index was not a number + @throw out_of_range.402 if the array index '-' is used + @throw out_of_range.404 if the JSON pointer can not be resolved + */ + template + const BasicJsonType& get_checked(const BasicJsonType* ptr) const + { + for (const auto& reference_token : reference_tokens) + { + switch (ptr->type()) + { + case detail::value_t::object: + { + // note: at performs range check + ptr = &ptr->at(reference_token); + break; + } + + case detail::value_t::array: + { + if (JSON_HEDLEY_UNLIKELY(reference_token == "-")) + { + // "-" always fails the range check + JSON_THROW(detail::out_of_range::create(402, detail::concat( + "array index '-' (", std::to_string(ptr->m_data.m_value.array->size()), + ") is out of range"), ptr)); + } + + // note: at performs range check + ptr = &ptr->at(array_index(reference_token)); + break; + } + + case detail::value_t::null: + case detail::value_t::string: + case detail::value_t::boolean: + case detail::value_t::number_integer: + case detail::value_t::number_unsigned: + case detail::value_t::number_float: + case detail::value_t::binary: + case detail::value_t::discarded: + default: + JSON_THROW(detail::out_of_range::create(404, detail::concat("unresolved reference token '", reference_token, "'"), ptr)); + } + } + + return *ptr; + } + + /*! + @throw parse_error.106 if an array index begins with '0' + @throw parse_error.109 if an array index was not a number + */ + template + bool contains(const BasicJsonType* ptr) const + { + for (const auto& reference_token : reference_tokens) + { + switch (ptr->type()) + { + case detail::value_t::object: + { + if (!ptr->contains(reference_token)) + { + // we did not find the key in the object + return false; + } + + ptr = &ptr->operator[](reference_token); + break; + } + + case detail::value_t::array: + { + if (JSON_HEDLEY_UNLIKELY(reference_token == "-")) + { + // "-" always fails the range check + return false; + } + if (JSON_HEDLEY_UNLIKELY(reference_token.size() == 1 && !("0" <= reference_token && reference_token <= "9"))) + { + // invalid char + return false; + } + if (JSON_HEDLEY_UNLIKELY(reference_token.size() > 1)) + { + if (JSON_HEDLEY_UNLIKELY(!('1' <= reference_token[0] && reference_token[0] <= '9'))) + { + // first char should be between '1' and '9' + return false; + } + for (std::size_t i = 1; i < reference_token.size(); i++) + { + if (JSON_HEDLEY_UNLIKELY(!('0' <= reference_token[i] && reference_token[i] <= '9'))) + { + // other char should be between '0' and '9' + return false; + } + } + } + + const auto idx = array_index(reference_token); + if (idx >= ptr->size()) + { + // index out of range + return false; + } + + ptr = &ptr->operator[](idx); + break; + } + + case detail::value_t::null: + case detail::value_t::string: + case detail::value_t::boolean: + case detail::value_t::number_integer: + case detail::value_t::number_unsigned: + case detail::value_t::number_float: + case detail::value_t::binary: + case detail::value_t::discarded: + default: + { + // we do not expect primitive values if there is still a + // reference token to process + return false; + } + } + } + + // no reference token left means we found a primitive value + return true; + } + + /*! + @brief split the string input to reference tokens + + @note This function is only called by the json_pointer constructor. + All exceptions below are documented there. + + @throw parse_error.107 if the pointer is not empty or begins with '/' + @throw parse_error.108 if character '~' is not followed by '0' or '1' + */ + static std::vector split(const string_t& reference_string) + { + std::vector result; + + // special case: empty reference string -> no reference tokens + if (reference_string.empty()) + { + return result; + } + + // check if nonempty reference string begins with slash + if (JSON_HEDLEY_UNLIKELY(reference_string[0] != '/')) + { + JSON_THROW(detail::parse_error::create(107, 1, detail::concat("JSON pointer must be empty or begin with '/' - was: '", reference_string, "'"), nullptr)); + } + + // extract the reference tokens: + // - slash: position of the last read slash (or end of string) + // - start: position after the previous slash + for ( + // search for the first slash after the first character + std::size_t slash = reference_string.find_first_of('/', 1), + // set the beginning of the first reference token + start = 1; + // we can stop if start == 0 (if slash == string_t::npos) + start != 0; + // set the beginning of the next reference token + // (will eventually be 0 if slash == string_t::npos) + start = (slash == string_t::npos) ? 0 : slash + 1, + // find next slash + slash = reference_string.find_first_of('/', start)) + { + // use the text between the beginning of the reference token + // (start) and the last slash (slash). + auto reference_token = reference_string.substr(start, slash - start); + + // check reference tokens are properly escaped + for (std::size_t pos = reference_token.find_first_of('~'); + pos != string_t::npos; + pos = reference_token.find_first_of('~', pos + 1)) + { + JSON_ASSERT(reference_token[pos] == '~'); + + // ~ must be followed by 0 or 1 + if (JSON_HEDLEY_UNLIKELY(pos == reference_token.size() - 1 || + (reference_token[pos + 1] != '0' && + reference_token[pos + 1] != '1'))) + { + JSON_THROW(detail::parse_error::create(108, 0, "escape character '~' must be followed with '0' or '1'", nullptr)); + } + } + + // finally, store the reference token + detail::unescape(reference_token); + result.push_back(reference_token); + } + + return result; + } + + private: + /*! + @param[in] reference_string the reference string to the current value + @param[in] value the value to consider + @param[in,out] result the result object to insert values to + + @note Empty objects or arrays are flattened to `null`. + */ + template + static void flatten(const string_t& reference_string, + const BasicJsonType& value, + BasicJsonType& result) + { + switch (value.type()) + { + case detail::value_t::array: + { + if (value.m_data.m_value.array->empty()) + { + // flatten empty array as null + result[reference_string] = nullptr; + } + else + { + // iterate array and use index as reference string + for (std::size_t i = 0; i < value.m_data.m_value.array->size(); ++i) + { + flatten(detail::concat(reference_string, '/', std::to_string(i)), + value.m_data.m_value.array->operator[](i), result); + } + } + break; + } + + case detail::value_t::object: + { + if (value.m_data.m_value.object->empty()) + { + // flatten empty object as null + result[reference_string] = nullptr; + } + else + { + // iterate object and use keys as reference string + for (const auto& element : *value.m_data.m_value.object) + { + flatten(detail::concat(reference_string, '/', detail::escape(element.first)), element.second, result); + } + } + break; + } + + case detail::value_t::null: + case detail::value_t::string: + case detail::value_t::boolean: + case detail::value_t::number_integer: + case detail::value_t::number_unsigned: + case detail::value_t::number_float: + case detail::value_t::binary: + case detail::value_t::discarded: + default: + { + // add primitive value with its reference string + result[reference_string] = value; + break; + } + } + } + + /*! + @param[in] value flattened JSON + + @return unflattened JSON + + @throw parse_error.109 if array index is not a number + @throw type_error.314 if value is not an object + @throw type_error.315 if object values are not primitive + @throw type_error.313 if value cannot be unflattened + */ + template + static BasicJsonType + unflatten(const BasicJsonType& value) + { + if (JSON_HEDLEY_UNLIKELY(!value.is_object())) + { + JSON_THROW(detail::type_error::create(314, "only objects can be unflattened", &value)); + } + + BasicJsonType result; + + // iterate the JSON object values + for (const auto& element : *value.m_data.m_value.object) + { + if (JSON_HEDLEY_UNLIKELY(!element.second.is_primitive())) + { + JSON_THROW(detail::type_error::create(315, "values in object must be primitive", &element.second)); + } + + // assign value to reference pointed to by JSON pointer; Note that if + // the JSON pointer is "" (i.e., points to the whole value), function + // get_and_create returns a reference to result itself. An assignment + // will then create a primitive value. + json_pointer(element.first).get_and_create(result) = element.second; + } + + return result; + } + + // can't use conversion operator because of ambiguity + json_pointer convert() const& + { + json_pointer result; + result.reference_tokens = reference_tokens; + return result; + } + + json_pointer convert()&& + { + json_pointer result; + result.reference_tokens = std::move(reference_tokens); + return result; + } + + public: +#if JSON_HAS_THREE_WAY_COMPARISON + /// @brief compares two JSON pointers for equality + /// @sa https://json.nlohmann.me/api/json_pointer/operator_eq/ + template + bool operator==(const json_pointer& rhs) const noexcept + { + return reference_tokens == rhs.reference_tokens; + } + + /// @brief compares JSON pointer and string for equality + /// @sa https://json.nlohmann.me/api/json_pointer/operator_eq/ + JSON_HEDLEY_DEPRECATED_FOR(3.11.2, operator==(json_pointer)) + bool operator==(const string_t& rhs) const + { + return *this == json_pointer(rhs); + } + + /// @brief 3-way compares two JSON pointers + template + std::strong_ordering operator<=>(const json_pointer& rhs) const noexcept // *NOPAD* + { + return reference_tokens <=> rhs.reference_tokens; // *NOPAD* + } +#else + /// @brief compares two JSON pointers for equality + /// @sa https://json.nlohmann.me/api/json_pointer/operator_eq/ + template + // NOLINTNEXTLINE(readability-redundant-declaration) + friend bool operator==(const json_pointer& lhs, + const json_pointer& rhs) noexcept; + + /// @brief compares JSON pointer and string for equality + /// @sa https://json.nlohmann.me/api/json_pointer/operator_eq/ + template + // NOLINTNEXTLINE(readability-redundant-declaration) + friend bool operator==(const json_pointer& lhs, + const StringType& rhs); + + /// @brief compares string and JSON pointer for equality + /// @sa https://json.nlohmann.me/api/json_pointer/operator_eq/ + template + // NOLINTNEXTLINE(readability-redundant-declaration) + friend bool operator==(const StringType& lhs, + const json_pointer& rhs); + + /// @brief compares two JSON pointers for inequality + /// @sa https://json.nlohmann.me/api/json_pointer/operator_ne/ + template + // NOLINTNEXTLINE(readability-redundant-declaration) + friend bool operator!=(const json_pointer& lhs, + const json_pointer& rhs) noexcept; + + /// @brief compares JSON pointer and string for inequality + /// @sa https://json.nlohmann.me/api/json_pointer/operator_ne/ + template + // NOLINTNEXTLINE(readability-redundant-declaration) + friend bool operator!=(const json_pointer& lhs, + const StringType& rhs); + + /// @brief compares string and JSON pointer for inequality + /// @sa https://json.nlohmann.me/api/json_pointer/operator_ne/ + template + // NOLINTNEXTLINE(readability-redundant-declaration) + friend bool operator!=(const StringType& lhs, + const json_pointer& rhs); + + /// @brief compares two JSON pointer for less-than + template + // NOLINTNEXTLINE(readability-redundant-declaration) + friend bool operator<(const json_pointer& lhs, + const json_pointer& rhs) noexcept; +#endif + + private: + /// the reference tokens + std::vector reference_tokens; +}; + +#if !JSON_HAS_THREE_WAY_COMPARISON +// functions cannot be defined inside class due to ODR violations +template +inline bool operator==(const json_pointer& lhs, + const json_pointer& rhs) noexcept +{ + return lhs.reference_tokens == rhs.reference_tokens; +} + +template::string_t> +JSON_HEDLEY_DEPRECATED_FOR(3.11.2, operator==(json_pointer, json_pointer)) +inline bool operator==(const json_pointer& lhs, + const StringType& rhs) +{ + return lhs == json_pointer(rhs); +} + +template::string_t> +JSON_HEDLEY_DEPRECATED_FOR(3.11.2, operator==(json_pointer, json_pointer)) +inline bool operator==(const StringType& lhs, + const json_pointer& rhs) +{ + return json_pointer(lhs) == rhs; +} + +template +inline bool operator!=(const json_pointer& lhs, + const json_pointer& rhs) noexcept +{ + return !(lhs == rhs); +} + +template::string_t> +JSON_HEDLEY_DEPRECATED_FOR(3.11.2, operator!=(json_pointer, json_pointer)) +inline bool operator!=(const json_pointer& lhs, + const StringType& rhs) +{ + return !(lhs == rhs); +} + +template::string_t> +JSON_HEDLEY_DEPRECATED_FOR(3.11.2, operator!=(json_pointer, json_pointer)) +inline bool operator!=(const StringType& lhs, + const json_pointer& rhs) +{ + return !(lhs == rhs); +} + +template +inline bool operator<(const json_pointer& lhs, + const json_pointer& rhs) noexcept +{ + return lhs.reference_tokens < rhs.reference_tokens; +} +#endif + +NLOHMANN_JSON_NAMESPACE_END diff --git a/include/nlohmann/detail/json_ref.hpp b/include/nlohmann/detail/json_ref.hpp new file mode 100644 index 00000000..b8bb6a76 --- /dev/null +++ b/include/nlohmann/detail/json_ref.hpp @@ -0,0 +1,78 @@ +// __ _____ _____ _____ +// __| | __| | | | JSON for Modern C++ +// | | |__ | | | | | | version 3.11.3 +// |_____|_____|_____|_|___| https://github.com/nlohmann/json +// +// SPDX-FileCopyrightText: 2013-2023 Niels Lohmann +// SPDX-License-Identifier: MIT + +#pragma once + +#include +#include + +#include +#include + +NLOHMANN_JSON_NAMESPACE_BEGIN +namespace detail +{ + +template +class json_ref +{ + public: + using value_type = BasicJsonType; + + json_ref(value_type&& value) + : owned_value(std::move(value)) + {} + + json_ref(const value_type& value) + : value_ref(&value) + {} + + json_ref(std::initializer_list init) + : owned_value(init) + {} + + template < + class... Args, + enable_if_t::value, int> = 0 > + json_ref(Args && ... args) + : owned_value(std::forward(args)...) + {} + + // class should be movable only + json_ref(json_ref&&) noexcept = default; + json_ref(const json_ref&) = delete; + json_ref& operator=(const json_ref&) = delete; + json_ref& operator=(json_ref&&) = delete; + ~json_ref() = default; + + value_type moved_or_copied() const + { + if (value_ref == nullptr) + { + return std::move(owned_value); + } + return *value_ref; + } + + value_type const& operator*() const + { + return value_ref ? *value_ref : owned_value; + } + + value_type const* operator->() const + { + return &** this; + } + + private: + mutable value_type owned_value = nullptr; + value_type const* value_ref = nullptr; +}; + +} // namespace detail +NLOHMANN_JSON_NAMESPACE_END diff --git a/include/nlohmann/detail/macro_scope.hpp b/include/nlohmann/detail/macro_scope.hpp new file mode 100644 index 00000000..97127a64 --- /dev/null +++ b/include/nlohmann/detail/macro_scope.hpp @@ -0,0 +1,482 @@ +// __ _____ _____ _____ +// __| | __| | | | JSON for Modern C++ +// | | |__ | | | | | | version 3.11.3 +// |_____|_____|_____|_|___| https://github.com/nlohmann/json +// +// SPDX-FileCopyrightText: 2013-2023 Niels Lohmann +// SPDX-License-Identifier: MIT + +#pragma once + +#include // declval, pair +#include +#include + +// This file contains all internal macro definitions (except those affecting ABI) +// You MUST include macro_unscope.hpp at the end of json.hpp to undef all of them + +#include + +// exclude unsupported compilers +#if !defined(JSON_SKIP_UNSUPPORTED_COMPILER_CHECK) + #if defined(__clang__) + #if (__clang_major__ * 10000 + __clang_minor__ * 100 + __clang_patchlevel__) < 30400 + #error "unsupported Clang version - see https://github.com/nlohmann/json#supported-compilers" + #endif + #elif defined(__GNUC__) && !(defined(__ICC) || defined(__INTEL_COMPILER)) + #if (__GNUC__ * 10000 + __GNUC_MINOR__ * 100 + __GNUC_PATCHLEVEL__) < 40800 + #error "unsupported GCC version - see https://github.com/nlohmann/json#supported-compilers" + #endif + #endif +#endif + +// C++ language standard detection +// if the user manually specified the used c++ version this is skipped +#if !defined(JSON_HAS_CPP_20) && !defined(JSON_HAS_CPP_17) && !defined(JSON_HAS_CPP_14) && !defined(JSON_HAS_CPP_11) + #if (defined(__cplusplus) && __cplusplus >= 202002L) || (defined(_MSVC_LANG) && _MSVC_LANG >= 202002L) + #define JSON_HAS_CPP_20 + #define JSON_HAS_CPP_17 + #define JSON_HAS_CPP_14 + #elif (defined(__cplusplus) && __cplusplus >= 201703L) || (defined(_HAS_CXX17) && _HAS_CXX17 == 1) // fix for issue #464 + #define JSON_HAS_CPP_17 + #define JSON_HAS_CPP_14 + #elif (defined(__cplusplus) && __cplusplus >= 201402L) || (defined(_HAS_CXX14) && _HAS_CXX14 == 1) + #define JSON_HAS_CPP_14 + #endif + // the cpp 11 flag is always specified because it is the minimal required version + #define JSON_HAS_CPP_11 +#endif + +#ifdef __has_include + #if __has_include() + #include + #endif +#endif + +#if !defined(JSON_HAS_FILESYSTEM) && !defined(JSON_HAS_EXPERIMENTAL_FILESYSTEM) + #ifdef JSON_HAS_CPP_17 + #if defined(__cpp_lib_filesystem) + #define JSON_HAS_FILESYSTEM 1 + #elif defined(__cpp_lib_experimental_filesystem) + #define JSON_HAS_EXPERIMENTAL_FILESYSTEM 1 + #elif !defined(__has_include) + #define JSON_HAS_EXPERIMENTAL_FILESYSTEM 1 + #elif __has_include() + #define JSON_HAS_FILESYSTEM 1 + #elif __has_include() + #define JSON_HAS_EXPERIMENTAL_FILESYSTEM 1 + #endif + + // std::filesystem does not work on MinGW GCC 8: https://sourceforge.net/p/mingw-w64/bugs/737/ + #if defined(__MINGW32__) && defined(__GNUC__) && __GNUC__ == 8 + #undef JSON_HAS_FILESYSTEM + #undef JSON_HAS_EXPERIMENTAL_FILESYSTEM + #endif + + // no filesystem support before GCC 8: https://en.cppreference.com/w/cpp/compiler_support + #if defined(__GNUC__) && !defined(__clang__) && __GNUC__ < 8 + #undef JSON_HAS_FILESYSTEM + #undef JSON_HAS_EXPERIMENTAL_FILESYSTEM + #endif + + // no filesystem support before Clang 7: https://en.cppreference.com/w/cpp/compiler_support + #if defined(__clang_major__) && __clang_major__ < 7 + #undef JSON_HAS_FILESYSTEM + #undef JSON_HAS_EXPERIMENTAL_FILESYSTEM + #endif + + // no filesystem support before MSVC 19.14: https://en.cppreference.com/w/cpp/compiler_support + #if defined(_MSC_VER) && _MSC_VER < 1914 + #undef JSON_HAS_FILESYSTEM + #undef JSON_HAS_EXPERIMENTAL_FILESYSTEM + #endif + + // no filesystem support before iOS 13 + #if defined(__IPHONE_OS_VERSION_MIN_REQUIRED) && __IPHONE_OS_VERSION_MIN_REQUIRED < 130000 + #undef JSON_HAS_FILESYSTEM + #undef JSON_HAS_EXPERIMENTAL_FILESYSTEM + #endif + + // no filesystem support before macOS Catalina + #if defined(__MAC_OS_X_VERSION_MIN_REQUIRED) && __MAC_OS_X_VERSION_MIN_REQUIRED < 101500 + #undef JSON_HAS_FILESYSTEM + #undef JSON_HAS_EXPERIMENTAL_FILESYSTEM + #endif + #endif +#endif + +#ifndef JSON_HAS_EXPERIMENTAL_FILESYSTEM + #define JSON_HAS_EXPERIMENTAL_FILESYSTEM 0 +#endif + +#ifndef JSON_HAS_FILESYSTEM + #define JSON_HAS_FILESYSTEM 0 +#endif + +#ifndef JSON_HAS_THREE_WAY_COMPARISON + #if defined(__cpp_impl_three_way_comparison) && __cpp_impl_three_way_comparison >= 201907L \ + && defined(__cpp_lib_three_way_comparison) && __cpp_lib_three_way_comparison >= 201907L + #define JSON_HAS_THREE_WAY_COMPARISON 1 + #else + #define JSON_HAS_THREE_WAY_COMPARISON 0 + #endif +#endif + +#ifndef JSON_HAS_RANGES + // ranges header shipping in GCC 11.1.0 (released 2021-04-27) has syntax error + #if defined(__GLIBCXX__) && __GLIBCXX__ == 20210427 + #define JSON_HAS_RANGES 0 + #elif defined(__cpp_lib_ranges) + #define JSON_HAS_RANGES 1 + #else + #define JSON_HAS_RANGES 0 + #endif +#endif + +#ifndef JSON_HAS_STATIC_RTTI + #if !defined(_HAS_STATIC_RTTI) || _HAS_STATIC_RTTI != 0 + #define JSON_HAS_STATIC_RTTI 1 + #else + #define JSON_HAS_STATIC_RTTI 0 + #endif +#endif + +#ifdef JSON_HAS_CPP_17 + #define JSON_INLINE_VARIABLE inline +#else + #define JSON_INLINE_VARIABLE +#endif + +#if JSON_HEDLEY_HAS_ATTRIBUTE(no_unique_address) + #define JSON_NO_UNIQUE_ADDRESS [[no_unique_address]] +#else + #define JSON_NO_UNIQUE_ADDRESS +#endif + +// disable documentation warnings on clang +#if defined(__clang__) + #pragma clang diagnostic push + #pragma clang diagnostic ignored "-Wdocumentation" + #pragma clang diagnostic ignored "-Wdocumentation-unknown-command" +#endif + +// allow disabling exceptions +#if (defined(__cpp_exceptions) || defined(__EXCEPTIONS) || defined(_CPPUNWIND)) && !defined(JSON_NOEXCEPTION) + #define JSON_THROW(exception) throw exception + #define JSON_TRY try + #define JSON_CATCH(exception) catch(exception) + #define JSON_INTERNAL_CATCH(exception) catch(exception) +#else + #include + #define JSON_THROW(exception) std::abort() + #define JSON_TRY if(true) + #define JSON_CATCH(exception) if(false) + #define JSON_INTERNAL_CATCH(exception) if(false) +#endif + +// override exception macros +#if defined(JSON_THROW_USER) + #undef JSON_THROW + #define JSON_THROW JSON_THROW_USER +#endif +#if defined(JSON_TRY_USER) + #undef JSON_TRY + #define JSON_TRY JSON_TRY_USER +#endif +#if defined(JSON_CATCH_USER) + #undef JSON_CATCH + #define JSON_CATCH JSON_CATCH_USER + #undef JSON_INTERNAL_CATCH + #define JSON_INTERNAL_CATCH JSON_CATCH_USER +#endif +#if defined(JSON_INTERNAL_CATCH_USER) + #undef JSON_INTERNAL_CATCH + #define JSON_INTERNAL_CATCH JSON_INTERNAL_CATCH_USER +#endif + +// allow overriding assert +#if !defined(JSON_ASSERT) + #include // assert + #define JSON_ASSERT(x) assert(x) +#endif + +// allow to access some private functions (needed by the test suite) +#if defined(JSON_TESTS_PRIVATE) + #define JSON_PRIVATE_UNLESS_TESTED public +#else + #define JSON_PRIVATE_UNLESS_TESTED private +#endif + +/*! +@brief macro to briefly define a mapping between an enum and JSON +@def NLOHMANN_JSON_SERIALIZE_ENUM +@since version 3.4.0 +*/ +#define NLOHMANN_JSON_SERIALIZE_ENUM(ENUM_TYPE, ...) \ + template \ + inline void to_json(BasicJsonType& j, const ENUM_TYPE& e) \ + { \ + static_assert(std::is_enum::value, #ENUM_TYPE " must be an enum!"); \ + static const std::pair m[] = __VA_ARGS__; \ + auto it = std::find_if(std::begin(m), std::end(m), \ + [e](const std::pair& ej_pair) -> bool \ + { \ + return ej_pair.first == e; \ + }); \ + j = ((it != std::end(m)) ? it : std::begin(m))->second; \ + } \ + template \ + inline void from_json(const BasicJsonType& j, ENUM_TYPE& e) \ + { \ + static_assert(std::is_enum::value, #ENUM_TYPE " must be an enum!"); \ + static const std::pair m[] = __VA_ARGS__; \ + auto it = std::find_if(std::begin(m), std::end(m), \ + [&j](const std::pair& ej_pair) -> bool \ + { \ + return ej_pair.second == j; \ + }); \ + e = ((it != std::end(m)) ? it : std::begin(m))->first; \ + } + +// Ugly macros to avoid uglier copy-paste when specializing basic_json. They +// may be removed in the future once the class is split. + +#define NLOHMANN_BASIC_JSON_TPL_DECLARATION \ + template class ObjectType, \ + template class ArrayType, \ + class StringType, class BooleanType, class NumberIntegerType, \ + class NumberUnsignedType, class NumberFloatType, \ + template class AllocatorType, \ + template class JSONSerializer, \ + class BinaryType, \ + class CustomBaseClass> + +#define NLOHMANN_BASIC_JSON_TPL \ + basic_json + +// Macros to simplify conversion from/to types + +#define NLOHMANN_JSON_EXPAND( x ) x +#define NLOHMANN_JSON_GET_MACRO(_1, _2, _3, _4, _5, _6, _7, _8, _9, _10, _11, _12, _13, _14, _15, _16, _17, _18, _19, _20, _21, _22, _23, _24, _25, _26, _27, _28, _29, _30, _31, _32, _33, _34, _35, _36, _37, _38, _39, _40, _41, _42, _43, _44, _45, _46, _47, _48, _49, _50, _51, _52, _53, _54, _55, _56, _57, _58, _59, _60, _61, _62, _63, _64, NAME,...) NAME +#define NLOHMANN_JSON_PASTE(...) NLOHMANN_JSON_EXPAND(NLOHMANN_JSON_GET_MACRO(__VA_ARGS__, \ + NLOHMANN_JSON_PASTE64, \ + NLOHMANN_JSON_PASTE63, \ + NLOHMANN_JSON_PASTE62, \ + NLOHMANN_JSON_PASTE61, \ + NLOHMANN_JSON_PASTE60, \ + NLOHMANN_JSON_PASTE59, \ + NLOHMANN_JSON_PASTE58, \ + NLOHMANN_JSON_PASTE57, \ + NLOHMANN_JSON_PASTE56, \ + NLOHMANN_JSON_PASTE55, \ + NLOHMANN_JSON_PASTE54, \ + NLOHMANN_JSON_PASTE53, \ + NLOHMANN_JSON_PASTE52, \ + NLOHMANN_JSON_PASTE51, \ + NLOHMANN_JSON_PASTE50, \ + NLOHMANN_JSON_PASTE49, \ + NLOHMANN_JSON_PASTE48, \ + NLOHMANN_JSON_PASTE47, \ + NLOHMANN_JSON_PASTE46, \ + NLOHMANN_JSON_PASTE45, \ + NLOHMANN_JSON_PASTE44, \ + NLOHMANN_JSON_PASTE43, \ + NLOHMANN_JSON_PASTE42, \ + NLOHMANN_JSON_PASTE41, \ + NLOHMANN_JSON_PASTE40, \ + NLOHMANN_JSON_PASTE39, \ + NLOHMANN_JSON_PASTE38, \ + NLOHMANN_JSON_PASTE37, \ + NLOHMANN_JSON_PASTE36, \ + NLOHMANN_JSON_PASTE35, \ + NLOHMANN_JSON_PASTE34, \ + NLOHMANN_JSON_PASTE33, \ + NLOHMANN_JSON_PASTE32, \ + NLOHMANN_JSON_PASTE31, \ + NLOHMANN_JSON_PASTE30, \ + NLOHMANN_JSON_PASTE29, \ + NLOHMANN_JSON_PASTE28, \ + NLOHMANN_JSON_PASTE27, \ + NLOHMANN_JSON_PASTE26, \ + NLOHMANN_JSON_PASTE25, \ + NLOHMANN_JSON_PASTE24, \ + NLOHMANN_JSON_PASTE23, \ + NLOHMANN_JSON_PASTE22, \ + NLOHMANN_JSON_PASTE21, \ + NLOHMANN_JSON_PASTE20, \ + NLOHMANN_JSON_PASTE19, \ + NLOHMANN_JSON_PASTE18, \ + NLOHMANN_JSON_PASTE17, \ + NLOHMANN_JSON_PASTE16, \ + NLOHMANN_JSON_PASTE15, \ + NLOHMANN_JSON_PASTE14, \ + NLOHMANN_JSON_PASTE13, \ + NLOHMANN_JSON_PASTE12, \ + NLOHMANN_JSON_PASTE11, \ + NLOHMANN_JSON_PASTE10, \ + NLOHMANN_JSON_PASTE9, \ + NLOHMANN_JSON_PASTE8, \ + NLOHMANN_JSON_PASTE7, \ + NLOHMANN_JSON_PASTE6, \ + NLOHMANN_JSON_PASTE5, \ + NLOHMANN_JSON_PASTE4, \ + NLOHMANN_JSON_PASTE3, \ + NLOHMANN_JSON_PASTE2, \ + NLOHMANN_JSON_PASTE1)(__VA_ARGS__)) +#define NLOHMANN_JSON_PASTE2(func, v1) func(v1) +#define NLOHMANN_JSON_PASTE3(func, v1, v2) NLOHMANN_JSON_PASTE2(func, v1) NLOHMANN_JSON_PASTE2(func, v2) +#define NLOHMANN_JSON_PASTE4(func, v1, v2, v3) NLOHMANN_JSON_PASTE2(func, v1) NLOHMANN_JSON_PASTE3(func, v2, v3) +#define NLOHMANN_JSON_PASTE5(func, v1, v2, v3, v4) NLOHMANN_JSON_PASTE2(func, v1) NLOHMANN_JSON_PASTE4(func, v2, v3, v4) +#define NLOHMANN_JSON_PASTE6(func, v1, v2, v3, v4, v5) NLOHMANN_JSON_PASTE2(func, v1) NLOHMANN_JSON_PASTE5(func, v2, v3, v4, v5) +#define NLOHMANN_JSON_PASTE7(func, v1, v2, v3, v4, v5, v6) NLOHMANN_JSON_PASTE2(func, v1) NLOHMANN_JSON_PASTE6(func, v2, v3, v4, v5, v6) +#define NLOHMANN_JSON_PASTE8(func, v1, v2, v3, v4, v5, v6, v7) NLOHMANN_JSON_PASTE2(func, v1) NLOHMANN_JSON_PASTE7(func, v2, v3, v4, v5, v6, v7) +#define NLOHMANN_JSON_PASTE9(func, v1, v2, v3, v4, v5, v6, v7, v8) NLOHMANN_JSON_PASTE2(func, v1) NLOHMANN_JSON_PASTE8(func, v2, v3, v4, v5, v6, v7, v8) +#define NLOHMANN_JSON_PASTE10(func, v1, v2, v3, v4, v5, v6, v7, v8, v9) NLOHMANN_JSON_PASTE2(func, v1) NLOHMANN_JSON_PASTE9(func, v2, v3, v4, v5, v6, v7, v8, v9) +#define NLOHMANN_JSON_PASTE11(func, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10) NLOHMANN_JSON_PASTE2(func, v1) NLOHMANN_JSON_PASTE10(func, v2, v3, v4, v5, v6, v7, v8, v9, v10) +#define NLOHMANN_JSON_PASTE12(func, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v11) NLOHMANN_JSON_PASTE2(func, v1) NLOHMANN_JSON_PASTE11(func, v2, v3, v4, v5, v6, v7, v8, v9, v10, v11) +#define NLOHMANN_JSON_PASTE13(func, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v11, v12) NLOHMANN_JSON_PASTE2(func, v1) NLOHMANN_JSON_PASTE12(func, v2, v3, v4, v5, v6, v7, v8, v9, v10, v11, v12) +#define NLOHMANN_JSON_PASTE14(func, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v11, v12, v13) NLOHMANN_JSON_PASTE2(func, v1) NLOHMANN_JSON_PASTE13(func, v2, v3, v4, v5, v6, v7, v8, v9, v10, v11, v12, v13) +#define NLOHMANN_JSON_PASTE15(func, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v11, v12, v13, v14) NLOHMANN_JSON_PASTE2(func, v1) NLOHMANN_JSON_PASTE14(func, v2, v3, v4, v5, v6, v7, v8, v9, v10, v11, v12, v13, v14) +#define NLOHMANN_JSON_PASTE16(func, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v11, v12, v13, v14, v15) NLOHMANN_JSON_PASTE2(func, v1) NLOHMANN_JSON_PASTE15(func, v2, v3, v4, v5, v6, v7, v8, v9, v10, v11, v12, v13, v14, v15) +#define NLOHMANN_JSON_PASTE17(func, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v11, v12, v13, v14, v15, v16) NLOHMANN_JSON_PASTE2(func, v1) NLOHMANN_JSON_PASTE16(func, v2, v3, v4, v5, v6, v7, v8, v9, v10, v11, v12, v13, v14, v15, v16) +#define NLOHMANN_JSON_PASTE18(func, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v11, v12, v13, v14, v15, v16, v17) NLOHMANN_JSON_PASTE2(func, v1) NLOHMANN_JSON_PASTE17(func, v2, v3, v4, v5, v6, v7, v8, v9, v10, v11, v12, v13, v14, v15, v16, v17) +#define NLOHMANN_JSON_PASTE19(func, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v11, v12, v13, v14, v15, v16, v17, v18) NLOHMANN_JSON_PASTE2(func, v1) NLOHMANN_JSON_PASTE18(func, v2, v3, v4, v5, v6, v7, v8, v9, v10, v11, v12, v13, v14, v15, v16, v17, v18) +#define NLOHMANN_JSON_PASTE20(func, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v11, v12, v13, v14, v15, v16, v17, v18, v19) NLOHMANN_JSON_PASTE2(func, v1) NLOHMANN_JSON_PASTE19(func, v2, v3, v4, v5, v6, v7, v8, v9, v10, v11, v12, v13, v14, v15, v16, v17, v18, v19) +#define NLOHMANN_JSON_PASTE21(func, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v11, v12, v13, v14, v15, v16, v17, v18, v19, v20) NLOHMANN_JSON_PASTE2(func, v1) NLOHMANN_JSON_PASTE20(func, v2, v3, v4, v5, v6, v7, v8, v9, v10, v11, v12, v13, v14, v15, v16, v17, v18, v19, v20) +#define NLOHMANN_JSON_PASTE22(func, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v11, v12, v13, v14, v15, v16, v17, v18, v19, v20, v21) NLOHMANN_JSON_PASTE2(func, v1) NLOHMANN_JSON_PASTE21(func, v2, v3, v4, v5, v6, v7, v8, v9, v10, v11, v12, v13, v14, v15, v16, v17, v18, v19, v20, v21) +#define NLOHMANN_JSON_PASTE23(func, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v11, v12, v13, v14, v15, v16, v17, v18, v19, v20, v21, v22) NLOHMANN_JSON_PASTE2(func, v1) NLOHMANN_JSON_PASTE22(func, v2, v3, v4, v5, v6, v7, v8, v9, v10, v11, v12, v13, v14, v15, v16, v17, v18, v19, v20, v21, v22) +#define NLOHMANN_JSON_PASTE24(func, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v11, v12, v13, v14, v15, v16, v17, v18, v19, v20, v21, v22, v23) NLOHMANN_JSON_PASTE2(func, v1) NLOHMANN_JSON_PASTE23(func, v2, v3, v4, v5, v6, v7, v8, v9, v10, v11, v12, v13, v14, v15, v16, v17, v18, v19, v20, v21, v22, v23) +#define NLOHMANN_JSON_PASTE25(func, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v11, v12, v13, v14, v15, v16, v17, v18, v19, v20, v21, v22, v23, v24) NLOHMANN_JSON_PASTE2(func, v1) NLOHMANN_JSON_PASTE24(func, v2, v3, v4, v5, v6, v7, v8, v9, v10, v11, v12, v13, v14, v15, v16, v17, v18, v19, v20, v21, v22, v23, v24) +#define NLOHMANN_JSON_PASTE26(func, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v11, v12, v13, v14, v15, v16, v17, v18, v19, v20, v21, v22, v23, v24, v25) NLOHMANN_JSON_PASTE2(func, v1) NLOHMANN_JSON_PASTE25(func, v2, v3, v4, v5, v6, v7, v8, v9, v10, v11, v12, v13, v14, v15, v16, v17, v18, v19, v20, v21, v22, v23, v24, v25) +#define NLOHMANN_JSON_PASTE27(func, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v11, v12, v13, v14, v15, v16, v17, v18, v19, v20, v21, v22, v23, v24, v25, v26) NLOHMANN_JSON_PASTE2(func, v1) NLOHMANN_JSON_PASTE26(func, v2, v3, v4, v5, v6, v7, v8, v9, v10, v11, v12, v13, v14, v15, v16, v17, v18, v19, v20, v21, v22, v23, v24, v25, v26) +#define NLOHMANN_JSON_PASTE28(func, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v11, v12, v13, v14, v15, v16, v17, v18, v19, v20, v21, v22, v23, v24, v25, v26, v27) NLOHMANN_JSON_PASTE2(func, v1) NLOHMANN_JSON_PASTE27(func, v2, v3, v4, v5, v6, v7, v8, v9, v10, v11, v12, v13, v14, v15, v16, v17, v18, v19, v20, v21, v22, v23, v24, v25, v26, v27) +#define NLOHMANN_JSON_PASTE29(func, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v11, v12, v13, v14, v15, v16, v17, v18, v19, v20, v21, v22, v23, v24, v25, v26, v27, v28) NLOHMANN_JSON_PASTE2(func, v1) NLOHMANN_JSON_PASTE28(func, v2, v3, v4, v5, v6, v7, v8, v9, v10, v11, v12, v13, v14, v15, v16, v17, v18, v19, v20, v21, v22, v23, v24, v25, v26, v27, v28) +#define NLOHMANN_JSON_PASTE30(func, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v11, v12, v13, v14, v15, v16, v17, v18, v19, v20, v21, v22, v23, v24, v25, v26, v27, v28, v29) NLOHMANN_JSON_PASTE2(func, v1) NLOHMANN_JSON_PASTE29(func, v2, v3, v4, v5, v6, v7, v8, v9, v10, v11, v12, v13, v14, v15, v16, v17, v18, v19, v20, v21, v22, v23, v24, v25, v26, v27, v28, v29) +#define NLOHMANN_JSON_PASTE31(func, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v11, v12, v13, v14, v15, v16, v17, v18, v19, v20, v21, v22, v23, v24, v25, v26, v27, v28, v29, v30) NLOHMANN_JSON_PASTE2(func, v1) NLOHMANN_JSON_PASTE30(func, v2, v3, v4, v5, v6, v7, v8, v9, v10, v11, v12, v13, v14, v15, v16, v17, v18, v19, v20, v21, v22, v23, v24, v25, v26, v27, v28, v29, v30) +#define NLOHMANN_JSON_PASTE32(func, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v11, v12, v13, v14, v15, v16, v17, v18, v19, v20, v21, v22, v23, v24, v25, v26, v27, v28, v29, v30, v31) NLOHMANN_JSON_PASTE2(func, v1) NLOHMANN_JSON_PASTE31(func, v2, v3, v4, v5, v6, v7, v8, v9, v10, v11, v12, v13, v14, v15, v16, v17, v18, v19, v20, v21, v22, v23, v24, v25, v26, v27, v28, v29, v30, v31) +#define NLOHMANN_JSON_PASTE33(func, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v11, v12, v13, v14, v15, v16, v17, v18, v19, v20, v21, v22, v23, v24, v25, v26, v27, v28, v29, v30, v31, v32) NLOHMANN_JSON_PASTE2(func, v1) NLOHMANN_JSON_PASTE32(func, v2, v3, v4, v5, v6, v7, v8, v9, v10, v11, v12, v13, v14, v15, v16, v17, v18, v19, v20, v21, v22, v23, v24, v25, v26, v27, v28, v29, v30, v31, v32) +#define NLOHMANN_JSON_PASTE34(func, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v11, v12, v13, v14, v15, v16, v17, v18, v19, v20, v21, v22, v23, v24, v25, v26, v27, v28, v29, v30, v31, v32, v33) NLOHMANN_JSON_PASTE2(func, v1) NLOHMANN_JSON_PASTE33(func, v2, v3, v4, v5, v6, v7, v8, v9, v10, v11, v12, v13, v14, v15, v16, v17, v18, v19, v20, v21, v22, v23, v24, v25, v26, v27, v28, v29, v30, v31, v32, v33) +#define NLOHMANN_JSON_PASTE35(func, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v11, v12, v13, v14, v15, v16, v17, v18, v19, v20, v21, v22, v23, v24, v25, v26, v27, v28, v29, v30, v31, v32, v33, v34) NLOHMANN_JSON_PASTE2(func, v1) NLOHMANN_JSON_PASTE34(func, v2, v3, v4, v5, v6, v7, v8, v9, v10, v11, v12, v13, v14, v15, v16, v17, v18, v19, v20, v21, v22, v23, v24, v25, v26, v27, v28, v29, v30, v31, v32, v33, v34) +#define NLOHMANN_JSON_PASTE36(func, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v11, v12, v13, v14, v15, v16, v17, v18, v19, v20, v21, v22, v23, v24, v25, v26, v27, v28, v29, v30, v31, v32, v33, v34, v35) NLOHMANN_JSON_PASTE2(func, v1) NLOHMANN_JSON_PASTE35(func, v2, v3, v4, v5, v6, v7, v8, v9, v10, v11, v12, v13, v14, v15, v16, v17, v18, v19, v20, v21, v22, v23, v24, v25, v26, v27, v28, v29, v30, v31, v32, v33, v34, v35) +#define NLOHMANN_JSON_PASTE37(func, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v11, v12, v13, v14, v15, v16, v17, v18, v19, v20, v21, v22, v23, v24, v25, v26, v27, v28, v29, v30, v31, v32, v33, v34, v35, v36) NLOHMANN_JSON_PASTE2(func, v1) NLOHMANN_JSON_PASTE36(func, v2, v3, v4, v5, v6, v7, v8, v9, v10, v11, v12, v13, v14, v15, v16, v17, v18, v19, v20, v21, v22, v23, v24, v25, v26, v27, v28, v29, v30, v31, v32, v33, v34, v35, v36) +#define NLOHMANN_JSON_PASTE38(func, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v11, v12, v13, v14, v15, v16, v17, v18, v19, v20, v21, v22, v23, v24, v25, v26, v27, v28, v29, v30, v31, v32, v33, v34, v35, v36, v37) NLOHMANN_JSON_PASTE2(func, v1) NLOHMANN_JSON_PASTE37(func, v2, v3, v4, v5, v6, v7, v8, v9, v10, v11, v12, v13, v14, v15, v16, v17, v18, v19, v20, v21, v22, v23, v24, v25, v26, v27, v28, v29, v30, v31, v32, v33, v34, v35, v36, v37) +#define NLOHMANN_JSON_PASTE39(func, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v11, v12, v13, v14, v15, v16, v17, v18, v19, v20, v21, v22, v23, v24, v25, v26, v27, v28, v29, v30, v31, v32, v33, v34, v35, v36, v37, v38) NLOHMANN_JSON_PASTE2(func, v1) NLOHMANN_JSON_PASTE38(func, v2, v3, v4, v5, v6, v7, v8, v9, v10, v11, v12, v13, v14, v15, v16, v17, v18, v19, v20, v21, v22, v23, v24, v25, v26, v27, v28, v29, v30, v31, v32, v33, v34, v35, v36, v37, v38) +#define NLOHMANN_JSON_PASTE40(func, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v11, v12, v13, v14, v15, v16, v17, v18, v19, v20, v21, v22, v23, v24, v25, v26, v27, v28, v29, v30, v31, v32, v33, v34, v35, v36, v37, v38, v39) NLOHMANN_JSON_PASTE2(func, v1) NLOHMANN_JSON_PASTE39(func, v2, v3, v4, v5, v6, v7, v8, v9, v10, v11, v12, v13, v14, v15, v16, v17, v18, v19, v20, v21, v22, v23, v24, v25, v26, v27, v28, v29, v30, v31, v32, v33, v34, v35, v36, v37, v38, v39) +#define NLOHMANN_JSON_PASTE41(func, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v11, v12, v13, v14, v15, v16, v17, v18, v19, v20, v21, v22, v23, v24, v25, v26, v27, v28, v29, v30, v31, v32, v33, v34, v35, v36, v37, v38, v39, v40) NLOHMANN_JSON_PASTE2(func, v1) NLOHMANN_JSON_PASTE40(func, v2, v3, v4, v5, v6, v7, v8, v9, v10, v11, v12, v13, v14, v15, v16, v17, v18, v19, v20, v21, v22, v23, v24, v25, v26, v27, v28, v29, v30, v31, v32, v33, v34, v35, v36, v37, v38, v39, v40) +#define NLOHMANN_JSON_PASTE42(func, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v11, v12, v13, v14, v15, v16, v17, v18, v19, v20, v21, v22, v23, v24, v25, v26, v27, v28, v29, v30, v31, v32, v33, v34, v35, v36, v37, v38, v39, v40, v41) NLOHMANN_JSON_PASTE2(func, v1) NLOHMANN_JSON_PASTE41(func, v2, v3, v4, v5, v6, v7, v8, v9, v10, v11, v12, v13, v14, v15, v16, v17, v18, v19, v20, v21, v22, v23, v24, v25, v26, v27, v28, v29, v30, v31, v32, v33, v34, v35, v36, v37, v38, v39, v40, v41) +#define NLOHMANN_JSON_PASTE43(func, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v11, v12, v13, v14, v15, v16, v17, v18, v19, v20, v21, v22, v23, v24, v25, v26, v27, v28, v29, v30, v31, v32, v33, v34, v35, v36, v37, v38, v39, v40, v41, v42) NLOHMANN_JSON_PASTE2(func, v1) NLOHMANN_JSON_PASTE42(func, v2, v3, v4, v5, v6, v7, v8, v9, v10, v11, v12, v13, v14, v15, v16, v17, v18, v19, v20, v21, v22, v23, v24, v25, v26, v27, v28, v29, v30, v31, v32, v33, v34, v35, v36, v37, v38, v39, v40, v41, v42) +#define NLOHMANN_JSON_PASTE44(func, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v11, v12, v13, v14, v15, v16, v17, v18, v19, v20, v21, v22, v23, v24, v25, v26, v27, v28, v29, v30, v31, v32, v33, v34, v35, v36, v37, v38, v39, v40, v41, v42, v43) NLOHMANN_JSON_PASTE2(func, v1) NLOHMANN_JSON_PASTE43(func, v2, v3, v4, v5, v6, v7, v8, v9, v10, v11, v12, v13, v14, v15, v16, v17, v18, v19, v20, v21, v22, v23, v24, v25, v26, v27, v28, v29, v30, v31, v32, v33, v34, v35, v36, v37, v38, v39, v40, v41, v42, v43) +#define NLOHMANN_JSON_PASTE45(func, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v11, v12, v13, v14, v15, v16, v17, v18, v19, v20, v21, v22, v23, v24, v25, v26, v27, v28, v29, v30, v31, v32, v33, v34, v35, v36, v37, v38, v39, v40, v41, v42, v43, v44) NLOHMANN_JSON_PASTE2(func, v1) NLOHMANN_JSON_PASTE44(func, v2, v3, v4, v5, v6, v7, v8, v9, v10, v11, v12, v13, v14, v15, v16, v17, v18, v19, v20, v21, v22, v23, v24, v25, v26, v27, v28, v29, v30, v31, v32, v33, v34, v35, v36, v37, v38, v39, v40, v41, v42, v43, v44) +#define NLOHMANN_JSON_PASTE46(func, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v11, v12, v13, v14, v15, v16, v17, v18, v19, v20, v21, v22, v23, v24, v25, v26, v27, v28, v29, v30, v31, v32, v33, v34, v35, v36, v37, v38, v39, v40, v41, v42, v43, v44, v45) NLOHMANN_JSON_PASTE2(func, v1) NLOHMANN_JSON_PASTE45(func, v2, v3, v4, v5, v6, v7, v8, v9, v10, v11, v12, v13, v14, v15, v16, v17, v18, v19, v20, v21, v22, v23, v24, v25, v26, v27, v28, v29, v30, v31, v32, v33, v34, v35, v36, v37, v38, v39, v40, v41, v42, v43, v44, v45) +#define NLOHMANN_JSON_PASTE47(func, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v11, v12, v13, v14, v15, v16, v17, v18, v19, v20, v21, v22, v23, v24, v25, v26, v27, v28, v29, v30, v31, v32, v33, v34, v35, v36, v37, v38, v39, v40, v41, v42, v43, v44, v45, v46) NLOHMANN_JSON_PASTE2(func, v1) NLOHMANN_JSON_PASTE46(func, v2, v3, v4, v5, v6, v7, v8, v9, v10, v11, v12, v13, v14, v15, v16, v17, v18, v19, v20, v21, v22, v23, v24, v25, v26, v27, v28, v29, v30, v31, v32, v33, v34, v35, v36, v37, v38, v39, v40, v41, v42, v43, v44, v45, v46) +#define NLOHMANN_JSON_PASTE48(func, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v11, v12, v13, v14, v15, v16, v17, v18, v19, v20, v21, v22, v23, v24, v25, v26, v27, v28, v29, v30, v31, v32, v33, v34, v35, v36, v37, v38, v39, v40, v41, v42, v43, v44, v45, v46, v47) NLOHMANN_JSON_PASTE2(func, v1) NLOHMANN_JSON_PASTE47(func, v2, v3, v4, v5, v6, v7, v8, v9, v10, v11, v12, v13, v14, v15, v16, v17, v18, v19, v20, v21, v22, v23, v24, v25, v26, v27, v28, v29, v30, v31, v32, v33, v34, v35, v36, v37, v38, v39, v40, v41, v42, v43, v44, v45, v46, v47) +#define NLOHMANN_JSON_PASTE49(func, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v11, v12, v13, v14, v15, v16, v17, v18, v19, v20, v21, v22, v23, v24, v25, v26, v27, v28, v29, v30, v31, v32, v33, v34, v35, v36, v37, v38, v39, v40, v41, v42, v43, v44, v45, v46, v47, v48) NLOHMANN_JSON_PASTE2(func, v1) NLOHMANN_JSON_PASTE48(func, v2, v3, v4, v5, v6, v7, v8, v9, v10, v11, v12, v13, v14, v15, v16, v17, v18, v19, v20, v21, v22, v23, v24, v25, v26, v27, v28, v29, v30, v31, v32, v33, v34, v35, v36, v37, v38, v39, v40, v41, v42, v43, v44, v45, v46, v47, v48) +#define NLOHMANN_JSON_PASTE50(func, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v11, v12, v13, v14, v15, v16, v17, v18, v19, v20, v21, v22, v23, v24, v25, v26, v27, v28, v29, v30, v31, v32, v33, v34, v35, v36, v37, v38, v39, v40, v41, v42, v43, v44, v45, v46, v47, v48, v49) NLOHMANN_JSON_PASTE2(func, v1) NLOHMANN_JSON_PASTE49(func, v2, v3, v4, v5, v6, v7, v8, v9, v10, v11, v12, v13, v14, v15, v16, v17, v18, v19, v20, v21, v22, v23, v24, v25, v26, v27, v28, v29, v30, v31, v32, v33, v34, v35, v36, v37, v38, v39, v40, v41, v42, v43, v44, v45, v46, v47, v48, v49) +#define NLOHMANN_JSON_PASTE51(func, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v11, v12, v13, v14, v15, v16, v17, v18, v19, v20, v21, v22, v23, v24, v25, v26, v27, v28, v29, v30, v31, v32, v33, v34, v35, v36, v37, v38, v39, v40, v41, v42, v43, v44, v45, v46, v47, v48, v49, v50) NLOHMANN_JSON_PASTE2(func, v1) NLOHMANN_JSON_PASTE50(func, v2, v3, v4, v5, v6, v7, v8, v9, v10, v11, v12, v13, v14, v15, v16, v17, v18, v19, v20, v21, v22, v23, v24, v25, v26, v27, v28, v29, v30, v31, v32, v33, v34, v35, v36, v37, v38, v39, v40, v41, v42, v43, v44, v45, v46, v47, v48, v49, v50) +#define NLOHMANN_JSON_PASTE52(func, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v11, v12, v13, v14, v15, v16, v17, v18, v19, v20, v21, v22, v23, v24, v25, v26, v27, v28, v29, v30, v31, v32, v33, v34, v35, v36, v37, v38, v39, v40, v41, v42, v43, v44, v45, v46, v47, v48, v49, v50, v51) NLOHMANN_JSON_PASTE2(func, v1) NLOHMANN_JSON_PASTE51(func, v2, v3, v4, v5, v6, v7, v8, v9, v10, v11, v12, v13, v14, v15, v16, v17, v18, v19, v20, v21, v22, v23, v24, v25, v26, v27, v28, v29, v30, v31, v32, v33, v34, v35, v36, v37, v38, v39, v40, v41, v42, v43, v44, v45, v46, v47, v48, v49, v50, v51) +#define NLOHMANN_JSON_PASTE53(func, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v11, v12, v13, v14, v15, v16, v17, v18, v19, v20, v21, v22, v23, v24, v25, v26, v27, v28, v29, v30, v31, v32, v33, v34, v35, v36, v37, v38, v39, v40, v41, v42, v43, v44, v45, v46, v47, v48, v49, v50, v51, v52) NLOHMANN_JSON_PASTE2(func, v1) NLOHMANN_JSON_PASTE52(func, v2, v3, v4, v5, v6, v7, v8, v9, v10, v11, v12, v13, v14, v15, v16, v17, v18, v19, v20, v21, v22, v23, v24, v25, v26, v27, v28, v29, v30, v31, v32, v33, v34, v35, v36, v37, v38, v39, v40, v41, v42, v43, v44, v45, v46, v47, v48, v49, v50, v51, v52) +#define NLOHMANN_JSON_PASTE54(func, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v11, v12, v13, v14, v15, v16, v17, v18, v19, v20, v21, v22, v23, v24, v25, v26, v27, v28, v29, v30, v31, v32, v33, v34, v35, v36, v37, v38, v39, v40, v41, v42, v43, v44, v45, v46, v47, v48, v49, v50, v51, v52, v53) NLOHMANN_JSON_PASTE2(func, v1) NLOHMANN_JSON_PASTE53(func, v2, v3, v4, v5, v6, v7, v8, v9, v10, v11, v12, v13, v14, v15, v16, v17, v18, v19, v20, v21, v22, v23, v24, v25, v26, v27, v28, v29, v30, v31, v32, v33, v34, v35, v36, v37, v38, v39, v40, v41, v42, v43, v44, v45, v46, v47, v48, v49, v50, v51, v52, v53) +#define NLOHMANN_JSON_PASTE55(func, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v11, v12, v13, v14, v15, v16, v17, v18, v19, v20, v21, v22, v23, v24, v25, v26, v27, v28, v29, v30, v31, v32, v33, v34, v35, v36, v37, v38, v39, v40, v41, v42, v43, v44, v45, v46, v47, v48, v49, v50, v51, v52, v53, v54) NLOHMANN_JSON_PASTE2(func, v1) NLOHMANN_JSON_PASTE54(func, v2, v3, v4, v5, v6, v7, v8, v9, v10, v11, v12, v13, v14, v15, v16, v17, v18, v19, v20, v21, v22, v23, v24, v25, v26, v27, v28, v29, v30, v31, v32, v33, v34, v35, v36, v37, v38, v39, v40, v41, v42, v43, v44, v45, v46, v47, v48, v49, v50, v51, v52, v53, v54) +#define NLOHMANN_JSON_PASTE56(func, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v11, v12, v13, v14, v15, v16, v17, v18, v19, v20, v21, v22, v23, v24, v25, v26, v27, v28, v29, v30, v31, v32, v33, v34, v35, v36, v37, v38, v39, v40, v41, v42, v43, v44, v45, v46, v47, v48, v49, v50, v51, v52, v53, v54, v55) NLOHMANN_JSON_PASTE2(func, v1) NLOHMANN_JSON_PASTE55(func, v2, v3, v4, v5, v6, v7, v8, v9, v10, v11, v12, v13, v14, v15, v16, v17, v18, v19, v20, v21, v22, v23, v24, v25, v26, v27, v28, v29, v30, v31, v32, v33, v34, v35, v36, v37, v38, v39, v40, v41, v42, v43, v44, v45, v46, v47, v48, v49, v50, v51, v52, v53, v54, v55) +#define NLOHMANN_JSON_PASTE57(func, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v11, v12, v13, v14, v15, v16, v17, v18, v19, v20, v21, v22, v23, v24, v25, v26, v27, v28, v29, v30, v31, v32, v33, v34, v35, v36, v37, v38, v39, v40, v41, v42, v43, v44, v45, v46, v47, v48, v49, v50, v51, v52, v53, v54, v55, v56) NLOHMANN_JSON_PASTE2(func, v1) NLOHMANN_JSON_PASTE56(func, v2, v3, v4, v5, v6, v7, v8, v9, v10, v11, v12, v13, v14, v15, v16, v17, v18, v19, v20, v21, v22, v23, v24, v25, v26, v27, v28, v29, v30, v31, v32, v33, v34, v35, v36, v37, v38, v39, v40, v41, v42, v43, v44, v45, v46, v47, v48, v49, v50, v51, v52, v53, v54, v55, v56) +#define NLOHMANN_JSON_PASTE58(func, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v11, v12, v13, v14, v15, v16, v17, v18, v19, v20, v21, v22, v23, v24, v25, v26, v27, v28, v29, v30, v31, v32, v33, v34, v35, v36, v37, v38, v39, v40, v41, v42, v43, v44, v45, v46, v47, v48, v49, v50, v51, v52, v53, v54, v55, v56, v57) NLOHMANN_JSON_PASTE2(func, v1) NLOHMANN_JSON_PASTE57(func, v2, v3, v4, v5, v6, v7, v8, v9, v10, v11, v12, v13, v14, v15, v16, v17, v18, v19, v20, v21, v22, v23, v24, v25, v26, v27, v28, v29, v30, v31, v32, v33, v34, v35, v36, v37, v38, v39, v40, v41, v42, v43, v44, v45, v46, v47, v48, v49, v50, v51, v52, v53, v54, v55, v56, v57) +#define NLOHMANN_JSON_PASTE59(func, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v11, v12, v13, v14, v15, v16, v17, v18, v19, v20, v21, v22, v23, v24, v25, v26, v27, v28, v29, v30, v31, v32, v33, v34, v35, v36, v37, v38, v39, v40, v41, v42, v43, v44, v45, v46, v47, v48, v49, v50, v51, v52, v53, v54, v55, v56, v57, v58) NLOHMANN_JSON_PASTE2(func, v1) NLOHMANN_JSON_PASTE58(func, v2, v3, v4, v5, v6, v7, v8, v9, v10, v11, v12, v13, v14, v15, v16, v17, v18, v19, v20, v21, v22, v23, v24, v25, v26, v27, v28, v29, v30, v31, v32, v33, v34, v35, v36, v37, v38, v39, v40, v41, v42, v43, v44, v45, v46, v47, v48, v49, v50, v51, v52, v53, v54, v55, v56, v57, v58) +#define NLOHMANN_JSON_PASTE60(func, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v11, v12, v13, v14, v15, v16, v17, v18, v19, v20, v21, v22, v23, v24, v25, v26, v27, v28, v29, v30, v31, v32, v33, v34, v35, v36, v37, v38, v39, v40, v41, v42, v43, v44, v45, v46, v47, v48, v49, v50, v51, v52, v53, v54, v55, v56, v57, v58, v59) NLOHMANN_JSON_PASTE2(func, v1) NLOHMANN_JSON_PASTE59(func, v2, v3, v4, v5, v6, v7, v8, v9, v10, v11, v12, v13, v14, v15, v16, v17, v18, v19, v20, v21, v22, v23, v24, v25, v26, v27, v28, v29, v30, v31, v32, v33, v34, v35, v36, v37, v38, v39, v40, v41, v42, v43, v44, v45, v46, v47, v48, v49, v50, v51, v52, v53, v54, v55, v56, v57, v58, v59) +#define NLOHMANN_JSON_PASTE61(func, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v11, v12, v13, v14, v15, v16, v17, v18, v19, v20, v21, v22, v23, v24, v25, v26, v27, v28, v29, v30, v31, v32, v33, v34, v35, v36, v37, v38, v39, v40, v41, v42, v43, v44, v45, v46, v47, v48, v49, v50, v51, v52, v53, v54, v55, v56, v57, v58, v59, v60) NLOHMANN_JSON_PASTE2(func, v1) NLOHMANN_JSON_PASTE60(func, v2, v3, v4, v5, v6, v7, v8, v9, v10, v11, v12, v13, v14, v15, v16, v17, v18, v19, v20, v21, v22, v23, v24, v25, v26, v27, v28, v29, v30, v31, v32, v33, v34, v35, v36, v37, v38, v39, v40, v41, v42, v43, v44, v45, v46, v47, v48, v49, v50, v51, v52, v53, v54, v55, v56, v57, v58, v59, v60) +#define NLOHMANN_JSON_PASTE62(func, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v11, v12, v13, v14, v15, v16, v17, v18, v19, v20, v21, v22, v23, v24, v25, v26, v27, v28, v29, v30, v31, v32, v33, v34, v35, v36, v37, v38, v39, v40, v41, v42, v43, v44, v45, v46, v47, v48, v49, v50, v51, v52, v53, v54, v55, v56, v57, v58, v59, v60, v61) NLOHMANN_JSON_PASTE2(func, v1) NLOHMANN_JSON_PASTE61(func, v2, v3, v4, v5, v6, v7, v8, v9, v10, v11, v12, v13, v14, v15, v16, v17, v18, v19, v20, v21, v22, v23, v24, v25, v26, v27, v28, v29, v30, v31, v32, v33, v34, v35, v36, v37, v38, v39, v40, v41, v42, v43, v44, v45, v46, v47, v48, v49, v50, v51, v52, v53, v54, v55, v56, v57, v58, v59, v60, v61) +#define NLOHMANN_JSON_PASTE63(func, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v11, v12, v13, v14, v15, v16, v17, v18, v19, v20, v21, v22, v23, v24, v25, v26, v27, v28, v29, v30, v31, v32, v33, v34, v35, v36, v37, v38, v39, v40, v41, v42, v43, v44, v45, v46, v47, v48, v49, v50, v51, v52, v53, v54, v55, v56, v57, v58, v59, v60, v61, v62) NLOHMANN_JSON_PASTE2(func, v1) NLOHMANN_JSON_PASTE62(func, v2, v3, v4, v5, v6, v7, v8, v9, v10, v11, v12, v13, v14, v15, v16, v17, v18, v19, v20, v21, v22, v23, v24, v25, v26, v27, v28, v29, v30, v31, v32, v33, v34, v35, v36, v37, v38, v39, v40, v41, v42, v43, v44, v45, v46, v47, v48, v49, v50, v51, v52, v53, v54, v55, v56, v57, v58, v59, v60, v61, v62) +#define NLOHMANN_JSON_PASTE64(func, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10, v11, v12, v13, v14, v15, v16, v17, v18, v19, v20, v21, v22, v23, v24, v25, v26, v27, v28, v29, v30, v31, v32, v33, v34, v35, v36, v37, v38, v39, v40, v41, v42, v43, v44, v45, v46, v47, v48, v49, v50, v51, v52, v53, v54, v55, v56, v57, v58, v59, v60, v61, v62, v63) NLOHMANN_JSON_PASTE2(func, v1) NLOHMANN_JSON_PASTE63(func, v2, v3, v4, v5, v6, v7, v8, v9, v10, v11, v12, v13, v14, v15, v16, v17, v18, v19, v20, v21, v22, v23, v24, v25, v26, v27, v28, v29, v30, v31, v32, v33, v34, v35, v36, v37, v38, v39, v40, v41, v42, v43, v44, v45, v46, v47, v48, v49, v50, v51, v52, v53, v54, v55, v56, v57, v58, v59, v60, v61, v62, v63) + +#define NLOHMANN_JSON_TO(v1) nlohmann_json_j[#v1] = nlohmann_json_t.v1; +#define NLOHMANN_JSON_FROM(v1) nlohmann_json_j.at(#v1).get_to(nlohmann_json_t.v1); +#define NLOHMANN_JSON_FROM_WITH_DEFAULT(v1) nlohmann_json_t.v1 = nlohmann_json_j.value(#v1, nlohmann_json_default_obj.v1); + +/*! +@brief macro +@def NLOHMANN_DEFINE_TYPE_INTRUSIVE +@since version 3.9.0 +*/ +#define NLOHMANN_DEFINE_TYPE_INTRUSIVE(Type, ...) \ + friend void to_json(nlohmann::json& nlohmann_json_j, const Type& nlohmann_json_t) { NLOHMANN_JSON_EXPAND(NLOHMANN_JSON_PASTE(NLOHMANN_JSON_TO, __VA_ARGS__)) } \ + friend void from_json(const nlohmann::json& nlohmann_json_j, Type& nlohmann_json_t) { NLOHMANN_JSON_EXPAND(NLOHMANN_JSON_PASTE(NLOHMANN_JSON_FROM, __VA_ARGS__)) } + +#define NLOHMANN_DEFINE_TYPE_INTRUSIVE_WITH_DEFAULT(Type, ...) \ + friend void to_json(nlohmann::json& nlohmann_json_j, const Type& nlohmann_json_t) { NLOHMANN_JSON_EXPAND(NLOHMANN_JSON_PASTE(NLOHMANN_JSON_TO, __VA_ARGS__)) } \ + friend void from_json(const nlohmann::json& nlohmann_json_j, Type& nlohmann_json_t) { const Type nlohmann_json_default_obj{}; NLOHMANN_JSON_EXPAND(NLOHMANN_JSON_PASTE(NLOHMANN_JSON_FROM_WITH_DEFAULT, __VA_ARGS__)) } + +#define NLOHMANN_DEFINE_TYPE_INTRUSIVE_ONLY_SERIALIZE(Type, ...) \ + friend void to_json(nlohmann::json& nlohmann_json_j, const Type& nlohmann_json_t) { NLOHMANN_JSON_EXPAND(NLOHMANN_JSON_PASTE(NLOHMANN_JSON_TO, __VA_ARGS__)) } + +/*! +@brief macro +@def NLOHMANN_DEFINE_TYPE_NON_INTRUSIVE +@since version 3.9.0 +*/ +#define NLOHMANN_DEFINE_TYPE_NON_INTRUSIVE(Type, ...) \ + inline void to_json(nlohmann::json& nlohmann_json_j, const Type& nlohmann_json_t) { NLOHMANN_JSON_EXPAND(NLOHMANN_JSON_PASTE(NLOHMANN_JSON_TO, __VA_ARGS__)) } \ + inline void from_json(const nlohmann::json& nlohmann_json_j, Type& nlohmann_json_t) { NLOHMANN_JSON_EXPAND(NLOHMANN_JSON_PASTE(NLOHMANN_JSON_FROM, __VA_ARGS__)) } + +#define NLOHMANN_DEFINE_TYPE_NON_INTRUSIVE_ONLY_SERIALIZE(Type, ...) \ + inline void to_json(nlohmann::json& nlohmann_json_j, const Type& nlohmann_json_t) { NLOHMANN_JSON_EXPAND(NLOHMANN_JSON_PASTE(NLOHMANN_JSON_TO, __VA_ARGS__)) } + +#define NLOHMANN_DEFINE_TYPE_NON_INTRUSIVE_WITH_DEFAULT(Type, ...) \ + inline void to_json(nlohmann::json& nlohmann_json_j, const Type& nlohmann_json_t) { NLOHMANN_JSON_EXPAND(NLOHMANN_JSON_PASTE(NLOHMANN_JSON_TO, __VA_ARGS__)) } \ + inline void from_json(const nlohmann::json& nlohmann_json_j, Type& nlohmann_json_t) { const Type nlohmann_json_default_obj{}; NLOHMANN_JSON_EXPAND(NLOHMANN_JSON_PASTE(NLOHMANN_JSON_FROM_WITH_DEFAULT, __VA_ARGS__)) } + +// inspired from https://stackoverflow.com/a/26745591 +// allows to call any std function as if (e.g. with begin): +// using std::begin; begin(x); +// +// it allows using the detected idiom to retrieve the return type +// of such an expression +#define NLOHMANN_CAN_CALL_STD_FUNC_IMPL(std_name) \ + namespace detail { \ + using std::std_name; \ + \ + template \ + using result_of_##std_name = decltype(std_name(std::declval()...)); \ + } \ + \ + namespace detail2 { \ + struct std_name##_tag \ + { \ + }; \ + \ + template \ + std_name##_tag std_name(T&&...); \ + \ + template \ + using result_of_##std_name = decltype(std_name(std::declval()...)); \ + \ + template \ + struct would_call_std_##std_name \ + { \ + static constexpr auto const value = ::nlohmann::detail:: \ + is_detected_exact::value; \ + }; \ + } /* namespace detail2 */ \ + \ + template \ + struct would_call_std_##std_name : detail2::would_call_std_##std_name \ + { \ + } + +#ifndef JSON_USE_IMPLICIT_CONVERSIONS + #define JSON_USE_IMPLICIT_CONVERSIONS 1 +#endif + +#if JSON_USE_IMPLICIT_CONVERSIONS + #define JSON_EXPLICIT +#else + #define JSON_EXPLICIT explicit +#endif + +#ifndef JSON_DISABLE_ENUM_SERIALIZATION + #define JSON_DISABLE_ENUM_SERIALIZATION 0 +#endif + +#ifndef JSON_USE_GLOBAL_UDLS + #define JSON_USE_GLOBAL_UDLS 1 +#endif diff --git a/include/nlohmann/detail/macro_unscope.hpp b/include/nlohmann/detail/macro_unscope.hpp new file mode 100644 index 00000000..c6620d1e --- /dev/null +++ b/include/nlohmann/detail/macro_unscope.hpp @@ -0,0 +1,45 @@ +// __ _____ _____ _____ +// __| | __| | | | JSON for Modern C++ +// | | |__ | | | | | | version 3.11.3 +// |_____|_____|_____|_|___| https://github.com/nlohmann/json +// +// SPDX-FileCopyrightText: 2013-2023 Niels Lohmann +// SPDX-License-Identifier: MIT + +#pragma once + +// restore clang diagnostic settings +#if defined(__clang__) + #pragma clang diagnostic pop +#endif + +// clean up +#undef JSON_ASSERT +#undef JSON_INTERNAL_CATCH +#undef JSON_THROW +#undef JSON_PRIVATE_UNLESS_TESTED +#undef NLOHMANN_BASIC_JSON_TPL_DECLARATION +#undef NLOHMANN_BASIC_JSON_TPL +#undef JSON_EXPLICIT +#undef NLOHMANN_CAN_CALL_STD_FUNC_IMPL +#undef JSON_INLINE_VARIABLE +#undef JSON_NO_UNIQUE_ADDRESS +#undef JSON_DISABLE_ENUM_SERIALIZATION +#undef JSON_USE_GLOBAL_UDLS + +#ifndef JSON_TEST_KEEP_MACROS + #undef JSON_CATCH + #undef JSON_TRY + #undef JSON_HAS_CPP_11 + #undef JSON_HAS_CPP_14 + #undef JSON_HAS_CPP_17 + #undef JSON_HAS_CPP_20 + #undef JSON_HAS_FILESYSTEM + #undef JSON_HAS_EXPERIMENTAL_FILESYSTEM + #undef JSON_HAS_THREE_WAY_COMPARISON + #undef JSON_HAS_RANGES + #undef JSON_HAS_STATIC_RTTI + #undef JSON_USE_LEGACY_DISCARDED_VALUE_COMPARISON +#endif + +#include diff --git a/include/nlohmann/detail/meta/call_std/begin.hpp b/include/nlohmann/detail/meta/call_std/begin.hpp new file mode 100644 index 00000000..364cc89d --- /dev/null +++ b/include/nlohmann/detail/meta/call_std/begin.hpp @@ -0,0 +1,17 @@ +// __ _____ _____ _____ +// __| | __| | | | JSON for Modern C++ +// | | |__ | | | | | | version 3.11.3 +// |_____|_____|_____|_|___| https://github.com/nlohmann/json +// +// SPDX-FileCopyrightText: 2013-2023 Niels Lohmann +// SPDX-License-Identifier: MIT + +#pragma once + +#include + +NLOHMANN_JSON_NAMESPACE_BEGIN + +NLOHMANN_CAN_CALL_STD_FUNC_IMPL(begin); + +NLOHMANN_JSON_NAMESPACE_END diff --git a/include/nlohmann/detail/meta/call_std/end.hpp b/include/nlohmann/detail/meta/call_std/end.hpp new file mode 100644 index 00000000..463f0706 --- /dev/null +++ b/include/nlohmann/detail/meta/call_std/end.hpp @@ -0,0 +1,17 @@ +// __ _____ _____ _____ +// __| | __| | | | JSON for Modern C++ +// | | |__ | | | | | | version 3.11.3 +// |_____|_____|_____|_|___| https://github.com/nlohmann/json +// +// SPDX-FileCopyrightText: 2013-2023 Niels Lohmann +// SPDX-License-Identifier: MIT + +#pragma once + +#include + +NLOHMANN_JSON_NAMESPACE_BEGIN + +NLOHMANN_CAN_CALL_STD_FUNC_IMPL(end); + +NLOHMANN_JSON_NAMESPACE_END diff --git a/include/nlohmann/detail/meta/cpp_future.hpp b/include/nlohmann/detail/meta/cpp_future.hpp new file mode 100644 index 00000000..412b5aa7 --- /dev/null +++ b/include/nlohmann/detail/meta/cpp_future.hpp @@ -0,0 +1,171 @@ +// __ _____ _____ _____ +// __| | __| | | | JSON for Modern C++ +// | | |__ | | | | | | version 3.11.3 +// |_____|_____|_____|_|___| https://github.com/nlohmann/json +// +// SPDX-FileCopyrightText: 2013-2023 Niels Lohmann +// SPDX-FileCopyrightText: 2018 The Abseil Authors +// SPDX-License-Identifier: MIT + +#pragma once + +#include // array +#include // size_t +#include // conditional, enable_if, false_type, integral_constant, is_constructible, is_integral, is_same, remove_cv, remove_reference, true_type +#include // index_sequence, make_index_sequence, index_sequence_for + +#include + +NLOHMANN_JSON_NAMESPACE_BEGIN +namespace detail +{ + +template +using uncvref_t = typename std::remove_cv::type>::type; + +#ifdef JSON_HAS_CPP_14 + +// the following utilities are natively available in C++14 +using std::enable_if_t; +using std::index_sequence; +using std::make_index_sequence; +using std::index_sequence_for; + +#else + +// alias templates to reduce boilerplate +template +using enable_if_t = typename std::enable_if::type; + +// The following code is taken from https://github.com/abseil/abseil-cpp/blob/10cb35e459f5ecca5b2ff107635da0bfa41011b4/absl/utility/utility.h +// which is part of Google Abseil (https://github.com/abseil/abseil-cpp), licensed under the Apache License 2.0. + +//// START OF CODE FROM GOOGLE ABSEIL + +// integer_sequence +// +// Class template representing a compile-time integer sequence. An instantiation +// of `integer_sequence` has a sequence of integers encoded in its +// type through its template arguments (which is a common need when +// working with C++11 variadic templates). `absl::integer_sequence` is designed +// to be a drop-in replacement for C++14's `std::integer_sequence`. +// +// Example: +// +// template< class T, T... Ints > +// void user_function(integer_sequence); +// +// int main() +// { +// // user_function's `T` will be deduced to `int` and `Ints...` +// // will be deduced to `0, 1, 2, 3, 4`. +// user_function(make_integer_sequence()); +// } +template +struct integer_sequence +{ + using value_type = T; + static constexpr std::size_t size() noexcept + { + return sizeof...(Ints); + } +}; + +// index_sequence +// +// A helper template for an `integer_sequence` of `size_t`, +// `absl::index_sequence` is designed to be a drop-in replacement for C++14's +// `std::index_sequence`. +template +using index_sequence = integer_sequence; + +namespace utility_internal +{ + +template +struct Extend; + +// Note that SeqSize == sizeof...(Ints). It's passed explicitly for efficiency. +template +struct Extend, SeqSize, 0> +{ + using type = integer_sequence < T, Ints..., (Ints + SeqSize)... >; +}; + +template +struct Extend, SeqSize, 1> +{ + using type = integer_sequence < T, Ints..., (Ints + SeqSize)..., 2 * SeqSize >; +}; + +// Recursion helper for 'make_integer_sequence'. +// 'Gen::type' is an alias for 'integer_sequence'. +template +struct Gen +{ + using type = + typename Extend < typename Gen < T, N / 2 >::type, N / 2, N % 2 >::type; +}; + +template +struct Gen +{ + using type = integer_sequence; +}; + +} // namespace utility_internal + +// Compile-time sequences of integers + +// make_integer_sequence +// +// This template alias is equivalent to +// `integer_sequence`, and is designed to be a drop-in +// replacement for C++14's `std::make_integer_sequence`. +template +using make_integer_sequence = typename utility_internal::Gen::type; + +// make_index_sequence +// +// This template alias is equivalent to `index_sequence<0, 1, ..., N-1>`, +// and is designed to be a drop-in replacement for C++14's +// `std::make_index_sequence`. +template +using make_index_sequence = make_integer_sequence; + +// index_sequence_for +// +// Converts a typename pack into an index sequence of the same length, and +// is designed to be a drop-in replacement for C++14's +// `std::index_sequence_for()` +template +using index_sequence_for = make_index_sequence; + +//// END OF CODE FROM GOOGLE ABSEIL + +#endif + +// dispatch utility (taken from ranges-v3) +template struct priority_tag : priority_tag < N - 1 > {}; +template<> struct priority_tag<0> {}; + +// taken from ranges-v3 +template +struct static_const +{ + static JSON_INLINE_VARIABLE constexpr T value{}; +}; + +#ifndef JSON_HAS_CPP_17 + template + constexpr T static_const::value; +#endif + +template +inline constexpr std::array make_array(Args&& ... args) +{ + return std::array {{static_cast(std::forward(args))...}}; +} + +} // namespace detail +NLOHMANN_JSON_NAMESPACE_END diff --git a/include/nlohmann/detail/meta/detected.hpp b/include/nlohmann/detail/meta/detected.hpp new file mode 100644 index 00000000..1db9bf9c --- /dev/null +++ b/include/nlohmann/detail/meta/detected.hpp @@ -0,0 +1,70 @@ +// __ _____ _____ _____ +// __| | __| | | | JSON for Modern C++ +// | | |__ | | | | | | version 3.11.3 +// |_____|_____|_____|_|___| https://github.com/nlohmann/json +// +// SPDX-FileCopyrightText: 2013-2023 Niels Lohmann +// SPDX-License-Identifier: MIT + +#pragma once + +#include + +#include + +NLOHMANN_JSON_NAMESPACE_BEGIN +namespace detail +{ + +// https://en.cppreference.com/w/cpp/experimental/is_detected +struct nonesuch +{ + nonesuch() = delete; + ~nonesuch() = delete; + nonesuch(nonesuch const&) = delete; + nonesuch(nonesuch const&&) = delete; + void operator=(nonesuch const&) = delete; + void operator=(nonesuch&&) = delete; +}; + +template class Op, + class... Args> +struct detector +{ + using value_t = std::false_type; + using type = Default; +}; + +template class Op, class... Args> +struct detector>, Op, Args...> +{ + using value_t = std::true_type; + using type = Op; +}; + +template class Op, class... Args> +using is_detected = typename detector::value_t; + +template class Op, class... Args> +struct is_detected_lazy : is_detected { }; + +template class Op, class... Args> +using detected_t = typename detector::type; + +template class Op, class... Args> +using detected_or = detector; + +template class Op, class... Args> +using detected_or_t = typename detected_or::type; + +template class Op, class... Args> +using is_detected_exact = std::is_same>; + +template class Op, class... Args> +using is_detected_convertible = + std::is_convertible, To>; + +} // namespace detail +NLOHMANN_JSON_NAMESPACE_END diff --git a/include/nlohmann/detail/meta/identity_tag.hpp b/include/nlohmann/detail/meta/identity_tag.hpp new file mode 100644 index 00000000..269deffb --- /dev/null +++ b/include/nlohmann/detail/meta/identity_tag.hpp @@ -0,0 +1,21 @@ +// __ _____ _____ _____ +// __| | __| | | | JSON for Modern C++ +// | | |__ | | | | | | version 3.11.3 +// |_____|_____|_____|_|___| https://github.com/nlohmann/json +// +// SPDX-FileCopyrightText: 2013-2023 Niels Lohmann +// SPDX-License-Identifier: MIT + +#pragma once + +#include + +NLOHMANN_JSON_NAMESPACE_BEGIN +namespace detail +{ + +// dispatching helper struct +template struct identity_tag {}; + +} // namespace detail +NLOHMANN_JSON_NAMESPACE_END diff --git a/include/nlohmann/detail/meta/is_sax.hpp b/include/nlohmann/detail/meta/is_sax.hpp new file mode 100644 index 00000000..4e02bc14 --- /dev/null +++ b/include/nlohmann/detail/meta/is_sax.hpp @@ -0,0 +1,159 @@ +// __ _____ _____ _____ +// __| | __| | | | JSON for Modern C++ +// | | |__ | | | | | | version 3.11.3 +// |_____|_____|_____|_|___| https://github.com/nlohmann/json +// +// SPDX-FileCopyrightText: 2013-2023 Niels Lohmann +// SPDX-License-Identifier: MIT + +#pragma once + +#include // size_t +#include // declval +#include // string + +#include +#include +#include + +NLOHMANN_JSON_NAMESPACE_BEGIN +namespace detail +{ + +template +using null_function_t = decltype(std::declval().null()); + +template +using boolean_function_t = + decltype(std::declval().boolean(std::declval())); + +template +using number_integer_function_t = + decltype(std::declval().number_integer(std::declval())); + +template +using number_unsigned_function_t = + decltype(std::declval().number_unsigned(std::declval())); + +template +using number_float_function_t = decltype(std::declval().number_float( + std::declval(), std::declval())); + +template +using string_function_t = + decltype(std::declval().string(std::declval())); + +template +using binary_function_t = + decltype(std::declval().binary(std::declval())); + +template +using start_object_function_t = + decltype(std::declval().start_object(std::declval())); + +template +using key_function_t = + decltype(std::declval().key(std::declval())); + +template +using end_object_function_t = decltype(std::declval().end_object()); + +template +using start_array_function_t = + decltype(std::declval().start_array(std::declval())); + +template +using end_array_function_t = decltype(std::declval().end_array()); + +template +using parse_error_function_t = decltype(std::declval().parse_error( + std::declval(), std::declval(), + std::declval())); + +template +struct is_sax +{ + private: + static_assert(is_basic_json::value, + "BasicJsonType must be of type basic_json<...>"); + + using number_integer_t = typename BasicJsonType::number_integer_t; + using number_unsigned_t = typename BasicJsonType::number_unsigned_t; + using number_float_t = typename BasicJsonType::number_float_t; + using string_t = typename BasicJsonType::string_t; + using binary_t = typename BasicJsonType::binary_t; + using exception_t = typename BasicJsonType::exception; + + public: + static constexpr bool value = + is_detected_exact::value && + is_detected_exact::value && + is_detected_exact::value && + is_detected_exact::value && + is_detected_exact::value && + is_detected_exact::value && + is_detected_exact::value && + is_detected_exact::value && + is_detected_exact::value && + is_detected_exact::value && + is_detected_exact::value && + is_detected_exact::value && + is_detected_exact::value; +}; + +template +struct is_sax_static_asserts +{ + private: + static_assert(is_basic_json::value, + "BasicJsonType must be of type basic_json<...>"); + + using number_integer_t = typename BasicJsonType::number_integer_t; + using number_unsigned_t = typename BasicJsonType::number_unsigned_t; + using number_float_t = typename BasicJsonType::number_float_t; + using string_t = typename BasicJsonType::string_t; + using binary_t = typename BasicJsonType::binary_t; + using exception_t = typename BasicJsonType::exception; + + public: + static_assert(is_detected_exact::value, + "Missing/invalid function: bool null()"); + static_assert(is_detected_exact::value, + "Missing/invalid function: bool boolean(bool)"); + static_assert(is_detected_exact::value, + "Missing/invalid function: bool boolean(bool)"); + static_assert( + is_detected_exact::value, + "Missing/invalid function: bool number_integer(number_integer_t)"); + static_assert( + is_detected_exact::value, + "Missing/invalid function: bool number_unsigned(number_unsigned_t)"); + static_assert(is_detected_exact::value, + "Missing/invalid function: bool number_float(number_float_t, const string_t&)"); + static_assert( + is_detected_exact::value, + "Missing/invalid function: bool string(string_t&)"); + static_assert( + is_detected_exact::value, + "Missing/invalid function: bool binary(binary_t&)"); + static_assert(is_detected_exact::value, + "Missing/invalid function: bool start_object(std::size_t)"); + static_assert(is_detected_exact::value, + "Missing/invalid function: bool key(string_t&)"); + static_assert(is_detected_exact::value, + "Missing/invalid function: bool end_object()"); + static_assert(is_detected_exact::value, + "Missing/invalid function: bool start_array(std::size_t)"); + static_assert(is_detected_exact::value, + "Missing/invalid function: bool end_array()"); + static_assert( + is_detected_exact::value, + "Missing/invalid function: bool parse_error(std::size_t, const " + "std::string&, const exception&)"); +}; + +} // namespace detail +NLOHMANN_JSON_NAMESPACE_END diff --git a/include/nlohmann/detail/meta/std_fs.hpp b/include/nlohmann/detail/meta/std_fs.hpp new file mode 100644 index 00000000..fd180396 --- /dev/null +++ b/include/nlohmann/detail/meta/std_fs.hpp @@ -0,0 +1,29 @@ +// __ _____ _____ _____ +// __| | __| | | | JSON for Modern C++ +// | | |__ | | | | | | version 3.11.3 +// |_____|_____|_____|_|___| https://github.com/nlohmann/json +// +// SPDX-FileCopyrightText: 2013-2023 Niels Lohmann +// SPDX-License-Identifier: MIT + +#pragma once + +#include + +#if JSON_HAS_EXPERIMENTAL_FILESYSTEM +#include +NLOHMANN_JSON_NAMESPACE_BEGIN +namespace detail +{ +namespace std_fs = std::experimental::filesystem; +} // namespace detail +NLOHMANN_JSON_NAMESPACE_END +#elif JSON_HAS_FILESYSTEM +#include +NLOHMANN_JSON_NAMESPACE_BEGIN +namespace detail +{ +namespace std_fs = std::filesystem; +} // namespace detail +NLOHMANN_JSON_NAMESPACE_END +#endif diff --git a/include/nlohmann/detail/meta/type_traits.hpp b/include/nlohmann/detail/meta/type_traits.hpp new file mode 100644 index 00000000..e1b000dc --- /dev/null +++ b/include/nlohmann/detail/meta/type_traits.hpp @@ -0,0 +1,795 @@ +// __ _____ _____ _____ +// __| | __| | | | JSON for Modern C++ +// | | |__ | | | | | | version 3.11.3 +// |_____|_____|_____|_|___| https://github.com/nlohmann/json +// +// SPDX-FileCopyrightText: 2013-2023 Niels Lohmann +// SPDX-License-Identifier: MIT + +#pragma once + +#include // numeric_limits +#include // false_type, is_constructible, is_integral, is_same, true_type +#include // declval +#include // tuple +#include // char_traits + +#include +#include +#include +#include +#include +#include +#include + +NLOHMANN_JSON_NAMESPACE_BEGIN +/*! +@brief detail namespace with internal helper functions + +This namespace collects functions that should not be exposed, +implementations of some @ref basic_json methods, and meta-programming helpers. + +@since version 2.1.0 +*/ +namespace detail +{ + +///////////// +// helpers // +///////////// + +// Note to maintainers: +// +// Every trait in this file expects a non CV-qualified type. +// The only exceptions are in the 'aliases for detected' section +// (i.e. those of the form: decltype(T::member_function(std::declval()))) +// +// In this case, T has to be properly CV-qualified to constraint the function arguments +// (e.g. to_json(BasicJsonType&, const T&)) + +template struct is_basic_json : std::false_type {}; + +NLOHMANN_BASIC_JSON_TPL_DECLARATION +struct is_basic_json : std::true_type {}; + +// used by exceptions create() member functions +// true_type for pointer to possibly cv-qualified basic_json or std::nullptr_t +// false_type otherwise +template +struct is_basic_json_context : + std::integral_constant < bool, + is_basic_json::type>::type>::value + || std::is_same::value > +{}; + +////////////////////// +// json_ref helpers // +////////////////////// + +template +class json_ref; + +template +struct is_json_ref : std::false_type {}; + +template +struct is_json_ref> : std::true_type {}; + +////////////////////////// +// aliases for detected // +////////////////////////// + +template +using mapped_type_t = typename T::mapped_type; + +template +using key_type_t = typename T::key_type; + +template +using value_type_t = typename T::value_type; + +template +using difference_type_t = typename T::difference_type; + +template +using pointer_t = typename T::pointer; + +template +using reference_t = typename T::reference; + +template +using iterator_category_t = typename T::iterator_category; + +template +using to_json_function = decltype(T::to_json(std::declval()...)); + +template +using from_json_function = decltype(T::from_json(std::declval()...)); + +template +using get_template_function = decltype(std::declval().template get()); + +// trait checking if JSONSerializer::from_json(json const&, udt&) exists +template +struct has_from_json : std::false_type {}; + +// trait checking if j.get is valid +// use this trait instead of std::is_constructible or std::is_convertible, +// both rely on, or make use of implicit conversions, and thus fail when T +// has several constructors/operator= (see https://github.com/nlohmann/json/issues/958) +template +struct is_getable +{ + static constexpr bool value = is_detected::value; +}; + +template +struct has_from_json < BasicJsonType, T, enable_if_t < !is_basic_json::value >> +{ + using serializer = typename BasicJsonType::template json_serializer; + + static constexpr bool value = + is_detected_exact::value; +}; + +// This trait checks if JSONSerializer::from_json(json const&) exists +// this overload is used for non-default-constructible user-defined-types +template +struct has_non_default_from_json : std::false_type {}; + +template +struct has_non_default_from_json < BasicJsonType, T, enable_if_t < !is_basic_json::value >> +{ + using serializer = typename BasicJsonType::template json_serializer; + + static constexpr bool value = + is_detected_exact::value; +}; + +// This trait checks if BasicJsonType::json_serializer::to_json exists +// Do not evaluate the trait when T is a basic_json type, to avoid template instantiation infinite recursion. +template +struct has_to_json : std::false_type {}; + +template +struct has_to_json < BasicJsonType, T, enable_if_t < !is_basic_json::value >> +{ + using serializer = typename BasicJsonType::template json_serializer; + + static constexpr bool value = + is_detected_exact::value; +}; + +template +using detect_key_compare = typename T::key_compare; + +template +struct has_key_compare : std::integral_constant::value> {}; + +// obtains the actual object key comparator +template +struct actual_object_comparator +{ + using object_t = typename BasicJsonType::object_t; + using object_comparator_t = typename BasicJsonType::default_object_comparator_t; + using type = typename std::conditional < has_key_compare::value, + typename object_t::key_compare, object_comparator_t>::type; +}; + +template +using actual_object_comparator_t = typename actual_object_comparator::type; + +///////////////// +// char_traits // +///////////////// + +// Primary template of char_traits calls std char_traits +template +struct char_traits : std::char_traits +{}; + +// Explicitly define char traits for unsigned char since it is not standard +template<> +struct char_traits : std::char_traits +{ + using char_type = unsigned char; + using int_type = uint64_t; + + // Redefine to_int_type function + static int_type to_int_type(char_type c) noexcept + { + return static_cast(c); + } + + static char_type to_char_type(int_type i) noexcept + { + return static_cast(i); + } + + static constexpr int_type eof() noexcept + { + return static_cast(EOF); + } +}; + +// Explicitly define char traits for signed char since it is not standard +template<> +struct char_traits : std::char_traits +{ + using char_type = signed char; + using int_type = uint64_t; + + // Redefine to_int_type function + static int_type to_int_type(char_type c) noexcept + { + return static_cast(c); + } + + static char_type to_char_type(int_type i) noexcept + { + return static_cast(i); + } + + static constexpr int_type eof() noexcept + { + return static_cast(EOF); + } +}; + +/////////////////// +// is_ functions // +/////////////////// + +// https://en.cppreference.com/w/cpp/types/conjunction +template struct conjunction : std::true_type { }; +template struct conjunction : B { }; +template +struct conjunction +: std::conditional(B::value), conjunction, B>::type {}; + +// https://en.cppreference.com/w/cpp/types/negation +template struct negation : std::integral_constant < bool, !B::value > { }; + +// Reimplementation of is_constructible and is_default_constructible, due to them being broken for +// std::pair and std::tuple until LWG 2367 fix (see https://cplusplus.github.io/LWG/lwg-defects.html#2367). +// This causes compile errors in e.g. clang 3.5 or gcc 4.9. +template +struct is_default_constructible : std::is_default_constructible {}; + +template +struct is_default_constructible> + : conjunction, is_default_constructible> {}; + +template +struct is_default_constructible> + : conjunction, is_default_constructible> {}; + +template +struct is_default_constructible> + : conjunction...> {}; + +template +struct is_default_constructible> + : conjunction...> {}; + +template +struct is_constructible : std::is_constructible {}; + +template +struct is_constructible> : is_default_constructible> {}; + +template +struct is_constructible> : is_default_constructible> {}; + +template +struct is_constructible> : is_default_constructible> {}; + +template +struct is_constructible> : is_default_constructible> {}; + +template +struct is_iterator_traits : std::false_type {}; + +template +struct is_iterator_traits> +{ + private: + using traits = iterator_traits; + + public: + static constexpr auto value = + is_detected::value && + is_detected::value && + is_detected::value && + is_detected::value && + is_detected::value; +}; + +template +struct is_range +{ + private: + using t_ref = typename std::add_lvalue_reference::type; + + using iterator = detected_t; + using sentinel = detected_t; + + // to be 100% correct, it should use https://en.cppreference.com/w/cpp/iterator/input_or_output_iterator + // and https://en.cppreference.com/w/cpp/iterator/sentinel_for + // but reimplementing these would be too much work, as a lot of other concepts are used underneath + static constexpr auto is_iterator_begin = + is_iterator_traits>::value; + + public: + static constexpr bool value = !std::is_same::value && !std::is_same::value && is_iterator_begin; +}; + +template +using iterator_t = enable_if_t::value, result_of_begin())>>; + +template +using range_value_t = value_type_t>>; + +// The following implementation of is_complete_type is taken from +// https://blogs.msdn.microsoft.com/vcblog/2015/12/02/partial-support-for-expression-sfinae-in-vs-2015-update-1/ +// and is written by Xiang Fan who agreed to using it in this library. + +template +struct is_complete_type : std::false_type {}; + +template +struct is_complete_type : std::true_type {}; + +template +struct is_compatible_object_type_impl : std::false_type {}; + +template +struct is_compatible_object_type_impl < + BasicJsonType, CompatibleObjectType, + enable_if_t < is_detected::value&& + is_detected::value >> +{ + using object_t = typename BasicJsonType::object_t; + + // macOS's is_constructible does not play well with nonesuch... + static constexpr bool value = + is_constructible::value && + is_constructible::value; +}; + +template +struct is_compatible_object_type + : is_compatible_object_type_impl {}; + +template +struct is_constructible_object_type_impl : std::false_type {}; + +template +struct is_constructible_object_type_impl < + BasicJsonType, ConstructibleObjectType, + enable_if_t < is_detected::value&& + is_detected::value >> +{ + using object_t = typename BasicJsonType::object_t; + + static constexpr bool value = + (is_default_constructible::value && + (std::is_move_assignable::value || + std::is_copy_assignable::value) && + (is_constructible::value && + std::is_same < + typename object_t::mapped_type, + typename ConstructibleObjectType::mapped_type >::value)) || + (has_from_json::value || + has_non_default_from_json < + BasicJsonType, + typename ConstructibleObjectType::mapped_type >::value); +}; + +template +struct is_constructible_object_type + : is_constructible_object_type_impl {}; + +template +struct is_compatible_string_type +{ + static constexpr auto value = + is_constructible::value; +}; + +template +struct is_constructible_string_type +{ + // launder type through decltype() to fix compilation failure on ICPC +#ifdef __INTEL_COMPILER + using laundered_type = decltype(std::declval()); +#else + using laundered_type = ConstructibleStringType; +#endif + + static constexpr auto value = + conjunction < + is_constructible, + is_detected_exact>::value; +}; + +template +struct is_compatible_array_type_impl : std::false_type {}; + +template +struct is_compatible_array_type_impl < + BasicJsonType, CompatibleArrayType, + enable_if_t < + is_detected::value&& + is_iterator_traits>>::value&& +// special case for types like std::filesystem::path whose iterator's value_type are themselves +// c.f. https://github.com/nlohmann/json/pull/3073 + !std::is_same>::value >> +{ + static constexpr bool value = + is_constructible>::value; +}; + +template +struct is_compatible_array_type + : is_compatible_array_type_impl {}; + +template +struct is_constructible_array_type_impl : std::false_type {}; + +template +struct is_constructible_array_type_impl < + BasicJsonType, ConstructibleArrayType, + enable_if_t::value >> + : std::true_type {}; + +template +struct is_constructible_array_type_impl < + BasicJsonType, ConstructibleArrayType, + enable_if_t < !std::is_same::value&& + !is_compatible_string_type::value&& + is_default_constructible::value&& +(std::is_move_assignable::value || + std::is_copy_assignable::value)&& +is_detected::value&& +is_iterator_traits>>::value&& +is_detected::value&& +// special case for types like std::filesystem::path whose iterator's value_type are themselves +// c.f. https://github.com/nlohmann/json/pull/3073 +!std::is_same>::value&& + is_complete_type < + detected_t>::value >> +{ + using value_type = range_value_t; + + static constexpr bool value = + std::is_same::value || + has_from_json::value || + has_non_default_from_json < + BasicJsonType, + value_type >::value; +}; + +template +struct is_constructible_array_type + : is_constructible_array_type_impl {}; + +template +struct is_compatible_integer_type_impl : std::false_type {}; + +template +struct is_compatible_integer_type_impl < + RealIntegerType, CompatibleNumberIntegerType, + enable_if_t < std::is_integral::value&& + std::is_integral::value&& + !std::is_same::value >> +{ + // is there an assert somewhere on overflows? + using RealLimits = std::numeric_limits; + using CompatibleLimits = std::numeric_limits; + + static constexpr auto value = + is_constructible::value && + CompatibleLimits::is_integer && + RealLimits::is_signed == CompatibleLimits::is_signed; +}; + +template +struct is_compatible_integer_type + : is_compatible_integer_type_impl {}; + +template +struct is_compatible_type_impl: std::false_type {}; + +template +struct is_compatible_type_impl < + BasicJsonType, CompatibleType, + enable_if_t::value >> +{ + static constexpr bool value = + has_to_json::value; +}; + +template +struct is_compatible_type + : is_compatible_type_impl {}; + +template +struct is_constructible_tuple : std::false_type {}; + +template +struct is_constructible_tuple> : conjunction...> {}; + +template +struct is_json_iterator_of : std::false_type {}; + +template +struct is_json_iterator_of : std::true_type {}; + +template +struct is_json_iterator_of : std::true_type +{}; + +// checks if a given type T is a template specialization of Primary +template

ng<@3 zaTtpocq->|x>YY?%c>K5;vUJ~xLmdJwrM~Pmrs5k3!}^GBa#wKH`F$zonf|FyT_M< zNn)LE3(s>Umh)}?eSQ}-9%vs*I&k|`_8q6$dmm{FTC8#W_j(Gejw8>TZ$d84N^cG= zaysm%zr|4}T8D=z;K~aRi3Y(Vhdk8ymo9u_3BI1#nNi6a#PgwnlSQTW(pC{&Cy#E)N$!p_7XI0z7k_A$hr#I_y_SrW zx4{heye3?64|REYujQta&Mi5XeRkq|vmAOn*8i-!dS??WOZuhh^P-)v2(T^s-?GZ? za_kC@jZ87FCa)Wo@CaM`?c&wf+LM+t!RNJ|OXsXWvujs`Dh#wzn1otZ3u-ZZRCCij zann)LG2PCMnP(Q$nRo7Y;+=UGKJGAd7HJT=A-!hW#@L39X;zWUD(|9H7?me&j0$PI zbF+)N9cE-^vpO)V7%mcEFTTfeH0u1Ppn#vV@~19j;(K23_1Onj4{@yw z{gT4>4jD`bxm=W9q~A$$_*}b5bMgBqnFmfD@%Y~H)f-=%skH5 z{Iewge?F%b7rVz`@39Sz7V8g3-PV}>o^Q45|Q0RxJz~4MHzG-<)e?v~ml6*1 z1`(O{Wu^>_GddYm7=#X(-05r&uw3P_UWCzr;nkuh`H*|UuUV~i8=P1h7z4JbwyzSp zbJ1n>#_4*EOc`qOYK^;+TCd4AFdrzC@o!WQV`0>BkUQOK;KVxF^We-?Ju);^O^|{7xcEIIcffB?6a7Vn*5DRvvbRt7ZHAiLPyRnQs`qeUMRi zhrE!L@0>ImKKB$m8(h!u`R|w}?iI4zba{ZIP{KBOwF68R4njJO?wd|31RNAn*;!`4 z(`%85J%3ZLFq6uC771+!h5N1Y6CTR*F)+$B%-DW8DrKF?Id+eKj-o#f)}42c-?xfc z;h<1Jqr(4Ak9}Iq8V49<9OTU$gg)%-@L&|OaJZ-1DB|)n_Cm_^Y|BLjZ<%W>eOR_H zSRBo$;4s;naoKr3Z3k(I4eBfZYYI$jv6X+7$j`Xtpmt(>L*inlB=K*F&e3ceij;ab z)p8vXcZgnpy7j}10L?3BmL56t@NbcGOUH)=Cw3aSw9hCg&%MPeC3bY{)ES)p^D45O zD^>^S9As+w%{1kq^O?m_OU}GJG3Bnq|4Waja!p9Mv+*iVvFfQ;wJf{RTb$SIe(!n2 zPP4zuV8hi5M_4awt&@4IE!Ur@>vh$RWof-(@Y8;0mrc$*0xGV%Pbjb|d%CTjb8MO9 zL>cRw9->L{4$`*bEuZ-qS1AeUB8oTIVx5>*=&8E-~ROrZR2m&39CAl3!CRpE2R|_00+5E=m(>wDuQ$-}g!GLapPIzf%;O92*=p zr4~5XoaHxmX%kuaK;fU^ZS!P9Hy4wc!l8~{%a)wy`d{N%!kbod_LQZ!TL1ZXS6riS zo(=cg7pMEwt?Neao8OKBrA!(PnL!CmDh$gHxxD!N^hvPeOL?39)-H0Qms2f|l$*O; zUBZ*?5X7^#_^|m*$Hh((6L~U}8NO`Z;kaamSIXNv8mt?ZoXcF%abrct!de9;2?nME zKVn|k-fk<1AK%pK~1OcE28gdEb+3{;b_ zoSf!6+r04Em7SB*{pZ^^vWZ$v$p{2rVDDven02|h#g~~oAO3&Isw`_6BHFa!W$SaaH4r6s?Z-Bhp@a>G;YT*7 zMeCX;HE8(FT2ZZG(99OdyU=l2fKq3Cy>GDh`!6w~4Ilqm^E)xZkP=0OJ zYfZf`(wkQJteU`dBVM}Ug}KpZtByO39E}+ln+}zpI4`*Rhqh{G%$o9WBU_u&#U-Cv z|0@_*Gx9||Xynwp@t|4IFJk$Qq%~a3ieGMI9M7^`w2iwZ;R*km&8Hqoh^o!M)S#yI zl&Q;ySwLum&y6cz0?teh-e(lX&%a~pf>dcC2E{trTLRCT1u9;|&Sr4sY>X_`I^fJG z_F>BcKl83D3roK?t+=vu%CQNV%Q=~*zHZuM_u^83`las*k7SY<6qEaNzlJtn%I0`E zG3)AEg?Z9V*Q`}894k1@EUhIjnmjR8;Q1+=E7mTV&sS@4WzRkIZ9!)>%c`ygpGCi> zH;3qnzpraww&66#%g`G~>_5EyuGnj4C3ASaZ-4B!o0;qHe!E?mKJixDe5Ir*EgHvH zt?K62YUzLc)8l_iva)sBzsIXw=5;<f{qOG?8&k z+W(K$RX1;9ckGu(;s+xP{8D<#Lp7N`Yzf`?uy%=uSJph~`Qn=%w(INP zMe3`x2u%B#_ie)0i60^>A1Pn>-|}s;&y({$wiBI%5+^NS^~zG>SRz$<#B`ziH}6R- zjZw^+p2C|YS(>wND`>@Bb=*-~U?m`#=xDcnq0a(?)&^z-HGx)uxY@+LW- zh;=Ap#3RE+GX^R|XqF#WOF(->i}JE9{#*=c&nZ z(?~@&r6(JDPR)*ys@>w&zvZH)yOPJGSC#@3ELE$NXU+>=b^OeX)c#Z_=L3#{vo196 zD=L=PY!woi;JcdFrPew--kDR#p24G7T}wK}pY3788dr~k$$us=$QPYt3es4j-0JCR z`_f_hi4v8?Iv$#)GfszCrQ}&pmF9>&`G23&q9nf=ULm3rqFAT@TN|;{M@(Nw-IfQtPC?Pmz{tnR`^{gkkL`O9lf6F3+`1{@Zt+iB@_Nqt6t2}+#09vp$Ksx}FXKeIj9w6#JccfFs$c2UE<^wPRHyh}xz7aaO) z@=BWN(iMeiGVh$%nJv8cZyV#mwIU48mX}{#+tRecYqntSjjDW~&U3SfFvzQ(5D9PNVks+ETE3K1^u{%vE$4VcW^GP(%;TP-vsP4dCW8UP zl7c&v{g#~QKdI6+hi9UObNQ(dwLFg;FM&ByExB(?Ps9X%jAi&Bp>m&B-z4?Myqi)f zCw*cS9iOD8G0Zu>+@N$~4X0E5x?AP#4!=123b|L^Kf-$|CT#tj`L`FbTes{Nck@u2 zbNYeQ=1K+sHqIJd*{s0+Syz^-UDObnnB|(Gr0DiyP0Cy+mWQEY|5f_Ga>ZOT60q$! zI@d#pTOw&r_64i9DMuww+|b)8C@-%fTwm}_evWa#SDojlSZCh6a^=>U9<@*Ep3hDy z%;U{vpBj0JcjcA}#YGN_!mJfrJ~(f&4&q8*eE#6WwsOaHGrT9ynys9;+H(eb(7wN- zEq5~QPHO8LHcT$KrJOe{_ujAD6Q1y;tbCdJ>A{>+3i(zp2@P@`3%HZAWe@#g+Vro} z`#ke%ZRG%lrBb(#HosDeW^%Z@^k4HK(^?@DWtQisOun9Plq*@t|5vTLK%yt|Pgb+Q z!NmQG*97a_7Bq@uU|yrfq3xol%+sBEn5D2Zw8~e&u46~v3`37t#sv+HHQ{gB{;zCe ze85*Op!@p`vyDe!xpbkbRLaCPHfy)n2JM^j-evJEHIMVR-A=^ju_&?3m^y3it*!e6 z6+W>Z{5?-H?njG4oX-otsneHh3pFfGI>TbGsuiHG^=1l67~?b3U#Vj#G{MX;-ZL6B*)*E@#jH%Ic6 zN+k|h{x@Qred+Bng+q*wmT(E^GdyZ}$CZ>L;P9_cw|*b{$0;kgj2;RtV`#nAx9!)d zZ9C4YbLFYe^WmKE?9+kMk$c!V=X~Id=WOMBVB*EtsB~6APqCAw;a(W0(ke~GJ_F9= za|(Wk80HCZ?S6K;>>1B|0VRP3-iZtJz4{fpE^rwx`Fkm!$2Nc4B#k|0eG76prb z;{%h~1CCt>IF_B${Qu;zLfP7$c}y=S`OmXy629RnrO&_;=p%hpY11oj>BW6&LF~>? z&U0OV(tmD^Lc#`xf(n}wF~R~r4}%XJdn+tpm0S{ zb>DFj4+u<~#ZNOMv3#8Ld;Z zn7$>ftmV5Dz;|G4o2tM|gU4d|2U#941g%#*!td>NUM=X1bh1mOj-aT4pj6`|smw?G z+K(B86x5a1irm|1@rC75*b4@Qm5~CA0|IYZ84osoX5#Xp^r@;UbyDqz3_x zI)Oj1s_lR`=~f&)2BBDj{-J)v|@7mo$4mM$Sr%dndKw1sh%pu`2yTdTmldDuceqa z39l&l@{oZc>ec3Bug*MTG5k0$OF^%3nqSjjiGIJjBrEPOOf8oRHyA4lg-Gj9F*7() zx`vB$jZwOQgAoJIva&$miYW^7))?0wTKeF!@|BP4_Pj7pOtQ28qVh{vF-TZd%F{t} zYmn~OpmHbvzCfYFe2Nwi9V^=%GksOQC6v!oVs?Auxr>3hLY;YsgOjimk4Q;KZj(=+ zTj10VZcZgm6)grS24&Y0%Y;k3%IigbnH+dFS++mt_J5Ph>Q{Ierz8k)I9gaf5-OPL zC*u%)UeAru;r5>gvdj)#D};2f3Tkiu^uXp&l%Wd4rm4!y8lp3UdEfiZF8aKysLQke z@x3XNqV#?FAD&T+R-MiBK&VE`l2!eD%H6t_^vmWaX%OA zD5_t4h<}a|!?FjvFH921DDanWjuu_;hhtGjNSPJKL;eX4vfNvhZ@3*ers=(!TQrVO zEzL~P!bFutG`O`aqjOqDWFr5r296d74vPfljt3n390VPlHXdOR+OP0y)wQF1B`Oh( z8@m#i+Zs4>jtC1UiF|30JUESGmjlnMP0A6Df?p0~ZQmBw>wEma)B^^#1wYR9DhL!Z z@-;AUJqVcO5FMDvb*&vCOlYYl*lQ@z*z7pVA+D*D<1IFt}HlT zke~15Q#whV!;w?u0fW?Zh8s&5r!*9lA1#nqC`;XL>|MafwSYnB0i#+6Z|rsvxdRLm z-x($NO7p}S9lq!Jh?mNimqv@LusL!~a41Wku3*&2Yj{cZfkE}d4f@j_@F@Fpo)ZWR z{Fp29h9_}j=(!CFoDUgA9+VZAJO6pWv;7U{%npSE*EwC6R?WXK-Rnb1_jbl<2fkkD z`&ObPxaL~}{{-Df*N$41Ds0+zbV-@=ifdUXuc=K-kdvIwIOTw)S7W)O)8hZvghW?0 zFbX^<<4<6edr+gVysF_*MDpgl3QRg{IcU1{dRJn=ua{#zx`DllEmA=PxHh3bdU@z*{`&nPOU~8{xrRyVC28)@KgAaAFuC7rDlbF0#5rduPdk&g_N39>4GM=WoYq}G^~_{)<<9A~Kc`E#OltnfFY_SZdS+*%WZeHx zM_mQ8pT$}J@3;|Gb7*lB6Q`AB!9<0r=7*N1{ODHts>0TAukWkMKMBQ*88;?b&b?YW z_vTOKmYs7SM($E-@zKo5nQ-&pqMuunJ}NG=a8XF=*{{J}czN2x_bOW={R~=WKCWCS zxohG1A9H1`=54>B$i^^Pu$z@#Ve!iKx{GfzyxXb9=ofiF&*dSWHQF8Z2 z+20!#qt^s9%~p|C3!1e-a%Z1n^=8Z6n{9t@c8s2sx=Yb1c!NLFGF`9dPSsl@cW;gT zy*2T+z5kU!nX}G(yGr$pwv|?IuiU-8_V@Oqo$Fq2Q#kh7DEH7(2B{rWt9Q=ay>ssG zol_Sn`Y)P1@0SXb!gTvbEgsUlcJAK2_xJ9D)_cT-ofEh^KePUIStPQmVd~M{d++|< z`_Ovd?Oi)uPbhqfoUkuq-`DE>KX>o{JA1Y3b;TEFJ44%-{QrGG(B`0M%|Y3n3skRd zQ9QItvgVNHoBYAHhJOw_+8lAMIdXpG1jd9wui$=j>i5u zn)=+>e$|G_6324?94oXrUTUKmCiQ*QZxy?$_yMN9; zv^jUR>Qr*Z;irGjeY83M_0O_{R`I(k&okOyV6DAy_s4N}8y;pqyUI~m%IB>@IS;Dp#|3)ZEv*J-f&mqESSLXe?r3L&f1$Z_uh=X%RkM5 z)9mQYm3wck{d;Sp?d`3#w|DNnz4!0!gSK~$*4{a}_s-eBcP`rAy;^(s=H9z^|K5FQ zd+%xOy_b9Mfo`z3z5liL{?EPl|NgztX!n4%?g8h%2fY6t2--aqt$QfB@1g9!hl+NO zRO=pT?t7&B?~$S1W7E3Fmir#t{(J0b_r$gCiRZp2zW<&C+C2@edm6d#Y3#qJiFVIY z>z-xqdzSm}S)twY(z@rB`<~bSd){dGqP6Zt=e`%c|6WYAdpWi4<;;CA=l*-S(C*dJ zx>qary;}S4)keG5TkBr$-1mC#zt`++0!QNBI4@K_Ht)?rySG>8onSo3a_8RL(gx-K zxBk8LRd{#(-@A|hjutk&^KIa>NP7SB-uqf8LHN_YkKKDj{2Jbc z9_Ui~|5knfc4kG^dvdH#61Jx|yvuy>LAL%&p$y-TeVi7DzPyzCS{=>yUS^Y z_&oN1OSED8@lVi#>HEvL@0Gtre%yO|T5j8Xg&%Vde4AK*RJrkee1r0|`R``m-yZtl zYw2y?rvJQ??0-Ak@cx*`Yti)k<-OmvyMG*x-)`^tSvUU6*80ENb69`KiC7%^`?Bsw zua(G~|NpMaYf2sD%v!+7)VQ5dNo0<+`GXdxR)d9yT6v_cYB&rR9qAO&j@r{f0K@iOcdMNH)lqx9Ojlo98?(FWFPGVx8yizj&&r+A{Bll5X8Sr@?r=4k zWonm>?CmyRe{XNi?_YnpEjBzj*upJsH)r#ep!phpjv+Q%3{M73(NyPAec>x@HBqgO zNu<43+Nxh6Y+H|j$O7{`hT1NPSAw$F@*c4qauF1MajT)g+NM@OQO!E<9tT%m2z#u9 zYNNIN+aC|r-HY!;Ouzi%>k*H#2RkMTb67e*;8ebt$oxF;%jEu7dm@`-_q=o{x^rOT z<)7bQo^FiTofg4W$ zD}l3|8N}? zIUyixbRm_AJ79{@y(C*kAui#Py$qhtjXEcnaBA%ceBhLSpr-zo$M^5cU zLL9+n7Ds+@9&EkzajtGh`WF8+{;LF@{mY7zI~uGWl5#meR<6RoZ4qznmrMTswO_Br z%ST*wUMo29n_Z!N`Da_xg#l7$&F5Ws^zT`NK+0MB*;`+{?9ONUVO3}=BC8nqZvE4~ z3-{Yv<|vgP403jI61T8+cvaB&JI3jZxP|zd=jH#TV&BSr-M_HMui{{lf>V|Fj>v^d z&1bn4oPHc%@^~RrV_3DUmW9L`v4s3KlQj!@^E(d9yed%I8Jy@;6(RI>>jKVz6$cNo z+%TX2WP$O*35VZ*3tjIic#+M=isMPr)3$R{m;`<}hdIej)c-GSa*$2+bpNlo4=kny z0jwT^vp54D9O_%}!EYM#oq!Yp_B$;}eC7$KUOZD$moaH<*6iTpu6AlRu{qeQ_Cdk@ z-Ub6%8%1`{FP%(*g-0us%~<({dBQ^`a%Uw*+VBJ3>?{ulevD*a2JlNK*^P-M9S%baqPlaG=%%yW~`7T|a}(SP2C2_8LKNr63At7H~>&a7Oo zUg9Jd%+byjETmhTx8=s8f(>$(7gR${4jy?Q_h83FlPpEIFP{41NqS~V|Bv*_|9-?( zvCV1M21mvHCI`9fCK<{!=!hI@R@b_txntTv?Kzx3@4nl&;$#+QljfUf598`2>y{Zs zl^i=4`OoX*ik`)=Qh#Z8vevE1-C8P(1qu%vN-}XSo5L`bCrCN^>VFP7|=Nn9rcHnCN6mPVD|UG48@U>|-;eSJaef(^%*JB~0d zN_8rZwQ*PV+rC!8N8gxnufd@H)mPRJO)XQE3=GPJy#?!2fK7|U0bR!@5r4O0WWq6EOfj+ z?Z18khiLmH$upTI^H!<8b6R6HfX zRC)e_`Ry;Au1}g`rfB!MlTYupfHm*YA`Z!`yiUia7%wf_AzLWj9cXyUoax3?Uc=Oa zi165F>mt&9R*J=a?Gm`QvqbUa=SS@Qrzf!abBe0IJK1T@bnmdyk=6HP^S8Eq*En&m z{7j18=9%Yvp6$uFaY`_9GpB*fzJ(G6iVG9EVgnRSWJ1_P=Ko+(yOZO#?99%BGB;LB zbyH@w4Ga15F8vpbs@P+`Y>KF&${WuP-AfPovv0Aee|YHb)-yq8_a|1<45w_lr3u0( zDik*?V(e*8deY)hq``38V^#Rx3BfO-uAeiFbau&Y`m-UgY-d@T6Q8YJtBIJUPoi_` zuQ$*2n7*BK{+R0&_S7bXL3+g!GgAenH>+0b9huVaw2f1%)l$raCG3Ll=H2&s-&dTj zzNfxZy36p?luNB599k83H`Cs}`VaBAcL+6)nzdWDs>k4n#v*yoJT~_H`wfMc{!HOT> z1KyqS=;Ez;%{;C7=2HfP#X&tQdE7mwF8}+XRV7wAba}-CJH1KUriyHmTkg`r z33D{n&U2j7-tJk-F?9Ev7w*G?Uio| zG)~(-lF($$n9pB({@;|)C9+1&vwRFs{*JxbAaCjHb#LO~V3m*DnL9T~pPz7CdX}c% z(U^eV{K~BU(@HnKPk$mC^hM5?^`*kmm2EWSw%xUM_ZysTk;FhscH!ViEW!x{d^Lg1b>v8?g$av*eG7e zb>|_QAA|GNMRmO2!&Nex&a?}cPiEr#k$KHrVbjFO#Bu?f6Sa&lYArn~9=cZwIo5F{ z*6A;I=`$DcY32GV&Y6|Yq`ADsRDKzoOK4Q-VUrS7bfhk;L?2HRXa6X z;%B&2WO&a+m80!kMX9Bt3w!t(IZ75xDk;b>O{?8d6twf0m4QHSlt#Bjp@;XeCfh_y z?Uj@6E!DCq=Gy7hV<*)2{8R136M}o#ePUmzayU-nIw4T*{J&UDp=Gf|J2zvD??uBC z9b6keC5ayF7koH*&P9P6WqE5gsvb_W=Lrl_Y?{FEqE*y$dTC}u$OHz41=FiJ8Ol7{ z7F0~-W}Kn5(L!;W;fg1r0VbhZ2WDt}s8{dwah_Ppu~6iic!F9(b-)3U#L7t~7Q!&h{^!a|V=`ml z=w;xzes$V6&oVR1Uh_gO0|j*+)ubCgrXFWC<z#)6cW8cA9oDXM7Cwh5b z<(PPZBQTRGpvB4Xz@$clMdimTX3m)Xd4)ilMg-5pG_4O}O9eRcOoCW5BSj_}<^?RY z;9&P@SmOE0&0@k5k5@ta4>J{9;OITTHtUIF;mwX>&3VzMmZoiExP5XuD}&zB4bvGf zFvLoU>Ae(wl_uqLaGB;pyMv3`c0W<|ylgb#rodxW3$p-b!vLdwgW*GL9=_o0v{GE;l#U*|Afgx+O>@`6M~6crW(jQTShn}o>Wr-{38$uWFzAIIn9lcM zb!=ixK8N7xTh-cv%gdeg`9v)Y+n4h;7EE0wkRhqlBoM(lE1^L{xXLP1yRmTVDUpB$ z0_R@oYZ>TFzZLT2gv{8Ik9R|1aLZC>3|1+cb1WKY<|AR=j2xpVq-h3z2|v+{qt3LF;7V`gt^DEO68Y#b~Tm*D(>$dX1T{|9RQ9~#v@&$i62GBs4h1@|+iewvYUBTGea;m&d)=ILLe61n#*uU3x_Qb>C(+|uRgbHP&M z!`6?ROE@JP8oT%2d@UFxz)(GtA^Ns>{Hf{e4rX^(PiI-MH!#s_!s>eGgZtD!7A!r$ zX8D0h*MQl7L&L-cY-R%gnGHd+K`c98=Vv<{VEHp!xREozf!RobS?>XpVF9z>2R4B& zuKo`!<^s&MRm=ee2RJUWvF>3zewa<=1NF$XSl3mN}m`n#GrJ76BKqBpnCVX0N>3O>6z8x>gZ99)sWZoP-i z|BXQ32NqKX=D*#{0Sof&Vh*ra3idBJr1R#0;fF(pX9SdUj^^_micuG^QeZYY!&3af zqLJYclh09wnj12 zRB`UR<8-F2<^q%N#q^68)-NyA`mj%V?IrEMt3w|!@GM}F-78+VdwNRqg{sQ!yoHym zR$kDN6|+cScFbiCwrNOKxnfqp?60uY=)p7e4jjP-6Bib6h8VE6 z1l%+a!*pf_ z!Q#7u7jkbu&As-PB5I?t`W$} z_25C3Bm?UK1}-_FpoE9_dl?kGg|5sM4Bo)-kmsJDA}dG11BQb8d>WW9e{nT{~uIB{m9T@WeJ(GXOZppXo{%?U|zUM3nHv}7>7o1}d{K(E0@a(zu zLt#hONt8c#*SDpxy2TLjr@>zPs!bo_kLan10||jpu)c zQ)dKuCOkjb^TKn3Kybqg&WW5Ubr%IDvP_73&a_XUIe?+E?@>^~>-)7&c^p|Ct1$Kfy=cY6CbA<++NY!KbR42H9-b)!vx z^S$U^Th?ZV|L+2AId=8FHrV){fBy%$nVekx@2>L+8n2%&?8h4R{{+LQj|>T~1RlPt zk^Ib)`0;(-C;o*u@AYu;ZaB-W_#%v-q4k`Au>IE+37_BleGr^@qNZ}$bcas|eco{w z{z(1zZH2=Z28W4O@^9Zey$xIcT_Esl)ybQM{qGnTTyTtkR-Y$0Ri1%|@z>0M0(SXd zPptZ~_WiH*`65djZms(J<#6mRKl%IJ{Tulveyh-D2$uggJNHM${%>3te^+&W7Wnv) zal_WQ{I5sP3w()VZIM02{qe{1ZU(l1ZwvwqulodQ^abbif1mze;P%Ol5xHM`?LSrU zGxX~JWB9;+aR1!GvjX-1-`&;!FL-7CsUyNKj+oWK=NdIMwLX zA*gI7v%=-k(T*UEyeBs%Zafap`}}bIM{reyAr+V&-Bk*!yL<1Mp^0ntJgcWGm#mm@sNXRx zn8Ku<^Frtg+l;ddjwxKy*xGT%%fqwz&+lAi?d5+ucC}1etijm1D&xhr_g1r%l=Qd- zHZT03z_e!JPa!3T6Ky`tCl2>&HD`3S?eKYVwy!JL!J6TR%q8ufWdWN^^wkB?Prt0V>UDh434aCy-4#Kt zJ!_2@+5eiX(b=0&TDmw$G)tJ_jE2*RpejzQ$)|eX`0QA0QMk0@TF1AgD=b%5cC5@tQix@@RSg*|4%Do`{sY=qV#odfAZYWG~|K_oE z$FE5z9^~x)7PZ{vhs4wDxfPFpT@R9zc;GkjjN0#ITFW?o<^JFGx~}>~i0qG-{4S!q zuH_w2UgOlMdPVp{!4dxcE>X$LrMkj$)jctvG$$ow<;~Cv%Q!pH$nkt?Gl%2*_iZ-4 z9iQ8Nu^u?xR>#)xrA^@J`_mmlFIMD7nrq!OTpYM_r}w1uY93Eos^m4Y7|Ncmh+_Eh ziX-ut#VRYsxxtGp7xtTMzf$4l`}9PyiS@20i8;45x{z8A(PgM1%V-Rg1EwtTxbnE$r7UXk%2|W;Xh~B%FfqX z8k5{xPbmvAH@vkf6?~q1#Q%%5hrn$0eYY~t7|O_S2udFi+!3P^#XD1uAs}4nk>Ld8 z$KH}t6oeT1*XSx8uzci__RP&V@kuw^#d{1v9s(heJY7N;rQKt`ujzYYs3`ec++~u+ z-XFF3*|Lo{WnF)Gq-yCcSSq9tA;PQG!l1R;bDsgz?ue)WO@0ptMiB>AtFr+!jk*@{#A+z4 z5NL{GPiPQvaS{HK6R2{%d#3vd4ng;4MvB`_I$kn-IC&vbt#93u4&n7DJWBIax;y^A zJmGw!ZIXdhey99IafVCof`M8~>|{AtNQkq#_r38`eE-Blf_>GAK)EMMhon0cL>Haa zI(k_-hDq(J(k$%`fuc&mgBb?Cr&c=!Oq%3s(Ww+t)#$QEMOcw5kXg7yFd>xDHtaKp zU*%NsPKgJZraxny_$q^@6gW+u_CO`5Q>m4osewV2waX&d)P2?$<4|UaRl%RbyH*Np zX5ffu>i0XyC2sb)H8WQ+#3|5ugVh0sD=~-USDctssdZ$cj3#SUP8ZkJKvB_0F3;T- z9Cz#b(%ZGqN965{&lC53<;xaSOm~!s-ZSONWaU+_GaPlQLYlvvUBKJR;p%?qY`=zy zVyx+j|Lm1FcYVlBNfs#Vmeldp&cdMo7^Vc2v)o|cTI&&Qs9~{m7b6(9ZhFnKD@y9Oxa~kj%UDY!K*?G zCJ0>Ic(zSDx|5~6Um#J#{TG{1;5oj!eRn(J?LVCjxf*_oU#Q8;@Bru2Ra18AZd}p2 z>&GcUMScd}8`|Q@|E-m-db%*&tM$|r5M^NXpQ-R<=@P*wYlH=pQx3apwzi2k2^W9+ zcrIR*MRdY~`^+j2g|%H`i}CseejbAY(}$_Tc}+i+#dM9_qf{@IO#7z1>T$<6 zE8ht}cC9qH+V~;GEGTL5BMYyYe_uG9iHzv0xiGQza*5-vAO2JB%t)#E;t}}%=){bzW|2 z{qul<#YEw#l-8>mzMtMzoZs!VN>$3wNRgFQMS=4@>vxA2Z|tqbYt(LDGd@_~w59u= z%5A5x9d{=goo1Cdz`!rTvg_Q_7yl)>G(_@614P9P!dT*Osnr($a8vlVYk~;-VP3)X znSlp=`K*4=`E(}Axy$Qg-=9BMg&NCNC|)YEH;S$nDqG`})x&j%Q@rJx^NM#WpT0Cc zk!0ALm+SIwMKMFek<7(uW{!2?5Bp-OZ|vageElW1aEHFe-G9;Fy>7{tbLSs_cDm{( zbJ^luiyqgiv+s8}#Cl%HUiW~WRNaa|uZ#Wx=a=}jtKU94^*{r&!~v`D$}h&k-`^*x z9bgQ4py;PkB=jV4uY%5f551{Ar#2bqXJu_a|I&de?wcsfwZ!9Z%Wk|8JUcD*nnI=J zg=C(I_xW93u;)%$bN+{59@{>}GoRO;+kRKzi^l&Mv-$R~dByHjz1Gp?g4{)`TblL% z7M+n@roYqr7yBixM#gpVZZaMY{%`AM3*7tgL*H}W((1h@l(~wvX3TDw_wliPswbCy z1k)Mq2G$JT;|mv_@1CRTz`*R$z@E@$k=z+GYv)7_jbBO}&pbEAtkQj;ZLOrW>vf=+ zn&8$038q~QTVKCkt8w!{6UV;RMD+;@it8W#0>gfu&vFx9Ec)&2(E6Cg^#!xbhL(*RI|ChBY&Wnp1?=Ay-1&{W^Am^o z?yL#kADT61INN{N*2u7W$4BNR#vMUFm{$cDbQ{^v>NspUr^)KS2&aw75nCA{`!!5j ztHh?yoR?KC?aeXU&cJ!11gp13i(LSVj&f%p$847jt^N%xMt7RMRb2Zn?4PHxMN?z% zffY^Sm4_!492IbB^@*5nd4<8| zPB|xCH8U7kG#c1n@T6DCoR}%&w1efC0RyW8la@kDg31CVna(%doOz2@#mqV)^JHaP z!&W&L))yz8u39#*+;FdZ<6f6CFIkx*!uVicf$^uz23HqWnVf?wxm6^5);#}g*kQ15 zvV_y>?U_3+Xa@G!_5hIDe6UgG%3>WYN4sz4s?KnFu$qJ&>Af#dp18Cu73N#sfS1ew^CC za(ZLU{!JkqtQM!Y#GG!+@P1Tr+Vqu2hqcNL2Zo~}MhwIy+8 z)qftPradf2LwuHLa~_oGTg|YF@3eQ<39|_$opqTTrt?gjx#}2;Lz6@!*O8CML_RjN zNgOYFb84!@iOCjwCvYt8JGJz~o`aj5TOTQSL@TfC6)?8#zQERO`m5NkC!)c&WbVDd zx!aAcr{Cdl@pR*#d%`?x-`2;c`+qFp)!DE5XNuaAwdy*aT_;vo-H}vlUTe$A*}Ce& z_bc;PglJA%#Nk(=sieVSccNi_h$f$hSM!Q9D!#s-HJeoSHYj?qtaRa2>I#t18ZZJ3hU{dvEaq+#h+=Ros;)=`O2A&ls z8w)P^g=*gR;heje$>y%A^wrJG0W*VrH*5Y}^ko+Z^NSfl5A=?3%nFWGxEL@q?B$wi z4EjzFuD0ITopo^Q35)Ybn0B)d}2$dvPR@CV-9cD=!veZ zUQ3toJh-Bwdpj`Tw%<{PXF)e7=|)e!U>Ot25mRm1qcJN@x`(5dr)fi^tu$}5#;wUm zj;@rwbH#FTi^%!?9Tyswa6GEqJ9CH5sjCr*2m4eU6o2=~h)TBPy__bnvPpGC*Srh! zPSkEHdBee*e6r|oM{5p;h<2|o>xyN)7s`7(r0#Y&3ap*5Y2^*oj=EdUADB)Guy!ge zu@Y82)S~NgT!2$4$>)ga67k#{61Kbg{=b;c>vQr@>A`m$N@uRl-@H`CGnZqA=}m)> z7H{21K90iyvZ2#VIlgM&G?D3Cs~RHQB55nlAT6_anQHLrt_%A;FL&<{`=E4Xv!vbs zxseR}VrM9GFiqoNE=y=O+%{{+{q7f0vlt>b>}B9BxF0y-_RS+Mo8Kn^DJjr`M zJ-x2??fO)mi?cRfXqgb#EXqA`gNF70uO|%h=HGhD(UEHuE5!Lu zm*dI7$dDf+2J~NoEdn#R(Vqo2H?3EISvRwoF1no`^ zj{;wgbwho!GVx(YS%ZC*-UqD)6@~7g1x&oZRob{4STY(|{@>74ocIuQ=yV>( zTJ0NC4U*0lGZ@}}6lZs1dc)S#xhX<7#WW`{ISEWSFWZv!R?I%*)v|AgPd^Nk)b7k+ zW8hD@JC8Z}mFVN@vw9sDX68)ZSNE$qTQ__2zA(O~t&aQl?mZ%L@73vU zTN8HA*6yO+GT!-O`<~@;%Kl`*x(Yu4;hkCcv$r&1aMxoc1O557*t6ycBr8F*z-7_~gRXXj`1LVk z-=>1wjcOgX4nbar8Vq#aewF43dy(QbDLo{ib^5J$O)FBolHNBZxXxs-X0gcoVj<9~ z6s*$7@r!vkvqj!@CszBH5=u=ydXIRTcCb8|D7nE}SRuvzi3z1 z&9~W;Bbr!$d|zP&Oh;pJg%w}~<{la|I!Uzag4e`S-_4>8RGmw6de7rfKFa!vQE z&@89A?8+&3I#j00gwJQu<=pDW>2$+;C(pf|C8iS!7F}uGwTo}pZayth50Sn9ha`XxwNnN z^tZhKioT*%nrCu2TwXAzyl)nn^nM1z?wuPooF__HFM4@f>51_yY5R$y-G}D*NQkq% zn$BP#_9}=&`I6=Jx}D4)6IbWO)Up~rGh11^YarJXBLVrTzOX@E!il` z>BqE!#*daMf{MbUl?K(+Bx`& z<{JOs*WNQ%v%g1cy+`H$^F=2<#q|dix7I4Pi59<@e6d{pKxgld#Sg#qb!@0!FCDX= z;jy=B@Ct27t81_!zKBJ*@VL_zVq#WPY zD(%pf7u7lz=wH3G?OkI)>OuV~z6&{%63S*=*coiBuB<4R@5=hNk;lN?D)Zai{TXhR zH~-YF)IDup+A%>ivW;U+?7O}08zyU1&tJTzVt>_Cg$J+xRK^E(sa|ld$;s1>maW-rX6W3SX39oIvP*juprr%-Sf!{R`mR0t9q)hHNYH(03P&nA+!Jyz$ zu`*K|}Crb322K&zTj4%E$ZU?3;Kri&RcdQuFr`DN20G%E$71L(Ix_h3PXS zRie5o6aA0PF%|!OnP-VuEN5{H2nLYj_PxQLf!zkybvg3%76BDPD%1kE@ zCB^O_6{(6D4hf>&brN11Ev6-Cc6<56`OYYP5VkJvV3%sP*xIOVc@Iy0JzV;6QX>an zxU9tYhlft6bRH2gnkbrnj_Lagl~V%FXY`r&zxbbWbc44KFLUUtGYUsI#BDo5^6v;- z?nrH#siQVAL$LF}aZYIunUsy6-nSo=B10) z#1&V*UWk^ooEnfk@#*sL(2uHLWSq@|%q9wnC0-Gn%sJOoknv%u$;=6!8*kiq3t>oq zoFM!1$AuW4iO=KQ-$-5voX$Bn@`9>$RY|~P$*)rbdSy%#{$HG+#w4|3L9-B-kc5?{ z(FH-nL<270wVp>h{cL=n2zxsis)%?m5?pd3aN5V|7u-CU6b|%o`X(w=S95NWYv2^T z;Ly2Z%G7x-#}r!{68ZlgydY8}dL_BCB2iVntNW-`_SzNqeoa`n;>z@Z^{juho=xG< z{qTT+pLK!kN`^D(GpBKhMhT?p2!0flw<=T$WHT%*oaHBU^~j`bCfQY!_epRV2D|Or zc;t3NCesIX$BPS_w4II@9i21(kgbc1R_Z>j15B6aMd&y$nbpO0kd1qbj#F?;*9FG9 zDWC2;r-!ai_q?do^3mb4>XRflRptlxS2HLCcr+y~YOfBiYd z!Ig<&s@r3xhHst~-(#=NG4T`meuw!W&jCic*q;;1!jeu3-dC9XMa@a3@uiHrMfG;U zgH_%xA8v=)UQu(O#w?)jsLQNSIM*W0#n_3p!lm$x^W%BD-|hD1dhZ~0WXik6-`uP+ z{jCzCCM?q~w3@KoP*GI!++w>cg^pRvqaLi{xw*4=rCIX*9H;YYdYc{AESFmodqgU8 z!gmf%hJCI##g`cT6r0)4^{b_4?rVnzVFmviN&@%!+*cH@b*Yez4EMQpbVB(?mADlS z|9yR4u&!(@aEO=M!yqW5D%h~rC4uRe#1SDS!`8k2d5ZB{lN1C!=W-x3ENbz9Io3Qr;ZEUWIT{2JToq3*@6~zEk#aVhDU{E=|{DbJ}S@r za9C)C0SCY0!z}iI1I$YvwA=r1D)3)!{Z$Pd3{w0!1`V6#S%N!n}&mhNEsY0Od-5c{TR`g=7C{WgiuOeb7e)oXS- zP7_H~QrOeLQSI#X!ex!cy(Le1w|^1TG{`ah9;5EK;pIj@K9*{&W)4T8bV0@|mz3Rf zIE1EZOstX95bjq|)vtaPydc)eMK-F5X+v8Bo5sQJnHsKYGq$m?Ydl~GsCE!#duV!9 zmLolfn^Vnlm!OE5QA*vEN%pCdYNs_%t`Vz@31SexHgQc!ZbOf%^R}&<&PJ+C;>nb8 z+P2Gl%Cskw7hRe2e8-{x*Lse;?PqpWb-(dsS+UrXdWHwj-9AYMH{Rfjkr7m2sQ7jH zd{f!Ax&O%%QQL;vK=k-7J;NG(K^{m<+6Lus8|C%y+neHu*yJBq%tfpyg(TXd~=P+#5 zv*OL-c3^7Ob97l2723sF5ydpgs@48~z&3|0W`}=Piyrc3r%dChRCT`N7Pc!*WgVBp zQRVJ6cVAj%_DL3Ir##wa(djcOPi*Hpw}2N`of$XQOU{&;KEvpSN~y{^29MV+a-0p- zi!#^rhCX!*aK9J%YO3;2n>8+0IVVExRCejanJi{MdW(BT+M<`bZ&|q)aXt<`HFM@7 zUB?zq+kl-vXNev&*j#seU+}*~E{}wU6xY_fLGhJy?#Q0_C-KR{s6XXUhS%3s(X~6n zvyFE?p8Wjnil?#0qAJ2iRA)Dykv93lwWX1zcflU5jtgGKEy5ian8kY-Z05>5Y~HOH z(7-?KVoPGA@>4d?iz^gdMf4&ScDc2BUgynW@NxWqI8=#aPjvgFNbV)eqyrtE@Ps@P zF}Hfib>8FRJS#>}kE0`3w_-yh1FK$`Rt!g zmma6@O>4eyTW~Jrw64?5BaOC3pRaK!1}vX@kT-ihzozAZuk4X$?2c^S>1Y0sx1Z~X zGRt$Oiw2LK@5COj-LBBE`$Xd$UXuo<$%<=!Fujg^zxiow!~PZj6I%Uzk^{2ERkq4I zw$zy(7WhAD_QXoHHBSr93RX{65oTw1m^v-Drcq$dGqJELujkA2+je;ERQHtm%l7EY z0sfSmjbazJD$V)!dGn48uZV_L34v+$I-z&{TD6#z{8~?Qy@+N!P#?mxTF|oG&y3OG zyk}6PFUx}oUMF)|p0VC`DG6nqG51`r7gJB{>LtO9n`9hs%zP%;vd~j*mgt@M*c+EV z-gU8%ox7Dc+(6QK!MV>rk6q1lx%TzuaXFBjOb%{8z*10_T!Fx_Z)=?plLCC{~^`XJH5X~Jom`xlc ze=;gQP`a4X6spI(VhuzH%=;^4Rv}T>G&sR;od7&LQGu+3XTeMpG|6gt&6w_ zi?&6G_qlm~84cc6S6Ed}y*+zf#7Rj@dm{3n_=>0}lQd2?_mE>!O)(CpRc2;G5eW9)%0Bu5MYX3;|2!7kK1Y-L#l=I(aL5 z<=6SHA`Pa`CR_Q*KIJ`fhOwcLO(xvqx$UHdbKeTjN)bDyc~6b;3CFCKgqbplg)Bmh z4cz}4=bltnwR}?cVW#7y1tDdv9z2r&ma3K3#i*rBV_ZY4P4o<4xf-ZgUGWxlW^lLdz;9D8??EJqY zy+@`nr5AeZhqb=UT=LEJ*#E_`4uS%$o%fb9i5~QMcTi)BlhPek-&aeOKP`3QWDyZ^ ztmbS{TBG76To!!`<%@Hwc>CloM||0; z)>jQzWSSx)`B=_52u%)T%>1_4-s!c=21&0S>6b;9xOuErJbF@S%Bq{CuL`C;Uhnk$ znqbR`BhN0}OiG=?bi-DgL8L(_^k8$W_W!j;Yy5Q=vMH)LZg}b(d&+@9)8%4v|I_kpyR&d z%DFwEx>ebY8aH>Ey?Lng&UdRjg8;+DZCY!mta{`ibL-q92B8JEO1b;D9e-*T`Gl*X zabjBf!$;POJYQ%r2-%44c`Kiks;710=6a_)%^!OvE?xcKWsNrHu3OcIX1d2P-AdxP zqt~|R;qy(`bX?wLha0spNb0>VVr~61YeQiA8@)DvwY;ydCe4`i#Kq(VTkGtjRcrUH zX!8nMQ+G5jUqmOIWx@Jfy(XUswKs2*=G^?LcZ^}miPK8&1z%3SnC26*>%H62e6EZ7 zkN&**$>6=eko6VcI{8VDUAD|RF^xq%;;nP)3x|Y7*FU{H;-_n5`{sKZ!#trQ-;5r5 zbm%smIK#j6!fh8V=M#DjDUV+;p3uIjyLrl+Bn^fKcOIP%h&{R{S<`05UM{{#QTYP$ zc@=MaO#i)IU6DTd>GSRX7P>5WoA&Fi+f=Xnlk%Q>ZG32^{q1aSH4np@MXUc;35zeL-?)_cnlaxN%E!mfK_pcC3SK&*y1%*x#$!aZn4J;c3K7SO=ecvp^qV98r z%~$Gjm2TdXx%(6pMWfmn!!J6-9OAlsQcNq;d++;4S1+97V3>UKy}9Qr4NC*(7f})4 za@4|k)cH3&R-Dbb-)pMJ>szy0rhBn;z0mhiabkJhEwDpHTVj)64#T{p4|DXcEUL*@ z{KE3{759xcmV+|d4L^G2UDi1-`|vf#u=La9X?kva#|k#ATz~8V&+{yoM3#L~dO*hy4AP)`3?tyjyI zs3-sBLy9ZTe7tz|oq14v!bC&o8HOGlfn1Ue;`-NwxZqiZnj(5J%Fhuqkh z!}PRxnv}nX+6NsJQ$KL0WK+pBrx$VzI>IeM>g~bnc|*KSLzf##r8U_dKCd17bsAU4 z!pe=e0`l_Z z8V4_}G4npX?SGe~>8h-)@(aFLeixKJ|JZK*b7z}8_aBUo>Mo21Dl%E>u^whuGq;{U z%JF{RW>JMRHF2xciuTA$y0rf!MXmFD@RdUoGjBk}vZ-U#M2G^-;u= zoWte$Jx&XlHo5dP$z`k+;9(S$Y0MU6k!Q(jV9#>wX_9zSF4)q@T$_f%E9IMiz#1vw6~=Y)xkjM)+_KNf5Q8SHkvDBQZKL}s^;M6R07?<0a*LQg(2n3${RTQ70; z-qYvrBwxKX+tpm!VcqKN?d2_-<*S|RSwwZL-D3`I?RU{sICw|RVUzHYP3pV%mLHMV zv9{+8>aBLs)L`ghaS#%25oy@{fBXBYL)td)I06|g{v39$Ib#2({qmx@d%ycL{z>|9 zUm@bpAz>FgNfT!YslC-TDL%y~Az0wce z4L&HOa`1JRjFw0C>BWCPGJbr>-Er!DnJk}|dH3!|-v6Ei*FDva5j8o$c%b89blvmn zx`iwDeox`|GQQ6rDu%PN}yr71%a-etUKO z-+Siz58V4t^4EWq-rw2s?_AHm?=3aAVx5FyPOe!{@_Bv9>tfcU+%1!M|9#xAP+jzY zmGO1=DXxqsc3nvL#VF9gu;Tx_`ug9y|NlN*|L64n=h5{ixQ;lM znOPVbJpx2cDmFZjZ{%LBQ1U|{$)!_RGi*zRV6t29OfjyQMS>|F6O}!uu|zIaZm^f| z<~8~$l;$(jIP=<;O5t?Bxz?56zWfx<2w3RcDP~$Fk{Ptrd!~}?giVVZ`h6?yTD1bS zLf5jcjEU_ypn6n``NSmMt)g%J`(&3dD}61TdVFgB%WGS!#q|H)L9yu7?Je0!a2b=lk7 zJIlZSldY-v`1s^>^Ln}3s;{qaZZH2YS6B1%^ULeo>*ed~{{H^?{ri9U0}QM(6Am!( z+6WwE5sjH}kWIEm;1GxEoC$}xboU4x<}tl9;V_@=AAutRt}+vk2>IFw9u*0VnRrwz zwnp%nMCzQ0$E0%iTwLbEcGGZcw~=Cty9_&Xk${uT?bnlJ*)4-SW_FkeEmmp%pEK!{ z*4jNq8kzzgD;v931t>K12_2ZUp4o~kp|S0imMSN6(4;1x$#-Hnd`;D}6jWIr^h`c) z_g7}k6wMVs-tcScNxl&>Uid0#QIN!rR}J=WgG`pP&baf6pK0B#;7dKv)_e(S|IqTP z!P(kY^lHfDBn2M^rh*0otu;&wt{kv?TC~VrF;rC7OS|;75aXUlQ^Gs*-gY!v?=@O* zBW-T2nVS6qCEpE9b$`7%*E1xDD7EhC5>X6$Cs7{b&y&=0$C|Iw_fE-KU5?nI>#7&7 zPg!v{>xwV`EtR|0e6PwU?)^3O$O6}2weN5Ay{pxTUooXY>`{kmnAy^HW@(mHObn~V zS2N!FUv;8!HIsw`V>@3XL+TWFgBQ(H0@ZeGog5ptbHTLOw#Wl4Y#E~ATh_FCH84KY z%HWxn=X^|A*ah&#~o_thd@aUq2(%_@eo(n6dJs)Vnn z&A++ecI>&o2ZAoh6>IlcH;F14_qgp+;F@+Xn`yeX0SEWW=hFMWu5h_Oui8#OkZGf8 zl}t|;t3X9U#{RJX;vBC#nZ!FHJIxl}T_D&~H+}2RO8pac(?6PjNN3W#8KyUJQoo{0 zrQYo(N1X?oPCh+askynqaZ`dx{mJKH%xgNRs2eR8n#yYqV60XxfQG63sfWl9Z+|X%bmgV9_a{q*`#$f~}^xNodqVt)L+tx!a_?!D8$+a`RG>@vUKHxb!=F#Mk zh)J$)T&F_r8Bcm)lIha3U7*(QNEZJE56wN6tQA&5D;(#ZXJQHnSuFQ;h1`*D`3bkK zEWUR|A;e>b1Ji|unQ|?@oXQ87*Uf5KZ1g`{AX3DG@r}sD347lu1$&(IS57j~-B2`p z)0PKnSu>0TGPWqBJy>y3!GP(3s7sqxvhpdr2c528Hm(I1rd1A3QH^4XIZo1{q6z2OWJ(1XRT{h}T@YkhAuQ@G zpdBjd;Maa6RdHWxSHyM>!TLpSifUeKxJWQE?GrLv!m-ntC0MM{n#&}0>tt0i*n0rF0}sSx&4O>m~l&9d2{Q;x34-p6jj4pJ$zXgy=g8HPd(#&RCJ#Dbx-TFvlbXiS9ST}1b2sr@ELk@>EV=UkTO(iTB|N6>2hO~nwn;#OrNdm=Yn7nD z^C>ebRnC9ovTXK^UtMW^LHz&M6R}gTZB1HoBRu=twVidcOXHtDQJrbFb*-*YPI$y^ z){Q@oF+P~-Q#0r6JW2DdiQ*Gw^jRM5Kl|LJZw@P$)rJ#R?vhhg(l#q2e;`5bfHrw|;de(HN_J(`s*4FSFM}EEJ zReW~!=c&j>mxK3ZM7v*nSt5RSx8${t<<9&6%=0ZO&k|M;Vbg5As9kenO@9Q#4%fY| z8~(m7jbHjE_WHkXQ$Lq3IGFNA`JA1{xpix|EI#y*XNFT2$HtZ_*`jw03I~`ZCK&J@ zi@(aB;V^^s(cyN1q^&{xqDBkjT3##U@TazLh|XBi!E`=DCxLy9!WEHo3VsJ4C^)ce zNQfz0a9K>_>AD6{7Ct7vMBy1ez2DX{%e|T@z|G{rpeP`~Br<_9@K{G1(@mBH;|?w@ zHeO|ue8vg?8yI`u#r2#omSC7N?ZB1;s#kd)Oj>hnUyuH+4ZaLKtfFj;tv2jRi}Dn2 zwQC;8T@&R$A+G;Ym0wfY0UjPj?!Gnar**8?Xkgi*@GRij^J^zEv>x!-G>Y;iGATNA z@-14I)h_tX{l@|)M!5#Y3A`^In*N_tpDeTBs)g!5js=V|3ENp7P0-+B{I@{FiE+Qx zqw_pY+&7Oa&3nI1Z&3qR`|qGY(fN=`O>AKR-0LUO09u?DYQ~i>_9w z{Cl@lQbNrDtp>1soiVO+V+gWi0r!mhJKig>wf| z>+~iBvF-H}PQ9S5`{Vq)Jpv4Nf+{lamd(p=Kf}&gbos1|@VubjsHl%m4!zNNazb(1 zd11w*w_94TRWyAOdvwg_kg!>>akw8(@UdPs1176rQ^g0*ZcTi^cgXtvp@--6h1V?G z;r58XDA@Mu%dm6CXBGwOTKc_R$EP?cSYG~+-PfavY>ht`XedonVB~qgAhkf};w1~nWG`>ynyjW)%$t0^NbgX& zhOnr^Wd#>uQIE^d0~S_woKZX@$W+y@cSxsB;8515|3NB2zKXI+?Mo&pB}_I6%GGPQ ztl+UiL}AliIj62EANPmxYfURwpJnXZl;jr7R*|rQpWjKO=h-ta-c&jL%$T+hFAhDF zI~2ZXqFPx0j{rs0d7ppksNGm~Nnt^dLS3(blfS|m6X8e2eu7g1xVKt}Ofk^;@@HMa z8j%BxQyRDmPTL9k`1K1r2P=j6@QGS|(bh2CuGO<9tI6f*S%rOqsr!Uyo=M=|lE5Cd zHB|6*X2ceS7!kMYfe&;ZOf_>1FTLs(_*M6ikEEwZbKR6FH?C}xTQqx#0_U{SNbBbw zPZudn*`hGxij(Hn#B-MwXRY&UU1VvCMNxbLf@Nb+crOYVyfGAO)+3aockh?2@3M-AI0;&P-HW* ztK`)Z`WED#WBK{=F^y~a|I5sD!VE;ND(>NzvVENV@tvZJS-!H6qQF#vDgPacRIfAs zIG->zzex2vteSS$GnhbuT;3wq9%vPYxLdXYon_ZJan9S+x1 zIr0QOwwI)eie{9SmVXO*|0rEnDZ}$nb?*0w>EAw;g{#I?=+Zirpfm| zxG}X!G-5*)_o3#k+|}1bMNfRYzoT3`>_*eqH7Z7lH7B=!esWFmg;|Ag*}G>#iW_vR zzFzO%A7Sugx{66y^pYuh{5KSrI55hUDgNnie1BO{LcGa4tZB39UAMybHs;NON;a7% zGS?m8x%Biz#x}-4@zg6T!ZL%>gVUJo4osAnoFqTf>ONC$%@u{9A7?VAXGH(V?A^d+ zx0CA`Ut9Hc(b;8+UI(4{9c;sAPF0@vis686K!&4t5?i1eQ&|Jgy8{Bt3i;QT%gR1F ze(YL?(##pMH&gF7b#gP+cs`o?I-AR3r!ecHn&KNr*8C`qken^}fZ>6+Zu1r;HPN2K zk#oLp?>qiqLhS5~hPOpZ0bX1a5*R;SEV*~1QT)-tXFm#0|5T7MelL(Db~jhWZhC)W zm}+Lh!dG1rGB2d@OQt7>Jg~_!@RLw9m>D6ysEqef*<;~VJtBV>nAX;cS6Dk$Y9E^S zk#)Xj(@7a3 zx<5L8M(lLhE`=bGRJH$=8v>p^OX=U3zH2qFQ`faHWd`Z|_gAM_zX*~!mvrpy2F*i; z+B+1|40Wc@+8QmbIV(zKp49KWrh=*O`SX5nOJ4qxFIB8m!t8s>5?-clsTFOSPV)?J zq>AY;FqaT*(o3DR`oX1NCC(P5!atv9Niu!t(*LpEqWYQQ3I<751;z=x*5zLp6Kvx6 zzH71f%r^g>LE=u`s!r=KKPrn?+7R&UGT)+$JGOjKNq;JIuERI$J}3eOEAW zW?*{2aEI4Scw)<=DTgF3D|CEtk~LO2G;1l_rLC3C0()N0wwhDjCauEpkkL=(XmHF? z|C+6rXCC1@j(mtu3!Ov#gytpR%g+hoF6Q2~5 z)8<{p(|n>gTvBm3we-*W1Sd`&hSM8kToRl9Gku%7{g1+%$x4cg_C((ZXL}Ij)%gEP zbkyzW8vze(WgiJ`k~uy7vJ>}>BQIhcHcwM&FjezAn6Xdf#SgBEIky{a4m1ZpdlqzV zA!FvLr8Sd$5AlDoS(P4Ke8@)i*)4@M!<+x~Ra1m-KMIN7Ys7f(T2ex>N~7<2=cU`U zn=Gt7&+|8&ca@3cJa{elug0VUTMYOu^6p;yKJ(hn<|E%1UFBYM{f(zWI?v|nTrRzZ zvtOzDmDcRNd0VlDb)9O`4OgZGr)TYC|209et90s|lcN8lN|UFE>J_lxdnzDSeKPaV zL#1u!xt|BI67<+OXRN8VcHU{(h;yCRN~14P2njEu9oajSYgtt zu;{8Co6Bp{uJw;5Tu@`+TPaeuHsbj<;-*tE0%WOuO21c#G=2QOBE+Mx(Wfo~VJ#w3}CVtw^K*kQ`158&oe7dshWOB*G zxoO{%CaC$Gp6~kT*-LFDxyfg0=d}Kmb&<4TEUWc5kIG!WcRi=vhU5RaBt2D?v?P@~ zKHSPoN{Fpfc~o$6rTGu8BsJON4+{D>N$z|%wL)b@$cyyvpA^o0P*h4}bC^AIecaD$ z7v`N)c;wH(ci_X?k~iv$)~POfsTKc9)9Gb9Q`c5kvxWbjx69kCkkelyXSOmov1oes z7O813e{AAcYTtE3@d(#J-=y0Y=cRKeefjTuN4V;_*stl4iT9VCVHP>9vLNZ2Zqoae z5-)-mE&425_bs-YW!t}Cb_Edz362N+S|NNKToxUx7#tav@@Z9iOiW_1=P{Nu`C!m^ ztY1npz=vtml9Q8p^aEp>Ha$J=DyVQ`j_2lOXM81j12=FgGD-5Ac&Er5oUG33sWR0tf^lviI=dt*kTCd+C@ksVV6IbA2TvG=iQ&Qy51WCJJL0^Nw9v%2#9S7i=Q z$Oz;Rvb(UPAxroy7f#&Txon| z$|m2@uyFp>oxCjA&zTdhUJK6QO$kWVvfXkZA+m?vk;C-i zl!@xr6#~L6|3!KlL;{RCj|ynZR&+d4>h!b-aA^|kIFJ-9*r4pe9Wv#YE}$JYCt@=DqzuE@((9?_m&;b% zc^K=q#^U&7mWU0LW{8MbIz%ky6DVp3k)GGGqTooa%Yz9#Z`mE{|EX%+5t$ia^1xYK z?nFRSq~F1pAzTW}R2Bc%S$xoQjNO)!%rJebw;+?(l37pVl06cpD5kVzTvB>ws1nyL zADfu%EBHp?Q9{052}7dQv?di-_Kqwe#mRONLPC=tm7iSNGAo2jF*3+RRcon1hKdlg zu#t!8x1c2lJeTr(Vi$VU^z+KTHnp{1F8O>GeK2E=EpLMmbNZKdA@38nza*5O+V=H& zLc8v_8?#a`mF`Ox=WIBk@NrH9Bb$K30Y+{c2Uf48J_i|?3Y0e-5Xwn6;Sg$3PMq%M zEN)lq#u8K&Bov+dCtNH%q>eR6FuKn5@PkCdCU)6|1XjsYQj07lS8Q0cbM=az#GkV4 zokhRg=j9kWvCCC39O8@CczxsY|MKlCEjE z1~K%gZz|Z$SChb=YH(i3q@8W)oJDHN44m3044U{O4m7BoV0zAB%-UtskSt}*Au3hS zz$lTxc-xwD@`C9M&!)Br@CPt(%R8vshv+wWo(za|n8c~7aiE&j!GU>NfN4m_OU3rn zB75c?+Rr)hZD&BwqqKR?oX$*Hl+AEqzGn_wgNoNj&DhhI#gBU&Gn!TCzck|x`@#y{ zyEYqp`;0sJw3T)mFX{}*t`@6(lOg%X^XUIN-Nwb@@`pEdJqYlZUDPRh?h8ZL3>|~p zzoL|9Uz)DWmtvv*P{}n&;>5%cA15!cQ5Lm6yhdQwlICYzsh)>coC@3ZY3f=P7ts|C z-dY-rod1~_)Tcgcj|xiU^30H7xWHz%Rj{Q(Es$3>@#f5G#)jyI!nE2MKgI1&z0quK znU$);+2CB)Cc20t-NO7}hwP0b0_j;Xg1?14m&GPc;*V5sU3O@ak6-F6uajw_D^H%U zo0U0bPUCY2vFQ{01&>5tNm*(ye(FNoE6)WJf6v;VwAgf$;}k93NT*Y;UIZMPvM91M zQ^d}Cl}L8nrP+Fh8vBhVb2baHES)>CuSeyzx(z@Zn-eITW6V&Y_1 zXkcIxV9;H(q@Ck|W_0JttGoX^SG>;Mar%*2tlQqE{QGoIVE2!s%?q8F(tIAXsx)$~$c<9V@JVL1aNv?} z+c?4d5rdp?=?UMvP8`$DJP}N2uSGpi^r|B}SvWr>*F2k~ zYO;Xwb!lq#*GrG|cmF(F(6@QcbD!r{w||}skolN;V$Utp=S$C4@NHSZ?)$|$x_mspjvFN0?Py0XG=>#Feo zXJ38Xw9~>QtFBK|#%Ae%!s8`F9l#Fg6;O2VHnO)2F27A#28g z6VaQDx)%Ro2s!M1UR8yGSt0THH@{t%rl0$=Ot?y*sJqHGa8bhwVTT^|K&MkLnBRR% zouR<~;FG&t!q@*l1Qt25zwh3?t>}Jxdu4sak`4xrstNWHf9n}{STkyMb**yWyMf)a z=_;$v%C$Q}^_IADGw)g_xKeY8sgb_toke+qd+RUom#<&z`6jRQ?Bh$XcxEz*wLj0B z9<}6@#zl=Nkp+3ncmMmkp?~k2dTo#CAsI`xmaGb4dr(k)OpPJ)T8HUW6R|Fda{UR> zXBjdcXZ8jpehKpY==e@*_V)B8!5WHJ^Y)mEwrD*Sy5qxriT~5AM{+8k_N=sP3}ke_ zxk%+Fi{&3jlgbIdn)ZH`Z>;(%*if%^^sdKm(`qJ*29}5hwiE7KuM2Je9u}`I%BYZb zXS)>R48dFF0*{y&E~$&(6bbzAf4E#V(CgLoGD*kUSI?bplnd#Z*1s~3QD&|UHe~pl z?()iA=*4$Iy$XMmU_m(!q29~YS{<4y9b&8pDpovTk2V)&3&>qM!8^mSk^M(YfJAGM zMQiG$291pk8XBUGC5;RU44+a$RxgYUDVL60T3J*W`zk#2Y7I-N%^^QT9E~}e4eI7vbS;VK@=R}4Z)}YW6kIc1$X~fB?qjHDgTzb)R`)0E zfnP(J8>+lEw#0vBX#Qa2RiMwf!0dn0w+@ks40RJYmwsSB#=?-8+LCiLEZ(#?N40%l zqtGlDBhN{u(;u)OVqwr(p)2ah5bPkGZd%n@ArLAc7UYmyf54T?phMD-;aWuRH4mE) z<^mfygpyr-W^L&|<&hUE(D>+uP)I66h=X+Vgo@c)Dn%O^ZcgG9XboPrLj2TJIZuZc z@tYIneokE5)|LHHpy!9+jMl1CEvl-4Tr;-TxC9A0E;D;MmBG3~T=J&?vq0EWbI~L< z)8OL*AqJWgD+HvDnw5Qd*PqLZkko#_?kUF9gLk3fp5@ zgl3t@+iMDnHkK+poXYT^HmWmH?4&?aQrrI(D$+8XlcWkK^DBy#%$#1ebNX_%Nt4_s zsR_2UeiGak$Z%&{KT}cCvFFtZ51wu`zCEr+VNNp28+I#=yN3 zTNDn~zFR({Jkn*_PXUScHrYU-qv6xSGjr4%Bd7dqzP4O2!NOEMSny!E!2iqBRvehc z^01lxq6@=>c7=s8EDBvUl>%j&QfF??xnw!_N@q$Pr_d^o8OsZW-oG%4F!A6?oKxwN zQotlpuw=IC#;G^i(khhv@37CC`%~cW55ajmXFuJMDCi`(^=9Aem4Y3db5=YEnvpX9 z>rU|q&-Uw6x@Iv=3u0Vgl;NfNaZXZ%&@7j!=VmTYHDvvt6h8OPW>K+I3l*dmDOtr| z|0#G=QbjMxsL zn@75zyHC2B7WA66eQo**|0?l7F2$m9p+7sFdAOFS?G&2UHCgwgy<9|lW|eqzL7-OD zs#UvIt@-8VZZ+x9#qj)D;=hA(k6Esij#yT$IPZseqx>?@WXoAALxlb}b#cv^CD^uV znu1`*_WwOBY-%GHX%g$2ANO7E4W3*i|JUy<&aE!>N3y1YV{ps(rNo5xzkp ze9iGw0&Tk%hHRSgWaTUy^^H=E?ypY>sF|)TYFw)@(f30q*OEs|xtS*G3Qo^E(tP-q zjog;CY~1TF{t|e}wb>+kv)O6MPp_smL<(`u7H8F7&fe($dP`$@m3YU>HS01rDF{Zg zY+QWq`zp7ai*+w)U2U=9}3Unh99%`1Wg~r<8<0^A>hP zO>VV0nJxmP1m`T5u7_a{Yh|5{u=Q)I&G-Fk()p6}Wu`%B=h z*o6FzyTT6dy}LSCN^o~Y(CqhFzI88l|NFgv-|g-ERi2R#&995xO3S#mvsy>N1S}NGu>GxIdN9ecLu`ip0iR(!f-5B{wa$lDB zu_;#DimojGt#xSjsyNTWE%G1dFm5=OW3yWF;3U2m4BMp_1y~>H+H=An`pBW`oza2} zZFBZE%&=#%5>V{sVvQDz>vHu<>{0#LGqq+;qR!UjIfq(*P570xztH+r@WJvQuMWuT z9GCSzzQOB&6yv_=Ri5W(&-oI)b={mD|K%H}eGxpEW)U%l z#(f8Q81~HYE#GxA(|cb`=brf6vRR(m?KnSa&&(}0%U{$8Wz3O!vu5qAJDWT&?%a5Di(cdUPwD~l zUUzsluGf54vF=Q6S-aRD_Vr=eXE<%IxcGK)?>+1p$mMmQrJ^Z5IrQv@nZAB2&MvSz zar=$XuMnaC=BFfWS1i-H^hrijwf5MWHG(0wr)t7CFzd?ySI*t_B}T}sDfk}Kky$2n z1t|-yY)@TPW38!}(|%_Tlb1QS!3}POv#zx_I&vG_Yqv|Ts+Q;_H#om0o?BKIA2l+3~<|(|S<0HUbaBGY1&BK3A zPrP`|bK@a-#VwMF%Ins8{<>{f7$Pkfa(j#H!H^3V|4J{b-XV2n_Ki!ncYU|tsQAb} z?aQ7pZHXXViOGj5^tL8sJ#ML3cq=hmsN?0W-so%EUR8C9+t0qex_a%Qd|n~eY@-R$ zxwBmEvD`kG#JgvLAqQLLLFHAYg06Qt<~>-aejxVnjpuvrD*QcDckymxqwD|2$7`c` z9GVjE&6|BskMXu-<9deQB0r?=u3*^rLVDHLzkHt6naJ zck&9K#h=d>$)EE`2K_gwMi zeT~F9Zgy>JbN8?)UeRR?{G%&gQSxF%L*ymvqxFeT*Q`Chdd;~Bve({~t<)22Nvab{ zkvkl{`^A(cy*hV=9{v@aAbr1np;=(hvLq)4z6C5B_+GQDd%h*^^=z@0jCX4m>=ifq zJ89uR@&CU6#Ql?RJY2bDS=^c;#+NT_uN9oVCwcL~MHj)NvwdgRZP4DQ!EYJ%V40`# zKE3wrt53Tn^LfrIa_uY6d;MbGyIE%MbQ@>XzgsT$dc#rMhco_)pXYr1>EBt`eNV3c zzPi-r{z{n_ll$b=4%SA#+g15%`mVYAuGj5XXx%hZ`te<#rA>1L7tNAXy|yZO>#JAy zKFalHCVzca_xnV}L!aYq>*eo?AABc1!Frzh!`0XH9ycs}!>IrArO$^o+P4qo9WV9S z>VNU&uZ6*kPH!^p1P=GE&+B&IDJLNs^!C!ukMiObRaXnX&(D}-HHHmTl zjWZ_A)X+-|F+V4uH?@&9`|AzkJ9-PF)}DGEEdO&-d`9k^^DGC&f4n}}dwGhGj`S1V zZ?%H!Vs|cAZCuZ|;ktE?@p7MYtIvPW%m1wQ_RapYZ=#sQxGv;Resrtw`4@$cs{S93 zY5acY_H^4iL(RuOuKen5<5k!pm8je*zwDgp&r9}yOVsov(#?Vzn|wRh>&%$>cUs)` z^H0A0xhJ}DVNAv13Fn>5jTrXc{Pv&scZ%;z)rUdM)*6fpR`fnzp!@z;mE$4*hdvC6 z3G$#;Q=23LAe<_4*X9##Kgj?ar1`5LARD>wI-FBK~KG= z>BjDBkqmz3Gs`sho=wLBMW#8nwf|V8LS6(ca_yCKofYyjXqoR^yH=^tS0SrH*Tx;S zx_r=uS=u{sj>QC(=0@J2CRK|QNt%qpm3eza5*Eo%@=yyCv^t=BQYDf7pXbSfMYnpn zjh4-^2zq*iN$a=Sl0!jy2iK{rZmHc7c*=!QWo64$r=Wxz$1F}d)m7fge>SyAoo&aK zi5F6uy3F-Bt(WR0cSkec*tX(9Uf83fz0RS$4F?LJotqrisno9`5!mOGyHGxOk0$@fRQ6OqiX}l z7LAQlE4*JCHYr7G9ysM8mA~ME!mcH{?Ln_rEM$1mbi!c2*KW^6Z9GLM9sd2v?%mI% z6{InlPnv0>3RB!>|AqEUEDq+aAD9o=cI?U4FnibMVx+0S=&{LDeSV9Pm*(;%o4mBw zAK7Fn#~7is(8q;^f$_RVlgHjRi3UMMcFwAXB|%@h*1LuLnK4m8OgGBt_sh0icqNIcyB)KO{KDXhC@YVI~mt0ak84PSY{(Cfuz4)SV zN3F=jJ9BAB(xSBGN6n&hw?Ew$oxh*eJmz&!?urIBnE-_YT19)sM4e2&6f~+#D@fSV z#^F(-EP7Z;fsy4wuE&YqPcpA=UKc4yXq4tuT5!uTR4X;{9G{0n694T`kAv=I& z=2<^YnT1wNcH?>I!^2rsE!GfGxL$4Dp~V}Y?aE%ipUpaF<8ig>mG(b`#YCOim5wOc z2f0ZZMJDvP8pG@uQ+kJMbkxb41 z1x)+A_AH;|AJUmOCE`@6fB}2D?@}L~b$3EK*cdIoZi*LQB@#K+W0u06#N)Q*cgvse zEx%vC{?ztejeje$Lsn$i=53C+b;ot}$1Bk*eBSiROx^!Gc_r75zn=<|=L%(39?xEOm8 zs6mE7>Ve1KDMdEoml8Z<=bUEM)Y^I3V=L;p7YfCoYc!1|b;* z*2g=Shy-s~#w0PJMRSU<_SHShn75qtomKFOkvrf3^Rty}y=x{ja%D6Ktt#;P{8O0I zBO^W7>)|QYkb{#SDR*f6Z@ebJlDde?lViC}yoRuo&O^rkQ0{AgC#)?K0Nl3oj4XgcY)+bV3+w5w~2cmYuC1IKbo6Y zS{>0Ym{Pgf_jF#Xb<88N>pPBbT`3>+{Qv3gY~nl5x8{{BwT^vN_EzZAq9zfY6D}80 zx9z&mnqP6$I_{HPx_yTBtE9Qnao@IG-}}BbzefI~)2umR`@SE|ulu??{#sOkO^s@2 z?N93jCh;2w*r#dBCx!|$D&IKB-&W9~Ds!1V;tT`tjuf9`EVDVwZyc6qE9_97(b;~l z2}|5p08&sS-@(W;q+hp)`fPrl0~9>Gu+H?UF>fw zS)yv2=@owK()42`%S`uX`jy|hJfE#}g{y5=(DYkZmb;a%3f-F(w*A)C^=+kVQf;%N zuHU*g>1>PqvJEU+Q+{0A&t|qE&?bk$JM)Hy-nPJ12|gPu-X1y3SGHy8-{jN3!lJ)O zb5t#Q6wko&Ae(ny*^Z-UA7$xFMBiX**f#&u;T2`PcOJKu?@^A)ON{$%9atG!v+r$e z<@ek7`ImjqU*4KmYTnw#;&6b0M`B(1|Jx7w>+=u1t&Lp1;J5icyQw0R4&2ExmGNwj zXcD@_T{vm_pA|yq#STt9ELx>CQGvtZT+@lLXxH=SGU_*%tSjF;(|7u`Q*)h48K&?l z?fvSpeM6sYwAhi?`R%_Y56)BFXztpqc{BXh&aK~GbMz}{bX7lKtv|3cdF4AFN!?@q zSLL>Tw)RTV|NTJKzVfcQedHPhp4l1pPQBWN*>H z=+&|FjI91rO&;IUrN?XE9W4E&wbV{?b^YDvrS>(C)Te$A`D7c^5O4NS{Ql4L(_emE zKIPA1o%uOu+v~n62Q=@$iS+hJ6%Dwle0li zX6MuiO)b(Kb0QfmEA5vlu<$ME4dpzz^aKn0heLVB;zy0;RbDt)S~ajW9OgN4*z)zF zU4;x)PE&VjHt5<+ouk;`#3Sj%v5aZLfhi6}HSUnTZP#M&pN`!#n7mXt>>XRb zOS1&4G~8D1)R1vKdPqemiDAmB8A&3d!8xLu3QEP*oGJ~o87dlF3K`PR9L~+z%(zO1 z>A(&_C;26pCr-BL&{R+i-RU}g!VaGcuEjN-K|dBccOIGbqq#hXMa|dQDX0Z>E_m&v*7Blpja6P+_Wx^JAAQs6$H zr(w}AuSpVXZ&-NzdvU5a!R%kblu0%^4imh0^0ZE!;l0b{k2mdMjHI4oM%NITkeRL)t*^+aI441@1N3-g7Gc2sh=2An#Ta*ExBV`>c3;xC>O zAsk27NHd<$Jmn(Ke&ZBxWalQG9zn;3Lm~`bO};M{YFw3(;fv1Qm`l3WZbKbW0X*y^|lIB|3{Brr@o#iDh=YO3Mfcg&MmB~~~F zFnMk9oUvd#>w?~Xg_a-*7XK&Wo@dUf1pM!=>sqq1hV!xy!@D(2A5TnO*xWHmkwLSA z*U5v)YmNsKM+4hlN%q_T?N>gxie^t{n9NYXV85fq(V^+d#q-5y{8R$EeP%F83fZ=H z%y?7N;5b26wL$#tmow8Rcud>j+uC5m>M=QFlVa?h1%^k}l*(PDo?X5JQ# zD&YyL73Y5};bm$#edrM5Qxit3fKJU&KW$eohX7`43)UTnSvPHq=>yg1GA z(#1fRjvemn8YD6rXC317Ua*@}RkZ*1$N3us+>~=6~EBZtsTM zGv&@XXsY{kESoc5>r;o2G>hC$(Wwq|89$hEH+kL<`9D=io0Zjg*6bMlz`iIBPL+YCgQcg(F}wwYMMZQDBQzoF+rtybXxKhXw>1YN&G+b#!>#z!uUmLGOW z2KY(+xMcKn+A>83_augYmK+-l7~H$MJ2N!TDRi{Cw60J&KK;Pu`%2^dwIE~A*5x(mEHyByprDC0SYr*SOa=pl6Qr6ILI;{ z*zxCKzhkM_x+Q@TtsHkl`tCYh4p$YOxys?I1Fm1!(6Lx>NiBeL zdZ^zFTQ123LCLYZo`m>WOt_YNa`*fxotGPTP6;?s=gaYL#`Wfa|0noUJBxMIS(_ZU zH5^yr?T%FGyk>c^o8!ck4Lh{<%=_}^dNW7F)TjIsCTd|<&uDGhzrjH9gmF|zK~(V8 zh>*WG_MALE#o)q}7Z+Pjm@_m)tXELDbY<7_uibIHYa|w2au47<66$xE58QY{T3OUzMUK_;kKLd8=7r_k**YoeoxRoIXpxa(8|0*%=$#6Us4XRp(yU zj(xtjj>UMjTHJk}dh=ixi&ib;)E{wAdE%D@G|ql&W!`be{J@=@hk}KFJA+Q0>AmrP z(ra4|xr3ZGt~XRSTD3lyeJxh#eRp_maOb?4u^|czrWvUfUAepQsK9;(uQxH*HyXrE z{oq@ns_?sX`qQb=*PqAh|uQ6E=WEQ|F9_AkwM_vH&C)v< zEdrj%9h-D<*8lqpBZNM2N=#Zg-}>!j*;Nk|9TP9xPMMVut#|5CuY@kI8>`vB-HAsY zPvJ;DIOXKLKabSDJ!U$Wx=%HM+in7%TE}4@j#sJEZTgaGIk^|ubR@mg-WuDv%<#^h zOOcP(Fg{swDR16N_YE+^zuNdYGo2cD=1l%aR|A!&d=RG<;Q%Zb79t@oV}_qcl`=|>cS`&$DO2lZWmvd=d;)Q z=B4az>+mmVu@ne4pU~{~qh(qLi**C@VZIjMu#SCh9Ucpq%^I5B8FE%xupZMrC!%n9 z@3ZWdA1n?6!PX6LdLwcyBA6{UG<$e(p0w*YTGniy(Q-MA#oqO{z z?akG^x7YdJ-q_ZBb6xJ#18)!A%boNgdw<^l&fp9dtBPjx70kzDx%c&53(8=zNMN>_ z(K4g2Yl8zoFZLUIt$XTynMCtcUC{^Ly>hyW*WSn|MyAn3SkpBjw_j*wcC;pbTMnCGEL-AJ2UcWf=j{|8lROhYxLg{FJSIo(5!cyC4K27$qjGS`#))x3u_-Q(hcu0 z)%Vk9FIMv}o~6O+)PF~8!KdB@%y!E!i3K#<7!^NC`QIE|!LocMxw%?m!e-0#RW zYgBgcunaG%9@+4t$upPWe*EHVtGk3t&NZj`okl*%}?n%^i% zU}s^<@6zo1I8WhXi4_Br1cR5)hs1LW8#g?kx?ua4C5v_My)sMVWSia@?ilUUl(FOP z#VHS@^O!!a5=(Yi_Mk1mrn@t{H6o+qgTk!5?23L)t938Z`6j+;**jxJ;f7t$!j{Fi zrgI9O*Pb1E&MknmL*K8Hz3b!IuLkCaqWHgD&TG*=|5fIIw2Qi*<&UqAY8n%lb4^nB z3w_TyjlCr$+)q59GUPyuYyTaIfS)$ue%2P13EO`(Yq0jke-i)jzhXjv(L{faY34r{ zt^Yae$B&+V#=mYIK?g2rVL1zJh4pEEIF%Cy0&ormjX>MNk)lj(=C3qZHS$8qHz5TjwAk@4Li$s9%9idWt^Jv zZ>Bicp7Rxl)W7Z0_mkZ4+Wp7R6LTAv9{=}<<@xFjiJSg&PAhMW>2EyY_A4g8(f8T^ zpGl?vTROh>T>sbdpzh88x|W2WJ@Wr&GjzDC`v~Y{YfC% zZ<8)D@`mNql+AziN;fcJz3ZWOKy=>an zJSFbd?J17YP9Cb0&3-Rf-f-H_ar51psa_A4vE5*c$SN;jU@u6$9A~w3?WASdXaCuH zt$5qGoTaKe_y4;;mS5In@vV!rx|>kC-m-I6!KaIY-jOzbVHY zMTEDmikDB<_%10Dy{>%ohKp5dJ=+5+A1>S;Q2TIed#I*P%W`?=%$Dbee7X0!gz)mj zRyehaG^Pi%ai5)XzmD-&J6FSN-i}jcCLc>enj97`nAq|9=o7g<%U3&;`)z;yP@dq( zwNoS|O|@XE(9)e-rGtuQx=zn6e|q&s@XC!>gVVjd+E_xTZEOt>uG;wYM&SNT$w<+u zE0=|&tu1^e8N6nus#HR{o12X%eZUC(mx!4csPYfoKJW}mx&&40!k!wHW421o8Y zp0|4#;KjW%OJMc7Lt5I-TX(grUdQ^eOTpy;mv>HB{*6_Kg)J9+xX`rxPxS>J-vgG0`~1|s>6Rx2(ZIlvZpNAseqbgjuHPwl-WVZGCihKG8%h%qp-%Lrsf z`p7+f66t$4O>9P3XJ*(U-^j=?hNU(CO}5R=n<^{HlpA>MN@23nR+rn&ODm^LPfNU( z9uzr?^=nYkG}q_uGoR>6%;VNPC&pOKly`N08tbkr3o^_@k1|YDU9c@^CUbzs;scz= zuPu?c%DEVHEe#N+J$7ku}Lmppbq$iF|}Ba5v6+D~kT z?`^)YdG=rBW`EdFqfs%!CL z)GW#CW)=w*QZQdWW1~**;tr8>H>TOIcS>&MYTjPb6ryf6v5Hm1RnUE@Z zAb82MW!H}!E1i|?r8#B8oP#0_J)VNHFDGo;<*v(`y>hXK5aR}y55BryNo&BXO$dY?7}3ljfI6jc$1FcyS}&=uTJuFZ}MI-=Mkr`g__aim1k0ojAsfo zI)}}=DlA>YQ^(eMFz`|P*-xTRSTEb0aC!7~U;mX)({}3I)N{Wf`#=5~-wbxiWg#U$ zCkDlwC|mI%&aua7Vz7mW3b!!_zxbiH<~b{rb}OmxUK2SX_tcwN_pLh2?VWrZ7CFt? zvPV@fmgDd|kqru&FF4OXJG_}M?}>tygQ{2Xs!LNhZCNUksl*`QFg2)SqHdSvDUsDb zCTgb{YDTj-h_5s{%4YMli=jhF>jwt|6VIZRezjU53%jl?|FTvmxZsrhijZa7G!$0F zea#A5#nrH1x2V5B>yCW?qv`86U0oTR>#a7uX~w27)hW}t=PsLN)at|8##mvR`trsh z&!rVYnp2IsedacKPB;2y$z;sI^}ur;hugQQtevV_GZHSjnXroNeZ#q(qlmdo=>HR5 zQRei}S)vOV<}x&{RL$_e6FPxYYKsE%pA-IRCw-elw#2f}T#&}Qi20n+(ajrdyfSijGXXCiFepzUV#6TYc%(4_J+N9OV1w6?QX- zVUpfp;18D%Ufh+4{1hpeS|4`euMNd=B z?T-7GC8FDXL^UgPy5(Nq@;LKUboC@@;`{;pdqp80XlxGNI>RK``9+a$X+cETe6+Zy`pr#Msm1ZSli z-*$Qa;@ooF?v*bNzft!KdCtYu>uaD|U-%o_qJs zvCpZLxqS00b9KuH%=$kLe%H8{Je6z5{o3t3>aKT7Uv9W@%jluOR@I`g7~v9;%xR*^ zPnXY`o)lfxCEBq0xoPSC1$giFEe;<{+dOYR-Z;B`>(S%7tos=o_6HuB_*O1rO<%Vm>--nDJ7yl`Nn?GfdbFR> zVM5}`NX?@MWnDGT-V0qJ82yGfcuSm+pR2}R-{XSwLpwqP3|-!5PI{ShXR=~U^p_bz zkM42ox>6;1q*29HTI`7QvlG(|UGfBvGN$?bjhxS!Api4!X8g54RuvOrMX^Ulw!tQU z6j$*)*#IJ!z{-)ml`R4wLuk(Zd$h)#6FiY|?HeFDXJHl}Ev_}97 zvtHCi%~q9HE^@c-y4A9DoNk@}*rHNA7SCMkLR@zYefzQ!bJ(~Kp7=NP%GvNLw0~_ta}<1i#uPNj+DyU2;ad5~dtTcycu^$R;sz$piN_ z3Jf)J5fbr+daXf6Q-eGfM#jtt6Ip0}DO8Hj@72{*e}QEA)Ye2MhawGS5w6f^fvb^n z_d||EAJlb`$eWtLIRArTOXo>dSDA%2MNb85J*?02F>5|a)pgadVUpe8D15}+}CzH#2(9YGxT||%<>SG<=Kaxm8-V0UP`)mbCLE(+0~^9@?C1R z*Ou2Bo%QEU44(4%p(^W+iBGSoB&QS!8Y_tfUr3F-5a{1Bsm_f38pDAE-FacMN0|$* zc9$xf)G0f+C`Xw--dCs?<}x#KMncdR3(gHMj9X9~CFYnQ7VP45s!*)*>_dA&mX?qwK7P+9eCVmkXa7Gol9`Vv) zndWqK+W#om>2B%%YtsLTu>7fQvEua&J*6J@N@KCvs>N={>$O%qsn7_zqQPx8uOUnD zN#(?Z2^wkB5(Shbg9Q%xCbC*hYkj2H8fT~6cJY|mrW^KcqHW)f2yS}Zrnj)SS2=47 zYdl+Dv>NN-saio2azaKPPjy>6>?Vb(#H4<@XL~FoNaUK>t5<;srtGoJ5}516m2+lw zmiG2<9laonN(&r)HJ5R03atL7XvpI2epk}1EpJoh`N={V(r)0<_S zCl0LOdFu2*d%l)x(0>*k*(usubF{afRGP!4<-w=r*x(Jjx;iJdJ!wK7O$9p@cwSv?hJmGJ$3v40i47pIDs?s=Vi>~;T!HJk-HVJ6-V zjZQ2x4|Hct=e!cDxutDlQ#2aQd zoLD9NJ0rc~l4jmTm;OcTUTs?U`v0MICzYl<`sn@L`#gBx8}}QIUM_(u2V^|2yeXE` z`#Ej>&$=Tk`}+9gT$Aoyb&t?ysL9=xy2?LyRr0Q*PfF(m>gu|xq%o|?@6~EpJ}Dvk zjjr>7r>4)e{x<0fd^)?P&SmYn83|p=OZ7BjPUhcbk{+cXIId=ToR<8X2KU8pT z%oQpWmM|2uZxQOxRERoSS(~Tq;-nmsK$K?$cr>wQ(4XMB|>e>y@wAp#4ME?k1a^pq3_D`R#%<%`nIFI^X3J5 zt_}I{{QoQc#~QA@Obv{SoivvAuDKQXl2PrZnJ%laTEdolNlZeAx9Vyc#25v;9G$yj zWt&{kl%~#Ky*HT{Qa&wi+qdG?kG1T(3xa$EP1B7#c72-Aa>y~IFi2nv<6jTibA_Ak zIPiYi@Im2C^AdKM&wBj_mT}oci>yDMJD2IuoCBwqFnl_qckjRL5pD|;mww^Omo6K1 z3T48NdR=DWTH|u+;t|dku20{Ve5z|XzRAbGqC~0vi--UE{#hnox4oXMyY^4O(Dy=s zmj4qi?kyqyUmfHW8RmR&3Tccv^2yR)!}ZHq(VMTFEbcWZ=^Ajmtv7OM75fmRU=XG* z5PeJ}>`%JtR~I!Kjn!6b?ea5T|9s=#qPzB7ZqU+Pf0M+eyI8}GTOvB;TonwSw+fm2 zw{9(pyFVkNf9|X2C)e6&-{krq$IX5}h)0)U$ycW}r4NI)PT-m1$WauuVw=0B$&+0& zXI`?11hizoc5w?fSzxyEFw;qy#~;47xN|*O`FxQ}{=^dh6SC!3%$)C-`Tl>h?U`44 ze)7=|W~QzdhUH(v{ES(?cs}U2iYl9aB2T@wNSL)aer1p_hf6$*zuni+MP@a}zq9`` z7HjoYTl2tv+51psf6W`wj9(TnVOtTIr4?1A6&-RlHucb5wgU|3g*lZQOnx1VU~*^( zZ;fDdxDwPN@6r`fsivip9cjSOr^|R))YxJA20^Z}E-eEK_I1$`2kg&nie}MuO*wSc zh@mrYVnkU5!2%Pz`f>HPDuRDmGgg1RW!II(4hA`pXuc%1_K5m1BXMZjM0}YoF|wz z>OYR0-m0?kD1%M|vjzjF^NKiLHb#{Lj3U3I{g0}O{AM(9V4k7jQ)!`fCpS{Wfl1=P z)p<997|d8!TO`)EB-*oWQf6R!v5A*&aRN&Nlf?n16lKN;t$ydDt;rS4JikRl8S7t( zC{8F~&~XsbX=IkU8I-GRmwqQsxpj-t!UUGz8`Nc(|IC=W_*eJ@DUo13zjqxxYq#C= z^q#+)(dPd}$3?>V3z>E;^)~;`$hrPwRK$-{%10bu&SK#DqqlX<_pe_gRkkMu*)W}m zZ{h0r6F9-f>&k(X?%NlvwhR^c>w3XKr|yXQ3jwDK0h5G2mHkTbud({5cU1X7jr^-W z685d&zfmX=hfe5pNT%(BJkPtUD;E&Oc^3_rUr)rQTPE~no5{=dh* zOWHv;hoo*W@SbSk-r>OW|H%R26O9)borJGA@LXx&d2m1~qeNp3_b6`B*T>o8uZ?J^@CvE%B*7jfYSsfU%f|T8O zB`vNcIBlJvxGEr9!O7-o!NbEHIT~qKc5GaDKuSO9$c2q;0`6@yu05FGxWR3*gY;9E zn8zNQrRA(NWYCSzKc6a&5XIFPm&yU|<&&V!jGov8!aEq}l z!-g4!$;Z8n)Cz1Q8ydVfM>YMweWwo?F5JOeW3G0fs{H*6{s7Iwnmg;8Uoi0L z@Z{Dgi!$C9H~)}XTgWg!*vDA+LWIK|`{#@M_3r&EsQ>?;af&yqFo(&*mVg?m4F{N+ zudL`3=29`3#HP6>V1t#C$wLip%QqJe^E>hc9uf4^xp+i4&?oSy=-=jZ+ZoI*cWk@D z@gZ69nS^(f@p%W~-Yq}AdGj*fd=<3F_`b*jJ%hJd+7B%5NL}{T6R({-N%NtEa-Q{* zDal=@j?U@!?o!V7ez0k$m*W9*HnFIr)BE==(P4b`|4z=CW4(HTm$x&zMXxvf?$fm1 z@WhkF{(4RvA9^n+Fs5F-=tY?Cl%ymMq zhDPRIy&9g_8+t7=vvv#DNe%9VMq~3|&9=u_E=*LkpP~`gX<%-&?S|%~T`o71e^*Tl z*J4}H(;)F)s)f-=*7$+np??QTjowI1a=MxSc-L1`)(NRyUFkDdJ&IH{)p~kU>ycE- zy`3DH4Es-V9r(UZRcLOHf7_hUY4`SVEc0Q|lu~*Usbo3J$^VpCM1^u?Z|XIb&Z$q& zsrPjsowm|P?#FfGiTZ2_4N-}C8`^jtKFWB;k^PPTP=Ir-a$3}X|EnLKFYMI2^qxZUSsYnDYU{qPQ;KuTxe-TcdS{1!JMeL^)Fm$p_dQrSSXqm?%Mpg-p=qHES zIBzqupL(}zz0bV3-HmJCrb&rvO)6-}U3LE$_lK3T5r_C!|F^EmIVyR)d%|)_heM2- zT;-y9(aH8aaUvO<;aRg&C7w|wg=``>IJY}QslJ?y;XQV_WRw+_jkYF zZ{&~r@v!s%h6hIlG~z0`6Z>u3mQH(r;oFOq>+k(~z43h9@3%YO->Y^HWqbGg)N)?z|1Uj{q20~JufF79%m17LW|se= z6B>C-9xy9PICA<;XsT6gNp1;st)3}@MQ6WVRRJmhbbaCxh%SS+o{x}CwnK~ZmFr*Fw4;e`^entmJI zFL!c_$_UG8OqNJy%-=s-X*W6Q>P;uhO&x8EI z84ha97xcXQCQVst@>DZ$<|+PAM%yWkGqe&Vy(7;}nzq$sX=T(&3GJJcrtkgoRKHR3 zj6&R@|7{mfE-;vwIo(IYG5KW4vzQK#MLs-Dv(DB$Gu`-8TvOwiIol6svx74Q?R6Fy z%W*%q)Vw6gta8cOJ42G8tkbXZ+-3FVf&+}JSl2LFEa*7t!y@ly=)7kkcbeA>{^T<^ z57>J&_TO}#eY46_EjIGA!Sn}d|6a@t?5$g~@Z6PVHoXEy9)U(teIMauwh4zKrZRbR zlqzhMC~oKr%8!2AsjfTGqM=S~nMm7}r*4f>S9&%vEm7osDgNOQm$y#oN>$S{CMzYc z&eh7b=?zp`E#y42<<?O zU&ppaax9kG%2Dw@@JO8g1dc;K4;i$i{od)FlGw71D{y7u>q|3sg>X$hX1J(Y)cdJP zu!V11fZdnF9~+h)6O^20IQOl8lB96Mlt)vyuKoKop7A#8ex|SujVH5mORir!n(-}g zDMN0xoWiN48<{p#Wdx|HO>PMP_{@~`fo}W+gPF&lP2igOXJv<%BI|sngk8-i)srPQ zL|pHizGtP#p*X_>oj2cY-PTa4o?6m=^q7TFSRqrx%p&(Yd%GH)c8R`UZ1gd@A@GZS z%Y$jD)f%lYu3U8vb=7SAzi88wsnZXMx~XdaNMKQ_aTKm>TpM`%wK%JLdU>-06O&kg zX=JQH_wLK<1AlreYUwaA^8Z-&fAu11*{9!*M{;@`5K`cAX3XB|lA6M^lkamZ!-eaI ze9JZ&*vniJ_})74!N-qN_n$g!!TMmQTXmsF@|?Z#ible9FJ9#-{$xL{(7-jb;6ttN zl4!=5uloCg4ovw?!ayyh9}OH|&#_)v zq_#EIqA@o#`nJ%Ddxux7<&AKe-yty9=9_%R|Gff9!Hrz?FN~Z|>9ig#JYx7_)546> z>780Htna&!j&WO&0HzTgDV{Jk{`{T-sAs} zU)=rZmc6&+WpvvZ=9T?Ct-PY0=SU;e;DrwHCzpxn0#!;U6l?4CpLy| zM#VP=Rc!xTCbasMwAsvi7U;mLWY!R;*ki4{^oP@B#@&qn9~-p@d$3zwO82YU^P}uY4uqEPxI0dW;g`^XCq7OeF1?%m?Y+O0!o4YLp7J?gl45SuO)|)g5GjwxE zHSsI(zv$^=p36M0*-od$az3F=1la`hm$~ zf>PLo^+y_5jT62~CGk6b;65xMYVm=4Yrwa6PW$#XUzqXQ%H+}JEN6yoU2NH46b~AE1c}&eTp+#xgfn9t09!fL`Za$Icz|A@B zLaIc6w7~m37w7E~%?v9hD23%2a$VGWrq!vlK`eJ;?YYw{j2u2oEaLgj#ru_k&zXza zYl5Pmz>A;)#>VSp&gBcrg0?JMLO%MxNt20hUNGg&-g_*f z8Tra@pNYmNGrVBkawd>L%UlC-Er!%{i661Deh26lYx0v}Dlwx>2EZf#QTqn#`YhKVDkFw@FXv zlKHk*7xy`*Xz|)IIi%PK3QDT`9ndr2Gc>i>a6>->Clwk}Ac(b!_N zBbWummoL>x76@s(@M@8Xq_e62x=oWFc&v>QdYKf+LkHF~HlsYJ#kA(3Utu znM5F)-veNs%E zD=v0Px%Bg`^iqEu-fZB;Qu5#M)uw9>r+xhL*J=5uZHj zS2Ij`VkhH#gF}(gal5trD5)c9`<6F8j2x2ENqWx8Bl zVf9siYLViht50*VPFBt%gaH70;dd6~%TzsV#cS zYIfO|O18%i=3Lc}T9$BMr^u-B-ix=<>#pVTtT8NmVvlC^O{Mxdg# zsi$8%M^x^+`->Nol&*=EfBs5*| zSD1BzUJ>-^WnOQBS!JNxY|l$mY@*_W(0b5LF-T(dmXwbjAp=Ykf= zM=jDSt+9e;pmT#CTvzy}BF$9xR9wvXk@u^|XM-O5G4QOX^md`?F>e7nEo zqZr|BRVQc84Lq30$Kd@nS2>DpZg_FO*dxcz9flhow{89?I8)%iex9+p_#wkH5py`M z>OcCi&*@yB?5~C1EWzJbNxV1GTzIKp|3F~nIt@#u3A~b`-zwJgO}e^*Ps;ZZhiQ^b zr1M1+r8zszCdYD#9x!W=cD4^ZIR9lbqs7Ff#!7P}cU&~^n;UyMu6B|9LO(r&sKwGr z)xDqenLlfM=c<|hk=u9y2T!^31WSi0I~7j^naUl=;*enY(6Kyl*K*#c+ncx<7<6F=$jlxw?c=zrzW#Y%nv*`b^eU`h0_^UED(9*Vs4Px z`2LaE!}AMn?^ydYY2nfJqKa0VO|4zFeP0pC_*KhdrE0L`y_s{JszMtAW z(`k!w(@NV4?)PS^BK2o%HJB!?w3;zxwRDmfqg%?Msx?1%&RY0w8*l3@@gyX?JK4W&x3)j8>y-vD9 z?+-&=@pqF_8|6JU8*c77@Uyb?^(297K^)V=jb&_l-IgWuAD$o;by#xm#otbgLZug1 zPg9&yv(i^)!e#TLf|XnMo3i=NQa)v+S0^KyB{TW2G}r&>y~Q^6=7;7L+%o$ibLOm6 zM9b6*?KaD9&$&AD_KG>T)wT8>nOQS^rSz(WdlcOsa_yfXt;E@LIt_3dY(|7+ry!+!3{&{JPEN3>Y z*}Eat_DbjM+iNE%`AxGkn5}>0t`kR%;-q+}TiY~gR8erTR5My`#bljw$mL7Sl z>I^68x6DzJlR5VItHHW?4_WI!d|YJJno#X5BU)s(q~hXXW4XuNk;)>LpX9e5{rKpp zxze%omrfWjS{n6kslV;h^60D8)^DFG2|s%Bf9j1;Wt;ui8m*ER%$=yf^L5eGjQtP3 z?PuU|65Swm|FOP;Wc$1u-T$~uXH**>dZ{UXtM(E9Ii3J9;k64|3|+imXU?$;DPuYs zv5PPHjW)}c58)?`f-aTaQ@=J({|)QnoQyyBd#s+--M?>pJ&-F<^O4!{D_{TLRqtA9 zZ!-VG&;9=&GhJeQbcoe}i8V>0RV&fSmX%d4Xhnd}VeV-PQCmy|CmwB)knXy9BK6VX zUKQ_2A`A+u4D4#cYJoF1Ep=r!;GUqv@R?zimVu;-3QKX9_YAKTsoYKmHKy+7e-?k8 zJ5p9M7|5$ES$XN1+Z?UZMW#yOp#--bc$Aw7@km!YYvO?} zPg&6=f}X;K2^TelV*{o)XskRE1I zcmAGF=e+axe!JJ5zwg((+X~UfTw9*G$#l%{&|Lh+a6=N8>L=I3eC37{1^KM!1pGf# zrPaix-SH5^W7UG@IvGy_*pGFXh^%g-ROlCUZ?({$%Esrp~UD zp-cCC%6SsBN@xj}p_Q7;Mka+fZq+_5jN-Ev7@&wyJm~V$3m~|i-cBBzuYxF+lzg}clNN&Yro9j{yEc(wdr6&;NgK`PqsK(f{w&J9e*_())kE=AoZE^NsRLvDu6S^?j6j9Q;7E@0#hIKagCU}j6rghqyl7^fxb z(+rNDQ4;py6ph-nl_5z-k%32{TO>$h-Os1aD;`|vX}Qp_RjR;R1f-1{J~Lh9^8AM=CB3(oSeST6p-%b>4w;nJ!f<{b(Gq3jaLURzkK zIiy+xgC0F#x)b3R!ok<8#i{sl3G2iMwhKgJ|3ts`m~s5xf(iZcJm)UOO;^~jt57#( z%@S4p&XYbC51Mx$`oBcop7T^d)TMUgUzcy^XiQLcXsKTz;?ec0WxvbCr4Fo9IK`AF z+n7vy)u{P#(!>cS#%h|W+BH66E=7??FD<-~VGzBrny*vq+XNOtiHxVo3QXG>RtdEy zKNjW>oVYCP)dZEr1;YQPyzq$;6;@m7%*uT2rKsP>7lpH&`Q@1%TFVbDnas+y*e7kV zG2`5gU1v(9iyHo@_r z@jMOxu1ix^T`>#wXp(2zHBqalV2SqHmA?61!K|s96&RH{)jK2{g4J54u8oPl{h{5g z{eqAh+np1-%Es10S)J1vJ}hPV-<-MN2;+h3zF9AGxCAb&FcRoH9io`(rF4zKKv=12 zMH)lzhKciU1*}NAe3|d>5`nNcBK1-aT0Hx1*|Sc4xn@z6I%~7=(dVKKi~YY&$&=}D zW6W74lAQCrVcU#VlX$|s*t@1OvuVxkjbYki$@${ttZS2U))p^b+?erv%CZYBGMBVg z2xLZxERbBq#ISI?W1`T4$iPVgPODE92YgVNdHIP}`Of>dm5W3_u|E)+w)4u`b)~sh z`-K&csH}O>6rDb$vA-gC4r`>emQbQ!V~PX+k`S%NtjKkhx0Y3^m>jsLzz>HZwCJ}M3(78-W<WZy{+{}cM&Y*moH;q1BV_ubBxa%Iaqm$mlK zG}JrssZPS6DLy)>lT+Nq(ayUwRoIF3(k{JBfuFjZ(gGKbX&ssG>b2(eACC^_q;(E_ zW(z&@j$b)vRJ!B*>?I-FB*YjM7?&;I>Z>WI5IaN1VOC9XK?K``6D>X^%9}$wL}I*e z&sB|_xb)*;ho37aXh!Jkye_=J#M{8K!sW-Vns=M$^L{ZrF!jjlCBHW>>ut)5 zf060EDvd>vBay?!qN&yM5W8FUtc!+1&P!SYS`6mQ$TRrcFEpXymCflR{43o`tN%S< zV3l~lz!t!8>cpj2HruN5n=?#3c&FGtocW}jYk?^vN5E^g{~C$s1sb=m$;^HIJ8H>Q zj|WDNqt0G@aHg_Tbt8*-he8W4$3c#m2hD*Bx|v?lyHq-6%-A{CY@=OHib&0mFKiYL zFZF639&z7zM9yrjLhY)So7RO6OcAATm~|d7Cfc1BS#Uy&MJIu?`d#U&hjS*_Z`sup zTG6m3{cJ;9`5#7=dWUU{Q#v1*PMT+sS<#TRb&jgR0S0CZ2IjihNj@42Z?I|{V4EKB zD)s5E#X%7aOgsS$Od<-5ydF(k3uAMljBBeMvc7f)7QPC3yhp?<p^4;3#bh4AhZDXssrQSGUvW!yeTu0Eauaqfj@)>nR6 z6Teb^%7&KZzbnfm{5c9g-u%V9HH3@h{NDHV{52;f%y!f-X!_V||IKON+?u4hHn0B{ z)M)uQzTF)8vy@Y?R%_0$9=-MxFDtAU7_#4YSlZ5GA}sKw!Fa>U$NBX?H;6D;{EK|R zFr(VZ?6uSP-^)b;g&3}W&+I%Gtj?8J%6+xDbS-`Aafgo~ zLJOLdIh5*{Zs^)1SH&vU3ph1iINYc@L;q@%)#>!ui-|hYjHz$Zo74^(F;A#7%xE_M zKO=_agge^_cb0(Wr@>s_6EyiUDt2vd?l5aAQL8?FBzNI;Z;Km&av62Z0%a0T93Bk} ztO^X#5!C@NT16&BWS7QXN^T4g68rYO^`em2|LJYHFWRQ3v>aw<*k067+1xh8g~Q&W zqR_+1uPnoJg|y2K)dkO6d_K1s1=hJMHnyMWP%m{$E05KER>}3yyy;rUiVrq-%R6VE z=$sbP9(Jko`=R#Djtn_3(iMf0a}}+&R6#YPZG&LCuN6o)bkgCyHC@vqVntI>5k}&~;rj zXVVISomX1(W^j5QVBlZSCvkF;?#oH~oRbZ2PLk4`Y-H$|w8HOq$Ykr2lWkv4w&$GU z7#VA#Ic3F$TyKv_t}CZ_pPb_Ra*99aR4%6}PMkV3O{Ee8Ck3vY8hvtV?8~X~k`seD zr?@56a!#C*&^ax0<+SXR({fkVC;go4F-=Ida#~*I^zzQ>l`E%Lb9xnIO3z%-|G1d5 zs-mp%rMy;#bo7=W11O|C$22O>Jy@4gWJFVCsOw@H`faef{rYd&siGJhy2WOqA*)dt!xPR*wgvN}oH*>J39%^j zeObB0`_vNOs)+$@Zn_>qD>_1@gv2&P2!(KUneFsDtSl_?qh(O9Ot{tSlB;EWAR)OKrzvhw?5h z&R0u%tE9DzIVNhYoHT368uOLYrB?Q>T3N%nLPcfi4Z|AqEX8mw;kmo&mRi+(+ab8U zmFwFPccz3Hy~1gkU2dzjRDMjamsSk3;*w-b6`tvkA^AhNdX?N%F2x?DNn#HdooAlN zX}Bw>uU)|v09v#5_{vg zK_z6GaMK!H$Mu>YyDoWZscm$txw3ZctL1w=oE}=O^ZUgfBrsD{TI|@1wHYkU%C9&1 zzhvk(m+npP^ogjgW0(;-A);}*;u|edZ)1kHDy&kj^O_lAI0Sl^K433Bv7&H^jcyym zLl2JN2X6DVgx40YjW}Lme7YiqO_(!aBeOyz=Ql^z0E_90vot@>d(`9~ue~+sf!ni0 zOLha+mWEn|)ie2wHcqjv5C`i-Situ%#yyh`9dkR#F&b@6Me+rtD#gY+{g6K*+r9O4q(yjro^ zTZpHX!Ju`|#T226ErOY+)(Z%VaZiv-oW_}+vSz{Q>B%j-1Qzbpx>(R%!2Y?Ky=_AH z7wi4=8iGD~@BcPiU`@mR@&)_3k8OIDec-EShnnM#6Fc1;q!d?W3nqV=*xVpAOCqPZ zGfeWf(8f=OO3^B@S2neVnyfaPWAw3h?dC}{8GQeA`LsoqKP+7AW-X)j|Kh&*jShz+ z6tBJBYS1{PlYK$m@#S2OjT0qPmG=mWzv*V@nYClpgcT0!86R}5J<(>(z!(~Hw0wd< zcf!$79wrUfqtQJ_S1dRhednmy!wG?V92D0a$&Q)4C|l%+=*ATZ38prR0y=BUeAH5- z%2Q9c#A^$)OYIB1dSt;WA-*}2cO{7|czV$3PwGqaX6~;x4|i{jP8FJ&zExz=VKeQj zkAky{?+7I?Syk}eQZ2Bu@XWFDogRYT>u3Eu8kWPxsmK}4!zlmY=%zoXRtTJq_Brjw z7{C0@X`7eFbPc;0CM?-0!fYi?LOqyzUkad&Hv3UxoQ+2!;d5>{AUP!4C*}LaF|Jz9ibA&W9b|2ZYQ)1DXneL0+7>~S4 z5(#Ws#3H>fys*vfVEeK?XSOK18F$b4k$%p|LgvXH>+s#WMuM)dPAR;bBcO5O+;b^0 zjlCwRQ6AlE1Y%ug37nl8l2F1wVZnbL;RuD(|8`#plVQ?ey&A1^byLjMJ$tG=-d+{e zyvP?N<#y4jH3;%5se@7mIp1o z<0Hhf`!j`Ez!qu1<~;9c@&wj2 zg9EA?InolIMklZ(@jcn}=Gms4Co#HvjSRPH_MK5%_xzyyeSwP?)7Gw;)pRjK_mTY} z>76Z?I2C8Pc*K0Wb@3wCvOkjY6}dueX{R(qZrjyP(Cb)n_v|X8h0!8%ccuF}vpMD( z)`|qOEa1MfQMcuCbzF4!b77xlBE7!Xy4&TO1zcGJmKFTAVgFF?y`iG+Lj4mb)-#g* z&wko)E!gxmX?ZXE+a2LT_I^Ui49~d)8Kd_w3;a)HjgDblQNSjua9VH!tJ*`(unBKB z@i2-6yb}<7B4EHKw&Cd0fA53~PK#}1m0R#m-~r>?eS+8a9nG8fE_Bb^l6O1Z3bh=$ zUvr;ttUYHTnI{quc7u1(nJSm`_3H#QEG`KIR=W7coLv`Pw)ad{&a^3ULTqAdcdER+ z{P(4%)wOLYa#Y3Rm$V7J&oBc=5MJg$qj=ZXYwy~dM2<>aSjf~pF=&7W0{ z)aA9gaXfGrcG*zol`a#?#prgpQtyoSfv>Uezs8^cx-CvLFD_`RAW%B(xzV$EE{7)I`-)^ycS(ST}^PmyyypOf9LPuI}EAoGK+;euu`3Jrh zZ}V$KwDN@lu5ILCxhuZsQUsDmtq?osx-b#$rrla#!x-$^UCw` zEysLBVthWbYzTE(z;7)reonfj+pVFmvMu%7+(eNyh12QheuU<*=I=jRvHsmle!(a4 zKf+=dneTl6xc;5&0)cr2|62VS)8`3%;1>{Jsd5UP(B#k<#-*2XB7lLRgF(h*Nk^BX zOHZ>_-jf>_AG=RbbnR1#y!6C#ie~7#l$)2Hde1OSJ+~zC@-yE#rt%3a6IL$%&onQ{ zN$cTBg>?6M99DV{Bn=zqPvEUkr$HRk%k)?7%r*@C-e zmc`%ySNrGZ*Z0rw-~a!APT8Ro>U~1p9bFTa?O3&MiPbI@hD&@a9w{#~5aL>LTPY|@ zd9A^r{~xsbZ!s%u=|6L*L#zMNrqjyTWw%YzJSBz|Pj(8lOQqbek$S&pac1@E{ zk4FRRln=>VEEQY}OnaCVo=jpg2wE_OM{(EdNy{ee=$;_f8obi~PDya*_Iq`UHFk8I z`1FGBc|_!i=0}?n_;v}bx$#ip`Id+dp66;3iQLX7UOce$-tL?s=y^$)gC+1x!8?Hv zzRGi5FI5gcvWyX5w8g@k`;dsD@6F~@_wR-EfTc=riP8{p%YguuE z-_WbUvB&I5#sp(~>;DdydU;wn9CuV0B^dDUX8L&Nj#H4Zl8AMX;iAhHm!`!}e6pll zJ2PU;`hfp?mareFUWa&^I{uguFi{wmY<4TPU##jOPS=Y=W)7&&v~gxIpYf7 zrD@N#SyLHQmKickpps=fL>_Ylb=-J* zVzTw7bF&nkx9m&a)f(gag71|>fnH0i+m5Y@o4bu!L^p1BPHlg5LSseKqjNKETke)r z+PXtl;?S+^b$i*YkEB|kdXn7fQ}(Cug!1&7qEj1Xcc}MN?$W-~_cHs!VxOpInGGt^ zUBb!*_DvFtm|ygE6fa$T#DlZ;;+Oy1&-Fh#oYC2&YF**5ry{9hac%aui-~=DKc^co z73FEfraJ~1#Gf!|nxw3$xM)++yWRi0)7%43vN-X&?k->Gqm{Q;K}DcIp7ENL&?WPb znq{(6U#`9;sl39k{X|UL4}ONnK_?YN3LIF}3>Z0W6y9fSvSMiIR}5ipxEiNq#=+93 zIJ?84P)EQ_phbX1>dCC)Z4BEV#Vk}v);OocCDgQM;iCwqmkzFBtrMiqElGMG7{kn$ z(7_VUR=DBfj-<$6Bzh%!^hkzuxg-v3wj~s1sSl^`RC=#~n z`;rNf8lBxKDjpfvbbCY&)JSD_>}FG#6g1~(9qY;a3V|Cp>n=*lNM3W|fJ&qhhgX53 z$d(1(1}8YW?g%Ii-%shrhxb&rnY3~*5Y*!IQ?^+R?VKkVwk@2@DbmT)zMG0!uMuv z$`JF=SFBv&Wa@lWeCxz2Uc+RUmJ{w|$0aok{)%Ea2x&DWi7ir=h?oYJvUDXUgfi|2;# zrGV7QKb$rH2Q=QgIptfF;av{x^rnMJyq7I`4G;4iEHE|KXgE>HX|B{;c7fNw#`Qr+52uh%-SMbvo0pZIZ1S1N{r{`7K--Fm2j>W73r$drH`8{% z!o~2_EalX5nN2ZGU(KaAZK&H+x&M)x=eqem>OBTC zl^@!uxG>$FU~@g{p5e#O>4Gx@i;b2XDtqQBuri=kE8yU)&bAYOtu$9osrzy3eR9QN z-kCx!XP4d3e^}z2^E*?-+~uf%Mu)mp#2o&fgW2`fhI+xhA&&mtS;?$+wM(YBXztUWt}yME^~d`x8aS*%;Fv0OYYrad+W(|cS3Fb z%~PtOU)sK2e-Tg?Jk_xCN4DC#NnQRIE*mm#Jyy7f^*P7p$IhlZ_0so*Oua3knEZfe z&EtQS7uw^#@b26iyLsKNWjE4aC@+-U!hLDVg4zFGi)324&+CitnX|jAN>^iRb-!!B zLEg(1Czf9mXL@&ca`eVPzLTF)q;I5m%PPH%&A2N&>*mFNxm2aH>$_cx%4@}|5|p;7 zUwys&VRQM8-SXARzFg~P9nP;>vo+SnM{0fa+;_Z+f)=c0 zIq!9Eq8-?B4#;Wmeg2Ts;;`xec?Zni99lhjhYUkBhx#k4ZfV)fSq5pVH}!sy^j+QY zC1`QSf_+AhI)6lWEbf+5G&b&Yu=|pqQ#rC`1>mk-JtDfB5Wt_ znA0UNdCTICMyA89EB5y8uYSY;F>y+S2W4TR-9k~S8 zum>N_{Nzxl?6lqZki#C!S%PMIEgkLI9TF@J|20{h1bOzGYIY>wKG2jQ*~HAyoUO~x zyp$nBmBoM|(}clg$`9Kqo{Vd*691B<(kPtkS= zQLt=W(6H~I)V7v}luA?9H5{`HH_YSlIVj_Eu409J49BsDrTR1Sdm@>NT3_WcV#;|O2OCM*1bNw6d zt_SPlMg0EW@&A{@>7wWyA|TB8VH^9yy~lbyx_0m~oj9`W3Fm=5K9-$6|33yAoxb9; zbj^`-OQeqOalE+2>b~;4WfFGkR%eYC>mTN_KGJmZ^n|mhZR;%N=^3%Oxlz+{+Wy?@{Ab1lxTS5$iMu9^1kkKb?M(@hGe z-)C$sTjFe;a=uchBe8I!@GQ%Yih!<+F7c;g5G^I#pLNAN=D zfVLma7D^5IQ8JuQI2=C(cWJPyb1_(4J;CzUN6K==1rz&;DrYBTNHP|LeC_7&zPszD zbdX85gy>&xG1t~5mJQ;nELWm-edKiQ-qYgvx5HZ7>22m^R%c0;9ZKbggO5+z^;kLR zzp}6VkKZ#^o^fp{UOVkjFYnfA5`P@Ed=Gyp+4IMlmG2dwfP;Ve8s~~B$ECEr#ZRjm z<;wJTIL1y5EtCyEq_aPJvWVSEj{QsxObHTN0xGFT`gdrts%ke}`q}Jw^s=*ZgXS0J z7i$8zr!E%k;n0?z)#hX8@zlk$b^WCZZS@?k3v(QWS*?S8E^e%rsMiYUv0!jt%cLrN zGeH5pWe0h@7n$c6am#T+z~mkKH;R~sM6d|%;0v7DV7X?`_9J1-qBz`6I6r^U zu%(4_S?aC-c}BrUH=myx8@=tT^CKMwQO3o~8g8>lL`|^OwvFX@WYfSN!K4zvaO2c@ zFQp#PrFsp1;-*4Mu^~cJ_9`oPP6&x$u!vw%?qPIjV4kr|AURS3~27{8N zxQa!b%8On04sj|EPHAQ^ut?lv^ zN<5ftl6*vw_@k+q`6+)2h&-s>Z{}@yIjgPTK>I1qVCy%^tPP-8NCA)5qZM zd5eRAcdk6qNxEbGXbwl{`H;uUW?bIXkaRls?i?2@o6WH%e#>;?BJBk%8fQ1D{P4V) z8+b`0MUFdp*6WUb$5Vm(Qe)ya{I^o&UB345O@{`fu!nncJ4#i1*bW3+{d+j?aI)08 z$a6V&PDni}^Sb0QH)iq)_0zq{ovCNf$DRznv+e2cE6Klm8rO7qC!`c|riD~ojqJG^ z6Sgc!?)vUoy#973^BSJYPJU|im81CT*7ASp4gXfnbX?0&kXYdy^StB<^HGPc90tE_ z;gcsYx#=-XUfZD=z|?arV}eF&&#?^eUgc=EHGN@Bxp7PT)@9t@e3j9Gsno4iOCmER z&vVASHGO&aXK#4Y`h%IR!sPjvlsAnJnFBH^US}*6JJmPuVZ*z56=LBpf_WR}HZgW& zt(^CYal=d2-7Krly(%gTTJMv!{$EzQ6w8EJP5{vCaj zm;ZZT{-1OCf6Y$BxdaJh@2_m@2)p;bcZ1r0wvC!S`UEpIcE0e?45zr&xzhSY%JxMn{-63ZqSf+?)a#2h+Rc_OF4S0Gq}~3> z|C_Mt{UW{hMf(3g&GPVF!uEO6f&~l=c}D)lrt!sQ{U24hkD7&Z+La!(SYK?tzt|=} z-@c$hHKK|2#JR&~J~u63VrS4ikjwQ#ti(0G#4Z2JHr=#kB_+P9y#-TCy!V&*oG)pX zNzXV|B43*B%U?QaLy<}NvY-{848==B!#__KEeLdf&Kh4Dsn0R*+R?MWHvM0A;CbZz zuPWOgCyRZx4J(X0{@G^&ll{7{*_U);-oHxBFVnl9`MR*dCB8>AX94G(G=w(1-bq z29YW91)Wi44^EdA`G4|JV7Zv~#oOU~(e^K;M=$3u=Lq{S%X)`qNCM0HoyRj@O0C^_ z{NTk|ccM57`#T)+%bV>hTKs=JycV;>Rd6;`g)v z2Fw5FH=NCDslU@}TzseaF~<|I?d zPR+0etrc7qzpnn(7O-4)zvKAx9ZeBGA8q&}C0k=QjVbwg&D;BR@9Lkkaxi@0XIQMz zlIg^-Pp|WGR@c;Hm$e?OW8T5d#POdYVda%?>zO>7uHNrwno$4md40kB+6D*Jf(H&9 zY`j^LJ034^Y+_OU-I6lGb-!g-F?hUmegF>p2ncXT%}d0 zarE7TSuB4%=59(cdU|S_y0h(_A9_s-da~^lq#74aZ48sxwq?cAB}e$?>GVm)UOMc> zAtEES>cFoD9D!ol-V!@JmAn?3R6i2Y`jN-9k{*82Oqd;6RD z_2u@&%;sRpVGD58I{(G&zeUKT|8)n_89LeZ3iE}HLYRKNpY~}=+Aq`T!LqUU$xvvb&k=M4|3$C5@ok29jB0!#@fwRRWp2g$=15>l*&3Tpe zQ-ZuiS?{zi2%f?9^LfyeylXQXZBI&x%whYVYj{Dd#42QVuJwe(6B1$`DF@r6Tn(B; zm3`3-7IViDSS4c2xjeyBB$8%gIT`uJhWP(4>-JGGWg&S@}=~?>KV%ruC>eokxSQx%*~pYzDFqa zgsk%YjhzK5_Y*su&&Y)w%+A|XBd}vdg7u6uIm$X~CLL4jT7A z76nw^GZC3m-neW1mEhpmtyja7=We|gUHmp+fAykCp0&HozOpl=&$nIbtW%{Uu$DFA z$${AKzJ=n7Vps192l$yTXt-bhf35>lgZ74oFxl%aWnQuW<4l=2`kMvTI3G4T(&6AB zU-D>kE|s{Q^hD{=5I z$Uhpsn^`sI;$^eD>hpaiqD>0@|J1fyFmy#9*%6U`r?YE2`%;n3xlFvr0}A;*)(CKf z&+Oav?)B#T`+mPaEWiKHXJ_`6yZJcZON2K2EOZh2|Gz)?7x(QuIze4bi=6VzEE{~T zu*$s*Jg<1|^eM${4Xv^X0?mpi?y+~IPBiWGP-r)psBW{dQ#j8_NY=)K{lasHUk44^ zjOHlvW@j9hj^hnt^WbEzDzaZbg^6>^t)AURh12&$urzXQ>0HjX*zWCrhY!hSFQOW$50Cj03^dw}8*fy=>1l$W`5 zhGyMjt`>4^@|mEuMk9XCCX0zvDgvDoMU+{hB6f-IGMqGNj*6;w=1K2u{C#3CAAXoK zsnhCKpn}^GZ#hBb39520JKY_dn4?~v3O}@IYWwHKB96_X0$mp;Ja$rfE~e?`9;RA5 zLq^T8JM&DklJQK7OG}(BEDtQxNw4&n;Uv21rZ&m&phPQWKrzlpBUuJwP9n&z4dl{${q4wZfsk-pxF4;6fco-)1$`(k1Lg*m?y4i zVBA!aF<;1%C9>t_h1rixmRsG`^e^PlWL(k`Yai0}`OB0^e>_7JHbl)^`>Rww@Fq)z z!rjLni-Usn_HNc{$w~1#Gr^W!_k?1~i3u||sf*42X0kRbRy+Fkt80~Cv-4RNiZTaJ zXJBM`zz{OQ)4lqWRg=!wnLOSNw*nGXSe`9ckLAovUd1(a^{&rL!geaL*s&~n(<^E^ z$=Nl{@;FzgL55C7t#+n&_N~i{%(h;88Ezdo(R{XsLTT;I)viA7t|1OQvsVP%GZ&n| z5O8n#db9tYO|DZ8?0RgqO~bQ-p?LP|JJ0PHI5+>vNXgBd+9Q*~t=*by{S%+n2yQS#xOPm!> zGtl29ry0MH$1v;fT*Kb%oX67ApZC9;xZ0U%^^GYU1(h5Y46dcGZ+#J2VCUEL%AEf} z^6V2gtR=!Wq^x$@$rI_YXQp(A#+liQ=N3NlS@Ch5i-VKfVy>qR6y?%r$CR{46K`L#6O_xofPY|vC}S^h6eP{rh; z`t*$L>lxiT>=gwPcyE{rO{<-&bbQ-IUTK!2n(sa=x^u9az4L&?5uQflCoV#_-)@Ug z&Yd7o5uvqog~d_9Z;$3I_!RtQp5@u?|1afzJ@f9G*gDJepIKM#3R=j>F44d!<`Dgu zWj6z7Lw}*%f(9myzlRy$^eH_Q&--&EJHI2Zg}X#RGgzJD85KGxrU!nD#x;c{`+rVUOam!|Ji=bOm- zv90s#yF?rF>_gS}o8v!k?Vo$PdQ*dy|68FTkEXYW@5ldtuzx87(~SRrq(9e48m=*{ zUiU8HoxYfmKgXkquCKqcKAsxyn=tpc=7T-G@^8L)#|H9>*03>6xy!Um^v_P#bzfQ; z4CMd4WM@>F&d76sV^RXAlwTBsLiU01NC`L2T@M&!=K6fN_9-%f*GS>%LBH>e4h%1D z?@MX=q}jv!PMmF9E8900hAs2iZwX#5b>})YxjbQtfS2MLQ-$js;l4la?-fXR7hY-i22L=s7AqORjj?1<;v2t8idB=W;mZPg>KO-b6Tt{(c@qHJ|UJ&jlAR*Q}l*X|u0U3ZRh?s}xp zlx)DYSoLO-?}JAU7n1hgJ-YjaQlLN#J72Pi*JG2Q zYQey);>a5I*m6;_)vCqCTe>XEj+&+^YpFcGTB2+$_t5H5vfZo4c5%lwQw}NoIjC@C zam0bg0cRFpy|Q?5gR;F*inG-d=Q>xlKaHk;4>~ltI&vL#4D)rWdu;3U#JwrSqiadv znmfyQoJ0c-D(pxOOGpXGP`O&5vRLPd$E6hCTPeI zoWV7j#eva+A!gZ3A)dRRBn~iJqhyj&cTrU&pYT3BeRNRqCf-F5e3i6CB;7& znI#yKIT{!>8Y31p$+O%}=W$^2a17nJG&JO3j*uIpPJ^Z6QIR$0KFK&R2_2QUIB-;f z;by3-rcWbNj1QB}!GvcnYBmQd7t9SvaT0P#^A(U43RoW3^}J$Ix2=PZx3 zVPM?xKV5e3^Xg|(Mro-+Q{))_CWvt3 z_T4-c7}Gs1eQH!@FT=8gZOZYRydolY3u)vo>NEUJ6^;}Fw9nKl~=gEQ`EKAMMmr1(Ir+#RApWy{Aqc1aV6uF z$5St5t-aL|;@9Xk?~vveuKxjyQ=^VfKlF0{!v!0@wH7XOSt!TJzRr8*APquL#ja?9}Cb6n~ zoz#9;&JB;w%0;gBN%2gNVOm!9Xno?VG>^_F7gr{KSg}^?&7mT9%`Yj+(++8Fa9SPH zn*TfenzO?n-W zu{z*~#GRh(C-b_3+<8{J<|JqtBUI(06FhN1v@s4W_>)Hc6N4L9)GChc!FV`x6 z;?3ei5&mxiB<-}@%U1oB%tvQ@Hq(^ zGOXTls-E+J*CqCQ_jK>EF`UiH-FENjHZGS5f(|QW8A4a7U%9j(AV#mrlhHxzAX81- zBF%;uZF={d7CcPK^_wFrW|lPPX*`3+x+97QPO34?6>JjuA{oHyy2$Fl)D?ao?|8+V zVqM;|m@IU8?>>A%6i*BBJ|EKC`e4Nv&hx-5c zn&dqWu6N5>y<=^NSED?S)4xaWRb!kg)Q)~Q`uOZqe-_oOKY6RZ-RgRA*Y)|SBWnW} zeBAJC*R%MivTGjexdwiczq;(mS+=9w-^p#^bop1h*7eWy-CReOzEfDCboJONmy2wz zt542xmeINW)MX;Cz^9Nb4flx_@~@L}`A|Fd3xV|lfxX|*BS zk1nC5DH~lyc=nuPQIu#Xyk`*j!XVzY$44bg+1h1VfQZWN)sjL-PBJz8|0>Y>O8w`d zP20t$xYlSh@_1Zw(&bRg7RtV-z$4G_AY0P8*kpZ{sK!AdjwfMB#b(LIGKW7N`IoAu zP{7o_*}~sZ=!)JHzN2#KPZ9(gbh^&Q{`ti7{ixvaEU%vR>cv+C7avMsJt~lC6c}PO zHFne4dFukEEc`F4z`(M}=gVn^9m!h!N41u>tp2KVrEQaQ!z5|GBNt~Gv>p09XHjts z&w*W!!t}XV`K#jtR7@C-e4hU=@5#|S#@?TOCKm?#IWj9SFo!rcywTEn^U7cQ|H=Q~ zN>=-I>n zYm@Irg?3Mh_r7;g%fQ!q+fA>h%qk9y6Vej5>Y6iu@R!~ixcyX^+Sf-?2N(?wSZ1?^ zaHndunST59IyOc5aKhdBuQmrlN(%l0(a~?8}&!C;QrPCkw^v=@hks6@2Z_AVP95p{>yEzvKzkX z0m){!H~l|Um0Y&Er73>h9Of1?W*tY@SBBZ2Hy&JJqPf{<@!6G^mwk;rvQ2^eM*z=6 zA7Pig_n9w+O4PWI)*IfNuk?EMry@TQ^H}vw*HvQtF1&Q*KhpSU>*8-m^!>L-ZISbQ zE+4g9<0!|`i+1Mc6|Y|C`rhMS>}eI7q1_mB@T329rs`_rw8P)!O&l0y4&1o;z4mxg z-FFtx|5Dw~tIb$j`R2*V8Xb-GDY{cr60BjNG~ZP1^V{b54*^@^4(vMHrhK&Z`H{lc z-)8Z)Ueo;2Rk3Q)b(aNsKf`<0+dY?0sunKZzSA@N-u5tyUT&+KW~!nJjZ7_NLRV&* zXP5Q=uh87{ecG?oETR8DGoBlU&oB#n7c=F4YZ1T8ex4_J{6{nnzYm&F<$J-*Q6{(i zy+OkC4b#tC&X|2aK*c1C+a+GXLTf=KU;2)Xk(Ge~Tqa7h)~>d?a^i?7-;VGdKU<&4 zPu_iNQ{k~^sh+F&tF{VP9aTH{%12Ex$E@G}SGDq2^XDlWI_H|2e`9+5-Re7w{_4n( zkDPL1tZPN?*l4qc3%Bmg-nlw@lm7v$1*fdImmj&g*FtMf)jQLp>t4_DZOL}3w%}nm zpCGwA;DOOh`L#WhT@8d;4oBEHrkp%>{L?b`xK&ZVPh2lKs>R4G)4*urFnyCQ!*25> z*`LF_4yLF#Fncrxm%A>LR%_V5dSdGTQvZryMYB`;BQ4L^?evwf)w;4PIA`aI-!BjU zHq$(*ci!6NHER{y>)jpNd$faV1CGcfDc@??9v2$Fk!jBF5SKkZ24@bG$8HgB?bj_i zzq9h;q?)_&ni0Pa3N6@^|I6`+myS$3(~jg~3w_5^Y7JLncZI*O*{G)(sIVgEtZU$x z)5jhdtzypJ-%{ZvVzZUs^|G-=zH_bDm+p)CcGthN*h#Y<%C7Zoc^#@9eqBCleKgC0 zt1L-}-^JIsimEg+>oi=MlyHlE>WOBl`tpB9Ui0`~?YyhKf2!9Kkq0G=0c!2r7C%rn zu(+RpRB0EJ0^{6PlOUacI!QG`KmRzy6e`WCm;d&kbw%GBrj&m!<-dN;wqImu7@58| zlHcTobwxnJzkn(KE?#H3&CH_J$jr$X!@!`}z`!cWl`=s1G%}ec2pJtbHd}G^0-q1U85b64=OIq}^p{9hNRKq9$CN73?69@bJIlWQ63vO&n0#`YX|-5x)Yj~q+e&|ny}Rtwyu`$# z;YpC@-laxg&z5k0P<3iy6Z~}9fl)}SC1O_X2E)nTD$=X>EV0^{?t9ksuZhjd$b<6J z+0CZ6bv)2y>fnw(=acauby9Cglvcx=q6^2^gk>j`Lf;-v2_Q=R=jzN-z0`TF{1H>=#A157_ZP294*UcSEW z@9&@AzyFs%z`!aq;lM_tpU$0ZOHQu~D|r+5;9( z->jM5 z$2|@Kb;qow6nDiShTTmh^k7?tunHh9^?Gt*t8;_4ELTYmly6mO+FbO zZTFZJt}mTb)9J|&q}pN9ajoR#=9X1CCqh~meO{}onYL8(#`0A+$`&(l7(8f56SkVX z(1h{DRz=kaS57~tr$>W13lxh=@6~+0JNdOORj-oBzLC^_lT-QGuYJGhDixfHzGI9^2DlH54u>aiPXt964FN@r(8Je{zl za7XVnS&tM3yJ9Y!f1)lgn*69GH0Jk37sP5u|;9o*&~^Y#csP=E=*_t zw@dfGlixL-_zh?6q~C728aMmxw%@v~0-8${maIRhB-0Y;@%Kjcd;1kLk_6TsUp3=; zxBU|nMSu4@9*vx`^)f}Ay}y!gv~bMG$Y@dNo%5OVW++!!c6QC#RN2IP0^4UwZ{kx@ ztvg)lIrnh&&!uOAwh5K#ZmeB7Mb)UC&>gJ_vih7xA(u?pAX(Yow+*2_x%>y|3BkKzt)}n_%5v;{_YQ@yz=~oEqeJU z%335CUJFfSKENz>X>;d9)so1p6Wg*xCq*kRiQv6C^>5TC?Us^mg?KNI+PrN>(^az5 znPw{NGH_bdqVd4;Kd0b14?;53T%jbesGRxy3$E5Ik!7s z_lPK^w7TAw4f0xeu*ITX^Q*I>n^&WA&x-7J=9lseW|FSKW-7wcnzuD0Z+eCA6PmU$ z59F@MgAHz}3(6Sfs7epzA1)a5t%Hbn?9@c!}I(o-UH zYbtC1;>B0J)g&CV=Lu%C-1#r%;+47Pj%rXD@5Uz#y+QWuHbEu2hPRaZC+V=tx%M$~ zsA^^Wm@A`{GT$I@sg7@DXKzR60?yDEPLj6*+E=OP1$Btr=%S?uZH0L><6a1V~7*aA*obE+V_@!8)bCc)fHj(Q>idCBxgy+aR zF35Cl?75WbWqFPL^2~|7f8MLsxN!J!2Cc0&N}1;;xQHkE)1{UY6_q@j>-LNSUDK9q z3g!=8CrEb4llhs}r92=(;&r2xc)Y zSZ;UMezO=DLNp^2ByXH7dkd2_T}#(B%|SGg_C$3ou~&Ac7+d{=Il_kyOD zRShi%nrQ7oZrJ#ne(sh$I0FgVmep5R2<`^Z_g3i zt}t`9zT1T?D>>6?impdFb}0Owv{bIBPxxb2Q*=|5?4i%ASWjjJ$F07(q(ihxcVgD3 zJJxrmT@hSy-c&kup;nUce2Jr)VILbZG%q^pICisoI51B!h-FJ{5|~odz{GdqIy;MT zPmHa81NWvl(%jSBV@5!3Ne4KCMjN2Wr zqnNb*wjS9wDJL;_PE67giM0oqCMvhL{!ZY{XIZ2DFY3jlRq6KsB`-9JZ3)?+ad+>x zQpQ_B=d19hDnqeFrb#S^xi~en?ubwQUb9W1bW4H9 zlnHT53bvh_m3{I(1H=9Ne};4HTwb~bti7VCyu(v?rM%jI?uoM=3D*|cE%Rm^IhI>5ednQAdDrV*EbK8?7&tYOL|;7In z<|zvMH!TUd-S@V{L&bZ-g-II}W(EW@nZ2Eq^;J@IS8l$yoHB#ae`nTfypm$J>_V^Z z_DyTL_|8acLFVzLDyx^cWNA6at@h7VQn?@6dZMm$d)l%+*RJWW+`t^j^r5lglj?&_ zn;i5Eg;`r_?l5{~Ug(S~Su7tr?P=TrMu7tjDlxMhJx_1kDcZnL>b*uMZQa+u(@w_y z7E_75w8!+L+M*Wb8QVo}8?9>Af4AE2Z;qy*_!GAdUB_8R<|styt+h~hie$JVtNFFr z+BvFQaKH6zMSd2C^((i2x?SXXki)^oS;TIy$|K zY|dvMfm6S1_b9v)IuOw6@oR^BrNa8J6_2u$K5GllT+w)?ynvPSM`Om_UoG;M-@}`K z%~KBFb~5io3wKbLdf=UJ#p`OFon{w>@bEJ%@c&}7M%C?QhQXoAkQHCQEKb+SXOtIU zQVw8x{>0&*+Kff-H13_v@8EPk!8D6WVQvn8G5Ncg#g^;Q?}^*es2MRc}o>r>pP@~kI~foatTk(_fW6BLacJ6IGJ zT=JPW%~#=4%jW>arF(QW)jZw^@p;Ga`EELD`t7!m6WZs!p)fPS|3?*E{c&#lHpalO`zEct=SkciBulD51&b zzl19zS2(bdYxP;K*X#_N7Au&&;hB6WgW&;#SYg- zHY?#aTFkE>t0b%#PponSat^Z=u=LB(AW{a{Whi&#wR6c3IU+F;Yj^Wbx;-EDp}rrx=Aqob5$i zoI|9&9n}skom26yqi4mpWeTp3dlXkOFbFy^E(%ik*T7ivnc=~t{Syx8uq$xSZQ=?F zVTgXjpR|QB%EhBpM6}7oHQV1KR>YjYm|>bAuOLGV%Yn9gA3Ewvl$IPYT-@m`?Zg#i z;={T~q~(h9^atL|2N=J7R5e=YGXIr3hobBMlf|B`Q#4m7xLGPWxL)!9FA~7K)!?NQ zr`}oLy-LE5cnveo1Wj8c!nc%h!UD#emjQt)-=8>N)DqRXcY*PVGUtYK_J15WnY0xu z^)=(x9Gh}Q^WOp|gR2Q|9v_u!U}RX`v!^LQ{IIT`;ynomMv1NdtfCRkp%LveG_6uO;b=B^!q&n@>x&zLxyoUM$5qEX93Viubh?f3eiy zu+;ErsnOR`#SOWdcIcwaB^7cUJCFAbkw8hyPq zUc4+=?D(5y%qM%xZtJS#ZMVG5?tcmM1Og^{r|qWuW5Sa?CUSu zuJ7zJ&y;YltUp`1Uc8!_w`#U`)z9v#ugR60!)uP4AKf;6=dN<43Dc*n5?4BLz4rd} zooC8-UJ#$U&)oiyc-`mldU>z9soiz+FVuZxuKzy0fm>qQuj@PhnLl9qVaIl(L0+P1 zE=S{Yuf~fL8s8pnRE}sizfr9gu}*7-o&FA6qZ!TKH(H*ja+UahZ!7up!TqR1gu<2Y zE`~R%{BN}7|L`|EbJfOTUBZtF*BQ1R67B6XIyhb0cls?2JJX&zqc(DL$9#z{<|iHg z8(+ssXkQlZxbEDsct-bb3%z9)Dispzrdf1fP43<+(R=xa&Vh&@M+A?am@#Koh5i4l zGx}cd(791@{mzdg4}P>fkzjZuF@gD}_JW;BpTFSe`J{E5IpgbklX==HEs+% z3Y>11!Vd(hkF+wDy>r#v8F1>x-DwPr8odBMzO!ETpC$5KUqq9&t^4|6DR%& zD^0kps^_S0&J=osdllQm#iEC1&pgEcWwMr&hWYu!YOb7f#BWSeFY!-2<^1!rU%0YZB1_ycXFbMy8BJ#q4m&vj7#H}@{w~l1oGE(08`pK>N9BeB^ zKZS2+ZGH8`#QBz_cM8Le)VV&+i#*@1p^E?FyH%Inl5t;al-V>V^=HY$hSjqds4n@vbY=COpjoRQ zI`~I5tWIR8+46ho&e>aMo@QiX*!xy>@8#Jaw-lJINn@D8kpIV_Vb(20hA6JCCV@!~ zpUndMcoMt?5)3zJD9@j%c*cN1E}?eW0>*?D#+*uaqD_od`ob$7Fuqy3GJNM^+e&4Y z1WuJlLQ@pvZ(n8=4dPTu640|LRFf`AZdfh9P&MYy(!`oO^BPwB9^m|>B9!-sg@J9p zzqMx0oYlp9_PFxwogiWH%V$URZiOxSj9b{atZU|LXx|k|@;JL;Meied?gdM{7FxG` zvE4D}$uk~NxjJL%9$O$1wHkX$FSsK4U^-ayvk2WvvJUDh= z!QboQv7dY5of=m&%4+`kbD{gr3D?P&)rxs!^>rJG)ta5ve>>Gz4?*Qa8{Gn-D{-gI9iBxIVBFb4zU zx6HXaOs?)0QvJZUQFZTxz;!KIi%KIKRy!_Kee!qdTgw+tjC^?y*d8$4|I8vVV*%T| z1A+|CZiLUeKGEs^&%5_$?!75{ckk*R`I|)wW@joG3s(r(O!?0sI8!~TN#TlyTkqR9 zpYEtTeJt6f@QlZ}HRCqxA*IOhJ)yhUVty@6m&@djTPl3-;qkLK58n`yT(`(M>D(pn z*gfZY0^^=4EL!zhL-9(i)+Lth{aPCxclNY;c$)XjyCTk@vPTX+=1OJvD z{g+XAkENvU`Qf$CZ|_j${;;ygfBR{lKS8{zDphkAh`duZ(O$A@@5bC$$rjx=`*v_A zO;HFD;kJJom{h9$dugD;4bh%0z6_rZJ`#NOfcKgMpVY(q&PpOoj(m3*_}(Z887PVP z{r|$QB*O5J_YQ-A-NKUr_FsMDzbVgGP&&x>Ac5Cy|Cdbpuk1|U?>^wQ*suEE?x5ha z1#9jmd`_%aO1b~D{=cf%NaPBj1e%J~c;euZKV9-v6F1FKV~{ zYy5w014n^J3EvqXuIYXB$+-Trb-coy|AISyaUT1B|7ZNSUM2-U(?y@3`ObA;A*2-& zp*7`jz;dB!SuE|mb3M6@v+kVOxcGR#f^(OQ=cXkmCu;<+iaEJy>FMbP$*1OcZeDhF zwuQ4D!-2`^Y7;!FzNvhfI3a+6)9RhbDwdRGi#;usETR~eOj;ZiruVj!Aw6KB+-e!u zM;|W*vdT`EsTDA42w;|$mB|&DbTE*?^7E^^r?;=azrTT*TTb$LOX6W4J2AT)rNXm8 zSy2Xd|L-{Uxmy{lN#`wGHpNY}=jNQMqNGpV9^COhd`AT@q#WnEyW-lPLucKrRvV_y zvuWPyX1UpPc15CPvdY8BhP5>b#7i_qCWx#U<~5_?mcC*zEt(cgAvgY>8B0dQ<5Q+v9f=c+6frXclnO zc-SHmmZ9hq{gXu`)K9k5!JSLytFTAjSC;7^?v@ObMBGi626Z^8HVStql&VY%NGVO3 z7LZYR%uRa6RY4V>4u#?3Sx)EoEuH&%N*C z^!c1MSxemNG)~N%&}e+1bB?fnVyBGABg18Cv&(jU;i&$x(%`sT%qz}kwcT9lsr5fh zXI)(U!_`VQd1_tz$|-xky?VX=0Gsxk4MwRP2Rh_xuLg(6O+BRO&LW^0w8d8N!o?7u zMwg=z+Ps=q6fExE5Z)x!c{;dH#`fsrt=?@dx&G37PYVYsNM6<3_~Y5?_xt{6wVX`R ztNEgz%y{{W$AbH7CuBIysw-!z;#@fMKBvS&p%W=)B~>>#_qAS9t<%+c^E^?=|JorZ zwrA?jE?vK_PZVA|t6-Ir=JW9X?cTiE$6mUrTE`fAPyDjx=3z zqBF++yS8wef6xAUH6nfO*J}r*y!G5qeR2`^aF5(QakEpc#3e>2)&uJTLK;%^7;;vY zg!|RWly>&sDO-}~Z=0vmutiZ;^UC!V6}N?JWnR4us-iDs83n#8F5SXPtW8DPh$t(3r&n(n7DLS)lA=B?Gxf(35%QvZo9KWRT zC&u`M#q;f-(}Pc+yEMyif5NWk-tFtYT=`|nYvX?Sc#O^2;Q2m3e>|C<|Lr|>@8QLw|E2Onv%;IJ$0fc_6l7bknt!2(tK>tA%mN4FGLI9QaVKW0 zJy?)Zq$OE$Wdid9176ho!XWEH|?K%Ab+afM5f#CoO~E` z3Y2-jaIi2c9BloPAGx_lO~>-YWUY)R8m>Z~O!DTZ@~S@1*2_GSlJY^YFm0n+o0Y(0 zr-_@?RZH92>6rcPl0jKzs!Djg@EI4Eb|nUViaV{^}$M5Ej{msLfX&L4JJ z!qy`g?`E=;segx}rS#5uoPHNPLo&{>XeC6RRruCfQlzK0bjF!a=SuurpA;K$2c2}4 zRMzbGd&bM+>MvLv1IYyesMPY%Dx5V}j=_ z1-3~`mb~>@EGX^6X3Dl|g_{y%$2BIVBxyk{N%Knq!b=u9EDv3kxM^yf$(diBWs&r44#(Q&W#Vi8 zml-LmW%vYcY*TVO6D-{*dD3lmOz#24Wh)k3&S&2m+he7*U2^5yrl4&P9W>2s4?mSm zj@c7=tmlSW#-!K|--6WEDK`u>cI1^cXFZ8jtW@;6ww7~NjUV^!pJxmDKD*uFHe0=F zQij+rziQI+}5&*Vd|Vu8jK1D82J`l-};Hy{gg{VD3MM)EWgEE)d6V;w#U7sXfYmgkNt$6}VqbxI1s;6@8zm($k#FDd<0!}pY`e!uldAipB=FDFPEBwB%GVi&2VZuzq8}oX$FA_-)G}@pB&nFI6gk*lX;+YLlQ;;4i)JyPvjL9=ablE9F9iH)nmN5(7I=Q{jpU z+Ws6hncM9GF6r+75gW8q;GYq<%IC+Phs)0uA28`TA@#FzWv-0S`7Uc^dolf4|5ggN z%!{_>`pJ?meCb4z_LNM?n`T!78aZ1ypR<@&B)P9!`{-oOlY4ir=}t9H`trbSW@UR~ zmD`+qliZ)^l)9-{dH&*^SI@uoO^>DZLEbIjTDRLJ(a*01y)H7VE0(>FWOMv^ zD*E52>GjePwwDU0ehAN1)BJzbtTidKcg39<{qH)NO*ftKQGasK#**P#y8UmK-~g4w zcm6yoKmU8OhwUQypSGzvO=ZF@Tq^DER%;}czqeknRb(-}T>2%hG}-#ouA&ol-|Qy} z=;*y-`MIrZrnpnULE&u=+BNq$P2v|WoqgcWBvYTywR5vYs{UGkyY}1Tho9X3^I^(Q zmkS=fp1W?D;G65!95WiYZYcCl7wlJ$kGvY@bdbStW9A(33=PI=28Tkmh3Phq#nK1k zb(RaTeG6;(X6JrUR5ww7qPmLo_6CC)4W`E=vOWkJS4fyzl=KwV$QL$nPAq9}l=I#$ zc)mP)@dk3ri*3uh-=t4=QwT*?LT< ztikr@_Ga~i^=b=ZRUFG0GRl}NDp*gHEfQ@mt7xx~5a!(>!2d$<^Hs0^tiob91m{i{ z((x$Lm{@J2s4UA^q&>ard61aFa)I+(8ubD@nGA#^msD5Y=(H9OsDCcF;72{%;(ED< z%_|sMj+Q1T-Y7}_QF1t(tMQRdhQ-1hSOKGjjNBVCufqD)q2UQn0~Q zxjibQp_C)Fhp~Q*MtxF5z4k;u{SRyn0vxwqM7I~VwI6I&TG*CjA#}{6u3$#bbN7nq z42dHzI^X^1`_REvy+WY&hG6{+!R6^;dWIb`?f)CqH~Lg03bk`EESR2N#oWoTp-M8a zbDg_}`@~M&hZb`(`t>FH#XJ*t7fbjb6O_!9khT;)%HAj2*tIHy$>~JR15uzaE9Q$bcs9D z1p`CeU!CYlu*{3+=)Ux#%ezx(t7_TD=TmMm&)niVbE;Yo^ZOoV>SE z$lRmr-=RqMRTEuSMsY7}dm|=fH&fuw)I}>k%u+kBs5qnI?2h?N3g~|*Y)e5~>X9;GuR=r(WHIZ$;bfTl}!492+%WNDQ6%sA(uq-X> zveUC%EIo1g?n+^y;5gNl3(by7_)EG9nYQd%IZ3-y{y|4lJL8kx$IMA;0!vf_C!Lxq(0rx$U}ONd;0kF$ z4Xp!{6%3cGU|2Opan%y3xq4Ak%B$9#(DDk(N}q6Cc+C>QW0xjqY+U+Ca=Kcfs1xHv z6-DvVRf5c!%c7pnQklVx_Gysn zxHZ!>ODL+G>HjJDc$3l}w^)9iT0hHhi{wN-qv$lKdYiZ_T!Gqk25Ar(kMT!_W$B$&fBY`86#U} zWvLc3*-mEaN&df4wsHO8LT1wmehNzkzE79eUa-jfvgfj0b-rCf9#Y147ViAAe1pcu z#ggBcoF3auiPqk;Yr)z>M(exfH&!nRcHZrswR^>_9ap0F{wVS)iw<@Axb1f2Qi&Fo zQzjOi20OSM*P5oURSR6EGfoD%Fc+bOUFJ{#RE2i49YXa+#fE>))sjZ z-K4*Knb#d*<_p_67arxgu=7)J zWXQ_d$7MLLtwP-Vc>?Q!u;uCu$+I|{Zwhy6?>`)K?CWm9`&!GT7dAeaC3xTKsFdS! z<~65ZoDn~2zS*(Tt=5r!g)?)|48i#YHfdvt{Q z8Eo$_WXgMB)xSn^eGk|211#&inI3zrS-$F!=E0NqAD-m6z5CA`p@j{n)DoDNFVNhS zX8qCTyo}_9>}dkLwvzm^7lmUl8bqI7G2@)Y+{*@qRg4W5d_PWSyxbdBC9bz=!qqp0 zKTFT8Sa3!&@tn=Y)2z?L&a%vSvPR&uv+rN)%tx!v3VsnRIOU!Gc|XI0v(gibZ4$%n zV|}dlUaNHs@Hs7*_gB2(0?TS?X2S){*$L~V54u<=Fq;Z6UlikzQDn~!xRJf!l6}UF zY=$}WSKVmsy&?UO!#{x8AmO?N1M9vHu7wY7oU;__-@s<(z-;v3Ka-vSv*ibtq78{T z4{ofvdu!vWn*|G)>v(VY7_eUzZI%MjP+Vf(18v<_h&r zU^7d&SvgnWNbHT7w%1E*ub;OSnwY?zci|S-##;w@@2r>Q+Gu;*G~o93xwoYg+4r2i z_U7)r{ng^dghDZbcN$*O3tn@V7+?gs2t-t&XW(Ka<09LePnXb>iFu}(o-L) z-Fu|>?~y^BP?~LF@3RVryL)X9Hp+gyYB`UAt>Iz$Pr(y&1Q_~++P58LXStshc{b3FO*^O(%VeMdqVI13ow+=`F$^r;eJuiuSZeV9#F1X;!UV)0I_qoHae*APlqDJULcKnm3`Ngc_t@DnkoR}`j zxTAPi`lVIVQg?+i6>w(eJ)gBt;LEMsbNEtb%e`7;_lh;<<;U!4=6*{L&e2Oc8yfKT zd2!6zV(E!bPlmd#6=;p~ncl}`**-nW_F?$Gvm5NfwIqa^4?HH~uY|negiKq-(a0PrvGlSjjyrW_=O5C%(B)h|AB1@xkjaCqh{g zwg>PqB3MHi;yVK`6|7+F$Uu*9FTKE6g2KnEc?0;{G z|GlmL_m26$ckTbZ=l<_~|9>Bl|8vOx&yn~)*XuZ^s((8sFLA=Z(r)jc3-W(2^|vpb zz>?H^?ecwv_+Ew^^Z(xa|M$WEg8Bz@oi6@;_+H$`Z$f(gzc=^)y|ee4{^4oq*MBeK zeSUfT|1tmnuXwwc_1CyJaxxUUFK`H94dfNsaYA90D+g;=RKx`VCx1cRxFa(Jr>eJ$ zn%3!@IPvhr#7P#DTviA?@tUSWdju7$?$5_D!NCJPjQ{LsKF-QgBiQFG+jTV{UkZhkhF3%9>CWIj6DEAKup=4a8f zvvcj+%dgIfJNC};zBmV8?_}HoVfLm7&!BqKiS~SZ_i?Q z|?rKE;Dfhc_Z6;B zEv7r;4!>>hiSi6M$l890qj9;4h@rRc_9vUX_4l(F`xqWq*?eY`-o@-rVaeh(3R3MR z`kQsqLf&i3us-(JI#ZJ)==!}u$IpYK!-dc7V3F6S4FZoAxj1U+GdX#ArXS{TTFzl$ z9PDfUbW5LR+5y{vZGExpua~e@I$*z%t_@SCh0vIjmz7VO=Aj=t8R}eKJRKC zTdFJaKvUSzsAZ!ek5rfecU-EEs`=|Z6K$jUv)3+jVP&3Tkv#o&(?(~W|5;*sS;dce zl`{%YD=)HHbW}rsxmd*Z7`rvLHn9#AWq0%*#AQlAbpH@RQ-noFs<5d=6HNeB?6BEf_cgj2AmfdHmO8S+XPJ=d;C8N_7lO0ST$A z#XiU}2RL>xzhGso`_VOZPE$iqz*~b9gA?q0&GXh~K8uT+9qO_zKtE#ZOQkgeAqfr- zIxDVv`7^vedEnV*p|G4r*O{FSq9*P;uH-1S2uM7<62aQYVc}N9E!Zj=cS1tY;eygh zp`O(|8=X1cC?s(wx{9^Un92V{MX4b$Hj!_0^Y$1X^C_oJG$fP@>K{7BE`HKwR?H*z zk8kxV^IMW-o?5tDT{G0VSj;6fVSyb3#{w?#iB0c*crdWIE$Q`jWD36WeQ$@4tFjAXwyqhuyY*?Kvf0j7FO{>K8JxvqM4oCYKxc8@6;hA5xlEqH;*&p09Gxj74cG2`(|4G-rO_xX5u^g2dUL2kk;D z5A?Yi9BztuXdwJSI9W$QxmoAY%vq5kF8hjSY+IYroj+5Sf5+5`xv@_YH|{(k|K-!k zsZ$B(p#B06o- z3x+@80{ zLZ|6HGnX3tSC!ax*5!Yz{jU>BleFe@yf|%NBXvnQ@S($Zp9T|dOBU1eCBe-VlTAJ? zoUOj8GgMDcWlq=Zq=T1&+-~e)Qu(^YV{t+8M9mjVYZNY~7f3Y(91^>>q1`nn$#h9T zr(TI-V{VR0;IH$?)D9?!_v$e73SB(G9E=fmoYM)%* zq-Abk={dJ(aV6WaGZRA3gmyO+TyA#1C~W>YrX%iSrl8h~);lt6UdLJ#xZ4a4^A=CKb2uV_J*+@)9nT>S ziM|6|${)0nJ4DVL@JZkijdbBq{@}9tpZiIlErl}_4Va7$RPyX%d4GFe#S_bot)3fy z9^}uv%zSsjc7+Ppql>R_&#sZWa75Daa@m*NnSSNBF3&%vUvF5+$-=y#c4k>us(27r zYtl*uDY?>>FTX$Pj9RjOtD9@}d?$w43m1tfpu`D*j^2tx# z@z-%qv-yB;bw&C}u zOg^67?E9X7;aFy~V#cbx<355BN>8JPv|@+PXP9AIG2IIy&T zU(GY~`#;Y=5AxLi8)SkSEqoxB3=J3GhD9kV&F8~_dToSNbQ~u<}XEM4@z@TImxua0thaYFtn0Dv$!+-o zl)sbXToKpupN=20t$t>AUGD1m{Ml*OYL$$`yANl`9?Di)yh`}kj-~@QTg>mUcs|%s zGTX45WBHNAoku_Ou-)Nc-!tc2;3kJVj2jOrp7j>&)>zn`y-sg;hr!`~`DSVJ7H3Zm z;{(xqrx<7KdH= z%Y)HJj>cR$8e7BNy2|cdqLb23_RJ3Y(u2)c) zaAW0i=gDG`IZKZ1a*Pu>IZ@^0BooixAIsxoI8sY=5_#4xGjI#}p>AZtp*5jt_LM`6 zT)IYc+#D`(>$tdeS1kGAy)ADKN5PUV&48w*Ax$a`@_QF}u5viuw4><+$L6vUca8>k z+07hPGHP;4%^O5cZ&YCxdE>14+59!riNhZhnk7!SZV|tzaiHbP#8w-gJSm$^JrebI z4qq_tyKZ>&lUB#9|BFTTWVL#ANc5X@1l?G{T*0s`=F}(alP8y)Ikn}?v(s+f2`3eG z4qfOvIWtC?_p!3d4xOJLPcCQhS{~rpEa8<`!j<2{vE)jZ&xQE~Q@o62_DBhftSLFZ zmWQXZWH!qm-Gjms_B|XOF51p278|S_LNq*f-r2qOl-F(%o;`bH_Fd`W)X;i#K*HlB zuXqoyyR;9}OxL{;XHUDF{}OWkE6>&iEN-eLo->^qel9uxYsvX{)m76~?G6 zf9cu1!EFn(?$s-9KZ?&TYdG6F!FMf#+0{q(cXT?UXExkb*{k=vf#>Q4-m3xkTNoag zI0y$FIKW`D+~{2E4MqMNOzi=an*JwyH|CsszJ;SDrHAjq1?j&GSCe_pF>@L@7|TmK zTwbyB#>Nik$Bl9f{x<~tLjuk;&9Gu{F#9&;lIGG&TD^#eq!h z9t=r6Tp=76IwS&CXkS=n;UAK5cBRHzR?`l)vt9F>FBDG+2)S^?G4k-?13RV$Y=8aA z>tTq^qa~fSEz|$+;NS@Hfx;)+{+PL%(Zm$rSR6P5mT=g{ZtP%UXrjx<@apP)=TGSX|%pB?kX=dW7x63 z)uTx$I+!8jviVb|FPl3Ox1Rl9*_E`mYo!hc-~Tf_R~1}7{OYjI@eq{tQ{mP-xL{p( zf-%RAD@`+2Z58QppXz7ddfIGvhw@>5lNRaeCqh;mu)J(y@ZH*d_i(S+mbve3LhmSC zZC#+PvbEy}(~8K_8||$(I%I{9y|P--vf^toXIyHh_mAejzs%vf94x_G=QA@DryN_( z!SF5k8nfyt;om1WEk3l?BG^W>r({mR`2gN9Lz_Aizd20TokXwCI|U;LcIn}59RWM-kC>xZBT8=Nj0Z8SM+6;ff(5YfP-%%YmHa<40^PAo^7uGeRtc|HM6 zy}P2RZ6#_9`v+s|@k_bQwX;JtXY zr+8L_$gIWtdd=2tD}ClgCT&gXOZZ=-6@@q zUNs2)V5n- zbIrk&=?ScFrWkb}){;6b}U(=QR?f%*YEP8pC@)xwi z1)kloxN&2T&~yef28*d_-(K{yWom_Luverpc%=Q)&0KE5FnQ~iE9@0qo*&q7lP%_X6UW0d2KSm6GMYSNt7BqkCA6OZ zJ9*V#)oM$lx;_rceK&1uZoM$+*sx6N{;6A2B{JkQvsNqIEZ*1U_2Mb3;Q62_Li*b{ zSWeqbnDI=5_vOBCulN7IcXXnf!dJytM^$cKaccUIn>oFXA?ZpttA};-j+Xhy_SuC+ z{=M?jNzXlJo66J8U8->ksuC^pcAhPX&+CU_(R0?yka~oHZG(nti=; zH+Xv*UU!I{_fcrEcWBBy_qxAAj(*zR{tn)Y~}L5uc*kJ>Zdb|kdO zoGD`}qpxMZo9{Cz*?4NL+r82BX`%`928k9SxrH1cm~P?BfVF*q&#{bTR~PG^Bn zO6#}t8yHuvp0wYe(HwDA)DU^s(hUGMATgD?9v)3#WAUB2RD*zvCK(ubaZ__A!m$DV|%%U)zei+|g1_cg@4 zLp}9tqWHYCvRQBLDJ%@}3LdyS~q;3!h%kUitKfkKW7M zlfr*CDzW$~H9X_(?R&mDH2!C);Lj4ppR@G&{>e4WD}T*@vSprlRo?ZVi`3^8PPzPO zLS^*g%Ejj5hQ19e;>-I3n^yE!RhIu+bN$!a@`A6HDShg@Yx1ksssG+&{(JNLvJ**< z9!LD@4@ue5{(Hyt-#f1h*%vhIE@xnJo33@Bn*BdVnNRTij{V)+!oO}`{`;`|pCjQl zFA_3Ns!Y#i=RDRGwxPbOxqR2g_&;Z^|2g}-W?MqWX?4*P|2wn3^@4|GhrF>wLKQ#s3|==?oq5eOI=}9B%)6@B82T-)nFBi{Dx&D&NaQed$gL#ULWC#OT_$r(oJm;SHG{H%6vj#c@m zH!nY{Us&MOE~K0F<;5AdhG|S)DuJ58%RQC{tjR}SfOxtv%Wj1g-9B5QES^34ZMxs%uO)fC& ziAG6YY%jBbPNT-gH#fIr-}Y-eeM$Aq##P~)^WOe4eRE?|x;9Jdqi=7;1#=&pEu3xk z;lZJHVg0;67N4HP{+B6uY15d}$;%O-9&ljM{8v{*rKc>q`;+1AmBq?`k`GjRF$KG5 zU3k}^u<+RnMjM9;&4V=z%pTP~Mhf-}j4Br|2;JW)GOuEuph;`R>(Ugt2F4}R1d9JN zFfqisPe~OCchX&IqUgxiv3$C#N6!kGF3nXllGK7eY)|sh-N&Jvo%1ElNlNhMjp#m; zUmAfLg=;>Z=y#Rslu^jKQFv;iuhq^_O}>a3(^3UbE}!Tcx})WYW4`Z9p-ML0hY}6% zOI^~Km;)WvsyHM}Sfd1sBrYn1N4-dM@~oLTsfpS1p-{Py=fP(+9A7L0rc|>Tcyun) ze6r9@fp1HLH*ZObIzx}$PR-?WZ-sC%&0>9}xnfb(uB+VUUP}X3?Oj{7s>}b&H72zU zx2m!O8<#Xla}_=KrM*F{b=UH`M5UI@Y0+h#Ic~@JmOPxoRq|!N8@rCk^41u>FYF6n za0*Ov`hUmhw8OkJOa(9IYxb_1Fz?7C&j8ICQ5FrG*&MB(J5ESb(bRgGRWjFQsf>iq zLDtJR^yY6+T61wB+y5^odJSDz3iE}meeS5M-#O6|)@bnc1wt2J+mL> zn*00S;c$1U`_5)jsHK0Eqf5^CYJp49os1@)sFfdfoaMaf__H_5rqc4+j?BIQ-noz2 zx*}%O{8^Q?JV1`?{{OXyU#xdyQZVH33^r((w~UKXcH#voUE2#Y7&+e0`EZmw|BY%? zdJ2Q+%qgGPm!2!Ey--=MJ8=?IXpECb^NRZf;d^SWM<2@M$t;u+o8`c+CV1qr#WYc= zpm%8;jfv0guB#{{`E{^y&VAwIuxrDLh30xWy!^EhhcvmCi-`I-9A*pE)ZVEQ>D=A1 zFC=Lq+pl*DdoOn|)=iW9HnBtD|I8IpRkxN+WR!G?%XK*+$*9oUJjJO+@?@;jy6Ka& zG+7#@Ogxz9Y;JHCWa?{ian*dr&cK>7(Kju~gT>n9V6#m^x8O%*&XpRc0%xgYYATAa z@mVPtGU<|X$qqq2rBA2s9r@I1&UA#Qx|n(LoJFBK9AiT(epqNqwRB7|UNo`ir$veo zOXs3!rHENKq_1st3)`FMtiAc=EboBqJhqd{j5}rs>7Ntq>B~ByI;YsPc}0-2xDUsb zxTXm^LcNryS#|smD)MjTFk&b-@%VDeLt(m&kYbyQ`s_<46PYhuRJe17L;LKDNd;yq zlQ}q*_Xjwh-|gX&Epk=O!+F*OM+HVk?iv4^xaPV9O6FgewoK4(g`=>`vrB9B z)EQpeO!H=_oN(7vrJwg|ir2FC6P;!%3r=@){0{nbwMj+D_L3I|ll>|Ib{2(vR>>Cc zHKrFFxwLYsOFOTm99p~c+Qmju+vl$4l>$#&Ckg0vYJ?lFzIm2STSV%xZy^7poA+AG zEG*8d=2d9PNFG_Rb=}g$%)pBs5(gOA)_r}NJLA>jo4dAc-4UDRH0#3cYwI4k1$^xa z$#)JtXS6**Gjy`|w-vkfy54qYUG9kDUbLs)YKm`?DM#J^7^Q}`Ey69F6O+Bzcb8h`*sfoR5 zDGWk|+6)OX0^hS*Hs-nXJBccJGW;-AOAN_Z;IxYGl_`oo$EoTU@+U&lyC9dNQ{P28 zD7<$M@6oujShar+t(rayxjgtJ6jueLIc@l^&^&`lbitg>&pi`shQ_z7}497yCX$~dAfBGl!oFQvFVp=7Z6w&g{z^mKz@O zmUXzS7A;D=kXCVcb6d$KZlzal@1KY?PH>jK6TqGl{p2cWtdjXzPG`#xv*V#2nhJ^R zp}QIRd^^p2m&tNv|0}xAY3Zu`;=oHQftBjJkD2b_{KV;g<{&Q{d%3&P#ys;AiUJ4K zIM%ZZaawI)17G5u}W!QF=@@7fc5t<+pZQ1j&0T^TtY^2VYQ6<-@FMW5p+7kxcx zhA_)%28|bve5dYDVbIZ-^u)qRN9wVMs>CN-ezjE6wU}gS#Y1_q+|Z815Tn3g4j1V zwPY~cS2SD9E6P(ik#4;_v}E-{)+yPI>qUatB@+DDw`QH#lrJ3JQgWl1v+zi7)&hZ9 zQTNpP4>-Q64raDr%=Dp2UhSdurQdg|mfZ20;-O;DZz*E)@S&k#%*(>hvzuh>f9}dZ z^tSMj^l@uN#iAd%`Edf(_qNX~GG1}m@m0a%00$+u{$i$Mx_6I$n2}I=$71H4?wP_< zHC_I*c20EJ;5mJ2ulEwc7{zPFmArS)vQ(wIu!*&teHc?NA?9>Mw3dgpf3Nq2uh(b) zneNCFxtF8Ij&lLeua4Tgo?L#Nj3tqp4`vh_ILyycU-C-59Mi?otjAm5kHf1y%}&)j~URXDdthE+;onnFUK zrb3x3%j_+ZoR8+pua!8pljXKz%f&a|ej66d(1>(-A>*XM&+(2$()2N}U-DGJ*t?w% z%+Jm-x~AL}k+@K%Z${E^)Vt^WbAq zc+{q_=#cxPW7@lX{JtII(h1l6qV)7kgMbG1ko~-MjdNW=rZ)7HcyX^+-vlAAyrakGQ-GR&2cEdnLi8 zPdRbwVjD3QfxhbjI%#fSVywl~q7Ev{ojiNakSBg!TA|F6ViiR#jsDg(mrtL4)^F&| zeyk;X7fa5i7N;l<=Ps5l5gtj3Eq9l)+Jfvkgl7vU;EBPff|+k?1?C z;f#w@?6)>qlhCqV2OQ=&l_c@`r!MEblM?&xiN^+qA9qz97c320=wKwqq8hcxan7Rm zsw~l6@=g~H^iE0gS+V5tN>!~1=|61M{~yU+>Qs{I%%S>h3xiJD^B+&2)@<|f{jxl0 z=TirU`_kJO9p^YHSemWTv^8s~s_CYDi&{u-zq- zs^wCdx!CtWpc}(VyGhB;GZs5ukYG@G=I`@x%Ff3;lX^1m%QK%pY7H#unR}Kon=qV? zeYSalJIl8tymvUdv|JWeJ@;=&&0pfccfe8kjN{om9q9qja~Ups&SFq8aVodF=U{N~ z@s0*QgM-RpJQa`HxLcTFoo;BVT<7FrS^TJNvD2#mOYHbu99F!zld>|2uUhO#@U0#` z8%Mqy4|8R-_)j)S>9h*ZxbG`d8ki&) z74KTiA3xA*|n5x}I*RWI-i*3iDf{r|+ano`s~4%t*IjG*wpBp+ zlE@>IHBwS8%bMmn&dBiFDYa4RqRfo>!3U-&)M+1jC$A;4j&sg|hxa@lr7hAs>Y{MR zW4+Lk{D%!qElo!rxwV)c>gCZ9yeZ&h^E%K-!%<)b=O1mYi2G7^TG|&)Xk6r^An^Ka zrQQpwG6jxH}!{-I3%tVFnk=1K%@xpC7fg$Q{}4CAg1I z+0n+SF!Yu~NKP=H%fWRG*X2AlRTxj7Wk1z7_4w4#{xIDseQFF}avh%pI=ssGf9Qio zkr&JPs3QtG4LRr7uV0%p(Qnx$xm>pj;kt+K=e=3KcSXYKuH=h3YFZ4}n6Bw_9d5fL z)^gp%M=gMnCz!GRNNC|9_E|hE0{@=6+{^J>W8ml0$i%WyfZtG%y|Cz3F3+|EuZm|b z0&R>c2a-P>S^wzR0js4y{<%n9X%M^aAbR@U10I*XNv|Hs9%)f+xp$ZCu#n5aUtB&X zMSkpk<#0jZb;?Jv@{jiwTv}(gh`&y8y5qsE60Lb5;K_m}<(!RT*VVNigl!XIc~^Jj zvz!L+Qis)lukAVKviFxSDkzSB9g?mQa`Mptg;r z+Y}}52RRE|{Im9bFH62O{}JizCn1q7&c>l~-ACkR8#%>f=Z6$N|Hj5u(ZYLW)8<28 zs%(w4PAun?$T+}M>^niiKvC7(&BenyUnBa6hWru9-)%B)B>mQGa{5r>a(s%;@-2=H zS@|yxyf8cR>u#Huy8M6tnJXkty?=CRbJ3M&(^nWfPMGTSWMZEv3)9{=E^dbDa>dEt z);nEEvvUsjsxa0v5jtOCY@x0@d1)HcH5POK&PeuGocyvDW-Sw59e3OzdbVq8O8QZU z|BO{RY|IJ=MegX#oMNmsL9m-iasP}B)~rVz4zq1B>A6wldO&ZJZgO^DLem5bN8u}F z!U13FoJ=0~6&eO^aZ1V3T-6tnZ=zLFBI7@K>$z>Y_syF7wzyB(!ns6GOXh2M`wPvO z@-1_nWOp!%=#&fhWT>jSD0klu*qohT@J4;t`Vg+os}s%loctzrVO#FwZCmU)-8cJXR)mj5O3CH`kVIoRCzwvQofC!>Okbg42+-o*pIe{Ea; z>063)`<$+DMwtVQCf^e6d1KXEqL|ID+LbwYvqY=5$VaxsCKtz--@4C6P>wj!-ukh;GabfL(t4c0C;x5VSzqYwshR!Mb*L9uAW>TO0k-{o9 zfvgLO)64?qe9Lw?J$2`i1wpO{&9t4C{0z9kxUOweUizm}zmoije8(e|jve}i(&kzx zHiqu|SvM&!>nKZ!_xHf#jh-z|d?i^qz2*V;&G)rQSIlSlQFbKcSj+6`a>1-yHQe)^ zc075!r(xFfBMr(&mP&6`b2k-@&Mu$lz$f;p`asBi-J|P2F9X)m{FnIecb#HsRe5w-#dtlgN8c#URNTM)bmL;J)xP@tf#tgF9id4UP6jrER>AYMXlwzqqEYwlTQFMB8Pvwt?%p|64!HIj}Go6eRp-3Sk#i z({T_u(A>fwsGG>~fZwGfNKJ2Jhu29LHfcwt7=yqA3KKjf_&7RKlBP}wR@36F6kv2_ z$H<47jVR7Q%q0Vq_1rd)6ibv+K5Qd9Zh(pMaSmGv5M- z{^uHD#R7egJOmzVw6R?5OL9=u7T(7bSSTD~%2Drj^~rnA7A=l;r!_M+CZCw3d+1-a zbB6NKHhH@sndj+zN42iqsQfd7HBnTW{deuV%_4d8)^OTqJ*?6Ew%wbqlYI2 z{yRs$Kj~(uF>n60BLOz|-#=TLCDP9I^6q-qhb>QUaEl(DbAv-bEo_1RMhU)O@7FUZ zPI|A;7P!)Rqnp8Hp98#>Z!R3>H`htkZi-=g**L|?Dq+#Q4@w%HGZT_l9O-?fw1RQ| ziWx5$CWu5#T+XIul(|es@)g%2F?OQ`Qzo!z7^$deKH^kvGuf2k)g&U}b)@qT$II1? zAxtZeHKuLRaNAi?)vcfy7a)`+R7PwF@LUSp*yPacPk>_ht#&oDMkj90!ygu&;V2e8KhaZ9 z^1L>CQGyy<0Lw|=rYft6iYf^?noIg5PHj@3!g%B4BDuG}3_a#`JjqgaWK>95*4cAs z%EGR+M?1Yby5ut47gprmQkureHQ8;pqgC+&Z$~K=wHCFeTTiy$%)9+|`$IXefcdqj zSUlR6SY$A?iT#+V$i$a4<^O_}f=1nnTfTLbXnJXZwcGFObh+$p zd351mh3p*%*NQ_AHe|Hr%D?&+Z714%XnD_bX5uaJ?_2FQ{GXsTzpaG-%a<_ ztN$NbvLg6SfKPj)Cfm!-cZ!Rcf9#cD(-M-@Te9cj&3F37797X_Ju-ZBRV$CTpy z(q_}MDvY|fPn>4EG6@z5Al${mzR9UOWJ9(#;o7fe)<&nS0 z^a+lC8oTQQZvEuBD#~o2qAjqo>nfA`w04O;g${3TG4-n!J9GjyW-elKG3z*Fo%mkR z_~GNWEnme&B3K&hEcsOu*aaD`>6O;+oZ&j->+~D8Ev0H1aqIqU(so<4sQduel6W@G ziB7W=;y8a!Jyv&Jr+dM97NZRw$L2A2{Iz{D<+5`JpUCConVM{Db~|Mft9DNLA(+O; zarmsdufVDHo=sCYELrvIjn3>h$yerIeAx8$hKbMq9G&|8WU9v!PKk~?`qoUZd z^n0u7GL6CMsPR$eiBJEwa(~h>$9XK^|FRXfrhGS)Dx|_OkMV(M}-@kPIk!g+`d^c z>G+gIO+i+VpZgZh3Z7fW(HGFEC_J}?YbH~|B96vO?njI+9kSIb42Uvcr0fC7=r zXL}o*4AmpjHMcFc@|oo@x$b9-y01Xjwz4;h%Nt(56Z+)7z$IwT38iPwddH=Uo-!!C znS9Re#Lww6a}KF%2K2m6E8-H-(5Up5e7aT6sX0>Dtg*Lt%}<4-sQ-r+l&MYaX{^&Z zH2=sxqj}ytWuEI?l00-kOmQN^je?)$tJ@iTA}dPOwfr)ha@0~bs0l>0-suvUur+J> zQ`7u_4vPs!O-mNWeU^4sF`ukf7_d-})l>N76=7$_2dg+bSA^+WZRuhAs>r)E*-0Y( za7&9xmRIcwNp>fT`AftZjCee&qrDdWTI9LJ-`UlLza~zwf5s8Zx0+gdR%XqMm^v6% z1aV6nb=awD?f1;RA~o}u+wv&G)$A)gG?z8RGkob?#Pf1Ru%Ekx*%_6S^^u?2u05SD zx?r2&4P{lQJngv_E{_DWD)MX0xHFNU-2W+6q3S8;557e^9)f zXIj#-o(Wp#m(OHBxHKs%Aat!Ot9q_P+Y9$ zvy!*=)w6TYSsKksG!E^Qh?RRH;`_~e_avvtY|URuH&Yp9Zk%bmDrUZ`p3`)i=wr4A zaw{5CSM`heSX5!8TXWrEod#Z5d7}Mvhc*%$MP{~2=Qwt!tnv}?OzIH6bV2;# z_wN5+%YL3t{I^Y5y-R2;8lNW z_TMJ`2@ZEzg6?;3S^Bvt_p{_&u0{Rv=1$qa)`*Hu{jw`wP4jv4hpvVLhjwk>vTlLh z;z!rGK1IwrZzunEiRpU{hIKdmFEFjjwmK92eV1A7t2!+61FhPx*MzW<#dCcgCqgL_inUaN^;n_7;U)vlM5)_X8vOTfXH z(uZzdg;TrbS-e!Y|DV(>d}uSnni=X6KL4C2%zr3lKmU>K&k80z#ZM34&;S27Un}~I zN1xiEUk)A&>`ehpdWU3MU;JDDY@J5%H*a^RM_M=hHJKXC(jGDG%ypjE{<(l#^i1pL zd1sVvy?k?mPjte|H%Sd!QryF{&TqJtx5MfJ^Lm{#NAm36^|5iYiE^}kZg8$I5%|d0 zbomqCN54e2z2`m)9J(Xo{B_2mjW!c@1~773`hV^V_%vmMV}QTo9d#Dl53CUdn%5jY z#qe`kp8vY*tp2{Y3I-2%e)6m3JGA+nAL~8dds*K1PMrS#P* zEn3Kyw8m^vYk(dj`=Y02O$=&HKNbEz+Fy0(;jh<UF!52HmafWKeUUWfRTo*-1v=Or{P1is8_)VFP7m2c53{8y zT|K6!=*Re8;;Iyc1z&Jv2d6O>x7sg1N6QzJB+SSvp%$_@w=&Y`Z(lMb`K@zWAW&R`f}T zNm%33>l6j0`A%ni5_tKU1nvYl%Dq>-Fwri=K|tt#(i9PoJ)d5RwFde9;$>89DooQ7 ztoHb4C8)BX;{eAgWs5=uzmJC{_*8TzX4r8lEzwt*@$R<{(?f|zu1qEA?KeCIV>W+@9+R&25s{l7#}`iaWlM|b@ma;~|o zUz9L+Ruk_UVcz>EZLD)ySY5uToV2g$Rk?e>xP7yQ?*g_LtJWQQt#C{`?87EUOBSzn zY)bQt9y%%gS)i|&p!3K{>Hmoi^$fjsp+zDJ6BRi&{xs5PHOTtC?UN!`u#n)Phe2v8 zO9XpQ8Ht!Tr86)H=4&|dGo>?JP*OALx;9Bv{?U^%hpfz)SQ2qn;q=nJYfB7j@5za8B8xIWNS0sYWp0BYqhM zMz#eELJK66Gn70gYKmQ9*;1_h&m_RMg>TLRwj>3%3GUNxCGg6W@;>?hS;3BxkI$4X z?g85+2R;@PMa4wE8xI2Ir_Pef=Hv5aOG#iWVc=`|tniE>+m)3WmZ`8)`;G##*7O&3-kj^6L>?Cm6aTM3m&j0EnvISz~`YY z;7}@Uen{}igW%?^TiuTGJvb0i88lJoil!4IUx5SLimhyO9`L@ppp-K;viPfl)Yrhu z(6|#HueE))&kBO2|^Z6MC2MHnng|dlVVF9*aS>3JUd|Q z?`UT8E!j~l#avWz!2(W4rm)-wwv+>`F$!!&4>(Oq)h3xHr!uf#ONbLx5^4H>)wt9w zZ1$J*nTLKeFi7${xy=2jrO1@Yq~IHPkbfIfrp{z-<2*I4Vul%Fq8xgeX-z_bCLLRZ zw1gKOWo!7`bu1vSW$(HqBTeDIa!D?)-z(m0(kcI_)gdO@6Ba1p^e`;&FjL>*sz>`d zm|irL6>xrUG+Jozy6ivScc;f9ne|N%c9m$}_^7U%RK)$gX!(koHLS(%J|9*3qpLsd z{5G}NvwXfmhQgC;5?`0xcYC45a{B|cMcSZ-sD`^6MG#OYvmj_Q5_;Tdo zjQ^MZ2p#gMRgz$5s`B1mdw06#zXq-+;dPTAFit3W-lAXk{JZ~~?^?IE6gH=6e8~Pa z!>QPJ0c+Z!2EiY-k`*ac7bZwaEVnU#ub{&B;6c;F2fPIhT$44MY$LiRh3}Pmz$kVg zV9qqfRYoncUW_sgj0$fUbfzfW_^vpC&zp78{$IY8{0xj-!IjG8LbBpYn}i-6_@tPz zMnUcXqrnP>fHeKROnNyI^_Tl|<(0DMZe%FQ6PtfR+vG z(W2M+P}lmVvc$e#^+UZYJ^Z$+^j&_`xHntv!;jrpcJzODvU0!Pe?P71JfG9O&-(Wq zCWuz1^jYZT{Z|qF|6P&6T#v<}NX@C+{7}zhCKtg+<ifCH3--1l0XdxVI_)IGe^kA%>#LiLF129$FNvE;`Z`S=n!y z_aZ{$S&@Q}x#o-p))g~n6>hUxeREcOmr^ z;GL`gu}{iuUeVy^8j$H|qI-}RSRR(8#@)L5W0!@g?ibv9Yo zsY^Z6rq~3S@>#O+i7YGpze~gDp#EZ|eF{2@RQaZgE?to$zVIM_-{PBjl~KR0m?`cs zJJ2<~db+;#b{mNYtXvL&o%Kd|EQuk}w`u5vtP2@~D0^n_LDgQdLH8{-cx4r}mN1w1yUO2F_&tN8UlXCK;}ds=hu z<(_lNe|+ECoc~&L{^y?afB&49-g4AS>H_E93%q|X2-;p0z3Z&-e~qsA-;0X2msD#n zX~v$LAJV67d)c)1vgO{(wtJ8HUq5AEd&P6_72m&C0&5G5kNybyyNmJR)%d*|6q&9i z|8H90EH|e=TTL#`A*IUcN$0is zrXo83j(VrX7u=nx6L;-B%i~Pj3Eg3QR~k6;8aS^w@R`hW)`_c@YrIyx_ejmuYd8OA zKKa=4I6k(~@8RS5M<31q`Yds;v%$efjd#@>>|WZ}2~C-I&GBEZRO7YXv0XBbuZpj| z`26vMRNd>_*9GQo+_m#wzbd!NF+1I!<{J?VxA>Z_-Fy4S^LST_x9O!kQGM)Unn-8DEi!Q8utqww{VDJ%V&_Ltre zU=~bLoY;M-?0t5lM zx`xqc>8TE5qf;F(Ubq~a$>VPm)%p3c`b^$vffUD&E-U7^bW8Pms6TcKagbhR!Bx7z zqf5m%$i=fD>DY2s|5O>Nsmil^7A&}Ab9)1u+ZLX;Ew#Tl9u3`5V!Le#hgg7{so=wu zDZ%C&9vp1pmbUA$*!bvZkF<3ikL9K(C#Psf@9VKFKDCVZbkUPD0y>G3BC#$w);{YHyI)Gq`{L${_f4)&Dqk)0u(&Pavig-<8?HDwN?vz4b9Y1E@4tV3|NhUP z(7?p!k|W>c zB+C>NclYX`E6Wr8QbYnL@YtGMn9uw6zuN-o9KM!0so6mXhV+Zn-i)6i_-{G$LT1}b zF;3#Qys|c*v*XU)a>>s-ck8vRFs~JSGiL^D6H)x7;yPcUM8(-s;L6igvU7zv6$;iU zx+_1f3h`3T-@$ld&+?W-`uhc4KRuGtb2~IKUPRDl!Zx2GkuI5>0}B@??EQJ-BA3YC zl7Jp3yJuO>O*|=C&POG$tl!V<>U8{Yf5B-%wWcGA1`0D&LX2D*b}$+`E#RpDnXdQC9azZ9=gQB}a ze0RiWhvha(><`O!zizu#=1`>U~*nExW?uCMYhQ*KC7K-dO_~f|7_=~aDQS&KD zPQ^Lr112@Cofzf5Soz9E&K368T-?&)@|{Xqu6`6%Srzo;$mdD>AKqS=S<=@vVP*pF zl816y3mW8T;}a%6wWBt`udPc}w* zC`xb%>SorlZ@Rsw~tFT+aC~W5U!^SC)Q$ofWEk za++|5!GEWVF5SX9qEqfK5Egpp!u`^ORd#MF%QTM8P&fbXTUS<4xNrM8K(h+ ztNHE12dyfnJ<49EE_>_5Rwr>q+ciQ#>f0p+UjGRy&J(iFT)qi9o|ifAv3ugG7N^Sj z9W5N!f20^rbLoEWUFi12JW1F`LUG?2zSuoHDqSgF*`+(Ka4IMztTI$#EtK$5G1{wp zvh)&Lzzic_kv&3e%a0tCvHY}Z>X|1q?|7WA`Bv<}`Kis#Op!NZu4lE~^&p2SNkv8` zE88=RnoUd&PM4neh;tqTM~BTJ-n%Se(#ygpOcYsl$uw{K?)$v&D^Ab$^M1QJC{}5P z$BBgdMhhH$7f(KD$`SLRhwJG71FY|of3ZEyIJNp5i~sY-!6wp^oKrb?dX=yGGbTNj z*7s1h&@=AS*`ofSg-gw>#_?i|`AVw^CpoQDo?FV-XqH+0kosgZ*{64oqPBtu?{u}8 zuBTH%*S&dpguR37$JcE$Zf*L;=y-2uSz*l{_ReJ$j+~!b>gPP3dgYePI(7+0@1WIe zH!CNut`$UuOjl79%zA}u>?Lkd0j*Y!b z*i0kDCz}iGSmcq;CN`@@;5$nMV-VNeRx!^_MdlrfSFg**Ty11dEZcNkFsMc7QFj$*Vq-O}-`|9`0D&$fcgf^uMbmddD&$QMZP&?anR-n>()w z1a@!*TL>&LthwGQDjj6Xu~7F#O3VWlPloNHc?R_zfsw}^HBI*DoSM-&{f5;=kr2U! zoy`YZq7CDl8aWLfv-l=-`5IK5ZRO%H3ufD>GeIfq?DbPh*dS}zl^xKvd`6er1m|NF0w-q}h!i@p zCblv!%u;LM{A1KTzkzdxf-4tCfM}3_`*G1Tu8M{Y%$Wl0|L<{#&u~Z(Y3!8eoTR8Z zNx9R#=D1+ZldAoNO!HaA%MO&KPjp`M!)6DQnCLP)#w2F>r&9d|9!*<{R$M50by(%d z4*3{YpAW`y{Q_Z@5WA6!9Z5cV7|^g_Q3EM!x)o;Ol~3K;jVHjoHH6VXEb}xXlrca z5tMP5EZE5zTkv2;-%7SRwZ?*p{j*F3jDAklOqu+KT}|Xu$BKlARUap-GIAt1PI;F& z<=SHD6KzGjm!>>nkK##`5Bw<|{8H^f2ba4z*B|zpXivG=NVS=ga{r&X_!lM2Io>(v zn|gow41uX9#WFnw-FMCkcNWZlDRaYdf|=*^S49GS4Rgvx6IUnAc3Ehnb%Dj=^9-HH z8Lv;yd;4-;>&vz&#Qb`%n7oMODxhP z+Lks37S{6`G8Zs#G$t(Fx2*p+rzh9anU{^3g(*K^X;@Z-aF>ectY~qo+2v}>>VGZu;ZomW*=)$b{A7lpA;XHKSxRZ) ziw;XpJ9kC8u9iQz`| z#f}Ucv%HX5vQU@BYc+fK2F}$R3XZHPjmCt6KiK4o6#+3 zRyJW<7vnnP7qYRzX>x%RPE5&r$z}d}m5}#TYqpKsI38}Zke)mDlt7P?XJfd)wJuTb z(jHmGt#XZ=B@cF&Oo;u@K5_DLXYnZJg4pgoCs*$|&8-mOwS)EHp1zM=`4juAwv=&( z2CIKylI0XTRcx~K0#oRxJ#H5{=6uX8Rdi;N;5s`+sV>Z%cZPs}f-0AWWXJ51)sYio zO$2s4-EnEf^5`1^-wG99X)=d?+V0-SIVpwNszTxc*OYX@mMKXB{Ryhlj`F1|w=A)a zST1 zLYtl00=91?R!S_`$5j!3iQ`zC-yZkS1VLXd0ga^s9Cc!80fk)qO6CUyMw%+H_p-6K z|I*m;f~CKK^PRcytDS8!eH{xB`Dl|imMw{r(?o#dH3|IEsTZ&vy|k9ga-boI4J6_(Tg1wWpVEMzh&U}lxsUedVK=+9|I z-Al@Q_v}y#=S;lRujsj5MpS*pe9f|q)4|S*6i=it+#e{o&?QuS!i8BE*ds$qkAB~} z^sDvS@7kx%eV5h{T=>%F`0FzhLQMC$7RK@v?wJ&L{+y=NjwUg6fv$Zo&mYm;q#($3 z(?W@3=&WAA-23^Q#lrk_MUV5o##2o$3$M8&{v{!>F@u@Y%R>*MO*cFr%jrkijqu`o~aqv5XF%}kcUQ;pc` zQ<>lMu+Kfh)X=b$k?+C@-D@oS?i{^x{;TgH*S`zqCp|us{P1&Ui~jeSw`B$M1rm)u ztg&P~+OUBw=lJz!x=(}sp6Z-fBkv~=&L_D>qo%---7kPSY7ujufKqNjLFL&s|Ia)E zpANe~)q;W5n@>DXfw}Dz%PtwQ1qawH0-ozDFnftT=w*1OFTku{P+b%!@bkv%iHQa5 z-)(yJ3WD!&WF|1@?_*O5v}87yo>)+@KVJdr@d1`>fjxnNXL%c+hw^=3)c;`oEH^RY!vw+D$xCF;o()*{G=0A12f_J5 z|Np*o63YK5-v3eJXy~@P+awQu>|S`)&scJ)!zWdK&Y}m>^7TX+a6`9`^8WHgNTi)t^>2rgTra>zvc6PcjNkIEXaJh zC$L-kd*%A?)#tz0?r$o7FT%GwDo^37&V$c&{XaU_|L8vdqojq?jN#|RerA6L_QnGT zdi#IQT>o?S`JZ#&|D4bNYoY$H#s0sR=KosW|7+#?U#rjmTKoRjdj8)V^?z^n|GhQ; z_xAqZJJBDZ8-U6*?M+S}+Ig-_jd zU0qKyvwJQ}nbm#DKi~kvAD`CGS6n8y{%@VH^zL?rlEPuN2Ul!ZPkc%}GfiG`&Xk+R z3j+E?%l`FPemUr{RG$+tyD71v2WF>;d0(~%llPJ z&?By+8_bo8ls5@wO6A)LpRqpS{QbdW-eX@Nff0 zp)xt7$Wu);=#V43Vomo1Hb#wvRVF;i$qRMn-`b=r_5Xiywu`>?560vl4Oxle$g6MWjp)6|-QO<@}(Lou{DeX0t-|sjFGMhs8n;hs1XKEZyg$Jw@V_ zsX5z{DYwEFn4iXRJ|%M>&^pXmi!upfRF!SQ&xNtt%Yjsw14F*~Amd|T-7h}9sq`oH|4hb!yyF9m3d zJLUXHn^SzPGJW3CQ%krs|LmBe==5hs5|_Qsv=>4P{%5S1;<&Xm4>B!GeQ zFR#P4Y>%&ZqtiQ{evfJUxiCQPT8JfuEJ^O^sD z!qM{Kl>f%&UW*0%qLVr1%5u1C-M*QZ&-&Bl-HGY@-D(agem{NxpU@|p5SJ#toQA{7 zVmFKh+5%dXW5O7j3Jx*YEazge=wsrTIKkT{f#IyCgHTmF7xMxG25*O>B54vcm>bS2 z%&cf&Sm44SrEwX9abI>5mgJYiGhl8D07HUnjbQI>}@cPtKqNkk zF2xBN6P~*|Bzg(AJXa{%u)OZXA;0oT>hsuEI&W79oV(oO;cS&98Lqlj7nwH-7#X7d3HDEi7brAZ^4&^wTxJl&&U+w}?d6Kad;#tu8751)8!j<8bP2Mu zxH0Ot1_`l#5*879piu82?Y3$I%L=#9Rl%*R#59%M-5K2&xHTUa3LOy2Q)8XV$+?>I znAIec79%4=f&aq7^NO09HG(udSzffo9bL3h;K&T|qSc8>0TZ@t>R8LfnI3yqYr@Q( z=~G!do##g_UFCkm$Y0L+gmrDFR03a$P+Q_b{rO7GJyRCVdFjY_l1=EwPo8U=?-rlP zNH&{rahE&mS7FaYUjx5Z9b--77ebX;8@9XcnQUXZL2AtuC;!6>&M9@KPITZ5>T25b zf^`*_UU!H0gf=@@zAWEU++y8?&M^$qZgSH))Qji6oh<;MSKenfPg%4&`Z(lWmfnAM3 z`(R6A%!Ubk_D>J1MmB5yPj{HGuTEoK$CT{Y`X?;GLEol!+h}Nc?KvU5_|P^6SJmQ^ zpJN+O9GqgJ;h~at#^<%{kxeJFC7n)jbu=%r(A=@tBl50uYU7=XFw0{(lcgWsY89B| zs&nIttA@L;@D9aB=8J1Ncl;Jf;(H>PZ^kpd*INF9p7?@usm2be3EM3nOYAP)t5eBa zo8h89Oa0^1^-LUxu5d6P*w2z!QoUbm!cR9TMwZ0<7IRyH&!4t4N;VqQPyIDv>MrpW z6T`l`YR$RIt*&y#@#0dCj3fJ6?(9;ro7cZ%2~W85rW+gX%6gQEcQ$$6$hx6+f-&j! zuBEcGHyvN);-T_FW~RD83mZc%qtWy?{{>8oeO<(zaT`}>SC zg@@nb%!He^yUx3;)D&UXe#=H%WX>~@Lv#J-ytkPjbvyq&Yhg>`?FAN1yVcLFFxaNK zc4bCSddy>K@sn#<_QNbPh7vtlBN*p{xhoVS?MuB{ zxSurE>{Urha}<7Zfx{wX(ha7cU%TcvaUGSI<}48E#WQ08^H%j%!-_)(HNUM8vF!M! zS?|hv^K9R@J@3^;+|vZL#Lp`!yjC#MOE@H);~>ZRf7z$CW(Cd)Zv<{1*7}+9;M|(H z`?Gd*8A~hwxVKh#mO$(i&Lbbv{eQQHMW3y@?5_Cu-UR7w!CVeoc1#d`_LQ_=kCWd zHfUBjG&(FkpwKYWsWs?^{z9g$k2M+={%oGR`#{%`D9XTT z*EuIvc@`%{lMaDku9#|$Cth9ellFF=Ua;r$3FNX1Q8> z8wEC>ROqan*Z)| zggPazXtgQuF&i+j9ym66g3a3~jz$)n$p;#xJWfchaBlKA{8HgilfXW4$3rbYb}#W@ zZvL_T?SaXc8&=o|&(wDDXiYiMSa9O0q^PiA&-*6X3L}nZLMto+PDpKFY}R14S+(ZN zZ8^)5Z3nCMJgU~VPcRZzaBUK>do6gfMa8qxz_VH7h`zN;%L`q@7`ZbK>^d7<#3#Ef zEpTr9!Qyes_;5z!-i6H}F02wig}S%QJ008=EYrD3rNiv>RF4aNjU1;p)||d_+PJB~ zRybgL+#l})JZEMzZfIU1B*t?5pA`oaPmiIJPqV=peXBm^3dd%LT?=M7HlA=l;Nft< zf}uI$|Cz*^4Ua82M0vWjBRl-K&u+iq!*IZ7wgu~PBgVa+b8pN!J7a~@9cR`K9WNIv zC;vc>*Tx*(CX5=7Px!o9a;UN^CWqtBlBttLL^?bUzxUc}D#LN(vUl47;rJ%!xnGRb zjeAstH!VM5))V0>YTO|k!gVUDK*8v8#izG1TTadp?dg}cxFTHayB z;jxQxv&fV!A{|?Oy0(dQZkOR$c%^Z(7svk)t`EW;3~P@rf8ceK+5h030KT^uS`62- zb}Zs`VZHX{OtZrA93C!r;|_+9z{U?Nm>Dd0T6Xv_GYH$xP7&b{&^>b?V`m{t&pKs} z(<}`NwjEb^xR@vW=e|~Qc9wwu(gQB71(%jIT$)nBViCZ6J)23__QIVzXB#JY+z;tu zUbK37#DXtAT$>F1LOz^$64Iru!l8XMNcZlgGeVNW6U^HtoNJcwv*S4u{Nu8Htej;+ zv-*r+-QKfr&z#J>byC5Yr$>b2vk%v;T^ze!i#9S`aWL($I2&a3^;~80m8K5=7K_Wv zGa4lmn9No*8}8+p7Q(gkjK>NUjxU$@hWT>wh;rOe-n3bygUOXu&-cQFhzm%NUbK5B*X1P=!3Me=QK8Nu0l{Xv`~Go;d|9J`clIv(7JEc6f9dN@LKZ)7LqA|B4$hc-257<)gJh+68} zyy7M!uXtQ7*VY=Ygu5JxuB<*gw(+lQJU8>kE1Pq>io-Ta-CVA5Gg~)$v+ZrBnc>Y3 zu8F3e_29n#Ln*vzLDP;->8BMlJSN{Rv+bzk<*Jkouj1vB*WGZyBdGaAxRP&2(v*W` zF}{*_IKvDZ!$LYv%#E3B!8)Z^uywC`oA3Xw&Oc{cIwCBVx^}zz^^{)rK6^*1(r>x% z$>l%RJyeNqJ)qJMbTcl==vokmo6Ch>)1J~(9Ls7s&aBm*n|rfGAhhMdUe_d^g{C}< zT0;Y^INT>NznaRd_T*M`!mU`>*0{f+lULmO5WPgW!1+z=t$9l<4lCTa;TrudH~#xu z-mSXf2Qs3=n0a=v-f92P?A0u^_28BR1=ky2L^J$|K5!wdX~m?2b2&JS?=(5wsZ~Ap zOn@Qn2#00?1NXiJo^uJ@c`-FLF>^0$TB32dnITbF;NirMD}8tGeC|1MZ;$o`SB{HQ zjW4mrb|`JSyw%CWRL6Q_uuUw-#8jP0wH($4I=6EL@0|UAmPgUNW}!z9M_jwZ!#Qs^ z-Dy2P&z8gDz^%1wbf3p^EH3T%q|5PEHDHBlz{M!h?wz@4?&F`iDoH}&Y3ngAGmkP zx2yk5M2JFau-ns+b-`15`~t$Wp^TP zta^0iqqKPe(@W)Z&uY7#>vrhbrEfkLS1Oi#Qt@$m>2u?K3Lg`j)i&&JcWv#o%{KRo zuQg-5`8WNbT+X35&dOjXi$3rsIcELbnF%5gx8Z4y|0-Z#pgeyeIz82wCvL zr|c}3_9ZQem5eVk`nTZe z<5F9bIyWy^rY|?-N3Mz-haBI{1U(K-)5f|gQP~-JvJ;j++;Xa`G^?>fUGKHugMIUU z*KplF(-EGc`sx~^8VB!Vx4h?fUM=T{D*BZ5LGaZ5s~kn=bc@qCo*6xS6V@dh{oL@| z)iSrEJLf4h-+lih!}CimmxbKzLv;ll{RI;fw#>5O6R`1$&N_Iqz>7@;qZb{7j7_NcFr!i^^w( zhex~8l+&(l|K#1MaMdn}<6$+I)>)1vb5AvWaIRcc)V$+URO09M7nyI`(ycg3tQ2lY z`*m?{?fC82u_dkJUqC@q!a5tK58K5)>`*J<)a7vG|DvMY@l2)L?R)<8JttYiyV&H@ zIPFVA{7c(7OieerrSlwn?7`F=&{VhP>%7Ya>#RODuh<~ER3gTm)q}a`SY3|$x{MAD z(<5yU1h=lA_4vVr8B7_SWtsE8W&979_>$0?(Gd0ic!4bEQ{S#4?~eR%+bIo=%RL(X z54J=%_IJKDQw{&$r7O>2-}Ajm;!)63scdH_P4ztC7dpk^TqXJ(rTTm4$AmWjNNnne zDNla5TtmWs&HHuN-l^tQv>OzQ-uTioBZ7^;Q(OE~z>M@c|GqEbsA!U?c)Ycu=YDRH zv)ZoBcMS9kdOS*6BEGya;Zb&H715LM^zT}+wq$$DPp;5wjc@Xo?)W)}{q_arj<2Dm z%kqDP%r{lpFvGhb`k+JM!i=v$0xJ(3c+;HLp`6RGTIj()R^I~=4U?5wRB!D3m-<9R z|J&uX2JurYY@W)EJ6L8!G4!3P-s{e^m?`c^g_PLX+0O%i{mym%?Gqt8;o;>U)Q z+$)uFYaDwe=>=KTK}t=*zx4b5&DEM_~-%iR9%^j_ykc+D~Q&)W|*o;hE$ zrlI-T@tWVsf3K_Jqw9rRBK|$we(L$OvoaljKg{@i*u(6p*gq5P>_V;Q zFG@KKt$Q2}$n4RZH`lyz-t*X<`@Zb`65GJhnx(MH!@x(us({y%-oSFY}wvBym8HGlY?y%YpU3LhECO<-8$6r?M6}HnT>|4^o_=pdHQN z&aRhxDj|hoIe&&$#_4Zw<@e@rtNeX=U}eMPr3?05m0YFNJ-J)fjP2DjB_~lmzW}$4 z_JqS{W=2nuisah-yv5RD`Z=HU1zhb+fq^a>$q$lSv;%yX<;*mBdRD1)iC;yQ!utn& z`HLqd-&xq*xYTHI#YL-P-bww_!o_cmQO>++%zxV)6f8^KULEm^nBOOkv;@Xj!;}?YLe+vB zIB#A`@D)u9n&m5aL0DRJY2l^0d`~$;G<9WGNIEXB*b$?kx;F7nCbOW|y+td0+Am~p zoM|AfwRPr&8}l1y9guUMaYX!1!HPHAWr|jK?2zFSFglW1rfivbXSGc0qo%^Uts!13 z_+N>5ay{9*D|5lTOIg_kJKC1S6ntLDw4%fE=W~GuHO?6VjoNQD@4K$hnGw+Z-Ya>I+OojD8WwkfIOr6 z(WT5Wc2gTXrW?$;%DAxb=~b_#G6qW-I(eV4Pph&N5Skv>=3>B*bjn37m}AXRF-DQa zE1%8cXuracsIL1_UkUwbZ`w`UZR;S;U=<*{UGYr4?VdA40#YUh@z9bPeE zmzluQX-QI%7gx%@71+p9tFBczXI8;0O(Ti&Loza^QMb6+RZUiV%$=HM?zoU;uH+^e z#^(V%HjJOL3-tGxUAVrqb?${5)!%(@-j~sgmfAc~XYMTS&f6lnPM4>J=sI0rcci7J zN#KgE)BQ`QvsQ5g?zpTe*2TiH>q=+JuT3k2S@NAe3AwE2{B|j3&&T7+^Y?r@ZG7M6 zzhkqC=5&#Z?oaplaS2Z{4B?&-(see6vw`Idi{;5HGc~7vYB(9GEAZs7Zn~*Ml#=yU zV@I{cGLug+C8Kow8zc4tutF}pbl`-S%Ltm|g zD+Hn{q)z@}u<3QxPg#vC{wge+L0G5!01+dtWYiR&YuDhy$BX1~aGkr4ExD4GS$IoZmQE1wNRn zB2eh@%E$K;rkZ$!7#4N~95CCqY3|ybXe}X)kSDp;Y%dhFlLj>01~3R2J!rb{47r zatd`a-*suOUg_%W*ohhXjZ7*W%u*g5`{T+}u7_Uyx5^}L;*_L%b!$#L(H)bQ?)<9q z;p&^p*RM}{&tmBMc6Yu1sbeeuZ<@4(@3*2(J$KFnW@U?mTzoS`=3Md%33#fhsJ)>= ze9h!febWU(7cjN2WH{GhYoRjpf~5b4?&ireZXD8Dc2m*!!ZFdqGnD`FhD1JQXqP_R zxN(s;2UpUY$MVdUC!G2=o;r0>&}q(5O%H>D*7i3-Jn`Qdy^M-HSA7s+f0fd^!Mbyr z;L9iahc!fwCW_4nw|UGw)wCl<$9VSbH_yxuM|!Z#Hqg?$cz3ys!<;|4MRVMlQeS)B z)MxBa^PF)~++P}+H@}c8ct9keD1F(E|JSeXdUyS@Ps6R)aPj?5I_J(x4)9D+ zw!V2P?pw*+NeuQXJ2m+j-dFzQ$%+ULzZRKzpv?bJ17kxq!}Dabo$(@zT1=MT5wly! zWwrWU`C;pOpN<9o+!WN{7;%G<^F}#S7;l#92W!Tki}ggA_Pu9SY2<2|XMQ+Sgj3o< z<`F~Qj@sD*g&p@Ftm|E1cGUXa$NuI!w{s;cPI%{in!MQNsaCw@>1eqk`y0{c_2yfi z&CdHg`?1Y)tNWD)_B|J|`fT&UN#5#Wcixx9%6FgqFYcoP44^d$F}dQ z?pxpgows+Xu`1_^1O+)i|uLs;7>{$6gq<*#Cw@veH-)84mzv63}!@v3T+v@kf?=#!~ zIJA7?Hg|uAN&NOdPsQ7Po_)Wj&M5VyQf5JL*4sa?lkI=sy1(z~WS)>$j0q3#$lL!s zo&WE%du(-(py#<+o9ezCw*U8OzWrbCe|x_RANjg|z5V~+@Bja2PMF`y8XR%oK|qdS zNi2ib116&cW~&FKs*=nqjLZgSj@Ue4O-f+PdcgMSw89nX5D7W1L8gJZ<38u11fEk5c;+o=)0E+Tl)(4u0pF(t{$CIHnGyxK9tsF03Q9c`R7w=m zdMIR+C~Wmm*eOxO>!CycVflKQF$2L=YkpDYY_SQ!`;|8sjfI|sQtxf>c7 z8vSQrV3J5ID9B-9U|`72D=7+ccT$Lmj8b5K#=ywH$N&b3$;AbZ0RcWB4vYq|5%}9R zh}z4#AhX{5UEF8U>V7zP%U=JgTN3&Rby!(kDXGQD3=9l^7#J7~k_(DT7#J9J7#J7= z%1a7B>>36J29ctO$S4K|#t9&HI)uFh#7=^+cYxSMAwkXz42)+O7#I|iGZIr67#QC$ zFfiyOA&I9Wv2$}u|AQm%|Np-i{r~@WF#`kh9R`L2c?_U9U}#{sU}H2vaMYaOq=hkA%TltJrxmTvsa#)NwzjZtQ)Tsrvc@enH`=QVjlY^% ze6_Oq>f-jz$M0KM#5ccyZ}ExWQ`5f}6#l5L`H^4n!_MLB+UU+zAuY@O8n$Ln*_1kA zSLvJ$Nqzfj7uGlYXlZHb>FJp^ZQA6?ljqEt)48*yduQ9keLYk6Pgt^K$?Dasw`|$6 zd-v}B4U6y1?7K6iFgt2s}HpBi3#g3F5dfO&EjX9Rz2OY z{N?T~ulDbld1&gqqqC+Sn7H8BoW&>RFFUnp?YWgJ&n(+`aoyI-oAzAadGOZ0*N67Z zo%d_vq@Nv~KUb{$wSC9$`3rtsTX*#G@&h+FpS->O^u2u-jvP61`t<3ecMhMtcl`3@ z%XjYFd3)-}hf8N49=Y=L%&iv}?|r#<>(lki?=PG_`|$L|$LFs+yL{)>?VB&Ie|miH z$dNy%&-}S{>+hSJPo6z{_W1GR$L}7!eEIU-yLYc&zy9&+`KPCEf4q71?b*}UpI<%y z`0UlIzfYe0{rdXjr%#{0ef#$1%a`9@zI^@p_1DkuzrOzX_3PLF|NsB}`}grib^&FtIUXAq9qpDd&bo7Ay*%rmG?ws7b{QP`}W-eK;Eh{cA_L!^{ zduq$d%gX~6d(HLQy6Woch|O7dPi9$d(rX?q}1OkvrIM_oGGZbYlMCJ44NbIBMuv|Btop~$GQ>&FEx^E?lRsMeAl z4gDT!E1yjAkzeeO)pbhwW5!I!A>ql%SV=CN>*`+ zFP6?oTlI1ox8#Nw%NNv%J2a&I>QrV*oj6^2ev{%OmIZT;{nvWEW=q}DtQ9-dv@|DA zd1dh=A}C?!>i7<(3l3{fsI7jp$xU#^>&>NdC!Vae(9;mp2!H0Gl(4KSU32q;Htlyi zv>Tb;?u+-b+#Tsx*k{4xE| zcJ}S-4~GSwzka!2gjvBs$wzGU;ysDIGgD{OYF=2lTX1^Lr<0q?gi?-1@f9>M@mf4M zA{^-Qu!Wgd=fDAB3H`_=(-f+|woFU?Rm$4ux_Hf(OFqjvxwh)mhc__sdpLG%Y4ht@ z%8*!Uls--6^HtAnGLvq7xtXzi?<3~;|Jn}BfhiY@*StxqREhYI^;0ok>G}T^>uxo$ z>+Psou;K4}#uIvTo)*T-`aHi=bus$ogDK&8I}284JZ!kOQ>`Iqzsq_ivFBDw=fpL% zAK!TVbj|j6R=EpO5+6?arn&9c*8Qj!!CJ||rL_uJHr$X}r@>n@nRS81sJ)xCg4okQ&POOJ+)P6?+E zOj59F)zy!?eCe*jBOOJ_2~8S43%QmS?U7++sNT3~LEpDyqP7=bwp6~9{wVgs>DAf~ z?G8Li{{Oe6n@2U~HOCjq-}vF=qBF5y(czNduNIG^T2UWWy^aJOPWo!Cn;1}0c1SU9 z(+uVRmP=YJAKehWe&U!}l}mHvrt530R;aQTrHZB;zQplasMV@=qGEuu@RK_pC!C~$ z6c=PDOuKSI^Yhh}711xlrmC=u7s$ejPw#XddXNl)g4-pl(T%5d$Y?pv0ON*1dL9j`jF<$728_-;EDv2La|;^| zt%^UXF-@#$;(8(0{^!*kiW8y))mbzvEEHXwHJ=@BR7hHP|7KEPnB$e@zrL>DAi2En z$qWIP8B^Ls6^|TYTM*uTK#*aD)FNiSgdheU2FCCguLHvxTQx&pruwaT<(RW#X}6OL zH}8hPNHyKlqEx zTM@Qr-fD(fQ?n%vo6cw_EEGui%b^tV^+4yErd2yw*Hj$$mR!o@qu6ocvApskR@ZB$ zN_v0KRd-u2X4QGX7?`2s$+fY;CeMSR!jB0)&gp$@3vMcDX0jKHO7?T1rKH%=2dkkPW><{nEftwpDW8A@FpI~gM!n)x?% zX|P1v^GIxUJ+)>&gZvWVN$)0PuJ?Hz^?K>1mq8sJryrl{c(Zx3(8ten*`3lCovl*t z5Gb4WN>jwerF0GN;jMi^ktwOkFK=eG4! zyAy{j*S>1D3A4W@sX3P~ps>Rx@vf}Zfl0+iAN==zcx3helD<!(OksJoxF0Z%*D0kA$k*Zmb`1? zJiqJO<)&*^8@HaeXnO6m@1^Vmt0l|kuy7Gy+?zv`+We;6)L-=DlTC<1 z-}cE2O8dWFnk}albUbhe=ca6Z?oJXow2L^=l{DC?YW&i z;@wZ%@BMZCya=!G*;V}d{y%s>z18(hsSqhH-Sbzp;o^yyz)w}iIwZb1-E~Xk)7^Q+El?Yu|&qGf!DBcXOW?lWA#17$_?)7H;>n8%xJRu zSg}d1;CZ;5LYaW+ciH*oWt>0k*dE0E4H3M~uEku?r1r6x@kHj$(54+u3=SFsZO4uH zECgJ`^#u*{WSy#heAjsyE+B9sSLkDH^f!S}2`$zMEi4l=q%Rpi7tu0Y(Ui5L%{;I^ z;!px-VvE=EFmDz?DfKEp1*`ZK^0S@^luLMTUtBgZR5)ctkc3CETDf)c(TV_*=D`2P z^%>vo1V5&weimqb;pBgz^6AEgs&w_))ARE!1ig1?_=gG3I$^N6fg^mmM)Qfbbw9dH zKek7-3w%7@&VR66#v*Ed6GPf&t|&J_ofXR54qCUL)vF8k=pA7wdZEqzuw!D8f*(5r zn}xuF54GHG3GLKEKqkhT0i@m}FXj>68F zWdib*tu{L~*c|M(a@gxnoUF{`EE;LWW!Ra}y?{G&$PdRCJ6Kc(cQh zKd{eIsGr4fLaC9H=1~pVF!iWNf$Wv?0uxiaJ}LTFOy2xp;&~y4hX;G_E4F!6&YTe` zV7gLyZN_v3_XzHV(=C!3$|HS3zE3=VT%aye-5^rnGzWuqq|j=Ing6dwthTh}RGd}n zArKiMr$3#e;H2W?7qhxHHFGLXlnJU`y`qXoF}CcJkMix zu&h^IIPdAjsceZ;-6jdlj&xxwod4Q0jZ3QR_6m*6iUo?_1u}lh&OhO2zN2E&^o2T> z0zNC{*{)A2QJTx)SXSy3vG0cBWsmvnngS$;U0W$HP&wQ8r;z?F#kH9N4>YyB*~-e8!n<}VerBK988lrpOMPXffd8s` z*_jJ-I6XR(7-ohnH1rY>I;B|fLqJWdf$!r&4-@V?oXdGH&Mv();YgTztk>eYta<)i z3^_|DeZD3z*?j^};F9}-&C&m}N_aocs%RI`@|>#1xKdiFtk=t*vvE0Jt3Z(C1SZA> z-CY76t6aGQmzq5nnD$Cm#&f~fPc8>J8Dd{7>=zL{5g}I_AyBfUYn)7plc1^>9&@tbaT`7?~T)zb}DN`3goX^$h~mQug10gHy2nJ1z(Gt zC;f0E-zwCjY+uPP`|PW-iK`;DAb$2H(^Fd`Ztqd3PHh*o2)|1J~cCMZ2#7@X*D~S_U=aZ|Bid(pY43o-L(6)tirUN z=d=VaTGuS9>R?t}_Cjn0gTa;)yPdTTF4}Y}K}kDRbEXE{^ey5)H&3}<%dkh_z-sw_ zRsx(ca*De)X^U-CnYHU_;{KOe>X{bYSGXB|iljsd^vnspN6jQ$651rNJ zE25KUYRMcoRz1w%u<~N`abCy0cb2bsyjwu+k1UtsF|o}l(!XUl{TAdslUes)ebo%B zL!Zln*KC{3B6!5s+S# zi_Nj;nISo z^c>bR(v!UAG8~=UCU9ww{PsQPx49i>Jh`aOeWPViW}c3#y_32|g6}#!-0u%$f66y1^G`ANl!4RzO$4B6`N=oF0|6^(XEeXZd(8b-IwtnUi^y zdtF+0e^Fahx+s2g%zoaFSK7`9Jjhwm$HSm&!|gM7GpFGq_KmBOdj*nojz)K0P%lROU^x>cx7W*(RHV{osDO9rmt1~6?*Z<>sE;~=UgTiPm!6~z;>!{=Jidr zzF#E!m!46y{JYiBmRrcS%6?N`!q3w&w+?p-oeK=Vqr+BF?0v0!?Y7QC(Tk$4uCiR3 z5~Y4ve246#BQa;EB}`qo`G41jdvgR5_g;H?{8EkC&GSVI9er+WzI*R_$!*s;0`aeJ z?(x~vI`tO6;JW49r?lKJ-9LCwT5*HzRRRCZg`A2fw8O4N#R~khoyzxdN#oq3zi$Z$ z>GpC7uF$nz$^P)fvAKK84xO>yedm--3wNDBt4+Sz>w8*p9uwwn>|CuZ_IyJ50t$GklPji+i$=5)`{eZ-WwL&x*d zyjX$6y$7cE7`*m)q-1wma?hirI*(i0c=Oo9yx@mHS^W!5A4kIf2^ZWrj-Yt=d7 z>b=5KvKtTX{yU?Aefx{OuAKtU?+YfR=1rXY#+^rT)kUcznJZSon~@oskCfoE?Ex*i!d{=2W` zc-(%SK(*XMCc`H-(K7Qd74OhK!}4*-taWF1*FL%@cyD4{l+(&G+wVtZ^#pj&)s`%J z`QA@GZTsB`O9fV~+xg7yQ|pl{G9B-7q&75^pE8sc{Ib(;hn&{N|N8`WW?kMFr!MC6 zW`|Kj;@kJnrF?i4FMeECe5`tRnNa21tBO-ZK51@iZMiA1j{BvblogxezMOAcd;C5{ zop;;%`m>Mj*HG&$i|h}qA1^QWe!kG@o7}-KGMf%CD{ghR7x>PnmGu0haopFxQddih zzB4->kK$aAHGl2D&}Q4Hk5AVIT#Q<%|0GY?PrzAj(Ffc1X#1bxEzfsGERnK*^5ON1 zsps~UI!#sK+aArzu;`j#-@E$7`xF&ttz_6*(wElwjDo>TKe>i@MhZ8p2N(^6j6fuO%AD!PmgR6A->`^=}r# z|2ZqO7$$NYaA;!X&6+ti;Gt6+C%0rvMuDiai=Zx_%9R4e6%69aNf#xG#F`tKxH?^C z20itfrW?DjMKbuA&n(m2dq-vlKlhtwTlTuwR6?Hu=pUG zhPaQeN5WF!HEi>jOu2ORwKq!=d)-xuqi=3?unD=ojR;Vmww2LpRv{!X=+o^Twb&3TZ1<{ zE2nd-Z1lJPIk&dv-aj@s`g`8Jy|w?@y%63QLYS`PaE%V*WG-D zRrJ$=D0SvPYy}gFLK!>C3ulQ*@B18eLE~b1tMqc5zlIlV4<^X_L{spVtpd+Q^1;4CQPZiYr_f`omk0Hp|pF7 zR0oI4>^VnPSxw!d5U}*^5v3ka#nK)ntBE2B>z6X0RWe*^x;u+sRf|3PypC~kRO*?P zam6pKHm^%qsk2cao74Bqf2klJ9rd73!E0Dzl+G*sN?Woe$XoxYNwBZ^(=EaN_OUOy zHunj?G}_4ElWDYhf%8l6Z4w2VTeogW$?)5#73{&yrqsHEfmO)os*-l*BrhG7s7IoQ zrv91z>O{+?1P1S>n%sh=8+IhG+_|;DRnzk6wlCZfQ)YbC*gS7tkcgV&?nlO|dh@F@ zoi;M0dYoS=@wjlU+4im%5dr^MEfN~p)pjH_^SjM356^Y+JpBA!4#yO!-BBSb(Ki>B zFZDa|wIjOghSOBV0FIMRT$)=Jl&a<`-`c)RX5*?b)yVz6o>%NAs@zPOqW$ECvS#S3 zz%|pHtNf2MES-BQW~$IzuCRG=^R%8a{J$==J!G?7Y39Rf>7cEvdz`&Kne5TIWth16 zyqk6I*6V4zbGPSj7Ff+tckRTpb$KG3cS9A!UfkNx5$c)0(AntghIw4=9q(uGv`${y zJC*0cy%m*G{kr{uSzp4YK6tyK>$e`K(vd?WA4()}X&8lTtcg?D6bd~xh$ zQgg&|&rjWH{+)#zz4%|AUAJQX$`|X}cs2dEmE^A|TT^xY#IJQ>(I@NHFzol7VDVY# zW8{)7MaNsN585ZOxVbRg(H3hCd9<%P!C$4Wnd5)YcE|sGWfz*|SrR#1Z%klvO3BmI zT3DCKxfCwPe+I@#`B{CIm-5bd#!>DEW$|U+1vr4XNcq zosB-K&t|9iwRDJ@8$BtBU3lM#Wr@nSvxn;47N>}8+%$PXDQk^ZtmLg$p)D-qvE5XB>A)Gn%^7r#0Y0Yj}!>gz_X0iMs#nvu4Mf)|Cu$ zUGqY(yZ&dAFPEVeL%?LUopZV_pE^E`ValZTj58-K{(su~fB zt2mWnC`6dO0dzYe}Z&qhspdY!c$J2Qw`qg;bYo#WZA|iD+L9!!<8SM zKA)@a!Xug)^VBMQ*R`wbHajkNpLI*1NovX5-JiXKH#=PZ+xdLq_vRVjUo}m3ITAGY zzq#UT*9}(PQ`a8t=Q@}ol-tB%>c+D2YKr=Ax1D0?nJ&xg4bz>|eoZ&L=Td8)d@|$c zCl>|5u%K&6+zi4+5#0}p=f-AcY>$%Iyj$%0j^nO*MN?-Btd)AQQOQ!(#mbU%}JCs@kd{=GdjOJ~(rOlgu}}X&G;o0T6W{G zJX>Lh<%?L4RV~{EcCK)`H`BUp&R6|+AGyDU*;vdHIJAQ4hPH2AlmK7yH~lBs9X6aZ z6Q=J7+0D@Lf5QoeoC&ATE!ruzGRxT`=V(pl_T_ChMSTZPi{+Y4p5TyoBD1km*?sGh z&EbA08re6+3vR!8HovWSj%8_5GmE(Dm#>d&Zwkc(xO_j6vrccy&h#hB%nB%F0A7_oERoYKA7ao=xU-+9p3`vtcz&QsUh zCilfWmkY`|sd|cw&j{FO`>C;f>s}#ll+HvM}fFViCMnW z7Ki)$A9yP+xKJP`YLwfjz2~Y3`z!w!r(Z?d%)VUd{f#?z633KgJ(W%SI8N*PdE7d8 z=}i0OO|Dx0FV7?H#yB8$1e6daBW}m%*L(rG`kQ(l=Gd}@$A(% zDt&_s=fA8I-2E$rVJlYwcdf#Xq)EB&XD$r-{Np*x%gSq<)fux(W-BZW?bzihJ!xC? zCDlNMH}|ABam|U3P+rYpd13RcH_L>b-et|Nyvw<$!B<@6J?GBv@qa9Cth8{f<8ql2 zFL1!FQ~cCa@h`J(q}o^Cx*oT4^?_6ApEduR8~?Pv+&aS~#9OyvOLYr_{cfgOUW17z z^1~lS9i$8@O`%UM8*9@Q60~e8Q2RLq|Ye)tkV2{mzjH`fN4;*EZ3C7mP-y> z$;=bc+EFLW&6dGnVq&-b@xGQD``(}Ea7i!|$(g5N(!tcQ%&DM3HJah)Ax_shVwwd_ z@_U+OOV+hsV2ZoNt*_G|cZI{fX6tb)M+OfD&5DKyqfUOEj`atf7J46LQ&_I%(_x?@ zTK(IRfkV=3jnlq^OspGpnHUy`X)zcpw#3fis!5u(beD`RvkODSzNsCmUoJ`*Je&}5 zge!Z?;k+-$@>$&dSMC-$y*|U_xc_WcmLpt@3M@_>hnqYaw5!}1I2hO_G-+2fv3WFj z3O8`S>HJf$n_-36;#Z6P4m1U;EDK)ZUVX&9cFqBO0FN&--5DGjGz0H^_JQ+@GkBn#) z_c3EL*g5CHiBQIgjxwT!zfY|y(aT`+zVcAO{>sGd9CpH++)``!enhgiURlSqLnk1H zd-*}{ot&#=qs^xm>^!fmw7_SUM9rz=EoV+lIkQwlsUyKMG3oR!2Z#Gid)JEWdZ~SU zl@7xz>8^Y$Bi048{XU%OP-vKE<+<56?OCa>=<@Th7gM(41M_={Lc4T z0}C5=H&0+I4AA!B2*}vul+2)OymtE$E|wkV7e_c{Ts9I>ovjwl;SzD-UeY-Q?tKg# z7w-3Tuw<+fc-zI0!SG}b>wzyEEDe`hUbOJou2P@iV*IQ7hL60H(Is8qj!=n!jtzmc zEL8tXrgCcT<>>fx!Mydd#ny9v1(Vn}bvny1sGs1IQkAZXWZmh!S!c!R=LHQ_+?_fP zPRCU;nfiA9;8?+)aK-7zd8QA?oqeyoj|`a+(RyE}!6>j(`-dOPjy0h(%$PoeOk=Ry z@6n)mRFy5^3}Zn9Z!gy#ABKIGnRef3x+<$ z29^~e>ooT<{18p5Y$$D=%-YeU^>!Njf*lMR4Xg=QzrO1GoyZWmbPfB1waf(#(xRM3 zU+owZ8j5Re{%b}s#7Q+2nMRy^adkr%(`4>rD+40rdv$djysjMyH@qwK{J{Re-A%n; zJD4;=(x%>=x%4Kd3yY4#=^I)tWj-t!Re{Y0p+ZL7wXA!+ujpl6Wtx)P>D0lbp3%VS z!N3yGz*fG%zYOFh?}BhTf{^Zep*vwPJ3RdPkGa zfm_ofSe-81nmjYQ_%IW@0|T?fZ6=2X)`F&<*!3 zuzSS(Inl%xz_3x4;r{{K+uA$s&Jw-%Q1#x@Gbi?2G%%k!yM1zJ=!GVYf(90ihGV_m z3<3;H8V$?|4C*_YoHFh{D(!mDdjF&9{ZFR%`6o9y#xg{GKD^HM{`c1VKc?RQx%Q^U zk8_O~43bxmbUXO80bRM051LzArNEq2#iMQri-R zH7~Cc=6uT1Ah_?LJli7$u}6y6I-Open;zP^y(dvA?U7p9BlWyTPnSyCE-}>D_DK8K zBOSLym0F2kN4UhVJu+Z33|2@sitGGuWR`3g_Ske^?`LcGBvoK3l7#1W`*=(HI>Q^DSm&h`97~@euqo%6JqzRX zJExyF@GbOecp~P(+4L^CS&qx2j`=}lx=q>h|7F{F+oo}bzDpLaU~RniqAgIF$)Nv- z%BeSunZyU=;6Q{%HHk;aD&q zr+-t$xhWcU9DiSJQIl|Pcp~A!x$Rx@cD1e*|K_fmmpOA8@2;@dd&4@Pvd)>zbD=du zapjZOhr}eL8dAK)IFGD*vgpF=?HgY&ig?+xuJ^dvo73}Jy>=bsk`ryM)=WD3=EA&* zp&MRUyD>&Ma9)Z_y)y6h>a?z43l`4{Dbo#Dy$x7ASFoJYNxLx%Wa+UWP0~W7@+>7TD=Iov$E*q$Fkn7yj zcc1(OEj#ks9P+RKa~Cam|9#!_@6+-{19HSBycfHX*S4YgXWomJ70tiru|}+567k5e z3g`?@Xck@ZT-@Npf{Iqnj91oqjGo(=_M~yJgco?E6-=%8z@gvBIlqV12Ccd)S+nh7Yp!@9phAm}N9p^)*@v za0-{_H=D6aYrK_wU-((>!Qax}d(quH=NfcJBxyb`5}x?fZeGijA4N8N#sB9Uv{tzl zo49{!>1aH{$LVz}`Dk3e&AJvP_s>!eoK_Z%Ci|1cRe#T+wi!d|%QXDoP8;vZhz`XJe6+Uu`cZ-p#! zTO+;-NqlzW@AOdrChYNbZUt+&f3bD@i?#)2{@crXPn5Yl|7P9x#Vek}tNc})MVY_< zvlfZ6r1q2me~v)+k|6)ieD^N};qNouO3ZJR{&x*j@P1;N#o7O2V?%hweT6S}_rCm} zkWpb%S23@nyz+Q*)%il{<;}D%~<}ny)RH zUUloh7wc{BCam}+w4-WX1?%kVKdqO2pEmzTWX5N^b*bs@#Ud4qYu7!W9oHeT|FP(T zW={(ivxu^3_c((;RN2HeN)$Bi-v79*;kVF)>RsEbJ@PXB?*HELz50MYW7~!ALK_Na zZclIfP$^l?xUD@U%&%kJ|6kqd99j}zi`G3~o5y%ydh??DezpgzjMFWIpg(|2Y+{nbp|fukPk(d0?%nsgHje++W{n@+i%+l^H<$oQmkYKm6)rkt0bRL{&XO24!w^RwEyIacML-n{&*eqn)A`!yei2O5`_ zxQos(S@lKp604D*Bdb8G#3e z8ikV%TS(l@d6Th;)vb}`>wm8$DU-Ys=EwEvw)20GhJr2 zvs`VQD62kGVRp9AMc3dQ?z3$|ja+k+grp@x9|h#A9(g)}XZOPI$`c&9ELA4D&QobE zb@%*wfzea#DuZt)%YrM+Zc&x0(;~BWs{WrIo3?dUmv-aM3tdI6FN3+bSKxTnUhNpFR|1mmacz?tiNVY+QYTe{K8=${k`um^Sj0# zy0W>%`$PNg*c{>W8H;8FT@|!5S-8kWJLQW*@@X6MyQQ~#MMFKaK3))3VLl-1*YT#- z{9&tfoyDU^S5MsV>dyZbdh>izNtdd`)qARM^aw@b~cR_Z>_qs20y#9CU|N8N+JNTODHoFTv&z9NS|G&06`|rN% zlh5^K9^lN@e|0lpk~L>*U%5#4+@(vFA7C~5;2!8P=_JP{hW(NY8pZY~uo*{Kc<%62 zmDwX4kySn^aIbLVuB=-PNOZ$>;rY* zg#=eUDa&Y{@GdC*z#>I~4yhU?k;OBnva4iIG#%)29M;Ywg~De z{)zYA);96>l7LQ@#>vhZ3KJ(C5U6Liyt?3#h5Jm0RoUf#rl)9pnPBv*K%u~6g6AuN zcGqKyH4B^`A7ZKyvb^wcFWfBGdP2RLd#8+#7Ngav25+T8i!(nKvFWd?$)Bt?GgXdL$!DfWaPf&HijMCN zh)oVy&2m^|qJ;0KF5$aIu6I)=szfe7#NIpE{Bieef#{XzO1aK+UQ29nUg5Eck*9a= zw>|21Z%^8`-bhgWt>b8a&}dcEz9qASG9A5&j+j2^;VNU9$?Uezbe2TGltl_RPueqk z**VymERtWf!c}(CMbV-X1qmuwPQSgo5_Wp_kwp69bjIYi)uww|TF%hs=J3#WFR;|RKL`Y3e$ zNtKS6+Tz9GR~9Y|HSlzfbWryfnAACmIVXJotE*M}oHob1F5|Y*Ztr@yhQ%;qjqJK| z=YJ8`%KuK*%1PGN){RIn*leJBQb^(U-A~)L8(OovF?9<)U<%Wjx^>nwj!#`}r&g@- zHg-%B|8%20VQZRUfn$lc!o|5y(lXE7UG2PT_U6}V<-3_*=DF{yzR|d1Bg@TFeSOX( z)@6Iccc@wFUG7;He5Lfro=2>)ohBzwmi*dwfQ`>zX-#uSW5=a%rWxlNm31C+W}i%` z3G8e=`lvHqPj{!$n-dGG{-2DGN;;u9^?||Vu!6vO5@MxlmLEHcw!AQx@ll-EmTl;Qul^cj=m^y2X~3 z7G}%5_Pu$yR>X3@*2SkLb6+c6ID18DSoO5^%)h4l6dJC)1KI#nL* zai0?6v{x?HbEdV7hq8QROjDc(_o1wFMTN4DJ($>F+kQDDZEXLjbLi;Ru-zZARs zuFibV`|1}{WUlW?ifom=mB1|dVfTF_i?US)ivp)GT;(&&5ah~HP?&aSA)B^AV?n@& zCe1gJ8YL4Ba9sYYBO*^vVn57+e|99ypdGii&2Pn)DJ+gp{ z;kc=2l)@b01qWD7ZcOz4ur|N`yYz!{1*=Pw^_ss59uY9R@Uye(T$|zMIrmLFma6=@ zyP=|Z?v;?VRY4pAYt~KP`zE&S=n5Z&%=QI$W3vDA@o;&3__+4aGTqA7yEB`=f83LF zEbYJbgU%Ax4fd)G+W4FN8mH&61?AmYh%y|E#QsI9ZephW? zIPX98%4qJcBJuu%%T`Y+?B4fvo%-(Oob#_-zr638gp1nKz^31yJ7%h`*>3xx`F!eI zgVJw@?Cm}YZs!U%xG$1le&W;Y|25Ammfh0*S^H`8`q~?6{VN$yeEN1+|6ic|_Oq+) zpZ~bLzAiNFU_Oh*pI?vl>p4$5uzm|a$Td%A;qS-s|3Ck?XE3@jRn?Q(C!Rr0fk|xv zlb!;zUb~0}e~8S1QziED3+%vUbaxYPEn$5p+uje*qXc=lr)zu()3c&-nK}4)#V^f z*5DE!9kru6tBx>eu|8s9V*9d4|6h{+zecYQN(N$!4f2k%^(>OyqhxHh*w~EwxvVQk zk&g+}0h3uQ8Upk6n^i4hH9jS89$C~qHu$z!zbQFv#$x?N%GPo!PHHMEbE77GP%YhIf)XB&d)2D48opxbu6)0dTd#?#A}_3x0$=Tij&fg1h0}qH*UK4 zs2z7#J1V>*IOxPFwH=4TW~4YAYYCXN*te%i>%bA$BnP)!NBmD6(NbV4+oBR0rm84( zh%sepSe|P5v4x&%4hhQ~V9;n~kZ53bnBleNkf=(79a9o>#zfDIgJIid3m3>SYBYqu zV+ku#jn7JrJLlxb#K8E5%U{WLqJfj3N}8a`L5B&9>_3#)6%MK`U`f(?CN$@Wf<{`> zs{by5PAY+YD&8S!Nk-3f{xk|^IOwM_2$>x6%t%X0JD{J{kgcVbZFNLGL(S?~lY~v0 zzT2~uO)h5txIRay7K$yGlAAg?X0fw}V|17+!DkUbR1?g4mo`<|U;s`CYUv1Ty)pAhsgmnDmv)gKE$wdX6;AF9XOt_M8Uj=#f@K~2eU>zSOLl#?T>q82 z!8diUKmVVn&wFA&Puby?x}(Mm3!@dz7Ay3n8U-0t8u*TAIULn3(wJVhQgmNNXhTM^ z)kzyZ79|IT6ALtg8U4zC@m8#3V%qcE;mV8Nrn!Bej=0!8VPjb8%#f+irCI-LdBeVz ziF_KhOiS2$nw%|GnmcJadT1^#VwgD3<-6w5xmB9W(pCvKX@)eY=c*oMFklc9X%e$( zVAN<;<2%yI*1(vd-e%|0)s)4gz%WbBRrwXmay!_ zB(@Zt&4=<9h^;*FDEI9vU4wOtoF_0EXlZ$|tn(Ilmv7Y~^yd+qi{2+SeIdVfo>MYx ztQtfz8t2Swc_HVzZ7)yvzT<~?Z}?h{ozrEzl6(7J zp68+W&QsQV@-P|9dhg7T?=A4o^TYa2|MVGtC;UjtT`LyHU-mU*QkL4Fz zCc}9H-s=lkgq8+S+)Gz#Ii$fy{Ew;i76i?IP!RxZr25TmIGf7 zedM=pVfJPh)NU2L?IQj8mD#sjqAZ&f_>C0VH$A@RB351STWizrtTn%dT<#sy-_n-+ zzV9Q~|2*#IkKF4G)ys`|z8PLI>ztgU$*=Az8z1=6>WF~7i{Ruu0pmCF?Q7@0%TPW2 zPIz_x8zUppYBe91Pk*j$a?aVPUuNi7^Usd518bxdlFv%R4A=kS1 z(nrrbg+UGX*dt|gO^rp~vOQG18 zZTaa39g|<=r)yMQ_?*yQV#oYgOkkyQMA^1QEvdx}k_Jqr;pSZSE+ziurNQ6Xo@)w8 zbZgm^>Pt0xb(pj1I4b0rm(F(azV4C`^*QtS_L^)-q30VIZ4QWfGzyF8l-V8Wnv`nF z%JSI)Xu*7)4a#anq(>3_NA z_V#Aw?+!AIiy!Hv2kkKYr9PSel}n$6K^8+-_m{2TlBb?`s=nMJ#O!eEkj0Gl%8-xS zeoy?Slfu}m-OA`8)p&YqBeQ9f^ZW_o+Y{_}I9nW=+MoPr+Yt?$O3(Q&^RsufYp?9z zbVObwV_N=Cp96*rQ&!Hfw_36~_`o{@$Bcs|cCAc4>zxZ0m5My@+)~N1|7Upf>R+9EnktVk+qvn8hC=1S)h=twe>faTe=Vl0u;Ylr4@)+cU*YGEto&55M11$g z`k(^o2ckL$7#3(U$}lkhNsZBCVASxBv}#JP2*te{1$DVrv1`3LMcDx5A5D^yJfTd?&I};#I7cFA3mb>;#+^mo&=}! z%Hr%+>kplhX1A=jJaOLUEI+@-oj+&GnH0~g?lR*(_x#Vfm&&;5iYI|$>-eWbj zEVFE;ZTK53({TIvwHwCnCd*dedcODGZLT}Ytqd}MH+|XrmFeHKtAC3$SRcOM`$+%a zRE0w~g&de1^mi$DKc4+x_lbAi3d2KeIse!S9L_eeYm_kg@>xEfzVGFHyI0Hiy;^Vg zdi%cD`|aKw-}mOc-P`N?-rl!+_k7>G_jd2U?|c8>?gRV&5B&BY#rJ=dxBsNR|C7G` zXY>7^?d`v~@BiX&|22I7*LeGH(~rv>JM%4l|M&X(>wgy}wCz3CQLoTs|7-dG6^2Qt zH`IHpG>OF=Trp|iuj~8&t`EM*)X;0~{qOyLXB8#~3jv0PgoDh1X{sSRCL}ty^DDYd zu_$~buj*!!a$(0r9@nmBvo;aQ6Um;F)dQD>?3|S9JzYQX*c8jjX}+_~3!h!tIXT^b zzI`K`sMVB=z{Tzp)k1eo$qZiZztBl1WW)ajO)I>Y2eBrICQV_8+A8HxBAT{XS>nR7 z&}g-P7~q_t!JBi`mR5NIcv=U+97thoSG$5J~$IhH0A` zTzcIz8-7oF>%D#U)l<1Pvq~~AFArQEws%%(_Vx9N$EW3*Uu0%t5{a4VyYbuGI|Azi z#Nrkd3SP**E!V$$c4hJN^9$Xl+s&;ieSLjn`gOlTh8s*=d;!;TBd$K}TZ8 zUvJ+(JU-oieqHVF?;oFE-!HE!ww7r_0LMh8EmjXUINozg5}ALByLUgkVo$&!PR%tJ z4sjcvF<9s)mC;L-&J&qRE*xzz=9H2)o`=O zfTf`VJADo-cIsR@p*+zi=%ngPr6&#Q3wwf2ZB&SQ+R40Yu@?ig%!`yoq3b*n7Bq2W zED-3}(qYutGN*!vfk|Y+BsKM=YlOWl#ktliJd#Rs(AMWJ4%C(PWm>|)ci~b;vx>)} z6>eMZOx6%H=Bv$SRz5N#@RGx%3p#6gXJjl<2@ulIU}%})6M8i?GWY7$@WiG5Tn{z6 z&nRjhTVl$~?nR z7S9V?IF`QPcj-5F3h9(Psu0xi?}mdVkBNZtBDWK)yqvzOTA{0TlHUHme!rfPFXBNX zCtp@%8uzBDivI=lRy4LtxXoY?lvLWLm9})j%Li?uVH$!i4sI<;ZGV<<1$I?%9b<)d=N?v+vsj4UGRCpc3t%T+I0!*wZ2ZOi32>19St?sqe9hTvHPN1-!%uOIGRJzemWB&wS?WG&ANdoosVkmQA$hm= z>{}^Jdmb!YYRuW`%628FB|_&&dPbnr=NvOZ-bJp=c2OPQE^K0K>v^Q>EwRvvWBD{y zk0mJ~E2sT#kZ@7to7mx6BdR#->V%UbDGYp?Ey4?4w4|s$$>h&C!J@rP^sXk0NU*Yl z{{#-nDKl1-#yj6+xG=-bbe&)?&xr?YmOCZ{E_iP9Jjz4pN)n5Rm4{ODjd{*8fozV` z7zKEK9*+K>acqL<}ymNBqnR}zg=cR`a+_l!%&@K6Lvy9mfddvzbKj&K zik7(OSIM?kaq$fn+y3+{{0XxGdi|*>2_$wsTTJUMf5;@0oN1hKC4{qUMuAV(z z=m7hyI=d(H&z{zdF=_bEVtk`S?03(?+dUJmEIG!@%(wPM@ItB3m3~`i=;n54NV_%2 zYpE<@ka+2|#)_MHQHhw=(k>s}Q(m1jrfLaG^ZIsnT{!S|%0kT$#d{VLPCPt#ab?KY z*YS+f5eMaT*KkL=hR+mb$Ue7db$qBt#PM4K+k{xw76)m&9CBmWbd1F({KK1cN9kMI z9-q_-mUaY|x`pq%S*o-m)Q?;8QPkY8r5mv3WDNgu1 zIVF6T@I5n?&9i$s-|u*~d)5rG1qF^x5+^3a8XfW7%JVYQwMTig@HP%N$aG^;=ZbJj}f1kHYxHH!{_hfsu`G_%0oy%Fv%^`O78OtuM z$$Gvkq$hsZv|)Ysn|Dt8yeEd5JmOCca1yNRYFx0eY|kgtkDY;Yl0=o+4ho(;l+WpO zt0kehp7-W5eqS$vO+q&g7-eo`y#FMIJMP0l<4yyY1M2JBA}pp)C_1U2)+5%gCZg*Z z@p0{uU^t< zJ0K9}d#qtn^d`=0=N?UuG5fMmaBhZcaLUdV-0z%3zVBxVW^Lq(Ji3`a$Cvjzu5SBr)No$m7v1k?7z_?DuTx-E*9g$Q5ay8jLpr(mwZzVs zVegiwU;Nk>TD5H5JPx^R4K~9MGv^CMJ}JEN`Ey6NqCmZZ^OTED{_~O*IFkdIf(;iu zZ*P%0C$;_8)s6E?8+6SVi-)8;2~8||XcM(Y^ts9G;zJ*~5hWx4aW`n|{eo47{*+`ep{sxR)~p+#b|cugvF2+Fe_5^ZdMTTetTyZa*cU>oXza zigtZrCZAwa`xRbo8O_mB4&>x%j{MW$<}p_!kTUq;&i#1PN;3* zpU$Ik@GCFl-6y&8>%Oj^|99EJv_{pUR#qN|LKX`K<}GgpbafgSv~NukuF+TIV!SHy zU@=D{L-nJ-DPG(mYZ-%ezcDQqoRGjYvEjO!6O*NbvRMM>k%lyt2~0B=s7M_={9j`O z%hz5-riU+$lmaalaLjn{K%q%+o}aQo0&`aa51*FOtMz{?Hn7)zVE@QezUrJx*uvui z&K&nuobpy^#5}yJp(HkKgNl^ThlUMYYd>&pyrAZg$i01oFvr5WElqEdnz?s>;6CWY zqyFlwgC_UQ4ZL?h@Jc3~YdJh8%9$@ab=83l3QPigKR59I-SF)|&a*kn0;c_|{Q5fo z83>9N3Uc-fWIko+DKM1@v{0D1s_tlwgrTr$p|EJK(EnuKnTLh9vWP6!I%DxsB+yXQ zpGWXU2ZK<;EQx&ch{E0&K`};d5i3P;cVE%UjpDT*#TyMJS_>sQH%jz=l$dBJIkix7 z=0?f?b3aNhG?ZFeD7A8<)Y^|y8x5tm7E15jD82Wi^g%JV}YQWXBRfZv2sv_VO8 z`XY|g?}3hZ|-=~f<4 zHc8|!d!T!N6Z`)k3F^-_=@m1u{}E#UV5Ib>$bj>*uIWK-!ONCaLfZ8~+KEPnwM?9+ zd#zN2d9S~l%F)dK>y!R(BX$iZiWji+eO5EMtoQ$uzUODffMR3k$p*g}j8cuw z#Ei8z71?duq@BK5O|64(=3?`cpPCGe4FVWB?tC)6U!?TyfkmN%$z3DSoFsmW%a+9q zR?B)^alBr zG9_Dn6t=t@r1avmUh@O?|6Ib3$&Z}xZen*5aqu)zEL-3j`^ELAk##YHuv&=Y%0=gd z&N|Lza(d|Olx>n3=Gd_AlYRiBL+Tc1#Yc8;CvgZ&(e3}jp629vf0CzYlWyQ-d)r51 z4G%oNK5*CMx?CV~v1E&8#TVO}E8dfvoIPArol;!>Ow17z1OsI! zjv2=6VORW|H(RDR`M>?-&uQ%4ds*-E0+ogo{)-__T^}6tx7<25Me|gN^|>#BzD<5_ zmiYM?DXwAh{@3hXRw#DB#pl*3p9?O&H;(u|coH1l6l`tkl`vH?tntpW6@G6gvGW=G zzco^FDKXwSMX}|8!(1b^rmrrtiz5Di{2ZbDNNmzo-OrzDJ)Vb{Y;_7-s3N#f_}&%u z15<*mi+oQP;q4o_r?egC2M+u=)fVPl=yd(N#Y}C*=>rS6s(oQl=2qpzAcKX z8A;z9!xjpxdl0p*L7*g9Bc$wBgjwqGtv08(=KNPqN=wWWyB2Dp@F8o*vkYOT6Elux zXS8S66pL9UHg#;v=*&^ua>YvYQ275%s#Om>8W$DSiz@9CGd)`N$VAKMZJ3=EBliXc z@r@6-WUl6_m!=-xs(SK?YO_(vd$Ww2y2WP8i|x`I-O?BPwHvu?dvoAWX#%^>i!Z7l zzI{?~O6N`}bWeHfV6LWeT|d%Ec!DrTT~k%+m8!{G3~Cn?%Qn?)X>v@RZg(z>>xNj} zqK4e)veJj!N^3urHWn!!H&>F%h~{8yl2YPlRA4xvRiDMv@Q1yD<;ClUHJ7X${Wu@J zj#*Ty$Z zmfgv*s8i}u=OT^p)i1h2G>KdM@V5#x}xBWowqkA zgfnd4H;3W!3MR%!!D?}9j2tq1ZI>~gD`MPcsU)P>%Gt!|rq;i{VdhH70}CSi9C=eN z7BN1N5P218A+TVfI+KW;!yADG(GoYOD<YCN;FcpO~*M6UUN zZjzSDS{0f6f>8DTtsP2Vw$HIi61}&pWShjA8@m*~OjL>xOjOZb(z;7=+Uc~y2fpdL z{@D04SyZTTR*PlOTkjrQX*IsxH3H%~vns?k&1_onYmJIWYFmlYwn>p)-xZDejg?l1!Wz zt#~Lp_s>LuSF^NA4sR^{y)j|kYoXPPQ(o;?h+f;#|LMZJ$rHD$Op@jeyj|qaWD+0j zQ2of{yYRICzE1pXo42ydI5|A56Fj)0w`%*=2Rml|YC6OIW7jOj6TNFDMQ?bxS%ody z!erKgPMsZ-qf?JXFuDfv+}6$2uu-j>6DE<+yLxw=q;9U-vDAap6`tKx{P(LMz44BK z8pE=@w@1D!T1BQ_3Oe9EXWy(nYp(?N-9J_8Xt#jKrUzVpH5zTzt0qQk7lbKoX*wsav{O`nqP)VcukL-f zt0&7UbO-w}w5-{=^$_Ex1p*uo7rk{?wc5+DYzE`I*$RC&ikD`eNs?vQXY)oRr=$4# z-GoIa4u4>jb7T|E>+phkYp1ynsV;w8wiJAj1UvJpqwo$_A?7^ATrSTX!9; z@lKWVy;o^-pLzS);8zFpnYPFuYPd1ee9rf#uUC|pe6ir&r>+(MF#3@F{i278aaLPI z1-Cfd^Z4KDY2MZ=6%s4K?G=A-3qwl4H?;uvlH_!8M*aDd?>x496?RamRPgoQ^`~~o zE0yK6KRGd1$>|kC(njHT)w?7gt*`c2eW9g7_E7%HM_arPrD<>6=QUelhuoYkOb^lz zrfshj{h_TZtMpxSZtqn)r5kce4q<<`Dll+3ESqrm=i2%4%1)=R2N&pn`plR#?LcD- zgM^7k#)3nw3$}PvZg|kp&@5uD8RM|=fKwx@rkYGes}e&u_y5HmFvPkJz$~TZ=SP_%+0H= z-Bo|N%+}o4m~wiSZMWIlTU&E(YsF0EI4$h7+M#q;w|TyL!0KPWL~mSQcW-y6(8sB> zTbJBo5~*J2qwvYghgHdOX~_oThNLz|7o&tukL6RQvb)%MtaM${G`)#-k7S;#H3i@(81obZK8+Dg9`+45 zxZ_Hlu~%rakHecC$?}>X8>fUs33{YVbd&2$ndGH+QYCV=$fp)24v&owo$Ah(sV3B( zElN$8R{Dv7iN~YSV`{o#SwOdRD#w9z9o`8Oy=J`p!s6}!ByE`!Z%4{qFQH>QFU}Q7 zy(p$pdTh&rwz5?f8o9?~cU*80QG68IB{Ffvqy=Z!E?McAr6(fQqP4MnLbaAE(_F_- zE5FS3{jvARrRD~!)CUZ|mQK-Hs`=LQB10wL7B0r0rk*()kI8lCY+~&?9=d`((TY1y zvN$*R$*H z4Z6&BaIe61_Pxg@bz03lU2wndKd;51dwDI(99KW|x_J5KwRF{UY`R-^I8NB~^L1pi zehY&u;|r?*^{oG!dBW5=d;F?iF6;069`!~|^zv?xx3@*q+@D@JyjLf-^>Dz3^(;r; z%+hH&^~UDL6$a*G#upgwH|n3S`FzgaUqz$EM$nM)Wb&G&M-Swk+&F!+$fSl7$zqFa zB3n00Oujp5y@(})+4nVSdC|{ zxAAa`==u&$MHkibh%Jkpj08phOMG0|9sB35SH*v`{S8mg)HCqQtP(kfVrQhg0~vkzb?7X9XsW1{>Z_`}W;UDvOvoSGw5U zpmD?L1#DBhH7xQc7Jr+?R_DZkvS z0uv4}axGwpEqp)m=4-k5w1o@2tsZc7ym%I2)#;Gb*QIn}%H?}GkB&G0>6&Z#dU3kh zB|9CNlZC>66kX+32<4o6tJXP5GQ6ciVEv;@Q>6``<>hTU!{6z$%FOWfsT0@aKA03M z^RhUw)h`NNS{Pb@7y?TS^@)Z#`?z}47 zzLV8eamfV+Z#4!rG3~tLe;#cNjd4ukEMO3;+9kh0YjgO2-p{L@COtbj#b@JmroiaH zbTy%4d@1wqs|u}TNZ6lns7rM*%Pp^aD_5+w$ev}Mm{k&16vz1ENTHPCos`ehe6B6o zx<1zU!IEv4?#;ep>YvA}QPp?qHivh_p`Rigo}%6i`%)9ztPCCIP06_W!))UL&5iH7 zxB_;zl$Lc1acuI!^O^7%qjQJE^G1q#rxUTwQ|wgDL)me+7^_u8>P>mv;O?VNB>{@ep`9k z>iE|tm2H#!b~KsJ-%)y|RMvR)t(i{(x}_$(ef-X0%L2O-RZ$8ZGZuMBeb5%TJy|JE z&3h&5kBDZL2kYvhKlZgVC5xqh*=!ru(YN{1t$6OGH)ahFa+f=vMR}ZYH8vAYP;QM_6m)?_f~Cre@=6!?$J=SxM?#iR2ki}j@$Rz zcP!Rb{mgn`|J+4pZnNKRy8JD(+_CrVjMIM-^45M86*Fjvk!xVw7}6;w=D={5;{bzS z#Mkfty_PrF2r|9=y|U8B;UNpFh~8;_g&p^s8onyy~*_mkoMds*YVO=oVUf9*>7&~Ar{%30lNxkZ)O}r(zW3IV zRTFAo?P7G3=T@2{@L_I^-I0QAo_SIHf36-DXUJK5D);T*>(2H5Dr_8eAC^}vG`}2q zU}en726HDT{z4a(ziUsupL_q;L+c8$KIQ}d%U*msyt@8xZsV5VE#e;E&0RmgVHdbD zd(kGR>-GQt*xSTxdhnlxvw$IrA+PkIVUwdo>qX9>0tRjY)|LsC{~zXQl?bSt3uGP6 zzOE|tczUS+R)L18ky@X$^IQeF60#B}a@<}LvD-ZRD|4LUjL0=#ggq~(X%!}lEYCMs zp|p34zvOYDoh;#s+l!_y6A(|+`n!{gg27miT)0fxl12tOXiW|xtIaIDxH-)x_ zb+i_mwVu7~wD3!7vPYYHnn&aV2JQegiDdDnK#9%8 zWiH@Z+$1g77P&%T`_z{ItU799akk$@6?QajY0395@6evqcxy|eU7~`BdB{6$sqxGb4i2nwv86821}Ice)w+LA-qkao7>rG>-O&b z96b$B4E!Ik%v8^7nJ8Bf!O^PF-l@Qv;#8k8v3>0pFZmZ4U&J!ZCN|r3w64x5-E82s zGq5>E&{6S3(-c)9?+)SBD}<+J2&*mY?p<2*_HbXinm}c0m0@Arq7y9(&7G!~_ODlq zf1@GvEv)GB^7hL@J=`bjRF^A7vd?iliGV;ZtPLs z*~7lv^Wu)mFRGoYI|S06Ha~9asQc8(bg_5Nk6sJYTxSt6<`jYFBCHV(9H%qlpIZpz z1l4FMPMq_iug=WGF0e@CdB^08{>>Bqhl}hKdUd$}`gVbv*Bir4C$PLUS#YV~Cv&%S z<}{CKQ+gXGHB6b7xoKMZOqEy8Qwlt%m!4GdPik-b(pGRIcy0qn3&V`YojrjISj!{C zE?1cHs|&npt}&=gFfUBh(a7&Ev6-4VbNbAF-N5k9&!Qa@v=}ciEK@Ttw&Zq`6gDWC zxpL;LMhW3k)2Z4U{Y9?ZF)f(2wbJIwCA(kcQ?IfYu@$zQN$HvtDjVH6Yg^>(y-SSl znx~{@PCu&|k*mq@sv_uu=G=2PRbFPyy}5EO^CbcQ3)Ax@+S@kvESSL2DlnrVk|Uyk zbzg{!@ghZG`nagQWZ;myjzgwJt@SH>OLKIz#Nd6#Fx zmL7%T(`LpLChD&gnlIe4FS1K;yMW*>(fnz#p&!#Eb_%Jb&A9Ek=v*@gbHgG{FNU+K ztjedRX|7tN^JXf;_ z^W5cxyw?uv~nRD*pa;}9_xfuKRnXK6=6_&hE_+mtz@v0RU zwbowtT6;BX?eC8&{u5X`0w$GxWa&~dVplL^J;2Z!uq3j8)q|^7=*Noh`dWm868Tj8}^kF1>$fPR2nsey@bgWkUI4Yho4WGdL{eKQ>#M zaYgwmq2MR&{M^;PfpxxF3D+M9uVh+#-D{I-_9pf2O_#K6iy3FMEo9|#U{Ko3!1sWG zr-7lXgu%IsW5z00ev3`94_96{QDkD2eKXT!l~;K64nh9Y%QFrxh$*y-&-%aoAya4A zuRgEc^0!|IA9gR?%pfaxTlCYDqUIS>-)f~Z{4A<}B9f#gwysh*@z-We?d`?h+e@>z zZ@j_Du%oB$Cqq|D9=`&sdljpnfFSFJMXJg3!W&r4XNoy`JF@Pq5v>sRJlroHF)gWk z?UEg$S$GWD|)iT!wVP;wbgFj3V!0r5%hq8%U~T3Lu2cPC33$- z`(DTEO;KF(vt3}CQR6N_wQ0L6EH>IRuD<$d=dP@+h7-esR*RV~?k#Iu{#{fok9A+B z_5X_9nmY|0`?tLa`^l9cc3QMDbm!&;9fjF@c;6i0=Q${N#^CUd9z|yc_5}@4nDHh})wPSYCEJrFq4IU)p(|g7Ej>8;4)0(RbTqT!z8u!M>ALU1 zB8D|DgVo!c-%fu(mqsrSAUw^UPYlre}pfW9a4nI(SEJ8fRr_5ZsK9!=s=aN> zyz?EE|1R$KJviCeb|?Qzp-*fKS9AnU2TD&BKCjzsynGMWrrlN)MYKzMA5Lc3Glh0jUuSVJag{m$cha)uZqr~0zr~rc=mxi9HKW0Xg1NhA zdoY~KHGk25o1gEYpx(ocKg8o0>;Eu1Gj0eD3^>+%rq=j{q~yWi!ikg1QiT_Mh~Sy9 z?vk~0*0h^k4&r%jtSg_{#ciB zH}btaJ-J$M$!@EMyESSQveqf>tIC>O!LUE6Bat;S-tqtSXBxihZysA6zWmbYP7>o2 ztssW{Y4FcloPUenAPVAr=+X%?f{ z!gazLX7P(=ywaSUt##;1=*0U5H-i205T~pMM{B3e?!bz4OJRiiS{eQoA(`Vg1 zFSA0AtWo@AWy!7O{Au$7R{wY{O}8&IQy=&We%_lTDL(&`nzd_meo*%L=)jZT7#DHQ zyue<&fU|MC$}GR!%=6zbT%ONVzV*SmJNCYwtN9o>A1vxLc)6?XMeoszU%bSk6mI8E zk~!$KGWm>9c)`ypRv$%ve}6dXUGzq-^?60<%RHvv|H1X~j<(P-QLoAtg%eP-cQ z(6J2v&%k}*`htfH|4IZ5SOxeU&MHM*c;MJHS58KPfx&@+nR}jsQ^dtbMD zz|h<&;o7HS$sHon#>dFxaG@c0v5<_=lR-?>;jN~(-(rRuBs)6bgYl?c* zY;SFNacO1omkS~lCVVohQolQLtO{PpK0DOt#GTvU^B){+tW zv7goL#XUz(9}w|UWp_#1;Hc)Q>~oT>nqyJ>m4w@q*2_wjehGB)KJ2o@Shi@9pO5j? zlFL?{jcm^5LOnk!iF4p6>kR6LUE-YxUM|Q8}As*GzU1iqv1`cV^e=+dR!aIVTJS zAM}J>{c+;4sXC*u(pJ}W&!q=tB!t6G-S{N&(s1gx*O{U&pRRmMXb~<8jGgK=B`l;> zd0ItMm-fE?3Cu>VFB;|HBf8jZHHN)2nfx7@H`Y?||-pMllpA9r$J z@wFSzrfC~XoM9ExZn&#i_+a7I^6qot8|1y1#THghcUih2dRE>f{z)4e-lR`*ki58% zfniHU&Zg65Ia9qD8-6BE4Kn$iyW{b+>b(D&3Y(+%cQ5hy`L6xfo(_Tk@8TZZ-mbu` zdTsa7Z>#h6y%pQBC``C|>jo#S?Rx}V4A$EepWey#hEb^Vm}7@_y63JJ2bIn`c69m4 zuibhu@8ea+HJ(v=8&~Y}JF{+Q_4mK!YlVYlmI>ef_qXE7`z$qF9<2GKQ1;(LF%8oYYi+WYwd&(%W= zIwDTo4vlAS@hsZiCdp7Z;o;nG@1}{exCn;SNGjh?nlbSJV?uw+&V^j19`hXJQacV_ zbZKrdm|=IP%fvP!$+cpIkPeSeLE@7Xb#bl$fK1 z)kTHlMWK#XjP6@yRa!eg-qx`?XfSn0q5jH{rB5R&Co(ZH)UsAOFwZ%;X`e_@ZTl5( z#d!s1v&|NGPYg`SYAEKGGg(pA*qPE4VJzfd_@42`o-`KTLkznMKTi4lf64QFj)PO< zZ=Id1d~uP@>!1D&Y+rI;@kXz zkOj`FS@G*Q8l>;?E^>dF9ys?`$cixU#gA8a{FeE&cSg)5#hc0CvZ{gfU9Kq*QJwIhC9duHdDI9u$txW&gW@*M6jY-S6 z!ZvoN=FDF9%JEQ~D3Q&cm)@QGRSPx?_cX-G(A#a+olt1Cukn{ z|72IB)O{X9c1H~#tzQMV?OrTo_nCCbLVr@L<)D0VpW0zaE zTs9hUb}&6`S~h8+BFioo&e!3BLaZk`rs?0-@BH2Rs`RZI!@{(QoBya5H1g(LdtMvX%CcfXJ>!JC%@elo7G%limvoM6 znsHsRP}QRem+?R5Sjl%FF-j`s}+#o$L~fHv)JR9tm9kaKKtE zwexKo!}Mt`J8jg8Cicn*^Gv^f@Z9Dzjxs!n%^ng)B7E;#&v%KOcyZ%!)x{H{d;X*v zwEyH{rn_6MeCOHPypq#vuPdE&S}ZG+ z5VbyF^PIT_OJ~MP_&7(expb|3>;IrElfz5a-444oWsj|d!XE|>?)aqHhhqgUEQ@|5 zyu9M5ZrrNU?k6j>4rZO$c$&wv`*aHq4z~^ZNJYs+rq9|9LyTLiy`fAFVU1 zy^B9wnc7zR%lmA1spZpd_ShHB>Qxt=m%MmjcS|9&ICqomrPDn5pPwu1dz|#meaa%e zghAa@lOufI^k_AQH_7VNH@7B9SnT_wk0HFbuHuM#+{bSFvTNK-#~EJSc*P)~sPX0*!#agSckj&6xXNktbMj-? z4{?oWuE(b|9MOE!S}RFi5P_v`ZVy07QgzIZJ4{{dt8geKvJl|t**eb+k7#xV1Bt-yuk zy$jrL8uffDOX|MEbdB-MrHq<9fz$OhZ$JBA@huKm(|uz95d)j%43(=2O>#FFe@pc~ z+TG!A*>%>7r)QHL*BS@zJr4hZOadmXJ0`e{PkI0Dz`dW9Exiw$r)zh9s}@u~$nmpz z`me|H=Lt$pOxUfq(w<>UM_-dscYyJK?~NA&>?XdLG)0SZy_6G=jgyLxlj@x1aoq>L z9+W%#=)e(!hJ49`tF#>tN!ZTR*em-`POQf9=8pZ^K0H5eJ4UQ_Z1Ml`I7P-HG>a@1kj6x@)n*piaN6Vt=BUU9d5 zlA!aIEz6WU6gZj`C7N>H9Lu|NEccC@m2t;eWryYiEcrgi^I4APtWjywaG$Y*)z)H) zrxcUz0hcBZ20oRe-5#?!x41U&cr?m*_^mXY+1>d`LAd#kdywTiYw4aX7ab3Gcx;zA z-p%2X^qMo%$f@a#NB310*PBu-9z!{Vf2+8$tQsd#dd%}ExksiFT@xOq$RWM&;c zw8Hc7ffJ5eoQGcRnDEDQ0gu;0k-llgb9^*U2|toz z>@$aX1a4=Xx$?*N0gvB98NWw5evfVZp7{7Zjq!VytP;|1})QF8Ti4cjSg=%Z-&&c>LvM4O$L( zD1}~HWF6E~5olm*;=Cou&+>Bc%spC5Hy(RD( z23u_nZaNTb_5W`0H-;;gqE{jnu2`CeJWjY`cQ)9ymfz*;WyiC@?rVFGC7$RyaDu_( zqR~}_fB=To8Vt8j3mER@Fyg(cJbP7)k!bkW15FGE+Z6;E4tR+r1_UH2?Q6Wu)xeO@ z+Q6m3VZafV;L6+*!IIp{kaBfGJnywc)s7_7YiYiH>8#f>=C)??UdvMLGmZ!=Xk{>% z(4Q?DmK1v}@2I`RA&wrFhTznz`jpxCJB;37` z@b*TRfsbwmg838LXYZ$u@$y|rAG zb7e{7CGWj+|1Ns`=*sT{ku5u}Z!_H>cXDFL&fC^H91G7HDMcQf#Gx0tm19$DLz6>u zDsOYg+$dhnJBNK^z7@nYIm9G~#`N>v-rUQ7axUvB-muf5M`Lw471u;}zc_n)j>P4= zXS*w+`6foIUyi)QdwyT7s?tqqP1lb1)`}AqZgXgGm_}SPj)=)y8kPJuw&_P~GH=}5 z2eJ2A@2x)?lW;cbd&0fPrS~REoG$xzm)*neD0MP6aMjj{KNynFhPg(BnF`$FJjNZ=z+w~7;yxqf;D*Eu-3}SEYqHn)l#hj} zTuVG$(CXg6;-S$xucC$RU9UXfBSp1NHM8(0k4FiyNfSNnCmDE1@P+cuo582n8NG>% z=|tR5iA0a)SYa`pITvTnndv>@rW&J!B*)o~&HwjkWUS(tesRXui8B|jn0eqtvhBSY zdy?;4OpIsL)t)54n7p+?JuFEs?OK;aBNxZhfOkz@8m)Q?kqKWLj2l|JUN8i%W8hXu zx?lU0%OSGqz>|clPYl|U-X2IzxcW3wAUQ!bxv3yEa9=}r0CUu~r%f8I(mSqk{CKK2 z;c3@_r1helCKXR3+&Bytqy}!_2zE>52uKav#}VJgkRX=Eq42DGhC-xLr%T9v(`hrz z+BomH@LA1k7221);??5aKb7}RoX4;u_CVphgDX4US;_1RyuIf``rZFtMz@!z3C|J#!;j>bQ_9fB`j zG%;jy2xPup@iO7-i^v0+bM-pd+ZbFoaLfyP(6obbDqAGik2~EPo}D?$p%-z@N3~<6 zS(vul%cXqb)An^NZey6wmNlth^<}Bfj>pd{_TA#?}sM~3SMk0 zNIqK7B+#15n${ffT)?8^+}Rw?ih`CO`7hUYJZ@`vR97hKUvMV&L-U1#8~^h8_j9nx z#&oYZy<^_v?AI*m5JKjg8RO_wu9DT?=dLt5N5SBcE#ik7u)3{Oov4sC5P4q&l)(PTCK z9@BsJu(Wxt3zy|KWqdX_zh-fr&qci>sG+z;BI}$P2XFh!CXG8B9~$&NG)-?~2&#Lf zGc9YC8;7KQht2)ZcK<(jWqgUOC~;NqG!-|}dy=l0p8e+Ay9<)RAKZ!-DJ|==Q)^+c zh{#&h++f#Uur@kt@yf|JTNVV#mvhJKt0lO1+>~XgE8#vQc4q$xrm`xg+$NqMx*XX_ z>g)zCJGOGTK42<+-jr3^S{nZS(Xp3#wVCGPA1==enIrZwaz~4RJ%_;gCtV)jOY^^% zKW}=Z$JZEM-cv2FaM;qTauyv5qD+&z0|p1nm#aj?Ee^O z-m&o8hg{aMj(*{wh_D;~UZm<4HaD2>SO3>%(7gI3plo;ewQidXMGV<(QUi& zcJS$kB|!ze8?P^Hmv53tN{Ninm@XpL*ffbr%yhynXAYL{Qy7IsgB}HQiH(+1Co;`<9<&5;spHHc>wIpEdEBDBCN z(J{WJ{g^{+jkw$L2@^lftzwS-6w4trS22FoihtsPEdo3iflcRSUtHL7PS+z~^?BD1 zS!*_5+chKDCnwqbLgI-=(&guGR!s7RQ3uZaL+b8|rC50*BnTrDRhxJD^ zbZsUs<=h~>`Hb=9n9XO+!&5Yuv20XRWn5OfM_>{E%NnU!e4e-dMA~e=ozq*?MKKHt~6Fd3$5!Ew2lk`J)Wtw+8fIi7#Em!{WA1VB(@T zH?NxBzFRFC%YE=R3+ueM4r%XWV{f&6?4HEPT_AhaxmCcmfoWnj&-Q1ti|qt6{!WY0 za@5q@lH@u|ZHlGi_eZPOJ6kv9F)Za%Y?>szIY##J+s$hp87$DUzrs1=;6a|icRpb; z7mhNd#7tNkWcT30^S^8gR*ovObp%fx_&#UCOOei10+Z%Wj^Fq5`Qm)z%lvDbiVCi> z*Jdo5BKh})v!}L6b>i#nmU^cH^(ms^5(cty5ybLWL4Q0eDF)=5!~B_F9#4D9sJe01Vn(Wb?g{Hlvqp7^xHs0{+_}pa?+m^u-f#nLo&|{iY>TJ_Oypz zjTBY?|MA;g{xeDuS1qqOzxj4XuR?Kl+>C~L1{UYclNX{)bWZSgW}b_bEH+SaW^h}^ z-r#9wJnvITk05V@rjx;kdcTkp8mdiJ3=u)xK@uxOHn;~gecPbGsc?$v-&f^DDk4gA z9XgrI95|s8X)|i$zbHbyCPZku39B^cpx)}LkqS9&R1B@Zl zIj%AGD)1M`EZZ{S{FFeJ>hw+boj+xsY>(iW_c=x@c=oFh>%Brs3j|&;ulW|dK!_#9 zxtQa>*)snnzFC>`?s$aQJ9&4Rs@3e+zsd4da3sIMIuby0WR(ZYrxtP$U15IXI zgnx=KXax^FB>M{hD+^<$2Q08h;i(Q(JOC z_+{L;E7^}L*B#QEqw5jPc;MXC|L0zpe7!VJS(E8;jc3a?uF6cuD_c%(xU0*GpzQKKYS0Z{d=Il9C&yq|`{PO-h-%cFKdh zY)z|Qc_b7tZ!}<0`!JEO&-bYR)Mv$R2g08RTvj~arQ`VGl~ZK(2BoYYeo}IqoPxz$ zt{nI#@Jc8r-Q%0(O(z{sSGgVMKXFwm3Qo~=RXg>fJws$^u2Pq%Y*7l!>+>D`a=uK8 zi&7YFh@IgU-0X9bCuLgc65+_Y4w-Bo!S_Ov|MzU4s^a=jGc%Rh<^fZDc;wR^k0U)K z8Lsaw&Yu;d)UNQWt}DzZGO$fEKxL}ITn~oh*6%*{7w_5LdGp~8)uIQ>_inZ7nA@tY z^+8rBL(Nr$*iLh&l;JZ6|y_l<`ZcUe4m?`SSFO8^vz@?JL>6JZ55O)Gmc7c~65s zy_w+5wBVuOMv>i)MO$|WtDLz|TJ9p%o^W)|-idkt^R$$kZq2z@eK&Q!%~Ngr<(uRz z8K%XkPEVist;Iq?x8p>ty)xgmr+QWgSOZ^M?~GYuHQm4O(EqI*C+tq2_Ty)ndB3y8 zdBHy!&NX{B2zLB(De2eJw^5s)**Cduf3s5ukNhUqK<6*A+7rXA)tOW{n7{Al?`#UW zZz=azcI_&PCh(pT%v$fB){SjLY(mO$A&7 zCf?o4(eL9Tw)N6y28Jh&E{AT;cE2-eqvn(+y*HhO4 zm~b!j2p{9T1e+Po7pBGv9yu3zfc?VM;tR8!cO3fJ8=PDt_ql{?^+K;TKc)V!ifG{I zXh_nX>oVci4VPoRLqUNZh`X+KJHHs&sf|n{5k)Y?-6^}yAClv zEXz0pb8hKK%oA5t@XA>bB6u{+vt@H9%j>O^9>gwiGVwpecwoBdF?ltXa$6S;rz3M5 zUHUU`zg9?)-}OlQ&?3!~lcrWGO391b;}m%DB0vM5~}x3URdgN(X!>^#sF?#7tI}a?zv3UUhwc< ziDS9T;~PGYlWOEN{aRX=MC;s2o})77gy@myyvdFNj{+9Xaf#?Mb8}(8CFkN0;wsQ; zC#UeAt?fut1jE`Js? zC?z?XC^4v{x;~lwPe9zYLP^8!$aYaBw}`H2rnLpL|{Ng8~Y~+>}B(Di~cI7bc`GN>7eC8xwUi%E=|#=oy1o zi)Z7~k8{+V7PYue;Yd5y@AP50TSzIU;D-wf^Tzb5 zpp4dYlihM}flhH#kpZ3J_T{NV#z7_lheI3b7EQ3p%1@)5s*^ za7e&`$>P9%$Ft13Eu4HUZoNwrZJH#dUVgV_k!m?GN$+Kz-+f8910Mn%*zX)rPGGTc zI>6!J_U=l`oD#;#Mw$PuLYHzlq_TK4u-`fG{bA$8E`~F)ElMQ^IXW0-=xG|;wn$BI zVD~ui!S|tfgSyKK#wlK!Q=>AIN*2B{eG<&DveihdOTkIZa$q;Bw#7rITU8mpjjw2s%Z0taAJNT!$xPx@d-D#+5~7EE+ahOZ;9r z`K)lB@yL0Bk_%77$tv9U#&&$^p-yd) z=Po?cX2`i65`6NrWOecZrqVQ)?N-MYs=Ru%a~hmZPRmgjICS!_eDKUSCzt62W@z`-F5AlVWS`U7i=pnU4#ygvzCIzu zwwvidwiU}BtvTnAFW& z3mtK6IJf$kmWxaHqHppZ3c4?JbUD&;>Tg}I-nGEGboRwtZ|`nmUmAK;ws6utJJ$Pl zq3SI{*Nj?!N38nEa!%agm}i~RJ*i_0*&J5zy$x1b_BiZ?*51>XJ}u5(>UTCs!Eweb z*A4TU#9GdZwX_;!yQt`RmQ0*7A@{n_3TLLA!*wkGpLu!S{-<>(Db&Sao!u|Kmr;2i zxZca|C=iftk9dyft!27v?2b6!2M3TJM} z{dViI{lo5Ov-Fk)tvx1p&*jPG_&Mrz>)zOSskyGvn-kf~pH?53{aHTco!r7VktJAs{#qxc3&!Rp-~U#-KYQ-FX40o+?;RGb zbG@VQa%PQ~Wur(+Bk%Vc|F&iS4^wg35y#@OigXWPfccCSC%EmvP!t8kLx)1PB`49Avh@E>7jeD_~j zeDNQvT$h~9*Dt+uo)N-ma(-vvCe`{^BJWkbBv!lp_$@#V4>F8hxb z?uC}_DQ^8r?kBdGRU01LWz65bG4S#9NiR)&s=tOemqv7djW~YtD$9XosxiLu>kc}7 z)`;Kw?wH}NDushwrJllHjqBH5b5L@PQ40>=BrMAh-&1k^w`b(>F4v3Uau3akBf@qc^LPtK)Ae6`g`Hx!b6(x9U{DL`*BJ% zmiYyMh;4-H$z6@iW^ihSF)=zZM8rEtIZmSBbgn6!oXA{G!p0^7Boet`~N)HgFw( zI=5RZ@AZ$S&lR()IV+RQ%7t6pB0t{r;|t_?>!R|j=i%$N_MM{qKbKAL>5!{hd;8bg z$5rc;H?DYZxGVN!@%z}&2Hn@5d5aCJW=-+1O)l0DkShD4IQOPWhm7Dad zXIUTV%ienMxK-2C*@Z_Xwt2T4dj9b6e(gY&hEo!8`3r4c?mB&HcU4WTuovH`Oio^@5_88Zj@bR&q!=8*XiB z&m#8veR_7)=5U+Y!gY=jxjh0*Cq$}u`YVN;H;d*gczVfh->tfZ3p+`v|$)&MHNKHnea9UH#0)sM}0Kq2*b%f+wd@>Tmjy7vp zbD1<4ICyt(3zbc}Y3Sg}W?uR2%TM8qfQ8PTVy0ChnL$gvXPTA%63Gf#8N5==<3&qW z*jk~rN=J5y>I4TZI?+|cdNDLIaEaA2-R{+EZ*BIzyJ~Cpx3vFvcc(s2lRYiIHfmcU zr?^>-L}Aj=Zb|d9IXf15GB639b!z#bh@SCJ$Jq|T zA$vYa)Kq+Yd~&*Zy_{{}R1V=K`Fs8){GRV8bgJBb3lqy<0WAlX&GGgo23E`mIJ^$N zU}Mlt=yG6?y~5u!TdGFj0LRu-`TPH|{Ni_DeE(bEh=8li#3MrTryrS4kTT#CVTw^< zV4NTJQcs0xOM}Kl@z{{H%QY4}*6eQbaav%sphRT><9xmg8@JAzXCWjwFYG_#xSo~muHuVvz5ZBX#qT$u8md~4c%r+HB4Tv9?5z-r2Ga*b{3s(_YRZ#bvS5lDI$(5O>Tu+Bi{OOgY-qT>ZeHqDX?ho-6h5oroo zIZNb#mwxY*t6{OVqSqn}nVxd73n)BbV4LS5ywXWbLxX{l!{b1w%~U59E;g=)iHw>( z%t4Hb>c$Hg<9_R?bg@qJJ;12hW6KqtJ9F=&$Ytw19HJN|>$UspD^JWAQx?8hp#^@;EoBd|fS-aZ?nnFz? zZ@1m8lYY0OR_UF>%;>jPOdVGWKJ=_n?2uZta_>5+$8D*bejQx9_)v8IzNd9EpH8UG zpY!SSCgT%NPnq7I^ZA^8Oa7)a>|YriI28^ZcH~!1k|=0oX;0Adu;KIi#l?Za?PM(*d6sr;)ay9fnZuJCgafA#bCDq|0>2z!Qr!;vC|0lfR8 z=Rf^A&!drr-&OAa%hSu<)7Ved-fk~?D(I@D$tpH~+j)US?-_aG-8wWbed364V3reT zjNHlNBs0N*-AqW`rZRoUhXAibITD=DO@T&(&62OlL^A+;D4)3%BSL{~3Hv z46F$SnnGJ1@Mv-z?nrp3vQen9=@+}*$HJ~;Sxr~*09FP5Ig0hRo%icR$|tL)y-|18 zc~ob&VAr%a1@_!R9sj>EADG?HobB`dhkk?oqG z=7azv#*76%92eKO=rB}m-f_sSKv-(UiNe0poX!K=f;yZOm<0Q#JW)}%Jg}^X!9l#? zgpy24yS$rEB6F9+Q7Z$x|2;Mr3qDlG`=2xL3MzddXms#Nor$J^AJd7+Hk^w+9^CMb z|0gs+OCeJI$>DZcDgZn;lquBn3mv0@c3%@wDMKZ;U8AGUvDBa)&D`<;&Ux zRJxs>IZ56MXzxlF?K3)YP%bL4+bnJNq?gMaKD_Xm@5mx3^p?k!HOV)fYrzb+lPf&U zv;+c5LV6UIbXh$2IJcZ5Z^34VRFzwjJIder&HJ^H;kVz;Q{N=Fs_vQmoVDZCu41Q@ zCzry&>A(kTFs5AA?0)N$JaZ9;-k#~)tBP4`?px2e%4*uNtt5c`M)_%-Sz&dncsBU_ z*)6Z<@I+|VRewL_M{z$+P2U%@VZG11No+sQ^vNW9W zSR&vTuu=GgMR)EmH>JOmPQ-ft3cAt2TB7@RnQ`KsDK0z=Cmh8-O=#RR`M3gKve3sv zDaotnb9$?6WomotJB??7w8s%qiCgC<&)w9;zT^Z$F3-mqCu7oPizZpGej(&^Av?`H z+w{2X&5w?^-b^-4=2I><>+pGh%B&+q;<$32C%g6G#S;{FCM|d(?>1%C{M%(Jr|dgR zyyMChIzI?!W9w%DYXPflg zk!0x1?OM55@)es-!v%FalR9&40i9D~m*$>%p2=vFI#Z^4o^0ZODLv2F-0b-3)H_GM zZF_j)b%zO;DQAb1f_}JuPsQ(bXXd)L7w;9#cTSn1wk^et_pf1F?8IJGP};U&ZbFa^EF1TSVquXkbrqyt`A}?xqO8U_gc=7k|V7#)MUKJ6!CPCYS#^DLm^3cXlvk{!#QJbW?cX<&Z@)j>FaPi3^#6Z8ht|wYS@h zX#Zh&z$o}%nW;95i8Y<+!g)s*2aNzu&dNvJC;Gp9c|6}MfNS{#uGJT~dXt`Vz5J-) zv}D=pC5QBytul_q2zaM___Tpv>DSQ@T5FC^StKmP!1p+S@3{cq%youM7gnlGaQ?P9 zf65u=e;@c~bLq;cFzwLM=eQ`KoW%e2F|*1d5f5*BmW`TH4UAe78E-w|G7c0rpD1jZ z`?O4x!Jy-=-6^)i=OP3g85tjZ+|u_;;LxurNly!O8E&wN?BZ99;!XH4p{DMYkc9MY#qHpf5FF#k8<)LpiPEkU8-#aXl-@5W zvtCO~`w)ZN1Fnkx-4Xu{lpdW`U|H~!=g`{-L$=sLHvXi=%eYjgv8t3Ah|djR^3E3% z@mXP)ur;Xj(i6`4anFN&TonwDbuT*fpJ&nMLlc#>FDdDN>Ivh!b1aKp_@S(G68BR< zCAJA#3;bSMB{MYT$CqrZS->NtowlN4k;oRG?35%m?&BeH4^=&v3a)JWki@6l9Hh}c zNyD7|mC`2T6)XS$=#p9Ju5x;U-1!M?sfQjrI59AI$45+JPEX9|I?klSyEWre)*KHV zVRxk~3F`7sn1nWJ>ajBjY|wZdr1yN1UgooPPI^jP4)kj|F%}3edGU&k`K9Ldvpkz0 z>E%0dbMPt(IH>+Ed^T^xGlL|-xc{#?4sKG{Yc#6%Q!?0`w2e(jZ$XlWgV5YXYo#{p z`3su{2b=z1a;W4jSA*}8f>y>H52Y;+!ev|;cn)y>2~yy46ZfL0 z3QP+ad{(4=aA2AD*-}5zVZmq1d?#L)158Q@Q#2MZ=P7VCI|=SeU~y4kId$1aK1l6Q zvCY}fHj}ehHU-=7*v!3evQ|>D>3d=O&%ySbs)}ksZgC$2cmiTu4y8;wF6y>9ErUzr z`(#JyD~|GCG@{&`tQ!SbPAhB+NKx66s&U0BbfSj;rgI7*F78uYnrT@IK=Py6u;M3{N9WBe-82gKE?m{761Pt0nDKR>{A1{uLkgo1`3A;icbxcz8WYm z8l)T=q&_uB`)ZKBXs~f;u=&(r>#M=`q9M+qA?{N{ysw7%i-rb=hK5fKjlLSnxmZ9Z z!ILS0L0|#ngD;`Qq2cABA@>bbGA3V^N#LuT8qs| zU@VxLb4E+?!KB-_MB{#6jc1;^jO~F(zS_OAFVU;N#tVlfe%*42VZqTmZL6kDjXhYJ zsC_Nzv56?-frRsHZv-B(Z|{xQ4@+_X=6>5N`ROvZw;LWgUDLSr#g~0rN^)4*(hZ67 zV!0E7;`zTROnX#iSC&>Umf^XlhY=!OTJYs9NhKGp1d&nc0>D5Jo&Mofca;dhY-m9MvJ zMwM#_IC4oXU<~RLIC8ym;q^M@Ee*ZbIX5{Z2|nan^SylXcTFM1pFP*V-`TF2^__Fh z^t$caW4pdrZhVm85bn8bvBrw)jO)a!EX&K{fB1(pHf&W$^=T7WvOwTonD&zY2U2c- zWL(oPaATvay@tjFRj$4nBCQe(VhzQ;KROm4XjNR)FyDgfn3%{M2SY{%MvWcH8=iLl z)!|Y(<=Lo~eEVZqWmDJUgxGu~L74~2(=8gUlSD85NLh7>y?MI&I)!fT1KjOOHS>4G zznI>2J(O$3k4Pa$M(N_dl~*hFZCBmU(3Sa?bA}P)GIy>SlNfe{XiDUJJd)UT>BsAw zjdnIWRjn2>&In?3IMHIwG-pyPq(@_y>=uVWF{`Jcbv+F4Z-?S>8uSHazH^Y1#PLH#JphT}q|WCJ9Bc5H+q&)ijo8PkJ;HohGL{ zE^+z)R&9gAoN8tb4t?Le#m2`Xl^h&91s5?mNGLzbT5?Q4@y1gwrERK0jT6O-OEX_- z3oUGq)_AgQwQ)g!CYR!Zt1}bMZ0P@_G4uS}nMXBdhe;~8{q)Ie64>xlLBgTEc;=Gk z5>cHQZPk@xeg4(%Qd(RO7hP}LV^Q_8E@?&!bG)@PL&&7N9$sp*^ml~4@(J=|+`lAI za@Ml^0JT#;)%zli1P=T<#x3ITOJR+rQbN_5u9>qA_b-_+$+E*_!X|~ex=mBUrFb}< zET?fRSt%~#O-k-Q)aRTu%leR0uF{fcE7q_w&3*pD%_K@`Qj}-vqG;bk3`@2z;s5RF z_^?gTap_{drQ!d}wXGUg@h(&Su+vzkQtiOhwR1V0molr>EOI+*`Mav1Cpu}Sda_v2 ztVWMT?9XS-5p>$Jy>CnHqjheNwx~8|R6bg$t;Fz2YTb@qX4^}|s&**9t6Ib6kYsJP zMDhI0B)$#*{WaNk8*hnHI8qihx0A6_N${A}Re_(SXRk3{UBX@~w(<1sCBhG<-@TT7 z-Hdx(!$#S~J-iEqUTTTFw7Md*pn`Ml_Uc8492^`sho-)c- zB8&px3yh~7E#=&?SYL6T!>-x?ll4U(Fv=a+RJ%(#V)1Gwg`?j$ndxk)k#30kS*S4~ zNJ)CZ_bQ8R%1s}*9$K;~91w5NTq~tiRblyAT5;O@-7n4d7%Cl%w>)xs#=^6+&q|l% z-WNId*d}(qLOc7S>AdD#n-~Ni%{d?JrpPHQRcj&_>D$Z(bA zzy+&=DY3V8(_@tG2=%ANC~aEsbKiQ^N4iSP3mDfatW|1SCvYHDMS6Y6ro;J%`s;42 z`@!Wm@lzk)q6mdUmRd|F6q^n$-?`dK+Hk4EjinB=+GB6r^>diNU;-aQ<-<)Ex89f} za4;n|OesS7zd@jaRf(&J>oOxPhL|cbzaj>c|NINIn|9sweR+$gr(}_P#qP60e-&Pw z(%5w12KUQ7J+WMqzHeh}U_7O27`Wvu^FGI$Vw1KgaP!GM6uwuMfBjtb&a#aT4@Kj+ z6*}{mCW+3dz~^URiRfl+~_^zp3zHiR!Javz<+9JPJE3 z=Fj|Wp`tVQP^0N*-MNZRN$+m|Q_K6!o;z>NkGQ}7mkZ`QFbW)q-nVY!;=H}wAxq!i zNr`gXE%#tURF&2*Rt1SOQXU%?9Bkrc&@-t5vf@LsD~p8ZE14fb3mGRx8nC@^xy0bsE6x4?BFlvU zwPS3ej)@@~HorR8EhPBz&6X)E&&}gnKjFx(2@U5MP1x5I?V6HtR9oU~)ZL#cx+hsB zw&t05PJVTaMPmMh5P|6`8jRl0U$N{dIN;}E;-06Xb8-En(=&{-@15DX`T6+;&fRjp zySBW%ydrpY+}T}QUtiyle0rYm?rm>x?}%RSB$C?L$mAcjPRegj#mA<@>5}oRt5TKN zSous22z@q5>A9-Ec*2#avWzsN|EqF~e_lL#m?Z zZOT~poP!i2CVB~RE{kdvciVcUQ-#-Jq2D&GmP>B3y3s&wNrSp5Nq_rz&oWc-)?`7pe6A(Qt;Rmxhv{S)~y-oOHFcL1=KtKQx9z5`?^vmntSJ~fRzjyI%{0& zrCc^HT>ooV;3|oO?u*V#XEq9+<}-XV)o;Gul8*^4tJzi_ZNH@Q*^R%;JT%ne=@;d5 zR*bz*RyKs4d3Q5o`Py%{a<;$ycDvxX?)R8@w}TCPxMFsQ-Te7#cbFLapVtROJ9uKE zE(@o+-E`u8wCk~(0P}}0=cDh7m^z-obM0cHo^N{rBQ*;g`VyR zUdXMPC2*E6|F*_8+2w56H!?rgRiF58qWfm2pI5MM!i9B>@2aj&f7epc^o-X&OW zpxXj-<5>Y46c#Waa0|G$VP5Lda+XV+-^7{@%q_@P+-THsNn??)7*j$q-$n%nm1DDx zGA@W@cbxKM71PQ&k}geKSD)Y!XPT8|`B7nw@r=*|O1nN+e(X-*SuAnfnoJA+w@nx93bk`Pa4Mv=`gV3Ki>i^O zNL8--P9}$q97--r_O`0oJW2Rwc4=!XN3Ob(Qs}W&N{)wlk906-G-$eRwmzH?q#hY^ zf-U>0U|iz!sI5m5^dcu~JE#dxwEZ*JId6r4osdfo*Gi=u8JZK1y=ENov1RX_Z$!>CL!cZLZbVl>xo0LY8}7U6rRJ7+KN4bmiy1M-5Gub1l-%la}sh&%h zu&ox_sc`kFQRUz4&ox~Wea@|0ZteI~E1l7|O-0N^ajIybY|{MJA6qB<-Z}H~4zo+E z6OPQB|MG~iz<~>sKAN0B-W1zy3sOaJg(Xnow`&2qP-%2U(S=Xbok%i%ZPWr{b zRuAEsu_xEN_*n}mG6ilm;cQ?wtDbN|sHJMjkrV0Zfm++GTsBKLuAcks^~?*4y0)uK zObFHvif7;nX`0P7VeW8AKg|{6ds-I@L*AtxZuY$+s%GyFwYy2PYIRg z-r&gNGof1RNCorBtEV{**^92OIPPS!@wm#Z6^!zq_KK%HiRse5-(|8xOW>YI&ErG& z&qn-EI5Fkpq6y)ms;AZ|@JwFq?Dpo?%sMshtykBxb1pg}EB$17o!*1z8FM71^N(!T zmGx*1`ET_kZ1=CL8~V1cIlFzfhDBoE=hN#ZZ|6?cP941AZQS>>PEbqZ%N0nm`=wwv<(K21 ziqgK82=yuN%pcn2zN#KR1soul(v(JPLmI!bq zJ3cWJ$h}rJ^JCTQg{$x-We;J!sD8f8$k;-h=efW>*C59do%h>Yd~US( z{b+f58FcF7SN7DWPh#0Vu-pmdhzf{^ywDmLz@f<=rB^Olr_wlSX#tyH8mB~f!Eymf zRx81DwN^zbkrR>;3N?{tX(s6cuT8UbD| z%1V^XS~e@x&fdti?`h`dfSBCxW#^}qr*0D}Rtzi?kD0Yx;9Hr%#4YUsKe{$ZbZ@fg zj{cPW?|I6%a1P!824)8amI(}z8!B2`Su@L7{~!DzHSuz4=tHBhi)nTd0y!@#C2q*= zQ!lO%FJD;LK8KM@Xlt6w^>$W8C6A8M9x+AcFCD(qB~#7YiyceNw>KR>+#EWwmf=7j z&*ug<#X2L?ve|-Fry>Nde(JpQz3txg^cxl-Svw?MJ@TifiVB6~Y>}8KWI0hJa^eEV z3ebs>21TutIs6kCSOjF*KS+ZPjl96wI)ODjAmX4|+dRXDnHSS~RlLq^Z@U)Ja5=)n zh&{ZfC9CX4@!X5*!bkiccnH`nsbMc{@j71ZBd$5yv7e>G;HbGk*mmJBGwM_tQ&)EM zvo7rC3~8Pv=;>i8a71OoCy6fhlkJ>44f(=Do`ehjm&*{<+>$F6IlZiMdPU~M_)jc- z?qN|27!-fT@;zYSnZTe>$q?1S5!t{RB@j1RU25s0-q459{gPF&=G+&5h`P>HOK{W{ zP;T^I+A)1$?_5Qf>)(5&Jfad-Hm%+|g@+?UsY8;dxjO7&-!b-n<4;XGD{`ZE=7)r2 z{)tGw_$<{bLtsIK$RZDcuiJWZS5C-(De&b))^f4gm63C=RnEO3S>gJOMR|J#Kf|Qg zUl@Wew1z)m;TEvi?;+djz!BcS`Zz<%WMkKENwH8t&r6;HGdm~eMRZDKxI|P6Or75A za8q*O^Ddi>GpBbbhYD6Pu{Z4v@91)#+m$#wWaVtW#1iA3jsJySl^R;i-@mlnVuj=p zll=EP1k!FMvHa{|Iha1DqxP)kobu-aJg4TIpE=j8YO%$v#rA34-es(xKI!vJnApn9 z6{N<>w}3$*a?+zvj>H#}=00@Roh8q;OIS!X?Pp}&%1q_u!U3jC@ekOgmYkGyGjC6M zRwhv<{(MLE`p!PTostuaX9-(P-5fCW5=XGLVAYn&{(Uoj4tUO=&8Yd`LtuLOBJ~-I zexDEsHLPBqp)2exJULuZW!2(IRx77Ot-QRXFgu)qrGSC!14DShB(I?0NC8&f28Q;R zES(2t^h-)jY-zi_Jl#rh%IwmmE;E;U21ceWThzp{aH-{jxrHKIXHCu&lKg*ev-dNL zj)I*F!!9O%y188W(5%i$1yN5dxJ)}^JO$!j3d~p`*&)1=`CxiWS8m&{+Gs5&{iv)B zUUL+830@FcI_=lG4^rztoibbPz~T3R&^=LLp|-~BS1CPgI7`{%@v@w9$jVA<+b z)8?@(y63f;FK`)4Yu(qUYgrbWuw@DG88Ebl2_){4T$+?5pzZiSQ=mXpcU`3MhLfv< zGzI;l1VpTsi@g$%EnB-;A<)^Jd*Zg`^0$;HXv{wR(tpvnRT^E>*v#kN6zY85B`LH; z_?O@c(N#I0rM3oHZw;~5`?%fh;zkC)3HI@(;jUFnlvgqYD&(wDG!iPDZ+$R*X1IXe zmW}^sR8Ef2S|k0ibLXRVPAZKCNel(6BDSzsb**qY#lBHiZKk})=BsUM__r-onX%1u z*CvZC4GaY{Rd)#_zjRm2UTd|xV|cr_^QT)-eE z@_Nl#ujST?j=9gB{kk`sW?E)f3f!J0S(BF3?kMb-v25Y#btgRq7P2#xcnZjVn?295 zKPhZuW>?1Sh~59AlenbT91PufP^Ragg3O^N_SnT*tWq;KoMPN?U|HCDM`N}GuZ{+> zODw)@4OSfwqTg5u@NwsD`=uQ_ap50s-BaO;S%G;|xT{hdTk2SjY-ZTF*`c5DL+)w@ z-|MsXwan;a3yf-9C4b^tUy;}TjajCmj{WCv&HlrA&}R3}85a{>YXrnSI(5QUxI|A_ z$-%(FaQM*i5 z!Z106Lul(Z-<|~_FQb_Ptp6{V;It@RMYQHKQv)i}oHcMIu z&(N^#0>}1;(FatoiawpagGGk5`z6cf^0iyvEOL6tP}Rucub{-VA=1x=n_)Xc#DP}+ z0|6NsM^CQWq~^g8-;*M{S&IMFi+&*31!&r%@LH)bZob9Rn@VoImhaDNou+= zga`PE-SFu>oylx@e3zHNYK5zJe(HS+ob-R1MH7#xLC^w*@bI$wDVIN~*RUM8z|kwU zEP<)Fhso;V_4;13sUMg+-Y`wtaJ_5qjmssKd1m@XV;eR_Q&OI_>x`QxT07dwMm_hE2Sw#dcnXt9|C{H3E`G zj@w1p70i5m&K2dHE2&v+)y_ImL`rJzS)H}TfoE=b8?pcPVYPC++naMYJ(&6T9;THK z4=($_74eDd!CKV^y7w;4z4xlU}6eet4eiY3&Z^@cO><>kA2p-^^Ujs|E}Dt*3~Osuaew0*RVLH z?s(^c#nla3Y67QurG&(;Z4S8jt90|Lw^Di=&QDn&YhBM;P<6fR8`tzRDU5|*Jc(~)hO_PZXtF7*@(A<8)UHH0CCrLXed};djp5JQCu;&Zf8SxUN_^Sd^D^V{_1+w&7qL=q zeJ4EfRGsdfaH&&WTz6ur-^+D=g;5)xmi63TUC`Wf)OFvf#>pt2eLr z-FPZ3{A}&!T|YG6oIRDf$&O*i+n{~-j`9hz{(76pIh*59-)k|&H#J`vuJ$pUuoG8( z@w!Xm=EZrEEefyM7Cei6`FcvM0QZB}>$+GE{d;qo<0;n!S%sI~U2!Id^qyxvd%eM0 zAmYPq(`50->s~KbJk4czPBrm^yU4rsc~YSp&KE8a7QKH$yx;83+`B6_zEZvLDx~OD z$DCJTOrMnOKWg!3M{QtWy&%lIfFWW+(SipoY!^(J8yJEXT#sVn3M^nyo%EUaz&i~- z+4)KgmlRnw&PawgFsLdquoYzcZQ=@_z;O6eccqG6%Y#q)f()vjU!F9v@+W*vf6Bsf zPUT*!*negL2DSqXd+elqUVUO|VBk4W*qip%FPVW)VU~8jl-7pxHhx0&_fIs|o2?dL z*Kc6b6JWPlFRUT|#5wMX{k`u~?6ZGgl6-f`c9x9vnLz2;`l_+B^``e1o;;|!F#hL; zM2_Dw%vKA3^`80V_w`4()2H^FPoYY`SIqytYya;(_kZ&_GXIvjAkFxP;cv)}c-1ZO zOxyfbkH7zY?*E?)@_*U)a?Ptdp~1kd;`q0|_wU+7u66^?UVG`)0i2TxIOc5-K70P> zll*_y6aT2ibGA8f-mw>7mcZGjz&TammEHD#&)@%;d|r})@$}>+&h1)jXH5-w=+wq5 zYu6$X_{gP8R5$L(jKKeo-TGv0>sTa%o_I`B^_}N3Gw7+;G~L*JEt0{{d}f*E-a9fg z__^Oa+uBo8f}K`e&=hLs(+!;RbhW0|gl#*Fz5BRUg-BjoxoXkT)osO_Rv8@K@bdcl z9Ibt`9y4Wf3hS zPt(8CRy6TaZie~l$hLXQ79_+l9p&+|_nq%HH|lHFwY9PP+hn7^<=onud;i$n=^vt@@>mwDlHGm|4bOisSJ>RO)v zBYcJIg@wxtYCWE}REkYins&c$-omE~|IZL_i_f-cU8Qhlk5H0BhdHZw$_7Vv`4$5w zPW2@loVfLm7&!B$uS{7hrt<2;%B8oQ{dO#zF}ZKyiwRYEVz18Z_FH7lBh%G&YG3pV z(YI|uSxY1{bq>0{}|H@?vuQU(r682aakg{>1XnWSjqpy-$R!sW&#zx0WMs!uM zhKP`eXMnZ0Mu?&kugO8-4|2JUfvqyCCHtL)y+TZU!!<9QGrQ(u8X6j&x-~RBzST4= zGQBs`eWBmP6W4?aLQhU{oZoe@HE80Y$^N#%Aszp@m>FwNoIey((RgHGz=toJT5Tk^ zv1mCLg=q*cm>PCb(b-wCO}y^uM#a5tQH_0`e2L1pEu>ye(=Cu(d@Ueb^w770rchD0HLGx%t!EmC zm{(X@rEZ$Ek!rNG#$x4Y#&pJ+rzEabEnG6=`mD%>vzTKtE@>usz7P=>Tvw(c{=mCq zQlfp#i}WQ;ei<1{^3GK*oICN=OvP00%~KXG^=;UdwDo%0?%eJ7+pP0;K5tubJNM<+ z?v$IL5kKY$wmK{9BGY;$vEEqY^GxT z#8cslPq*b|n^{HPkXh(GrIOpNXwXHR+j%bZ&y9LUB$z8^?enO z`=`GYE%Eo*t@w0e(!8Zw*R-k^KK>&n8Tn#M{fQ493~pMNTH8{^zJxt(z_gk|r-1{OFQowOwVP0CjZTo|I*}ikz#lD)VgoJ8HeiGT?z-D%#k-sH@CGqI4 z64#a{m(0%1J`X13{q3z*`<>vthkfF~i|Wsx20Cm(l7 zGn%^7C(SI_Y~dqmmj#|)FJ?~a~Nt)f)o&I&-F3lUGT>EUu|{Uj34`}7UQ_mdoXz)g zne+dLmJ zJWKSHOj&PxdqwUFPWs$@Q%5FALux)7_olccLF85aH&iz(WS2p+Pi*MH_ z?7TK{s#7nAOvkkeR!0tQD6CL9R}j*fv$Id7NmVwHzdJ&Pi*@>~#f(7_Re~qpg>Gv1 z)p;YaduPv`#FfW#va>>WM_t=?ZL3M;J;%8#Cfwjst72zoWT)_oN}jHMYZ=cD!K08 zydm^i#_nkur>-9}KUUaRdgjb}-lqaWFE<9%{h8!xuuOmbjt2p=rmq#h@m#c&Bb+f) zn_VkBlJ7-PaAjR!Gc##5WDYIaG<9!Int60+^J5;)>q2j*tITveTYdCvhRfTQ7p2p;o3*Z6 zmCPjTb~e6zkEzF@T=k;eQU*b)cbqI-7mM~pD86P3+Fk9NweXJBq}@|CZf3PBXcE8k zfa}t>RMklZrl(U@K02b^>AF`eq`U9(+%yl>L#=a4*6%orS`!=gfkQk%nFb5_Wz z@j0icw>&X&A=l^s2<(?CZr34rLFHl<@@jS{epgq9$ zi16k%x$51uANyuAy_zL!wEultSHa#N%3E#cd|+B)}5Rb1ZH zUH763PhVQ&aJ>57*L~&tK5soNB)P@+g#q)Itqp9`vhrNs7_?@bO=mS+ap;zK5xZo_ zy-(AR|9N^>QdMh9f}OfUBX`Dw-PXzX)|4LDGsV-X^IW~%m&NTIs(SIvl3tHKIftH* z&Dy{ue1@G>e}>cP$CrKyHN<^cGQU;b=e@v{__(j3tC)E!`k4;RNMJqizxe*v{k8AP z<8N-5Fpbk?-lh-z|6hFb+mjWS`2PBu{c7uHyp6me|MExm{eR#8AFuxxemZ{PgSa9+ z~cVR*4DGx9jrVDwn`jenR0-0$pNk{2ihIQ|4i)QvFZJ?`v5=7 zK>?A2f+~|k4O)dwSU)Fo2)j6np5f$IIVdsZpyZN+QY>;3TMo)xIVk(&pq$Ipl`Fcs zJ|9$6IizHANZI9(O2{GAltXGIhtyjRX-qk!x#W=6mP6V{4(VJur2FKM-j_rAEQbw5 z4jZZ*HZnPE>~h#7>p`(-}H}iJ756qoRX}qk;7TlgE=IX;n=u46Xq&|Bp=6 zXbE6()oE}FFgVIm!DPw8>e9g*F-5^8p@D&+A$p5TyGBDa3j311emJ~$fv zhGo))rX&^y^@c-!0moPyoSi%xqE#5!6LVE~!2))M;{{h-3uGFcERHw6Syb}mXem!; z*^{H?C5I}W9Iec8c49crvVg;7g?pR|!;B5CsWQSk496L6oQU4j)bZg&9gAnQjAyTb zN9viQZ97gR@i2s_oS3<1(Nq?O78cIdJ+5szPVIYKJ5mliF}SnN=+JoK&d|V_tK-Hf z@qefi{i@tTpqkXqBQY{{urEgdVDoLaG^V^WOQ%qbnA84L|9ZW}_*v`4b8 zdvcWFgBt^| z{WV?}Q#fwec-_?TIsU|z(c^T7fmiC5V@Fy1x?Y}5N@>^}a_sJ#j;(vnsGd1<_KI`O z9q)$=&(>}6ZJps)u*R?Bhg+(OPxlPB86{^Qh@21K>7DAr@HoUhWy_guQ{3&(_*{0G zcjnBw_6hzy3;w%2y224~z&A$b{6C+`ehdK&OFKU49Q!=w%;OOMYLnhjjsV8HJD-*K z7t}DRKk&HzqQ%9d<%3TrPi^O~JskXNIRYfyd1ZZ5mz?O1V0G#6`JWQVe$#)^ln!-< z*JOD-gZbgC;{QlHAy6~U^0 z*PlUvfw_R;NyuqM+d%aO@2n68<>Chg0ft=f9mUPraM7uNc;Zc$kK@793+>@bTX3 z>T~zBZ*7P9-P3FuoVP+4R@Gc>jR*}5Jr<^WtSI$z#8wWbyKem-!Zz!iscX3ye>D6i zM_4z9e~Pb1YR~1=&||Kl+tNi3XWTuV>Dv+N&=7SrY>7{&Ppwy8DTn`E@1~<2uWP&* z1$Gwaa`Z1f-*~jcY-&g0QIGx!Cz9S=?R?QP;fbsL+3Pb(duwGm>(6?oe&tMKW#|bt zY36lqS?bl=+R+}`8Exy;mD;gY=05}5fhMO5P3$}T<7@&a?l{Nj!N5{*b8ZU91k>v! ztsIl4a%^bjV9{`!aksCpqF9S3VWEm<3mgmNsF zWoXx6QCEmlH@Mor;Oxb@tPZ-zdfr5-{k?Ivlw;%HsPeTP7g!mdp5@r0d+c3LN9c`H zxh4$jL+*Zh%Xy8J^SZC!uBV)H_eQ&%zHPGQuE*B@9Cu4O?|r@7GT~xrE9b2*_aYm@ zJFdpOxEu8{m*dsb7}vcVZ?4AmJcx_?6aRT?!VQP}{Q>cP4Y7@H@5n8UHJ=mDaNus+ zhWpbF#7|;zzfi)Ud7&wWH#Ak`a!W;o@5z`mrVl*tCUiSIXiG@wuXqsM^MLc-L8l2# z>=6vC84czbyja=PqjVmElCU6I(%(5h3=#2V4SK7mR1Y)7a9i)I0X zx?fUn1glO(6I%cSTS0@yjz^s<68b+}*QsM-dy%Bs@wnqeLN^1ePC}CUzNWw>J~z*H zI?Z@wR>q{GaIr%miT%MN_Kqfjc^obg$$DiBDq#~$;*wqE{y&){@Q97!dTU3#$)5zT zxDLUzPN6oAfD^a+eHt_}Qo0wM-E!uRJ$69X_?EybyoysrG$51Xkx8M zEuO}q$&sF_(oirhE%z8x9abKhWIBP$?uLcO-Sw8@NBUR1N)D(o{nb)erL2f(wj=3XWFH= zd$6!?xH11pdaHx)}lF6u2-59d+|yZD5vo*{YGgs^nZAUqiLq1(zLZ4Qo5L^4wUo<@K~<9CN2$i+qt4 zXLGOJBBQnRW@XIl#X1e!`Z(6Lg)kSqXmxlkEcd$mMks?rZ2O6*1d)r+rgG>+r0?0% zahi=GGA5MKuOnz)tKWtjmybCuSjQ0>#~Iev5xU{z@|H7V+b%wTdURRZs~5TNSn{r| z3`@A68!e|7yLQ__r;eA4|2zz>$nl6h*PijLVs7ivrKb+}y{?mCxL))6)3(=4C$ifW z{_llFvn7TnyQ*KulI zD~o;Ny|O32**xa^bp+}bFj(Yt8{{(tyvb!dE)eIv?eAT_`Pp3zcOrizeCo@ZD;HfL zQ>gtVw~HZfsz9FK-*?M%3MQ;beIA$h)Gt&~zv#ui$n#5IP0~Ha*}sWb4}e&O>kvD7cHejk>a^0|%S)`>8V zo7=uDe^+pJ$$ySpXPQDE#9EzwIbY_M`Ts-G^E+hxJ7xa|>qdzPI$ql}_{4qhzw(CReu;n|hyT?Nkq$S?=C_`TJGr!!iCrQ` zB>rIDvdb0aO@+^YaI(Aisj;}6XnOSTW8Asp9TOrX>pK|u?id}fVE<5IQF^(twv55x zwS;=^ zyqcYp>VGt2mfpJ~N0~GoYBX>7GkN?u5*|_Oetvs>q~YI;&oUJ@@f_h{#~3AY7spka z<^B;!Z#d@uCvZt|S31Y+Ed|qMz2icjweDyNkE?2{_{RDpZBO{Ito$?SB0Ej$fB%^F zcxg|^?DBiG|erC`1K!O#y^7!wjDSvgoY zvkA$pU|?`+VdN53`Js~Nq{FLj)xfcU;Sl3owX}^K4Bm%Yg#}qRXcQzJbdeLza+Ex} zn0X2d=TsLB!Kcn0OetbVW_(~c-^8ZC#$lCx(2IdR%$Mb<-qsEbO9Q-W;N zj9!(BDRzffoMJg{ujiSkE|-H}|A^>Tliyt=X~d~@F0U#4$vtT^m+ zChA7#(M!_>#S*ftbe}D#^7mWwTI`$X5#e~JFaK=?LhiI_ot4^Z@nFl>OLG;)0(`9( z#$4i+n2>&fFR#!4Z};!dl47T)o*cE#9Tg_id={!+i4EXi zqax(R8*$`X#stCCDy&T>trU?qG0p{vUUIc+m-84x zjs~ljG8W896f?bWtDHmd#LTYZnOm-T>FYfY3^9tGdVzt#ETqG|(=#gVL&p zY=JGpjyoq!WeidiF5r~BIU%02^y&R(&W9W-F6rkcsW}aNTy3!C{8!WKt*R7QA2njML8vfnjL#wAGTe~YG*4wu8s{8kOF1I%u7 zy$%RZth#k!)mpP(T8>qW3ClAV*l=B(?Us98bN)dtYn_cprK)u{ozy!0eC5=+&lFr# zPK7LXP4wHcG{S~+N6;#pUapB-FRg8Pu*J+P@rtPDDHb6Y<4-1!!qu1pLIO0Mmb`S~ ziaL_yXt=9;(mu|+s*~qm-}p>@AMedodhTMbj!&Amd^1_*v-$={MxTJK&BR4)>#qmy zHfogm)Fw9fwn3nfu!{aF$J&<{4_vMiThRMZx7zre0f>sefg$ENSuT{1EGV!eGl`oCEqf#{e8M$kX4tOcMd|N74`rlJ(>gO<7 zkrSMP8;tLk-mW#jSNVExdG&3lEz2_Fl(&>MTd^HAWw2)by0*wBaMp!mMxh*nw_1a* z&stQZC6l{H_}c4<$BjhKE)5a;y6fkCH%>l=8!HuMu1w;X8yE0~f#KeSUWPXkB6Am- zAIWoa_m;5nD!sYp-izv!AsT0lI(ZomGaL3_cxQ98_re{Uy*z=F_nrH*dF|cLwst?C z&c0^sr8>u&csp%VWTT$-NkR$wz;ageuYLo@3_1%^%Ov)-zn(^mNs>+DdWz1W7&#*Hy? zyUPFVleU{asrp>RJ5}zp-npqKifuNEf34z}_{#T4{H;wLe3eYPCuDV^m+qe9!*^is zu?m$K#xEYPxtNZe?a=cOmJF(9ao4-T$iUd+{LmrFV}0iuy(-~Eh1Y!<3m5$Hs$_{w za;kZD(Du{Ch!=;u|2D90RQ#kjVWw6GZ>t-F)H=2L-?yhvFM7W3kW4{NiOhnNCz!0X zr}?_}?3p0^TjNyVq)k(n*(}Xm!XX$lwJqD_$;p*>ECfW;4C9$M^*pRFvTX6_R)57D zo}ILOhwQ&4#fpv-Z|(VHBPcde%jV&&{RvaN-?tP^FkiB0=7vh2^*6X0cz780s~MR( zinTQE4e`JIwRMk z_kp($(mmu&UASkMcsiM1-O==+-&nUsfMNMl`%^!&7IS(kI3CLs(qsF;DeXHWFyfm- z!=^1u^=dVJKC-y`NiEIQn0w+21H+}rhJqfWz(fmfC#SQ5Dbvk=b$JL1Szc`jaIx`O z$?qr``quVECue7x<1Mj32Pc<`<(07kdaI6Cq+OcDppfM}Z~4yHs;!ebJLhRhzmQw! zy52ofK-x2XqRn02^L=g))fsMCO{i8<=`{Hjr~W|W#tfrv8#kZG3=o~ra58AyrfEyx zsHZ<{$(Kx6^LLj{hQ9SRZJqxK45f+(7$pKuUl&=liR*#5Vhp!Ao6Lh~7LNwzuvhch zbr`moJeAC^l@pw~mKqvZOm4>s|pu|elM8$L9e?aFlilX9bx zp=`Ol2(O>)wRsYv6Po7kkke*oy4LnUkl|$R{5wxPHr1pRixocg4Op!G$nMl+JH@{9 zT7Etgm^bV=s#mwMd*doOQF-mQa+c!E0ZI-f#Eo=H*Jf_~P!H6!A05 zt}UN%Njk3kKx9m?&RH!XM-CmAhn)Tzd1((-UG)DO>_5wQG5Xu@CGT~A&$_ZlJZhPj zz`>sq<(+0-z4xw}d4Bi4)qJ+l&G33!-_GmVZ>G+R3fN>-B>p6%Moou79Jzub&}Ls#Jm01sBgh<^S8;ca#YJKxF7usK@h_)6(_V?~RJ_*Kiq|Fu;S3+Kvw zy!L+f&1si{{L5!=jC^1$_9Ax1nb`e*p4so$)QBR+H z%<)oh@8!(jzrV_Ku9)EcvdAN!MDMpPJo!rTWY(UznT3+Ah3q>Vk2HLADQrFMEGbkW z*dq2Pj@h>1!$YB$0xp+-9Lp29sMmTYZe?u1lPkW0(;j*|8cGqFw_4UJQU zlth~N|0xLkQcz@3@}`22+Crggz1)k~=I*&WZDZWprxU{i=7q=1)00%loYQqm z#Oe9k^Zy+cLUJ!}Ry}f!QA|YXL1^b0rYM({wXMuu!cR_m-xX~6IHB#VVwCi~{wFC4 z4F4q@1UJojDRSiTgws~4f(f2Ji#_H2ubew1IPEvD%i_?BLSc_G6%H|^EK<8SjoHI7 zEpkzEqmz11l0wrW&3Q^%tB#8;Ja*!WqI9IopF~&DYxfI&$~?zznxN?+jnxfN-iR@Vlr)?d~ zxeom4m0!o(ay?=~oJh-!6SwpXAARz8tRoO6<#$9S>bUwcCA(*f?cOQde_Q-8^akH4 zmwzSqYbFMBoqV*`aN=Ll$Lpp}4`1VF5j!O)hH?Ld00}ME>5dRlJRdlv zbPBuYv?ZRC+&TXHxyW>Jx=e`aSrHK%a^I!nsqK$ zMroHl>|!pmPJ3>BkbUM5)4!|1>j}rXu&S8E8zI3~Pl9K8{(B)3R;QNHwk)GhEt8A; z`i@1RhA9Ci_eJuQ!?jX$*F}q+S{5!4Qp-5e=hg++Q%_EDC^#})wBS4PIVaWQo$%2M z?D2dHt}U4u=a;~jw@`1DNX>s2$9FGOWbE!PmVK;~b3R?*%2~ttdZ%0pYnR)+nr*k0 z*Jtl+lZZT(Vm(WpL2JU>RI#~l(%e=pEpl^7 zd?Lai`rP3NN6;?!A|aQ5C7jHE#V%Vut2T`-+?$xA!X)!CE!S$I$HB=gO|8+VSY)=w ztyNgEDD&Bu)XDD)Wopi8^j=%hdv66V)3xTjWihp`UutE#yHs^o$-G!7Gg*XRsVV8Tk7m6x)a?8JZRPxbnhV&pd<4VR>z50s4Ms!XPMcfg_8th`V=?ks$_jrbNL|I-1Iy_N!_MRj+M`4){zITkCum< z+^Q|~bvWjB`%jAVjqVs9ze5iKy?xHFW)y4?WpR|$n6XQv?Wd@K?y3c9t2gOsZ#L8Z zsdFn+i>jed!<(TEO>wYfHMLi)`bur&E&7hrbEk7rU~@W#PXo z?$f!JNBi|}RlBcXloibwrgDglqgFk$;gnyDuglWT=$eRKjR7i5VP79+t`3^LF2dc* zYV{F6ougrEjvjI|U+C8A`sme<)qf0M{i@WQvaMrh=X1gTd@ijMRo(YJo#wUD%xhub z1dvIduF}B2`s}!2NVgy^m{ioL;5p^sSj#w<@rQN9roy z&YKZwCr`hve6?)W%f)ezXPQmEw@>fPs_^u^ZS${aXA~U&`ew!6UvIa>YVG;2nsuW| zA^S*2Yh7!c4P&&-f)|@W?Hof25*8kqOJ|xQLWF4!3 z;FGSRkefk@yE3%B5)}X4ToTM^Q2#g2`H04swkyvhAHTbH$IEBVt5%7#MlwJA9x`26 zwSHoL=7p1AWZtg&*BbL_tMzTie!UOJ+t&&GG976)xV`b4@Cta{I4p z%gDyG{y#aRN#uYlS9WGfq0@?E-0*OFINR^hhwfjZZ!1_nNo`bl{8-E5V8D-9 z2Au<6{fyM-EA5kH;7wfgc7_&fo3PRW!7Mk!MN&oozr9ci z_nkcR_32GUr{W3&TsAQNXH^!xe!i}?cg2e%Yg%T_n(DM;Vz7-zTC3DSg9o)z4gpX7 z6Z!&z1mX@Tvb3Ml4&)Ized6uThq|^w(i?vHTaiytVq`29oB#<>>0lgyRPTeZ@BP>Mr1L9-DZ?OW^>sOQZ0d*kb}mnOT&@WU_bfyWrF<^WUsh+kDB)4Xz9} z4vHyK*IENEu5A%!F;qI@$9&?nv{WdA#Q{+lN2Wb1AIPx=nw&ka%A^!?&@D29W$}A) zJqCj~#`~2nev{cer4Q)aH8Ac`blkjd#y?jcVJCHwCgCUNeyuWiVbQq2rqSiur^aUs zgx7c~=0q)==JtQ-?fm@WYZYu_|3#X_Y#iP-ya+zr`RvxE!dYKgZ*m2mcT&nYC~9LK zx!UdR0mJKgQHvL~{O577&fZ>qI5u7D?4-sf`E@LxuPy!ORp=ajFD|}-bz%910*zRG z52czJtzzQ0AI7ELKFv|C>{D?xJ%70hr*HlqHa@kM{bd_wo%s?kQgp%Rb-rE*(^{wh znrGG2HD;)s@S0Oru%16r!nJhy=buTdeD{?9{2=}L-QCl&4ku2zy%XtH*5nprInZK! zMUHnzguTb3TNaapV|>`pGA`Qs=g6k;6-C?p3@7f&+uq07q<-`w-{uP*E9M68y^a1Bb z=9-6{;a01IXK|^vYAZFlZcX3m0|I5(Y+qy0F52putI`I8)o%56F`l{zV zWibMCc}va3EGnLyI_9$8?3< z+687VUf=uDrF^j#qtBls?VB$I+A!v9VodmR@a?WR+Zs0=OUM6fN`gchrrIzZGyii{ zmDR?S;n?v9!h80#lqq+YYabJCIC0)dJ!7}ii{dJkL(Y-Q0~;$oH*HAstzanF;B8Uy zv949*haw}(^I7+5mdhPDJNt8)%cNv0=PneTdszX~7-_4TgrV z*1Cs}Yq>b)${rAwu&H@ty=h17{=xvx)gB6I8^h-Bec(P_Oviz7!%+qe1~CqK4U0y` zIf6_qad#{BwCFZ4vK&~qAV-Ru3 zJL`VSe%~FH1Iz)x3KAJ#3pX%oFeJ>6T#!Y7l<#?*V({^TvHi@BV5&{JZhR-Y<`R|2(mAj1jq5Xa6U7 z*3z9DzrW^uYVOkYH~8P{<62kht2MYB1ZJ2{NN{XsW@ZTBIB?)#mulmzy!#s@^?BY*G&p?! z_(b*aeSh>8GM``QKE3b6!^YXHGDaG|K6RG753*SI%J1tk24+5o-8}0)ED~WZV%N}^ zQh0SL3sas@hQa)OwSTz3KGs)0BXViY;$H$9c?@hEFEzTDPXu=`u(VlwbiW9jeUy`l zA*8{oCui47&M6i#9t{_TA~YCQ&&a-bR6MaK@R(%ut=xt8GR_#T*q^s(&EiKdE(M-Y z?9?&R*R1jSw2Y0vOQ3;Ors$A5V`P?t=RKoIkM?UbavW%!agBMwWRa;Ufl5wZdx{z_ z^EpjEt$wql!-3&H&zTdxdZHgbDrnB}xx}C=!zDar-l-!m80W`XpJa5gR{Fe5r>7_6 zlBed{E0;E3+7%MqIp>Jpy4g*4LaqdQt`#|HKD|Uk&?Umv<$U9o>^G{~_m2cF5(o_C zSU3Gp&sQ&F-a}t~nc`$UBJ?_sW}LIqwEA``MYc;Rymf_)h7apKmVBl7-99gGWT{5E zda`=yUcXa((brsCT69xrtny9P2dDj?S6#nX{qgGSE15HSIxiebbG>@EdE1<6ky8)3 zgf@f=YQFPjk;$rvVo+F?5!t6QZ(C9`$4m(ZrW-y#d>J39a6~f%zxol_XI1!Pc}-$p zIaVSd1hNsghwIsg9O?+?XuzWqp7eydjG z{Atd=zd!GXJZ%j*F1SZCg<(!L=j%K-fo1;%FDSMa9Aci!ux4tDCIh=-G%I)0uJw{F zr3?lgZ2XrTpWl6wQ2ps-J6Di(gRL8bZcZY@>E|oosro9j3U|1i3g0`y;G8nQ!uk2X z#9b8mKE_Q~eiSDbv0&1R_Z_|^kBa^+pTLmh;`PFsi%Ihn%lsXEnu%F4qT-K~4K_Vj zh?*kmc#NYVd}g8IcI|tgc}iv5T?83AKY0ilS{$Bj!dKD0yOYoH&|!7HNfTN{rV8?A zin*wqY!FFIQc{#Wx$8n_07$jtU2Y&3DxRrCzz8ml@=7t^k#+Sg*$TcNr#Av=H%^_pBtq6HjA_Q#HBXLoh^(2sI(w7L2Ih?~ zfBoZPn9s+u;>VTDxTjbAI|WP`wr+i!o11NtuKIvc;LZhKrr+0={%R>!4?dCQ=;XdF za@x+bvP+WZzMk+}Q@F_%vO5dS`&7m3x0B>kk+!hb2ln1UpguKCD-l9 z1Ka17_UdvP8#%nIRN0cjy?|>stHndUX*+}}RlWMQ`oGniad1*|UbFbjB@7aJs&Tm= zTJ4X=+CFRF?8vF_vFSp5D}z>cp>BsJchQ5;SrSv9HmY_{RKNYkq(7bE#)AKj3^Fm_ zgnp>a@lKKrWJ*v-o^ir;nWTo)geNNVFP-SzaY$I^L4)>|t15f}MaX z-K;gjcG2to?}l!547-@s^&^Erl2f?T{|rN{aY8sV_ z62{%nww7wj=4SfOzIFAQQMv!^T{=0lZ{J;JM8*fi;w)l{+YZ&JyuQ%z{=7Q7e`#l6N@~{%Fw!;R_6`HB%xj-5sXj+sxi}~a`Uww zI0{X?SGdyagP!~a_sK_&9`MiEI(^=?4ZN{$&XR*>+f|-M=Pbs9=Mb_eMxI=%Zd+jf4^>=U;8#c-YhX`{;9yyUyVy9t`*r>y>7-* z)(7|B-!@iV_mMf_Z^!RHy1h?M&Xzjx^6AC-XW4h!PZw)gTKC+GNrC&C@=w0rp9L8) zQp+pmHT-*WUQtc&(~k8_x*wPf4VX7FRd~5^3q4?VG+=QRU{Sun`R_1;NRF6I0ZU{6 z%kmdoVhIdg%?x}EjJJAKxg1$~SsDEOT3?Qk)NVUhr*A1UgIP- zQv<%I1$-|z@bNQco?EB+#a~UKNqNs>{=LjEUNpP?Dlk6qXvLiZv6^)ZTs+{`vEaeAX> z7w9U%@L9&`#5x1f(n9gdjpE9gXYaZEX?Y^*t0gGIV4wDpVMzi%D{ofKN6CeTQcD9n z8a{gQHAu#{e6@PNXww6>y=SByn@TMTrA}^?Ir~xO^HQl=Cx#sTAc2J?9ExR6HkRaE zJmDcI`_WMTYoWY4t03D0dB#Z$LJuY<_5YVY$RuK=sQCJ#g5)Me*-wg!MoOwhN}8LL zbU!H>8Y!C=DO+w*w*92+Xr$s=q~f_r#rKm+ppj~5k!s{7)!0v}iAHLvMQWLw)N((m z6&k6R7O7WmQm_4_-e{!JTBOmrNu&3Z#zZ5{sYRMIH)+oOq`7dCnm}W5jH=e!Pg)y| zwEL4q?=Umi88V15aBVHpS=l8Z^?;$N0CdJB*Cd_qf+7bt>OB%VB++1y7U*>5jPBP> zW?_yjtQ$Rq6nWcwl%y3{jtic15s;4D#G~pWags?yV3oI+g81C-HSabp7c0^?E!L@f z%TvrE$mMT%c4AJ5r_!snx`~?>{43I}d$Yly=l?goVnwGy<4j|HE8`%C#J^%*N}j^X zew)=_axi?$Q{cF;t-)I)@=$8QvMmXRf9x@OEV7C*yV&aJBePzXKPpd@swXSeO;-Q- zp-x5V*^dA2OQ0hI($~TcCAoxrq(-!61UAxPVFhH!-V7Oblg=lon;rA@q6JH+Z6nBj;1#+lgHvB(E<~FK4+6%P5$edL~gK%?DO5A zkZf$_tZLDGx$dlq&!a7Ela->Hjjo#b-ZXLF7tHIPDk^fx$Uw=@cyo~1*Wmajzvgw$ z>6a`SE?Pg^q!8A4|3ZlBF6GdvhBn8NWzRc@)C)Kt)A!{#;H;u_WC8Pp4GvZ!kGU2t z7T%()C~!c7t1;k!QHs?S+Xv2eznTkDCOc{zidgvAJM181g(>5N&k;sflp~g#96cQv zmJ)PztJ0DZkG`WG+N#G-o%8y*G~twqhR4+upHQ{){+>}6uOHhY8{PEZas89Htt_E? zSbUzX;oYD2Y1;Y3bj8kBxtnE8yC+`H&MHni!SLs!*RfKC0zuU}pP=7t zao48?-469Q@G`!0Ns3{T!|TvRJCx#k^Wu{?#ZP_`&+dARX<4RQVNyu{mOlMx75+t& z!W2awA6N156k8j9PepL9tLK8F3U*~a?+cG<@EuGzQ)pC}dVOn9rpt-2tsW_2LDCHN zEDi4GmnPg3i4W|xFBMa(ytePwvSy_MRgN&vQ(HbvNy&F~O4-qpA{Um)KRr{l<7-~V zYqhjrJV{jntP|#3d*7waKl!YBh*)LJG1H^lR&h<-d7{kCuPo$JnLr|2-fpJ!^n?HX z;y>j*)xKEaS0L(|V8WaAsyJ)avx+jlEVkpR|1Q0*;3-rVGuXh8$NBJh!aAEBYM%Q< z%4?MJo;_oH^-Mu4T=%}Rr_jb4o9%*AJMHA27q86{eIO+0=2Q|L=I#|9;y1l0u*4EsFN8F_ZT z&{$Hp<}TaW7*3}a!PnInD-K#Qa&J&jCmD%H3II*W161Fj1@6&xON$tbLqR#^9ZmePZp z%3BVslx$dbew)IRnLQ20i)@paq_=O*Yw1#RdzjE<*&4oJ@45xz5`_zAE<87R;oDW~ zH(AzkI&rUi^F?o$ic!>J-PNWiB>yXgH40?SS{duawJ2fR;sbrVwkBAz|KUpL;XmZ^ z^E?BadNmBBmO$bE&?*xiVM7d4`N~F`>jAJ6}|YAL>_S5^US; zFPE@mvBI0UsvVJTdnR7qow?i3>fwudEa4j+3|?L~K2^Q#VDz5r0eds6XFUELxnQ^Q ztLi=6N%uv%bpM~R{LPzYoV{bQ`2L$xB6Acr@pNzJj(*N(U1s}ehON&0MBalJHJ9YR zwNZ~|)StaT`sYkxt4a4ekJ|k4vb*i#*HpcK=JvqqRmZYVMMMX$SGarR(H4{B-3~T_Ki+4Z%bCo{RPkurHO!O}UVccgciG=H0*)p@)^^p=dnqFbJ3&p0dAGrTh7R;fAf!&G3J zuf+B6e14Lz#iB#st5jcG21ukHmbUi((VNWuW4^o1MDLo3s#0^R`hCRE`sm_FKj+y;`S+?!>X>Znbks-bV9ec34hOd` zH#(je%Pl6Ww(4Sm+Fvh?9MMy;4c3pY2Odp-v(vEPudk5m9nIK1ednL8Phq&VNnpv{ zZo@_S(a9gI9zFf&a$8$U+3)n3&aBE$ca0NuPjZ)wU5NF(GS@C`U%I8!#`MJJ6K$1i z;@*GQyIx4+b^z;Z_DA>i@2uxxVqCOXHn9D{;faTBmBjL!*0P5m5fv!Sb3ZX_+9UCw zm-mYu-8JW!!=lI8*B|*VTH{`~$|Cu=d(+mn>>@k`S_hTlWD0%a!b@B?lvX^rrmvhM~yguQ2eSI@y(l4)Pn~YDp+s|3RD8T=&R(F%w z5l*=WPv@6+OFw?7v(@pS-Ruepi*v z7?Z}}Qw4X+uuED)HrA^QZM%BQ`t3`x@tG;S8+WN0u@Y-ID7lkng$ z(EBwqZ%^Zd`mb3xsUd8vI{(!DbVe(igT?}!;B1t zkdAN-tN$-OKdg0{njn}I)7koX@-#7FwgN7T4G#{sa7)|uSZsWBv`5-HY$sR9@{?1v z{r#4xdMO61Uc(g=s^KN(GR?c#?oMYi^Bj&&zL=v8$_?t?!e$>d1N2;&RFYSJv*ErN z*q7<}%I(LJ)n^+!BAi*S9$0^)aW3D9G9@9A@r&m zQWR8A7fp&>a%1`=hxfI=qd245JtkEPB#H->2s}*zAs22IgU6JcW8b1$&6NNQCTP5 zCe8`+yOQ27l6cTz8BdHwVC>{|Q>0v2H?XKVwamKGuxxhR%hc8D_Hkve*>uh;do4?2 zlgGNKl!Mvp_oX$miglK--O-xM@cZ@ps3%ry5}Wu|s<`s1O=)Okc(G+_&e6sc4fh*< zEL}^)+P=tc37X{@u#zM8;*x%*g(ojE-aI)iAX+4}Yr-D;lWxyl<}P4Az^o|CexR3G zhdHQ{bzolC(nh8xu@b1vNfwfnw^CJ)2^C-R=UMQ)J=Dh!`@7N-2Yrl~pSvx^Kf z!^Z}tjqdNS3r~y?o4qN~U+_{*OA5Di=iRn#_BT8Dy|lWd_A+fau)`wHWfdc*2Hyjd z=_0)Nt>Th_&$Pv*X zBCybI=7sDclj=kz&SwXuvc2FvyKQ#H^L+xbkJH5Yw@IC3YT8!J}>y=YH%{IMp5f zam!c1Kfdn`q(wTp^*5bqe4^XL(s^mhF?MmwuHrdQu0;B-*zR1{sWO$b^NEYY48N*G zevxb4>P`ZwN6sq-cJXXUzbPa-P2u0NAIdCFEj{_6eDSY)5{i?}8B;zhfAHZj za&2c@Sf4r)q2{A$O*g*`OT8EpvI4nmvjnbyu@a7gfM$vhwsDKP6;ikHVMO|Pg^rplRj;}TX$3bh`c zq?9T9#$iw7p_U(_OL}tGOpo{>sAOcak|}Yuzj0AWeO$jn_7`$XAPjiBx)t1j-Fz$BF2 z8KKI}=hOt2?dX(5aa+ z8~uVmo2>a9wet)G2Mg@5df(U!~!>Vcu4j zyBp*Z-q*a}eg7xlZApB}Newn-U0XOVgN zxM7KG`nrUmisXk+x@PKo+~`Ve^2oijI@Hp0#jm?PE)^<&eqTAK_^9-UlFKcYgVWuP z`w0aae@)r+@bB*x@8W&6|4w7B*)VS>$D}=$vtP2V-L=T>(7s6;KHFMaYdoISMV_;| zZy-GS#D(RXU%otU`Sia1IfqmGgwjQtj?cTte z(Xb(@GW-EUaT&v}&uO2;J?37JjM|pNKY{gZP}M1QA%@AN%#GnXYBjPE=Ihj}f3XW~ zx)z{xFuiA5iE?7x_m->^;>k};qjpX;F#69?D)qwNdwGHyhtT8e7H`spmWE|cnTjP@_GijU(a#!}U;x@Bk718=RljCHVsw*cLGOEntFZ)~y^&QM8o-eo3Gmsak6G_`DUwfT>>FH4&h8ciC@GXw<7 zL<0TiRESRZ$g-FrxO|#}z{Aiq=Gt{_iHZmPIL!qkTP#`w>qHvm>K%nxoXes-RAVgK z&%e;}nBgZ@7LzhV-~dOj#zYRj0)c<*4D1c=y8i=J&8GK0&FFi6BB*l$EB}O?i(;__ z&#Y=IBo{15W!u2uzkpTfhJ*}bclh#D`qdQ5OVRTxo#eHLnEH|WOt;Y z(Eg4tev$m zDWREDCvWF^^@4@7fFbIGyFi5G_Q@P`6tI+IayFIt#@sP`Fq!{tJ7=#M@+W4Q6upGVFh#GBvlSU=}sZ7$nLQ1 zU7U`+{m0!5GiN9`PCom?n!BM+XX0cX^XZ!&_I7a0>MEVO)>Fc*({5r#Oh*96R!@$t zowIkYoSpk(Rz;h@rkk@5YR=J2(}{e*u;`@w)?&%I6F7Dr(rG!s(DI|Kd10}#qNdQz zTE?G(4W4Zwl_9;B+=?eB{5;ykp*U0aSnG04=@!iZhJpz?jhU7mGZb#Nbk7ucV9DM8 z)A62px2$Ig<5a;7-{(25n052!O!<#9ZH?`%o{21#%zU+S#_R9}s%ldXXD-yZD8sy9 zq13NDJ_Xjxl?%mI&DkTlNHuFwfl8471D0PB{bxEkwm+WJ>M*-ALB8XEi|SR&%skEF z=Tig)qS~f7HCdmiv0pJ=GSOLTYG(e4EW1R!uBvzC{4EwAJX(yU_L zC_L@VqS;$JIieEMJzt7gNC{oPDQ)8=nAar`(y9L-bE%?Y_pa+pBpqGUHZKvlwPf3g ziR@WjAy&~}D?=l!grd9zSWFfuKV14hvqeO)Cg9eJ!dYP(%(ywFgdzk|^Sw+$c9`_N znwOPP?RaulRo0s0U29IRT66l9>H@{N$CRd>tt^_`z|oSh_IlLpzy+)dQW70q^J4#R zTyg8>;`a-+o@T9Eb;)~T)%4X`0#m&f^k)gxO*8&ewC?LFt(500TO*gX|1@~5HE9`F zoWR9?zbt9pi>ods&tzcrR-9U!66KKgYq9&`0tSWEY6q9S2{HJ#YNHO@6p^SkXSg;g zYHw2Z-lS^Hygu3Ib z8GEc&KiN6`ZHiD=#FomZB0paVeUx1Fchv-!*IrK5RW+P5uV-usdbO%-rXb7Zt`#B^ zeO}B@FIuL=D58I4t(A3_+o}GBiyNcAY*h2!UYfnVynFl28=MgWtU9mf)J9BW`@oVM z$q|(>v2C?v+kYux%h&xryB9x_(hTDezW;LlXWnu>TYh~T)m$E^m-0Q zp{?6jv9!$3|82N?hY-7Ulg`bp9#K(~(iZ%FH8b5>sC9yCNTpDY6?gJ$k;2<`#k02` z&E9jod(X-0B$KSomwqjpcAde;gyH=*>t-&U2nUYv4c7e!cTC*9x!>A%U)pYc$DP5a zGqoa?>}sF8+H9GyqF#1(ErXVDfc4TK@7m|t^NpuW_l#J&>h`Xf?hPBf1>8&L{ng%( z!o4amoq&qJJo$qa?L^MGY6MAyDwH;v0ws+e?yvSDT7)l z15W_Q+yIWq0@mF{9$mkM?*4zh&x&ipLu)}7l{WQ->z+xknO5yO<8+GZK|di&`^7Vb z{ItCpbOio~Dl9n_9QIpq#V&;dzxSv9-t}p>ii1ajfB5c2)w{WKgl1iqlX|lHp7$O- z#XYOcm&?96md|s%Q0KVe!k9J5Yj-SWjSmUte!#$YfPteSjon~J2ZPQ`M~)BN!X`cf zU8goruogTty-MriVW+PBE?Haheitb&)DxN(mg4TV;P)0E8*Y~=2|>lXg7)nEW4&(e zwfUTPwnn5mzqS@+`8;o{)#M$~LR+V2h*cjGR!s5e5z5wCE^2lBXwI4AJ!cAQbo>Hl zUwI|KqR_#wz}i;L>bHSG`Fq|Wq0Qk9tbG6H6kWMAjlc5n?($-ei8FN#PdZ1RyfJ;> z`!0bXbHNSA=dp-v(^_~WuL{O~+lpmjh~^AyYPRU#XGWmrxzC7u>o zy;Y}iwcEwhT))qW*eooP&N;c}qV(B|vbmeiXiJ6{Ft9kJ^L$`gEa=hcz!CI-fh*t; z&xC0U138TD2zA*A^ziI^GDpy1s{i-MoiD0S?qX-yxuZe;xQ zXM;-Rfg@b&!{3}@TyxZt=ctoyGVj~&9Wg?gO_TOoUo5q}rmc8J?9MT{v)6LpUdykY zsu?xggf)*#z(xCw+Kfen?7Z&+4sUYpH%?po$yjy0E8|34OH9V7J8XTIR6bB=G% z{rPe=NXkp8LdeTke9;<%d3)@l=dN1urYkshrs$vboQXHT`#7Y>PT%zAYT};@(}J(5 zDr(Ns7D#w;cD2hbah~hD&)(kq_IBD1u9gQZeg>D=0(5U>b*w*lC?er(u^YqpjLl84 zotD4$KIUP#q?R&$l^Ej#saTn-y}nzQao)V6EIrYN+dVZ@#L?xsj}PO9(~&h7=3DK{ z6D+xZs%z=m{mZp(alJV)J@(i~>H92#_A2K6-zfeRkCTior8y21BfJNL&V zy9H13CZ4&$CUcMZ;kqZemp>P;EK@$ceU@Qdau#>*`EcLlf2$vVw{2!%xbRzd-*us= z`796OwAXZ9H}1^6yKUBk@WdK3mh-9y4IN%bulghC@uJT)xB2kwi*kI=t9Ee(eGvF3 z&cJ=(X5qT$AC|{lJ9FG^(j76A6*YSqK3sg%nRuD0@$xm@+=WZ-t}H9NfA@(!&z0%X z^CsB|Y%RaLZmz&ros^ig3lZny{dA>oZs7_{docIyajlo(<>d+ubrjea_$WdWxnS*k&icOP}ZSaM#}FV(e!&UV4+*rY+AZa&7XgtV?%K z_q}~TeQNc8S@|XDLdTpo|0%p}d}dlp?A^A#FNK5esby9<7>J}UO#xBMru8^Iuyn%V87slK$}==?!QxtfnISsb;>i} zd;QZ(@8)oNWaxG(%v?Ic-&Dxy+egzG9w+l2-aHraGAwlSJuQtQfpWc1C!T)FV*0E# zCGzS!wa4c^+1JM?{aKV1S$@S!%H*t2=eiKXc^}((Kdq?LXO(}s+VA8Pzm;#_JkDDr zuwXJrO7gwA36T>uSaU+p|LYU-@x2&x>X_%@`AfaN2F(>%Wy}3dox$YF*Uxs=Hsw#4 z?{2;RNhR_?*sgnD5_%S-|DVNi{Dkk-#`kM;#FaQ^Gd4K*9|%ic_vr}Fm%gJ$Z*Hk_ zDSy|T_VZ~-4C-@P{S_iJO}_q&{W|OZ zW9CHXJ1@lfCrtaA9=XL<;6btL7XLe&0w23-y!zz(V{+cS%ubG=1G0bku5E7E#c}_Y zsmgQ*5mtYNl(wx4I0ab4FEFrtQ295{m8qfMBs=w)E%(~kAKW_G{Z^N^SF!poxv}G! zxGK9qppeCk&MeK z*QMON^wfKXVd}Xhm6HTq892kt7I`+t(bqMmPVrRs}AekS=rS3Ix0Jkw&q=pwjM zFr7iie{0^;TUTF)Z%91ary70jP2`sNne$W*6ddqm6XBfcqj2@zp*1S&1I{D`al5Lk zYl6SEq3;j$lM zkK>Li^82MlRHiJtyoT|Ij^y;jv`KR{^j`dUkeAoSlVP<_TI#XZ>RpU1GrWzg82VJ~ zji$`K_PhMU!=v@Fyirf%+ZY>)MI8)(SIpWl@siH@3zjv_%o0Jll2acsYK94NPGtXb z*pvH@P)LCzn{>$sM-Jtd0^PHBn!NQUFPNOCHTg;K{}o#%UWnE(n9QdAW<#XFg|o&} z9B%q-*Y;V&yMCeG@3$&~^2&MB?#zyD<*$iBD`tw>wChPyIYS;De$v;z2&oO>niI^ zQ5(xYue@62Hf(n8nzU%8zpb!Ou;RUtLrm(7i$pR-=S2w@1o#+VEeZCs{#p{i<$dV# z)_VpfoFbx;${SVq86$)j%P>YvRS|YK>QQvGHViNn3x3sNd2XJ?OHT%s-ji-Rfky8P znf309HZZ$9eyySuc&N#9<)l3?F7DMO2e(4(A84rRsM= zIT&5myp=pSiR0zXh#tNJH{B=l9Egk$_>BXEbyO&+_;#*&K&hyplj5xsO z#qhkyebS=mF7CT3)8@K6u|%w7c@e6jd*^IW_q=+$m6Lb9lS+6vneW)mH+>5ZTRv?T z@VvT?;fFL=K-(FalZ@*`JHl1i=INc}ob$T%XUUbszRhEG2F4$mtpff54vbtA z8rTvP%as^iMFcjier~FecVKY>Yw&UPE{@Ypu9_lmB$#$idXTM{8_cQUk+zd}SwO3H zN+NeSTh|xC98vBioEjN7R)!uia9W)pQ&YsDDCcydO;06B(D153tBsD+Tn`teydP8j zUVKnkZ|tG8WX04_l|}8EnM&SC;fD^|T-0AEB&qZ$-Nj^CU~hIxvh>{_ZWhM^`-=B) zDDwR;aJP9D*#CfA&^6-tRP`5u6RM?8YB6~lF-ja@jQ-R4LC8Rl$;6>xJ>yB8B?oL; zc^nug+jPjX{yfS2VPj#qgF_zMfd%jMOYWtbZj3=bEcXhW8ccILOq3$SHpMmRw9fgc^zcuB(cho`4QwF`m{l_z zdA%+aX+4{>dB(DrOMcGCN?I~)&dQm=YE|M)3~NGX2&=mZRZUNeyP_v4D{$SaSg?|f zv*cyxNmonDmH%^OLzWpY&GgN!3ZC;UWO>@p6|v_ewHZ2sv@aj=bkT1*d)y^ot;67@ zlS%r7Fk3Yr@s}$@(oTllwYjRGcEy)LZRVxAvXnTn#*;xIS(E$>JUgvZv!n0+3fplk zbX{?3Vrb!|GwFRCIzN`Ec_x*5>4-RS^9w9=THq#J=Xadpx}|o==Q8&tT(1<$Ohw&( zcrs`TByBh`F~l}My@7cG4?~JBM?|dZq?3-`bq`KW2)X7Oe&bl!w#`d(b91Y2&uUmC zu=}ZQ{^^@%+T@-v@+z!T>D<(H@7**dH`9)E<^wwlUInSW+_cn@!~IyK%T&hcQLN8o zR^5K`YuhIFg?bDE6Rg)*{TEffk>XI^Q?xEpMQP_@&i8rAGosdRQW0EZ%IO~870tjN zae!H^ppkcu&*o>H`4)`#>oTv4+8AzE_@Q#uk?SD~k9FdlWT%U+ze*;Cu`(!M7c}$| z;%Nw(7QA8}>jBqS$q}7FE-Tr7CV73>eTzMPg~N)Iw;F5zBrC8-o^V#%wA^pbsXbaL zVSLL3TP8aTDQLD#h%Izd)fY--n6V~w(ki2JADes6j9LsNEI(E)J2FA;@(e}Mw;sKL zMaeS^B)wdh70-QJlWy}o@_f8yk$Y3MfTj3pZ9%n858-DFni-DsjTxtuq!&JG_1P4v zzjsA|>!tJ_hF2R{cV2Z8a$O@Q)+F$Mv0BSg?nh~}Q~8ej-YZ@m`!_4%c+@qfV_POk z)J$}E{$9Oh+f+~H2@M(@f@<+n#j?k}k2W89wO@ASSI2!W8<`~>Ze2=yvs_atXYztu zDg||(>(c+`7PLp-d93!`V0P?;&=QFYf9`UvcfXW+?njTtk+g3ctt$jm>t`yi{4*(U z%~^q*=`OcbA8zyB6Pwqf9`lepz2Y!?*}KRkvlX3eEyC~EuB?+!zo@g&eCFG;0>_@- zR!h+HI5yLAcJ|?v2P&R#qoRWf+mFXQGhSYKHus%KhqsL_;{(g{g^OO#in){fZj1Nb zHr;1c@2k7M`vA5Ir<0x zx|a3Q>YUw~{FQf}$9>=Zyw*^4|H7@^?-@7?m>$~R`8HjlNh!FEbB`#K!SnRU_uPS5 zU)E;`beuo*bBS-~bN}6OPnzo$bGC)CB|1I2w>-75HoiqM2@i_eZy!=1I2F@=L zq6dDkZT#c7F8Rxy4z-yXQzuADb}<+(w6Ht!+4{1xgUMtKwhjk2h5i2{1MJ!gEWM-l zO_Z2ARYQM$bf@rX{Ye=NoO2GmF18o(aTJYl6cg!wW6U|@bw{3%L(d5&={*N^DyFd< zaFo6>qkxNHq0%(T>Q29C4)z^Wb{qD;jP5Aa>hSv@-mcX7M*GmkSt?Ev(=}8iSue~e zOSC$@h~ve>gBz09ZwL4av5^wI< z*H+P>J%LHxW9@TkuGI(mmM}G#+;(O#P*^!*>XN`cksG8~G8kB2EPFM%i}8WnoF50e z6AX7JsBGcfZT@kwunx!j$NMZ|T*Go)!+rK!s&rbZ=&uxTY+j(VJ3=BLL+gri*MAp} zBQuH)+z#wvG}tHp$Mx=qBOS?W9#`y&bPzt5uq5<=8siG*&qs-`KyI+l{m?yWH%Z8;~xW^b9U?B3I{&wkUgk|W#m4so8p$mNo7%=GuNY~!5_ zAKWK4cG_19;S!2xk^rq!u@X8+@8Gd_vC%oGDp$ZV6}Kr^$l5xq`M# ze;Va;#mDz*%vsYW#p`caoEVPUT#?;SwRTH^uSApY%@#>}9-m`U4CykR-AQ)Wbo?IM z_&tf4>As4SS#5@q72i@BJKM?wTH>C1I=h*} z|EPq2)6DtbKKN#E3e1=>o$I&XuQmR^_xNvc@ZW9Ga6UwG!>wZ*FZi!~;D7HVQ}E%Y ztuCB4hW>wY0@!N$SwSHxf*5JYTi5WmQ=71NA!xBYO5mOf0>6$K%Sz+nz~pIo2&YH|cBmq}rRl zXL+aR2&fe)ZQc+#^TeX_Pi{`TaC5@~r@zIW5uUb_B3O+lMY{GzE_Ds|U*uzBWZLBr zxt2ra6i;BfmCE;kB^|Atot0ut4h*ron{1Ri{)ZMci0_=AsvK=&6ul*uW9!t37j{W) ztetFQbSqMW#dg-l?n$AncRQv;ocyPFX4&6M(yUQdDc5~1@2t~}2|sdl|KX0wvfPV; zVzQZz-Ch_meFD?PBo1bekQ$=~k*(Y&Ja;cn<=X!=X4;iKb+eadR*Amdv;3-Z=MgR6 z<3}$EM_VtuIwgJP+1qd3PUIfwo)NQgMNC7l;av;&Sq{>>f2_Z7_oSe0$MdD`Wfyt< zx8_xIFaV?n4L^NO#{{&+!GYq z!F%%LG>fpFMT+~Xcj>0jbq97WsHei{5IPtve?nfOp%aPpytZ#}dxxCbhDx|Mg4v$I~9h z4-r!x*8SY|z+kuR3#L16zxwZdw7dQ1e&|aUry5<;ZR^aoZRNIk{BVP_!JZD)oxA%q zc66NC7{qC-b?uV+wgE5zWv?FpxsuK$zO zSxl{kg_eHX4*Roh@jjN)b0MYYgZSi^(K`dTT1-CSX?gv;>l0nsC-u51ewHc!qsly7 zr|~i6Z8vS+^n#VY=2M)E+};qi$I0_{q{JPVqLH>Qxg#?0X;|3$@NbV}!-Avb+}+m+ z$DVuETH~l*!BC|4oV|d7RY3P_Yv(^>4(DJ7mtd2PFIWyz9ee8gGi~m> zV?AP=dkiy|XFRvN!dqF~bzzB2kHgEp3r&x*8YVPmMa+CPCG%B|)#MysT~;^U@ONhI ze6Rk`V`#p4Tz=j)XZ*>xH z>Ai8$D^r`dk(>EI)RYNLH}ZNP_A#+^O57Ej`EZ)Zy}aD?TUYb`zMiPjlEKTc)hGA1 z)T%%zQwL8z*b^e(5p2s^ObWu-H(vx-74>Aqk z-+4WGPl`_Mr+5FqtO#p;$FYy;{gPnenA6wFs(7N8I!`$xbAMmQxxL(vGDK6~?6LZH z#Ou|G;|rej9oUp}DV`-=`-|S*?@u$n>Gf>y-o5j1=P}*RMe`J%S7l9e>-=lhDSx~} zLA>)G@A9{{w&`V^-K%a&?6*73tLZiPPUHvwX^jl?!D>^Z`zXWx0N?ucgl+Bd-sHcrm(Cl{5yOWS^C&-@d; zHu@bZ`}5x;zawrs*X_4oW;N~KkoWTDQI3bo zc4wBnnS8~sg z{5Rpwz1IddBL&sSI%tN&F!A{TXTVu(<{9Uq%-McMve zr!lZ<&Zu&f;aj!5YO~}uamK2LRm&%z*rB{-!~eXb;;3C!8}|NMxxP<0xk|h{Nvv7; zBCE+F>#skmmdi!62E;@zG+*)Nun}W~gv$-j`*ROY5^$bjQfm0+;1>?3(&?O&UT!?_ zeetyVlAFzylPdn4xaqmL&NIlK)2Qc{@fT6K`@ajj?UK&+3LTeu^@3xI;>pV8zb9|| z{^W6H=dzBq;@Wc}Oc+g9O*1_-Q$wd)kK@S(H^rQa^Gg?oD(u=CQtMq@xJkV><&@o> z9bG>rb4}WFIPYqAw+@HB34?>kk(oSI8`zxL3mRr$&p9pr@QeKaGn)TD>vx{BJsOz8 zSgaA4ZZr{uGv>%jpQPWk_8B?kl?6g$N9)m%&r zx!hVh)r3L{1g|vo%BE}1h)B44R7aS3gN^2824`m3V52=nLh1+o#N-=T1P&~B4Pa6; zdhw%hkw_1_n%xA=Qmw12!qz99T~(@meO=uCCSL6_otvA|&M)%4J@JBzllW4WUhPfE z%NKB19qL^z-f*sY0n;1Smj-K2AJA9yQqg#j^{BCXwV0WY!2!<&!q2^8OQ$SkSQPx( z$j9p|XVBJV{)_$AR++xOwl4l~pKi6;k+ZfR{f;DU{OB-S;=kXSrb5NT2h}TszpR?5 zczm*VXxSE@3pJ6`@cOK8vMx|J)r9Qaqbj^}N!5EJ+rbV5n;*aR0yIrvsn2 zynlRteZBqvfB*h(J|^az7ppQMk)=UNI6>I7VRnk}*HVGnMn#Khja462M3Uwh9$OeH zeyVhCvBFC?(F_*e1xG_(T2504RrtiZpvU-9#NuA_M>7`pZ9X8e(A8kq4*|xVvf;N} zkNB#K7KxT_m2o_)DJn8WEYt8J!yDfx4yin4;lWdQVml|6vY7r5_Ar>cMZxh1qr zW89Kw4)fkdET3EcXy)>H)p8|AU3}t7T4y`jeu#7T+cTx3nP2G1W1T1-$r(&teOtMh z3t1<$&YzsSBBFg>RI28(SzQ&Aav5yGM422l1CmPpbJ!;>HuiNTerkzeK{8(CJqnJ66CesR*NnI@0C3!GY>I7~_0@~S~ymAj!fy3#$z{V<=) zO4kU1ozfmN5~nCKq&lf6IF`@7lDz)=quJ~C{eD-W>D(5z<&-d&$OZ*QPK$(fA$~b& z42=?*6B~{Q2gev5a*=X2&c1$a(^1Wz z>RZm7OnKuF5%2QFVSl8i=uU=`pLab!8eX~LTCl%U&Z9^_>VoSD&RV??KW4cd51RSo zJgzJ(V%?Cn`oBirMaF(-xt&iYS{DXAHjc9s?U4w7n!iP0X07h*(9XTa50@{Vx9ipF z?YS zPnHLMxom$#iQ%NPiJD_Cv+Z)9d&~(|ub(fTzwcLi@JmhZK?wyQA(b%6wwFt=mD6!E{T|k9TmCvmQ4C!dqF8qMb0fk89x`}3tx-9|=>GCS8J|My8BbN`#8oQV(J#F` z_f6>G>Ev=bGHuo53H;GnPo$*lkBjoPy)8KR`Khx^hu1Vmj;gvh9de8lcK@wiKS4OM zKP1BCbc;^EPq5;3t@xK`^P7TAr?Z@7?3=m8cUphJ6Yt02n;P6(5+2TtPz)D3oO!}J!RK-O?b6>dRvomC6Ep5HC z%ZDRVLUx(Y(wQHc)HiEnUDC-=M67e z-apfgU9oE-PCP%sWB5f;xJbqATG-K5-!84*|0I56&y}mIk7=%3_^|7y66ZvhM}ax6 zJ{;X)*%MFdg>K>bsgj(Xef#z!v+cX?>gF@1Z;O^o36S_-dqPMvLy-NH@McYxwbH`7 zu9olxZ|0w1I|nr^f+Oj*rwF)rft z>wDbE7Kf$o8MIsT99ga%8%bAkg`=&Ek#ck?){raK0v*oFvc}7!L_gGqPd|f6!<$}wh z+Y_h8neCU&e4KXw$9>LI8;`P26z=qWoZQnR9?&DQ;l0G68A81laFgdlucGgzkL;c*y`G|T(!w%>gStFR?n85Y3#^x%6cWkr2V0lA6>nsr@ge> z61Mu~7gxX3IbQ;%T}iV$S&^BQ#Be3}+O2zL+jqZxo6o-?`by2Jb?h|~D?8TS*(F?@ zs(LrxtNOwv)=4E2lNU>+{a+EXnInFY`XBR^5g}#ll24``%>B@;Z1a#Sen&5x>5Tbl z(u%X{3Rc{lJE7CXbjyh{!#%=DZy3aHDs_tNn7v-waqU?rzwK#jqsuQP#d-HXG@5UD zHv50x=h^i~`)&v+IyTJ`nD<@g!T)Kg4*pEV)zc$)8_4ONnD}o(Fu%*%^NnKUa>cFxO{k8Iu~$y?t%eeP{`_>&N^d92-B^WMx!NC}AH@88{ix3K?&^?hl3 zj*jPXMcV^atI8Xzjzq4@iQ&7V)bM5JP3iYPjyv0Z+H-fV@T8~Z9Su8HitkiOI=ig$ zc%#dWke6Yrrt>{G-&Qld+THuhzEEGm#*U9|^S`++kSkVVK5%-{ecSiuJsqbN53S!T z|F89MM}x4WgrfG|&(5=Eer&li`zMFw^6a%r+ct*Hdby(fmor1>-*yj024^<$8LNyu zoF-(yWxpu5Sn!d<|CP#5E*EWm&*9z#}9+^uQdZbBB)S%Gax2WmpiTF2Qp$k@dn{-_R4CvaxdSc#p80 zivOA!#e7bVnd3ggsRx%D4xRei&KoAg_m5r4pkdYoAxD7*VV-L|LJI>=&cA+=rK52E zDp|R^jPqPYoFv~~3_sENS~U8eBg-=1v#VlTcAvNxqB7~P<$^es`THANM8$${ZMadY z5VlVAp|lpS;s+VVn)tegLrgM9|F4u6yPGJdcR=nLd(2-2XAy>@2OlbK6N$LW9(pC3 zvA|zx&6LTuEI$nbH|8AkYJ6aG_5WSgq=(KKiZu-`YH_y%N?H{|Sz}DQL|Ko1?-gIs z=_xsN^4Ah2rAv$EwfMdK$X;YKU*+YZ-hdklO`Q_g9vN&C>dClV-q^x;<5X;8i((re zLjj)#4|n$tuJ9|-I4iLN$_140(tDy3-a3OdRxIlZ@qIm1yg z#Zk$1Zm91uW)UZKkweTkjxomEUX$XgE!H3$bC6krp+9j!Pp(p{-~nNmE5cW#S1ouP z!s8D;NzNnb{~X284IQ$g2SgQ|loI|s`h+dIsQHK~rcunJk=a9$MJ*-dT*n{R=&Mr$ zo#!3(>b*6O$7_G;Q+uGFx!CS=7%D>R9)wK6a~(pj)5&LSzx>v^5ZA!dOF1`P&}vTH6c z7DTLZ5|L?OkU1dClQ_3PExRVYqA$Jj&@ruy|5523${r=pN-jNrka507j60@mX0*}~ zErDmNCdx&q9J*z|qW9|Ao}Z~sC5P&pTDbFC9rTi#JQeFV&Ary5=E37op4L;;#KL$X zxwh#=-45=gtc#V)_+xt0+)pUaYRTvp;9zffpXij2|=@Gt$FK zm}0ojYKb`XZ(9;#(>U?avqKj$-etZBouU?Ul0{+b{lZ_uiZ9feYF4mIK25P$(cPq3 z$1{l`U4Kz zm<bx zr@5iETqzYhohn znYAuq4HEWYrvnaUZGP4<$KYA$nnTmVSRXIp(|C}TWfI&I^>R6z&$cMOtyZsh#IY#) zoZD%~#}^kpwTabd(d)+y%MZvLsFrGA?pVF$l4iuUY*F8H-V3y!$2dO8IH_fEV1o=# z*v{9xPt6l^Id@oc4bzJSA_@o6SPn3*I3eul7aDha`YD#3El-sgV;Qz+?wqtHyJlAJ zsW~>A(zB=Loc?sYn9bGFZ&{{`X8gX^Y(KZJU3(ARRQ6Q*=*>9$h&>=`5Sur>|?)^te8M^;C!9t@8=BKBk^~QZoup zO?k9JZ`l@Z=Q#?YJVMvbIhiNjdGhF8K73jq!XtECN#^msaISCpjPit|)NGFRyF&G3L%Y0cR`ZT#;SMekBbcp+K9|6gzJ*%)T^ll;OP_@xaa=G=ERxg3|VEMh`; zPfjuD4}Jh3D(u%X=G;>bky9vfRm~ zt>%r6g3-K}{|%f}fl4>YzF)@K&6UohVt=GUk}Kck?c0h^dkS1- zHW!)RUorRYoEt8yO+?q5R)0Pa`A(v#^U#5*iutX&;;xgqT$x-Lcf6Zr#m-C2vZ+UB4{8KXDgr9{^Tg18Uvm>`q#G^SjOa|{tb)9~1(B3~cc|w5k zO3m;Ir*Ch2lszjeG^Zp$py9dW~K)`%@5S1mALB&a{Mf|nx!_8v*ev`v4-;( zjoYi<#W+gNG}^1CembWCM+Z`gS!Z|9b9`6F+)%rxGgcQNzmn`>XS zUaK>lS+(t`E`xx>wpB%G?4M%&PptJUi~8|3-{2{;jzb08(Y-;e8e6_)Ybz!7mMovL zC2Y+%J8n}ahi^It#VW#iPB$hdC5Kx~{wDaIHM0D+JAaF%_-AK*^LO{YF3(JtSokpF z%eN4li!L_|6J6xpo|OGa`f6#sE!qCREVJro#(5uiPW*Bui?!ROw6y=NKyR=0W~mk~ zhl*n3*xTO)@0*@^yJXG>Wqvt^1&^}I{av@0d<(a*sGR;O^nF>F!Hz0*mxB7Jwr|Us z&%QsF*ZQ3GhoH9NDw`kM1eZ-KI-1eHgYmwpYV-F8=YrfDZfuNVZJzDB<)o)`uxnrT z9R~{y^FWJL6-Qf(OAEL^UbS#IIInYtgL_y*c&G_OpJ~JDZ97Vo4vAVcGTShSUHQIk zZIhVGL1vQ!!hg1er!ab%H^jvMe6sIH1#83V2B*v@iN>Ngo|bbwE8W!hPk#G1gCov; ze)~J;6Ut06jh-*fCPuT)6K|jQ`&;gs@B8l<$EN-F4f^fF{V3IV+s|diRm;n7bl+a* zwPEY+jj5q#W>&5q+ENFYV;V&)7!#s?E>uxoz1wQd|L<`(ypp0_U%zv0Nw6r`yxnPz z>I{+cw)RJ%JG>bJUbKAJy4?ErW@qchmi;f8A#A z;@K}&@78VA@526<*|S$Wi7-WX3kIvs2n*7ViT&ajQL^Rr?|q-GV|{lQc(*YGEEAce zv8(-E%bTNdQi$v&DFR@428nCwj)g-RAcXRx8);4AEG&ytA%jtIhWGJumc(scGY*{E7TwBx((F|9->b>C4^<{vCN?thcr%DNFqfDd{^Dl2 ztmo*0zeiQx9+NqH+-7B12G8*W>u!f@i&-3GT41~NNY9Zs`esZ2-uFIpScK`QM#G~M z50A|Fbw}j4(qDChdw2Vr%dUCH1uoaWOAFls%+CHkmo;Ua3+69;QPXFI{q-w?8C>zEjI*rVnVkRCF7#La^ z#AHf-2qd|53TuXKsSr$d>y@@F`|?9D#bctf=QNW_p;WJ_+L7BzehQ`e%rwrtwxv=y z-EXdS<+mrD8HpEKnU?%G)43ubXsP#1t+y#6tBzOxLvn|WN{gEumxVYGJx>>DMY1Y-%k=x7uN|oi@+?;uRTdj0?-re1m z-@pBpt|)l;|8S?cd7VsU(bLm2&CCDERF%BEyfS=yoosd4+uJ+KzyFi1srdN#)Y$)>+Amh{`vj;fB6FptTGc0F!9<59ApuVnQ)LzwnpF( zhw7XOhq!e22pr}yy))r3pY0!kBLc266ORb_+6W#M35}U}R4lee@R&sEoQcPza`y-x zmnpq7@wi;=AHfp}tum8NDD~P1om80`GwGz-+!~=%8cXL)I;FLCkI-qIt#>A!*4z6> z=#0TpnaO92&e{l{HMtry`K;O98sT#mPv=ZNXZ3cE@OhiBcP5{=`};@uf&;7UlnYM0 zwjvi@L}RC1bd#+Wx#Xcbcgm&zUb=flF8i3?opRaF_OHm509VdquCul-`|sJ+Ahz=#7L{*=aYDdTqsSrc8~Ub~9~mt=O%MrE{m< z%38Zu>~_x9yVGvx?folur{JjU^gBgoZN=}FT#cQ6x9o1M_`Qm!bEn^{db?Nre$Cgr z)9=^){VV>UfmLqCgC<@(iH9wsaWfva$<|3c>QJ3G<58FHK8eRYruSw%?z8^h`E*)ro#e9_sq%s!jc9csg(PyIpVhNx$Fo_1^6F`~Lou{&0X*e$IzOy!J95kBG+4`FKpWUgpyY)%kNi zozmSe^ZAVF{W+h{+5VULa=}%8?w3ox_Of5EgvQVPdM&nI_S=or`E$SB%H1#f{Z8rq zx!>>A{+IpnpjCd}k4L@sazCF;ji2}P+1z@$UoV!G$wFrJ>mMV5c2R0 zi+~8f&=E%N&O=<8FE*{zdBVtkaDh`=gtPpzGYs642OJ#)MRfiMbgFv01QcaVkk(ov z;5jAf#5@j$V*)CSj+zfecFx$yuH(|o#(2t!?}Dpw)|-Ye)*fPo6>jEHZ@RfoG9|P) zb(r4^O!Dthaum9Fs8xWWzp>_q)}I-N8da1OeMFupNp53kHAqkhDp(L8bkM_FX^k*z zzzIek1J8v&-cMSnBcbuce1GeWz$q(bBE+O7FdQ;b&`1q=s`Gj4@%A?Xict%m>b+jd zz_8$xg3KFv{Z7gC5=;vw@p-B+Fcln4vJ;M7J>!YfZ4Nom@{#@%fXOlwIhs92PH~gyWylWX87#!y)Oi{lhyx{JqXN*f8 zG^A=RsbdUXvF%r;7xSKig@RkBi3u3^Gpa0T7rLsk&1zw5N}k9PMbVcYo>4)Q=ZP%U z41MVpc`Io8K9OaHQ(yXIMg`BlC$ik~>Px@MTfy`HiL7uGeHG9d6|z`PbfstLtDu>; zLYCWw<}flcDE?$&xWmf8p!lEL)7d%5-O1h1z|iPF0|S#pVnIO;3j+f~ZeB@Ikh_yY zL}Zi#`!fbc21W)jNK7s+a103W0dZh7h>gJCu0hmZ)&-gM=I`P@i&po;xm))7SKX4( zN2tTf;z~&^PG(?W_`|@!V31r;RKmc(sKda(5KvxH0AklLFffP|MMOq1FfdL4vC|>! zB_MVZguMgAE(!^9W?*1E!@$6xkerd2!oa}zhJk@WCkaVB9f_TrQ~DodG00UQukxhk zg$9ERVqjp9VQ^u{WGH4RV8~%eWT<3NUH3*7jI!t16fbZrTjo=@$hFe0$IPkE%5{RR`$PxtDK7rgJOZYBhRpO0 zpB)f0H#B~JMB>8e^d*T|%Tn@IWaO?$FIt^bzOJxxeR0i(vbs%`&0FgXjlWu0ef9MI z79I0FBkOx%@sH*HjjKXh*2Q+MiD=)L)VD2X>gKeGyUOP5E}yrrc2RS4b5BptlqpkY z&YU@S?%X+Z=Cp5b>e|`Xx4U!FzP_pZCoEdDXz9|WOO`BIwQAMcwQEEG9H{(XD<>Ep+bpFVy1^5x6-@87?C`SSJW*B`&W|NQy$_wV0-|Ni~+ z=g+@?|Neu)kFUQTytxlfNh5;b_|Fi_DdVwW!NFz@VXc@G8x|gJ7f|+^%KTRRI>=pU{LvQ`^34C!DhmPW&t;ihbGf$9H&1NDYw zRdX|^a0Dn!So`hO>-7ihOuHs;+?IZT+3(Cp=0!ZeF3L~caLz(%Bg;L>H(PI{ttOR9VT)W&QfIhxixyt zmiaSJEjl27T<7zdygntZHEefQO%S&IB^@`D_p_9gYE{+?ma`t}YfJhT%LL>w)EKdB zXtU~m{$lcXp%eGe?BKgvw20iAtBf z>)jh(T)dwD|8ITi+!fyieD5#bTp%f5y@pjZ!*(V6x{5iCLQMO<2{_a?oxE{cX^|Nd z>x1kcrx&o9ubB3zvMZOHlWE2yr9+%t-UYf^4Gv$P?|!}YL`-MmoPLAl6Ao<5D3>|2 zkgxoP=yX*t28k4oga7BX9G=~Ch|~55Jm=aX1_puN2|Y_x3Z1t2@jjR+@bTfyoJUKU8ZWALypaqp5MO4v z@PaGH!^4y7#An1fX8N}Ia46nByx;TIr)fKEIz?(-8mzs}b=o;a`j+jSr?9AH25Zoh zz^3QQwV?&JE>0b4kt!z+nrv`qOlXjfJ#jjw>htUeXF7NehA_nIvGnOYQu5I_c%pMJ z%S;xjxS&4_%lx0^*>X&IHo33-zqq}HBByUglkl7iEh;Pz+4(aLFm0+oFqdN=ghSJ7R||x(eC9DkFqKbP!wIF!Ttd(qbuUzgUD2}7~gk*Ntr&%9<`Q?A^kvQ$SYGst9>d!xxj$Db}8Ow}dg4#%cA%(vl~ zk~8b_x~kCjRckJ@Y9BH%cq^!;c2>Y6TIkv$wWDqRO^dY4cFkjO_%Ma%k$UW!s;l2z zt}2)(2kPwix^c*D{oH`0rOvB3)OH?gStr?a*DK+a!b!fRYy2Mx|CZQtt;J!RgV$Pa z-`}Setr2Tk$tu*47=HTJ^Qi(pTc>cO&1X3@_5YJVHv`G#ZPP5KZ2PsMf6_~o%vXJ=Zq&+LhTKN|UK zKCE<@HGzTIz+nZqr*`*^CDGqX!W365l`U_7-EQ?^Azz)u8gGq*?f;6dvvXK9Fe|KZ zdlICp=-{m$6d^4+qzH!kDMuCL2wh_tB+DfcH zg)$h~s&iwvt`TsG7Vr%VO?RvbU|`fq@bNp4t?)Bvf~CcQD{nO$R(T4s#Be`gjF_^B zOZ9m}=QYd$oqNL*p(f8i*+VFrtqxoVx%>BV*e*;7QS7>2tMIL)?O)Uc6^3HlCsR4@vsnn(znNjnqOi$% zmcvb+*dm45suPSvKlz9~{e1WJ$#;%MW|`qVj~JVNm%3;i%!)8?m z8LhAhyK<}b>;+D4=QtYXx=Y*T?7Ud#6p@+xUNJj9YQMJmgkxa*O6Q*UTRVKF+HPLn z@n0m!U!gTv<<+@z*EPbGzrO9RH$+9u%tRpro=3I>CEqwQ|I9Dr>< zOTGoWuaLW1DyS_Htmz>T>aOt7F-B}k%daw5;fE|w!qvqi1g9j_8kWX$36`=d#Rw#} zHEb8C6DWzeTus=udIvObF^0DD1Eos@$-M!R|o#$FRjPf@)YiuW`G6D_kuo@L~!Q2X0;$sU!IR$ zI-A;98D~%85Oi7D!%*6iVlmxRG9ue;j-=6y6Eo)oPK;;0G$Ej@mMd_^?C+-KH(R?rFYAav09zx#Z?KUE`pp0RPS2&XbMHf2yQv2_(#lGO!XjV_C)(IKO|pY5FR~xUA(Y zPRltj&VHjfo%3MthN8~J6BPfgoUJPqy5j%MS-!tkOvneT*2ST^WXAHK<*DIO3I#8?o~Sc~nbvX!E|!T(=`1SZPh8&aIjOUWVdIje zVkL_MJ}pQ&KK=Pifd#LWr&laIRNTj_%;0o*=5eu=m#o(6HZJBVTJ$J9)$_&NPs!%z zJQUVd3S>s=OrO3es(gN@(L(1)^@mvkD|g9VR%K||KE>d9Lk=gycSgZ$QET`Pu6?bz zr0dsu?!q;%4QD-?6~Vi4LBgS=OD7l0KGS7w@a)Z+e?*x2 zx0WMu{bhmoU3u2Q>J6R(EUV?Lss;K_H*}|{ubVJKBP^NKLLj0umQ8TO+gDo`S??0~ zxQW%NM&588LqkbHXv~)7iaC>aXn5Dm)LOByeAE4)ZZ7U9&ct2yrv-|-H#IL^!6dNr zcYAg;_tvi=iTk`2TD4c}{}9;3&2U6~&nrf^mR)jThi3hrCa@}6LG3@s-qT*Yo<#4v z$f-8FN~k$|=Dpu4$Cj+gtrUpnRD1S)tz=Ri^TJ(>3>9YHd--UyJbV7PQ(US9t4y_mzSmg&?QQE?(h$`2lI!k- z|Ce^?b(@y3_1r%sP^uI8d3PE^W>mu~WpR%t=cENGe@>pbxy!$3ri|h#+e^zBU)Q9a zi1t4tr{@!x=#;&XQ!Vi|*Y{Vw+1#p(8@77$sI9iDI+uB1Wx8L5Pc)C>QP$f@>qP_; z_sF$s3rzU4nd4!aP4~gtJ4!2W>`Z1kb?432$*(-;oe@amSzjM@HowR2%)x0)5BjZl zpW$7&t1)KU(kGD{m|XZ6_xDd1_;JT+?&aej-xTuZ9Of}x7x;o}k;cJd@zaV+PJ2ci z=j&PIvu4rCCy94sF2+c2xZku(q%ihfx4>m?r^t3k3EcxCt1cXo*mNiKFjwXJ54);; z_N?lYWKdZ zm*BryU2SKSUTF$Uz1ebhjhyrCbN-($uX8vcbWGrK^})-#<@Wp%u#Q#uuQPYIPqOQ+ ziptvpkN+I>+vzVPc$RN-%FLW=?|T+XF|B61c&cXal@{5Rg10m|4xAG@I8F78jOm() zvR%GM?VUAUAd9!2Ro@J#))7EEiJ9S3E`0Y(Qrg&2xhCOFa>TcS2W@0B> zwm>8=L!s2!*qZ{?y)nOM3z)u{-}?8qMdY>8r&ld`)DChk$gdUnA=xsy`ZkZ@ZGYW; zjjse=@0MF|c5i^w9oF=nrbiSu{(svr+56PB)pE0K1s?M*zPIuS`@v~FHUgLS?h;7s zsFOYL)F=Ny?R}qD7jjo#3`)La6n^-e?Iw>*gUi3~Uf@v;trcKcS2pw2Emp(ZbJPVN zpE@^d`Q4iK-F$q7n^)ZPyLyZv;AZTt%K=Gsi)K71wYq=HdWBryg&%hxHAnVrG%^xz zJo6z|;Pvy%92*yGzTUdz&x3@ZThpV}{oit3zCB@b^bw(nr=@~UPuzC(Q}=ZShfD6f z4DT(khwKvw{d1n<;Iyf|cda_EY5cpux$vye^G9jx=EU)6vm7|hd2p?bRCD|DhN2bo zB5h0g8m~|7U9{Qac$1F{_rs@BLJZD%0+}e+jI zuHB6Ir=oW6*}O#wVf$|1-_a#g_iWL*_6HK$oC|Jn@u_i6U@3mU!u#OiPU%~%-|FSg z-QV21D`j6&*7vh-3M<#XdFgrYMMH7Giaddn$zj|V4=h}F;NY&5OKYFL)}6+yxY*Nn zkxNVhqnUu#S^=Lk_ZRGFDiI%?X5{k zx%x(x@%h&+WtO$a6NGM`T`ia6wiEpFRv>fcL&5kj)fJC7F3RR>yy(Aq)d!R6Yte6+v+i^LUBZ`m zs`;>hSDlt<;@+A21ds1KVK?=f*p~RKYvr!~R#AV?^?vWiM=N{0wC*}t?rqugl_%+; z+x+kT?wrQ!7rkPAy3vWjsdav+?Ae;UtGmv`^6)cUIJc9-?$d`b!PPUa%=~5`xbS_F z{E>GtJL^KePSF*d{QAk4RiD`$-!A?C!--$@ZLPqB2XCwX|7y9)vZ1bxtMb6p9SkYa z^=o=ekMfoGJ{I`?Yo3YU%L#98vuu24(!b;EcY&Pg8nVx4%KpEj!hhZLuRt09x-DgY zPp@Ae@W09RaDS&VpP*v$`3>>^#N9Z3;uSpB-Ko=kv2car!Jj+&>;&4S!nb_8$MiyA zrq%IBzrVV3t1=iKzv|G$$}Pk&L7;)LnU}pUYeB#xmo853fT9~899{c3C#U3icsd;K zvU3o#aR^d6JekjY)s&1)PYe+d&v%}s-ZOgs8uT?ty-JRv0Zc=M!C_L_8 z!02YnkznG$Y_B_cLQ1AUPykbaGTYyYR~X_vJZC?6I$3z(S@vN0&sSzoUhlGBcQ(&~ z)fX6!&0Nf6T=wgx+W&JiyDP0atFEU#o>SUn)o|+giUUpCD%n=l6dC(JvV0zJ#wYw& z$*ZetAx0#*&*R{AD?3&{?t>j$6*V4It<~-w5%jdW`>T3K+v+7xHwM6LLiWgCbCM@bV zYI0%x-J)cm&Q>`oQ|*3_)kam(+$=6F^$Z`b#szjYuiRz}DSPZ+P?eE+e1VhqDuymA zZGA7z2m=-4mt3HW3EueO5(I>+d3yX}37V%2|VszRw z!RHkJ9;Sp`HOIm?Z#}%4mA0sAHVHATlB`@cae;?wuHcfn6;g%Ed{iI3_fBkA-4>DD z?`jsAIz4q;qGVU>yS-=C6lHE_u2Tn>|9Qg^Jz+}AS<5{QvtPPS zHCxNA&-(L=$-;cjrX{zpFbQmT-}AusW%%rZ*`D!JpY6S{qAuDhR8?)VSIM?EJ?>Ru z?HY!!F3oXT;^CBT&t{o2(Oqq4%4C1Hn>RZ8s}-)V`jK%%LxJ;_s9NUMRnrzTdYN`S z;wTN-;khR%=j6$K6>b~v^>Ng#a^anPs&Y~L|JXvO?N``lSgOyjKXa0QskM^OlC_~+ z(OVXrI=8}EV!l+gY5=#9#KxJo)K*@f7B(&8(vl`kGp|J)?aJ z=&Y-}<($YBy2D9q+l5yB819!%M*EIDeA*)YhJ$5o5c}%A?^JA`oZyUpWE!FB+NPzc z;9Bz(dwLBa4m)%Tn;WZS9n>1s~X4lqomK<4ur_-kV ziM^nZKF8y!Ly^sF7kzb8XJwwRJKXKQUF@%CNx7e7uA=9)l&@e)$85Go2fJo;Yt;lS zc4{gWnx`TV=w>+A`PPZaPKWeNtBX9uDvgfKv^m$S9=YfoThc*)x7MjP7ZZPfP-3|H zl4WwhK}F98=>j%~p43T7wqC3dvI&ovs8VKgG9$<7RF6TB;%=T4lckovSz-S#&$=GN z{VGVA;k{?7$g(FLsJf0Qoa#FZ# zYsv(M7d;+prV229X=qY$QTH^;oDj3`bmjc2F2nwrlb_q_saLkyp}T?{nu!wu^jIqyUnnGINT+y`nswrw5beaEH z>AL^^b3DTnFP&{q*{a-?x}uh^`dZhKRjLy_GIY*V_Kn%8E!Cy}rG z#$lG9D}GA-nDWc-Ng(gUH}h8%xwNt@*sb8Wq@KGdcG4BI8P{GtY4}+w^jYfYM8${i zHKHfo+qCP^!EaOlbBKJ_Hk@!_hKjx%hh^xckZ_x?(@t)=mdE*sozvfi!FsEKyTP3a z3#OD!T>86U*3~^}X4`MhvZ`AUI=LvNOJRn>;@pCmz|{hbf5cR(!#aA{g_8Of2wgBc z>*4xQ>3L&-(uwWA-z;V?6B1KbF$~#yO=2$3WE=jL6I)n4e}%a`Y*M(UQKr^0C6Vc9 zZF@ zoGEQNwM?98QU|yB<8=4xTUYm$?F>jd$)DmN{AYr;y@w)4lK2+wFuz%y{3@KWac4uS zP7B_;S-l|dX!zmWr0tV$KUvkTrqe3@{zqHSqsv^Gcho$kJ{_FQc9~Pd+O_E4gzd$* z6l)rkgSca!uJmTvT)lnz{n@cvni_RV>;d1F%s2Y~^P;%ReNIQy+pYFBkHqi)IBBvi zVObtSD!#PK!Su$h(s9!?)Y73f?cip;9zqf!#V&dqI}- z2frCO&XAYNOJAyb;PJYOde;n(Yo|;Z`*`)GTa-Il7Fc#YP+IqzqkCbC@9yc<$_(rU z4PPE}+?n0E`PatD9JXBz>f1MWuCU(6&vH;e#4)j1Qf2dc7Ei7VvwHiQT2vAmq8~3? ztzjq}Ji&6u&iT?ERx`FT%xIQeV=RAT%efg_pKvlQk!msSa zn$i5^ap!^4oKmN^PEOdxn9#uLU|y$rq}b(nNyzcZO)S%$kDPn8yKMqf?jP;70;Vo8 z4S^h5zdag)BKNar^#x|^?XzH*=Xk(s5`UwM3)2h>uL36f?46OH9YE8^sk5KiW6?a zJPlHsd$*ok)0ot7BGF|*Nyoe`ov#*o%-dkMVL{8E*|HN}c(5ogJsGXmUT}QhiizDe z(l4WqiMDi2T-Z+1Do<;iTd6Z=J99$&S9C2`A?iaA|#SiI&vH2S@1 z|K*3<>a9<7Nib*#AMHzEn6b;TPorVNW-hymgMTwTd|T!@S)J)JVBnH&U9p6Nb-{wz zDeGgV9QQcW9cSEeL3`(lA8Nuj47);3UrjlCt;AP*X7j-#-OK?;mao{`DAd5d;K=F? zr?1>N{hx*T?9>&$n|wO%m~38MBcA%Yak9*@TSi_NKc87Wq3O9z*DaL})+5|Z3`ds5 zOk~hFY3$9*{6qJVO7FBxsZUc}j^=c--a0$&hqqqO*6UNw|6FqZ*Bw6lf`(Zt(qDVJ ztQ`DK$p~!Da9=FIz`nuoTu2A&hI5St`|omG*m?0h>yG_brOq(DXq=+swAi9SWry9$ z9cP^-Jxi<`e&}@U=V@SnVfrCbNN6h4i7g!R0>1Nt8lqqCSpC9~LBn^I#(vn6KKX=(=iUwSJ3QAdV6mIQths{O?!|>o4K0=)O!5s5@*Yf@62UbS zo8&7PIC{+0J3?(snp8NN5_CiV{dBr3(7@!;AZHOWVF8Q%ie@>PYo}H>D_C4(t7wqV zXv*p3vYT*r&%}die;X5W{S%6sIIi%14``6@2v3;Qr1FB1{e-aQjNR^!!r2wV6XrI@ zlwQtT+uZP#%f5oa=4Y5tVbg!M3Ky$|mstxMR5~I;pWf*E8WHlex%TTJc8_aT4J<8R zO{e@7%932s-pxJr?~NH#Z_ZqLbC#-$y2Yi=1k>41Z_fLAb3SWS@KS!^E1MRW-dgN> zYe{I7;2k^Ro^wlEZ>^YmYvs}?UT6PF4%b&*y|wn~t#w~-i7aBt=k{@VwRgSg?ai*Y zw}jrFyzu1vMJ)@TbnJ<~y>sd9U0ZMO{>r!G=$u9YYm=k5_p{zPAbRKE-L89IR=VDF z?rMlUlzQh_>7C_1=qE&CETWe?9MXz6g4G_1@d3_ulQDC%v}ghSHXIpYMG#z5m(u z{*;-fmb>FRIqrUGz5iqC{hxa$O^DHOl5RM<^#0$c_y2v3-|n$rKH0TXV%>k!2h45{ zSpIb}&C#6AY|YyCfMePN&NeQKQyxtbu?#ChxSl=W`b`ew@|!&rc6<2N z)-oh}yRi2|@wSH&dU3CWz2`mZTr~Be%(aKIZ81HHo!n)1{~tb7RC}bvcSqpbgFhbx zl+zxml_hPSx@l7>t4dhMgX%}x#~$fCi`2Zl?Y^qCF56=RvBxt~AG91;`+uIxLBp`e zrfJE)?i@FKwCj8BW6Ncat@vDy&Eig8^X<#@J<@M}|-?t~(ry{#P-1b*{8f2Dge=1?pk8{Ck zPs7SmMHl&XMLZ2(_B3i+>H){QS0+4;e)cr(+tYr})J}#Y@oLYK%$_AV2J~AzOHF&0 z_HWYvJ)OK|&oY-i%evP0zs4*3+Oyne&tAWna_;24JhA76YR}hyXl7e*O-}cDY1;EL zx$el^*z#%5E0;a5+V;Hq*z=le&ugDOulx4Ap6x}0*o#KB7fog_n%!QsguQ4@d(l?* zqP^|K|Bh)dI+wlZ+V-OR*o&TPFM6N7===7fpY7!Yv6mCoUQRN5Ioa*yl(3gm(_T(1 zdpW)B<&0@BXD)j=Yun4&$6n64_HypCm-D{8oX_@Zf!M2sYOfZVy;|({YDw6urD?C0 zmAzWt_G-nnS1XsjTD9%f>SM3gTzj?l*{gNmUae<)y+Q2tMzz_13i4 z+sa;VZ+pFC+UuRmUhmrWdiSx{d#=6S`|S0;Z?E^Wy*VKE=Ahb}LuPLdt0nm#Xg(VE zW@bRnv180froB12k4tGs!|8o*j59b-AA7@nA?Fm^+Y9qJLoPI&JH}wFoO{{q$x_)? zqZdrh4E@*Y-X=}Vy&?AYwwtEOi#Pwd0~)7Yczf>M+g-fOJO^@k9a`Q=ynAH#PT%w0 zX|udLZF$*Njd%OrOrG)X+`7E27Az;WlS>GBdE}A!q9m4U5-gdw_-p6 zYy7(<609fAG4D5IVg25)zTgA<`!^irUEKHI@|^GEOn<{QolD?-j^Oq8qR$r_+{jhV z;1qwKBO(8RNxu8_vk%+}1v_qhklD|`KcCa(##`C@(yjp?gf0}w@6S;<PrSLHmP zVtm2Mf=}n#io}k868HLWF05tRjiNK}K1m(VVdm%lf9_kMQhB%B`9d{&PR-*vMjxbw zZsgi}6se|vo;l(3xn-Xg_0A6Hv_e|I6eHC4S$(yxs9-rN&o3`BJCy(wCY|cg32g zb$mTH@9VaLFV6hjh6f5nK75VuZ{6{MNl@Wi()WhDd8N%BrP)&7lGMK?zyF{g`7M0; zx2&l5r;jy!wCl{?-;h(@9TWd$Ljq&u`#vLwGVk}Fry70F_&zCf{kL-VB_=oCiezwB zzR#&L@AhmM5v1n~%_)=is>3N{p@B@>fLvxCLhls)3`gX4Weg-W@Kbi~=FuNA~ z=&@k+zfj@7<42Q3Ywz_RlOxK{jz{Rf^MrOg@j zqWT=C**mypV+3_FHk@f~;S`k2dBN3xs6$9yE#%1uCAXe=HUV=y9!)tWEGycSP$B5z zBBtZEYR8YnltTuR+*(zf#?3QkvIx4Fti1fpW2U6w!6h@EC7oSlA?>7d>*6BE1+uN@ zzNiSPajf7CpY+A3sP){2q~nuxv%l%w+LCpBQ|{|;x_5RIJ-@Uz`@7z~JyqX7y?y;% z|G|MK_W#0qIX?^@9jQ6$p|famq08~g&mva^0$UCTYs}4>aiw6&@(T;st6fp}wM9LI z*WAi?#&N}$+;V!0IxGy7{afwy&2n`ES4W2^)x>l)VRdX_NLPqyQO@70 zw0EsZi~Z-ko1pQL+dVwIylQU3`w!v`yC3OYtbTTOs%`$%4#qUUqrbj?e*gZzeFGzx zg+e2%RE0tlr`8UIX5Lq(G5%JLD{ePGObnZ!uVCWRRK>aQ;smZEg%3QPH=cbKkjr(q zEwD`d&9i{2hZ~QJNxho-P#}D5=8Fk6CmTgV13xrsD0S}e{G#Oc&Q&GF@qwWEJV(V} zW=W2QLdWM#;xdd3_}}Ljn-MU5j_6B;nW?iX)n;X`+Nm}>ch^s~IfbWI&QKD1J0oze z;N8k_Dd9{57IE!6>KCW86dDN%ij^w46$?7PXsmf@MV0ZotxYcKQyi7lQ>Q3g6yTNB3S6{Krz^{;U+7A*lf;?>M+K&Ny0|%O zvP6b17f)EFxm>9BRMN^sP43In)>Q~OvEQwFy*6;Q>F+no&iYknwZB%~o#Qswr{y50 z%Zh{?mx=_9iCnP)j_aot|N5%yopKMe;2nY5*Ispm(IA*CBC)eiI1OJOHQ0{TtJ4S?WZ{# zous9&6uPK?u$UM&??nxxxK*UgWgivolueEr?n^dJ6rA_<3+v5Ur(Uxv^jw;7g)=aA z!d0%s+KFeyAMDwBSdwvWK-iRHWscqneorQ=D?iv}@Su^~&f;OKbe+YcPHjDj{SrN$ zfsgxdi>g)E#^qc%y{U86qvJ2T-grr=cj*1P!TT}WWQ9&XpYh75{;S_^mw(-%?mH{X zE8cPD_MV?Bco~21)Q)*R_o7N+vdFI&>QnMAyj&Yx5%y7V{!veMq0$4L&L{f!)i|C_ zW~q+4_pO2^Q?f?J%db{5K-_OIM%C96p?w@|nqF|!m zN1ybBLJkR)Bmt!*uX)lgN}hLWU34$-bZHV}eB3)XmRYGs8pJ&lT>6#?@Wiyl+Z1>F zSg=iu!^+?Kg0Wnr8>0^I3NIa z@o|k$o2KvkqiWEsc_wjFrpVl+$38uhf+??-x^FHyp|bmi0AGnlFDv6C))|u1JQpm8 zllfe{=Ykv}5STw{;o_wBN=EEVUsj<0k*5;|zoGXHj4AwSnxnlkyq{D`H zQoE7CR-SLOICU0>1=nu7;F{6-Dq@Gh#LbB<%Z?bX&=&Z0s$R%ciLaF7zl*BXp{txv z7U$J!$2``$zVlM3pZDVg$9Jd1(^rKk+GuBG$GzgpITfPbF+(dfxZHi)yGirKc)BCr z7I7^QV`YBBxF)!7)`TUm0v6^tzi~P6ipy@_h0Q9iQxYA$S1g>fdCTMI6_N5?ZhO~m zU6i|4JFj^4?Yp10ZQqy5eLds(ga_YR*I$TPsU7vIQOIEX&U3kX->+?T+c?8PNshx= z>eGU|HUb}(&Dxxs%%{7hu@X$?7q|1 zQ@&=|*ZVH#tb~8x6Wo9Mt)8~%Bd<*tt}E(_Zg9Nhbz7n7`*yK?25rV`9`b$;TCIAy zvwivhusaRf434?pQTD(` z@7?sMxP;s`H$CRyx7NH9VwmSl&C5KLWVzLH3CC*F6Q|5?Pf(PQQFhs_eBgKP@|5#O zh3lIy?h-$dDL3`blMQx1_vu&enX>iIQ?u=P=U#VyXj;%TMf}8p-o$fX+IGx&!18hD zyb3)rUvZTuT#1g(3ZHYDEcP4{t+&4OSnvDJ?2wsUCmU{XCw*^ua93Y-F9SE-|G#hh?f(fb&$EA>@}FztmcB;cz&QdFQiWX;9IhO^Qqt;L#d?$7v)EF04UESmz~V z|8Ti3$ezAZfm=Z|-ZR~cGnUVd!x@cG()%YeEG?P_8>}cMcMY&6q+zuoKeo1V6-tuT*P@c5N zNo1Pe943WhlhsQ)9V?v-COPmX9#OGLb~>XJd?xP4#a6`@hro)4N3xGEy*O$6OG$Q; zt7+enybsCl6Asv`&7Y*W30wYC31C|qa7@-&O~Fw_HSqzX_>=|?kNeAIoW7Mx`4$}HG+D~Aq(RW*sjEcO zx37WXOBgsh7`RFfE?MFja_)#?%Rzw&4#Arah;NYA*cU>iIL5i9#Vr$5s!5ILOO2fOG{Wb9Q_Qo} z*j-F1UduA79FO*-r5t)H9kncClB(kj)o;4X95oKbK6@J1wk*@{nPFKYSC2#Jq6Wc$ zhtg^Hn`Gm@Nj?jZQ!i3mUX(QBmtySOqqmFPmY4Xcmxe7by%j$r=E+RmN2O)U%j?uD z+Ll)wx~loX>wcWZgl+$QZThXMa(QLM&*-oRyZAFWpMr+uL);Nu}v=wc68tr8(+Uqnr+E#S* zX>?9o(K%0}YuSpfbsF8qL}STIMis~D(^k$or#W}s3k?fL;Uk&CUl|yeWX@W*(s|3u`D_l% zFEZ!KX)RJ))oSO!uq2bgz(J&!iRs76`Ao0U1F~j`F{o&0EiYTOe3hiihsG6MTB<*~ zn(g4kxM0<+O)J-MImp&%t$Vg=osfs}m#p>wPBSmiV*1g|zu*-! ziyKqGE5iK*P z2`a1S>%E?}Ky#U%!^$q#4M|yyFIFFo(>d0~y1(f4{#_?E3=V8zI2ZnYW-kUIpZk&%gl`dGF8VX(X^H-qCyQ#=v(VH`e3e zl2cg>It`EGTJA4<`J7Ad+C0w1Yz^P?^uHJB$Ng~p{4103&Z-A_Yqd=nzVoeiHemRk zw3aDHpV8#?)x1|nmaSxRna*6Gf5xflLf0DM7FXtktS^g>YDB!fFsW6zBX`!X124@s zFdM(nc*5}7Zv$(^YUei&`_CP4O)%IV<=`lAh^4)NgMYnqL?cJBHs6E~F&=A_sdw8|8F+`bNFd?gef5FsFjOQ_j*SS zT?USZgK@df^>Un9K3qN5$dsJL|AIw?nc>j7)(dP0BGzQ@wKI@fUf8g#iFZ!HelG{L zm;$!^g8fwnjtv{6=WpN=XW@HN`1%l2EJq%9{W`}0U8W^DytiFN*$o*4KJgnD&AP=Z z-;%>nv+<`{;j%auHRc0C!bilNjkb!hh%H~q_~XrHwSztvvS%H76LlqDrMp%5M3(q! zL*472s%LGG&tLt{jDH1M6 z_KnKBSp|$Y#eT`>j^8Ad{mESXh`RG8CW#{&#+w)o7Xtz6seytv8Xm$ zs>YzIvw42eN;m6`8mF_EEF73;Y?{Bw$W5ZacJ@)F_;r38w(NYgImG{K5g*g*ed`<# zFuqP>bSi%BDDC2S`=hG~)9XWx5nC8vpJQ;_?WFOgaDP~1Ov`&l>lVf(uRZ?1jh#_) zLa#JdM0@GAqt@Emm*#0Lt1=Ey{^+~=koft6SZgiElC|@>8Y~yDTDr^0i}}BUrMl_T zt}RhM`LnFH`f(Kb2AgJ1-)6yghS@_%b9ex7wd0d^{zFZ+c0*HF+;;P?K7KW#aVot zKPPINEsfJtE8le0t1KWm%jET4tNv|{5(eqZThrssBY!Y3NiZ-#MpSStr6Vf45=7akIwrW-J|Boo|#ye6iSm zsLVNsaq{t_D(r=f76)3=Tc+;joR)35G_A~8Wu0%crDMrm zJKwA)c~#H(ovYSY{S$4<<}aSd{&Sx3j``*+3tqP@$k$#d-Lmle>zIh|TlgCI<;~-S zwU>GAnjf^wF`{Zl@~^J$%C7QX?ZrQq3m>s;FLds)YO_Aly`FW>W~&|T)_-#k&HY`t zM%cxX*>acqe-pPmzkHrp8O6J-FV>EY`L>12VX^g*#rs`lEgJU!w?4qWXaD&PaV}P| zIhJYhEStT5Z;7uu+--5VeACQkt8LOP+t&Yd%`uFhd{k-mjve(jCw@mcey$K<9C(8F;UoEL)U~*cxg{4^gbo6U1j(D|7~7X!~fg$&cCQ9cB{B*V_5e2eQ{u9VQ>)0FgO+J*vuZQ%dkP9fuUuc zn_)}^!$bZ~hCenU3WWy`G7Bk+hV0nTaIlw~Sth4o<2h#*A$A*+9}gA@&oq~J+BJhA z-G9D)Bb%tzl#IZ|?i1BQcTLF*UhcopZK~DO|5>4{!#Ac~-8D5ke0}`EHc{(oIgy*w zFD?`H=5V^bEn03{;q7Z|ha8I)-#E-*%@>=q^20rbELMH7-Hi+5-Y9N9chu5e)WalT z>UrkV(+$(N{jpfx-|Z+FGw06aWk(b^!o8MM1e`kB$8PKW<)Ppbk2Y2Ac{wXSC7o$5 zc6pq$Rw^^AZFBP{!wof-Ok2+{bf0cFx2p8@^^NJ*_sy*?e}DgAySV+lER8)v_hg=Q zZ-3|bxuV>pXltiIoRh8YgRKRu-v9p<@E5V@bF9cvnd-Y?0>gT<1yT-5j26Znllrra zPxQ+foY~OMlyGT7yZnj6nr3YcpB^u2o%KSqvzzHfqfod);r|CmuBzA+Hufah1ajSy z;L==p+b2mwwYeu*gV9dG%V~S7%z?})s*Dk9G}QfEj8=%MDk&V%-TCIyY5jvd!DkFl z>Rdi!e9HWutE}lU zrDC@@!@Mdh@nzzzRV$Y*6xyM|nWnk!#-nb-a}kewE#KXEoK!4ug~{&jtZNERPee?Z z*y^L!pU)TUa*lEQJBjOZwRA;>MKj|E-ZSOiJy+D`^L)6{;QaCG&db7A|B5q&G@kK2 z(d5}AswQ9k>Y)o`(4UojeELBRD{8C%+<3G3qF?metvB;-zukV;=V(_RGxyVTlk&Mz z+wF=^xM(=7nJb*uVzzOiKli)ES$&IKRTsQ0t^D@Wdx>#!NFnrOaZ$G=~*^0S_B$>eNMtkM?R zpVh}M6w$}P#20a(ab4=7BZt{-L=LbkJojF#(2&ydshL^i00aLC*?=V<7+4G@FbWqR zl`%PDf9yvCBe%%`rm78#XR|mu@0{$^<`6PLKBFVcR{MmER6_%!gaf10pOYFD>8ooz zyBIbza}}sOTK$xFVu!2ABf*I?TvYWYcAjdQD$pIOa#GW^n7i|WV?+5w<{y3 zLaWIW#s7jcPpqjBj9qU%O=O`_JFCU1E~A^tOgR=)WU@Rb&i(R4-BHpjuy4|o^yHK^ zpDc7d+**a~HKMc>FKw1%xTN9Tl%!cW(>wOvr0ILVJk{S`Ovb83>HfIX8KK@b#+UcWNYOjmJ5^mcxEb<{V-rC?3z6Ly2*3Pi!=R7*G-ntSSxz>>6E>H_#Tm*@73QUQ&8Qx>qAzHk(r70{|TWg&0r3ui^Cz)rs@ zi$u4+a5bD2*qb+HvFz6u?v7GH6Z@ttQ8j((88|Cw>bfaQbxU7*CrSm+JU3;T>DHIN zg|mX^zMHb#_UlXkMydZH3;Cw5a5a4uIB{0UQoX4weM?^jFO&*h={I#%=+;-E8)t>C z&6~P9_Uo(ggHmA|`=+i*HGLg6f*+|+fYTVKb1oE5(J-PHB9 zUth;FN=F>zo3^3V^i87R?1-a!(>C^&zDZV;jy&l%ZPV1PZ&D3sN1n}_wt4Q?H|dVj zQ5XBBZCPsiHZyQ`)YWyM3ZCkg#%`KcAefQn8?R&qz&2N;BdB`_? z$5GRFg%fATJk^`N^K9w6;)T+&Fa4(Py1MmU>BiZyZ}X<_zWeoE`9bNpkA2hkJT-k^ zd2x2!*LBnPzAb%U{ZKmo=eg|=MLOtR$p8OKbwee5lqlPvpw#&O$kANw0+QWW`To^Un$=KdG7fp(XWYRSkH=Y&` zX!L(^=Bf2^6CQ~jo7e;t(;fMLvXr(J`E#9p>OB98NXoNMoYzV^)DKr)n0joT`l~gJ z^Al#Bo)vdZW8R$hMGaLa7oD4-_^O7HKc)4Gmzim#+ksTUh*|%yUFCJ2+xuX0bg||2 z(@rjPFFH(#FSfiP5$v+cd&1Pj_?7H269Yw=%o_G$L-UFT8+%C?)j zHCerOy!oJQ>zd_r^PcJ5K6UXJ=WhK6d8r3)-*#TO{g_`Po7jQ{+>LtX(_g>MDOo-H z!Es%uxkn#NZZ5WbcxKo3y=P;OwR6kdV%=_0D4UzgQ*lULa{qy2nr0stbky{yu%F(1 zyS8xZe>2`vzefM4b5Ey-r;5zmuv6VHQNVT1LGI)O&gTk?x@K21iLy!_RXp*b)i_65 zWAcH+5_=TbOn&@UbM`NqyFcOUZ22RvDh}+rmV55&!u3BDoaBE6XVn!i*q!v;_W%D% z|1)`?7df-M^h)35b0DvD{*t@T9PC*y?cGo^r{wSJgzue~7wVO+GMD9zS726Z(0kXl ze$J;|u8wmrKbU;F*z$8|BI7RpkBvU{jOvrN8wti3vh~L+Ff;DwlysSp6TLh(QnBRMRqKmi=PUiXH+`Y{asNumu=R|u zlv}>V|K2hA!+zzO}+Udp^BgzE=IupXa{E@1L6Y&1Sk|K--=7KNW9o zGvZ#OfAt5yqK)FkB7PRJ^P;=X|6Y^(T|(gdjC23j=rHmgdhD=HlgZ%!xA$r)0u1IK z6qo3KKeXW2{}1Q6i}G1_yl341UXkmyAA#>32N)io{hJf8?Z|?2T?f>QCY&z2 zpv4rx9Jc=4E(bLg1Li&XJaUgjR1ChGBna^(F@}C%+UCm@I^kv6+fxDW6_ehb3V5K| zRKT%w4ae{P(-Ss)pCX{>B=Fr$K%MEsM?roAu9qA5)_!1|$@kC7S1p9$#(@cZ zk{fxJ8wg#!@cY&WHI0j$mU(>o6S)MFL{t5L$Q=@pzrfFEDDL_C#)tFj6(3J!2y&#p zXX$C+uu-_`ab7T(mpQC~`+r*kM{K`vP%p>2wZcap@T_0+`39f#%Yxe?jnd0MybEIx zIod^}}#QB1#q zn@@>tJr9on(^a{*ca`#<#0jZKd^)A@R^dzkPa(sr7MGOQ^QcVS$jE(2*yEB)^&|1M zI?Bn0S67@94tVz^M(9BUlj>R@RsJNkwQJOP7jeJxVTqdfHi%bT*+|FyG}G=+YA1xW z?`^pL<;3F)8x>}4xXE=$r-KTfA9JKs#T_Y_pT8e3OB*5Oc~Re*QyZfgcnPEI8-znaO3dIzzBp)8x}D zE{R%vJY~1wm0ZEaAYl!DCiD8B$7PfM<}v*+C^BBVMvy;=*ZZ?#-)4cGZ_EXiEZ3j0 zS>MB)a!BUjCsWfi{7V!#CnfNm^4x7V@kULO{mivyt)CUe-knkjWNQAXFzb`U#rLPW z9z3&Z6t+kd+UH=9zsN@0M2-EtOmiX6t25jSCNnO*tnmL{fEwGCQ(Rlb<&_+bH(TE| za1d-_3k+7%xuPI;<&@NwXL2S^>Qhdi3SzQ1R(Tw3H9sVS@lfur0hwRliD9rlA zbYL>W;$XE6A!^&Mxa|Jo&9CIcAELHnvhiMHZ{NwMlT3UUeo{a2MW}kp=}Ee-TZ26o zD;cRYb*E^xKWLru=YXgFqiNf^oeMXq+k|qj-*V>7mUDhzPJOwe@M!^0#8#dq#(^&{ z`0z6M3O0ptC-E14@?WbHx--vDev#kSDuf6RqsD%sYSQ2VnQjG z_}5cXqKdPOJQPbcRi-Lxm@dH^khFz(}>%p5mTMQ^%*pm7sr0w6si9upjIhPz94Gt znkd09ft#;tZYx#XCAw^1=@g}7!CjuapKS7%UzD<)DMIj(pZq-AbP z%bfP+#n-sGr5a^lPJLLQdDcfOQ|C?f?2S z&J!2K6^kV`F0x#!qp#0kTWplqS(eAUD33qPc(SOq^tH@#vA~@?`Rz_jz7A?Rg3-Ib zY3wu0iOtG!Tp9L+BYpd7x3z18Ynn>*50qT}dMahA`dS^8{%z_i1ss!{@?#H{y*B*r zbmfPJh+@olri60MNoE1=mlIP>viPT;&X}&jV`8nYUu^nK$zuCbo9mP3xfmYf4qtgy zearTwosW3=FX>ueOlV!iVj%YD*oWJf$~BBW%9w8Yv1^K#pt)vSd7=Hf3fb?8>w9== z57o>M*T@iHRxwogFJ84Zv?_O1l{KfgS^J*4>!%AIHSRaRD)30H(XgUD>GYOv=G&NQw6*w?a^r|#vpW>baG$S~cb z-)ndyiUoHp6N#8uk*X;7eD{(oJgySmXAGHV{rK0U&nvwi#y<1_o&Pd~#FI4(%^ZoW~uUWfUdMQ?jTue_5MyI||b{;stW-G&hw0*rkZXZSuo z+uzP$(|%3CZ?k&X`QE<~eS0IA4@C5o3Me{#Jr(glK;)pnAMuXn9U5lljrPh@oSv5) z>E?NrQ(4$FW$JeA6v6Ltx|M-jHRJ+$+y&K*EWaBqP|uS5o+qi!A>q0_X=>{Fsr5f% z+aHyOPI$$&Q{g|~%xRJZ)3;h&O|kTwDJ-*>zj*gIb{U1)-`O>+W_H+Dde3o~E!)s= z>PU%&=bl4fm^5;K?#P)N{++S^TC4jx#p3hrsZ-|7KX38zCQogXfpAz?sKLDLGcF{{i?2JHNSe%vY$KEKlQjXM(IaK&1(Od+I>@=e^!C; zthRin<+mf$l4dbJy`eDU1H;WLvy8tj+F99Q{%f}Lk;T(Zd^9o@OH}u4F)FG}TJ!#z zcGCwDlNqP&4j4Ai>h7MT@-hGS{{|+0pBu}n53S3UeD=yGd$H2m>$fcL-V%NCQ=MxT zLU@2i7XZeOIKP&uaz>|P_@iL%4WwepF?ST-bt+x ze6;1F)$-2^I6Mw8yEw2aM5rw|$DK2KQ@4}gjt49*3$_Oz;5cNiA+qpe&h8z1ALQ0f z+|m1cNA08X!r$v7Z*NVE-sX69$9(DY)2w%Iz0JK#NU$f`g!kZ%^xYa$Z||7+JEeU0 zcGm~no2$)sE?}vu=GgXLplA2q>Ku^|(Iv+hZLW1%>=?cJWb&4?M@)~L?tXadz<#Bf z`e~iFExIbpH)>b;x-km6QbBU-Pc7PF%m{$a<%P zx@=Q5EsqLX9lDxwXlcT+xepFqb~;?xba?O8!$+BqoOC&||Fy^t!LEmSCuCzJ6z?Qm znt5l!oWjIE;TjA1CN1Fmp}@IB!QOaJpG|d;ZKTq!Bgc=koY?CvXtm(X=|3w4o6elw z!+arT>HG3zfp3}hKabA;ImE1|L+_PAJ(dvUPXWV^` zYPR)tZaR5?&$-JfBCixUUNs20HS#w(a4i$RuyxOV``-!*56|}|9Xj76v|-LOx4&1c zZMDPhYB))2Xe_)sHR)PE)0x$eul74#Jn4M>a?&Bs+Km!(Bi~hRV84Fyzv|s{a~E*x z)rfqXbF(>Co5^;ueKns|$0U{o3^6S;I}0)~CF7z{eKXC*N5G)!V+U^F_Zp7d8urStxCTgJ9F zO^wF76KxC<3+B}@U7w#U(&W%4;l#jmfKgztdc|F9jf3ob4LJ-AkL2xi+#a$EJXp=V zfI%uDOo^K};K8%Nh92WI)&e=!TQ*uba?eZcZk}wp^j`S#$K9u%H(Xoo#Q5%co!^s} z^X0tw7tKyQ9?bM$W?Pex(@fVBU)41ZGAx-_U-w}3M-Fub#S~Rnh7&h6e;f!(S9$VZ zu!(=kJcbOp5=$}l9}CK=9zU3<6th&$QsZIv<|X$8_gxUR>r-lF2-~MVYr#AD6`a%3 z6fHy*YaCwrr!c&lH(6l8yP0;3HuE*B5iLzSUUUQwb#(S_rkt2yVH zd%^qaG&LS7nXramaDB~qXzGDR7C{D!iU|u2wb~0<)l_UaeyEdQ&PnJ5gVGTeVb-uK z96}8aO#J_6mxNfnde|^oM>NPw;L^heOZDeRu0$+rbcb?DB3;f<5{JbT91Rtm! zQc>r%nzG{Z)rR&dVtrW)zAWfp5wpAMFPGVx8yizj&$8_{TYGD3&h1^b+~(`<>@0bG zYj3yt`g?n8e*gN*z2l9Bz2}kusaA=Pa}-M5KH5$Yec0H_wPIJ(98>k{mY&Mexi6nT zWDXB9`84x}$|pyb%*0h<3R{*=p0rNN>CFpg(+0K-&Car?A(<0a929mdT~J+e`VOD} z?XXof58bay$bY&PdFvt5L6uPJml?s^pRIG0b7JM6`10gUzV+HiR?U9q@{A+$waTjx zn-85@wVmxBe?kKjpGQI?+kd%^geES%6A8_Hb{vT{eyU$0gG4x~c5}0(BQ&TyS~w@>y`Cj?x!~ zS})duDDR`4OM-nbd z%Vy=B%3NO4d+2!E1dC^0NmI^Dbde2x+3LWsj;Zp(>h-tW1?oArayBq}{$T7B@t3=j z;?3re(vZ0B!$XEOA)8o4oOr%;3NSMLFR{3wao4itfK2;G#{16sZAX=zm~09ZRs2d` zPpC1q{c@N|Kybq(r#h2WvB`_iJbdTOw8rb&#Ij4;2l$u-jrvK*>$XI7cO_abYv?> z?@obq74EE0+XHRCJoo%*C6eSW$SknNVIk+M4;mtN3*OA*+FP;O?}eVXfGQia!-0y$ zEQuc&u2gxI-AtR`TXrjJ{n@hHdHd&@s!aIdSbn$c_rZ2y`xRbUZ8azW@e z*ea9n?au%9o`bXU6M1hj>yi~cA@U(5?)-)m3>g^z|4FczFW`Fa*|pnKzbZ0tw7lyQ zUbbCC-AUOy=803k{Fk{-L2WrtoLOb|Y|@_c=ih`Y!nP}ePe&NBT;$hz+xO(`LH^1O zeqKx;J~^yp4ybl#W7ic^-M}|ti^F#20yS^`xp867**DrvIJU?#e>G;t5T{b{vNU ztQ@%(FPgE^M&poxm!fy^1LqI7ns%&^;Z=O2+_6>8Y4zj}`t2;8vQ9N_6WVJu7;Xx8 z{E#zJS3G#aW-`ZI6rIoz`tLx?;b}|GG;rUXr4Sp)9qODCEpt-a0@@UhoDdS4@?hzmC)ZA^d^x~b_aiAgMajAM!vuwF8HKrDN>4V%^!B&0 zbbb_J@?etqoDnT@de4fJo7#JV;uJHNIP`7vX%fiS+DbrVV#si;n!@3LxCNY5)?xU)0Rx=g9MQk#y^-HM^iscaD-YJmE$S_BC;(W_k!Q;kVOP4T3 zK6aAinzZ>=K)^*Ak26^k(+uRE%==stW_$UD;2)2iNlc6{-9(*iZ`NMv*V!2-$hv9k zwy@)hHNBUlKTh%dn)zHO(#GSl%W}bWLN1H${61N`hWTWLlUZy-YPhd|_pK|d%C@e_ zU7LM)ks_N+0|TGNGXMNe?}cnvL)v$~Wa4UQU^6+mt=%~-SaH(1C`*&|{i&S)f2~~8 zxsj#o|IFDZG!m{xY`yVjQ%0*tsW{W#=8Q5$@5vF?@HPtDEX#u*laqGwbXTr>*Bt+9NrYI*#_;-n zo6dvNBGuLUD=zlr{ok@!p7*6k`O+hf23d?E2JJCn+AHSV%gvvAEm~cHVF%xa3BCC_ zcVw(tE)@Lnb)WJ*v@zn!A!fy*8SF|2ese838&r1se}S1|Z;H6bnlw&@d|A<*vwo_C zu{lV;&XRe(N<}ODcS>#f9Z&Z6;R_CmJ+4|IGtHDKx~M$NW9Lz(hpjm`*8Git#$@!^Dy7*17lYo4uLaSv->Fp74D6XsIK=%R2wCTRX3MOSd>Jxqj)U#g>I% zTzcJ}R((?Os6F}WeBb%@+p>ZQg8vySvzo0^_6V=kVK}yT!t~~)XJ0P8mn5<(FMM+A zW+&mdE*7sh>oPa2W7OY$^L*d8EvxT3F34(P77A!!KJsas+L?g-M4wK1i31Em@_HBg zGw(gl3RDkh$=>=&daCcFz1Lc7Pac2l6F2+#Q?H|X1)o!rqvo=N-A|afdfjQMo3l6n zT+nwl*j*>;XJ16*dFOJEmRLrQSwoLY`UuNSXxRI|A)fQOuC6;{C%ec2 z1}+J;LS4O*#aAT*JY4*%cPx5P`F)9Mp~{9WPhI|t3mvWM{vz;KMZmB*_mgRb(Q^Uj z6EPpn1>&{|C|oU;6^yV;3*53?;C8e7y6ZyODHUhkEmJ;Q4R$-xfp^4fG0l($VxzFl_6O9c$1fqqr zuYZmYbT`RnPcXCZVThLAN3sSI>c-GdsG^bM&$_)df9Z=1yQ> zZ7A63>U}`Pylz4{TLA;l2j*e}t%|_5o)f9u!kuR>H*h@Yd(YATK||wLyTC3s4<>>B zpFjG}ri$5L$T2)9q^w$DzPSJA4%-iGZmt(aH+*sxx)J9TGU4NmoP`;IC$~55yk5oe zv1(m`iGHwpvP2Qz#uoSB_8@jKg;a}gWol(1p_V5^`Ik#|v3i8IH^s9FaXEBclyK~O z(7n%tx%483qvVvThb4axi|bBKYbflg*)VZ76Sw{ara;N5*$e(p4$YieQ>gWJ5<}33 z;JsJ8_otYfOlIIYAmMpj?74-YdvbEt4M9U=RgRCY(ZVVDmi=iHS?Vf;8Bg|`c~1XX z*ul{_LH3}1?$Ze@iVh``GsLd8iLdO~5!e}TUN2MGo^o(POrhyE3jwvCqJ>}7Iu}WH zCMnOJlESRW`oBWBYpdJGsYN;m4HPCaoG6>hE5c=K*<#@!KHFh-^91oE^Rn8;DJ-7~ z?RIEpDNGHNWZu|0=cJ~%$fYjvNv(Gy%)M7SdM?tfZk!f;EaDYML*A9?H!V|EFB4|H zGChqkDE?Dg>oK9*&eH?FizbS6317@{4Vl4kZSLyAs=d?aNt{gXpILg_^S{9K%`;*G zrw1~6crKe6_pwlf)krceKW$oP*r#dVU5mH_W!|r}ui%`KwsKB-GxL^6j_sba^B0J3 zcs6^orh@$RhPj(Kj^1R_`@kv9wb(FAY{4gH`v9jG?9+TY&83eluDQU{!#F9uvqS08 z+%-G<-UrSv|1#Iyc*566vFDq!3fT*P%`|ndYVtfakF&CV_KEoi9G5aRF4UY9(sJ zv1u&M5N5Y7U=Dx4QQA1$R&!C+Ll*7^h9{52_ggAx%rf&oxhQACiiKLMI*+s43wZk( z|2Mz8VzJGsRW%zVu39c~UX|jNwdCJQfv29+3s>f*%~%q+rBuq0!FGe%mB$U*=}SM{ zTr?5zAD2qQRC<>(b-38axK?7iqxbB%FJ|DmcD9q zCCRI$Z;$oa^rzRWB_?c|AO;72jkeP8_zj2Rt(>Af0 z+XY3qS{T?{Cve4F+$Qj08*h=;N}(m!*jKL;*naIOyXYg9RYG zJ&ybq3v})5&8+0RlJz7T#MVwr2Kxi9PeLpAynNoHcvOWZi@I zzMA`3vfGQh#FD04-wmq#mn5GvYnRV%fySlT;fM9jg4?YO+3Px1e7mh+rob4eb2M0o z@%CzgFoUDpUUHZ?%r^P3kSmZQM22w-Cu4}t(JRZv*b|Jhdv>1uq$Lx`&XmHi@fo{+ z5QC+lp=YQ5sU`-^SI5>d9WQ!gyl{)L&E{ildlcBTr*ga&UDsUd$8+-kH*>K~`zt21 za5*r{^kJ~N>Qt)0>U)8unBkO(&XUIE|FgDm?L59K`%IOXV9h~~Byq8;dum&^99n!z z!@FwHYW1d{imZ8P6}t5emlyX!zJ-!IKCO+vn3Jm|z_g^3{g)^kv*_H- zJ|W5WjiLDqmzR9)sQm5jx&623+D-uxnUg$+j;7q1oO?hh^ulD54{UFE7zGiCdr>m? zqM?jfsrJ-zZa0@>7hn2ZT2~ruSFlgo#XRT%!}SUV&It^Q-559zNX)y#BG0mK5pQxeWBey2z67QyS zzuufvXFR{pgHd?H`6dT}pL@>#x^q6`<9YF;LQQTd-q%VD1sPUuPB_IZbZd*i1X3@`zb%wWB>ldCheOy9dnt8yEz_8F&l! z6&pA?IyhPN9+H3*<4rk*YswO{je!29&%He~1)DK3k zFE^cU-nFGiV8VA%;a9i#E?xif=en%mjn22-Vg)w@{LXjRiuL-gP%kt!Ke%p&tnmG( z(-ax=rR9WKzut@#yd`XS%bf9k(!vvgoXigv3F^*!U}_g^@|d|ap~v?C11m!e&jaSh z$0zL{Fw|5q@E7bTy}+`2(~h)_mveX-vMWyqU0j-EcqLW#Y3WCcRUJkSL3iJ+6qY~! zRIaAdiZSRB@0Ng;>j{ll&3@la@47ebW<$r+wP}Lx*?IzVmah4FSM-ifpuULSp2XDc z;>Ibe_Vdea#V1-Fs@cL3c-Kr%L3Y=9UOPeldy}mTSVJ9dY~f^QzQ~d6^KeV%L%+KJ z!rQNJk=n?x_C@qeI`WDdu(u7#^Bm?)hl`Fk0My-^M3< z1SVPwo;rN%>YY0$UfuYRe(HPV>BKKrSs1l1tPv{;eSa(Ys>5#2++MNVxHJ3Lq=oJi zn3I{Gd{1=G&WY~H55CmiO;Ic>ZBTBWX5=QgYj*CL{r@Wcj*EP0^H6yIhSzBJ+dt=0 z{;bd_X5O-rRsABzoOR+!>93^iB;MRO9kc}tqfQaX|lh_eEz9NGUA8i zgpS-3T`oIy<=+1sh74Z=__>zX2vpd83ZL(#K6eM#gU1J3FX^Q?O=!@v-EiBE@4%v@ zzGHI^*!JGBKilWCN?1f(G<@ELdvES9IkTEY{z7rxypy$wH)};Y?&R{$h?RMNS0(0N z)OX>>%M1MjmqqFN-R(*dD!mq`=xYNuO)tbq$}{4c_W+7uSKUD8Q2O|`ttpL$?y36 z60`2#R{jZEPa_iQ6j)u(wNIb*KjekIm^*Wc%x(8Net`)LJSr!SUv+HZj6ExPqhXR$ z2NMUA2E)aqxt+}NQ7$)97BmOSxN4NhqCB~SW${K}NpcnLUqHu-PAw#U+t@k$R< zLRySLSx!@D0{g2iI}(zbJK6ivrWkEnadK`Eqkx0ghsNmrm4fu+)qU2gR5sXHhSe73L4`H}dEt zsY*B~<}_^*yrh;fd-41p-!T9FJu8lu{(sXWwC-TtU*XaZ50Cb%$KU%?`Q_!+_38KL zJ)OhO$)}R>!MRKRsepUnqsK?wnSY9WSlBn=TymCDb3%~9;y*f%4lkWJLwUv8iChXE z4f9P>813aU+hv)&x+nW3Vk{Ln2a zd#g_9twIZNX{nV*J6~)%akA&njgyOSslDP}roi)I(&E6DB^PX+xJ|!Y_-gRG$9SU6 zWgn*QvL9!dE(Zkr?v={l!eKc_C(6LQRfXk&PRA0K1Lpr*bW}XfwXD)HQuOO>ei6*) z+LWjCQeZCMH1S>8jl8WpUca-B?Kb@ukuo{7EHZ6&YR(j^x{L*k^0OW=Pm*_SS<dk%%I?F{S9Vw$`_(o!jJk*KbhFvD{Tp-qP;HgN^39CRz?@ek1br0hO5 zqNzZ=r0|!p(u1~|HSXq?uf!WzEVF(bHB^^caPaAptV@qI)(UxgHhJ9bN|`!k)tjUc zMWz`FhOSnZjlyGP#1*F)TNOUpl2_I$B=q{p%Cn6%ejMkSEbKDkH0GB6%3QHLIKR-NYvMyVx#x>Vm@eW(oP0`TKZIWRd6*p-o{BK;`EoJz6S2Lqh z;zs3fc?X!qYYGl=o8Q?Os4#I+r`od*hchO+eN5&%_B>*T&CC;a(;Z9s#X3(v`WB** z&hTjKi+gLCe6^p2g(k^vlv_V%t?!9!o9ZQ{oJtQqHJ`dVsr*LgG}(padz)S+&5$^C zf}!v0UV$Pj_N*$EV8drGPISJJ@jkIbM|rPL>obKJcW0%o<4Ni|lM`Ic>$pYZ?MKaf ztA5>EvF2>L$0Pl}1^<4>m%Tb$^2|80xnqfmvu59%W!bM8XM0$<3h&I!D|^!Ham#P% zgl#)@m2Xx(xbcE*Vzi)2_&;Zldz%iM$N%kZ(N0O^j{V^zaZRPLuA${piU+616@mXn z4-{jWxL7((RaFwrTs+<}6j*np=qdA0IIA%yeE-A+dD{Cf2l3aLaQU6&FcOnFkto2# z8KvpqVYcONgqj(HZ)2cpT+NICH722!9wpZ*t9d6}4jn!C=8Zz#4he<`)`>3|6RMO} z#`*4WXL#Fts6;O0B!_16ah46|MeQ%l|8vb~qGPC9#$Dmg6?$7lrW!oxI-%LHGERL` zrC`bgu7xfCcs^KZ=1ht+T#~A*&FsJta#kt4nSoI>>A)F<3rbv9dahr%?9f+Y&?H~d zdh_1$87(OR&B0C5jtVO#?7aHQvP{}vR_23mL0j;g`!OmhJ{7WVOM>V2Bsg>B{`9Lj z7Ci6s|0U|lOHL|sU*%SGesjlV!U+R$)&mTjJDxi=e)Ln;$LjaBDINFkCvg z;HhWG#FxurTo{<2WVCxdnUkvEcsW>9fzcv$@h>%#xh*#}a3H z?7}X5NpeeHNUejwqsNPauLZAte`Kki;vw&NHI^9y0%|TDGbNMfvCp*Is-}F|+)+17 zVAjf69E>?#4HM-^KTzNMu=p^t?>a5-m#K;W}E`yQ>if9+S~g|@IQi&Mo! zCmXF^^ypl%f!53asb6o{r5$>*VtVWJ6rbD6woTcRB=GXZNv)S=jBl;i!fO+0F?EUVefPX&rQmKmK|ymo(C(!NtmgcveiIp$2OP`~x+Xw%b{ zw=OBFi<)-v)+|}N{{Jm4hqFgS6^qxdb}~xTWJ_}i76?=`6Rr|SXAu%MZJCSGT~P4le#l))^F$juWgTcqO5MY=uZK|U(SX*7k@dPPUW4b zuw~EF%YKix$!>V{>C_)~Gdb`1ez`|qdOVz`mNoTUt_9cJ+s`9yHOf2;?;T5dzp>vp z@lnLH1;z6=x4g_%+T}jk?{jlZ?DLh;4Bwd^9DcG=Wv9)n#%|GqH>+R#Sv|FL=bh|H zElc*#Q7&CDpCLl^+cal!w{^wb@)8Mm!l%W2eDU(T-v7U+&!2HnS?O?=mrL(z^Y_x3 zw_Hx_WuJ3&>)DHw1kD^?@*2d4``i(o+!x~}p)F@;xHBZ#-f0lOa6kc#g&Ys0_wGQtgnF2pqyBYtdGIDFYmbvzCM&KDm zj;s6sRjkVke5c;%@cf^l{G<;ItOg6B?yo=dQ+&czwT8I?bs2~FKmGsv)R15EN8_}l z200I=vS#%RNqbEXha)#s+MIb@fAOvZ3#!68%(DkG|R1Ul-^^`y1`L;3h&kAy)7HoFuZ7NZ(zB&dqK+y zNhSeVC7bn*+9sZ>Em|_xGF33hzG++@y>K7n&WRgzre1W=|Knu9<7}v+n8@s`d}_O) zOn=~yjV3wHrynq0>2S7eY4CCA5N6q7C(J1`uxr%t%? z-f}(bZIS#&!b-TOq?qY(mGZu#HD_lV^zG1%t67-(Mc}{-w^(HeW8NFj`F}jq13jLemds{8mB4Jg*ypgt4yI)}UdwB| zmg_i%E3hmtS=}tbvb?2vZAOdv0j3pam}ad!B)7n6~loq3li-7)r3zHEJl$M>ShMm6S!Z8E-Be0;B#cr5g>3wGRk`i(ey zjPI>AzEP(Z-Q41P_m1zqkbT!|?A}On%-H3lcyakX8^0$ubJ|`WdXnS!yv8r!_t~Sf zr|?|NkPLV$uwZvJH3s_%quEu()m$wcf|hAg=zRvHF!yJ5Ljv z2h;xr@)vvpc<%=Ay$#_1df}Ih>FhaYPR-fH`a3|xH&8S-P^|WxfT-yMt^G|h7cXW9 zO79JnIU6WzdP1CatC4o!{wF6*Mdr!s1}WPHsrUvxd418^c+;JVee?eWI!z8xT^ppm zH%RB~CGk~)y3YG79W3t(PWY_iVeiqvE7`yz;G`QHY?d2rUVAz1BeUhyVErjFl3!0A z(G0M-8*KMB*#2*@18<03l;-4JKn5EtJN*VquZ+z|KL5Rcvv&$%I9YeT&EhWMNf z@x2@3_cp};Z%6=dXrOFpkZ!2&k`{T1;HSSCznX-G*M>&)UX_{Jc0R<4c|ME?#~fvPA91)xg_UO&hK@bA&yW4${qJNd6m|IX5ip?)IKnyos*o*cE0l zyzqM>-D@?E9@$=Oc_?3 z`%n;G;d^~~V@uPftCgkv4YlEouG5P53j9qD@92%tZ4I}}2tBf4L5Z5z*5n$Bvw13cw&$0VFix{mLHAVYk79r%A9O5J{EE3SnZuD zwlR~vV{|@t9`ud9`t-uS-k!6%bFS68U6N#Awy`l~JbYbuPRq?12T$JpYkc>o<=U&V zagXMnzi~C@lIfhswnxpq8E$@H&XhX$MU2F=E{`Bz3+L>x^>*%RSa_Kp6=;k#ezLXpPxAZ8h%~r9y zW6AfZ&8FipcT(-ABn35wX|f#lg{|sA4TX-673{b@9w;%th@7#`R%qEY<8t=MI_Rg<^{~ZnHGrk+ONeRb}SVv?h`gp-_o&AIg2W9eIYd){&Nr{_)1u#1t`ImtIsh;f1{^NtN$ zABr%~U>4T)S~nrOPa^${_VZ^J=`RI48_Fg&>P5F`9P064cu<(pE4Jjr!)JOoIl2E! zr6??1S!b6vb6%!kx7MOcleA@PPfxtmrj*#a;MS_C;^H%tS~t8bUFJDejwAmZH?Nj@ zHygv=Y6Yp=@&Z=3It$WI7-WgROqijuvZIElclS&CKk09ZXES)1G}o=U?~&zRlp$s7 zyUnnBW5uf#*Ji9t)1P;YbBoxTOr?g|6SKA(&YiPw&CNaA*DAP{EXzC^_a;C(XOW=n z@onqUo@^2?6I`<`MO^as3AwD68##+2U%hM6*)>n=R+68`n{}u2c+NlTe(>?-F^<=Z zkGXD|*LPy-oh|o{H~YQXd{T*bSK7oIDpgxME}q+SsZQ-w7)N>W#18JKkKVmm!q#x} zkL#Rly)#KUumA7M6A-p#b#Mr8Xi<5fWcDb0uH7M%)f$myJJzmHS$E8&uax!ev%L3g z`Q6od7s~YC-PX#VowI0V_S6%r*cddWm1X6&t?=^7Jy!94a!09FqEhbJYkJbpW4VT-5w=0B`PO&R&&VqGfsr6KL=!G+KNtw?yjd1`=rhfdcD2d=bP zDGaA=PcIH=V2NPZ5!Mk}E)ZV-HFuT4yhV#o+)AEtLz}6(#9RGVvw-cxS9i?adlK3^ z!qz8T^zGPjbjj5j%&Z*ch4SB7B)%8O-#&Ta^UE2ftt(0$>JRZ7iM~Clc2{D);ps*8 zQi2*KtZv~Ky3ZZ2Pv0t^T%NVKs6~M1?WKZed_TfgCrjMpQdTYvf1$;kap#|JY0vo| zDV3Y$BN7$F6{oGUP~2Gh%E4*yi;k&AAyFum2 z1uU6D4U_jvm&WsQUs^Y@zI^7B4|#S~cW+FnmOsIp-}Q~D!A*XagK;rKhCraLim^7=E9B zVto%w^hcic7QEMMmcFmKVb5`Ow)n&s-;Z(BL{5)x<*$DjUpuw#@9dWHoAux7YI$y- zuWcw$El@bv#Ky1Wv!X!paNFWP4lNd|6pwa^=_j38QK)>pPtLxH=cSgCim1$JL znzNhOIIo-NY|vxyU=q|8OE6|QxSg5r+k%yjpO{{;f{bz|O$UVE5 zh5JA+?*fIFhnER{+w-$HS$Iy}CnkQq8jFvQj`bh*xg=`&`PsSoi`O(?X8iK%+WO@4 z_vSRdna$+$sO^-1DZ^EkNaljGbE?13x-a}}+s@gFkGIG;-WIVnPJekQZMjfsaJ0t8 z>-VZTFK)dOt9|uhLo>gV#KPvNgIliq)^dt2@O@=lb~{0C*P$87>m1A`q?iVp1>~}( zmMJ=^Uvru3_T%c3`;OW|EfNe}oG$Y!nHL^ksJ&t9@|j(KZa#~z*j2dXj<0f-_|hrC zL6J|V_&rNsIxV`Wb7G14$s0>&Bu|P=^Y+tWNX|)=5{dWytodYd+gjW9WwQ!4MoyT` zaA4*CfLghW91Xo}4=pD2*|cdqaO~mjm^An8Q_l+;92z%-rnxc+yz~;g)$%aDc-i-b zlNPDDP3VxFrX|p$$rZA~LAR{y0)x5khnq!<6+K_|El-uW(Z(tmDa^_PA$~4&N?fjo^`oHb(K~@>b=CY zC5}%_yCxouukHD-b#C2}o(&1>?|xx+TQ}*1j$`$=%8ATQuWxU?9^Y&muuZ)EZh%1g zeBD;pDK-Y#Ic#4HF1pp39FUA*{-IFrmhpM5x$A@vvPbf-UX)J0*{(dV!n?+RtzpYq zBhUMn5BSZKeQaS{S9-86sOJ9K->G-*U*dnT#LRJTtIXx6=BauDRi?Tbn#;a!J5%b> z!>Ji?z-b@r$9gl#gjbWj+|6#D*GuYobkcld)|cnzYO!0-T3*h)@NUngI>D>$LNYtu zp8Q<5o3UIbIiMbgU9lr^Uikm#>@R&e-p~9nN#ixsIEUQ){ri-)+btQ;-P1= zf_L~VJ;Lw!!*S24=Lgu6mh%Zs`JeDQrqOEliKV_46Q!I>MC=-SnACR$bL{`|zE170(5=s_rOz{K<1_;5nD5>H3?4`*pxUaVCYfb*ry< zGigXyFFlef`qGh+$)SO5PC+umj|JLJ5tiY94w$nA2Cro+(t7!JRr)FGOTJTHbj{3s zqp)N*XX_kssU@v`-5sA6IPO`op|5nE((TQ+9KN|Y_c$=Ae`{1wmcD7)pUSEE+M7c) zK$zijqi)ZZqK-ZT)BUYi4(4w5b`TT4ti@nB7_;_b&hZ@GGUPauTgY5=26OY){n`)HJuaeLwVXyGCRoR zPdnyh^pt^1fj`>slTY)DO$rlOCclzR|;l)OUKOzeZR+~>)dw0pqW&)1#0p(PWf>u(>G=1gqdgc zripqs{hbuWFmD#GUS7xvm-{Jm!{!~~_kF72xBJ!A-j1T~FH2k=hj<7uJy^oP|AI04 zW|c>HiZ+9-0jG+?ucJ>NF6m=?csPhd;Yw3WC_}Ptw$lZ#|I@Z^+sdB5RE|MR^74^Q zrHi>5-o#kX3Nl$&vT*Zi&4|6m5p!moUT3~gC&hJ_Zna*Df0(aFjCS<(r5u_88~>cm z_ExuI1(J;BJ?aProz zC-u`rW7D{kZX8nBwzk`}LwH(JR9i|nLwu}$b>t-rh65&+Vpnx#54(jd)ni$~!}~gD z%jyZAPNl83P;_7wWI8>2&K9N6r8|}7BF(&$a3M`bnb@9 z6ru80=QwzkqW{PpNi|*g++V&ek+(QPQGVZS#|@E!f5keNpNpNP?V=;S=>Oa!hxG3m zXoXL{a&_LdGQE_pdS9EQn@`qlxBnOGTV}Q@G*%=y`0tCLh!_Ex?e52|Ql|B%Pq!{A z`poc$)q%li`{Q>)DaU+v>NqMCs-HV0sLr{}VE%8PiKg<~mw$e%6#U6NWR67XNuSIH zktL?>yL4M~s;V|IR0Xtme&9aS7kZ*mJ@~<@HA0pVqMap-4e9oaXH8u7wr>gRrmQw8 zmO}w~CstWTXR#SSxwBYzTN`s1zvojuE z`v2q}+0S3D`95B(=enM!GFB+4_OiUgid$^*9J99GJ>t0A=>XI9>$SqU6W)s*JH1XL zEnUKh%OrhO(`svVXRF-FKlD-#a_OI2;k+m*JzU-Cd920Rz$TZQNAwi6+P+@6*LGe= z+U0wldV{wO$L@_egjMB@Fe6XKlqOus0|dM2=`VdK2Z8bKjP zj~!8Dc`NAmXrh$MU(vD?=h>MO-On6kR$=fIWMGszz+}PjTa-oK#F77m@F~F-5gP_3 zkp@rEInJtL!iT1ciXC8jAnzF9^q*P6fl;R6o#_z)v4xB>i9&jcZWf9n$0m!gIVPnh zx>_)1zD!KAj7pl=D{@28jiu*$YKxSVqL5bN)~65UUMX_VI;oLx=cVcqewhQJb`Jbv zETU10Vq8aLauzyWY2-I>P?b8s^o2o9(nWUL)H@7|qIr+-tAtIzz5<+ojxXM4mO_E6NwL98k%T2n?|AW>3`q3veEx1WijJj%{T5=AzJ#J4Jb zeHkfWHG#bm%f!oU2B6+6uy4ZP7fBD39**w=T)1JOuvZv-r$SR&A6VEqZeZ2a>d=CqG z28E}NF%QhRjx_R4_xZNC@QTXMJ4-@$J&o?_Wac;!b51pe<$!0Af)AfWTvcyS))5(< zhQA>x7D2&GPZsfTamT#!4%Jfg>QG^sxa5)T6VD04;)X|>p3c)ey4Y*c((g9Mqx$@# z&7NgUN-Mo{H%KP!?8~RVJZV90{0sg#1Z+tYXuH7hrQv@_P|GZbl*}OR(pkqF3r}H^RiHK z>RawAv)tE4y{xMW&Im{nJ=lrY=9H>$+QZhOo>Gm9(T1A@+=}{)}zu zjZzsN8R=CU7Mrh2V|t+W=*QE>bu98c4y|D?n!Pg0HavHAaB^F8M8kn8{uO_l6?;cl zh9k@K;u#r!ALX0`=6LMsV-X5oGF47iRNQaFW1n>_sudb0H|IG{SmFI4!>eS4ap-c_ zH5qMMnbm5JOcpOE@A4MX$*?$gaI#Y-zsbQ`H9z49O=rEA)5{+G&t4SHR1?l1;=nvX z)q};6X$=>n!GRn(7I_l~(VIs$EP3vBrtz=|n}>rFzl_6dqgk#?UKI8)sdi0bkT}51 zlId~exdX#gj<_RXm6^^G^S$L}-14}d_i1rD(-NjBnT!SprU)Ie_d3YLa+*QGA&YC_ z%3Hmnnhln5M>JR*b$?x$t;NzfOK7%V+w4P{Gk(2V&y>A^YxSh6SAszcHcGAbZn}6o z^zx!OmnSFP7{9#oc(dq0jru0V*ZhT&uPekiWoa?@$$rRK>A<5UpQ0^Q6uWKJ>s@k+ zZB`7AM6Y(1xh&>tDS4|bv*?){!_+sDGjiX0&JGl9NOBPlP;lv7rQIW?dL#b-+(WN2 zQdW1IYuxlR;IL5(zkxP`!DR;p?fS^TZC;9{o;h>I`b8^<3lZ)OwwM^Kq*fGbj zmEpp2x15li6UvpbZ&DV8-`aaIXik8>p$q?k)wxe~tdv?B*5y<`P*ai7ja;I+c-srd z8B6!b-3_wP?$UGZy~Wb1aP>ITlmk&m)*2plND@_PxLwV4q^I)5IYZX#N=GzWUaysz zX>(3z-jbZVx8B};lzZ>mrAvpxZnMe9+0d|)qAIsN%cW3 zIf3tAas*sseI(~=6X!d>wrRK4rO8Ro*_D@bSwMyx2x&&8|DA6^H|cRwetiwiNqu@*t}q5O*_WYm~61P;pB^(Nqic*x0WvC z{@=6C;l!=gzZ%ugo%vs4z|OvDo1>ERN(1iw?^(4!DH#_j2OCs9G32=0$*^PM6xYJf zOG96$=*F>82VUcnY_5KGWTe@V8OOLWK&6yy- zCX%K2u1qoC=N%KfKHlmr`snQ^?zp0JlT|!p#-`gW2ToWO*_{4tbNTanry}PSH>QI&(eg@ANnAbC=gVp>uk{$7a~%mv`Rb$~ zn!ff6W8|`b`%2uFY;l_6WBNGGw@1B2)X=|vv#*A+RrB(IaHm{L?$5q=G)>}LvK~HbGUc~2Y~_%;zohK5@1Lvl zcpUh@g`GWSav-fGO?<8EVOApFgwA$>vo|PUvMd7a#s5-qVFSJ+}m0G;>uv zlAFv@xxh4k^7?B67WJL?Ua!bTX}K=@@N1S+a=?H0j&*IfS=QX^l&-9B zHSxP?dEfAHoJ#i>GqDej6DCi)=c)Pe`qq6XCW^I8c>ZJF=gRrNcW!<2BTja{lfuQl zO5xt=Egw@K)Uv+oOkFa`dFhNpp|0P{TuUxl=ZSn{<$APkeeCo*N9UQmQ!Scz@T-yf zSBIP_%ckv|*i@eP`$EU#mZ|UKeFNUl{{D&W*A9uFx96pO6FII~{l9Vp_wNnDzYAHa z92EqYvsb80-rDe5Z^`1k+}RQLt7Nt$Z#ut0Y^l11Yr)SAsz+X@qy+0epZa)}Q;*XJ zGcmPQVm7buE)c%ElG~-h|BJ{weW#LY8U7<-oTBdxOVu~7U2FcKOt0nhMhT&{X8%Kf z|8f+G+-O{L*!s`m^+z@eA8}*cxhTKo^a(GJa1EKk_=n z_}JWv#JyF8)mE-Q9GS!&F2(J5@XACqUH8S_tE<}ceM2_ae5;7wEa{rUEzk1^;h11^#QX1+;M%LZS1hUj{>aSb@doP&9wn{&tFM^2G<0vu>CNVEW)WJu z^+#6u()eXA-cMcob~{S;pH~0F(E5fUXK`@aAICEi7uJ?sH{w1&eMg=)OMquoY2Xol zZQ}!rZ%KoUiYoBHRd&a)|h_TF``=xIGRf9Dgl=4M{cYWIOm?ggL zkAp+g{+iSO8Q*-Ewf3+3`t7%sOOJE^x*K1+dNs?m+3zMlycxt%?)=Ae#&s8yt{o4& zdE84T&GimHD|g|JvUH>MJ_iNS&VL*B&8;+iyi-r#^=0wDACv2Uc5i!rU*FF{Kj5aN zlR-Yu{&+u`(|^QIA6i{^*WBgx@n>(Y*oANXyN$U;yOEi5mlqR*q7&m{F0nb24HTI= zg*Ag(IxhG-_exvx{V6PTbf3ulS71kn0q1cBaoHY`$Ons<`W*GFZvGHlbfz&#&#dsK zq2u}ac6w$vBGjMxdx>)wgcMA?#qwfy7Qei(@DIJ4%?OE1cF> z7OL?`P8VvL%(N(L4$sFO(dRfN&#c*5c*Uz@D(k0~7oXP_bu4f{XIA$m>Fa!PR*TkM zf@uXetT^AX9eDn>gyD;2o?PvLWye@#CLCbmwGlYTA{sN{Ae(HBz#$IRITH>YkaIp^ zGBrv1)gtx>pOp8V<9m>|c=;3MwR8q60gGDS4tWF;8&G_G>;m|AfqCkD&y+>M#e`0?5>hu=4Xn0NE zGJE5ZZiynk6X)jWyx7??E8E-tp9RyzErQy2CZD(a`$zbK1FP(m3r@VYB7x5OEDDEv z^|&5rFH+FDyf#oQHqWAWLXPkv5osq~MQiJ%wTrdgg%>n1^Kl3&N@Z^DT{_?GB7ega zmsyi8ceiZm_E5IBFTjL1PcctZkuvI{(=YxaAga>Cv3dWwxDfZ`Imv z4~99i9ziGWHGNakpT4(GSxs@%)MN&UwC+#_6SF8Nk+{>i=e%a zyRuupew*0Q+VORwi@S&CF{|a?CJQfdsQ5kFx|Kyh(Rbsy3YFl^*D_D)&Mvy?-*Lsh zN#Sg`jO5Y9cbEn5ajIm5Gv9Jeb64+N=~|QOdH-v~4JYw^0&Rv<9`a;bOn6hMlJW5s z2NUCm<~>&wGZ-A^t`tggcrqbhMI^hUwkKjjlPRBKe>TS@hvkB^N}sCpH+EbU6E^;L z^Jq6i#YDG^)Pq}oPnq9l3K!`)73Qp?VVZVZ-=(>*?v7JuZIWxr&{(BQB4;_zGv^F>Gh ze=bSs+j;rK@g)^oPB5}|D(zHq>QPnjpCzbgyE@gmf@9;>9}iX5s+^E||6@hq4nDo_ z-W(d8j0;3}ow;N@ z&DxXm@}yI?dIpM9vpWveHJsVr@^Rjkn#FHZo=uv!wxC=(F+=V8p@1~0^|Ny{rK~ce zf@j|oS#EiCWy6)56S#J%EbMuFI*;iY*OH}$x{G4Y+es${GIR*!OHaDLn(dTlZ-~%z z*^T@m+>19%*!4ek-cN0hfR%^Ees@frFDcupDf}XE`xlX(<_ zp9L8#*`&KHE%b#SXLQ72IkAnMTQmJ-g>-K@rp&7H)O0+t%Vymw*OkJ_S&siWH4ku= zuIgJXZ=uR1_-y6VARXNvmZ@&yN^1j}?gx3Fx2x2ivv-NJKn}N@t%XoW)wCs?A0K*X zY5Fw!Y*XAdhdX-u^!W$m0@im;eOIzFI`(zk_V}KqZ(QC^*WG7vwSV1){w%}U{(UBz zzMLOJ9G6N3th)4d^`qYCs6F3f_5>*H;r%$b@b002_G_P2^hG;aTGMXV^({%*qO{(- zX8YNumcr?!Tau3`6kS;E8eZ^U{bYWS|DucY1wQHeZ8a$Kj7bunFL6}U?aWfQL$@aW z$U9j0G3AQHuki3c2i8e$dmo{$BOq6FbuvSP(h0Zj3G0PAEwf+F%yCs>b@}JQ<=?qM zbm#4fg5@e1d}1B%{eBDoP<*nU_49{_sqVTv3{0B6i_~Igt4-<`{d#Ec)5qJ~jJo7w zwoUrqy7J+pM^{d-lDN<)_GJO*+@uwqEgr$s3Y=!_5obA6d2+g~2ZP*!t7nw99ACF0 zfBFU+gMLnteK$VNZHRT!*5y88&v~Q3y>7$o(A`Qs{<&#Atd};)-2b7HdF_NoO}RYF z{cY7t7M8kKZHwblPr2&h%u!i62cY5U9Uq(hiu|%Mh!24IqPk7-Pw>-S z+dO8>Hffw4_E64JrCPnTyoDv<-QovQ7fdf1DZSsI6JDmY;Xiv#(as8^lTtHx7Vz%# z>GKG<9oWhdu5HP%g3b5URGtHEx~>(CFA(ThMDtHiPoNPuKf>cPyP%ySpZ|IMPmILR0wEEi8!|@Af}3 zxa@qW{5zZ0r;U+9&G+`?t=d;9V0?eWCW{AIbpy1!_It!&*TG=B{*~XNuXe4TyVlf9dZN*^zOv%&kG{G0xaCl zH-!>>6%rpy`1L%}&wAK+Xpz%|?brdnTh6T{C>eF^~r3~~p&H4d^bJN7+b z?R5br#z_s<3I{nk0=C373B7SvtXaS((IoV&f%j}v!khQ%4+?HRJG4?tFRn{(hRdTB zFLD%$KBzD;FwXZqr}tikqapE6!+~e(CNVfLR5?UEcsoUo$BQi~pQR~`BO(09ga2C$ zSo{S=g9Ak!4LTSWFeD`1>R7K6rpkC~!s{zc9MbO?>lUyJEyz1|M%1m5pZNiUP=Z8$ zFZ)&YUmQtAauXTl5*Qm)IU`&@uG7CVO&~R7l`)qBBacJnvpnTL30V@kCQ%nej|iHb z`p=_y#LwqSVWmehgIM85z8>dOOix`F3B_Jy=-H?+a$3Aj3N)D-I;b?SZ|`T zh-c?{;nO(`91HR`WETAE3zRx_{L~?avW@H6+>VxE%}7<=`>f z;qmEMp^1r~%A~-Anhgp(>viTlnOoJTu;%02cPC>Q9MsvJR6UjVZD94d5vWk1AI@_? zB>K2&;^7yUnx5=?^yAG$y#xMk91e2K6U;KQO>*8Sm^1xPNM^{(RhY(a=9B;Ll$SzV zkx4|5%Htrt=ackScMHucdf{|jR`C$SnIO$Op9KGID*ZM|&eBP3W1%FslDxi?b}ZwB zV?FAV4LCUeKT>ZF;!y1~nNXzSQDpLGqy4o>CLR-XKe)IFC1^hnTzg4L{QX3M(;G}g z-Zwpa&gXxK!OvJH|B(v|gPCQZoxp>vJwXjDNg@oB4WF*n>le119Be7y$sZ%UW6cWD z%ZoK#n~b}ixc@R3%L_{IU)(cAkpFkCS>{P^G1t>dn-vsJsh>?X->WC6c~rOVfoAa` zk=Y7%zTSTVI=D|aUAmE^wSN&;r0`v_;%>joq6(+niVC|wy)!d+;))TjFEifxYO}`z zF5R;e%o7(gE-SV)pW~a4?zTS9WxTL{daDq_97xpI?Jw9i<_fGMg{l(3c=;d#7jbWc$sRjs4bsXfr7}HG$zk;VXs% z-kJ{?V~QE>Y_XR+pt?S!zNv#@R)%Zz6?c1)K;h6panbl!3LJF@I2B5g>kcq3*uXx? z!S~@IP7P76>M1@)RXF4t7{wkiPDm<*Z)TX7fuXmb_lwx6gqWkSaFE1 z*p`zPrHoYzI9FXY*9c{t_c46`f2Gj+1CdX2gSDqJ+Dr|692)n0YTWCqaiX2k??dCi zPmTY5HU9tA3kEz1?9&psuO;w{C1z^G3r|awzLqF2mZbd6pD!Ru`&yE|Sh8_g^4~?1 z%&sNdi={Y+rRYuz{Zy3VFP0h{mKrW*`StL_2(h%}u(b4PX@_|iJ=m019F|@_Exr2M zvO^t@YQi$wr)6|s%ed?&vGje$^l6#1uVv2P7Qk^Pbm6qD)z`Ati)BAw#8{)iDaF8d zS2z1`SkCcjIUCD9oq7~;IxP44wA|ZeX|MbA?}p_)pO*K!EJb@tVBXcd@6+;sU(1)g zs>ZJn{C`>j_w@pPah1spnJfv63?hZ{;zi2;!;4Pliu`fNR~Iif4lg#JUTl56*j~KE zIlRPudWrY-5`Xd1;PBG$>7~)vOXJ1MlFf^38Tqrem$^5U<%;vCOfRp#US2P*-|>K{ zt-RvAgG$Tv3jG5WjngY$^FYe{P6lxKYM> zqmEyqQ8?o0A%>b>2Nem6O4%Ly0*o~m6XG;1Ds>|o&1W=Q|JdNbP$TN7;$TtfTG4cH zI**=2tL==|=o_skIh#AfSzMIb+RNMiE^5OgLFJ4^ z<;4hnn}fY~CHN0~=e{?iZ~YEs3q}4@3Opwm_Dr$`U#}05GVc->T)U{BYus?z4*AEd3rb+j2h*~V< z*~h@!a#Y}m0uPVlq?0$MW5FsIX)Z3^+KwU7SUYar%GB1-q{c8!V{*K7B#w_4?+Uv&4Tf_1qM- zVXRv#$s$vwXTvy4@)whb!ra(}vkZ5&a5uHIPiKudFzf7gMTJ=l9T}#WI|<&XTxjgj z$+>7w=k8y9=1d4Y^_#bjAAacT5l`GV&cTQZWi-{pKB-opT%-3 zYLj|(i6~=@@NQ)t>q^6DeUZe~7o{d!C(bZ@z|!Hsy05b0X}Mk)Lyi9eo^>;(dNb6t zCn(rRuk9?~a8Mj{hr*3uaY7Kt-D9a^j%dF*~OEsIoOldADPz@1gj!8fbo|E)EX zr?X^;*BpKzGNHUec-E%<(tFgeb8L!MIc8mX*uh{|h02}>oBm2HJ$+s8T-AEcMJu20 zR=85FvTxTy_Cvz=W^r>g?VT*n!*xg?YPZ6#s*0<#6pk%uOtq?F~qK&iyx3zg1T7FI2F3INSDs-mF=hIh_Pc#8;Uz?RVeN#NBkL{rZwv z$0LFN_b9sTVdhfe^x%1oN>vq|4eKr+I%T)t5{8#cxJ@tKDm8js?^EO@RN7{oO~~H z{&?9&;|P^+b1F z<+|6)=XTHCp=^=RYpQfWc&}cO#Vlh6R*hK-8haIIS#6Sbnx~&|wDs>c(ORJZh3jiA z&)Q2}Yu|ou^7U)S|IfYCJ?-G+>9egL-Pu0VV9s2HHMJEtcPMn#R(Su_jkvwoxM7$1 zp}Q|{?=n^DKke`!RQlffTZb4?^NSlWv;k;jB~EMeI)WhcClf@&De$a*_m!#UG!kG)I34Ohobkc z`dXY!jlH89_oBOOUd9%Ou6d3PPgDK39a|ZzGOO+=^W7)rOiw#&pT1|}jd-xVedns5 zwXe(d{P+&Srg58KOMe2&YQc+c@i zoa2_2w?WmGbUy-~2?*4x_jrS_@ zRadyy>x(>G8~|59GKN7j%@bBsUAM8y$x4wVsH2-V-|NiBqzqt|$ zF`P0U8x|Ze5*Jc4N%y*%rmG?ws7b{QP`}W-edLQ=R=PQ`-I?TJ!layZq7s$G)sbi#;!` zFr3S9W7k#oYg3|jGJW_pHHBd#+o@Htr?;&=BPw&gqlG*0U4Xxg;~Xi^7Uk}yBnz)8 zo#IM@{S_9EenvzrjGLsOFv;Pjc#>4Jf=R|TgUSS{J~tjQL7R<_j`m0^?utFTYwPRl z8-56Il+Ir8m$J+GR8D;H-+ppz8mk-)P58p~EZ>eAWv z;!(H3v5MJDNsJB-xxQC84&)oPwK(*$#)#jI*vk9!PWF}D)YyI>vz6u>SqTnv!6Let?SKpHJ7#sRvdnz3utROti$y(VuU0sC79CxjV{+}qfklg7a5TuDmW)j4b>AiSa#H`a zS4x~Rh9W|%1XivRQF>UqGu3g!x|4yDriw|~)4n%`tX{iWNJPCx^Y5kDayEIKNXK~)^cRAutAxa+q zKk`XU72nO~eL-?#+0CQA9JX?{IiuXVB&BriRz<%X_A&a?ZQ5 z{KAoCJC)M5wD|r0e5d4k?)SSpZ3C2-E4j{cIL>}WW zYa9-7#oQ>J^y2@L*>P5{SbG)!+|brM)cRU!LgtZFWyMRbTnc;cu}U#5RkZoSB$;nD zqiu%XF^7B8`+oj>v3&i%UwSWf#qKNqylW`W)N$1%q^)=>gJSS81hgSld_6oCBh4;#~J}3CgJ&q_zeeCd9a#CZOhlNsJ zfwsw)6YP^$OcG{NXbq9!;!ECq^x7Al?&sF7b-O;xZt4xRNo83qb^XLKvvv6*6COCr z{<(03$F49~dFCQ%=OkC1cY*)aV{3dB!apCi|K}qp>ye@)eaysF@6v<`Jxf&7J2gE# z9!~OG@R;wtglqGQiIdiCPwrSCm*-i_O*d{N!@btwdwaY4;maRzvO+Hr?3f6c!FJ0kWR`q4E0`E$XZ0634 zONAm=a+=f>D4sad8_k zl(G~wD4bcc^!QFezgZKm+%x&A!tu6KUaFws7o!3LYsCTQP$o`xk%X1(1qYnsC%3Tf zDPdsuX!4#lq2aMYI-~K|6Rwp?tgJV#x^Wh~a`@)eDOVzD$@b!4lz-5*&A&t#vs61Q z-Mwy}iu$%`M(atN$p-9|ZJ(yi4ec)EaEM|$aaFYL$HZj}0S!~8K4Dy{>R|p;K<|I! z5%##)T&81L0`f<~+?hLcGh+iA?sus&98x_{utedG_rw&wL$cGoyP~6>_bFMdmTlnn zoW$~wuSLk{vDX9+rn@)(IjC@Sye-xU)b!n!~aY;_bB(^nT3`_^sYyXLg`nTx_=ONp-?rwz*H@L2eP6$}Lj3eOCB$mc~v$Pm$ zSev{!j+ZqkE!4{_juN^h_k&^G+!q>B1`ni68|EwReAmcY@bF~Xx8n|cn0hqvs#1v!@|;Fp-{d5gDT|$u-M>dP+~wzi$5KL1 zJT5g$@g7$-b(&Li(nn>IM1)SuVwR4`XaUU~GyBcNJY!=k7>fpOzxR?O?)i?|)7plekM^(!x#b z)>1;60##e@D=n9g`<2T4AxvfJvdty6HcyhIf8RL4_Eh6fgLkFgMbXVI>V2)3Qr6Ac zzO7{1SNB7&gBw3oX)o@1zkR<9L$GklnH00ltF{~IX+J7dxpS{;XSh&$_!6m$Yxqve zmcC3?{c3qpVdcet&wSDub+CK*vUyB{M#QUkB#CyBKN4GC0c$?noudcp($@FKdvs1=@ z#seznJUuFAa9>K>_`&gUlI4N@t-=B87s~QVn4?f0 zwpGO7pU@6whNp6ZJG6cNJ@xEX`M7GHMRACoKt%DyRu@wN$pinDF=ZP&cjm75h~xGd2MGgZwS~N>(2R1 zM5Sp$Re|&pcE%HRy<5-MhVwN1wt7_eZSL)|+f}>V_?CTt7$?;rx#-*B18?^}e;Ql+ zWL?}9hW{K3`5DS*Ix)?9EXE*b$n{9P?vcAuJ-g71?V6rW42}obCm66-urn-h7pPmN z%%b4?S)}4W$AOCCP~{2f0;Y=?>=negCU~C-t2J;H>f0{LF~PGqAh2X6>-tcV*ZwmN~~&+YL2$5vsrsFK-mvZrO2gV6-$wyDe;J7XBTnLkdp za?*M+V_MeEX*oOn&s<~vAGR={$Z~qo%<2hgB^paxi*~j~uW0pTn66za%(zojYUh-g zg%j5;m|7?PLL!_();}sV)x^@icUU#`uukkSeKeERvEsnj{&fs9 zwLAqx-Md*6XViq1>styLz7%{B#$a*1a5AURUonQJ7hGEAgjpMqD* z=crxm+4!v|^rzqygM<`M0j-F1c|#S(1rs-MFxbB2icBwXUaFaKbJ~;0dCw~6#e}ij zZD3%(z|7z3d%kS?hsd^ympRd`4BQ_Ya&HJVpPa?^G51KOK-bIQy)U`Ue)P_ZQ2xBF zXs6{wx37Xrc8Xs989V9t%x+1c={M*8Unj6IX=7Pp<|MX@y^Ib;J5Gu&`&qhCQ)qMK zoJ$eiPL*ArmR!}}X30y;Q7~MrkSV|@DYW3`0`-G)4tY#vFqp@3v5A#y=B0(RO)pJh zx;W#JMI!UFZf3>B>7Db!s+LA%^?4j;5WU85{ff(%%>K`w^DB3{ls*XKxZu>7Dct;W z;l>DM7b}4mYO`1qi@2i%x@OK|)0$}hYr$f53q?Z}pIsBJl$Ktrh*7-Q#BgB}TjMOH zi@pCM1@5=a(5P}f=ehVVYmCyyxr|T9#hMV2cwE{P6o zoHVsrz`RL$VbfKQhK^q=Oq05Pl*jBfPg^r<=^?8%|Bq;;O!?p!&cA*I06JSNaAm0ke#`Y!55`Yi(HfLa^)SMwXA61yO4>W^dA}jy%50i6el4%Ygmk z%{58C)?C=-;`d?GgjC-fv({QQEs)!oo}ig_T|-Fb)QY<8UGj;|U#$eDW^VAio{_Y% zS3hv+2evGQi%ndw1^c9g)Wp|FSx?=3Ow?iamPe{W(zmxrge{btSo*)&N`QIWR?UMO z6erG6E_Ba+p7-n4D$mSjNp8(eQHz?)g%~4yxh=M+M(49NPA>U1Uw!wc3Ei507g&Bv z?wmGT`qc~;z6G288m52sSaw0nf64?F_5cRX4-CE!`fUU!)W7ChyL@?a+YY9MGpfA> z9Cxf0e7SgO*E+VuY0($wP7K~q$#r@i|r)Fd-dkMXGE_i?0 zHl~dY3DrCQ%vR!ekY!ZZ^Vj;ot&e4V4r~8R7ct@9bDwNo&sd@XLL#?!*|E)>cx&5Ki&o1! z`Pf+6f;RSQ8kyE-=q@IVgHYH01Q!O;zrvB)6#e2u;`Q@Tp#>BqQ{>vt*rzA~=b%0RtoG{0?7dg9a?Pq<)x<-Kc5PTvHAyRHi?`O~ zGunZ#ZqE_p7Wyx<>J+nKi@e}E;jEti=0Jxaq365zm#h&k?Afm-m|s+GclnL6boHw8 z$!84{&q^_$+w7e_Me3}|#vIW3-3#L1SuS;N57IF8E6i?sQNee2^_+-QG0RipXZKCx+P^mE zf;8`J=c+Tzyh3R)r?m=??9dUracZIO&HTsQNB7GtQ98Tow&dlaQrp9#a$rgB6)v;21 zrMwwKOYDud*rQz;LRZTt_I*Dge{t*5Gora1Hw{)DRuJ64b4pZ0X7z;(fh}tmR=e+= zU3U7E&JnAvr^DXNcqu(q;qR&qH4|3Z3VHjq=vG`WpUY7C_9ScJzLPNmO}EcS#LAd9 z9lNS?wW9daky_m)?J}>L?*yI|b$F{6;(PAkTcOQgn7Jn~#Qi;2b#i*ljaJpE3_J|} zw$Z}--8U&kC`&p7D!rw>0DfX_#!#f6rSB~4>v2*5hoWQ{OfqBlKD<*P}kL}gH?3)(;_K`wh zitU4?JD0a6ziqu7!_NPJd7*3Wv?QVGw&LG@a+f&nT~z*aQ7-O^p5-OEhqFR^F4)|uSQ0C+a{6L{ zu3L(;F0QV1Sf_JzQ`T}-#+fcVjzse@sBSq@n7b{?=ZXHk$NGwo%b6dqZai_t>D30s zS9*-EZWUdz3t(9H?^U(glR15XH6NJmCis6mGrjHrd+d(B(hsly=d0&Bf2=-YBk(o% zX^x!G^XQkplJ^~Xo=L4OsF>B9me(X-_-xXg)3Up#8u~nE;k(H8?(IVNZEIv+^zuF0 zd0O-i&xS>|tIWENoT+^nb8*Vm?T`8AEs1^iV(!}=?0;{}**dH<4$aZ=NT- z;-1i|ICIYRV#N)&)gQ9+B)n+<^dak?ppgH^?28|?H-5PB=%eQIGIoEFt$Cs!->@g2 zeO>qAwGRKAVgZ&wIg$O_-!08uqUi|;ew_7!)zi-;S=cje!_lsM;D_#7q^zpl){*QUF zKj!rOSZ24hCLzU7z+Zb~wOxhK3i%)QeW$wmgj~{pMA&i_Uts>Wq&1=A)Bodr#T)*d z{_l4{|8rOMN`?ss|Ng3GS2%uS{@&dfylr9TEh>S$V}w6ao_GHuK6_l`INa z(BIBh>%sD1$^WFo3_`p)HVuX6j4<2vuV^|e3n`y-?Q--DObu+wl4g@qFVYdA#vZ3>{ zyL%(^5|*!z6C5rx+Pb}+bGTvc5f)!FvlCqp7T#MW&+T`%Dl|KEooBt88zOa$YoAjbc6a^5iJIFHqlEN%OCO-XSj4S zyva0MQWLVmWfI4Pj01Bg9q3rlt|P4BzHrs-jwRBIpKvP6$$Bv;YZh`bDNm6}3R=WI zNh^4vM5UCg_rH5B#(tL1Yl=lQf|(l{+YF9u_V=ig@mnOHBkbWgXU60cC);0Tcroy* z^Mo8w@hDp0&mhEcaRKXrs*GSM-ba@&t^T*>GrNkR&|5|I5S_CoY%Y6q&IS79YK3-0 z#7?xfPQ3bgK|tcvjw{WxIzkpWE`QAVKd@C~>Z*(G<*T-wXKArr!PwuC!*#T)!}slt z+ba&gu$r$iGf?UI3m5a)((8ZuCaHZ&UaxBZXT@ViX0C(-oIjTo9OBe`_9L;+=jUhs zn{zb^H!osR-Bh65qWVf;vo>SF1Qia}Nd@XGs+X=!)#ml(TFg+hD`G+K2G#>7=0-iS zI2u-%6uGcZyD8AkZ|#>!%Vo6}2{A;=iha_U61wiim2DMX#S6MPL^Ccetdje@uyg;K z7m2Ogayl{@=G72I|%6{>GMwT=Xtk*PaxAM><(yNagHmux8zGL-R~)4rVH!FkbL!v96zaWPr)WxYz9 zTs_xGFI~z*=6N39g4=7nzRfRAY-?H66fD`@Dr#cp(pwSaAT1kw#7@w#hsiSO>68}} zdJFv$!#kBcH)O2*yYo?NM>U5~qUnjIFFlpKIbN?Dc6j=g6)7)X(ab+5fIaA(Hy7WI z>x@DZ7+6Fa7&tkYG*4e&AEBjZ^G?{oUqjuj-A0gs_x1^?T+b<;krx$zeLktoxMBVz zM&lF-$;HmkjyrGQ_D%BfV$9@z>jfPoUFNC%<7fC#MsZ`G)IM(;f&P@ zB~wX}6%Tp3tQ{lyxSbRmSqjuAFgI}WCRu069nE6uyx~{1%-`Sa%0hnA4xaz4iyBn^ za0+=&P+|BJdE$Ctb~~3K1GAjMoMiz<>Jl^4o$qK0B-^<}wq`jn$Nk#Z+@lo4nbE-1 zQSPZ%_NrTEZH&p}N9?IyE)2FOL{v@6x3g^#(ahf>Qs2?Fe6d>T%C5{+7zlfOITpjKsl_06p_y$>VK%R(Hp4lu zODvk_tsFStSS#*|IJTLgbmrOHbD}b9=QA9&l-eYDVb+Wz%b4QbCP^_dRPlXO^EA8u z-<9j#w%Jc|JYLR`I?p3?wE6WH-b*ekRvohAZ58F5?6PB<;8mk7JF-kqNU>&3c=*If zbE$T&%lT^&zpjN>1q3bHr15f}OPI@6_6FX7zt<;!__b_{{!>-YQ(6r7b{^t9d@|RO z>&}j@K&8dzmLC4{-(4RkF4_O!A+v*`SWEgzLsO=T0|)MzY>e)TP-IakboQwc65fj3n|2-g zb~DrLV<&D=`!Bat)6Y+F;_ApH#Zu<8nL0nXbyeS)%$4GM|H+0cbG(gT$UX6MxqZTW zz08!?c}wcOvYwZ5-V~A6{<522^Q+r}Qvpp)D{6fs^__CMr?4K{th9oe!Fj7qPEt90 zxbG9^{l8dmYgErrKXv4OW$mQtq01`N?E)N_#0=uLuDGSJDpfAztB2l;tR0Ha;!OL0 zK0cjYXl}~

d_xyPG}!@s|^H?cC?wxMF}-JI;GER*eK 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

F4LiN8Q!wKWn!m}6-rFzthSU}% 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