From 10549e418ba6742124046b84c44ef7a8857dacd8 Mon Sep 17 00:00:00 2001 From: kindem Date: Sat, 18 Jul 2026 14:56:23 +0800 Subject: [PATCH 1/6] feat: add Tabler editor icons --- Editor/Resource/Icons/Tabler/LICENSE | 21 ++++++++++++++++++ Editor/Resource/Icons/Tabler/README.md | 9 ++++++++ Editor/Resource/Icons/Tabler/tabler-icons.ttf | Bin 0 -> 2824356 bytes README.md | 1 + 4 files changed, 31 insertions(+) create mode 100644 Editor/Resource/Icons/Tabler/LICENSE create mode 100644 Editor/Resource/Icons/Tabler/README.md create mode 100644 Editor/Resource/Icons/Tabler/tabler-icons.ttf diff --git a/Editor/Resource/Icons/Tabler/LICENSE b/Editor/Resource/Icons/Tabler/LICENSE new file mode 100644 index 00000000..3e82379d --- /dev/null +++ b/Editor/Resource/Icons/Tabler/LICENSE @@ -0,0 +1,21 @@ +MIT License + +Copyright (c) 2020-2026 Paweł Kuna + +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/Editor/Resource/Icons/Tabler/README.md b/Editor/Resource/Icons/Tabler/README.md new file mode 100644 index 00000000..3fc0f066 --- /dev/null +++ b/Editor/Resource/Icons/Tabler/README.md @@ -0,0 +1,9 @@ +# Tabler Icons + +This directory contains the official Tabler Icons v3.45.0 outline webfont from +[`@tabler/icons-webfont`](https://www.npmjs.com/package/@tabler/icons-webfont). + +`tabler-icons.ttf` is copied without modification from `dist/fonts/tabler-icons.ttf` in the upstream package. The editor loads +only the glyphs used by its UI into the ImGui font atlas. + +Tabler Icons is distributed under the [MIT License](LICENSE). diff --git a/Editor/Resource/Icons/Tabler/tabler-icons.ttf b/Editor/Resource/Icons/Tabler/tabler-icons.ttf new file mode 100644 index 0000000000000000000000000000000000000000..706053581b473118e50bc256b7dcbba34ee31853 GIT binary patch literal 2824356 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

4uPZ>|3y$u_Q5>N4 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%0AvhC3L9S~oV1h|ylS5Q0v8&Ge16z`MOS1Uu)T2v{ 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%0Do5DIp@4 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%0D@LL}V`E48 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 literal 0 HcmV?d00001 diff --git a/README.md b/README.md index 40ed6ae8..31e7fc1f 100644 --- a/README.md +++ b/README.md @@ -153,6 +153,7 @@ Thanks all those following projects: * [VulkanMemoryAllocator](https://github.com/GPUOpen-LibrariesAndSDKs/VulkanMemoryAllocator) * [rapidjson](https://github.com/Tencent/rapidjson) * [cpp-httplib](https://github.com/yhirose/cpp-httplib) +* [Tabler Icons](https://github.com/tabler/tabler-icons) # License From 801e252aa7d906057e504d7e4371a7a619071c34 Mon Sep 17 00:00:00 2001 From: kindem Date: Sat, 18 Jul 2026 19:43:47 +0800 Subject: [PATCH 2/6] feat: integrate Tabler icons into editor --- CMakeLists.txt | 2 +- Editor/Include/Editor/Widget/IconWidgets.h | 10 + Editor/Include/Editor/Widget/TablerIcons.h | 5342 +++++++++++++++++ Editor/Resource/Icons/Tabler/README.md | 5 +- Editor/Src/EditorApplication.cpp | 21 + Editor/Src/Frame/EditorFrame.cpp | 75 +- Editor/Src/Frame/ProjectHubFrame.cpp | 46 +- Editor/Src/Panel/AssetsPanel.cpp | 82 +- Editor/Src/Panel/EditorPanels.cpp | 5 +- Editor/Src/Widget/IconWidgets.cpp | 29 + {Tool => Program}/CMakeLists.txt | 0 {Tool => Program}/MirrorTool/CMakeLists.txt | 0 {Tool => Program}/MirrorTool/ExeSrc/Main.cpp | 0 .../MirrorTool/Include/MirrorTool/Generator.h | 0 .../MirrorTool/Include/MirrorTool/Parser.h | 0 .../MirrorTool/Src/Generator.cpp | 0 {Tool => Program}/MirrorTool/Src/Parser.cpp | 0 {Tool => Program}/MirrorTool/Test/Main.cpp | 0 .../MirrorTool/Test/MirrorToolInput.h | 0 Tool/Scripts/IconFontGenerator/tabler.py | 399 ++ conanfile.py | 3 + 21 files changed, 5944 insertions(+), 75 deletions(-) create mode 100644 Editor/Include/Editor/Widget/IconWidgets.h create mode 100644 Editor/Include/Editor/Widget/TablerIcons.h create mode 100644 Editor/Src/Widget/IconWidgets.cpp rename {Tool => Program}/CMakeLists.txt (100%) rename {Tool => Program}/MirrorTool/CMakeLists.txt (100%) rename {Tool => Program}/MirrorTool/ExeSrc/Main.cpp (100%) rename {Tool => Program}/MirrorTool/Include/MirrorTool/Generator.h (100%) rename {Tool => Program}/MirrorTool/Include/MirrorTool/Parser.h (100%) rename {Tool => Program}/MirrorTool/Src/Generator.cpp (100%) rename {Tool => Program}/MirrorTool/Src/Parser.cpp (100%) rename {Tool => Program}/MirrorTool/Test/Main.cpp (100%) rename {Tool => Program}/MirrorTool/Test/MirrorToolInput.h (100%) create mode 100644 Tool/Scripts/IconFontGenerator/tabler.py diff --git a/CMakeLists.txt b/CMakeLists.txt index c006e38c..429c2575 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -40,7 +40,7 @@ else () endif () add_subdirectory(Engine) -add_subdirectory(Tool) +add_subdirectory(Program) add_subdirectory(Sample) if (BUILD_EDITOR) diff --git a/Editor/Include/Editor/Widget/IconWidgets.h b/Editor/Include/Editor/Widget/IconWidgets.h new file mode 100644 index 00000000..843223a3 --- /dev/null +++ b/Editor/Include/Editor/Widget/IconWidgets.h @@ -0,0 +1,10 @@ +#pragma once + +#include +#include + +namespace Editor::Widgets { + std::string Label(const char* inIcon, std::string_view inText); + std::string Label(const char* inIcon, std::string_view inText, std::string_view inId); + bool IconButton(const char* inId, const char* inIcon, const char* inTooltip); +} diff --git a/Editor/Include/Editor/Widget/TablerIcons.h b/Editor/Include/Editor/Widget/TablerIcons.h new file mode 100644 index 00000000..b57ec7eb --- /dev/null +++ b/Editor/Include/Editor/Widget/TablerIcons.h @@ -0,0 +1,5342 @@ +#pragma once + +// Generated from @tabler/icons-webfont v3.45.0 by Tool/Scripts/IconFontGenerator/tabler.py. +namespace Editor::Icons::Tabler { + inline constexpr char aB[] = "\xee\xb0\xb6"; + inline constexpr char aB2[] = "\xef\x89\x9f"; + inline constexpr char aBOff[] = "\xef\x82\xa6"; + inline constexpr char abacus[] = "\xef\x81\x9c"; + inline constexpr char abacusOff[] = "\xef\x8e\xb6"; + inline constexpr char abc[] = "\xef\x95\xa7"; + inline constexpr char accessPoint[] = "\xee\xb4\x9b"; + inline constexpr char accessPointOff[] = "\xee\xb4\x9a"; + inline constexpr char accessible[] = "\xee\xae\xa9"; + inline constexpr char accessibleOff[] = "\xef\x82\xa7"; + inline constexpr char acorn[] = "\xf0\x90\x89\x95"; + inline constexpr char acrobatic[] = "\xf0\x90\x89\x94"; + inline constexpr char activity[] = "\xee\xb4\xa3"; + inline constexpr char activityHeartbeat[] = "\xef\x83\x9b"; + inline constexpr char ad[] = "\xee\xa8\x82"; + inline constexpr char ad2[] = "\xee\xbc\x9f"; + inline constexpr char adCircle[] = "\xef\x9e\x9e"; + inline constexpr char adCircleOff[] = "\xef\x9e\x9d"; + inline constexpr char adOff[] = "\xef\x8e\xb7"; + inline constexpr char addressBook[] = "\xef\x80\xa1"; + inline constexpr char addressBookOff[] = "\xef\x8e\xb8"; + inline constexpr char adjustments[] = "\xee\xa8\x83"; + inline constexpr char adjustmentsAlt[] = "\xee\xb0\xb7"; + inline constexpr char adjustmentsBolt[] = "\xef\x9f\xbb"; + inline constexpr char adjustmentsCancel[] = "\xef\x9f\xbc"; + inline constexpr char adjustmentsCheck[] = "\xef\x9f\xbd"; + inline constexpr char adjustmentsCode[] = "\xef\x9f\xbe"; + inline constexpr char adjustmentsCog[] = "\xef\x9f\xbf"; + inline constexpr char adjustmentsDollar[] = "\xef\xa0\x80"; + inline constexpr char adjustmentsDown[] = "\xef\xa0\x81"; + inline constexpr char adjustmentsExclamation[] = "\xef\xa0\x82"; + inline constexpr char adjustmentsHeart[] = "\xef\xa0\x83"; + inline constexpr char adjustmentsHorizontal[] = "\xee\xb0\xb8"; + inline constexpr char adjustmentsMinus[] = "\xef\xa0\x84"; + inline constexpr char adjustmentsOff[] = "\xef\x82\xa8"; + inline constexpr char adjustmentsPause[] = "\xef\xa0\x85"; + inline constexpr char adjustmentsPin[] = "\xef\xa0\x86"; + inline constexpr char adjustmentsPlus[] = "\xef\xa0\x87"; + inline constexpr char adjustmentsQuestion[] = "\xef\xa0\x88"; + inline constexpr char adjustmentsSearch[] = "\xef\xa0\x89"; + inline constexpr char adjustmentsShare[] = "\xef\xa0\x8a"; + inline constexpr char adjustmentsSpark[] = "\xef\xbe\xbe"; + inline constexpr char adjustmentsStar[] = "\xef\xa0\x8b"; + inline constexpr char adjustmentsUp[] = "\xef\xa0\x8c"; + inline constexpr char adjustmentsX[] = "\xef\xa0\x8d"; + inline constexpr char aerialLift[] = "\xee\xb7\xbe"; + inline constexpr char affiliate[] = "\xee\xb7\xbf"; + inline constexpr char ai[] = "\xef\xbb\xa7"; + inline constexpr char aiAgent[] = "\xf0\x90\x87\xb9"; + inline constexpr char aiAgents[] = "\xf0\x90\x87\xb8"; + inline constexpr char aiGateway[] = "\xf0\x90\x87\xb7"; + inline constexpr char airBalloon[] = "\xef\x92\xa6"; + inline constexpr char airConditioning[] = "\xef\x8e\xa2"; + inline constexpr char airConditioningDisabled[] = "\xef\x95\x82"; + inline constexpr char airTrafficControl[] = "\xef\xac\x81"; + inline constexpr char alarm[] = "\xee\xa8\x84"; + inline constexpr char alarmAverage[] = "\xef\xb2\x9e"; + inline constexpr char alarmMinus[] = "\xef\x98\xb0"; + inline constexpr char alarmOff[] = "\xef\x82\xa9"; + inline constexpr char alarmPlus[] = "\xef\x98\xb1"; + inline constexpr char alarmSmoke[] = "\xf0\x90\x82\xb6"; + inline constexpr char alarmSnooze[] = "\xef\x98\xb2"; + inline constexpr char album[] = "\xef\x80\xa2"; + inline constexpr char albumOff[] = "\xef\x8e\xb9"; + inline constexpr char alertCircle[] = "\xee\xa8\x85"; + inline constexpr char alertCircleOff[] = "\xef\xb1\xa5"; + inline constexpr char alertHexagon[] = "\xef\xa0\x8e"; + inline constexpr char alertHexagonOff[] = "\xef\xb1\xa6"; + inline constexpr char alertOctagon[] = "\xee\xb3\x86"; + inline constexpr char alertSmall[] = "\xef\xa0\x8f"; + inline constexpr char alertSmallOff[] = "\xef\xb1\xa7"; + inline constexpr char alertSquare[] = "\xef\xa0\x91"; + inline constexpr char alertSquareRounded[] = "\xef\xa0\x90"; + inline constexpr char alertSquareRoundedOff[] = "\xef\xb1\xa8"; + inline constexpr char alertTriangle[] = "\xee\xa8\x86"; + inline constexpr char alertTriangleOff[] = "\xef\xb1\xa9"; + inline constexpr char alien[] = "\xee\xaf\x9e"; + inline constexpr char alignBoxBottomCenter[] = "\xef\x94\xb0"; + inline constexpr char alignBoxBottomLeft[] = "\xef\x94\xb1"; + inline constexpr char alignBoxBottomRight[] = "\xef\x94\xb2"; + inline constexpr char alignBoxCenterBottom[] = "\xef\xab\x8b"; + inline constexpr char alignBoxCenterMiddle[] = "\xef\x9e\x9f"; + inline constexpr char alignBoxCenterStretch[] = "\xef\xab\x8c"; + inline constexpr char alignBoxCenterTop[] = "\xef\xab\x8d"; + inline constexpr char alignBoxLeftBottom[] = "\xef\x94\xb3"; + inline constexpr char alignBoxLeftMiddle[] = "\xef\x94\xb4"; + inline constexpr char alignBoxLeftStretch[] = "\xef\xab\x8e"; + inline constexpr char alignBoxLeftTop[] = "\xef\x94\xb5"; + inline constexpr char alignBoxRightBottom[] = "\xef\x94\xb6"; + inline constexpr char alignBoxRightMiddle[] = "\xef\x94\xb7"; + inline constexpr char alignBoxRightStretch[] = "\xef\xab\x8f"; + inline constexpr char alignBoxRightTop[] = "\xef\x94\xb8"; + inline constexpr char alignBoxTopCenter[] = "\xef\x94\xb9"; + inline constexpr char alignBoxTopLeft[] = "\xef\x94\xba"; + inline constexpr char alignBoxTopRight[] = "\xef\x94\xbb"; + inline constexpr char alignCenter[] = "\xee\xa8\x87"; + inline constexpr char alignJustified[] = "\xee\xa8\x88"; + inline constexpr char alignLeft[] = "\xee\xa8\x89"; + inline constexpr char alignLeft2[] = "\xef\xbc\x80"; + inline constexpr char alignRight[] = "\xee\xa8\x8a"; + inline constexpr char alignRight2[] = "\xef\xbb\xbf"; + inline constexpr char alpha[] = "\xef\x95\x83"; + inline constexpr char alphabetArabic[] = "\xef\xbc\xaf"; + inline constexpr char alphabetBangla[] = "\xef\xbc\xae"; + inline constexpr char alphabetCyrillic[] = "\xef\x87\x9f"; + inline constexpr char alphabetGreek[] = "\xef\x87\xa0"; + inline constexpr char alphabetHebrew[] = "\xef\xbc\xad"; + inline constexpr char alphabetKorean[] = "\xef\xbc\xac"; + inline constexpr char alphabetLatin[] = "\xef\x87\xa1"; + inline constexpr char alphabetPolish[] = "\xf0\x90\x86\xb1"; + inline constexpr char alphabetRunes[] = "\xf0\x90\x86\xb0"; + inline constexpr char alphabetThai[] = "\xef\xbc\xab"; + inline constexpr char alt[] = "\xef\xb1\x94"; + inline constexpr char ambulance[] = "\xee\xaf\xb5"; + inline constexpr char ampersand[] = "\xef\x88\xa9"; + inline constexpr char analyze[] = "\xef\x8e\xa3"; + inline constexpr char analyzeOff[] = "\xef\x8e\xba"; + inline constexpr char anchor[] = "\xee\xad\xb6"; + inline constexpr char anchorOff[] = "\xef\x83\xb7"; + inline constexpr char angle[] = "\xee\xbc\xa0"; + inline constexpr char ankh[] = "\xef\x87\x8d"; + inline constexpr char antenna[] = "\xef\x82\x94"; + inline constexpr char antennaBars1[] = "\xee\xb3\x87"; + inline constexpr char antennaBars2[] = "\xee\xb3\x88"; + inline constexpr char antennaBars3[] = "\xee\xb3\x89"; + inline constexpr char antennaBars4[] = "\xee\xb3\x8a"; + inline constexpr char antennaBars5[] = "\xee\xb3\x8b"; + inline constexpr char antennaBarsOff[] = "\xef\x82\xaa"; + inline constexpr char antennaOff[] = "\xef\x8e\xbb"; + inline constexpr char aperture[] = "\xee\xad\x98"; + inline constexpr char apertureOff[] = "\xef\x8e\xbc"; + inline constexpr char api[] = "\xee\xbf\xbd"; + inline constexpr char apiApp[] = "\xee\xbf\xbc"; + inline constexpr char apiAppOff[] = "\xef\x82\xab"; + inline constexpr char apiBook[] = "\xf0\x90\x88\x8b"; + inline constexpr char apiOff[] = "\xef\x83\xb8"; + inline constexpr char appWindow[] = "\xee\xbf\xa6"; + inline constexpr char appWindowBottom[] = "\xf0\x90\x89\xb8"; + inline constexpr char appWindowBottomLeft[] = "\xf0\x90\x89\xba"; + inline constexpr char appWindowBottomRight[] = "\xf0\x90\x89\xb9"; + inline constexpr char appWindowCenter[] = "\xf0\x90\x89\xb7"; + inline constexpr char apple[] = "\xee\xbc\xa1"; + inline constexpr char apps[] = "\xee\xae\xb6"; + inline constexpr char appsOff[] = "\xef\x82\xac"; + inline constexpr char archeryArrow[] = "\xef\xb1\x95"; + inline constexpr char archive[] = "\xee\xa8\x8b"; + inline constexpr char archiveOff[] = "\xef\x82\xad"; + inline constexpr char armchair[] = "\xee\xbe\x9e"; + inline constexpr char armchair2[] = "\xee\xbf\xa7"; + inline constexpr char armchair2Off[] = "\xef\x8e\xbd"; + inline constexpr char armchairOff[] = "\xef\x8e\xbe"; + inline constexpr char arrowAutofitContent[] = "\xee\xbc\xb1"; + inline constexpr char arrowAutofitDown[] = "\xee\xbc\xb2"; + inline constexpr char arrowAutofitHeight[] = "\xee\xbc\xb3"; + inline constexpr char arrowAutofitLeft[] = "\xee\xbc\xb4"; + inline constexpr char arrowAutofitRight[] = "\xee\xbc\xb5"; + inline constexpr char arrowAutofitUp[] = "\xee\xbc\xb6"; + inline constexpr char arrowAutofitWidth[] = "\xee\xbc\xb7"; + inline constexpr char arrowBack[] = "\xee\xa8\x8c"; + inline constexpr char arrowBackUp[] = "\xee\xad\xb7"; + inline constexpr char arrowBackUpDouble[] = "\xef\xa7\xac"; + inline constexpr char arrowBadgeDown[] = "\xef\x98\x8b"; + inline constexpr char arrowBadgeLeft[] = "\xef\x98\x8c"; + inline constexpr char arrowBadgeRight[] = "\xef\x98\x8d"; + inline constexpr char arrowBadgeUp[] = "\xef\x98\x8e"; + inline constexpr char arrowBarBoth[] = "\xef\xab\x9d"; + inline constexpr char arrowBarDown[] = "\xee\xa8\x8d"; + inline constexpr char arrowBarLeft[] = "\xee\xa8\x8e"; + inline constexpr char arrowBarRight[] = "\xee\xa8\x8f"; + inline constexpr char arrowBarToDown[] = "\xee\xb2\x88"; + inline constexpr char arrowBarToDownDashed[] = "\xf0\x90\x85\xa4"; + inline constexpr char arrowBarToLeft[] = "\xee\xb2\x89"; + inline constexpr char arrowBarToLeftDashed[] = "\xf0\x90\x85\xa3"; + inline constexpr char arrowBarToRight[] = "\xee\xb2\x8a"; + inline constexpr char arrowBarToRightDashed[] = "\xf0\x90\x85\xa2"; + inline constexpr char arrowBarToUp[] = "\xee\xb2\x8b"; + inline constexpr char arrowBarToUpDashed[] = "\xf0\x90\x85\xa1"; + inline constexpr char arrowBarUp[] = "\xee\xa8\x90"; + inline constexpr char arrowBearLeft[] = "\xef\x81\x85"; + inline constexpr char arrowBearLeft2[] = "\xef\x81\x84"; + inline constexpr char arrowBearRight[] = "\xef\x81\x87"; + inline constexpr char arrowBearRight2[] = "\xef\x81\x86"; + inline constexpr char arrowBigDown[] = "\xee\xb7\x9a"; + inline constexpr char arrowBigDownLine[] = "\xee\xbf\xa8"; + inline constexpr char arrowBigDownLines[] = "\xee\xbf\xa9"; + inline constexpr char arrowBigLeft[] = "\xee\xb7\x9b"; + inline constexpr char arrowBigLeftLine[] = "\xee\xbf\xaa"; + inline constexpr char arrowBigLeftLines[] = "\xee\xbf\xab"; + inline constexpr char arrowBigRight[] = "\xee\xb7\x9c"; + inline constexpr char arrowBigRightLine[] = "\xee\xbf\xac"; + inline constexpr char arrowBigRightLines[] = "\xee\xbf\xad"; + inline constexpr char arrowBigUp[] = "\xee\xb7\x9d"; + inline constexpr char arrowBigUpLine[] = "\xee\xbf\xae"; + inline constexpr char arrowBigUpLines[] = "\xee\xbf\xaf"; + inline constexpr char arrowBounce[] = "\xef\x8e\xa4"; + inline constexpr char arrowCapsule[] = "\xef\xab\x9e"; + inline constexpr char arrowCurveLeft[] = "\xef\x81\x88"; + inline constexpr char arrowCurveRight[] = "\xef\x81\x89"; + inline constexpr char arrowDown[] = "\xee\xa8\x96"; + inline constexpr char arrowDownBar[] = "\xee\xb6\x98"; + inline constexpr char arrowDownCircle[] = "\xee\xa8\x91"; + inline constexpr char arrowDownDashed[] = "\xf0\x90\x81\xaa"; + inline constexpr char arrowDownFromArc[] = "\xef\xb6\x86"; + inline constexpr char arrowDownLeft[] = "\xee\xa8\x93"; + inline constexpr char arrowDownLeftCircle[] = "\xee\xa8\x92"; + inline constexpr char arrowDownRhombus[] = "\xef\x98\x9d"; + inline constexpr char arrowDownRight[] = "\xee\xa8\x95"; + inline constexpr char arrowDownRightCircle[] = "\xee\xa8\x94"; + inline constexpr char arrowDownSquare[] = "\xee\xb6\x9a"; + inline constexpr char arrowDownTail[] = "\xee\xb6\x9b"; + inline constexpr char arrowDownToArc[] = "\xef\xb6\x87"; + inline constexpr char arrowElbowLeft[] = "\xef\xa7\xad"; + inline constexpr char arrowElbowRight[] = "\xef\xa7\xae"; + inline constexpr char arrowFork[] = "\xef\x81\x8a"; + inline constexpr char arrowForkTriple[] = "\xf0\x90\x89\xb6"; + inline constexpr char arrowForward[] = "\xee\xa8\x97"; + inline constexpr char arrowForwardUp[] = "\xee\xad\xb8"; + inline constexpr char arrowForwardUpDouble[] = "\xef\xa7\xaf"; + inline constexpr char arrowGuide[] = "\xef\x88\xaa"; + inline constexpr char arrowIteration[] = "\xef\x95\xb8"; + inline constexpr char arrowLeft[] = "\xee\xa8\x99"; + inline constexpr char arrowLeftBar[] = "\xee\xb6\x9c"; + inline constexpr char arrowLeftCircle[] = "\xee\xa8\x98"; + inline constexpr char arrowLeftDashed[] = "\xf0\x90\x81\xa9"; + inline constexpr char arrowLeftFromArc[] = "\xef\xb6\x88"; + inline constexpr char arrowLeftRhombus[] = "\xef\x98\x9e"; + inline constexpr char arrowLeftRight[] = "\xef\x81\x8b"; + inline constexpr char arrowLeftSquare[] = "\xee\xb6\x9d"; + inline constexpr char arrowLeftTail[] = "\xee\xb6\x9e"; + inline constexpr char arrowLeftToArc[] = "\xef\xb6\x89"; + inline constexpr char arrowLoopLeft[] = "\xee\xb6\x9f"; + inline constexpr char arrowLoopLeft2[] = "\xef\x81\x8c"; + inline constexpr char arrowLoopRight[] = "\xee\xb6\xa0"; + inline constexpr char arrowLoopRight2[] = "\xef\x81\x8d"; + inline constexpr char arrowMerge[] = "\xef\x81\x8e"; + inline constexpr char arrowMergeAltLeft[] = "\xef\xb2\x9f"; + inline constexpr char arrowMergeAltRight[] = "\xef\xb2\xa0"; + inline constexpr char arrowMergeBoth[] = "\xef\x88\xbb"; + inline constexpr char arrowMergeLeft[] = "\xef\x88\xbc"; + inline constexpr char arrowMergeRight[] = "\xef\x88\xbd"; + inline constexpr char arrowMoveDown[] = "\xef\x8a\xba"; + inline constexpr char arrowMoveLeft[] = "\xef\x8a\xbb"; + inline constexpr char arrowMoveRight[] = "\xef\x8a\xbc"; + inline constexpr char arrowMoveUp[] = "\xef\x8a\xbd"; + inline constexpr char arrowNarrowDown[] = "\xee\xa8\x9a"; + inline constexpr char arrowNarrowDownDashed[] = "\xf0\x90\x81\xa8"; + inline constexpr char arrowNarrowLeft[] = "\xee\xa8\x9b"; + inline constexpr char arrowNarrowLeftDashed[] = "\xf0\x90\x81\xa7"; + inline constexpr char arrowNarrowRight[] = "\xee\xa8\x9c"; + inline constexpr char arrowNarrowRightDashed[] = "\xf0\x90\x81\xa6"; + inline constexpr char arrowNarrowUp[] = "\xee\xa8\x9d"; + inline constexpr char arrowNarrowUpDashed[] = "\xf0\x90\x81\xa5"; + inline constexpr char arrowRampLeft[] = "\xee\xb4\xbc"; + inline constexpr char arrowRampLeft2[] = "\xef\x81\x8f"; + inline constexpr char arrowRampLeft3[] = "\xef\x81\x90"; + inline constexpr char arrowRampRight[] = "\xee\xb4\xbd"; + inline constexpr char arrowRampRight2[] = "\xef\x81\x91"; + inline constexpr char arrowRampRight3[] = "\xef\x81\x92"; + inline constexpr char arrowRight[] = "\xee\xa8\x9f"; + inline constexpr char arrowRightBar[] = "\xee\xb6\xa1"; + inline constexpr char arrowRightCircle[] = "\xee\xa8\x9e"; + inline constexpr char arrowRightDashed[] = "\xf0\x90\x81\xa4"; + inline constexpr char arrowRightFromArc[] = "\xef\xb6\x8a"; + inline constexpr char arrowRightRhombus[] = "\xef\x98\x9f"; + inline constexpr char arrowRightSquare[] = "\xee\xb6\xa2"; + inline constexpr char arrowRightTail[] = "\xee\xb6\xa3"; + inline constexpr char arrowRightToArc[] = "\xef\xb6\x8b"; + inline constexpr char arrowRotaryFirstLeft[] = "\xef\x81\x93"; + inline constexpr char arrowRotaryFirstRight[] = "\xef\x81\x94"; + inline constexpr char arrowRotaryLastLeft[] = "\xef\x81\x95"; + inline constexpr char arrowRotaryLastRight[] = "\xef\x81\x96"; + inline constexpr char arrowRotaryLeft[] = "\xef\x81\x97"; + inline constexpr char arrowRotaryRight[] = "\xef\x81\x98"; + inline constexpr char arrowRotaryStraight[] = "\xef\x81\x99"; + inline constexpr char arrowRoundaboutLeft[] = "\xef\x88\xab"; + inline constexpr char arrowRoundaboutRight[] = "\xef\x88\xac"; + inline constexpr char arrowSharpTurnLeft[] = "\xef\x81\x9a"; + inline constexpr char arrowSharpTurnRight[] = "\xef\x81\x9b"; + inline constexpr char arrowUp[] = "\xee\xa8\xa5"; + inline constexpr char arrowUpBar[] = "\xee\xb6\xa4"; + inline constexpr char arrowUpCircle[] = "\xee\xa8\xa0"; + inline constexpr char arrowUpDashed[] = "\xf0\x90\x81\xa3"; + inline constexpr char arrowUpFromArc[] = "\xef\xb6\x8c"; + inline constexpr char arrowUpLeft[] = "\xee\xa8\xa2"; + inline constexpr char arrowUpLeftCircle[] = "\xee\xa8\xa1"; + inline constexpr char arrowUpRhombus[] = "\xef\x98\xa0"; + inline constexpr char arrowUpRight[] = "\xee\xa8\xa4"; + inline constexpr char arrowUpRightCircle[] = "\xee\xa8\xa3"; + inline constexpr char arrowUpSquare[] = "\xee\xb6\xa6"; + inline constexpr char arrowUpTail[] = "\xee\xb6\xa7"; + inline constexpr char arrowUpToArc[] = "\xef\xb6\x8d"; + inline constexpr char arrowWaveLeftDown[] = "\xee\xb6\xa8"; + inline constexpr char arrowWaveLeftUp[] = "\xee\xb6\xa9"; + inline constexpr char arrowWaveRightDown[] = "\xee\xb6\xaa"; + inline constexpr char arrowWaveRightUp[] = "\xee\xb6\xab"; + inline constexpr char arrowZigZag[] = "\xef\x92\xa7"; + inline constexpr char arrowsCross[] = "\xee\xbf\xbe"; + inline constexpr char arrowsDiagonal[] = "\xee\xa8\xa7"; + inline constexpr char arrowsDiagonal2[] = "\xee\xa8\xa6"; + inline constexpr char arrowsDiagonalMinimize[] = "\xee\xbc\xb9"; + inline constexpr char arrowsDiagonalMinimize2[] = "\xee\xbc\xb8"; + inline constexpr char arrowsDiff[] = "\xef\x8a\x96"; + inline constexpr char arrowsDoubleNeSw[] = "\xee\xb7\x9e"; + inline constexpr char arrowsDoubleNwSe[] = "\xee\xb7\x9f"; + inline constexpr char arrowsDoubleSeNw[] = "\xee\xb7\xa0"; + inline constexpr char arrowsDoubleSwNe[] = "\xee\xb7\xa1"; + inline constexpr char arrowsDown[] = "\xee\xb6\xad"; + inline constexpr char arrowsDownUp[] = "\xee\xb6\xac"; + inline constexpr char arrowsExchange[] = "\xef\x87\xb4"; + inline constexpr char arrowsExchange2[] = "\xef\x87\xb3"; + inline constexpr char arrowsHorizontal[] = "\xee\xad\x99"; + inline constexpr char arrowsJoin[] = "\xee\xb6\xaf"; + inline constexpr char arrowsJoin2[] = "\xee\xb6\xae"; + inline constexpr char arrowsLeft[] = "\xee\xb6\xb1"; + inline constexpr char arrowsLeftDown[] = "\xee\xb8\x80"; + inline constexpr char arrowsLeftRight[] = "\xee\xb6\xb0"; + inline constexpr char arrowsMaximize[] = "\xee\xa8\xa8"; + inline constexpr char arrowsMinimize[] = "\xee\xa8\xa9"; + inline constexpr char arrowsMove[] = "\xef\x88\xaf"; + inline constexpr char arrowsMoveHorizontal[] = "\xef\x88\xad"; + inline constexpr char arrowsMoveVertical[] = "\xef\x88\xae"; + inline constexpr char arrowsRandom[] = "\xef\x82\x95"; + inline constexpr char arrowsRight[] = "\xee\xb6\xb3"; + inline constexpr char arrowsRightDown[] = "\xee\xb8\x81"; + inline constexpr char arrowsRightLeft[] = "\xee\xb6\xb2"; + inline constexpr char arrowsShuffle[] = "\xef\x80\x80"; + inline constexpr char arrowsShuffle2[] = "\xee\xbf\xbf"; + inline constexpr char arrowsSort[] = "\xee\xad\x9a"; + inline constexpr char arrowsSplit[] = "\xee\xb6\xb5"; + inline constexpr char arrowsSplit2[] = "\xee\xb6\xb4"; + inline constexpr char arrowsTransferDown[] = "\xef\x8b\x8c"; + inline constexpr char arrowsTransferUp[] = "\xef\x8b\x8d"; + inline constexpr char arrowsTransferUpDown[] = "\xef\xbe\xac"; + inline constexpr char arrowsUp[] = "\xee\xb6\xb7"; + inline constexpr char arrowsUpDown[] = "\xee\xb6\xb6"; + inline constexpr char arrowsUpLeft[] = "\xee\xb8\x82"; + inline constexpr char arrowsUpRight[] = "\xee\xb8\x83"; + inline constexpr char arrowsVertical[] = "\xee\xad\x9b"; + inline constexpr char artboard[] = "\xee\xa8\xaa"; + inline constexpr char artboardOff[] = "\xef\x82\xae"; + inline constexpr char article[] = "\xef\x87\xa2"; + inline constexpr char articleOff[] = "\xef\x8e\xbf"; + inline constexpr char aspectRatio[] = "\xee\xb4\xb0"; + inline constexpr char aspectRatioOff[] = "\xef\x82\xaf"; + inline constexpr char assembly[] = "\xef\x89\x8d"; + inline constexpr char assemblyOff[] = "\xef\x8f\x80"; + inline constexpr char asset[] = "\xef\x87\x8e"; + inline constexpr char asterisk[] = "\xee\xbf\x95"; + inline constexpr char asteriskSimple[] = "\xee\xbf\x94"; + inline constexpr char at[] = "\xee\xa8\xab"; + inline constexpr char atOff[] = "\xef\x82\xb0"; + inline constexpr char atom[] = "\xee\xad\xb9"; + inline constexpr char atom2[] = "\xee\xaf\x9f"; + inline constexpr char atomOff[] = "\xef\x83\xb9"; + inline constexpr char augmentedReality[] = "\xef\x80\xa3"; + inline constexpr char augmentedReality2[] = "\xef\x8d\xbe"; + inline constexpr char augmentedRealityOff[] = "\xef\x8f\x81"; + inline constexpr char auth2fa[] = "\xee\xb2\xa0"; + inline constexpr char automaticGearbox[] = "\xef\xb2\x89"; + inline constexpr char automation[] = "\xef\xbb\xb8"; + inline constexpr char avocado[] = "\xef\xb6\x8e"; + inline constexpr char award[] = "\xee\xa8\xac"; + inline constexpr char awardOff[] = "\xef\x83\xba"; + inline constexpr char axe[] = "\xee\xbe\x9f"; + inline constexpr char axisX[] = "\xee\xbd\x85"; + inline constexpr char axisY[] = "\xee\xbd\x86"; + inline constexpr char babyBottle[] = "\xef\x97\x92"; + inline constexpr char babyCarriage[] = "\xef\x81\x9d"; + inline constexpr char background[] = "\xef\xb4\xac"; + inline constexpr char backhoe[] = "\xee\xb6\x86"; + inline constexpr char backpack[] = "\xee\xbd\x87"; + inline constexpr char backpackOff[] = "\xef\x8f\x82"; + inline constexpr char backslash[] = "\xef\xaa\xb9"; + inline constexpr char backspace[] = "\xee\xa8\xad"; + inline constexpr char badge[] = "\xee\xbf\x82"; + inline constexpr char badge2k[] = "\xf0\x90\x82\xb5"; + inline constexpr char badge3d[] = "\xef\x95\x95"; + inline constexpr char badge3k[] = "\xf0\x90\x82\xb4"; + inline constexpr char badge4k[] = "\xef\x95\x96"; + inline constexpr char badge5k[] = "\xf0\x90\x82\xb3"; + inline constexpr char badge8k[] = "\xef\x95\x97"; + inline constexpr char badgeAd[] = "\xef\x95\x98"; + inline constexpr char badgeAdOff[] = "\xef\xb6\x8f"; + inline constexpr char badgeAr[] = "\xef\x95\x99"; + inline constexpr char badgeCc[] = "\xef\x95\x9a"; + inline constexpr char badgeHd[] = "\xef\x95\x9b"; + inline constexpr char badgeOff[] = "\xef\x83\xbb"; + inline constexpr char badgeSd[] = "\xef\x95\x9c"; + inline constexpr char badgeTm[] = "\xef\x95\x9d"; + inline constexpr char badgeVo[] = "\xef\x95\x9e"; + inline constexpr char badgeVr[] = "\xef\x95\x9f"; + inline constexpr char badgeWc[] = "\xef\x95\xa0"; + inline constexpr char badges[] = "\xee\xbf\x83"; + inline constexpr char badgesOff[] = "\xef\x83\xbc"; + inline constexpr char baguette[] = "\xef\x8e\xa5"; + inline constexpr char ballAmericanFootball[] = "\xee\xb8\x84"; + inline constexpr char ballAmericanFootballOff[] = "\xef\x8f\x83"; + inline constexpr char ballBaseball[] = "\xee\xbe\xa0"; + inline constexpr char ballBasketball[] = "\xee\xb0\xa8"; + inline constexpr char ballBowling[] = "\xee\xb0\xa9"; + inline constexpr char ballFootball[] = "\xee\xb8\x86"; + inline constexpr char ballFootballOff[] = "\xee\xb8\x85"; + inline constexpr char ballTennis[] = "\xee\xb0\xaa"; + inline constexpr char ballVolleyball[] = "\xee\xb0\xab"; + inline constexpr char balloon[] = "\xee\xbc\xba"; + inline constexpr char balloonOff[] = "\xef\x83\xbd"; + inline constexpr char ballpen[] = "\xef\x81\xae"; + inline constexpr char ballpenOff[] = "\xef\x82\xb1"; + inline constexpr char ban[] = "\xee\xa8\xae"; + inline constexpr char banana[] = "\xf0\x90\x89\x93"; + inline constexpr char bandage[] = "\xee\xad\xba"; + inline constexpr char bandageOff[] = "\xef\x8f\x84"; + inline constexpr char barbell[] = "\xee\xbf\xb0"; + inline constexpr char barbellOff[] = "\xef\x82\xb2"; + inline constexpr char barcode[] = "\xee\xaf\x86"; + inline constexpr char barcodeOff[] = "\xef\x82\xb3"; + inline constexpr char barrel[] = "\xef\x82\xb4"; + inline constexpr char barrelOff[] = "\xef\x83\xbe"; + inline constexpr char barrierBlock[] = "\xef\x80\x8e"; + inline constexpr char barrierBlockOff[] = "\xef\x82\xb5"; + inline constexpr char baseline[] = "\xef\x80\xa4"; + inline constexpr char baselineDensityLarge[] = "\xef\xa7\xb0"; + inline constexpr char baselineDensityMedium[] = "\xef\xa7\xb1"; + inline constexpr char baselineDensitySmall[] = "\xef\xa7\xb2"; + inline constexpr char basket[] = "\xee\xaf\xa1"; + inline constexpr char basketBolt[] = "\xef\xad\x83"; + inline constexpr char basketCancel[] = "\xef\xad\x84"; + inline constexpr char basketCheck[] = "\xef\xad\x85"; + inline constexpr char basketCode[] = "\xef\xad\x86"; + inline constexpr char basketCog[] = "\xef\xad\x87"; + inline constexpr char basketDiscount[] = "\xef\xad\x88"; + inline constexpr char basketDollar[] = "\xef\xad\x89"; + inline constexpr char basketDown[] = "\xef\xad\x8a"; + inline constexpr char basketExclamation[] = "\xef\xad\x8b"; + inline constexpr char basketHeart[] = "\xef\xad\x8c"; + inline constexpr char basketMinus[] = "\xef\xad\x8d"; + inline constexpr char basketOff[] = "\xef\x82\xb6"; + inline constexpr char basketPause[] = "\xef\xad\x8e"; + inline constexpr char basketPin[] = "\xef\xad\x8f"; + inline constexpr char basketPlus[] = "\xef\xad\x90"; + inline constexpr char basketQuestion[] = "\xef\xad\x91"; + inline constexpr char basketSearch[] = "\xef\xad\x92"; + inline constexpr char basketShare[] = "\xef\xad\x93"; + inline constexpr char basketStar[] = "\xef\xad\x94"; + inline constexpr char basketUp[] = "\xef\xad\x95"; + inline constexpr char basketX[] = "\xef\xad\x96"; + inline constexpr char bat[] = "\xef\x8a\x84"; + inline constexpr char bath[] = "\xee\xbd\x88"; + inline constexpr char bathOff[] = "\xef\x83\xbf"; + inline constexpr char battery[] = "\xee\xa8\xb4"; + inline constexpr char battery1[] = "\xee\xa8\xaf"; + inline constexpr char battery2[] = "\xee\xa8\xb0"; + inline constexpr char battery3[] = "\xee\xa8\xb1"; + inline constexpr char battery4[] = "\xee\xa8\xb2"; + inline constexpr char batteryAutomotive[] = "\xee\xb8\x87"; + inline constexpr char batteryCharging[] = "\xee\xa8\xb3"; + inline constexpr char batteryCharging2[] = "\xee\xbc\xbb"; + inline constexpr char batteryEco[] = "\xee\xbc\xbc"; + inline constexpr char batteryExclamation[] = "\xef\xbc\x9d"; + inline constexpr char batteryOff[] = "\xee\xb4\x9c"; + inline constexpr char batterySpark[] = "\xef\xbe\xbd"; + inline constexpr char batteryVertical[] = "\xef\xbc\x93"; + inline constexpr char batteryVertical1[] = "\xef\xbc\x9c"; + inline constexpr char batteryVertical2[] = "\xef\xbc\x9b"; + inline constexpr char batteryVertical3[] = "\xef\xbc\x9a"; + inline constexpr char batteryVertical4[] = "\xef\xbc\x99"; + inline constexpr char batteryVerticalCharging[] = "\xef\xbc\x97"; + inline constexpr char batteryVerticalCharging2[] = "\xef\xbc\x98"; + inline constexpr char batteryVerticalEco[] = "\xef\xbc\x96"; + inline constexpr char batteryVerticalExclamation[] = "\xef\xbc\x95"; + inline constexpr char batteryVerticalOff[] = "\xef\xbc\x94"; + inline constexpr char beach[] = "\xee\xbc\xbd"; + inline constexpr char beachOff[] = "\xef\x82\xb7"; + inline constexpr char bed[] = "\xee\xad\x9c"; + inline constexpr char bedFlat[] = "\xef\xb2\xa1"; + inline constexpr char bedOff[] = "\xef\x84\x80"; + inline constexpr char beer[] = "\xee\xbe\xa1"; + inline constexpr char beerOff[] = "\xef\x84\x81"; + inline constexpr char bell[] = "\xee\xa8\xb5"; + inline constexpr char bellBolt[] = "\xef\xa0\x92"; + inline constexpr char bellCancel[] = "\xef\xa0\x93"; + inline constexpr char bellCheck[] = "\xef\xa0\x94"; + inline constexpr char bellCode[] = "\xef\xa0\x95"; + inline constexpr char bellCog[] = "\xef\xa0\x96"; + inline constexpr char bellDollar[] = "\xef\xa0\x97"; + inline constexpr char bellDown[] = "\xef\xa0\x98"; + inline constexpr char bellExclamation[] = "\xef\xa0\x99"; + inline constexpr char bellHeart[] = "\xef\xa0\x9a"; + inline constexpr char bellMinus[] = "\xee\xb7\xa2"; + inline constexpr char bellOff[] = "\xee\xb3\xa9"; + inline constexpr char bellPause[] = "\xef\xa0\x9b"; + inline constexpr char bellPin[] = "\xef\xa0\x9c"; + inline constexpr char bellPlus[] = "\xee\xb7\xa3"; + inline constexpr char bellQuestion[] = "\xef\xa0\x9d"; + inline constexpr char bellRinging[] = "\xee\xb4\x87"; + inline constexpr char bellRinging2[] = "\xee\xb7\xa4"; + inline constexpr char bellSchool[] = "\xef\x81\x9e"; + inline constexpr char bellSearch[] = "\xef\xa0\x9e"; + inline constexpr char bellShare[] = "\xef\xa0\x9f"; + inline constexpr char bellStar[] = "\xef\xa0\xa0"; + inline constexpr char bellUp[] = "\xef\xa0\xa1"; + inline constexpr char bellX[] = "\xee\xb7\xa5"; + inline constexpr char bellZ[] = "\xee\xbf\xb1"; + inline constexpr char beta[] = "\xef\x95\x84"; + inline constexpr char bible[] = "\xee\xbf\x84"; + inline constexpr char bike[] = "\xee\xa8\xb6"; + inline constexpr char bikeOff[] = "\xef\x82\xb8"; + inline constexpr char binary[] = "\xee\xb8\x88"; + inline constexpr char binaryOff[] = "\xef\x8f\x85"; + inline constexpr char binaryTree[] = "\xef\x97\x94"; + inline constexpr char binaryTree2[] = "\xef\x97\x93"; + inline constexpr char binoculars[] = "\xef\xbb\xbe"; + inline constexpr char biohazard[] = "\xee\xb2\xb8"; + inline constexpr char biohazardOff[] = "\xef\x82\xb9"; + inline constexpr char blade[] = "\xef\x92\xbd"; + inline constexpr char bleach[] = "\xef\x8b\xb3"; + inline constexpr char bleachChlorine[] = "\xef\x8b\xb0"; + inline constexpr char bleachNoChlorine[] = "\xef\x8b\xb1"; + inline constexpr char bleachOff[] = "\xef\x8b\xb2"; + inline constexpr char blendMode[] = "\xef\xba\xb0"; + inline constexpr char blender[] = "\xef\xb2\xa2"; + inline constexpr char blind[] = "\xf0\x90\x86\xaf"; + inline constexpr char blob[] = "\xef\xba\xaf"; + inline constexpr char blockquote[] = "\xee\xb8\x89"; + inline constexpr char blocks[] = "\xf0\x90\x82\xb2"; + inline constexpr char bluetooth[] = "\xee\xa8\xb7"; + inline constexpr char bluetoothConnected[] = "\xee\xb3\xaa"; + inline constexpr char bluetoothOff[] = "\xee\xb3\xab"; + inline constexpr char bluetoothX[] = "\xef\x82\x81"; + inline constexpr char blur[] = "\xee\xbe\x8c"; + inline constexpr char blurOff[] = "\xef\x8f\x86"; + inline constexpr char bmp[] = "\xef\x8e\xa6"; + inline constexpr char bodyScan[] = "\xef\xb2\xa3"; + inline constexpr char bold[] = "\xee\xad\xbb"; + inline constexpr char boldOff[] = "\xef\x82\xba"; + inline constexpr char bolt[] = "\xee\xa8\xb8"; + inline constexpr char boltOff[] = "\xee\xb3\xac"; + inline constexpr char bomb[] = "\xef\x96\x9c"; + inline constexpr char bone[] = "\xee\xb6\xb8"; + inline constexpr char boneOff[] = "\xef\x82\xbb"; + inline constexpr char bong[] = "\xef\x8e\xa7"; + inline constexpr char bongOff[] = "\xef\x8f\x87"; + inline constexpr char book[] = "\xee\xa8\xb9"; + inline constexpr char book2[] = "\xee\xbf\x85"; + inline constexpr char bookDownload[] = "\xef\x81\xb0"; + inline constexpr char bookOff[] = "\xef\x82\xbc"; + inline constexpr char bookUpload[] = "\xef\x81\xb1"; + inline constexpr char bookmark[] = "\xee\xa8\xba"; + inline constexpr char bookmarkAi[] = "\xef\xb2\x8a"; + inline constexpr char bookmarkEdit[] = "\xef\xa9\x9e"; + inline constexpr char bookmarkMinus[] = "\xef\xa9\x9f"; + inline constexpr char bookmarkOff[] = "\xee\xb3\xad"; + inline constexpr char bookmarkPlus[] = "\xef\xa9\xa0"; + inline constexpr char bookmarkQuestion[] = "\xef\xa9\xa1"; + inline constexpr char bookmarks[] = "\xee\xb4\x88"; + inline constexpr char bookmarksOff[] = "\xef\x82\xbd"; + inline constexpr char books[] = "\xee\xbf\xb2"; + inline constexpr char booksOff[] = "\xef\x82\xbe"; + inline constexpr char boom[] = "\xef\xb6\xbe"; + inline constexpr char borderAll[] = "\xee\xa8\xbb"; + inline constexpr char borderBottom[] = "\xee\xa8\xbc"; + inline constexpr char borderBottomPlus[] = "\xef\xb6\xbd"; + inline constexpr char borderCornerIos[] = "\xef\xb6\x98"; + inline constexpr char borderCornerPill[] = "\xef\xb5\xa2"; + inline constexpr char borderCornerRounded[] = "\xef\xb5\xa3"; + inline constexpr char borderCornerSquare[] = "\xef\xb5\xa4"; + inline constexpr char borderCorners[] = "\xef\x9e\xa0"; + inline constexpr char borderHorizontal[] = "\xee\xa8\xbd"; + inline constexpr char borderInner[] = "\xee\xa8\xbe"; + inline constexpr char borderLeft[] = "\xee\xa8\xbf"; + inline constexpr char borderLeftPlus[] = "\xef\xb6\xbc"; + inline constexpr char borderNone[] = "\xee\xa9\x80"; + inline constexpr char borderOuter[] = "\xee\xa9\x81"; + inline constexpr char borderRadius[] = "\xee\xad\xbc"; + inline constexpr char borderRight[] = "\xee\xa9\x82"; + inline constexpr char borderRightPlus[] = "\xef\xb6\xbb"; + inline constexpr char borderSides[] = "\xef\x9e\xa1"; + inline constexpr char borderStyle[] = "\xee\xb8\x8a"; + inline constexpr char borderStyle2[] = "\xee\xbc\xa2"; + inline constexpr char borderTop[] = "\xee\xa9\x83"; + inline constexpr char borderTopPlus[] = "\xef\xb6\xba"; + inline constexpr char borderVertical[] = "\xee\xa9\x84"; + inline constexpr char botId[] = "\xf0\x90\x87\xb6"; + inline constexpr char bottle[] = "\xee\xbc\x8b"; + inline constexpr char bottleOff[] = "\xef\x8f\x88"; + inline constexpr char bounceLeft[] = "\xef\x96\x9d"; + inline constexpr char bounceRight[] = "\xef\x96\x9e"; + inline constexpr char bow[] = "\xef\x82\x96"; + inline constexpr char bowl[] = "\xef\x93\xba"; + inline constexpr char bowlChopsticks[] = "\xef\xb6\x90"; + inline constexpr char bowlSpoon[] = "\xef\xb6\x91"; + inline constexpr char bowling[] = "\xf0\x90\x82\xb1"; + inline constexpr char box[] = "\xee\xa9\x85"; + inline constexpr char boxAlignBottom[] = "\xef\x8a\xa8"; + inline constexpr char boxAlignBottomLeft[] = "\xef\x8b\x8e"; + inline constexpr char boxAlignBottomRight[] = "\xef\x8b\x8f"; + inline constexpr char boxAlignLeft[] = "\xef\x8a\xa9"; + inline constexpr char boxAlignRight[] = "\xef\x8a\xaa"; + inline constexpr char boxAlignTop[] = "\xef\x8a\xab"; + inline constexpr char boxAlignTopLeft[] = "\xef\x8b\x90"; + inline constexpr char boxAlignTopRight[] = "\xef\x8b\x91"; + inline constexpr char boxMargin[] = "\xee\xb8\x8b"; + inline constexpr char boxModel[] = "\xee\xb8\x8c"; + inline constexpr char boxModel2[] = "\xee\xbc\xa3"; + inline constexpr char boxModel2Off[] = "\xef\x8f\x89"; + inline constexpr char boxModelOff[] = "\xef\x8f\x8a"; + inline constexpr char boxMultiple[] = "\xee\xb8\x97"; + inline constexpr char boxMultiple0[] = "\xee\xb8\x8d"; + inline constexpr char boxMultiple1[] = "\xee\xb8\x8e"; + inline constexpr char boxMultiple2[] = "\xee\xb8\x8f"; + inline constexpr char boxMultiple3[] = "\xee\xb8\x90"; + inline constexpr char boxMultiple4[] = "\xee\xb8\x91"; + inline constexpr char boxMultiple5[] = "\xee\xb8\x92"; + inline constexpr char boxMultiple6[] = "\xee\xb8\x93"; + inline constexpr char boxMultiple7[] = "\xee\xb8\x94"; + inline constexpr char boxMultiple8[] = "\xee\xb8\x95"; + inline constexpr char boxMultiple9[] = "\xee\xb8\x96"; + inline constexpr char boxOff[] = "\xef\x84\x82"; + inline constexpr char boxPadding[] = "\xee\xb8\x98"; + inline constexpr char braces[] = "\xee\xaf\x8c"; + inline constexpr char bracesOff[] = "\xef\x82\xbf"; + inline constexpr char brackets[] = "\xee\xaf\x8d"; + inline constexpr char bracketsAngle[] = "\xef\xb2\xb2"; + inline constexpr char bracketsAngleOff[] = "\xef\xb2\xb1"; + inline constexpr char bracketsContain[] = "\xef\x87\xa5"; + inline constexpr char bracketsContainEnd[] = "\xef\x87\xa3"; + inline constexpr char bracketsContainStart[] = "\xef\x87\xa4"; + inline constexpr char bracketsOff[] = "\xef\x83\x80"; + inline constexpr char braille[] = "\xef\x95\x85"; + inline constexpr char brain[] = "\xef\x96\x9f"; + inline constexpr char brand4chan[] = "\xef\x92\x94"; + inline constexpr char brandAbstract[] = "\xef\x92\x95"; + inline constexpr char brandAdobe[] = "\xef\x83\x9c"; + inline constexpr char brandAdobeAfterEffects[] = "\xef\xbc\xaa"; + inline constexpr char brandAdobeIllustrator[] = "\xef\xbc\xa9"; + inline constexpr char brandAdobeIndesign[] = "\xef\xbc\xa8"; + inline constexpr char brandAdobePhotoshop[] = "\xef\xbc\xa7"; + inline constexpr char brandAdobePremiere[] = "\xef\xbc\xa6"; + inline constexpr char brandAdobeXd[] = "\xef\xbc\xa5"; + inline constexpr char brandAdonisJs[] = "\xef\x92\x96"; + inline constexpr char brandAirbnb[] = "\xee\xb5\xa8"; + inline constexpr char brandAirtable[] = "\xee\xbd\xaa"; + inline constexpr char brandAlgolia[] = "\xef\x8e\x90"; + inline constexpr char brandAlipay[] = "\xef\x9e\xa2"; + inline constexpr char brandAlpineJs[] = "\xef\x8c\xa4"; + inline constexpr char brandAmazon[] = "\xef\x88\xb0"; + inline constexpr char brandAmd[] = "\xef\x99\x93"; + inline constexpr char brandAmie[] = "\xef\xbe\xab"; + inline constexpr char brandAmigo[] = "\xef\x97\xb9"; + inline constexpr char brandAmongUs[] = "\xef\x88\x85"; + inline constexpr char brandAndroid[] = "\xee\xb0\x96"; + inline constexpr char brandAngular[] = "\xee\xbd\xab"; + inline constexpr char brandAnsible[] = "\xef\xa9\xb0"; + inline constexpr char brandAo3[] = "\xef\x97\xa8"; + inline constexpr char brandAppgallery[] = "\xef\x88\xb1"; + inline constexpr char brandApple[] = "\xee\xb0\x97"; + inline constexpr char brandAppleArcade[] = "\xee\xb5\xa9"; + inline constexpr char brandAppleNews[] = "\xef\xbc\xa4"; + inline constexpr char brandApplePodcast[] = "\xef\x87\xa6"; + inline constexpr char brandAppstore[] = "\xee\xb4\xa4"; + inline constexpr char brandArc[] = "\xef\xba\xae"; + inline constexpr char brandAsana[] = "\xee\xb7\x85"; + inline constexpr char brandAstro[] = "\xef\xb6\xb9"; + inline constexpr char brandAudible[] = "\xf0\x90\x89\x92"; + inline constexpr char brandAuth0[] = "\xef\xb2\xb3"; + inline constexpr char brandAws[] = "\xef\xa9\x8c"; + inline constexpr char brandAzure[] = "\xef\xa9\x8d"; + inline constexpr char brandBackbone[] = "\xef\x8c\xa5"; + inline constexpr char brandBadoo[] = "\xef\x88\x86"; + inline constexpr char brandBaidu[] = "\xef\x97\xa9"; + inline constexpr char brandBandcamp[] = "\xef\x88\x87"; + inline constexpr char brandBandlab[] = "\xef\x97\xba"; + inline constexpr char brandBeats[] = "\xef\x88\x88"; + inline constexpr char brandBebo[] = "\xef\xbe\xaa"; + inline constexpr char brandBehance[] = "\xee\xb1\xae"; + inline constexpr char brandBilibili[] = "\xef\x9b\x92"; + inline constexpr char brandBinance[] = "\xef\x96\xa0"; + inline constexpr char brandBing[] = "\xee\xb7\x86"; + inline constexpr char brandBitbucket[] = "\xee\xb7\x87"; + inline constexpr char brandBlackberry[] = "\xef\x95\xa8"; + inline constexpr char brandBlender[] = "\xef\x8c\xa6"; + inline constexpr char brandBlogger[] = "\xef\x8d\x9a"; + inline constexpr char brandBluesky[] = "\xef\xb5\xb5"; + inline constexpr char brandBooking[] = "\xee\xb7\x88"; + inline constexpr char brandBootstrap[] = "\xee\xbc\xbe"; + inline constexpr char brandBulma[] = "\xef\x8c\xa7"; + inline constexpr char brandBumble[] = "\xef\x97\xbb"; + inline constexpr char brandBunpo[] = "\xef\x93\x8f"; + inline constexpr char brandCSharp[] = "\xef\x80\x83"; + inline constexpr char brandCake[] = "\xef\x9e\xa3"; + inline constexpr char brandCakephp[] = "\xef\x9e\xaf"; + inline constexpr char brandCampaignmonitor[] = "\xef\x8c\xa8"; + inline constexpr char brandCarbon[] = "\xef\x8d\x88"; + inline constexpr char brandCashapp[] = "\xef\x8e\x91"; + inline constexpr char brandChrome[] = "\xee\xb0\x98"; + inline constexpr char brandCinema4d[] = "\xef\xa9\xb1"; + inline constexpr char brandCitymapper[] = "\xef\x97\xbc"; + inline constexpr char brandCloudflare[] = "\xef\xa9\x8e"; + inline constexpr char brandCodecov[] = "\xef\x8c\xa9"; + inline constexpr char brandCodepen[] = "\xee\xb1\xaf"; + inline constexpr char brandCodesandbox[] = "\xee\xb5\xaa"; + inline constexpr char brandCohost[] = "\xef\x97\x95"; + inline constexpr char brandCoinbase[] = "\xef\x88\x89"; + inline constexpr char brandComedyCentral[] = "\xef\x88\x97"; + inline constexpr char brandCoreos[] = "\xef\x97\xbd"; + inline constexpr char brandCouchdb[] = "\xef\x98\x8f"; + inline constexpr char brandCouchsurfing[] = "\xef\x8e\x92"; + inline constexpr char brandCpp[] = "\xef\x97\xbe"; + inline constexpr char brandCraft[] = "\xef\xa9\xb2"; + inline constexpr char brandCrunchbase[] = "\xef\x9f\xa3"; + inline constexpr char brandCss3[] = "\xee\xb5\xab"; + inline constexpr char brandCtemplar[] = "\xef\x93\x90"; + inline constexpr char brandCucumber[] = "\xee\xbd\xac"; + inline constexpr char brandCupra[] = "\xef\x93\x91"; + inline constexpr char brandCypress[] = "\xef\x8c\xb3"; + inline constexpr char brandD3[] = "\xef\x89\x8e"; + inline constexpr char brandDatabricks[] = "\xef\xb1\x81"; + inline constexpr char brandDaysCounter[] = "\xef\x93\x92"; + inline constexpr char brandDcos[] = "\xef\x8c\xaa"; + inline constexpr char brandDebian[] = "\xee\xbd\x97"; + inline constexpr char brandDeezer[] = "\xef\x9e\x8b"; + inline constexpr char brandDeliveroo[] = "\xef\x93\x93"; + inline constexpr char brandDeno[] = "\xef\x89\x8f"; + inline constexpr char brandDenodo[] = "\xef\x98\x90"; + inline constexpr char brandDeviantart[] = "\xee\xb3\xbb"; + inline constexpr char brandDigg[] = "\xef\xa9\xb3"; + inline constexpr char brandDingtalk[] = "\xef\x97\xaa"; + inline constexpr char brandDiscord[] = "\xee\xb3\xa3"; + inline constexpr char brandDisney[] = "\xef\x88\x8a"; + inline constexpr char brandDisqus[] = "\xee\xb7\x89"; + inline constexpr char brandDjango[] = "\xef\x8d\x89"; + inline constexpr char brandDocker[] = "\xee\xb7\x8a"; + inline constexpr char brandDoctrine[] = "\xee\xbd\xad"; + inline constexpr char brandDolbyDigital[] = "\xef\x93\x94"; + inline constexpr char brandDouban[] = "\xef\x97\xbf"; + inline constexpr char brandDribbble[] = "\xee\xb0\x99"; + inline constexpr char brandDropbox[] = "\xf0\x90\x86\x8a"; + inline constexpr char brandDrops[] = "\xef\x93\x95"; + inline constexpr char brandDrupal[] = "\xef\x8e\x93"; + inline constexpr char brandEdge[] = "\xee\xb3\xbc"; + inline constexpr char brandElastic[] = "\xef\x98\x91"; + inline constexpr char brandElectronicArts[] = "\xef\xa9\xb4"; + inline constexpr char brandEmber[] = "\xef\x92\x97"; + inline constexpr char brandEnvato[] = "\xef\x8e\x94"; + inline constexpr char brandEtsy[] = "\xef\x99\x94"; + inline constexpr char brandEvernote[] = "\xef\x98\x80"; + inline constexpr char brandFacebook[] = "\xee\xb0\x9a"; + inline constexpr char brandFeedly[] = "\xef\xa9\xb5"; + inline constexpr char brandFigma[] = "\xee\xb2\x93"; + inline constexpr char brandFilezilla[] = "\xef\xa9\xb6"; + inline constexpr char brandFinder[] = "\xef\x88\x98"; + inline constexpr char brandFirebase[] = "\xee\xbd\xae"; + inline constexpr char brandFirefox[] = "\xee\xb3\xbd"; + inline constexpr char brandFiverr[] = "\xef\x9e\xa4"; + inline constexpr char brandFlickr[] = "\xee\xb3\xbe"; + inline constexpr char brandFlightradar24[] = "\xef\x93\x96"; + inline constexpr char brandFlipboard[] = "\xef\x88\x8b"; + inline constexpr char brandFlutter[] = "\xef\x8e\x95"; + inline constexpr char brandFortnite[] = "\xef\x89\xa0"; + inline constexpr char brandFoursquare[] = "\xee\xb3\xbf"; + inline constexpr char brandFramer[] = "\xee\xb0\x9b"; + inline constexpr char brandFramerMotion[] = "\xef\x9e\x8c"; + inline constexpr char brandFunimation[] = "\xef\x99\x95"; + inline constexpr char brandGatsby[] = "\xef\x8e\x96"; + inline constexpr char brandGit[] = "\xee\xbd\xaf"; + inline constexpr char brandGithub[] = "\xee\xb0\x9c"; + inline constexpr char brandGithubCopilot[] = "\xef\x92\xa8"; + inline constexpr char brandGitlab[] = "\xee\xb0\x9d"; + inline constexpr char brandGmail[] = "\xee\xbe\xa2"; + inline constexpr char brandGolang[] = "\xef\x9e\x8d"; + inline constexpr char brandGoogle[] = "\xee\xb0\x9f"; + inline constexpr char brandGoogleAnalytics[] = "\xee\xb7\x8b"; + inline constexpr char brandGoogleBigQuery[] = "\xef\x98\x92"; + inline constexpr char brandGoogleDrive[] = "\xee\xb0\x9e"; + inline constexpr char brandGoogleFit[] = "\xef\x8a\x97"; + inline constexpr char brandGoogleHome[] = "\xef\x98\x81"; + inline constexpr char brandGoogleMaps[] = "\xef\xa9\x8f"; + inline constexpr char brandGoogleOne[] = "\xef\x88\xb2"; + inline constexpr char brandGooglePhotos[] = "\xef\x88\x8c"; + inline constexpr char brandGooglePlay[] = "\xee\xb4\xa5"; + inline constexpr char brandGooglePodcasts[] = "\xef\x99\x96"; + inline constexpr char brandGrammarly[] = "\xef\x8c\xab"; + inline constexpr char brandGraphql[] = "\xef\x8c\xac"; + inline constexpr char brandGravatar[] = "\xee\xb7\x8c"; + inline constexpr char brandGrindr[] = "\xef\x88\x8d"; + inline constexpr char brandGuardian[] = "\xef\x93\xbb"; + inline constexpr char brandGumroad[] = "\xef\x97\x96"; + inline constexpr char brandHackerrank[] = "\xef\xbc\xa3"; + inline constexpr char brandHbo[] = "\xef\x99\x97"; + inline constexpr char brandHeadlessui[] = "\xef\x8c\xad"; + inline constexpr char brandHexo[] = "\xef\xa9\x90"; + inline constexpr char brandHipchat[] = "\xee\xb7\x8d"; + inline constexpr char brandHtml5[] = "\xee\xb5\xac"; + inline constexpr char brandInertia[] = "\xef\x8d\x8a"; + inline constexpr char brandInfakt[] = "\xf0\x90\x88\x8a"; + inline constexpr char brandInstagram[] = "\xee\xb0\xa0"; + inline constexpr char brandIntercom[] = "\xef\x87\x8f"; + inline constexpr char brandItch[] = "\xef\xa8\xa2"; + inline constexpr char brandJavascript[] = "\xee\xbc\x8c"; + inline constexpr char brandJira[] = "\xf0\x90\x88\xb1"; + inline constexpr char brandJuejin[] = "\xef\x9e\xb0"; + inline constexpr char brandKakaoTalk[] = "\xef\xb4\xad"; + inline constexpr char brandKbin[] = "\xef\xab\x90"; + inline constexpr char brandKick[] = "\xef\xa8\xa3"; + inline constexpr char brandKickstarter[] = "\xee\xb7\x8e"; + inline constexpr char brandKotlin[] = "\xee\xb5\xad"; + inline constexpr char brandLaravel[] = "\xef\x8d\x8b"; + inline constexpr char brandLastfm[] = "\xef\x80\x81"; + inline constexpr char brandLeetcode[] = "\xef\xa9\x91"; + inline constexpr char brandLetterboxd[] = "\xef\xa8\xa4"; + inline constexpr char brandLine[] = "\xef\x9f\xa8"; + inline constexpr char brandLinkedin[] = "\xee\xb2\x8c"; + inline constexpr char brandLinktree[] = "\xef\x87\xa7"; + inline constexpr char brandLinqpad[] = "\xef\x95\xa2"; + inline constexpr char brandLivewire[] = "\xef\xb5\xb6"; + inline constexpr char brandLoom[] = "\xee\xbd\xb0"; + inline constexpr char brandMailgun[] = "\xef\x8c\xae"; + inline constexpr char brandMantine[] = "\xef\x8c\xaf"; + inline constexpr char brandMastercard[] = "\xee\xbd\x89"; + inline constexpr char brandMastodon[] = "\xef\x89\x90"; + inline constexpr char brandMatrix[] = "\xef\x97\xab"; + inline constexpr char brandMcdonalds[] = "\xef\x89\x91"; + inline constexpr char brandMedium[] = "\xee\xb1\xb0"; + inline constexpr char brandMeetup[] = "\xef\xb1\xaa"; + inline constexpr char brandMercedes[] = "\xef\x81\xb2"; + inline constexpr char brandMessenger[] = "\xee\xb1\xb1"; + inline constexpr char brandMeta[] = "\xee\xbe\xb0"; + inline constexpr char brandMetabrainz[] = "\xef\xbc\x92"; + inline constexpr char brandMinecraft[] = "\xef\xab\xaf"; + inline constexpr char brandMiniprogram[] = "\xef\x98\x82"; + inline constexpr char brandMixpanel[] = "\xef\x8e\x97"; + inline constexpr char brandMonday[] = "\xef\x88\x99"; + inline constexpr char brandMongodb[] = "\xef\x98\x93"; + inline constexpr char brandMyOppo[] = "\xef\x93\x97"; + inline constexpr char brandMysql[] = "\xef\x98\x94"; + inline constexpr char brandNationalGeographic[] = "\xef\x98\x83"; + inline constexpr char brandNem[] = "\xef\x96\xa1"; + inline constexpr char brandNetbeans[] = "\xee\xbd\xb1"; + inline constexpr char brandNeteaseMusic[] = "\xef\x98\x84"; + inline constexpr char brandNetflix[] = "\xee\xb7\x8f"; + inline constexpr char brandNexo[] = "\xef\x96\xa2"; + inline constexpr char brandNextcloud[] = "\xef\x93\x98"; + inline constexpr char brandNextjs[] = "\xef\x83\x9d"; + inline constexpr char brandNodejs[] = "\xef\xab\xa0"; + inline constexpr char brandNordVpn[] = "\xef\x8d\xbf"; + inline constexpr char brandNotion[] = "\xee\xbd\xbb"; + inline constexpr char brandNpm[] = "\xef\x95\xa9"; + inline constexpr char brandNuxt[] = "\xef\x83\x9e"; + inline constexpr char brandNytimes[] = "\xee\xbe\x8d"; + inline constexpr char brandOauth[] = "\xef\xa9\x92"; + inline constexpr char brandOffice[] = "\xef\x8e\x98"; + inline constexpr char brandOkRu[] = "\xef\x8e\x99"; + inline constexpr char brandOnedrive[] = "\xef\x97\x97"; + inline constexpr char brandOnlyfans[] = "\xef\x98\x85"; + inline constexpr char brandOpenSource[] = "\xee\xb7\x90"; + inline constexpr char brandOpenai[] = "\xef\x9e\x8e"; + inline constexpr char brandOpenvpn[] = "\xef\x8e\x9a"; + inline constexpr char brandOpera[] = "\xee\xb0\xa1"; + inline constexpr char brandPagekit[] = "\xee\xb7\x91"; + inline constexpr char brandParsinta[] = "\xef\xb1\x82"; + inline constexpr char brandPatreon[] = "\xee\xb7\x92"; + inline constexpr char brandPaypal[] = "\xee\xb0\xa2"; + inline constexpr char brandPaypay[] = "\xef\x97\xac"; + inline constexpr char brandPeanut[] = "\xef\x8e\x9b"; + inline constexpr char brandPepsi[] = "\xef\x89\xa1"; + inline constexpr char brandPhp[] = "\xee\xbd\xb2"; + inline constexpr char brandPicsart[] = "\xef\x93\x99"; + inline constexpr char brandPinterest[] = "\xee\xb2\x8d"; + inline constexpr char brandPlanetscale[] = "\xef\x9e\x8f"; + inline constexpr char brandPnpm[] = "\xef\xb5\xb7"; + inline constexpr char brandPocket[] = "\xee\xb4\x80"; + inline constexpr char brandPolymer[] = "\xef\x92\x98"; + inline constexpr char brandPowershell[] = "\xef\x97\xad"; + inline constexpr char brandPrintables[] = "\xef\xb4\x9b"; + inline constexpr char brandPrisma[] = "\xef\x92\x99"; + inline constexpr char brandProducthunt[] = "\xee\xb7\x93"; + inline constexpr char brandPushbullet[] = "\xef\x8c\xb0"; + inline constexpr char brandPushover[] = "\xef\x88\x8e"; + inline constexpr char brandPython[] = "\xee\xb4\x81"; + inline constexpr char brandQq[] = "\xef\x98\x86"; + inline constexpr char brandRadixUi[] = "\xef\x9e\x90"; + inline constexpr char brandReact[] = "\xef\x8d\x8c"; + inline constexpr char brandReactNative[] = "\xee\xbd\xb3"; + inline constexpr char brandReason[] = "\xef\x92\x9a"; + inline constexpr char brandReddit[] = "\xee\xb2\x8e"; + inline constexpr char brandRedhat[] = "\xef\x8c\xb1"; + inline constexpr char brandRedux[] = "\xef\x8e\xa8"; + inline constexpr char brandRevolut[] = "\xef\x93\x9a"; + inline constexpr char brandRumble[] = "\xef\xab\x91"; + inline constexpr char brandRust[] = "\xef\xa9\x93"; + inline constexpr char brandSafari[] = "\xee\xb0\xa3"; + inline constexpr char brandSamsungpass[] = "\xef\x93\x9b"; + inline constexpr char brandSass[] = "\xee\xb7\x94"; + inline constexpr char brandSentry[] = "\xee\xb7\x95"; + inline constexpr char brandSharik[] = "\xef\x93\x9c"; + inline constexpr char brandShazam[] = "\xee\xb7\x96"; + inline constexpr char brandShopee[] = "\xef\x89\x92"; + inline constexpr char brandSignal[] = "\xf0\x90\x89\xb5"; + inline constexpr char brandSketch[] = "\xee\xb0\xa4"; + inline constexpr char brandSkype[] = "\xee\xb4\x82"; + inline constexpr char brandSlack[] = "\xee\xb1\xb2"; + inline constexpr char brandSnapchat[] = "\xee\xb0\xa5"; + inline constexpr char brandSnapseed[] = "\xef\x89\x93"; + inline constexpr char brandSnowflake[] = "\xef\x98\x95"; + inline constexpr char brandSocketIo[] = "\xef\x92\x9b"; + inline constexpr char brandSolidjs[] = "\xef\x97\xae"; + inline constexpr char brandSoundcloud[] = "\xee\xb5\xae"; + inline constexpr char brandSpacehey[] = "\xef\x93\xbc"; + inline constexpr char brandSpeedtest[] = "\xef\xa9\xb7"; + inline constexpr char brandSpotify[] = "\xee\xb4\x83"; + inline constexpr char brandStackoverflow[] = "\xee\xbd\x98"; + inline constexpr char brandStackshare[] = "\xef\x98\x87"; + inline constexpr char brandSteam[] = "\xee\xb5\xaf"; + inline constexpr char brandStellar[] = "\xf0\x90\x89\x83"; + inline constexpr char brandStocktwits[] = "\xef\xb5\xb8"; + inline constexpr char brandStorj[] = "\xef\xa9\x94"; + inline constexpr char brandStorybook[] = "\xef\x8c\xb2"; + inline constexpr char brandStorytel[] = "\xef\x98\x88"; + inline constexpr char brandStrava[] = "\xef\x89\x94"; + inline constexpr char brandStripe[] = "\xee\xb7\x97"; + inline constexpr char brandSublimeText[] = "\xee\xbd\xb4"; + inline constexpr char brandSugarizer[] = "\xef\x9e\xa5"; + inline constexpr char brandSupabase[] = "\xef\x9b\x93"; + inline constexpr char brandSuperhuman[] = "\xef\x94\x8c"; + inline constexpr char brandSupernova[] = "\xef\x92\x9c"; + inline constexpr char brandSurfshark[] = "\xef\x89\x95"; + inline constexpr char brandSvelte[] = "\xef\x83\x9f"; + inline constexpr char brandSwift[] = "\xef\xa9\x95"; + inline constexpr char brandSymfony[] = "\xef\x98\x96"; + inline constexpr char brandTabler[] = "\xee\xb2\x8f"; + inline constexpr char brandTabnine[] = "\xf0\x90\x86\xae"; + inline constexpr char brandTailwind[] = "\xee\xb2\xa1"; + inline constexpr char brandTaobao[] = "\xef\x97\xaf"; + inline constexpr char brandTeams[] = "\xef\xab\x9f"; + inline constexpr char brandTed[] = "\xef\x99\x98"; + inline constexpr char brandTelegram[] = "\xee\xb0\xa6"; + inline constexpr char brandTerraform[] = "\xef\xa9\x96"; + inline constexpr char brandTesla[] = "\xf0\x90\x82\x99"; + inline constexpr char brandTether[] = "\xef\x96\xa3"; + inline constexpr char brandThingiverse[] = "\xef\xb4\x9c"; + inline constexpr char brandThreads[] = "\xef\xac\x82"; + inline constexpr char brandThreejs[] = "\xef\x97\xb0"; + inline constexpr char brandTidal[] = "\xee\xb5\xb0"; + inline constexpr char brandTiktok[] = "\xee\xb1\xb3"; + inline constexpr char brandTinder[] = "\xee\xb5\xb1"; + inline constexpr char brandTopbuzz[] = "\xef\x94\x8d"; + inline constexpr char brandTorchain[] = "\xef\x96\xa4"; + inline constexpr char brandToyota[] = "\xef\x89\xa2"; + inline constexpr char brandTrello[] = "\xef\x8e\x9d"; + inline constexpr char brandTripadvisor[] = "\xef\x80\x82"; + inline constexpr char brandTumblr[] = "\xee\xb4\x84"; + inline constexpr char brandTwilio[] = "\xef\x98\x97"; + inline constexpr char brandTwitch[] = "\xee\xb4\x85"; + inline constexpr char brandTwitter[] = "\xee\xb0\xa7"; + inline constexpr char brandTypescript[] = "\xef\x97\xb1"; + inline constexpr char brandUber[] = "\xee\xbd\xb5"; + inline constexpr char brandUbuntu[] = "\xee\xbd\x99"; + inline constexpr char brandUnity[] = "\xef\x92\x9d"; + inline constexpr char brandUnsplash[] = "\xee\xb7\x98"; + inline constexpr char brandUpwork[] = "\xef\x8e\x9e"; + inline constexpr char brandValorant[] = "\xef\x8e\x9f"; + inline constexpr char brandVechain[] = "\xf0\x90\x89\x82"; + inline constexpr char brandVercel[] = "\xee\xbc\xa4"; + inline constexpr char brandVimeo[] = "\xee\xb4\x86"; + inline constexpr char brandVinted[] = "\xef\x88\x8f"; + inline constexpr char brandVisa[] = "\xef\x8e\x80"; + inline constexpr char brandVisualStudio[] = "\xee\xbd\xb6"; + inline constexpr char brandVite[] = "\xef\x97\xb2"; + inline constexpr char brandVivaldi[] = "\xef\x88\x90"; + inline constexpr char brandVk[] = "\xee\xb5\xb2"; + inline constexpr char brandVlc[] = "\xef\xa9\xb8"; + inline constexpr char brandVolkswagen[] = "\xef\x94\x8e"; + inline constexpr char brandVsco[] = "\xef\x8c\xb4"; + inline constexpr char brandVscode[] = "\xef\x8e\xa0"; + inline constexpr char brandVue[] = "\xef\x83\xa0"; + inline constexpr char brandWalmart[] = "\xef\x88\x91"; + inline constexpr char brandWaze[] = "\xef\x97\x98"; + inline constexpr char brandWebflow[] = "\xef\x8b\x92"; + inline constexpr char brandWechat[] = "\xef\x97\xb3"; + inline constexpr char brandWeibo[] = "\xef\x98\x89"; + inline constexpr char brandWhatsapp[] = "\xee\xb1\xb4"; + inline constexpr char brandWikipedia[] = "\xef\xa9\xb9"; + inline constexpr char brandWindows[] = "\xee\xb3\x98"; + inline constexpr char brandWindy[] = "\xef\x93\x9d"; + inline constexpr char brandWish[] = "\xef\x88\x92"; + inline constexpr char brandWix[] = "\xef\x8e\xa1"; + inline constexpr char brandWordpress[] = "\xef\x8b\x93"; + inline constexpr char brandX[] = "\xef\xb0\x8f"; + inline constexpr char brandXamarin[] = "\xef\xa9\xba"; + inline constexpr char brandXbox[] = "\xef\x8a\x98"; + inline constexpr char brandXdeep[] = "\xef\xb0\x90"; + inline constexpr char brandXing[] = "\xef\x88\x9a"; + inline constexpr char brandYahoo[] = "\xee\xb5\xb3"; + inline constexpr char brandYandex[] = "\xef\xab\xa1"; + inline constexpr char brandYarn[] = "\xef\xb5\xb9"; + inline constexpr char brandYatse[] = "\xef\x88\x93"; + inline constexpr char brandYcombinator[] = "\xee\xb7\x99"; + inline constexpr char brandYoutube[] = "\xee\xb2\x90"; + inline constexpr char brandYoutubeKids[] = "\xef\x88\x94"; + inline constexpr char brandZalando[] = "\xef\x92\x9e"; + inline constexpr char brandZapier[] = "\xef\x92\x9f"; + inline constexpr char brandZeit[] = "\xef\x8c\xb5"; + inline constexpr char brandZhihu[] = "\xef\x98\x8a"; + inline constexpr char brandZoom[] = "\xef\x88\x95"; + inline constexpr char brandZulip[] = "\xef\x93\x9e"; + inline constexpr char brandZwift[] = "\xef\x88\x96"; + inline constexpr char bread[] = "\xee\xbe\xa3"; + inline constexpr char breadOff[] = "\xef\x8f\x8b"; + inline constexpr char briefcase[] = "\xee\xa9\x86"; + inline constexpr char briefcase2[] = "\xef\xac\x83"; + inline constexpr char briefcaseOff[] = "\xef\x8f\x8c"; + inline constexpr char brightness[] = "\xee\xad\xbf"; + inline constexpr char brightness2[] = "\xee\xb8\x99"; + inline constexpr char brightnessAuto[] = "\xef\xb6\x99"; + inline constexpr char brightnessDown[] = "\xee\xad\xbd"; + inline constexpr char brightnessHalf[] = "\xee\xb8\x9a"; + inline constexpr char brightnessOff[] = "\xef\x8f\x8d"; + inline constexpr char brightnessUp[] = "\xee\xad\xbe"; + inline constexpr char broadcast[] = "\xef\x87\xa9"; + inline constexpr char broadcastOff[] = "\xef\x87\xa8"; + inline constexpr char browser[] = "\xee\xae\xb7"; + inline constexpr char browserCheck[] = "\xee\xbf\x96"; + inline constexpr char browserMaximize[] = "\xf0\x90\x82\xb0"; + inline constexpr char browserMinus[] = "\xf0\x90\x82\xaf"; + inline constexpr char browserOff[] = "\xef\x83\x81"; + inline constexpr char browserPlus[] = "\xee\xbf\x97"; + inline constexpr char browserShare[] = "\xf0\x90\x82\xae"; + inline constexpr char browserX[] = "\xee\xbf\x98"; + inline constexpr char brush[] = "\xee\xae\xb8"; + inline constexpr char brushOff[] = "\xef\x83\x82"; + inline constexpr char bubble[] = "\xef\xba\xba"; + inline constexpr char bubbleMinus[] = "\xef\xba\xbe"; + inline constexpr char bubblePlus[] = "\xef\xba\xbd"; + inline constexpr char bubbleTea[] = "\xef\xbd\x91"; + inline constexpr char bubbleTea2[] = "\xef\xbd\x92"; + inline constexpr char bubbleText[] = "\xef\xba\xbc"; + inline constexpr char bubbleX[] = "\xef\xba\xbb"; + inline constexpr char bucket[] = "\xee\xa9\x87"; + inline constexpr char bucketDroplet[] = "\xef\x95\xaa"; + inline constexpr char bucketOff[] = "\xef\x84\x83"; + inline constexpr char bug[] = "\xee\xa9\x88"; + inline constexpr char bugOff[] = "\xef\x83\x83"; + inline constexpr char building[] = "\xee\xa9\x8f"; + inline constexpr char buildingAirport[] = "\xef\xbe\xa9"; + inline constexpr char buildingArch[] = "\xee\xa9\x89"; + inline constexpr char buildingBank[] = "\xee\xaf\xa2"; + inline constexpr char buildingBridge[] = "\xee\xa9\x8b"; + inline constexpr char buildingBridge2[] = "\xee\xa9\x8a"; + inline constexpr char buildingBroadcastTower[] = "\xef\x92\xbe"; + inline constexpr char buildingBurjAlArab[] = "\xef\xbd\x90"; + inline constexpr char buildingCarousel[] = "\xee\xb6\x87"; + inline constexpr char buildingCastle[] = "\xee\xb6\x88"; + inline constexpr char buildingChurch[] = "\xee\xa9\x8c"; + inline constexpr char buildingCircus[] = "\xef\x92\xbf"; + inline constexpr char buildingCog[] = "\xf0\x90\x81\xa2"; + inline constexpr char buildingCommunity[] = "\xee\xaf\xb6"; + inline constexpr char buildingCottage[] = "\xee\xb8\x9b"; + inline constexpr char buildingEiffelTower[] = "\xf0\x90\x89\x91"; + inline constexpr char buildingEstate[] = "\xef\x96\xa5"; + inline constexpr char buildingFactory[] = "\xee\xb8\x9c"; + inline constexpr char buildingFactory2[] = "\xef\x82\x82"; + inline constexpr char buildingFortress[] = "\xee\xb6\x89"; + inline constexpr char buildingHospital[] = "\xee\xa9\x8d"; + inline constexpr char buildingLighthouse[] = "\xee\xb6\x8a"; + inline constexpr char buildingMinus[] = "\xf0\x90\x81\xa1"; + inline constexpr char buildingMonument[] = "\xee\xb4\xa6"; + inline constexpr char buildingMosque[] = "\xef\xa9\x97"; + inline constexpr char buildingOff[] = "\xef\xbb\xbd"; + inline constexpr char buildingPavilion[] = "\xee\xaf\xb7"; + inline constexpr char buildingPlus[] = "\xf0\x90\x81\xa0"; + inline constexpr char buildingSkyscraper[] = "\xee\xb0\xb9"; + inline constexpr char buildingStadium[] = "\xef\x99\x81"; + inline constexpr char buildingStore[] = "\xee\xa9\x8e"; + inline constexpr char buildingTunnel[] = "\xef\x96\xa6"; + inline constexpr char buildingWarehouse[] = "\xee\xaf\xa3"; + inline constexpr char buildingWindTurbine[] = "\xef\x93\x80"; + inline constexpr char buildings[] = "\xef\xbd\x80"; + inline constexpr char bulb[] = "\xee\xa9\x91"; + inline constexpr char bulbOff[] = "\xee\xa9\x90"; + inline constexpr char bulldozer[] = "\xee\xb8\x9d"; + inline constexpr char burger[] = "\xef\xb2\xb4"; + inline constexpr char bus[] = "\xee\xaf\xa4"; + inline constexpr char busOff[] = "\xef\x8f\x8e"; + inline constexpr char busStop[] = "\xef\x8b\x94"; + inline constexpr char businessplan[] = "\xee\xb8\x9e"; + inline constexpr char butterfly[] = "\xee\xbf\x99"; + inline constexpr char cactus[] = "\xef\x88\x9b"; + inline constexpr char cactusOff[] = "\xef\x8f\x8f"; + inline constexpr char cake[] = "\xef\x80\x8f"; + inline constexpr char cakeOff[] = "\xef\x84\x84"; + inline constexpr char cakeRoll[] = "\xf0\x90\x82\xbd"; + inline constexpr char calculator[] = "\xee\xae\x80"; + inline constexpr char calculatorOff[] = "\xef\x83\x84"; + inline constexpr char calendar[] = "\xee\xa9\x93"; + inline constexpr char calendarBolt[] = "\xef\xa0\xa2"; + inline constexpr char calendarCancel[] = "\xef\xa0\xa3"; + inline constexpr char calendarCheck[] = "\xef\xa0\xa4"; + inline constexpr char calendarClock[] = "\xef\xb4\xae"; + inline constexpr char calendarCode[] = "\xef\xa0\xa5"; + inline constexpr char calendarCog[] = "\xef\xa0\xa6"; + inline constexpr char calendarDollar[] = "\xef\xa0\xa7"; + inline constexpr char calendarDot[] = "\xef\xb4\xbe"; + inline constexpr char calendarDown[] = "\xef\xa0\xa8"; + inline constexpr char calendarDue[] = "\xef\x98\xa1"; + inline constexpr char calendarEvent[] = "\xee\xa9\x92"; + inline constexpr char calendarExclamation[] = "\xef\xa0\xa9"; + inline constexpr char calendarHeart[] = "\xef\xa0\xaa"; + inline constexpr char calendarMinus[] = "\xee\xae\xb9"; + inline constexpr char calendarMonth[] = "\xef\xb4\xaf"; + inline constexpr char calendarOff[] = "\xee\xb8\x9f"; + inline constexpr char calendarPause[] = "\xef\xa0\xab"; + inline constexpr char calendarPin[] = "\xef\xa0\xac"; + inline constexpr char calendarPlus[] = "\xee\xae\xba"; + inline constexpr char calendarQuestion[] = "\xef\xa0\xad"; + inline constexpr char calendarRepeat[] = "\xef\xab\x92"; + inline constexpr char calendarSad[] = "\xef\xb4\x9d"; + inline constexpr char calendarSearch[] = "\xef\xa0\xae"; + inline constexpr char calendarShare[] = "\xef\xa0\xaf"; + inline constexpr char calendarSmile[] = "\xef\xb4\x9e"; + inline constexpr char calendarStar[] = "\xef\xa0\xb0"; + inline constexpr char calendarStats[] = "\xee\xb8\xa0"; + inline constexpr char calendarTime[] = "\xee\xb8\xa1"; + inline constexpr char calendarUp[] = "\xef\xa0\xb1"; + inline constexpr char calendarUser[] = "\xef\xb4\x9f"; + inline constexpr char calendarWeek[] = "\xef\xb4\xb0"; + inline constexpr char calendarX[] = "\xef\xa0\xb2"; + inline constexpr char camera[] = "\xee\xa9\x94"; + inline constexpr char cameraAi[] = "\xef\xbe\xa8"; + inline constexpr char cameraBitcoin[] = "\xef\xbe\xa7"; + inline constexpr char cameraBolt[] = "\xef\xa0\xb3"; + inline constexpr char cameraCancel[] = "\xef\xa0\xb4"; + inline constexpr char cameraCheck[] = "\xef\xa0\xb5"; + inline constexpr char cameraCode[] = "\xef\xa0\xb6"; + inline constexpr char cameraCog[] = "\xef\xa0\xb7"; + inline constexpr char cameraDollar[] = "\xef\xa0\xb8"; + inline constexpr char cameraDown[] = "\xef\xa0\xb9"; + inline constexpr char cameraExclamation[] = "\xef\xa0\xba"; + inline constexpr char cameraHeart[] = "\xef\xa0\xbb"; + inline constexpr char cameraMinus[] = "\xee\xb0\xba"; + inline constexpr char cameraMoon[] = "\xef\xbe\xa6"; + inline constexpr char cameraOff[] = "\xee\xb3\xae"; + inline constexpr char cameraPause[] = "\xef\xa0\xbc"; + inline constexpr char cameraPin[] = "\xef\xa0\xbd"; + inline constexpr char cameraPlus[] = "\xee\xb0\xbb"; + inline constexpr char cameraQuestion[] = "\xef\xa0\xbe"; + inline constexpr char cameraRotate[] = "\xee\xb8\xa2"; + inline constexpr char cameraSearch[] = "\xef\xa0\xbf"; + inline constexpr char cameraSelfie[] = "\xee\xb8\xa3"; + inline constexpr char cameraShare[] = "\xef\xa1\x80"; + inline constexpr char cameraSpark[] = "\xef\xbe\xbc"; + inline constexpr char cameraStar[] = "\xef\xa1\x81"; + inline constexpr char cameraUp[] = "\xef\xa1\x82"; + inline constexpr char cameraX[] = "\xef\xa1\x83"; + inline constexpr char camper[] = "\xef\xa8\xa5"; + inline constexpr char campfire[] = "\xef\x96\xa7"; + inline constexpr char canary[] = "\xf0\x90\x87\xb5"; + inline constexpr char cancel[] = "\xef\xbc\x91"; + inline constexpr char candle[] = "\xee\xbf\x86"; + inline constexpr char candy[] = "\xee\xbc\x8d"; + inline constexpr char candyOff[] = "\xef\x83\x85"; + inline constexpr char cane[] = "\xef\x94\x8f"; + inline constexpr char cannabis[] = "\xef\x93\x81"; + inline constexpr char capProjecting[] = "\xef\xbc\xa2"; + inline constexpr char capRounded[] = "\xef\xbc\xa1"; + inline constexpr char capStraight[] = "\xef\xbc\xa0"; + inline constexpr char capsule[] = "\xef\xab\xa3"; + inline constexpr char capsuleHorizontal[] = "\xef\xab\xa2"; + inline constexpr char capture[] = "\xee\xb0\xbc"; + inline constexpr char captureOff[] = "\xef\x83\x86"; + inline constexpr char car[] = "\xee\xae\xbb"; + inline constexpr char car4wd[] = "\xef\xb6\xb8"; + inline constexpr char carCrane[] = "\xee\xbc\xa5"; + inline constexpr char carCrash[] = "\xee\xbe\xa4"; + inline constexpr char carDoor[] = "\xf0\x90\x89\x90"; + inline constexpr char carFan[] = "\xef\xb6\xb3"; + inline constexpr char carFan1[] = "\xef\xb6\xb7"; + inline constexpr char carFan2[] = "\xef\xb6\xb6"; + inline constexpr char carFan3[] = "\xef\xb6\xb5"; + inline constexpr char carFanAuto[] = "\xef\xb6\xb4"; + inline constexpr char carGarage[] = "\xef\xb1\xb7"; + inline constexpr char carLifter[] = "\xf0\x90\x89\x8f"; + inline constexpr char carOff[] = "\xef\x83\x87"; + inline constexpr char carOffRoad[] = "\xf0\x90\x88\xb0"; + inline constexpr char carSuspension[] = "\xf0\x90\x88\xaf"; + inline constexpr char carSuv[] = "\xef\xb2\x8b"; + inline constexpr char carTurbine[] = "\xef\x93\xbd"; + inline constexpr char carambola[] = "\xef\xba\xb9"; + inline constexpr char caravan[] = "\xee\xb1\xbc"; + inline constexpr char cardboards[] = "\xee\xb5\xb4"; + inline constexpr char cardboardsOff[] = "\xef\x83\x88"; + inline constexpr char cards[] = "\xef\x94\x90"; + inline constexpr char caretDown[] = "\xee\xad\x9d"; + inline constexpr char caretLeft[] = "\xee\xad\x9e"; + inline constexpr char caretLeftRight[] = "\xef\xb1\x83"; + inline constexpr char caretRight[] = "\xee\xad\x9f"; + inline constexpr char caretUp[] = "\xee\xad\xa0"; + inline constexpr char caretUpDown[] = "\xef\xb1\x84"; + inline constexpr char carouselHorizontal[] = "\xef\x99\x99"; + inline constexpr char carouselVertical[] = "\xef\x99\x9a"; + inline constexpr char carrot[] = "\xef\x88\x9c"; + inline constexpr char carrotOff[] = "\xef\x8f\x90"; + inline constexpr char cash[] = "\xee\xa9\x95"; + inline constexpr char cashBanknote[] = "\xee\xb8\xa5"; + inline constexpr char cashBanknoteEdit[] = "\xf0\x90\x85\x89"; + inline constexpr char cashBanknoteHeart[] = "\xf0\x90\x85\x88"; + inline constexpr char cashBanknoteMinus[] = "\xf0\x90\x85\x87"; + inline constexpr char cashBanknoteMove[] = "\xf0\x90\x85\x85"; + inline constexpr char cashBanknoteMoveBack[] = "\xf0\x90\x85\x86"; + inline constexpr char cashBanknoteOff[] = "\xee\xb8\xa4"; + inline constexpr char cashBanknotePlus[] = "\xf0\x90\x85\x84"; + inline constexpr char cashEdit[] = "\xf0\x90\x85\x83"; + inline constexpr char cashHeart[] = "\xf0\x90\x85\x82"; + inline constexpr char cashMinus[] = "\xf0\x90\x85\x81"; + inline constexpr char cashMove[] = "\xf0\x90\x84\xbf"; + inline constexpr char cashMoveBack[] = "\xf0\x90\x85\x80"; + inline constexpr char cashOff[] = "\xef\x84\x85"; + inline constexpr char cashPlus[] = "\xf0\x90\x84\xbe"; + inline constexpr char cashRegister[] = "\xef\xbb\xa6"; + inline constexpr char cast[] = "\xee\xa9\x96"; + inline constexpr char castOff[] = "\xef\x83\x89"; + inline constexpr char cat[] = "\xef\x99\x9b"; + inline constexpr char category[] = "\xef\x87\xb6"; + inline constexpr char category2[] = "\xef\x87\xb5"; + inline constexpr char categoryMinus[] = "\xef\xb4\xa0"; + inline constexpr char categoryPlus[] = "\xef\xb4\xa1"; + inline constexpr char ce[] = "\xee\xb5\xb5"; + inline constexpr char ceOff[] = "\xef\x83\x8a"; + inline constexpr char cell[] = "\xef\x81\x9f"; + inline constexpr char cellSignal1[] = "\xef\x82\x83"; + inline constexpr char cellSignal2[] = "\xef\x82\x84"; + inline constexpr char cellSignal3[] = "\xef\x82\x85"; + inline constexpr char cellSignal4[] = "\xef\x82\x86"; + inline constexpr char cellSignal5[] = "\xef\x82\x87"; + inline constexpr char cellSignalOff[] = "\xef\x82\x88"; + inline constexpr char certificate[] = "\xee\xb5\xb6"; + inline constexpr char certificate2[] = "\xef\x81\xb3"; + inline constexpr char certificate2Off[] = "\xef\x83\x8b"; + inline constexpr char certificateOff[] = "\xef\x83\x8c"; + inline constexpr char chairDirector[] = "\xef\x8b\x95"; + inline constexpr char chalkboard[] = "\xef\x8d\x8d"; + inline constexpr char chalkboardOff[] = "\xef\x8f\x91"; + inline constexpr char chalkboardTeacher[] = "\xf0\x90\x85\xa0"; + inline constexpr char chargingPile[] = "\xee\xb8\xa6"; + inline constexpr char chartArcs[] = "\xee\xb8\xa8"; + inline constexpr char chartArcs3[] = "\xee\xb8\xa7"; + inline constexpr char chartArea[] = "\xee\xa9\x98"; + inline constexpr char chartAreaLine[] = "\xee\xa9\x97"; + inline constexpr char chartArrows[] = "\xee\xb8\xaa"; + inline constexpr char chartArrowsVertical[] = "\xee\xb8\xa9"; + inline constexpr char chartBar[] = "\xee\xa9\x99"; + inline constexpr char chartBarOff[] = "\xef\x8f\x92"; + inline constexpr char chartBarPopular[] = "\xef\xbb\xb7"; + inline constexpr char chartBubble[] = "\xee\xb1\xb5"; + inline constexpr char chartCandle[] = "\xee\xa9\x9a"; + inline constexpr char chartCircles[] = "\xee\xb8\xab"; + inline constexpr char chartCohort[] = "\xef\xbb\xb6"; + inline constexpr char chartColumn[] = "\xef\xbe\xa5"; + inline constexpr char chartCovariate[] = "\xef\xbe\xa4"; + inline constexpr char chartDonut[] = "\xee\xa9\x9b"; + inline constexpr char chartDonut2[] = "\xee\xb8\xac"; + inline constexpr char chartDonut3[] = "\xee\xb8\xad"; + inline constexpr char chartDonut4[] = "\xee\xb8\xae"; + inline constexpr char chartDots[] = "\xee\xb8\xaf"; + inline constexpr char chartDots2[] = "\xef\x82\x97"; + inline constexpr char chartDots3[] = "\xef\x82\x98"; + inline constexpr char chartFunnel[] = "\xef\xbb\xb5"; + inline constexpr char chartGridDots[] = "\xef\x93\x82"; + inline constexpr char chartHistogram[] = "\xef\x99\x9c"; + inline constexpr char chartInfographic[] = "\xee\xb8\xb0"; + inline constexpr char chartLine[] = "\xee\xa9\x9c"; + inline constexpr char chartPie[] = "\xee\xa9\x9d"; + inline constexpr char chartPie2[] = "\xee\xb8\xb1"; + inline constexpr char chartPie3[] = "\xee\xb8\xb2"; + inline constexpr char chartPie4[] = "\xee\xb8\xb3"; + inline constexpr char chartPieOff[] = "\xef\x8f\x93"; + inline constexpr char chartPpf[] = "\xef\x98\x98"; + inline constexpr char chartRadar[] = "\xee\xb5\xb7"; + inline constexpr char chartSankey[] = "\xef\x98\x99"; + inline constexpr char chartScatter[] = "\xef\xb6\x93"; + inline constexpr char chartScatter3d[] = "\xef\xb6\x92"; + inline constexpr char chartTreemap[] = "\xef\x8e\x81"; + inline constexpr char check[] = "\xee\xa9\x9e"; + inline constexpr char checkbox[] = "\xee\xae\xa6"; + inline constexpr char checklist[] = "\xef\x81\xb4"; + inline constexpr char checks[] = "\xee\xae\xaa"; + inline constexpr char checkupList[] = "\xee\xbd\x9a"; + inline constexpr char cheese[] = "\xee\xbc\xa6"; + inline constexpr char chefHat[] = "\xef\x88\x9d"; + inline constexpr char chefHatOff[] = "\xef\x8f\x94"; + inline constexpr char cherry[] = "\xef\x94\x91"; + inline constexpr char chess[] = "\xef\x8e\x82"; + inline constexpr char chessBishop[] = "\xef\x95\xab"; + inline constexpr char chessKing[] = "\xef\x95\xac"; + inline constexpr char chessKnight[] = "\xef\x95\xad"; + inline constexpr char chessQueen[] = "\xef\x95\xae"; + inline constexpr char chessRook[] = "\xef\x95\xaf"; + inline constexpr char chevronCompactDown[] = "\xef\xab\xb0"; + inline constexpr char chevronCompactLeft[] = "\xef\xab\xb1"; + inline constexpr char chevronCompactRight[] = "\xef\xab\xb2"; + inline constexpr char chevronCompactUp[] = "\xef\xab\xb3"; + inline constexpr char chevronDown[] = "\xee\xa9\x9f"; + inline constexpr char chevronDownLeft[] = "\xee\xb4\x89"; + inline constexpr char chevronDownRight[] = "\xee\xb4\x8a"; + inline constexpr char chevronLeft[] = "\xee\xa9\xa0"; + inline constexpr char chevronLeftPipe[] = "\xef\xab\xa4"; + inline constexpr char chevronRight[] = "\xee\xa9\xa1"; + inline constexpr char chevronRightPipe[] = "\xef\xab\xa5"; + inline constexpr char chevronUp[] = "\xee\xa9\xa2"; + inline constexpr char chevronUpLeft[] = "\xee\xb4\x8b"; + inline constexpr char chevronUpRight[] = "\xee\xb4\x8c"; + inline constexpr char chevronsDown[] = "\xee\xa9\xa3"; + inline constexpr char chevronsDownLeft[] = "\xee\xb4\x8d"; + inline constexpr char chevronsDownRight[] = "\xee\xb4\x8e"; + inline constexpr char chevronsLeft[] = "\xee\xa9\xa4"; + inline constexpr char chevronsRight[] = "\xee\xa9\xa5"; + inline constexpr char chevronsUp[] = "\xee\xa9\xa6"; + inline constexpr char chevronsUpLeft[] = "\xee\xb4\x8f"; + inline constexpr char chevronsUpRight[] = "\xee\xb4\x90"; + inline constexpr char chisel[] = "\xef\x8e\x83"; + inline constexpr char chocolate[] = "\xf0\x90\x89\x8e"; + inline constexpr char christmasBall[] = "\xef\xb4\xb1"; + inline constexpr char christmasTree[] = "\xee\xb5\xb8"; + inline constexpr char christmasTreeOff[] = "\xef\x8f\x95"; + inline constexpr char circle[] = "\xee\xa9\xab"; + inline constexpr char circleArrowDown[] = "\xef\x9b\xb9"; + inline constexpr char circleArrowDownLeft[] = "\xef\x9b\xb6"; + inline constexpr char circleArrowDownRight[] = "\xef\x9b\xb8"; + inline constexpr char circleArrowLeft[] = "\xef\x9b\xbb"; + inline constexpr char circleArrowRight[] = "\xef\x9b\xbd"; + inline constexpr char circleArrowUp[] = "\xef\x9c\x83"; + inline constexpr char circleArrowUpLeft[] = "\xef\x9c\x80"; + inline constexpr char circleArrowUpRight[] = "\xef\x9c\x82"; + inline constexpr char circleAsterisk[] = "\xf0\x90\x86\xad"; + inline constexpr char circleCaretDown[] = "\xef\x92\xa9"; + inline constexpr char circleCaretLeft[] = "\xef\x92\xaa"; + inline constexpr char circleCaretRight[] = "\xef\x92\xab"; + inline constexpr char circleCaretUp[] = "\xef\x92\xac"; + inline constexpr char circleCheck[] = "\xee\xa9\xa7"; + inline constexpr char circleChevronDown[] = "\xef\x98\xa2"; + inline constexpr char circleChevronLeft[] = "\xef\x98\xa3"; + inline constexpr char circleChevronRight[] = "\xef\x98\xa4"; + inline constexpr char circleChevronUp[] = "\xef\x98\xa5"; + inline constexpr char circleChevronsDown[] = "\xef\x99\x82"; + inline constexpr char circleChevronsLeft[] = "\xef\x99\x83"; + inline constexpr char circleChevronsRight[] = "\xef\x99\x84"; + inline constexpr char circleChevronsUp[] = "\xef\x99\x85"; + inline constexpr char circleDashed[] = "\xee\xb4\xa7"; + inline constexpr char circleDashedCheck[] = "\xef\xba\xb8"; + inline constexpr char circleDashedLetterA[] = "\xef\xbe\x9a"; + inline constexpr char circleDashedLetterB[] = "\xef\xbe\x99"; + inline constexpr char circleDashedLetterC[] = "\xef\xbe\x98"; + inline constexpr char circleDashedLetterD[] = "\xef\xbe\x97"; + inline constexpr char circleDashedLetterE[] = "\xef\xbe\x96"; + inline constexpr char circleDashedLetterF[] = "\xef\xbe\x95"; + inline constexpr char circleDashedLetterG[] = "\xef\xbe\x94"; + inline constexpr char circleDashedLetterH[] = "\xef\xbe\x93"; + inline constexpr char circleDashedLetterI[] = "\xef\xbe\x92"; + inline constexpr char circleDashedLetterJ[] = "\xef\xbe\x91"; + inline constexpr char circleDashedLetterK[] = "\xef\xbe\x90"; + inline constexpr char circleDashedLetterL[] = "\xef\xbe\x8f"; + inline constexpr char circleDashedLetterM[] = "\xef\xbe\x8d"; + inline constexpr char circleDashedLetterN[] = "\xef\xbe\x8c"; + inline constexpr char circleDashedLetterO[] = "\xef\xbe\x8b"; + inline constexpr char circleDashedLetterP[] = "\xef\xbe\x8a"; + inline constexpr char circleDashedLetterQ[] = "\xef\xbe\x89"; + inline constexpr char circleDashedLetterR[] = "\xef\xbe\x88"; + inline constexpr char circleDashedLetterS[] = "\xef\xbe\x87"; + inline constexpr char circleDashedLetterT[] = "\xef\xbe\x86"; + inline constexpr char circleDashedLetterU[] = "\xef\xbe\x85"; + inline constexpr char circleDashedLetterV[] = "\xef\xbe\x84"; + inline constexpr char circleDashedLetterW[] = "\xef\xbe\x83"; + inline constexpr char circleDashedLetterX[] = "\xef\xbe\x82"; + inline constexpr char circleDashedLetterY[] = "\xef\xbe\x81"; + inline constexpr char circleDashedLetterZ[] = "\xef\xbe\x80"; + inline constexpr char circleDashedMinus[] = "\xef\xba\xb7"; + inline constexpr char circleDashedNumber0[] = "\xef\xb1\xab"; + inline constexpr char circleDashedNumber1[] = "\xef\xb1\xac"; + inline constexpr char circleDashedNumber2[] = "\xef\xb1\xad"; + inline constexpr char circleDashedNumber3[] = "\xef\xb1\xae"; + inline constexpr char circleDashedNumber4[] = "\xef\xb1\xaf"; + inline constexpr char circleDashedNumber5[] = "\xef\xb1\xb0"; + inline constexpr char circleDashedNumber6[] = "\xef\xb1\xb1"; + inline constexpr char circleDashedNumber7[] = "\xef\xb1\xb2"; + inline constexpr char circleDashedNumber8[] = "\xef\xb1\xb3"; + inline constexpr char circleDashedNumber9[] = "\xef\xb1\xb4"; + inline constexpr char circleDashedPercentage[] = "\xef\xb5\xba"; + inline constexpr char circleDashedPlus[] = "\xef\xba\xb6"; + inline constexpr char circleDashedX[] = "\xef\xb1\xb5"; + inline constexpr char circleDot[] = "\xee\xbe\xb1"; + inline constexpr char circleDotted[] = "\xee\xb4\xa8"; + inline constexpr char circleDottedLetterA[] = "\xef\xbd\xbf"; + inline constexpr char circleDottedLetterB[] = "\xef\xbd\xbe"; + inline constexpr char circleDottedLetterC[] = "\xef\xbd\xbd"; + inline constexpr char circleDottedLetterD[] = "\xef\xbd\xbc"; + inline constexpr char circleDottedLetterE[] = "\xef\xbd\xbb"; + inline constexpr char circleDottedLetterF[] = "\xef\xbd\xba"; + inline constexpr char circleDottedLetterG[] = "\xef\xbd\xb9"; + inline constexpr char circleDottedLetterH[] = "\xef\xbd\xb8"; + inline constexpr char circleDottedLetterI[] = "\xef\xbd\xb7"; + inline constexpr char circleDottedLetterJ[] = "\xef\xbd\xb6"; + inline constexpr char circleDottedLetterK[] = "\xef\xbd\xb5"; + inline constexpr char circleDottedLetterL[] = "\xef\xbd\xb4"; + inline constexpr char circleDottedLetterM[] = "\xef\xbd\xb3"; + inline constexpr char circleDottedLetterN[] = "\xef\xbd\xb2"; + inline constexpr char circleDottedLetterO[] = "\xef\xbd\xb1"; + inline constexpr char circleDottedLetterP[] = "\xef\xbd\xb0"; + inline constexpr char circleDottedLetterQ[] = "\xef\xbd\xaf"; + inline constexpr char circleDottedLetterR[] = "\xef\xbd\xae"; + inline constexpr char circleDottedLetterS[] = "\xef\xbd\xad"; + inline constexpr char circleDottedLetterT[] = "\xef\xbd\xac"; + inline constexpr char circleDottedLetterU[] = "\xef\xbd\xab"; + inline constexpr char circleDottedLetterV[] = "\xef\xbd\xaa"; + inline constexpr char circleDottedLetterW[] = "\xef\xbd\xa9"; + inline constexpr char circleDottedLetterX[] = "\xef\xbd\xa8"; + inline constexpr char circleDottedLetterY[] = "\xef\xbd\xa7"; + inline constexpr char circleDottedLetterZ[] = "\xef\xbd\xa6"; + inline constexpr char circleHalf[] = "\xee\xb8\xbf"; + inline constexpr char circleHalf2[] = "\xee\xbf\xb3"; + inline constexpr char circleHalfVertical[] = "\xee\xb8\xbe"; + inline constexpr char circleKey[] = "\xef\x98\xb3"; + inline constexpr char circleLetterA[] = "\xef\x91\x81"; + inline constexpr char circleLetterB[] = "\xef\x91\x82"; + inline constexpr char circleLetterC[] = "\xef\x91\x83"; + inline constexpr char circleLetterD[] = "\xef\x91\x84"; + inline constexpr char circleLetterE[] = "\xef\x91\x85"; + inline constexpr char circleLetterF[] = "\xef\x91\x86"; + inline constexpr char circleLetterG[] = "\xef\x91\x87"; + inline constexpr char circleLetterH[] = "\xef\x91\x88"; + inline constexpr char circleLetterI[] = "\xef\x91\x89"; + inline constexpr char circleLetterJ[] = "\xef\x91\x8a"; + inline constexpr char circleLetterK[] = "\xef\x91\x8b"; + inline constexpr char circleLetterL[] = "\xef\x91\x8c"; + inline constexpr char circleLetterM[] = "\xef\x91\x8d"; + inline constexpr char circleLetterN[] = "\xef\x91\x8e"; + inline constexpr char circleLetterO[] = "\xef\x91\x8f"; + inline constexpr char circleLetterP[] = "\xef\x91\x90"; + inline constexpr char circleLetterQ[] = "\xef\x91\x91"; + inline constexpr char circleLetterR[] = "\xef\x91\x92"; + inline constexpr char circleLetterS[] = "\xef\x91\x93"; + inline constexpr char circleLetterT[] = "\xef\x91\x94"; + inline constexpr char circleLetterU[] = "\xef\x91\x95"; + inline constexpr char circleLetterV[] = "\xef\x92\xad"; + inline constexpr char circleLetterW[] = "\xef\x91\x96"; + inline constexpr char circleLetterX[] = "\xef\x92\xae"; + inline constexpr char circleLetterY[] = "\xef\x91\x97"; + inline constexpr char circleLetterZ[] = "\xef\x91\x98"; + inline constexpr char circleMinus[] = "\xee\xa9\xa8"; + inline constexpr char circleMinus2[] = "\xef\xb2\x8c"; + inline constexpr char circleNumber0[] = "\xee\xb8\xb4"; + inline constexpr char circleNumber1[] = "\xee\xb8\xb5"; + inline constexpr char circleNumber2[] = "\xee\xb8\xb6"; + inline constexpr char circleNumber3[] = "\xee\xb8\xb7"; + inline constexpr char circleNumber4[] = "\xee\xb8\xb8"; + inline constexpr char circleNumber5[] = "\xee\xb8\xb9"; + inline constexpr char circleNumber6[] = "\xee\xb8\xba"; + inline constexpr char circleNumber7[] = "\xee\xb8\xbb"; + inline constexpr char circleNumber8[] = "\xee\xb8\xbc"; + inline constexpr char circleNumber9[] = "\xee\xb8\xbd"; + inline constexpr char circleOff[] = "\xee\xb9\x80"; + inline constexpr char circleOpenArrowDown[] = "\xf0\x90\x88\x89"; + inline constexpr char circleOpenArrowLeft[] = "\xf0\x90\x88\x88"; + inline constexpr char circleOpenArrowRight[] = "\xf0\x90\x88\x87"; + inline constexpr char circleOpenArrowUp[] = "\xf0\x90\x88\x86"; + inline constexpr char circlePercentage[] = "\xef\xb5\xbb"; + inline constexpr char circlePlus[] = "\xee\xa9\xa9"; + inline constexpr char circlePlus2[] = "\xef\xb2\x8d"; + inline constexpr char circlePlusMinus[] = "\xf0\x90\x88\x85"; + inline constexpr char circleRectangle[] = "\xef\x80\x90"; + inline constexpr char circleRectangleOff[] = "\xef\x83\x8d"; + inline constexpr char circleSquare[] = "\xee\xb3\xa4"; + inline constexpr char circleTriangle[] = "\xef\x80\x91"; + inline constexpr char circleX[] = "\xee\xa9\xaa"; + inline constexpr char circles[] = "\xee\xb3\xa5"; + inline constexpr char circlesRelation[] = "\xef\x93\x83"; + inline constexpr char circuitAmmeter[] = "\xef\x89\xb1"; + inline constexpr char circuitBattery[] = "\xef\x89\xb2"; + inline constexpr char circuitBulb[] = "\xef\x89\xb3"; + inline constexpr char circuitCapacitor[] = "\xef\x89\xb5"; + inline constexpr char circuitCapacitorPolarized[] = "\xef\x89\xb4"; + inline constexpr char circuitCell[] = "\xef\x89\xb7"; + inline constexpr char circuitCellPlus[] = "\xef\x89\xb6"; + inline constexpr char circuitChangeover[] = "\xef\x89\xb8"; + inline constexpr char circuitDiode[] = "\xef\x89\xba"; + inline constexpr char circuitDiodeZener[] = "\xef\x89\xb9"; + inline constexpr char circuitGround[] = "\xef\x89\xbc"; + inline constexpr char circuitGroundDigital[] = "\xef\x89\xbb"; + inline constexpr char circuitInductor[] = "\xef\x89\xbd"; + inline constexpr char circuitMotor[] = "\xef\x89\xbe"; + inline constexpr char circuitPushbutton[] = "\xef\x89\xbf"; + inline constexpr char circuitResistor[] = "\xef\x8a\x80"; + inline constexpr char circuitSwitchClosed[] = "\xef\x8a\x81"; + inline constexpr char circuitSwitchOpen[] = "\xef\x8a\x82"; + inline constexpr char circuitVoltmeter[] = "\xef\x8a\x83"; + inline constexpr char clearAll[] = "\xee\xb9\x81"; + inline constexpr char clearFormatting[] = "\xee\xaf\xa5"; + inline constexpr char clef[] = "\xf0\x90\x89\x80"; + inline constexpr char clefStaff[] = "\xf0\x90\x89\x81"; + inline constexpr char click[] = "\xee\xae\xbc"; + inline constexpr char cliffJumping[] = "\xef\xbb\xbc"; + inline constexpr char clipboard[] = "\xee\xa9\xaf"; + inline constexpr char clipboardCheck[] = "\xee\xa9\xac"; + inline constexpr char clipboardCopy[] = "\xef\x8a\x99"; + inline constexpr char clipboardData[] = "\xef\x95\xa3"; + inline constexpr char clipboardHeart[] = "\xef\x8d\x8e"; + inline constexpr char clipboardList[] = "\xee\xa9\xad"; + inline constexpr char clipboardOff[] = "\xef\x83\x8e"; + inline constexpr char clipboardPlus[] = "\xee\xbe\xb2"; + inline constexpr char clipboardSearch[] = "\xf0\x90\x82\x98"; + inline constexpr char clipboardSmile[] = "\xef\xb6\x9a"; + inline constexpr char clipboardText[] = "\xef\x82\x89"; + inline constexpr char clipboardTypography[] = "\xef\x8d\x8f"; + inline constexpr char clipboardX[] = "\xee\xa9\xae"; + inline constexpr char clock[] = "\xee\xa9\xb0"; + inline constexpr char clock12[] = "\xef\xb1\x96"; + inline constexpr char clock2[] = "\xef\x82\x99"; + inline constexpr char clock24[] = "\xef\xb1\x97"; + inline constexpr char clockBitcoin[] = "\xef\xbc\xbf"; + inline constexpr char clockBolt[] = "\xef\xa1\x84"; + inline constexpr char clockCancel[] = "\xef\x95\x86"; + inline constexpr char clockCheck[] = "\xef\x9f\x81"; + inline constexpr char clockCode[] = "\xef\xa1\x85"; + inline constexpr char clockCog[] = "\xef\x9f\x82"; + inline constexpr char clockDollar[] = "\xef\xa1\x86"; + inline constexpr char clockDown[] = "\xef\x9f\x83"; + inline constexpr char clockEdit[] = "\xef\x95\x87"; + inline constexpr char clockExclamation[] = "\xef\xa1\x87"; + inline constexpr char clockHeart[] = "\xef\x9f\x84"; + inline constexpr char clockHour1[] = "\xef\x8c\x93"; + inline constexpr char clockHour10[] = "\xef\x8c\x94"; + inline constexpr char clockHour11[] = "\xef\x8c\x95"; + inline constexpr char clockHour12[] = "\xef\x8c\x96"; + inline constexpr char clockHour2[] = "\xef\x8c\x97"; + inline constexpr char clockHour3[] = "\xef\x8c\x98"; + inline constexpr char clockHour4[] = "\xef\x8c\x99"; + inline constexpr char clockHour5[] = "\xef\x8c\x9a"; + inline constexpr char clockHour6[] = "\xef\x8c\x9b"; + inline constexpr char clockHour7[] = "\xef\x8c\x9c"; + inline constexpr char clockHour8[] = "\xef\x8c\x9d"; + inline constexpr char clockHour9[] = "\xef\x8c\x9e"; + inline constexpr char clockMinus[] = "\xef\xa1\x88"; + inline constexpr char clockOff[] = "\xef\x83\x8f"; + inline constexpr char clockPause[] = "\xef\x95\x88"; + inline constexpr char clockPin[] = "\xef\xa1\x89"; + inline constexpr char clockPlay[] = "\xef\x95\x89"; + inline constexpr char clockPlus[] = "\xef\x9f\x85"; + inline constexpr char clockQuestion[] = "\xef\x9f\x86"; + inline constexpr char clockRecord[] = "\xef\x95\x8a"; + inline constexpr char clockSearch[] = "\xef\x9f\x87"; + inline constexpr char clockShare[] = "\xef\xa1\x8a"; + inline constexpr char clockShield[] = "\xef\x9f\x88"; + inline constexpr char clockStar[] = "\xef\x9f\x89"; + inline constexpr char clockStop[] = "\xef\x95\x8b"; + inline constexpr char clockUp[] = "\xef\x9f\x8a"; + inline constexpr char clockX[] = "\xef\x9f\x8b"; + inline constexpr char clothesRack[] = "\xef\x8a\x85"; + inline constexpr char clothesRackOff[] = "\xef\x8f\x96"; + inline constexpr char cloud[] = "\xee\xa9\xb6"; + inline constexpr char cloudBitcoin[] = "\xef\xbc\xbe"; + inline constexpr char cloudBolt[] = "\xef\xa1\x8b"; + inline constexpr char cloudCancel[] = "\xef\xa1\x8c"; + inline constexpr char cloudCheck[] = "\xef\xa1\x8d"; + inline constexpr char cloudCode[] = "\xef\xa1\x8e"; + inline constexpr char cloudCog[] = "\xef\xa1\x8f"; + inline constexpr char cloudComputing[] = "\xef\x87\x90"; + inline constexpr char cloudDataConnection[] = "\xef\x87\x91"; + inline constexpr char cloudDollar[] = "\xef\xa1\x90"; + inline constexpr char cloudDown[] = "\xef\xa1\x91"; + inline constexpr char cloudDownload[] = "\xee\xa9\xb1"; + inline constexpr char cloudExclamation[] = "\xef\xa1\x92"; + inline constexpr char cloudFog[] = "\xee\xb3\x99"; + inline constexpr char cloudHeart[] = "\xef\xa1\x93"; + inline constexpr char cloudLock[] = "\xee\xbf\x9b"; + inline constexpr char cloudLockOpen[] = "\xee\xbf\x9a"; + inline constexpr char cloudMinus[] = "\xef\xa1\x94"; + inline constexpr char cloudNetwork[] = "\xef\xb1\xb8"; + inline constexpr char cloudOff[] = "\xee\xb4\xbe"; + inline constexpr char cloudPause[] = "\xef\xa1\x95"; + inline constexpr char cloudPin[] = "\xef\xa1\x96"; + inline constexpr char cloudPlus[] = "\xef\xa1\x97"; + inline constexpr char cloudQuestion[] = "\xef\xa1\x98"; + inline constexpr char cloudRain[] = "\xee\xa9\xb2"; + inline constexpr char cloudSearch[] = "\xef\xa1\x99"; + inline constexpr char cloudShare[] = "\xef\xa1\x9a"; + inline constexpr char cloudSnow[] = "\xee\xa9\xb3"; + inline constexpr char cloudStar[] = "\xef\xa1\x9b"; + inline constexpr char cloudStorm[] = "\xee\xa9\xb4"; + inline constexpr char cloudUp[] = "\xef\xa1\x9c"; + inline constexpr char cloudUpload[] = "\xee\xa9\xb5"; + inline constexpr char cloudX[] = "\xef\xa1\x9d"; + inline constexpr char clover[] = "\xef\x87\xaa"; + inline constexpr char clover2[] = "\xef\x88\x9e"; + inline constexpr char clubs[] = "\xee\xbf\xb4"; + inline constexpr char code[] = "\xee\xa9\xb7"; + inline constexpr char codeAi[] = "\xf0\x90\x89\xa7"; + inline constexpr char codeAsterisk[] = "\xef\x8c\x92"; + inline constexpr char codeCircle[] = "\xef\x93\xbf"; + inline constexpr char codeCircle2[] = "\xef\x93\xbe"; + inline constexpr char codeDots[] = "\xef\x98\x9a"; + inline constexpr char codeMinus[] = "\xee\xb9\x82"; + inline constexpr char codeOff[] = "\xef\x83\x90"; + inline constexpr char codePlus[] = "\xee\xb9\x83"; + inline constexpr char codeVariable[] = "\xf0\x90\x82\xab"; + inline constexpr char codeVariableMinus[] = "\xf0\x90\x82\xad"; + inline constexpr char codeVariablePlus[] = "\xf0\x90\x82\xac"; + inline constexpr char codeblock[] = "\xf0\x90\x87\xb4"; + inline constexpr char coffee[] = "\xee\xbc\x8e"; + inline constexpr char coffeeOff[] = "\xef\x84\x86"; + inline constexpr char coffin[] = "\xef\x95\xb9"; + inline constexpr char coin[] = "\xee\xae\x82"; + inline constexpr char coinBitcoin[] = "\xef\x8a\xbe"; + inline constexpr char coinEuro[] = "\xef\x8a\xbf"; + inline constexpr char coinMonero[] = "\xef\x92\xa0"; + inline constexpr char coinOff[] = "\xef\x83\x91"; + inline constexpr char coinPound[] = "\xef\x8b\x80"; + inline constexpr char coinRupee[] = "\xef\x8b\x81"; + inline constexpr char coinTaka[] = "\xef\xb4\x8d"; + inline constexpr char coinYen[] = "\xef\x8b\x82"; + inline constexpr char coinYuan[] = "\xef\x8b\x83"; + inline constexpr char coins[] = "\xef\x99\x9d"; + inline constexpr char colorFilter[] = "\xef\x96\xa8"; + inline constexpr char colorPicker[] = "\xee\xaf\xa6"; + inline constexpr char colorPickerOff[] = "\xef\x83\x92"; + inline constexpr char colorSwatch[] = "\xee\xad\xa1"; + inline constexpr char colorSwatchOff[] = "\xef\x83\x93"; + inline constexpr char columnInsertLeft[] = "\xee\xb9\x84"; + inline constexpr char columnInsertRight[] = "\xee\xb9\x85"; + inline constexpr char columnRemove[] = "\xef\xab\xb4"; + inline constexpr char columns[] = "\xee\xae\x83"; + inline constexpr char columns1[] = "\xef\x9b\x94"; + inline constexpr char columns2[] = "\xef\x9b\x95"; + inline constexpr char columns3[] = "\xef\x9b\x96"; + inline constexpr char columnsOff[] = "\xef\x83\x94"; + inline constexpr char comet[] = "\xee\xb1\xb6"; + inline constexpr char command[] = "\xee\xa9\xb8"; + inline constexpr char commandOff[] = "\xef\x8f\x97"; + inline constexpr char compass[] = "\xee\xa9\xb9"; + inline constexpr char compassOff[] = "\xef\x83\x95"; + inline constexpr char components[] = "\xee\xbe\xa5"; + inline constexpr char componentsOff[] = "\xef\x83\x96"; + inline constexpr char cone[] = "\xee\xbf\x9d"; + inline constexpr char cone2[] = "\xee\xbf\x9c"; + inline constexpr char coneOff[] = "\xef\x8f\x98"; + inline constexpr char conePlus[] = "\xef\xaa\x94"; + inline constexpr char confetti[] = "\xee\xb9\x86"; + inline constexpr char confettiOff[] = "\xef\x8f\x99"; + inline constexpr char confucius[] = "\xef\x96\x8a"; + inline constexpr char congruentTo[] = "\xef\xbe\xa3"; + inline constexpr char connection[] = "\xf0\x90\x87\xb3"; + inline constexpr char container[] = "\xee\xb9\x87"; + inline constexpr char containerOff[] = "\xef\x84\x87"; + inline constexpr char contract[] = "\xef\xbb\xbb"; + inline constexpr char contrast[] = "\xee\xb1\x8e"; + inline constexpr char contrast2[] = "\xee\xbf\x87"; + inline constexpr char contrast2Off[] = "\xef\x8f\x9a"; + inline constexpr char contrastOff[] = "\xef\x8f\x9b"; + inline constexpr char cooker[] = "\xef\x95\xba"; + inline constexpr char cookie[] = "\xef\xb6\xb1"; + inline constexpr char cookieMan[] = "\xef\xb6\xb2"; + inline constexpr char cookieOff[] = "\xef\x83\x97"; + inline constexpr char copy[] = "\xee\xa9\xba"; + inline constexpr char copyCheck[] = "\xef\xb6\xb0"; + inline constexpr char copyMinus[] = "\xef\xb6\xaf"; + inline constexpr char copyOff[] = "\xef\x83\x98"; + inline constexpr char copyPlus[] = "\xef\xb6\xae"; + inline constexpr char copyX[] = "\xef\xb6\xad"; + inline constexpr char copyleft[] = "\xee\xb0\xbd"; + inline constexpr char copyleftOff[] = "\xef\x83\x99"; + inline constexpr char copyright[] = "\xee\xa9\xbb"; + inline constexpr char copyrightOff[] = "\xef\x83\x9a"; + inline constexpr char cornerDownLeft[] = "\xee\xa9\xbc"; + inline constexpr char cornerDownLeftDouble[] = "\xee\xb9\x88"; + inline constexpr char cornerDownRight[] = "\xee\xa9\xbd"; + inline constexpr char cornerDownRightDouble[] = "\xee\xb9\x89"; + inline constexpr char cornerLeftDown[] = "\xee\xa9\xbe"; + inline constexpr char cornerLeftDownDouble[] = "\xee\xb9\x8a"; + inline constexpr char cornerLeftUp[] = "\xee\xa9\xbf"; + inline constexpr char cornerLeftUpDouble[] = "\xee\xb9\x8b"; + inline constexpr char cornerRightDown[] = "\xee\xaa\x80"; + inline constexpr char cornerRightDownDouble[] = "\xee\xb9\x8c"; + inline constexpr char cornerRightUp[] = "\xee\xaa\x81"; + inline constexpr char cornerRightUpDouble[] = "\xee\xb9\x8d"; + inline constexpr char cornerUpLeft[] = "\xee\xaa\x82"; + inline constexpr char cornerUpLeftDouble[] = "\xee\xb9\x8e"; + inline constexpr char cornerUpRight[] = "\xee\xaa\x83"; + inline constexpr char cornerUpRightDouble[] = "\xee\xb9\x8f"; + inline constexpr char cpu[] = "\xee\xbe\x8e"; + inline constexpr char cpu2[] = "\xef\x81\xb5"; + inline constexpr char cpuOff[] = "\xef\x84\x88"; + inline constexpr char crane[] = "\xee\xbc\xa7"; + inline constexpr char craneOff[] = "\xef\x84\x89"; + inline constexpr char creativeCommons[] = "\xee\xbe\xb3"; + inline constexpr char creativeCommonsBy[] = "\xef\x88\x9f"; + inline constexpr char creativeCommonsNc[] = "\xef\x88\xa0"; + inline constexpr char creativeCommonsNd[] = "\xef\x88\xa1"; + inline constexpr char creativeCommonsOff[] = "\xef\x84\x8a"; + inline constexpr char creativeCommonsSa[] = "\xef\x88\xa2"; + inline constexpr char creativeCommonsZero[] = "\xef\x88\xa3"; + inline constexpr char creditCard[] = "\xee\xaa\x84"; + inline constexpr char creditCardHand[] = "\xf0\x90\x88\xae"; + inline constexpr char creditCardOff[] = "\xee\xb4\x91"; + inline constexpr char creditCardPay[] = "\xef\xb4\xb2"; + inline constexpr char creditCardRefund[] = "\xef\xb4\xb3"; + inline constexpr char credits[] = "\xf0\x90\x87\xb2"; + inline constexpr char cricket[] = "\xef\x82\x9a"; + inline constexpr char crop[] = "\xee\xaa\x85"; + inline constexpr char crop11[] = "\xef\xb5\x90"; + inline constexpr char crop169[] = "\xef\xb5\x91"; + inline constexpr char crop32[] = "\xef\xb5\x92"; + inline constexpr char crop54[] = "\xef\xb5\x93"; + inline constexpr char crop75[] = "\xef\xb5\x94"; + inline constexpr char cropLandscape[] = "\xef\xb5\x95"; + inline constexpr char cropPortrait[] = "\xef\xb5\x96"; + inline constexpr char cross[] = "\xee\xbe\x8f"; + inline constexpr char crossOff[] = "\xef\x84\x8b"; + inline constexpr char crosshair[] = "\xee\xb0\xbe"; + inline constexpr char crown[] = "\xee\xb4\x92"; + inline constexpr char crownOff[] = "\xee\xb9\x90"; + inline constexpr char crutches[] = "\xee\xbd\x9b"; + inline constexpr char crutchesOff[] = "\xef\x84\x8c"; + inline constexpr char crystalBall[] = "\xef\x95\xbb"; + inline constexpr char csv[] = "\xef\x9e\x91"; + inline constexpr char cube[] = "\xef\xaa\x97"; + inline constexpr char cube3dSphere[] = "\xee\xb3\x97"; + inline constexpr char cube3dSphereOff[] = "\xef\x8e\xb5"; + inline constexpr char cubeOff[] = "\xef\xaa\x95"; + inline constexpr char cubePlus[] = "\xef\xaa\x96"; + inline constexpr char cubeSend[] = "\xef\x98\x9b"; + inline constexpr char cubeSpark[] = "\xef\xbe\xbb"; + inline constexpr char cubeUnfolded[] = "\xef\x98\x9c"; + inline constexpr char cup[] = "\xee\xbc\xa8"; + inline constexpr char cupOff[] = "\xef\x84\x8d"; + inline constexpr char curling[] = "\xee\xbf\x88"; + inline constexpr char curlyLoop[] = "\xee\xb3\x9a"; + inline constexpr char currency[] = "\xee\xbe\xa6"; + inline constexpr char currencyAfghani[] = "\xef\x99\x9e"; + inline constexpr char currencyBahraini[] = "\xee\xb9\x91"; + inline constexpr char currencyBaht[] = "\xef\x82\x8a"; + inline constexpr char currencyBitcoin[] = "\xee\xae\xab"; + inline constexpr char currencyCent[] = "\xee\xb9\x93"; + inline constexpr char currencyDinar[] = "\xee\xb9\x94"; + inline constexpr char currencyDirham[] = "\xee\xb9\x95"; + inline constexpr char currencyDogecoin[] = "\xee\xbd\x8b"; + inline constexpr char currencyDollar[] = "\xee\xae\x84"; + inline constexpr char currencyDollarAustralian[] = "\xee\xb9\x96"; + inline constexpr char currencyDollarBrunei[] = "\xef\x8d\xac"; + inline constexpr char currencyDollarCanadian[] = "\xee\xb9\x97"; + inline constexpr char currencyDollarGuyanese[] = "\xef\x8d\xad"; + inline constexpr char currencyDollarOff[] = "\xef\x8f\x9c"; + inline constexpr char currencyDollarSingapore[] = "\xee\xb9\x98"; + inline constexpr char currencyDollarZimbabwean[] = "\xef\x8d\xae"; + inline constexpr char currencyDong[] = "\xef\x8d\xaf"; + inline constexpr char currencyDram[] = "\xef\x8d\xb0"; + inline constexpr char currencyEthereum[] = "\xee\xb9\x99"; + inline constexpr char currencyEuro[] = "\xee\xae\x85"; + inline constexpr char currencyEuroOff[] = "\xef\x8f\x9d"; + inline constexpr char currencyFlorin[] = "\xef\xab\xb5"; + inline constexpr char currencyForint[] = "\xee\xb9\x9a"; + inline constexpr char currencyFrank[] = "\xee\xb9\x9b"; + inline constexpr char currencyGuarani[] = "\xef\x8d\xb1"; + inline constexpr char currencyHryvnia[] = "\xef\x8d\xb2"; + inline constexpr char currencyHusd[] = "\xf0\x90\x88\xbf"; + inline constexpr char currencyIranianRial[] = "\xef\xa9\x98"; + inline constexpr char currencyKip[] = "\xef\x8d\xb3"; + inline constexpr char currencyKroneCzech[] = "\xee\xb9\x9c"; + inline constexpr char currencyKroneDanish[] = "\xee\xb9\x9d"; + inline constexpr char currencyKroneSwedish[] = "\xee\xb9\x9e"; + inline constexpr char currencyLari[] = "\xef\x8d\xb4"; + inline constexpr char currencyLeu[] = "\xee\xb9\x9f"; + inline constexpr char currencyLira[] = "\xee\xb9\xa0"; + inline constexpr char currencyLitecoin[] = "\xee\xb9\xa1"; + inline constexpr char currencyLyd[] = "\xef\x8d\xb5"; + inline constexpr char currencyManat[] = "\xef\x8d\xb6"; + inline constexpr char currencyMonero[] = "\xef\x8d\xb7"; + inline constexpr char currencyNaira[] = "\xee\xb9\xa2"; + inline constexpr char currencyNano[] = "\xef\x9e\xa6"; + inline constexpr char currencyOff[] = "\xef\x8f\x9e"; + inline constexpr char currencyPaanga[] = "\xef\x8d\xb8"; + inline constexpr char currencyPeso[] = "\xef\x99\x9f"; + inline constexpr char currencyPound[] = "\xee\xae\xac"; + inline constexpr char currencyPoundOff[] = "\xef\x8f\x9f"; + inline constexpr char currencyQuetzal[] = "\xef\x8d\xb9"; + inline constexpr char currencyReal[] = "\xee\xb9\xa3"; + inline constexpr char currencyRenminbi[] = "\xee\xb9\xa4"; + inline constexpr char currencyRipple[] = "\xee\xb9\xa5"; + inline constexpr char currencyRiyal[] = "\xee\xb9\xa6"; + inline constexpr char currencyRuble[] = "\xee\xb9\xa7"; + inline constexpr char currencyRufiyaa[] = "\xef\x8d\xba"; + inline constexpr char currencyRupee[] = "\xee\xae\xad"; + inline constexpr char currencyRupeeNepalese[] = "\xef\x8d\xbb"; + inline constexpr char currencyShekel[] = "\xee\xb9\xa8"; + inline constexpr char currencySolana[] = "\xef\x92\xa1"; + inline constexpr char currencySom[] = "\xef\x8d\xbc"; + inline constexpr char currencyTaka[] = "\xee\xb9\xa9"; + inline constexpr char currencyTenge[] = "\xef\x8d\xbd"; + inline constexpr char currencyTether[] = "\xf0\x90\x88\xbe"; + inline constexpr char currencyTugrik[] = "\xee\xb9\xaa"; + inline constexpr char currencyWon[] = "\xee\xb9\xab"; + inline constexpr char currencyXrp[] = "\xef\xb4\xb4"; + inline constexpr char currencyYen[] = "\xee\xae\xae"; + inline constexpr char currencyYenOff[] = "\xef\x8f\xa0"; + inline constexpr char currencyYuan[] = "\xef\x8a\x9a"; + inline constexpr char currencyZcash[] = "\xf0\x90\x88\xbd"; + inline constexpr char currencyZloty[] = "\xee\xb9\xac"; + inline constexpr char currentLocation[] = "\xee\xb3\xaf"; + inline constexpr char currentLocationOff[] = "\xef\x84\x8e"; + inline constexpr char cursorOff[] = "\xef\x84\x8f"; + inline constexpr char cursorText[] = "\xee\xb9\xad"; + inline constexpr char cut[] = "\xee\xaa\x86"; + inline constexpr char cylinder[] = "\xef\x95\x8c"; + inline constexpr char cylinderOff[] = "\xef\xaa\x98"; + inline constexpr char cylinderPlus[] = "\xef\xaa\x99"; + inline constexpr char dashboard[] = "\xee\xaa\x87"; + inline constexpr char dashboardOff[] = "\xef\x8f\xa1"; + inline constexpr char database[] = "\xee\xaa\x88"; + inline constexpr char databaseCog[] = "\xef\xa8\x90"; + inline constexpr char databaseDollar[] = "\xef\xa8\x91"; + inline constexpr char databaseEdit[] = "\xef\xa8\x92"; + inline constexpr char databaseExclamation[] = "\xef\xa8\x93"; + inline constexpr char databaseExport[] = "\xee\xb9\xae"; + inline constexpr char databaseHeart[] = "\xef\xa8\x94"; + inline constexpr char databaseImport[] = "\xee\xb9\xaf"; + inline constexpr char databaseLeak[] = "\xef\xa8\x95"; + inline constexpr char databaseMinus[] = "\xef\xa8\x96"; + inline constexpr char databaseOff[] = "\xee\xb9\xb0"; + inline constexpr char databasePlus[] = "\xef\xa8\x97"; + inline constexpr char databaseSearch[] = "\xef\xa8\x98"; + inline constexpr char databaseShare[] = "\xef\xa8\x99"; + inline constexpr char databaseSmile[] = "\xef\xb6\x9b"; + inline constexpr char databaseStar[] = "\xef\xa8\x9a"; + inline constexpr char databaseX[] = "\xef\xa8\x9b"; + inline constexpr char deaf[] = "\xf0\x90\x86\xac"; + inline constexpr char decimal[] = "\xef\xa8\xa6"; + inline constexpr char deer[] = "\xef\x93\x85"; + inline constexpr char delta[] = "\xef\x94\xbc"; + inline constexpr char dental[] = "\xef\x80\xa5"; + inline constexpr char dentalBroken[] = "\xef\x8a\x86"; + inline constexpr char dentalOff[] = "\xef\x84\x90"; + inline constexpr char deselect[] = "\xef\xa7\xb3"; + inline constexpr char desk[] = "\xef\xb4\xb5"; + inline constexpr char details[] = "\xee\xb9\xb1"; + inline constexpr char detailsOff[] = "\xef\x8f\xa2"; + inline constexpr char device3dCamera[] = "\xf0\x90\x88\xad"; + inline constexpr char device3dLens[] = "\xf0\x90\x88\xac"; + inline constexpr char deviceAirpods[] = "\xef\x96\xa9"; + inline constexpr char deviceAirpodsCase[] = "\xef\x99\x86"; + inline constexpr char deviceAirtag[] = "\xef\xab\xa6"; + inline constexpr char deviceAnalytics[] = "\xee\xb9\xb2"; + inline constexpr char deviceAudioTape[] = "\xee\xb9\xb3"; + inline constexpr char deviceCameraPhone[] = "\xef\x88\xb3"; + inline constexpr char deviceCctv[] = "\xee\xb9\xb4"; + inline constexpr char deviceCctvOff[] = "\xef\x8f\xa3"; + inline constexpr char deviceComputerCamera[] = "\xee\xb9\xb6"; + inline constexpr char deviceComputerCamera2[] = "\xf0\x90\x88\xbc"; + inline constexpr char deviceComputerCameraOff[] = "\xee\xb9\xb5"; + inline constexpr char deviceDesktop[] = "\xee\xaa\x89"; + inline constexpr char deviceDesktopAnalytics[] = "\xee\xb9\xb7"; + inline constexpr char deviceDesktopBolt[] = "\xef\xa1\x9e"; + inline constexpr char deviceDesktopCancel[] = "\xef\xa1\x9f"; + inline constexpr char deviceDesktopCheck[] = "\xef\xa1\xa0"; + inline constexpr char deviceDesktopCode[] = "\xef\xa1\xa1"; + inline constexpr char deviceDesktopCog[] = "\xef\xa1\xa2"; + inline constexpr char deviceDesktopDollar[] = "\xef\xa1\xa3"; + inline constexpr char deviceDesktopDown[] = "\xef\xa1\xa4"; + inline constexpr char deviceDesktopExclamation[] = "\xef\xa1\xa5"; + inline constexpr char deviceDesktopHeart[] = "\xef\xa1\xa6"; + inline constexpr char deviceDesktopMinus[] = "\xef\xa1\xa7"; + inline constexpr char deviceDesktopOff[] = "\xee\xb9\xb8"; + inline constexpr char deviceDesktopPause[] = "\xef\xa1\xa8"; + inline constexpr char deviceDesktopPin[] = "\xef\xa1\xa9"; + inline constexpr char deviceDesktopPlus[] = "\xef\xa1\xaa"; + inline constexpr char deviceDesktopQuestion[] = "\xef\xa1\xab"; + inline constexpr char deviceDesktopSearch[] = "\xef\xa1\xac"; + inline constexpr char deviceDesktopShare[] = "\xef\xa1\xad"; + inline constexpr char deviceDesktopStar[] = "\xef\xa1\xae"; + inline constexpr char deviceDesktopUp[] = "\xef\xa1\xaf"; + inline constexpr char deviceDesktopX[] = "\xef\xa1\xb0"; + inline constexpr char deviceFloppy[] = "\xee\xad\xa2"; + inline constexpr char deviceGamepad[] = "\xee\xad\xa3"; + inline constexpr char deviceGamepad2[] = "\xef\x87\x92"; + inline constexpr char deviceGamepad3[] = "\xef\xb1\x98"; + inline constexpr char deviceHeartMonitor[] = "\xef\x81\xa0"; + inline constexpr char deviceImac[] = "\xef\x9e\xa7"; + inline constexpr char deviceImacBolt[] = "\xef\xa1\xb1"; + inline constexpr char deviceImacCancel[] = "\xef\xa1\xb2"; + inline constexpr char deviceImacCheck[] = "\xef\xa1\xb3"; + inline constexpr char deviceImacCode[] = "\xef\xa1\xb4"; + inline constexpr char deviceImacCog[] = "\xef\xa1\xb5"; + inline constexpr char deviceImacDollar[] = "\xef\xa1\xb6"; + inline constexpr char deviceImacDown[] = "\xef\xa1\xb7"; + inline constexpr char deviceImacExclamation[] = "\xef\xa1\xb8"; + inline constexpr char deviceImacHeart[] = "\xef\xa1\xb9"; + inline constexpr char deviceImacMinus[] = "\xef\xa1\xba"; + inline constexpr char deviceImacOff[] = "\xef\xa1\xbb"; + inline constexpr char deviceImacPause[] = "\xef\xa1\xbc"; + inline constexpr char deviceImacPin[] = "\xef\xa1\xbd"; + inline constexpr char deviceImacPlus[] = "\xef\xa1\xbe"; + inline constexpr char deviceImacQuestion[] = "\xef\xa1\xbf"; + inline constexpr char deviceImacSearch[] = "\xef\xa2\x80"; + inline constexpr char deviceImacShare[] = "\xef\xa2\x81"; + inline constexpr char deviceImacStar[] = "\xef\xa2\x82"; + inline constexpr char deviceImacUp[] = "\xef\xa2\x83"; + inline constexpr char deviceImacX[] = "\xef\xa2\x84"; + inline constexpr char deviceIpad[] = "\xef\x99\x88"; + inline constexpr char deviceIpadBolt[] = "\xef\xa2\x85"; + inline constexpr char deviceIpadCancel[] = "\xef\xa2\x86"; + inline constexpr char deviceIpadCheck[] = "\xef\xa2\x87"; + inline constexpr char deviceIpadCode[] = "\xef\xa2\x88"; + inline constexpr char deviceIpadCog[] = "\xef\xa2\x89"; + inline constexpr char deviceIpadDollar[] = "\xef\xa2\x8a"; + inline constexpr char deviceIpadDown[] = "\xef\xa2\x8b"; + inline constexpr char deviceIpadExclamation[] = "\xef\xa2\x8c"; + inline constexpr char deviceIpadHeart[] = "\xef\xa2\x8d"; + inline constexpr char deviceIpadHorizontal[] = "\xef\x99\x87"; + inline constexpr char deviceIpadHorizontalBolt[] = "\xef\xa2\x8e"; + inline constexpr char deviceIpadHorizontalCancel[] = "\xef\xa2\x8f"; + inline constexpr char deviceIpadHorizontalCheck[] = "\xef\xa2\x90"; + inline constexpr char deviceIpadHorizontalCode[] = "\xef\xa2\x91"; + inline constexpr char deviceIpadHorizontalCog[] = "\xef\xa2\x92"; + inline constexpr char deviceIpadHorizontalDollar[] = "\xef\xa2\x93"; + inline constexpr char deviceIpadHorizontalDown[] = "\xef\xa2\x94"; + inline constexpr char deviceIpadHorizontalExclamation[] = "\xef\xa2\x95"; + inline constexpr char deviceIpadHorizontalHeart[] = "\xef\xa2\x96"; + inline constexpr char deviceIpadHorizontalMinus[] = "\xef\xa2\x97"; + inline constexpr char deviceIpadHorizontalOff[] = "\xef\xa2\x98"; + inline constexpr char deviceIpadHorizontalPause[] = "\xef\xa2\x99"; + inline constexpr char deviceIpadHorizontalPin[] = "\xef\xa2\x9a"; + inline constexpr char deviceIpadHorizontalPlus[] = "\xef\xa2\x9b"; + inline constexpr char deviceIpadHorizontalQuestion[] = "\xef\xa2\x9c"; + inline constexpr char deviceIpadHorizontalSearch[] = "\xef\xa2\x9d"; + inline constexpr char deviceIpadHorizontalShare[] = "\xef\xa2\x9e"; + inline constexpr char deviceIpadHorizontalStar[] = "\xef\xa2\x9f"; + inline constexpr char deviceIpadHorizontalUp[] = "\xef\xa2\xa0"; + inline constexpr char deviceIpadHorizontalX[] = "\xef\xa2\xa1"; + inline constexpr char deviceIpadMinus[] = "\xef\xa2\xa2"; + inline constexpr char deviceIpadOff[] = "\xef\xa2\xa3"; + inline constexpr char deviceIpadPause[] = "\xef\xa2\xa4"; + inline constexpr char deviceIpadPin[] = "\xef\xa2\xa5"; + inline constexpr char deviceIpadPlus[] = "\xef\xa2\xa6"; + inline constexpr char deviceIpadQuestion[] = "\xef\xa2\xa7"; + inline constexpr char deviceIpadSearch[] = "\xef\xa2\xa8"; + inline constexpr char deviceIpadShare[] = "\xef\xa2\xa9"; + inline constexpr char deviceIpadStar[] = "\xef\xa2\xaa"; + inline constexpr char deviceIpadUp[] = "\xef\xa2\xab"; + inline constexpr char deviceIpadX[] = "\xef\xa2\xac"; + inline constexpr char deviceLandlinePhone[] = "\xef\x99\x89"; + inline constexpr char deviceLaptop[] = "\xee\xad\xa4"; + inline constexpr char deviceLaptopOff[] = "\xef\x81\xa1"; + inline constexpr char deviceMobile[] = "\xee\xaa\x8a"; + inline constexpr char deviceMobileBolt[] = "\xef\xa2\xad"; + inline constexpr char deviceMobileCancel[] = "\xef\xa2\xae"; + inline constexpr char deviceMobileCharging[] = "\xef\x88\xa4"; + inline constexpr char deviceMobileCheck[] = "\xef\xa2\xaf"; + inline constexpr char deviceMobileCode[] = "\xef\xa2\xb0"; + inline constexpr char deviceMobileCog[] = "\xef\xa2\xb1"; + inline constexpr char deviceMobileDollar[] = "\xef\xa2\xb2"; + inline constexpr char deviceMobileDown[] = "\xef\xa2\xb3"; + inline constexpr char deviceMobileExclamation[] = "\xef\xa2\xb4"; + inline constexpr char deviceMobileHeart[] = "\xef\xa2\xb5"; + inline constexpr char deviceMobileMessage[] = "\xee\xb9\xb9"; + inline constexpr char deviceMobileMinus[] = "\xef\xa2\xb6"; + inline constexpr char deviceMobileOff[] = "\xef\x81\xa2"; + inline constexpr char deviceMobilePause[] = "\xef\xa2\xb7"; + inline constexpr char deviceMobilePin[] = "\xef\xa2\xb8"; + inline constexpr char deviceMobilePlus[] = "\xef\xa2\xb9"; + inline constexpr char deviceMobileQuestion[] = "\xef\xa2\xba"; + inline constexpr char deviceMobileRotated[] = "\xee\xb3\x9b"; + inline constexpr char deviceMobileSearch[] = "\xef\xa2\xbb"; + inline constexpr char deviceMobileShare[] = "\xef\xa2\xbc"; + inline constexpr char deviceMobileStar[] = "\xef\xa2\xbd"; + inline constexpr char deviceMobileUp[] = "\xef\xa2\xbe"; + inline constexpr char deviceMobileVibration[] = "\xee\xae\x86"; + inline constexpr char deviceMobileX[] = "\xef\xa2\xbf"; + inline constexpr char deviceNintendo[] = "\xef\x80\xa6"; + inline constexpr char deviceNintendoOff[] = "\xef\x84\x91"; + inline constexpr char deviceProjector[] = "\xef\xb0\x91"; + inline constexpr char deviceRemote[] = "\xef\x9e\x92"; + inline constexpr char deviceScreen[] = "\xf0\x90\x88\xab"; + inline constexpr char deviceSdCard[] = "\xef\x8e\x84"; + inline constexpr char deviceSim[] = "\xef\x92\xb2"; + inline constexpr char deviceSim1[] = "\xef\x92\xaf"; + inline constexpr char deviceSim2[] = "\xef\x92\xb0"; + inline constexpr char deviceSim3[] = "\xef\x92\xb1"; + inline constexpr char deviceSpeaker[] = "\xee\xaa\x8b"; + inline constexpr char deviceSpeakerOff[] = "\xef\x84\x92"; + inline constexpr char deviceTablet[] = "\xee\xaa\x8c"; + inline constexpr char deviceTabletBolt[] = "\xef\xa3\x80"; + inline constexpr char deviceTabletCancel[] = "\xef\xa3\x81"; + inline constexpr char deviceTabletCheck[] = "\xef\xa3\x82"; + inline constexpr char deviceTabletCode[] = "\xef\xa3\x83"; + inline constexpr char deviceTabletCog[] = "\xef\xa3\x84"; + inline constexpr char deviceTabletDollar[] = "\xef\xa3\x85"; + inline constexpr char deviceTabletDown[] = "\xef\xa3\x86"; + inline constexpr char deviceTabletExclamation[] = "\xef\xa3\x87"; + inline constexpr char deviceTabletHeart[] = "\xef\xa3\x88"; + inline constexpr char deviceTabletMinus[] = "\xef\xa3\x89"; + inline constexpr char deviceTabletOff[] = "\xef\x81\xa3"; + inline constexpr char deviceTabletPause[] = "\xef\xa3\x8a"; + inline constexpr char deviceTabletPin[] = "\xef\xa3\x8b"; + inline constexpr char deviceTabletPlus[] = "\xef\xa3\x8c"; + inline constexpr char deviceTabletQuestion[] = "\xef\xa3\x8d"; + inline constexpr char deviceTabletSearch[] = "\xef\xa3\x8e"; + inline constexpr char deviceTabletShare[] = "\xef\xa3\x8f"; + inline constexpr char deviceTabletStar[] = "\xef\xa3\x90"; + inline constexpr char deviceTabletUp[] = "\xef\xa3\x91"; + inline constexpr char deviceTabletX[] = "\xef\xa3\x92"; + inline constexpr char deviceTv[] = "\xee\xaa\x8d"; + inline constexpr char deviceTvOff[] = "\xef\x81\xa4"; + inline constexpr char deviceTvOld[] = "\xef\x87\x93"; + inline constexpr char deviceUnknown[] = "\xef\xbb\xb4"; + inline constexpr char deviceUsb[] = "\xef\xb1\x99"; + inline constexpr char deviceVisionPro[] = "\xef\xab\xa7"; + inline constexpr char deviceVisionProWifi[] = "\xf0\x90\x89\xb4"; + inline constexpr char deviceWatch[] = "\xee\xaf\xb9"; + inline constexpr char deviceWatchBolt[] = "\xef\xa3\x93"; + inline constexpr char deviceWatchCancel[] = "\xef\xa3\x94"; + inline constexpr char deviceWatchCheck[] = "\xef\xa3\x95"; + inline constexpr char deviceWatchCode[] = "\xef\xa3\x96"; + inline constexpr char deviceWatchCog[] = "\xef\xa3\x97"; + inline constexpr char deviceWatchDollar[] = "\xef\xa3\x98"; + inline constexpr char deviceWatchDown[] = "\xef\xa3\x99"; + inline constexpr char deviceWatchExclamation[] = "\xef\xa3\x9a"; + inline constexpr char deviceWatchHeart[] = "\xef\xa3\x9b"; + inline constexpr char deviceWatchMinus[] = "\xef\xa3\x9c"; + inline constexpr char deviceWatchOff[] = "\xef\x81\xa5"; + inline constexpr char deviceWatchPause[] = "\xef\xa3\x9d"; + inline constexpr char deviceWatchPin[] = "\xef\xa3\x9e"; + inline constexpr char deviceWatchPlus[] = "\xef\xa3\x9f"; + inline constexpr char deviceWatchQuestion[] = "\xef\xa3\xa0"; + inline constexpr char deviceWatchSearch[] = "\xef\xa3\xa1"; + inline constexpr char deviceWatchShare[] = "\xef\xa3\xa2"; + inline constexpr char deviceWatchStar[] = "\xef\xa3\xa3"; + inline constexpr char deviceWatchStats[] = "\xee\xbd\xbd"; + inline constexpr char deviceWatchStats2[] = "\xee\xbd\xbc"; + inline constexpr char deviceWatchUp[] = "\xef\xa3\xa4"; + inline constexpr char deviceWatchX[] = "\xef\xa3\xa5"; + inline constexpr char deviceWorkstation[] = "\xf0\x90\x89\xb3"; + inline constexpr char devices[] = "\xee\xae\x87"; + inline constexpr char devices2[] = "\xee\xb4\xa9"; + inline constexpr char devicesBolt[] = "\xef\xa3\xa6"; + inline constexpr char devicesCancel[] = "\xef\xa3\xa7"; + inline constexpr char devicesCheck[] = "\xef\xa3\xa8"; + inline constexpr char devicesCode[] = "\xef\xa3\xa9"; + inline constexpr char devicesCog[] = "\xef\xa3\xaa"; + inline constexpr char devicesDollar[] = "\xef\xa3\xab"; + inline constexpr char devicesDown[] = "\xef\xa3\xac"; + inline constexpr char devicesExclamation[] = "\xef\xa3\xad"; + inline constexpr char devicesHeart[] = "\xef\xa3\xae"; + inline constexpr char devicesMinus[] = "\xef\xa3\xaf"; + inline constexpr char devicesOff[] = "\xef\x8f\xa4"; + inline constexpr char devicesPause[] = "\xef\xa3\xb0"; + inline constexpr char devicesPc[] = "\xee\xb9\xba"; + inline constexpr char devicesPcOff[] = "\xef\x84\x93"; + inline constexpr char devicesPin[] = "\xef\xa3\xb1"; + inline constexpr char devicesPlus[] = "\xef\xa3\xb2"; + inline constexpr char devicesQuestion[] = "\xef\xa3\xb3"; + inline constexpr char devicesSearch[] = "\xef\xa3\xb4"; + inline constexpr char devicesShare[] = "\xef\xa3\xb5"; + inline constexpr char devicesStar[] = "\xef\xa3\xb6"; + inline constexpr char devicesUp[] = "\xef\xa3\xb7"; + inline constexpr char devicesX[] = "\xef\xa3\xb8"; + inline constexpr char diabolo[] = "\xef\xaa\x9c"; + inline constexpr char diaboloOff[] = "\xef\xaa\x9a"; + inline constexpr char diaboloPlus[] = "\xef\xaa\x9b"; + inline constexpr char dialpad[] = "\xef\x81\xa7"; + inline constexpr char dialpadOff[] = "\xef\x84\x94"; + inline constexpr char diamond[] = "\xee\xad\xa5"; + inline constexpr char diamondOff[] = "\xef\x84\x95"; + inline constexpr char diamonds[] = "\xee\xbf\xb5"; + inline constexpr char diaper[] = "\xef\xbe\xa2"; + inline constexpr char dice[] = "\xee\xad\xa6"; + inline constexpr char dice1[] = "\xef\x82\x8b"; + inline constexpr char dice2[] = "\xef\x82\x8c"; + inline constexpr char dice3[] = "\xef\x82\x8d"; + inline constexpr char dice4[] = "\xef\x82\x8e"; + inline constexpr char dice5[] = "\xef\x82\x8f"; + inline constexpr char dice6[] = "\xef\x82\x90"; + inline constexpr char dimensions[] = "\xee\xb9\xbb"; + inline constexpr char direction[] = "\xee\xaf\xbb"; + inline constexpr char directionArrows[] = "\xef\xb4\xb6"; + inline constexpr char directionHorizontal[] = "\xee\xaf\xba"; + inline constexpr char directionSign[] = "\xef\x87\xb7"; + inline constexpr char directionSignOff[] = "\xef\x8f\xa5"; + inline constexpr char directions[] = "\xee\xaa\x8e"; + inline constexpr char directionsOff[] = "\xef\x84\x96"; + inline constexpr char disabled[] = "\xee\xaa\x8f"; + inline constexpr char disabled2[] = "\xee\xae\xaf"; + inline constexpr char disabledOff[] = "\xef\x84\x97"; + inline constexpr char disc[] = "\xee\xaa\x90"; + inline constexpr char discGolf[] = "\xef\x8e\x85"; + inline constexpr char discOff[] = "\xef\x84\x98"; + inline constexpr char discount[] = "\xee\xae\xbd"; + inline constexpr char discountOff[] = "\xef\x8f\xa7"; + inline constexpr char divide[] = "\xee\xb5\x9c"; + inline constexpr char dna[] = "\xee\xb9\xbd"; + inline constexpr char dna2[] = "\xee\xbd\x9c"; + inline constexpr char dna2Off[] = "\xef\x84\x99"; + inline constexpr char dnaOff[] = "\xef\x84\x9a"; + inline constexpr char dog[] = "\xef\x99\xa0"; + inline constexpr char dogBowl[] = "\xee\xbc\xa9"; + inline constexpr char door[] = "\xee\xbd\x8e"; + inline constexpr char doorEnter[] = "\xee\xbd\x8c"; + inline constexpr char doorExit[] = "\xee\xbd\x8d"; + inline constexpr char doorHanger[] = "\xf0\x90\x88\xbb"; + inline constexpr char doorOff[] = "\xef\x84\x9b"; + inline constexpr char dots[] = "\xee\xaa\x95"; + inline constexpr char dotsCircleHorizontal[] = "\xee\xaa\x91"; + inline constexpr char dotsDiagonal[] = "\xee\xaa\x93"; + inline constexpr char dotsDiagonal2[] = "\xee\xaa\x92"; + inline constexpr char dotsVertical[] = "\xee\xaa\x94"; + inline constexpr char download[] = "\xee\xaa\x96"; + inline constexpr char downloadOff[] = "\xef\x84\x9c"; + inline constexpr char dragDrop[] = "\xee\xae\x89"; + inline constexpr char dragDrop2[] = "\xee\xae\x88"; + inline constexpr char dragon[] = "\xf0\x90\x89\xb2"; + inline constexpr char drone[] = "\xee\xb5\xb9"; + inline constexpr char droneOff[] = "\xee\xb9\xbe"; + inline constexpr char dropCircle[] = "\xee\xbf\x9e"; + inline constexpr char droplet[] = "\xee\xaa\x97"; + inline constexpr char dropletBolt[] = "\xef\xa3\xb9"; + inline constexpr char dropletCancel[] = "\xef\xa3\xba"; + inline constexpr char dropletCheck[] = "\xef\xa3\xbb"; + inline constexpr char dropletCode[] = "\xef\xa3\xbc"; + inline constexpr char dropletCog[] = "\xef\xa3\xbd"; + inline constexpr char dropletDollar[] = "\xef\xa3\xbe"; + inline constexpr char dropletDown[] = "\xef\xa3\xbf"; + inline constexpr char dropletExclamation[] = "\xef\xa4\x80"; + inline constexpr char dropletHalf[] = "\xee\xba\x82"; + inline constexpr char dropletHalf2[] = "\xee\xba\x81"; + inline constexpr char dropletHeart[] = "\xef\xa4\x81"; + inline constexpr char dropletMinus[] = "\xef\xa4\x82"; + inline constexpr char dropletOff[] = "\xee\xba\x83"; + inline constexpr char dropletPause[] = "\xef\xa4\x83"; + inline constexpr char dropletPin[] = "\xef\xa4\x84"; + inline constexpr char dropletPlus[] = "\xef\xa4\x85"; + inline constexpr char dropletQuestion[] = "\xef\xa4\x86"; + inline constexpr char dropletSearch[] = "\xef\xa4\x87"; + inline constexpr char dropletShare[] = "\xef\xa4\x88"; + inline constexpr char dropletStar[] = "\xef\xa4\x89"; + inline constexpr char dropletUp[] = "\xef\xa4\x8a"; + inline constexpr char dropletX[] = "\xef\xa4\x8b"; + inline constexpr char droplets[] = "\xef\xb0\x92"; + inline constexpr char dualScreen[] = "\xef\xa9\x99"; + inline constexpr char dumbbell[] = "\xf0\x90\x89\x8d"; + inline constexpr char dumpling[] = "\xef\xba\xb5"; + inline constexpr char ePassport[] = "\xef\x93\x9f"; + inline constexpr char ear[] = "\xee\xaf\x8e"; + inline constexpr char earOff[] = "\xee\xba\x84"; + inline constexpr char earScan[] = "\xef\xb5\x97"; + inline constexpr char earphoneBluetooth[] = "\xf0\x90\x88\xba"; + inline constexpr char easeIn[] = "\xef\x95\xb3"; + inline constexpr char easeInControlPoint[] = "\xef\x95\xb0"; + inline constexpr char easeInOut[] = "\xef\x95\xb2"; + inline constexpr char easeInOutControlPoints[] = "\xef\x95\xb1"; + inline constexpr char easeOut[] = "\xef\x95\xb5"; + inline constexpr char easeOutControlPoint[] = "\xef\x95\xb4"; + inline constexpr char edit[] = "\xee\xaa\x98"; + inline constexpr char editCircle[] = "\xee\xba\x85"; + inline constexpr char editCircleOff[] = "\xef\x84\x9d"; + inline constexpr char editOff[] = "\xef\x84\x9e"; + inline constexpr char egg[] = "\xee\xae\x8a"; + inline constexpr char eggCracked[] = "\xef\x8b\x96"; + inline constexpr char eggFried[] = "\xef\x8e\x86"; + inline constexpr char eggOff[] = "\xef\x84\x9f"; + inline constexpr char eggs[] = "\xef\x94\x80"; + inline constexpr char elevator[] = "\xee\xbf\x9f"; + inline constexpr char elevatorOff[] = "\xef\x8f\xa8"; + inline constexpr char emailStamp[] = "\xf0\x90\x89\xa6"; + inline constexpr char emergencyBed[] = "\xee\xbd\x9d"; + inline constexpr char empathize[] = "\xef\x8a\x9b"; + inline constexpr char empathizeOff[] = "\xef\x8f\xa9"; + inline constexpr char emphasis[] = "\xee\xaf\x8f"; + inline constexpr char engine[] = "\xee\xbd\xbe"; + inline constexpr char engineOff[] = "\xef\x84\xa0"; + inline constexpr char equal[] = "\xee\xba\x87"; + inline constexpr char equalDouble[] = "\xef\x93\xa1"; + inline constexpr char equalNot[] = "\xee\xba\x86"; + inline constexpr char eraser[] = "\xee\xae\x8b"; + inline constexpr char eraserOff[] = "\xef\x84\xa1"; + inline constexpr char error404[] = "\xef\x80\xa7"; + inline constexpr char error404Off[] = "\xef\x84\xa2"; + inline constexpr char escalator[] = "\xef\xac\x86"; + inline constexpr char escalatorDown[] = "\xef\xac\x84"; + inline constexpr char escalatorUp[] = "\xef\xac\x85"; + inline constexpr char exchange[] = "\xee\xaf\xa7"; + inline constexpr char exchangeOff[] = "\xef\x84\xa3"; + inline constexpr char exclamationCircle[] = "\xef\x98\xb4"; + inline constexpr char exclamationMark[] = "\xee\xbe\xb4"; + inline constexpr char exclamationMarkOff[] = "\xef\x84\xa4"; + inline constexpr char exerciseBall[] = "\xf0\x90\x89\x8c"; + inline constexpr char explicitIcon[] = "\xef\x89\x96"; + inline constexpr char explicitOff[] = "\xef\x8f\xaa"; + inline constexpr char exposure[] = "\xee\xae\x8c"; + inline constexpr char exposure0[] = "\xef\x8a\x9c"; + inline constexpr char exposureMinus1[] = "\xef\x8a\x9d"; + inline constexpr char exposureMinus2[] = "\xef\x8a\x9e"; + inline constexpr char exposureOff[] = "\xef\x8f\xab"; + inline constexpr char exposurePlus1[] = "\xef\x8a\x9f"; + inline constexpr char exposurePlus2[] = "\xef\x8a\xa0"; + inline constexpr char externalLink[] = "\xee\xaa\x99"; + inline constexpr char externalLinkOff[] = "\xef\x84\xa5"; + inline constexpr char eye[] = "\xee\xaa\x9a"; + inline constexpr char eyeBitcoin[] = "\xef\xbc\xbd"; + inline constexpr char eyeBolt[] = "\xef\xad\xad"; + inline constexpr char eyeCancel[] = "\xef\xad\xae"; + inline constexpr char eyeCheck[] = "\xee\xba\x88"; + inline constexpr char eyeClosed[] = "\xef\x9f\xac"; + inline constexpr char eyeCode[] = "\xef\xad\xaf"; + inline constexpr char eyeCog[] = "\xef\x9f\xad"; + inline constexpr char eyeDiscount[] = "\xef\xad\xb0"; + inline constexpr char eyeDollar[] = "\xef\xad\xb1"; + inline constexpr char eyeDotted[] = "\xef\xba\xad"; + inline constexpr char eyeDown[] = "\xef\xad\xb2"; + inline constexpr char eyeEdit[] = "\xef\x9f\xae"; + inline constexpr char eyeExclamation[] = "\xef\x9f\xaf"; + inline constexpr char eyeHeart[] = "\xef\x9f\xb0"; + inline constexpr char eyeMinus[] = "\xef\xad\xb3"; + inline constexpr char eyeOff[] = "\xee\xb3\xb0"; + inline constexpr char eyePause[] = "\xef\xad\xb4"; + inline constexpr char eyePin[] = "\xef\xad\xb5"; + inline constexpr char eyePlus[] = "\xef\xad\xb6"; + inline constexpr char eyeQuestion[] = "\xef\xad\xb7"; + inline constexpr char eyeSearch[] = "\xef\xad\xb8"; + inline constexpr char eyeShare[] = "\xef\xad\xb9"; + inline constexpr char eyeSpark[] = "\xef\xbe\xba"; + inline constexpr char eyeStar[] = "\xef\xad\xba"; + inline constexpr char eyeTable[] = "\xee\xbd\x9e"; + inline constexpr char eyeUp[] = "\xef\xad\xbb"; + inline constexpr char eyeX[] = "\xef\x9f\xb1"; + inline constexpr char eyeglass[] = "\xee\xba\x8a"; + inline constexpr char eyeglass2[] = "\xee\xba\x89"; + inline constexpr char eyeglassOff[] = "\xef\x84\xa6"; + inline constexpr char faceId[] = "\xee\xaa\x9b"; + inline constexpr char faceIdError[] = "\xee\xbe\xa7"; + inline constexpr char faceMask[] = "\xee\xbe\xb5"; + inline constexpr char faceMaskOff[] = "\xef\x84\xa7"; + inline constexpr char fall[] = "\xee\xb2\xb9"; + inline constexpr char favicon[] = "\xef\xb5\xa5"; + inline constexpr char feather[] = "\xee\xba\x8b"; + inline constexpr char featherOff[] = "\xef\x84\xa8"; + inline constexpr char fence[] = "\xee\xbc\xaa"; + inline constexpr char fenceOff[] = "\xef\x84\xa9"; + inline constexpr char ferry[] = "\xf0\x90\x81\xb4"; + inline constexpr char fidgetSpinner[] = "\xef\x81\xa8"; + inline constexpr char file[] = "\xee\xaa\xa4"; + inline constexpr char file3d[] = "\xef\x80\xb2"; + inline constexpr char fileAi[] = "\xef\xbe\xa1"; + inline constexpr char fileAlert[] = "\xee\xb7\xa6"; + inline constexpr char fileAnalytics[] = "\xee\xb7\xa7"; + inline constexpr char fileArrowLeft[] = "\xef\x80\xb3"; + inline constexpr char fileArrowRight[] = "\xef\x80\xb4"; + inline constexpr char fileBarcode[] = "\xef\x80\xb5"; + inline constexpr char fileBitcoin[] = "\xef\xbe\xa0"; + inline constexpr char fileBroken[] = "\xef\x94\x81"; + inline constexpr char fileCertificate[] = "\xee\xb5\x8d"; + inline constexpr char fileChart[] = "\xef\x80\xb6"; + inline constexpr char fileCheck[] = "\xee\xaa\x9c"; + inline constexpr char fileCode[] = "\xee\xaf\x90"; + inline constexpr char fileCode2[] = "\xee\xb7\xa8"; + inline constexpr char fileCv[] = "\xef\xa9\x9a"; + inline constexpr char fileDatabase[] = "\xef\x80\xb7"; + inline constexpr char fileDelta[] = "\xef\x94\xbd"; + inline constexpr char fileDescription[] = "\xef\x80\xa8"; + inline constexpr char fileDiff[] = "\xee\xb3\xb1"; + inline constexpr char fileDigit[] = "\xee\xbe\xa8"; + inline constexpr char fileDislike[] = "\xee\xb4\xaa"; + inline constexpr char fileDollar[] = "\xee\xbf\xa0"; + inline constexpr char fileDots[] = "\xef\x80\xb8"; + inline constexpr char fileDownload[] = "\xee\xaa\x9d"; + inline constexpr char fileEuro[] = "\xee\xbf\xa1"; + inline constexpr char fileExcel[] = "\xef\xbb\xb3"; + inline constexpr char fileExport[] = "\xee\xb7\xa9"; + inline constexpr char fileFunction[] = "\xef\x94\xbe"; + inline constexpr char fileHorizontal[] = "\xee\xae\xb0"; + inline constexpr char fileImport[] = "\xee\xb7\xaa"; + inline constexpr char fileInfinity[] = "\xef\x94\x82"; + inline constexpr char fileInfo[] = "\xee\xb7\xac"; + inline constexpr char fileInvoice[] = "\xee\xad\xa7"; + inline constexpr char fileIsr[] = "\xef\xba\xac"; + inline constexpr char fileLambda[] = "\xef\x94\xbf"; + inline constexpr char fileLike[] = "\xee\xb4\xab"; + inline constexpr char fileMinus[] = "\xee\xaa\x9e"; + inline constexpr char fileMusic[] = "\xee\xaa\x9f"; + inline constexpr char fileNeutral[] = "\xef\xb4\xa2"; + inline constexpr char fileOff[] = "\xee\xb3\xb2"; + inline constexpr char fileOrientation[] = "\xef\x8a\xa1"; + inline constexpr char filePencil[] = "\xef\x80\xb9"; + inline constexpr char filePercent[] = "\xef\x95\x80"; + inline constexpr char filePhone[] = "\xee\xb3\x9c"; + inline constexpr char filePlus[] = "\xee\xaa\xa0"; + inline constexpr char filePower[] = "\xef\x80\xba"; + inline constexpr char fileReport[] = "\xee\xb7\xad"; + inline constexpr char fileRss[] = "\xef\x80\xbb"; + inline constexpr char fileSad[] = "\xef\xb4\xa3"; + inline constexpr char fileScissors[] = "\xef\x80\xbc"; + inline constexpr char fileSearch[] = "\xee\xb5\x9d"; + inline constexpr char fileSettings[] = "\xef\x80\xa9"; + inline constexpr char fileShredder[] = "\xee\xaa\xa1"; + inline constexpr char fileSignal[] = "\xef\x80\xbd"; + inline constexpr char fileSmile[] = "\xef\xb4\xa4"; + inline constexpr char fileSpark[] = "\xef\xbe\xb9"; + inline constexpr char fileSpreadsheet[] = "\xef\x80\xbe"; + inline constexpr char fileStack[] = "\xef\x94\x83"; + inline constexpr char fileStar[] = "\xef\x80\xbf"; + inline constexpr char fileSymlink[] = "\xee\xb5\x93"; + inline constexpr char fileText[] = "\xee\xaa\xa2"; + inline constexpr char fileTextAi[] = "\xef\xa8\xa7"; + inline constexpr char fileTextShield[] = "\xf0\x90\x83\xb2"; + inline constexpr char fileTextSpark[] = "\xef\xbe\xb8"; + inline constexpr char fileTime[] = "\xef\x81\x80"; + inline constexpr char fileTypeBmp[] = "\xef\xac\x87"; + inline constexpr char fileTypeCss[] = "\xef\xac\x88"; + inline constexpr char fileTypeCsv[] = "\xef\xac\x89"; + inline constexpr char fileTypeDoc[] = "\xef\xac\x8a"; + inline constexpr char fileTypeDocx[] = "\xef\xac\x8b"; + inline constexpr char fileTypeHtml[] = "\xef\xac\x8c"; + inline constexpr char fileTypeJpg[] = "\xef\xac\x8d"; + inline constexpr char fileTypeJs[] = "\xef\xac\x8e"; + inline constexpr char fileTypeJsx[] = "\xef\xac\x8f"; + inline constexpr char fileTypePdf[] = "\xef\xac\x90"; + inline constexpr char fileTypePhp[] = "\xef\xac\x91"; + inline constexpr char fileTypePng[] = "\xef\xac\x92"; + inline constexpr char fileTypePpt[] = "\xef\xac\x93"; + inline constexpr char fileTypeRs[] = "\xef\xac\x94"; + inline constexpr char fileTypeSql[] = "\xef\xac\x95"; + inline constexpr char fileTypeSvg[] = "\xef\xac\x96"; + inline constexpr char fileTypeTs[] = "\xef\xac\x97"; + inline constexpr char fileTypeTsx[] = "\xef\xac\x98"; + inline constexpr char fileTypeTxt[] = "\xef\xac\x99"; + inline constexpr char fileTypeVue[] = "\xef\xac\x9a"; + inline constexpr char fileTypeXls[] = "\xef\xac\x9b"; + inline constexpr char fileTypeXml[] = "\xef\xac\x9c"; + inline constexpr char fileTypeZip[] = "\xef\xac\x9d"; + inline constexpr char fileTypography[] = "\xef\x81\x81"; + inline constexpr char fileUnknown[] = "\xef\x81\x82"; + inline constexpr char fileUpload[] = "\xee\xb2\x91"; + inline constexpr char fileVector[] = "\xef\x81\x83"; + inline constexpr char fileWord[] = "\xef\xbb\xb2"; + inline constexpr char fileX[] = "\xee\xaa\xa3"; + inline constexpr char fileZip[] = "\xee\xb5\x8e"; + inline constexpr char files[] = "\xee\xb7\xaf"; + inline constexpr char filesOff[] = "\xee\xb7\xae"; + inline constexpr char filter[] = "\xee\xaa\xa5"; + inline constexpr char filter2[] = "\xf0\x90\x85\x8b"; + inline constexpr char filter2Bolt[] = "\xf0\x90\x85\x9f"; + inline constexpr char filter2Cancel[] = "\xf0\x90\x85\x9e"; + inline constexpr char filter2Check[] = "\xf0\x90\x85\x9d"; + inline constexpr char filter2Code[] = "\xf0\x90\x85\x9c"; + inline constexpr char filter2Cog[] = "\xf0\x90\x85\x9b"; + inline constexpr char filter2Discount[] = "\xf0\x90\x85\x9a"; + inline constexpr char filter2Dollar[] = "\xf0\x90\x85\x99"; + inline constexpr char filter2Down[] = "\xf0\x90\x85\x98"; + inline constexpr char filter2Edit[] = "\xf0\x90\x85\x97"; + inline constexpr char filter2Exclamation[] = "\xf0\x90\x85\x96"; + inline constexpr char filter2Minus[] = "\xf0\x90\x85\x95"; + inline constexpr char filter2Pause[] = "\xf0\x90\x85\x94"; + inline constexpr char filter2Pin[] = "\xf0\x90\x85\x93"; + inline constexpr char filter2Plus[] = "\xf0\x90\x85\x92"; + inline constexpr char filter2Question[] = "\xf0\x90\x85\x91"; + inline constexpr char filter2Search[] = "\xf0\x90\x85\x90"; + inline constexpr char filter2Share[] = "\xf0\x90\x85\x8f"; + inline constexpr char filter2Spark[] = "\xf0\x90\x85\x8e"; + inline constexpr char filter2Up[] = "\xf0\x90\x85\x8d"; + inline constexpr char filter2X[] = "\xf0\x90\x85\x8c"; + inline constexpr char filterBolt[] = "\xef\xad\xbc"; + inline constexpr char filterCancel[] = "\xef\xad\xbd"; + inline constexpr char filterCheck[] = "\xef\xad\xbe"; + inline constexpr char filterCode[] = "\xef\xad\xbf"; + inline constexpr char filterCog[] = "\xef\xa7\xbe"; + inline constexpr char filterDiscount[] = "\xef\xae\x80"; + inline constexpr char filterDollar[] = "\xef\xa7\xbf"; + inline constexpr char filterDown[] = "\xef\xae\x81"; + inline constexpr char filterEdit[] = "\xef\xa8\x80"; + inline constexpr char filterExclamation[] = "\xef\xae\x82"; + inline constexpr char filterHeart[] = "\xef\xae\x83"; + inline constexpr char filterMinus[] = "\xef\xa8\x81"; + inline constexpr char filterOff[] = "\xee\xb4\xac"; + inline constexpr char filterPause[] = "\xef\xae\x84"; + inline constexpr char filterPin[] = "\xef\xae\x85"; + inline constexpr char filterPlus[] = "\xef\xa8\x82"; + inline constexpr char filterQuestion[] = "\xef\xae\x86"; + inline constexpr char filterSearch[] = "\xef\xae\x87"; + inline constexpr char filterShare[] = "\xef\xae\x88"; + inline constexpr char filterSpark[] = "\xf0\x90\x85\x8a"; + inline constexpr char filterStar[] = "\xef\xa8\x83"; + inline constexpr char filterUp[] = "\xef\xae\x89"; + inline constexpr char filterX[] = "\xef\xa8\x84"; + inline constexpr char filters[] = "\xef\x9e\x93"; + inline constexpr char fingerprint[] = "\xee\xaf\x91"; + inline constexpr char fingerprintOff[] = "\xef\x84\xaa"; + inline constexpr char fingerprintScan[] = "\xef\xb2\xb5"; + inline constexpr char fireExtinguisher[] = "\xef\xab\xb6"; + inline constexpr char fireHydrant[] = "\xef\x8e\xa9"; + inline constexpr char fireHydrantOff[] = "\xef\x8f\xac"; + inline constexpr char firetruck[] = "\xee\xaf\xa8"; + inline constexpr char firewallCheck[] = "\xf0\x90\x87\xb1"; + inline constexpr char firewallFlame[] = "\xf0\x90\x87\xb0"; + inline constexpr char firstAidKit[] = "\xee\xbd\x9f"; + inline constexpr char firstAidKitOff[] = "\xef\x8f\xad"; + inline constexpr char fish[] = "\xee\xbc\xab"; + inline constexpr char fishBone[] = "\xef\x8a\x87"; + inline constexpr char fishChristianity[] = "\xef\x96\x8b"; + inline constexpr char fishHook[] = "\xef\x87\xb9"; + inline constexpr char fishHookOff[] = "\xef\x8f\xae"; + inline constexpr char fishOff[] = "\xef\x84\xab"; + inline constexpr char flag[] = "\xee\xaa\xa6"; + inline constexpr char flag2[] = "\xee\xba\x8c"; + inline constexpr char flag2Off[] = "\xef\x84\xac"; + inline constexpr char flag3[] = "\xee\xba\x8d"; + inline constexpr char flagBitcoin[] = "\xef\xbc\xbc"; + inline constexpr char flagBolt[] = "\xef\xae\x8a"; + inline constexpr char flagCancel[] = "\xef\xae\x8b"; + inline constexpr char flagCheck[] = "\xef\xae\x8c"; + inline constexpr char flagCode[] = "\xef\xae\x8d"; + inline constexpr char flagCog[] = "\xef\xae\x8e"; + inline constexpr char flagDiscount[] = "\xef\xae\x8f"; + inline constexpr char flagDollar[] = "\xef\xae\x90"; + inline constexpr char flagDown[] = "\xef\xae\x91"; + inline constexpr char flagExclamation[] = "\xef\xae\x92"; + inline constexpr char flagHeart[] = "\xef\xae\x93"; + inline constexpr char flagMinus[] = "\xef\xae\x94"; + inline constexpr char flagOff[] = "\xef\x84\xad"; + inline constexpr char flagPause[] = "\xef\xae\x95"; + inline constexpr char flagPin[] = "\xef\xae\x96"; + inline constexpr char flagPlus[] = "\xef\xae\x97"; + inline constexpr char flagQuestion[] = "\xef\xae\x98"; + inline constexpr char flagSearch[] = "\xef\xae\x99"; + inline constexpr char flagShare[] = "\xef\xae\x9a"; + inline constexpr char flagSpark[] = "\xef\xbe\xb7"; + inline constexpr char flagStar[] = "\xef\xae\x9b"; + inline constexpr char flagUp[] = "\xef\xae\x9c"; + inline constexpr char flagX[] = "\xef\xae\x9d"; + inline constexpr char flame[] = "\xee\xb0\xac"; + inline constexpr char flameOff[] = "\xef\x84\xae"; + inline constexpr char flare[] = "\xee\xba\x8e"; + inline constexpr char flask[] = "\xee\xaf\x92"; + inline constexpr char flask2[] = "\xee\xbd\xa0"; + inline constexpr char flask2Off[] = "\xef\x84\xaf"; + inline constexpr char flaskOff[] = "\xef\x84\xb0"; + inline constexpr char flipFlops[] = "\xef\x95\xa4"; + inline constexpr char flipHorizontal[] = "\xee\xaa\xa7"; + inline constexpr char flipVertical[] = "\xee\xaa\xa8"; + inline constexpr char floatCenter[] = "\xee\xae\xb1"; + inline constexpr char floatLeft[] = "\xee\xae\xb2"; + inline constexpr char floatNone[] = "\xee\xb4\x93"; + inline constexpr char floatRight[] = "\xee\xae\xb3"; + inline constexpr char flood[] = "\xf0\x90\x89\x8b"; + inline constexpr char flower[] = "\xee\xbf\xb6"; + inline constexpr char flowerOff[] = "\xef\x84\xb1"; + inline constexpr char focus[] = "\xee\xae\x8d"; + inline constexpr char focus2[] = "\xee\xaf\x93"; + inline constexpr char focusAuto[] = "\xef\xa9\xa2"; + inline constexpr char focusCentered[] = "\xef\x80\xaa"; + inline constexpr char fold[] = "\xee\xb5\x96"; + inline constexpr char foldDown[] = "\xee\xb5\x94"; + inline constexpr char foldUp[] = "\xee\xb5\x95"; + inline constexpr char folder[] = "\xee\xaa\xad"; + inline constexpr char folderBolt[] = "\xef\xa4\x8c"; + inline constexpr char folderCancel[] = "\xef\xa4\x8d"; + inline constexpr char folderCheck[] = "\xef\xa4\x8e"; + inline constexpr char folderCode[] = "\xef\xa4\x8f"; + inline constexpr char folderCog[] = "\xef\xa4\x90"; + inline constexpr char folderDollar[] = "\xef\xa4\x91"; + inline constexpr char folderDown[] = "\xef\xa4\x92"; + inline constexpr char folderExclamation[] = "\xef\xa4\x93"; + inline constexpr char folderHeart[] = "\xef\xa4\x94"; + inline constexpr char folderMinus[] = "\xee\xaa\xaa"; + inline constexpr char folderOff[] = "\xee\xb4\x94"; + inline constexpr char folderOpen[] = "\xef\xab\xb7"; + inline constexpr char folderPause[] = "\xef\xa4\x95"; + inline constexpr char folderPin[] = "\xef\xa4\x96"; + inline constexpr char folderPlus[] = "\xee\xaa\xab"; + inline constexpr char folderQuestion[] = "\xef\xa4\x97"; + inline constexpr char folderRoot[] = "\xef\xb5\x83"; + inline constexpr char folderSearch[] = "\xef\xa4\x98"; + inline constexpr char folderShare[] = "\xef\xa4\x99"; + inline constexpr char folderStar[] = "\xef\xa4\x9a"; + inline constexpr char folderSymlink[] = "\xef\xa4\x9b"; + inline constexpr char folderUp[] = "\xef\xa4\x9c"; + inline constexpr char folderX[] = "\xee\xaa\xac"; + inline constexpr char folders[] = "\xee\xaa\xae"; + inline constexpr char foldersOff[] = "\xef\x84\xb3"; + inline constexpr char footsteps[] = "\xf0\x90\x89\xa5"; + inline constexpr char forbid[] = "\xee\xaf\x95"; + inline constexpr char forbid2[] = "\xee\xaf\x94"; + inline constexpr char forklift[] = "\xee\xaf\xa9"; + inline constexpr char forms[] = "\xee\xba\x8f"; + inline constexpr char fountain[] = "\xef\x82\x9b"; + inline constexpr char fountainOff[] = "\xef\x84\xb4"; + inline constexpr char frame[] = "\xee\xaa\xaf"; + inline constexpr char frameOff[] = "\xef\x84\xb5"; + inline constexpr char freeRights[] = "\xee\xbe\xb6"; + inline constexpr char freezeColumn[] = "\xef\xa9\xa3"; + inline constexpr char freezeRow[] = "\xef\xa9\xa5"; + inline constexpr char freezeRowColumn[] = "\xef\xa9\xa4"; + inline constexpr char fridge[] = "\xef\x87\xba"; + inline constexpr char fridgeOff[] = "\xef\x8f\xaf"; + inline constexpr char friends[] = "\xee\xaa\xb0"; + inline constexpr char friendsOff[] = "\xef\x84\xb6"; + inline constexpr char frustum[] = "\xef\xaa\x9f"; + inline constexpr char frustumOff[] = "\xef\xaa\x9d"; + inline constexpr char frustumPlus[] = "\xef\xaa\x9e"; + inline constexpr char function[] = "\xef\x88\xa5"; + inline constexpr char functionOff[] = "\xef\x8f\xb0"; + inline constexpr char galaxy[] = "\xef\xb2\xb6"; + inline constexpr char gardenCart[] = "\xef\x88\xbe"; + inline constexpr char gardenCartOff[] = "\xef\x8f\xb1"; + inline constexpr char gasStation[] = "\xee\xb1\xbd"; + inline constexpr char gasStationOff[] = "\xef\x84\xb7"; + inline constexpr char gauge[] = "\xee\xaa\xb1"; + inline constexpr char gaugeOff[] = "\xef\x84\xb8"; + inline constexpr char gavel[] = "\xee\xbe\x90"; + inline constexpr char genderAgender[] = "\xef\x83\xa1"; + inline constexpr char genderAndrogyne[] = "\xef\x83\xa2"; + inline constexpr char genderBigender[] = "\xef\x83\xa3"; + inline constexpr char genderDemiboy[] = "\xef\x83\xa4"; + inline constexpr char genderDemigirl[] = "\xef\x83\xa5"; + inline constexpr char genderEpicene[] = "\xef\x83\xa6"; + inline constexpr char genderFemale[] = "\xef\x83\xa7"; + inline constexpr char genderFemme[] = "\xef\x83\xa8"; + inline constexpr char genderGenderfluid[] = "\xef\x83\xa9"; + inline constexpr char genderGenderless[] = "\xef\x83\xaa"; + inline constexpr char genderGenderqueer[] = "\xef\x83\xab"; + inline constexpr char genderHermaphrodite[] = "\xef\x83\xac"; + inline constexpr char genderIntergender[] = "\xef\x83\xad"; + inline constexpr char genderMale[] = "\xef\x83\xae"; + inline constexpr char genderNeutrois[] = "\xef\x83\xaf"; + inline constexpr char genderThird[] = "\xef\x83\xb0"; + inline constexpr char genderTransgender[] = "\xef\x83\xb1"; + inline constexpr char genderTravesti[] = "\xef\x83\xb2"; + inline constexpr char geometry[] = "\xee\xba\x90"; + inline constexpr char ghost[] = "\xee\xae\x8e"; + inline constexpr char ghost2[] = "\xef\x95\xbc"; + inline constexpr char ghost3[] = "\xef\xb0\x93"; + inline constexpr char ghostOff[] = "\xef\x8f\xb2"; + inline constexpr char gif[] = "\xef\x89\x97"; + inline constexpr char gift[] = "\xee\xad\xa8"; + inline constexpr char giftCard[] = "\xef\x8e\xaa"; + inline constexpr char giftOff[] = "\xef\x8f\xb3"; + inline constexpr char gitBranch[] = "\xee\xaa\xb2"; + inline constexpr char gitBranchDeleted[] = "\xef\x95\xbd"; + inline constexpr char gitCherryPick[] = "\xef\x95\xbe"; + inline constexpr char gitCommit[] = "\xee\xaa\xb3"; + inline constexpr char gitCompare[] = "\xee\xaa\xb4"; + inline constexpr char gitFork[] = "\xee\xae\x8f"; + inline constexpr char gitMerge[] = "\xee\xaa\xb5"; + inline constexpr char gitPullRequest[] = "\xee\xaa\xb6"; + inline constexpr char gitPullRequestClosed[] = "\xee\xbd\xbf"; + inline constexpr char gitPullRequestConflict[] = "\xf0\x90\x89\xa4"; + inline constexpr char gitPullRequestDraft[] = "\xee\xbe\xb7"; + inline constexpr char gizmo[] = "\xef\x80\xab"; + inline constexpr char glass[] = "\xee\xaa\xb8"; + inline constexpr char glassChampagne[] = "\xef\xb6\x9c"; + inline constexpr char glassCocktail[] = "\xef\xb6\x9d"; + inline constexpr char glassFull[] = "\xee\xaa\xb7"; + inline constexpr char glassGin[] = "\xef\xb6\x9e"; + inline constexpr char glassOff[] = "\xee\xba\x91"; + inline constexpr char globe[] = "\xee\xaa\xb9"; + inline constexpr char globeOff[] = "\xef\x84\xb9"; + inline constexpr char goGame[] = "\xef\x94\x92"; + inline constexpr char golf[] = "\xee\xb6\x8c"; + inline constexpr char golfOff[] = "\xef\x84\xba"; + inline constexpr char gps[] = "\xee\xb5\xba"; + inline constexpr char gradienter[] = "\xef\x8e\xab"; + inline constexpr char grain[] = "\xee\xba\x92"; + inline constexpr char grape[] = "\xf0\x90\x88\xb9"; + inline constexpr char graph[] = "\xef\x8a\x88"; + inline constexpr char graphOff[] = "\xef\x8f\xb4"; + inline constexpr char grave[] = "\xef\x96\x80"; + inline constexpr char grave2[] = "\xef\x95\xbf"; + inline constexpr char grid3x3[] = "\xef\xb2\xa4"; + inline constexpr char grid4x4[] = "\xef\xb2\xa5"; + inline constexpr char gridDots[] = "\xee\xaa\xba"; + inline constexpr char gridGoldenratio[] = "\xef\xb2\xa6"; + inline constexpr char gridPattern[] = "\xee\xbf\x89"; + inline constexpr char gridScan[] = "\xef\xb2\xa7"; + inline constexpr char grill[] = "\xee\xbe\xa9"; + inline constexpr char grillFork[] = "\xef\x8d\x9b"; + inline constexpr char grillOff[] = "\xef\x8f\xb5"; + inline constexpr char grillSpatula[] = "\xef\x8d\x9c"; + inline constexpr char gripHorizontal[] = "\xee\xb0\x80"; + inline constexpr char gripVertical[] = "\xee\xb0\x81"; + inline constexpr char growth[] = "\xee\xba\x93"; + inline constexpr char guitarPick[] = "\xef\x93\x86"; + inline constexpr char gymnastics[] = "\xef\xb5\x84"; + inline constexpr char h1[] = "\xee\xb2\x94"; + inline constexpr char h2[] = "\xee\xb2\x95"; + inline constexpr char h3[] = "\xee\xb2\x96"; + inline constexpr char h4[] = "\xee\xb2\x97"; + inline constexpr char h5[] = "\xee\xb2\x98"; + inline constexpr char h6[] = "\xee\xb2\x99"; + inline constexpr char hammer[] = "\xee\xbe\x91"; + inline constexpr char hammerDrill[] = "\xf0\x90\x88\xb8"; + inline constexpr char hammerOff[] = "\xef\x84\xbc"; + inline constexpr char handClick[] = "\xee\xbd\x8f"; + inline constexpr char handClickOff[] = "\xf0\x90\x83\xb1"; + inline constexpr char handFinger[] = "\xee\xba\x94"; + inline constexpr char handFingerDown[] = "\xef\xbd\x8f"; + inline constexpr char handFingerLeft[] = "\xef\xbd\x8e"; + inline constexpr char handFingerOff[] = "\xef\x84\xbd"; + inline constexpr char handFingerRight[] = "\xef\xbd\x8d"; + inline constexpr char handGrab[] = "\xef\x82\x91"; + inline constexpr char handLittleFinger[] = "\xee\xba\x95"; + inline constexpr char handLoveYou[] = "\xee\xba\x97"; + inline constexpr char handMiddleFinger[] = "\xee\xb0\xad"; + inline constexpr char handMove[] = "\xee\xbd\x90"; + inline constexpr char handOff[] = "\xee\xb4\x95"; + inline constexpr char handRingFinger[] = "\xee\xba\x96"; + inline constexpr char handSanitizer[] = "\xef\x97\xb4"; + inline constexpr char handStop[] = "\xee\xb0\xae"; + inline constexpr char handThreeFingers[] = "\xee\xba\x98"; + inline constexpr char handTwoFingers[] = "\xee\xba\x99"; + inline constexpr char hanger[] = "\xee\xba\x9a"; + inline constexpr char hanger2[] = "\xef\x82\x9c"; + inline constexpr char hangerOff[] = "\xef\x84\xbe"; + inline constexpr char hash[] = "\xee\xaa\xbc"; + inline constexpr char haze[] = "\xee\xbe\xaa"; + inline constexpr char hazeMoon[] = "\xef\xab\xb8"; + inline constexpr char hdr[] = "\xef\xa9\xbb"; + inline constexpr char heading[] = "\xee\xba\x9b"; + inline constexpr char headingOff[] = "\xef\x84\xbf"; + inline constexpr char headphones[] = "\xee\xaa\xbd"; + inline constexpr char headphonesOff[] = "\xee\xb4\x9d"; + inline constexpr char headset[] = "\xee\xae\x90"; + inline constexpr char headsetOff[] = "\xef\x8f\xb6"; + inline constexpr char healthRecognition[] = "\xef\x87\xbb"; + inline constexpr char heart[] = "\xee\xaa\xbe"; + inline constexpr char heartBitcoin[] = "\xef\xbc\xbb"; + inline constexpr char heartBolt[] = "\xef\xae\x9e"; + inline constexpr char heartBroken[] = "\xee\xb2\xba"; + inline constexpr char heartCancel[] = "\xef\xae\x9f"; + inline constexpr char heartCheck[] = "\xef\xae\xa0"; + inline constexpr char heartCode[] = "\xef\xae\xa1"; + inline constexpr char heartCog[] = "\xef\xae\xa2"; + inline constexpr char heartDiscount[] = "\xef\xae\xa3"; + inline constexpr char heartDollar[] = "\xef\xae\xa4"; + inline constexpr char heartDown[] = "\xef\xae\xa5"; + inline constexpr char heartExclamation[] = "\xef\xae\xa6"; + inline constexpr char heartHandshake[] = "\xef\x83\xb3"; + inline constexpr char heartMinus[] = "\xef\x85\x80"; + inline constexpr char heartOff[] = "\xef\x85\x81"; + inline constexpr char heartPause[] = "\xef\xae\xa7"; + inline constexpr char heartPin[] = "\xef\xae\xa8"; + inline constexpr char heartPlus[] = "\xef\x85\x82"; + inline constexpr char heartQuestion[] = "\xef\xae\xa9"; + inline constexpr char heartRateMonitor[] = "\xee\xbd\xa1"; + inline constexpr char heartSearch[] = "\xef\xae\xaa"; + inline constexpr char heartShare[] = "\xef\xae\xab"; + inline constexpr char heartSpark[] = "\xef\xbe\xb6"; + inline constexpr char heartStar[] = "\xef\xae\xac"; + inline constexpr char heartUp[] = "\xef\xae\xad"; + inline constexpr char heartX[] = "\xef\xae\xae"; + inline constexpr char heartbeat[] = "\xee\xbe\x92"; + inline constexpr char hearts[] = "\xef\x8e\x87"; + inline constexpr char heartsOff[] = "\xef\x8f\xb7"; + inline constexpr char helicopter[] = "\xee\xb6\x8e"; + inline constexpr char helicopterLanding[] = "\xee\xb6\x8d"; + inline constexpr char helmet[] = "\xee\xbf\x8a"; + inline constexpr char helmetOff[] = "\xef\x85\x83"; + inline constexpr char help[] = "\xee\xaa\xbf"; + inline constexpr char helpCircle[] = "\xef\xa4\x9d"; + inline constexpr char helpHexagon[] = "\xef\x9e\xa8"; + inline constexpr char helpOctagon[] = "\xef\x9e\xa9"; + inline constexpr char helpOff[] = "\xef\x8f\xb8"; + inline constexpr char helpSmall[] = "\xef\xa4\x9e"; + inline constexpr char helpSquare[] = "\xef\xa4\xa0"; + inline constexpr char helpSquareRounded[] = "\xef\xa4\x9f"; + inline constexpr char helpTriangle[] = "\xef\xa4\xa1"; + inline constexpr char hemisphere[] = "\xef\xaa\xa2"; + inline constexpr char hemisphereOff[] = "\xef\xaa\xa0"; + inline constexpr char hemispherePlus[] = "\xef\xaa\xa1"; + inline constexpr char hexagon[] = "\xee\xb0\x82"; + inline constexpr char hexagon3d[] = "\xef\x93\x87"; + inline constexpr char hexagonAsterisk[] = "\xf0\x90\x86\xab"; + inline constexpr char hexagonLetterA[] = "\xef\x91\xa3"; + inline constexpr char hexagonLetterB[] = "\xef\x91\xa4"; + inline constexpr char hexagonLetterC[] = "\xef\x91\xa5"; + inline constexpr char hexagonLetterD[] = "\xef\x91\xa6"; + inline constexpr char hexagonLetterE[] = "\xef\x91\xa7"; + inline constexpr char hexagonLetterF[] = "\xef\x91\xa8"; + inline constexpr char hexagonLetterG[] = "\xef\x91\xa9"; + inline constexpr char hexagonLetterH[] = "\xef\x91\xaa"; + inline constexpr char hexagonLetterI[] = "\xef\x91\xab"; + inline constexpr char hexagonLetterJ[] = "\xef\x91\xac"; + inline constexpr char hexagonLetterK[] = "\xef\x91\xad"; + inline constexpr char hexagonLetterL[] = "\xef\x91\xae"; + inline constexpr char hexagonLetterM[] = "\xef\x91\xaf"; + inline constexpr char hexagonLetterN[] = "\xef\x91\xb0"; + inline constexpr char hexagonLetterO[] = "\xef\x91\xb1"; + inline constexpr char hexagonLetterP[] = "\xef\x91\xb2"; + inline constexpr char hexagonLetterQ[] = "\xef\x91\xb3"; + inline constexpr char hexagonLetterR[] = "\xef\x91\xb4"; + inline constexpr char hexagonLetterS[] = "\xef\x91\xb5"; + inline constexpr char hexagonLetterT[] = "\xef\x91\xb6"; + inline constexpr char hexagonLetterU[] = "\xef\x91\xb7"; + inline constexpr char hexagonLetterV[] = "\xef\x92\xb3"; + inline constexpr char hexagonLetterW[] = "\xef\x91\xb8"; + inline constexpr char hexagonLetterX[] = "\xef\x91\xb9"; + inline constexpr char hexagonLetterY[] = "\xef\x91\xba"; + inline constexpr char hexagonLetterZ[] = "\xef\x91\xbb"; + inline constexpr char hexagonMinus[] = "\xef\xb2\x8f"; + inline constexpr char hexagonMinus2[] = "\xef\xb2\x8e"; + inline constexpr char hexagonNumber0[] = "\xef\x91\x99"; + inline constexpr char hexagonNumber1[] = "\xef\x91\x9a"; + inline constexpr char hexagonNumber2[] = "\xef\x91\x9b"; + inline constexpr char hexagonNumber3[] = "\xef\x91\x9c"; + inline constexpr char hexagonNumber4[] = "\xef\x91\x9d"; + inline constexpr char hexagonNumber5[] = "\xef\x91\x9e"; + inline constexpr char hexagonNumber6[] = "\xef\x91\x9f"; + inline constexpr char hexagonNumber7[] = "\xef\x91\xa0"; + inline constexpr char hexagonNumber8[] = "\xef\x91\xa1"; + inline constexpr char hexagonNumber9[] = "\xef\x91\xa2"; + inline constexpr char hexagonOff[] = "\xee\xba\x9c"; + inline constexpr char hexagonPlus[] = "\xef\xb1\x85"; + inline constexpr char hexagonPlus2[] = "\xef\xb2\x90"; + inline constexpr char hexagonalPrism[] = "\xef\xaa\xa5"; + inline constexpr char hexagonalPrismOff[] = "\xef\xaa\xa3"; + inline constexpr char hexagonalPrismPlus[] = "\xef\xaa\xa4"; + inline constexpr char hexagonalPyramid[] = "\xef\xaa\xa8"; + inline constexpr char hexagonalPyramidOff[] = "\xef\xaa\xa6"; + inline constexpr char hexagonalPyramidPlus[] = "\xef\xaa\xa7"; + inline constexpr char hexagons[] = "\xef\x82\x9d"; + inline constexpr char hexagonsOff[] = "\xef\x8f\xb9"; + inline constexpr char hierarchy[] = "\xee\xba\x9e"; + inline constexpr char hierarchy2[] = "\xee\xba\x9d"; + inline constexpr char hierarchy3[] = "\xef\x8a\x89"; + inline constexpr char hierarchyOff[] = "\xef\x8f\xba"; + inline constexpr char highlight[] = "\xee\xbc\xbf"; + inline constexpr char highlightOff[] = "\xef\x85\x84"; + inline constexpr char history[] = "\xee\xaf\xaa"; + inline constexpr char historyOff[] = "\xef\x8f\xbb"; + inline constexpr char historyToggle[] = "\xef\x87\xbc"; + inline constexpr char home[] = "\xee\xab\x81"; + inline constexpr char home2[] = "\xee\xab\x80"; + inline constexpr char homeBitcoin[] = "\xef\xbc\xba"; + inline constexpr char homeBolt[] = "\xef\x8c\xb6"; + inline constexpr char homeCancel[] = "\xef\x8d\x90"; + inline constexpr char homeCheck[] = "\xef\x8c\xb7"; + inline constexpr char homeCog[] = "\xef\x8c\xb8"; + inline constexpr char homeDollar[] = "\xef\x8c\xb9"; + inline constexpr char homeDot[] = "\xef\x8c\xba"; + inline constexpr char homeDown[] = "\xef\x8c\xbb"; + inline constexpr char homeEco[] = "\xef\x8d\x91"; + inline constexpr char homeEdit[] = "\xef\x8d\x92"; + inline constexpr char homeExclamation[] = "\xef\x8c\xbc"; + inline constexpr char homeHand[] = "\xef\x94\x84"; + inline constexpr char homeHeart[] = "\xef\x8d\x93"; + inline constexpr char homeInfinity[] = "\xef\x94\x85"; + inline constexpr char homeLink[] = "\xef\x8d\x94"; + inline constexpr char homeLock[] = "\xf0\x90\x88\x84"; + inline constexpr char homeMinus[] = "\xef\x8c\xbd"; + inline constexpr char homeMove[] = "\xef\x8c\xbe"; + inline constexpr char homeOff[] = "\xef\x85\x85"; + inline constexpr char homePlus[] = "\xef\x8c\xbf"; + inline constexpr char homeQuestion[] = "\xef\x8d\x80"; + inline constexpr char homeRibbon[] = "\xef\x8d\x95"; + inline constexpr char homeSearch[] = "\xef\x8d\x81"; + inline constexpr char homeShare[] = "\xef\x8d\x82"; + inline constexpr char homeShield[] = "\xef\x8d\x83"; + inline constexpr char homeSignal[] = "\xef\x8d\x96"; + inline constexpr char homeSpark[] = "\xef\xbe\xb5"; + inline constexpr char homeStar[] = "\xef\x8d\x84"; + inline constexpr char homeStats[] = "\xef\x8d\x85"; + inline constexpr char homeUp[] = "\xef\x8d\x86"; + inline constexpr char homeX[] = "\xef\x8d\x87"; + inline constexpr char horse[] = "\xef\xb1\x86"; + inline constexpr char horseToy[] = "\xef\x8a\x8a"; + inline constexpr char horseshoe[] = "\xef\xb2\xb7"; + inline constexpr char hospital[] = "\xef\xb5\x99"; + inline constexpr char hospitalCircle[] = "\xef\xb5\x98"; + inline constexpr char hotelService[] = "\xee\xbe\x80"; + inline constexpr char hourglass[] = "\xee\xbe\x93"; + inline constexpr char hourglassEmpty[] = "\xef\x85\x86"; + inline constexpr char hourglassHigh[] = "\xef\x82\x92"; + inline constexpr char hourglassLow[] = "\xef\x82\x93"; + inline constexpr char hourglassOff[] = "\xef\x85\x87"; + inline constexpr char hours12[] = "\xef\xb1\x93"; + inline constexpr char hours24[] = "\xef\x97\xa7"; + inline constexpr char html[] = "\xef\x9e\xb1"; + inline constexpr char httpConnect[] = "\xef\xa8\xa8"; + inline constexpr char httpConnectOff[] = "\xf0\x90\x83\xa7"; + inline constexpr char httpDelete[] = "\xef\xa8\xa9"; + inline constexpr char httpDeleteOff[] = "\xf0\x90\x83\xa6"; + inline constexpr char httpGet[] = "\xef\xa8\xaa"; + inline constexpr char httpGetOff[] = "\xf0\x90\x83\xa5"; + inline constexpr char httpHead[] = "\xef\xa8\xab"; + inline constexpr char httpHeadOff[] = "\xf0\x90\x83\xa4"; + inline constexpr char httpOptions[] = "\xef\xa8\xac"; + inline constexpr char httpOptionsOff[] = "\xf0\x90\x83\xa3"; + inline constexpr char httpPatch[] = "\xef\xa8\xad"; + inline constexpr char httpPatchOff[] = "\xf0\x90\x83\xa2"; + inline constexpr char httpPost[] = "\xef\xa8\xae"; + inline constexpr char httpPostOff[] = "\xf0\x90\x83\xa1"; + inline constexpr char httpPut[] = "\xef\xa8\xaf"; + inline constexpr char httpPutOff[] = "\xf0\x90\x83\xa0"; + inline constexpr char httpQue[] = "\xef\xa9\x9b"; + inline constexpr char httpQueOff[] = "\xf0\x90\x83\x9f"; + inline constexpr char httpTrace[] = "\xef\xa8\xb0"; + inline constexpr char httpTraceOff[] = "\xf0\x90\x83\x9e"; + inline constexpr char hulaHoop[] = "\xf0\x90\x89\x8a"; + inline constexpr char iceCream[] = "\xee\xab\x82"; + inline constexpr char iceCream2[] = "\xee\xba\x9f"; + inline constexpr char iceCreamOff[] = "\xef\x85\x88"; + inline constexpr char iceSkating[] = "\xee\xbf\x8b"; + inline constexpr char iceberg[] = "\xf0\x90\x88\xaa"; + inline constexpr char icons[] = "\xef\x87\x94"; + inline constexpr char iconsOff[] = "\xef\x8f\xbc"; + inline constexpr char icosahedron[] = "\xef\xbb\x86"; + inline constexpr char id[] = "\xee\xab\x83"; + inline constexpr char idBadge[] = "\xee\xbf\xb7"; + inline constexpr char idBadge2[] = "\xef\x81\xb6"; + inline constexpr char idBadgeOff[] = "\xef\x8f\xbd"; + inline constexpr char idOff[] = "\xef\x85\x89"; + inline constexpr char imageGeneration[] = "\xf0\x90\x87\xaf"; + inline constexpr char imageInPicture[] = "\xef\xb6\x9f"; + inline constexpr char inbox[] = "\xee\xab\x84"; + inline constexpr char inboxOff[] = "\xef\x85\x8a"; + inline constexpr char indentDecrease[] = "\xee\xae\x91"; + inline constexpr char indentIncrease[] = "\xee\xae\x92"; + inline constexpr char infinity[] = "\xee\xad\xa9"; + inline constexpr char infinity2[] = "\xf0\x90\x88\xb7"; + inline constexpr char infinityOff[] = "\xef\x8f\xbe"; + inline constexpr char infoCircle[] = "\xee\xab\x85"; + inline constexpr char infoHexagon[] = "\xef\x9e\xaa"; + inline constexpr char infoOctagon[] = "\xef\x9e\xab"; + inline constexpr char infoSmall[] = "\xef\xa4\xa2"; + inline constexpr char infoSquare[] = "\xee\xab\x86"; + inline constexpr char infoSquareRounded[] = "\xef\x98\xb5"; + inline constexpr char infoTriangle[] = "\xef\xa4\xa3"; + inline constexpr char innerShadowBottom[] = "\xef\x94\xa0"; + inline constexpr char innerShadowBottomLeft[] = "\xef\x94\x9e"; + inline constexpr char innerShadowBottomRight[] = "\xef\x94\x9f"; + inline constexpr char innerShadowLeft[] = "\xef\x94\xa1"; + inline constexpr char innerShadowRight[] = "\xef\x94\xa2"; + inline constexpr char innerShadowTop[] = "\xef\x94\xa5"; + inline constexpr char innerShadowTopLeft[] = "\xef\x94\xa3"; + inline constexpr char innerShadowTopRight[] = "\xef\x94\xa4"; + inline constexpr char inputAi[] = "\xef\xb1\x9a"; + inline constexpr char inputCheck[] = "\xef\xb1\x9b"; + inline constexpr char inputSearch[] = "\xef\x8a\xa2"; + inline constexpr char inputSpark[] = "\xef\xbe\xb4"; + inline constexpr char inputX[] = "\xef\xb1\x9c"; + inline constexpr char invoice[] = "\xef\xba\xab"; + inline constexpr char ironing[] = "\xef\xa9\xbc"; + inline constexpr char ironing1[] = "\xef\x8b\xb4"; + inline constexpr char ironing2[] = "\xef\x8b\xb5"; + inline constexpr char ironing3[] = "\xef\x8b\xb6"; + inline constexpr char ironingOff[] = "\xef\x8b\xb7"; + inline constexpr char ironingSteam[] = "\xef\x8b\xb9"; + inline constexpr char ironingSteamOff[] = "\xef\x8b\xb8"; + inline constexpr char irregularPolyhedron[] = "\xef\xaa\xab"; + inline constexpr char irregularPolyhedronOff[] = "\xef\xaa\xa9"; + inline constexpr char irregularPolyhedronPlus[] = "\xef\xaa\xaa"; + inline constexpr char italic[] = "\xee\xae\x93"; + inline constexpr char italicOff[] = "\xf0\x90\x89\xb1"; + inline constexpr char jacket[] = "\xef\x99\xa1"; + inline constexpr char jetpack[] = "\xef\x96\x81"; + inline constexpr char jetski[] = "\xf0\x90\x88\xa9"; + inline constexpr char jewishStar[] = "\xef\x8f\xbf"; + inline constexpr char joinBevel[] = "\xef\xbd\x8c"; + inline constexpr char joinRound[] = "\xef\xbd\x8b"; + inline constexpr char joinStraight[] = "\xef\xbd\x8a"; + inline constexpr char joker[] = "\xf0\x90\x81\x9f"; + inline constexpr char jpg[] = "\xef\x8e\xac"; + inline constexpr char json[] = "\xef\x9e\xb2"; + inline constexpr char jumpRope[] = "\xee\xb6\x8f"; + inline constexpr char karate[] = "\xee\xb4\xb2"; + inline constexpr char kayak[] = "\xef\x87\x96"; + inline constexpr char kerning[] = "\xee\xbe\xb8"; + inline constexpr char key[] = "\xee\xab\x87"; + inline constexpr char keyOff[] = "\xef\x85\x8b"; + inline constexpr char keyboard[] = "\xee\xaf\x96"; + inline constexpr char keyboardHide[] = "\xee\xb1\xbe"; + inline constexpr char keyboardOff[] = "\xee\xba\xa0"; + inline constexpr char keyboardShow[] = "\xee\xb1\xbf"; + inline constexpr char keyframe[] = "\xef\x95\xb6"; + inline constexpr char keyframeAlignCenter[] = "\xef\x96\x82"; + inline constexpr char keyframeAlignHorizontal[] = "\xef\x96\x83"; + inline constexpr char keyframeAlignVertical[] = "\xef\x96\x84"; + inline constexpr char keyframes[] = "\xef\x96\x85"; + inline constexpr char label[] = "\xef\xbc\xb8"; + inline constexpr char labelImportant[] = "\xef\xbd\x89"; + inline constexpr char labelOff[] = "\xef\xbc\xb9"; + inline constexpr char ladder[] = "\xee\xbf\xa2"; + inline constexpr char ladderOff[] = "\xef\x85\x8c"; + inline constexpr char ladle[] = "\xef\xb0\x94"; + inline constexpr char lambda[] = "\xef\x95\x81"; + inline constexpr char lamp[] = "\xee\xbe\xab"; + inline constexpr char lamp2[] = "\xef\x82\x9e"; + inline constexpr char lampOff[] = "\xef\x85\x8d"; + inline constexpr char lane[] = "\xef\xab\xb9"; + inline constexpr char language[] = "\xee\xae\xbe"; + inline constexpr char languageHiragana[] = "\xee\xbd\xb7"; + inline constexpr char languageKatakana[] = "\xee\xbd\xb8"; + inline constexpr char languageOff[] = "\xef\x85\x8e"; + inline constexpr char lasso[] = "\xee\xbe\xac"; + inline constexpr char lassoOff[] = "\xef\x85\x8f"; + inline constexpr char lassoPolygon[] = "\xef\x8e\x88"; + inline constexpr char laurelWreath[] = "\xef\xbd\x85"; + inline constexpr char laurelWreath1[] = "\xef\xbd\x88"; + inline constexpr char laurelWreath2[] = "\xef\xbd\x87"; + inline constexpr char laurelWreath3[] = "\xef\xbd\x86"; + inline constexpr char lawnMower[] = "\xf0\x90\x88\xb6"; + inline constexpr char layersDifference[] = "\xee\xab\x88"; + inline constexpr char layersIntersect[] = "\xee\xab\x89"; + inline constexpr char layersIntersect2[] = "\xee\xbf\xb8"; + inline constexpr char layersLinked[] = "\xee\xba\xa1"; + inline constexpr char layersOff[] = "\xef\x85\x90"; + inline constexpr char layersSelected[] = "\xef\xba\xa9"; + inline constexpr char layersSelectedBottom[] = "\xef\xba\xaa"; + inline constexpr char layersSubtract[] = "\xee\xab\x8a"; + inline constexpr char layersUnion[] = "\xee\xab\x8b"; + inline constexpr char layout[] = "\xee\xab\x9b"; + inline constexpr char layout2[] = "\xee\xab\x8c"; + inline constexpr char layoutAlignBottom[] = "\xee\xab\x8d"; + inline constexpr char layoutAlignCenter[] = "\xee\xab\x8e"; + inline constexpr char layoutAlignLeft[] = "\xee\xab\x8f"; + inline constexpr char layoutAlignMiddle[] = "\xee\xab\x90"; + inline constexpr char layoutAlignRight[] = "\xee\xab\x91"; + inline constexpr char layoutAlignTop[] = "\xee\xab\x92"; + inline constexpr char layoutBoard[] = "\xee\xbe\x95"; + inline constexpr char layoutBoardSplit[] = "\xee\xbe\x94"; + inline constexpr char layoutBottombar[] = "\xee\xab\x93"; + inline constexpr char layoutBottombarCollapse[] = "\xef\x8a\x8b"; + inline constexpr char layoutBottombarExpand[] = "\xef\x8a\x8c"; + inline constexpr char layoutBottombarInactive[] = "\xef\xb5\x85"; + inline constexpr char layoutCards[] = "\xee\xb0\x93"; + inline constexpr char layoutCollage[] = "\xef\x8e\x89"; + inline constexpr char layoutColumns[] = "\xee\xab\x94"; + inline constexpr char layoutDashboard[] = "\xef\x80\xac"; + inline constexpr char layoutDistributeHorizontal[] = "\xee\xab\x95"; + inline constexpr char layoutDistributeVertical[] = "\xee\xab\x96"; + inline constexpr char layoutGrid[] = "\xee\xb6\xba"; + inline constexpr char layoutGridAdd[] = "\xee\xb6\xb9"; + inline constexpr char layoutGridRemove[] = "\xef\xa9\xbd"; + inline constexpr char layoutKanban[] = "\xee\xb0\xbf"; + inline constexpr char layoutList[] = "\xee\xb0\x94"; + inline constexpr char layoutNavbar[] = "\xee\xab\x97"; + inline constexpr char layoutNavbarCollapse[] = "\xef\x8a\x8d"; + inline constexpr char layoutNavbarExpand[] = "\xef\x8a\x8e"; + inline constexpr char layoutNavbarInactive[] = "\xef\xb5\x86"; + inline constexpr char layoutOff[] = "\xef\x85\x91"; + inline constexpr char layoutRows[] = "\xee\xab\x98"; + inline constexpr char layoutSidebar[] = "\xee\xab\x9a"; + inline constexpr char layoutSidebarInactive[] = "\xef\xb5\x87"; + inline constexpr char layoutSidebarLeftCollapse[] = "\xef\x80\x84"; + inline constexpr char layoutSidebarLeftExpand[] = "\xef\x80\x85"; + inline constexpr char layoutSidebarRight[] = "\xee\xab\x99"; + inline constexpr char layoutSidebarRightCollapse[] = "\xef\x80\x86"; + inline constexpr char layoutSidebarRightExpand[] = "\xef\x80\x87"; + inline constexpr char layoutSidebarRightInactive[] = "\xef\xb5\x88"; + inline constexpr char leaf[] = "\xee\xb5\x8f"; + inline constexpr char leaf2[] = "\xef\xbd\x84"; + inline constexpr char leafMaple[] = "\xf0\x90\x89\x89"; + inline constexpr char leafOff[] = "\xef\x90\x80"; + inline constexpr char lego[] = "\xee\xab\x9c"; + inline constexpr char legoOff[] = "\xef\x90\x81"; + inline constexpr char lemon[] = "\xee\xbc\x90"; + inline constexpr char lemon2[] = "\xee\xbe\x81"; + inline constexpr char letterA[] = "\xee\xb1\x90"; + inline constexpr char letterASmall[] = "\xef\xb3\x87"; + inline constexpr char letterB[] = "\xee\xb1\x91"; + inline constexpr char letterBSmall[] = "\xef\xb3\x88"; + inline constexpr char letterC[] = "\xee\xb1\x92"; + inline constexpr char letterCSmall[] = "\xef\xb3\x89"; + inline constexpr char letterCase[] = "\xee\xba\xa5"; + inline constexpr char letterCaseLower[] = "\xee\xba\xa2"; + inline constexpr char letterCaseToggle[] = "\xee\xba\xa3"; + inline constexpr char letterCaseUpper[] = "\xee\xba\xa4"; + inline constexpr char letterD[] = "\xee\xb1\x93"; + inline constexpr char letterDSmall[] = "\xef\xb3\x8a"; + inline constexpr char letterE[] = "\xee\xb1\x94"; + inline constexpr char letterESmall[] = "\xef\xb3\x8b"; + inline constexpr char letterF[] = "\xee\xb1\x95"; + inline constexpr char letterFSmall[] = "\xef\xb3\x8c"; + inline constexpr char letterG[] = "\xee\xb1\x96"; + inline constexpr char letterGSmall[] = "\xef\xb3\x8d"; + inline constexpr char letterH[] = "\xee\xb1\x97"; + inline constexpr char letterHSmall[] = "\xef\xb3\x8e"; + inline constexpr char letterI[] = "\xee\xb1\x98"; + inline constexpr char letterISmall[] = "\xef\xb3\x8f"; + inline constexpr char letterJ[] = "\xee\xb1\x99"; + inline constexpr char letterJSmall[] = "\xef\xb3\x90"; + inline constexpr char letterK[] = "\xee\xb1\x9a"; + inline constexpr char letterKSmall[] = "\xef\xb3\x91"; + inline constexpr char letterL[] = "\xee\xb1\x9b"; + inline constexpr char letterLSmall[] = "\xef\xb3\x92"; + inline constexpr char letterM[] = "\xee\xb1\x9c"; + inline constexpr char letterMSmall[] = "\xef\xb3\x93"; + inline constexpr char letterN[] = "\xee\xb1\x9d"; + inline constexpr char letterNSmall[] = "\xef\xb3\x94"; + inline constexpr char letterO[] = "\xee\xb1\x9e"; + inline constexpr char letterOSmall[] = "\xef\xb3\x95"; + inline constexpr char letterP[] = "\xee\xb1\x9f"; + inline constexpr char letterPSmall[] = "\xef\xb3\x96"; + inline constexpr char letterQ[] = "\xee\xb1\xa0"; + inline constexpr char letterQSmall[] = "\xef\xb3\x97"; + inline constexpr char letterR[] = "\xee\xb1\xa1"; + inline constexpr char letterRSmall[] = "\xef\xb3\x98"; + inline constexpr char letterS[] = "\xee\xb1\xa2"; + inline constexpr char letterSSmall[] = "\xef\xb3\x99"; + inline constexpr char letterSpacing[] = "\xee\xba\xa6"; + inline constexpr char letterT[] = "\xee\xb1\xa3"; + inline constexpr char letterTSmall[] = "\xef\xb3\x9a"; + inline constexpr char letterU[] = "\xee\xb1\xa4"; + inline constexpr char letterUSmall[] = "\xef\xb3\x9b"; + inline constexpr char letterV[] = "\xee\xb1\xa5"; + inline constexpr char letterVSmall[] = "\xef\xb3\x9c"; + inline constexpr char letterW[] = "\xee\xb1\xa6"; + inline constexpr char letterWSmall[] = "\xef\xb3\x9d"; + inline constexpr char letterX[] = "\xee\xb1\xa7"; + inline constexpr char letterXSmall[] = "\xef\xb3\x9e"; + inline constexpr char letterY[] = "\xee\xb1\xa8"; + inline constexpr char letterYSmall[] = "\xef\xb3\x9f"; + inline constexpr char letterZ[] = "\xee\xb1\xa9"; + inline constexpr char letterZSmall[] = "\xef\xb3\xa0"; + inline constexpr char library[] = "\xef\xb5\x8c"; + inline constexpr char libraryMinus[] = "\xef\xb5\x89"; + inline constexpr char libraryPhoto[] = "\xef\xb5\x8a"; + inline constexpr char libraryPlus[] = "\xef\xb5\x8b"; + inline constexpr char license[] = "\xee\xaf\x80"; + inline constexpr char licenseOff[] = "\xef\x85\x93"; + inline constexpr char lifebuoy[] = "\xee\xab\x9d"; + inline constexpr char lifebuoyOff[] = "\xef\x85\x94"; + inline constexpr char lighter[] = "\xef\x9e\x94"; + inline constexpr char line[] = "\xee\xb1\x80"; + inline constexpr char lineDashed[] = "\xee\xba\xa7"; + inline constexpr char lineDotted[] = "\xee\xba\xa8"; + inline constexpr char lineHeight[] = "\xee\xae\x94"; + inline constexpr char lineScan[] = "\xef\xb2\xb8"; + inline constexpr char link[] = "\xee\xab\x9e"; + inline constexpr char linkMinus[] = "\xef\xb4\x96"; + inline constexpr char linkOff[] = "\xef\x90\x82"; + inline constexpr char linkPlus[] = "\xef\xb4\x97"; + inline constexpr char list[] = "\xee\xad\xab"; + inline constexpr char listCheck[] = "\xee\xad\xaa"; + inline constexpr char listDetails[] = "\xee\xbd\x80"; + inline constexpr char listLetters[] = "\xef\xb1\x87"; + inline constexpr char listNumbers[] = "\xee\xbc\x91"; + inline constexpr char listSearch[] = "\xee\xba\xa9"; + inline constexpr char listTree[] = "\xef\xab\xba"; + inline constexpr char livePhoto[] = "\xee\xab\x9f"; + inline constexpr char livePhotoOff[] = "\xef\x90\x83"; + inline constexpr char liveView[] = "\xee\xb1\xab"; + inline constexpr char loadBalancer[] = "\xef\xa9\x9c"; + inline constexpr char loader[] = "\xee\xb2\xa3"; + inline constexpr char loader2[] = "\xef\x88\xa6"; + inline constexpr char loader3[] = "\xef\x94\x93"; + inline constexpr char loader4[] = "\xf0\x90\x88\xb5"; + inline constexpr char loaderQuarter[] = "\xee\xb2\xa2"; + inline constexpr char location[] = "\xee\xab\xa0"; + inline constexpr char locationBolt[] = "\xef\xae\xaf"; + inline constexpr char locationBroken[] = "\xef\x8b\x84"; + inline constexpr char locationCancel[] = "\xef\xae\xb0"; + inline constexpr char locationCheck[] = "\xef\xae\xb1"; + inline constexpr char locationCode[] = "\xef\xae\xb2"; + inline constexpr char locationCog[] = "\xef\xae\xb3"; + inline constexpr char locationDiscount[] = "\xef\xae\xb4"; + inline constexpr char locationDollar[] = "\xef\xae\xb5"; + inline constexpr char locationDown[] = "\xef\xae\xb6"; + inline constexpr char locationExclamation[] = "\xef\xae\xb7"; + inline constexpr char locationHeart[] = "\xef\xae\xb8"; + inline constexpr char locationMinus[] = "\xef\xae\xb9"; + inline constexpr char locationOff[] = "\xef\x85\x95"; + inline constexpr char locationPause[] = "\xef\xae\xba"; + inline constexpr char locationPin[] = "\xef\xae\xbb"; + inline constexpr char locationPlus[] = "\xef\xae\xbc"; + inline constexpr char locationQuestion[] = "\xef\xae\xbd"; + inline constexpr char locationSearch[] = "\xef\xae\xbe"; + inline constexpr char locationShare[] = "\xef\xae\xbf"; + inline constexpr char locationStar[] = "\xef\xaf\x80"; + inline constexpr char locationUp[] = "\xef\xaf\x81"; + inline constexpr char locationX[] = "\xef\xaf\x82"; + inline constexpr char lock[] = "\xee\xab\xa2"; + inline constexpr char lockAccess[] = "\xee\xba\xaa"; + inline constexpr char lockAccessOff[] = "\xef\x90\x84"; + inline constexpr char lockBitcoin[] = "\xef\xbc\xb7"; + inline constexpr char lockBolt[] = "\xef\xa4\xa4"; + inline constexpr char lockCancel[] = "\xef\xa4\xa5"; + inline constexpr char lockCheck[] = "\xef\xa4\xa6"; + inline constexpr char lockCode[] = "\xef\xa4\xa7"; + inline constexpr char lockCog[] = "\xef\xa4\xa8"; + inline constexpr char lockDollar[] = "\xef\xa4\xa9"; + inline constexpr char lockDown[] = "\xef\xa4\xaa"; + inline constexpr char lockExclamation[] = "\xef\xa4\xab"; + inline constexpr char lockHeart[] = "\xef\xa4\xac"; + inline constexpr char lockMinus[] = "\xef\xa4\xad"; + inline constexpr char lockOff[] = "\xee\xb4\x9e"; + inline constexpr char lockOpen[] = "\xee\xab\xa1"; + inline constexpr char lockOpen2[] = "\xef\xba\xa8"; + inline constexpr char lockOpenOff[] = "\xef\x85\x96"; + inline constexpr char lockPassword[] = "\xef\xbe\x9f"; + inline constexpr char lockPause[] = "\xef\xa4\xae"; + inline constexpr char lockPin[] = "\xef\xa4\xaf"; + inline constexpr char lockPlus[] = "\xef\xa4\xb0"; + inline constexpr char lockQuestion[] = "\xef\xa4\xb1"; + inline constexpr char lockSearch[] = "\xef\xa4\xb2"; + inline constexpr char lockShare[] = "\xef\xa4\xb3"; + inline constexpr char lockSquare[] = "\xee\xbd\x91"; + inline constexpr char lockSquareRounded[] = "\xef\x98\xb6"; + inline constexpr char lockStar[] = "\xef\xa4\xb4"; + inline constexpr char lockUp[] = "\xef\xa4\xb5"; + inline constexpr char lockX[] = "\xef\xa4\xb6"; + inline constexpr char logicAnd[] = "\xef\x89\x80"; + inline constexpr char logicBuffer[] = "\xef\x89\x81"; + inline constexpr char logicNand[] = "\xef\x89\x82"; + inline constexpr char logicNor[] = "\xef\x89\x83"; + inline constexpr char logicNot[] = "\xef\x89\x84"; + inline constexpr char logicOr[] = "\xef\x89\x85"; + inline constexpr char logicXnor[] = "\xef\x89\x86"; + inline constexpr char logicXor[] = "\xef\x89\x87"; + inline constexpr char login[] = "\xee\xae\xa7"; + inline constexpr char login2[] = "\xef\xb1\xb6"; + inline constexpr char logout[] = "\xee\xae\xa8"; + inline constexpr char logout2[] = "\xef\xa9\xbe"; + inline constexpr char logs[] = "\xef\xba\xa7"; + inline constexpr char lollipop[] = "\xee\xbf\x8c"; + inline constexpr char lollipopOff[] = "\xef\x85\x97"; + inline constexpr char luggage[] = "\xee\xbe\xad"; + inline constexpr char luggageOff[] = "\xef\x85\x98"; + inline constexpr char lungs[] = "\xee\xbd\xa2"; + inline constexpr char lungsOff[] = "\xef\x90\x85"; + inline constexpr char macro[] = "\xee\xba\xab"; + inline constexpr char macroOff[] = "\xef\x90\x86"; + inline constexpr char magnet[] = "\xee\xab\xa3"; + inline constexpr char magnetOff[] = "\xef\x85\x99"; + inline constexpr char magnetic[] = "\xef\xb2\xb9"; + inline constexpr char mail[] = "\xee\xab\xa5"; + inline constexpr char mailAi[] = "\xef\xa8\xb1"; + inline constexpr char mailBitcoin[] = "\xef\xbc\xb6"; + inline constexpr char mailBolt[] = "\xef\xa4\xb7"; + inline constexpr char mailCancel[] = "\xef\xa4\xb8"; + inline constexpr char mailCheck[] = "\xef\xa4\xb9"; + inline constexpr char mailCode[] = "\xef\xa4\xba"; + inline constexpr char mailCog[] = "\xef\xa4\xbb"; + inline constexpr char mailDollar[] = "\xef\xa4\xbc"; + inline constexpr char mailDown[] = "\xef\xa4\xbd"; + inline constexpr char mailExclamation[] = "\xef\xa4\xbe"; + inline constexpr char mailFast[] = "\xef\x81\xa9"; + inline constexpr char mailForward[] = "\xee\xba\xac"; + inline constexpr char mailHeart[] = "\xef\xa4\xbf"; + inline constexpr char mailMinus[] = "\xef\xa5\x80"; + inline constexpr char mailOff[] = "\xef\x85\x9a"; + inline constexpr char mailOpened[] = "\xee\xab\xa4"; + inline constexpr char mailPause[] = "\xef\xa5\x81"; + inline constexpr char mailPin[] = "\xef\xa5\x82"; + inline constexpr char mailPlus[] = "\xef\xa5\x83"; + inline constexpr char mailQuestion[] = "\xef\xa5\x84"; + inline constexpr char mailSearch[] = "\xef\xa5\x85"; + inline constexpr char mailShare[] = "\xef\xa5\x86"; + inline constexpr char mailSpark[] = "\xef\xbe\xb3"; + inline constexpr char mailStar[] = "\xef\xa5\x87"; + inline constexpr char mailUp[] = "\xef\xa5\x88"; + inline constexpr char mailX[] = "\xef\xa5\x89"; + inline constexpr char mailbox[] = "\xee\xba\xad"; + inline constexpr char mailboxOff[] = "\xef\x85\x9b"; + inline constexpr char man[] = "\xee\xab\xa6"; + inline constexpr char manualGearbox[] = "\xee\xb5\xbb"; + inline constexpr char map[] = "\xee\xab\xa9"; + inline constexpr char map2[] = "\xee\xab\xa7"; + inline constexpr char mapBolt[] = "\xef\xaf\x83"; + inline constexpr char mapCancel[] = "\xef\xaf\x84"; + inline constexpr char mapCheck[] = "\xef\xaf\x85"; + inline constexpr char mapCode[] = "\xef\xaf\x86"; + inline constexpr char mapCog[] = "\xef\xaf\x87"; + inline constexpr char mapDiscount[] = "\xef\xaf\x88"; + inline constexpr char mapDollar[] = "\xef\xaf\x89"; + inline constexpr char mapDown[] = "\xef\xaf\x8a"; + inline constexpr char mapEast[] = "\xef\xb1\x9d"; + inline constexpr char mapExclamation[] = "\xef\xaf\x8b"; + inline constexpr char mapHeart[] = "\xef\xaf\x8c"; + inline constexpr char mapLock[] = "\xf0\x90\x88\x83"; + inline constexpr char mapMinus[] = "\xef\xaf\x8d"; + inline constexpr char mapNorth[] = "\xef\xb1\x9e"; + inline constexpr char mapOff[] = "\xef\x85\x9c"; + inline constexpr char mapPause[] = "\xef\xaf\x8e"; + inline constexpr char mapPin[] = "\xee\xab\xa8"; + inline constexpr char mapPin2[] = "\xef\xb1\x88"; + inline constexpr char mapPinBolt[] = "\xef\xa5\x8a"; + inline constexpr char mapPinCancel[] = "\xef\xa5\x8b"; + inline constexpr char mapPinCheck[] = "\xef\xa5\x8c"; + inline constexpr char mapPinCode[] = "\xef\xa5\x8d"; + inline constexpr char mapPinCog[] = "\xef\xa5\x8e"; + inline constexpr char mapPinDollar[] = "\xef\xa5\x8f"; + inline constexpr char mapPinDown[] = "\xef\xa5\x90"; + inline constexpr char mapPinExclamation[] = "\xef\xa5\x91"; + inline constexpr char mapPinHeart[] = "\xef\xa5\x92"; + inline constexpr char mapPinMinus[] = "\xef\xa5\x93"; + inline constexpr char mapPinOff[] = "\xee\xb3\xb3"; + inline constexpr char mapPinPause[] = "\xef\xa5\x94"; + inline constexpr char mapPinPin[] = "\xef\xa5\x95"; + inline constexpr char mapPinPlus[] = "\xef\xa5\x96"; + inline constexpr char mapPinQuestion[] = "\xef\xa5\x97"; + inline constexpr char mapPinSearch[] = "\xef\xa5\x98"; + inline constexpr char mapPinShare[] = "\xef\x9e\x95"; + inline constexpr char mapPinStar[] = "\xef\xa5\x99"; + inline constexpr char mapPinUp[] = "\xef\xa5\x9a"; + inline constexpr char mapPinX[] = "\xef\xa5\x9b"; + inline constexpr char mapPins[] = "\xee\xb5\x9e"; + inline constexpr char mapPlus[] = "\xef\xaf\x8f"; + inline constexpr char mapQuestion[] = "\xef\xaf\x90"; + inline constexpr char mapRoute[] = "\xef\xb1\xb9"; + inline constexpr char mapSearch[] = "\xee\xbe\x82"; + inline constexpr char mapShare[] = "\xef\xaf\x91"; + inline constexpr char mapShield[] = "\xf0\x90\x88\x82"; + inline constexpr char mapSouth[] = "\xef\xb1\x9f"; + inline constexpr char mapStar[] = "\xef\xaf\x92"; + inline constexpr char mapUp[] = "\xef\xaf\x93"; + inline constexpr char mapWest[] = "\xef\xb1\xa0"; + inline constexpr char mapX[] = "\xef\xaf\x94"; + inline constexpr char markdown[] = "\xee\xb1\x81"; + inline constexpr char markdownOff[] = "\xef\x90\x87"; + inline constexpr char marquee[] = "\xee\xb1\xb7"; + inline constexpr char marquee2[] = "\xee\xba\xae"; + inline constexpr char marqueeOff[] = "\xef\x85\x9d"; + inline constexpr char mars[] = "\xee\xb2\x80"; + inline constexpr char mask[] = "\xee\xba\xb0"; + inline constexpr char maskOff[] = "\xee\xba\xaf"; + inline constexpr char masksTheater[] = "\xef\x89\xa3"; + inline constexpr char masksTheaterOff[] = "\xef\x90\x88"; + inline constexpr char massage[] = "\xee\xba\xb1"; + inline constexpr char matchstick[] = "\xef\x95\xb7"; + inline constexpr char math[] = "\xee\xaf\xab"; + inline constexpr char math1Divide2[] = "\xef\x93\xa2"; + inline constexpr char math1Divide3[] = "\xef\x93\xa3"; + inline constexpr char mathAvg[] = "\xef\x83\xb4"; + inline constexpr char mathCos[] = "\xef\xbc\x9f"; + inline constexpr char mathCtg[] = "\xef\xbc\xb5"; + inline constexpr char mathEqualGreater[] = "\xef\x93\xa4"; + inline constexpr char mathEqualLower[] = "\xef\x93\xa5"; + inline constexpr char mathFunction[] = "\xee\xba\xb2"; + inline constexpr char mathFunctionOff[] = "\xef\x85\x9e"; + inline constexpr char mathFunctionY[] = "\xef\x93\xa6"; + inline constexpr char mathGreater[] = "\xef\x93\xa7"; + inline constexpr char mathIntegral[] = "\xef\x93\xa9"; + inline constexpr char mathIntegralX[] = "\xef\x93\xa8"; + inline constexpr char mathIntegrals[] = "\xef\x93\xaa"; + inline constexpr char mathLower[] = "\xef\x93\xab"; + inline constexpr char mathMax[] = "\xef\x83\xb5"; + inline constexpr char mathMaxMin[] = "\xef\xb6\xa0"; + inline constexpr char mathMin[] = "\xef\x83\xb6"; + inline constexpr char mathNot[] = "\xef\x93\xac"; + inline constexpr char mathOff[] = "\xef\x90\x89"; + inline constexpr char mathPi[] = "\xef\x93\xae"; + inline constexpr char mathPiDivide2[] = "\xef\x93\xad"; + inline constexpr char mathSec[] = "\xef\xbc\xb4"; + inline constexpr char mathSin[] = "\xef\xbc\x9e"; + inline constexpr char mathSymbols[] = "\xee\xba\xb3"; + inline constexpr char mathTg[] = "\xef\xbc\xb3"; + inline constexpr char mathXDivide2[] = "\xef\x93\xaf"; + inline constexpr char mathXDivideY[] = "\xef\x93\xb1"; + inline constexpr char mathXDivideY2[] = "\xef\x93\xb0"; + inline constexpr char mathXFloorDivideY[] = "\xf0\x90\x81\xb3"; + inline constexpr char mathXMinusX[] = "\xef\x93\xb2"; + inline constexpr char mathXMinusY[] = "\xef\x93\xb3"; + inline constexpr char mathXPlusX[] = "\xef\x93\xb4"; + inline constexpr char mathXPlusY[] = "\xef\x93\xb5"; + inline constexpr char mathXy[] = "\xef\x93\xb6"; + inline constexpr char mathYMinusY[] = "\xef\x93\xb7"; + inline constexpr char mathYPlusY[] = "\xef\x93\xb8"; + inline constexpr char matrix[] = "\xf0\x90\x82\xbc"; + inline constexpr char maximize[] = "\xee\xab\xaa"; + inline constexpr char maximizeOff[] = "\xef\x85\x9f"; + inline constexpr char meat[] = "\xee\xbc\x92"; + inline constexpr char meatOff[] = "\xef\x90\x8a"; + inline constexpr char medal[] = "\xee\xb1\xb8"; + inline constexpr char medal2[] = "\xee\xbf\x8d"; + inline constexpr char medicalCross[] = "\xee\xb0\xaf"; + inline constexpr char medicalCrossCircle[] = "\xef\xab\xa8"; + inline constexpr char medicalCrossOff[] = "\xef\x85\xa0"; + inline constexpr char medicineSyrup[] = "\xee\xbd\xa3"; + inline constexpr char meeple[] = "\xef\x94\x94"; + inline constexpr char melon[] = "\xef\xb1\xba"; + inline constexpr char menorah[] = "\xef\x96\x8c"; + inline constexpr char menu[] = "\xee\xab\xab"; + inline constexpr char menu2[] = "\xee\xb1\x82"; + inline constexpr char menu3[] = "\xef\xbd\x83"; + inline constexpr char menu4[] = "\xef\xbd\x82"; + inline constexpr char menuDeep[] = "\xef\xab\xbb"; + inline constexpr char menuOrder[] = "\xef\x97\xb5"; + inline constexpr char mesh[] = "\xf0\x90\x88\x81"; + inline constexpr char message[] = "\xee\xab\xaf"; + inline constexpr char message2[] = "\xee\xab\xac"; + inline constexpr char message2Bolt[] = "\xef\xa5\x9c"; + inline constexpr char message2Cancel[] = "\xef\xa5\x9d"; + inline constexpr char message2Check[] = "\xef\xa5\x9e"; + inline constexpr char message2Code[] = "\xef\x80\x92"; + inline constexpr char message2Cog[] = "\xef\xa5\x9f"; + inline constexpr char message2Dollar[] = "\xef\xa5\xa0"; + inline constexpr char message2Down[] = "\xef\xa5\xa1"; + inline constexpr char message2Exclamation[] = "\xef\xa5\xa2"; + inline constexpr char message2Heart[] = "\xef\xa5\xa3"; + inline constexpr char message2Minus[] = "\xef\xa5\xa4"; + inline constexpr char message2Off[] = "\xef\x90\x8b"; + inline constexpr char message2Pause[] = "\xef\xa5\xa5"; + inline constexpr char message2Pin[] = "\xef\xa5\xa6"; + inline constexpr char message2Plus[] = "\xef\xa5\xa7"; + inline constexpr char message2Question[] = "\xef\xa5\xa8"; + inline constexpr char message2Search[] = "\xef\xa5\xa9"; + inline constexpr char message2Share[] = "\xef\x81\xb7"; + inline constexpr char message2Star[] = "\xef\xa5\xaa"; + inline constexpr char message2Up[] = "\xef\xa5\xab"; + inline constexpr char message2X[] = "\xef\xa5\xac"; + inline constexpr char messageBolt[] = "\xef\xa5\xad"; + inline constexpr char messageCancel[] = "\xef\xa5\xae"; + inline constexpr char messageChatbot[] = "\xef\x8e\x8a"; + inline constexpr char messageCheck[] = "\xef\xa5\xaf"; + inline constexpr char messageCircle[] = "\xee\xab\xad"; + inline constexpr char messageCircleBolt[] = "\xef\xa5\xb0"; + inline constexpr char messageCircleCancel[] = "\xef\xa5\xb1"; + inline constexpr char messageCircleCheck[] = "\xef\xa5\xb2"; + inline constexpr char messageCircleCode[] = "\xef\xa5\xb3"; + inline constexpr char messageCircleCog[] = "\xef\xa5\xb4"; + inline constexpr char messageCircleDollar[] = "\xef\xa5\xb5"; + inline constexpr char messageCircleDown[] = "\xef\xa5\xb6"; + inline constexpr char messageCircleExclamation[] = "\xef\xa5\xb7"; + inline constexpr char messageCircleHeart[] = "\xef\xa5\xb8"; + inline constexpr char messageCircleMinus[] = "\xef\xa5\xb9"; + inline constexpr char messageCircleOff[] = "\xee\xb5\x80"; + inline constexpr char messageCirclePause[] = "\xef\xa5\xba"; + inline constexpr char messageCirclePin[] = "\xef\xa5\xbb"; + inline constexpr char messageCirclePlus[] = "\xef\xa5\xbc"; + inline constexpr char messageCircleQuestion[] = "\xef\xa5\xbd"; + inline constexpr char messageCircleSearch[] = "\xef\xa5\xbe"; + inline constexpr char messageCircleShare[] = "\xef\xa5\xbf"; + inline constexpr char messageCircleStar[] = "\xef\xa6\x80"; + inline constexpr char messageCircleUp[] = "\xef\xa6\x81"; + inline constexpr char messageCircleUser[] = "\xef\xbb\x85"; + inline constexpr char messageCircleX[] = "\xef\xa6\x82"; + inline constexpr char messageCode[] = "\xef\x80\x93"; + inline constexpr char messageCog[] = "\xef\xa6\x83"; + inline constexpr char messageDollar[] = "\xef\xa6\x84"; + inline constexpr char messageDots[] = "\xee\xab\xae"; + inline constexpr char messageDown[] = "\xef\xa6\x85"; + inline constexpr char messageExclamation[] = "\xef\xa6\x86"; + inline constexpr char messageForward[] = "\xef\x8a\x8f"; + inline constexpr char messageHeart[] = "\xef\xa6\x87"; + inline constexpr char messageLanguage[] = "\xee\xbe\xae"; + inline constexpr char messageMinus[] = "\xef\xa6\x88"; + inline constexpr char messageOff[] = "\xee\xb5\x81"; + inline constexpr char messagePause[] = "\xef\xa6\x89"; + inline constexpr char messagePin[] = "\xef\xa6\x8a"; + inline constexpr char messagePlus[] = "\xee\xb2\x9a"; + inline constexpr char messageQuestion[] = "\xef\xa6\x8b"; + inline constexpr char messageReply[] = "\xef\xb5\x8d"; + inline constexpr char messageReport[] = "\xee\xb2\x9b"; + inline constexpr char messageSearch[] = "\xef\xa6\x8c"; + inline constexpr char messageShare[] = "\xef\x81\xb8"; + inline constexpr char messageStar[] = "\xef\xa6\x8d"; + inline constexpr char messageUp[] = "\xef\xa6\x8e"; + inline constexpr char messageUser[] = "\xef\xbb\x84"; + inline constexpr char messageX[] = "\xef\xa6\x8f"; + inline constexpr char messages[] = "\xee\xad\xac"; + inline constexpr char messagesOff[] = "\xee\xb5\x82"; + inline constexpr char meteor[] = "\xef\x87\xbd"; + inline constexpr char meteorOff[] = "\xef\x90\x8c"; + inline constexpr char meterCube[] = "\xef\xb5\xbc"; + inline constexpr char meterSquare[] = "\xef\xb5\xbd"; + inline constexpr char metronome[] = "\xef\xb4\xa5"; + inline constexpr char michelinBibGourmand[] = "\xef\xab\xa9"; + inline constexpr char michelinStar[] = "\xef\xab\xab"; + inline constexpr char michelinStarGreen[] = "\xef\xab\xaa"; + inline constexpr char mickey[] = "\xef\x8a\xa3"; + inline constexpr char microfrontends[] = "\xf0\x90\x87\xae"; + inline constexpr char microphone[] = "\xee\xab\xb0"; + inline constexpr char microphone2[] = "\xee\xbc\xac"; + inline constexpr char microphone2Off[] = "\xef\x90\x8d"; + inline constexpr char microphoneOff[] = "\xee\xb4\x96"; + inline constexpr char microscope[] = "\xee\xbd\xa4"; + inline constexpr char microscopeOff[] = "\xef\x90\x8e"; + inline constexpr char microwave[] = "\xef\x89\x88"; + inline constexpr char microwaveOff[] = "\xef\x89\xa4"; + inline constexpr char middleware[] = "\xf0\x90\x87\xad"; + inline constexpr char militaryAward[] = "\xef\x81\xb9"; + inline constexpr char militaryRank[] = "\xee\xbf\x8f"; + inline constexpr char milk[] = "\xee\xbc\x93"; + inline constexpr char milkOff[] = "\xef\x90\x8f"; + inline constexpr char milkshake[] = "\xef\x93\x88"; + inline constexpr char minimize[] = "\xee\xab\xb1"; + inline constexpr char minus[] = "\xee\xab\xb2"; + inline constexpr char minusVertical[] = "\xee\xba\xb4"; + inline constexpr char mist[] = "\xee\xb0\xb0"; + inline constexpr char mistOff[] = "\xef\x90\x90"; + inline constexpr char mobiledata[] = "\xef\xa7\xb5"; + inline constexpr char mobiledataOff[] = "\xef\xa7\xb4"; + inline constexpr char moneybag[] = "\xef\x94\x86"; + inline constexpr char moneybagEdit[] = "\xf0\x90\x84\xbd"; + inline constexpr char moneybagHeart[] = "\xf0\x90\x84\xbc"; + inline constexpr char moneybagMinus[] = "\xf0\x90\x84\xbb"; + inline constexpr char moneybagMove[] = "\xf0\x90\x84\xb9"; + inline constexpr char moneybagMoveBack[] = "\xf0\x90\x84\xba"; + inline constexpr char moneybagPlus[] = "\xf0\x90\x84\xb8"; + inline constexpr char monkeybar[] = "\xef\xba\xb4"; + inline constexpr char moodAngry[] = "\xef\x8b\x9e"; + inline constexpr char moodAnnoyed[] = "\xef\x8b\xa0"; + inline constexpr char moodAnnoyed2[] = "\xef\x8b\x9f"; + inline constexpr char moodBitcoin[] = "\xef\xbc\xb2"; + inline constexpr char moodBoy[] = "\xee\xb4\xad"; + inline constexpr char moodCheck[] = "\xef\x9e\xb3"; + inline constexpr char moodCog[] = "\xef\x9e\xb4"; + inline constexpr char moodConfused[] = "\xee\xab\xb3"; + inline constexpr char moodCrazyHappy[] = "\xee\xb6\x90"; + inline constexpr char moodCry[] = "\xee\xb2\xbb"; + inline constexpr char moodDollar[] = "\xef\x9e\xb5"; + inline constexpr char moodEdit[] = "\xef\xa8\x85"; + inline constexpr char moodEmpty[] = "\xee\xba\xb5"; + inline constexpr char moodHappy[] = "\xee\xab\xb4"; + inline constexpr char moodHeart[] = "\xef\x9e\xb6"; + inline constexpr char moodKid[] = "\xee\xb0\x83"; + inline constexpr char moodLookDown[] = "\xef\xb4\xb7"; + inline constexpr char moodLookLeft[] = "\xef\x8b\x85"; + inline constexpr char moodLookRight[] = "\xef\x8b\x86"; + inline constexpr char moodLookUp[] = "\xef\xb4\xb8"; + inline constexpr char moodMinus[] = "\xef\x9e\xb7"; + inline constexpr char moodNerd[] = "\xef\x8b\xa1"; + inline constexpr char moodNervous[] = "\xee\xbe\x96"; + inline constexpr char moodNeutral[] = "\xee\xab\xb5"; + inline constexpr char moodOff[] = "\xef\x85\xa1"; + inline constexpr char moodPin[] = "\xef\x9e\xb8"; + inline constexpr char moodPlus[] = "\xef\x9e\xb9"; + inline constexpr char moodPuzzled[] = "\xef\xb4\xb9"; + inline constexpr char moodSad[] = "\xee\xab\xb6"; + inline constexpr char moodSad2[] = "\xef\x8b\xa2"; + inline constexpr char moodSadDizzy[] = "\xef\x8b\xa3"; + inline constexpr char moodSadSquint[] = "\xef\x8b\xa4"; + inline constexpr char moodSearch[] = "\xef\x9e\xba"; + inline constexpr char moodShare[] = "\xef\xa8\x86"; + inline constexpr char moodSick[] = "\xef\x8b\xa5"; + inline constexpr char moodSilence[] = "\xef\x8b\xa6"; + inline constexpr char moodSing[] = "\xef\x8b\x87"; + inline constexpr char moodSmile[] = "\xee\xab\xb7"; + inline constexpr char moodSmileBeam[] = "\xef\x8b\xa7"; + inline constexpr char moodSmileDizzy[] = "\xef\x8b\xa8"; + inline constexpr char moodSpark[] = "\xef\xbe\xb2"; + inline constexpr char moodSurprised[] = "\xee\xb0\x84"; + inline constexpr char moodTongue[] = "\xee\xae\x95"; + inline constexpr char moodTongueWink[] = "\xef\x8b\xaa"; + inline constexpr char moodTongueWink2[] = "\xef\x8b\xa9"; + inline constexpr char moodUnamused[] = "\xef\x8b\xab"; + inline constexpr char moodUp[] = "\xef\x9e\xbb"; + inline constexpr char moodWink[] = "\xef\x8b\xad"; + inline constexpr char moodWink2[] = "\xef\x8b\xac"; + inline constexpr char moodWrrr[] = "\xef\x8b\xae"; + inline constexpr char moodX[] = "\xef\x9e\xbc"; + inline constexpr char moodXd[] = "\xef\x8b\xaf"; + inline constexpr char moon[] = "\xee\xab\xb8"; + inline constexpr char moon2[] = "\xee\xb3\xa6"; + inline constexpr char moonOff[] = "\xef\x85\xa2"; + inline constexpr char moonStars[] = "\xee\xb3\xa7"; + inline constexpr char moped[] = "\xee\xb2\xbc"; + inline constexpr char mosque[] = "\xf0\x90\x88\xb4"; + inline constexpr char motorbike[] = "\xee\xba\xb6"; + inline constexpr char mountain[] = "\xee\xbe\x97"; + inline constexpr char mountainOff[] = "\xef\x90\x91"; + inline constexpr char mouse[] = "\xee\xab\xb9"; + inline constexpr char mouse2[] = "\xef\x87\x97"; + inline constexpr char mouseOff[] = "\xef\x85\xa3"; + inline constexpr char moustache[] = "\xef\x93\x89"; + inline constexpr char movie[] = "\xee\xab\xba"; + inline constexpr char movieOff[] = "\xef\x85\xa4"; + inline constexpr char mug[] = "\xee\xab\xbb"; + inline constexpr char mugOff[] = "\xef\x85\xa5"; + inline constexpr char multiplier05x[] = "\xee\xbd\x81"; + inline constexpr char multiplier15x[] = "\xee\xbd\x82"; + inline constexpr char multiplier1x[] = "\xee\xbd\x83"; + inline constexpr char multiplier2x[] = "\xee\xbd\x84"; + inline constexpr char mushroom[] = "\xee\xbc\x94"; + inline constexpr char mushroomOff[] = "\xef\x90\x92"; + inline constexpr char music[] = "\xee\xab\xbc"; + inline constexpr char musicBolt[] = "\xef\xaf\x95"; + inline constexpr char musicCancel[] = "\xef\xaf\x96"; + inline constexpr char musicCheck[] = "\xef\xaf\x97"; + inline constexpr char musicCode[] = "\xef\xaf\x98"; + inline constexpr char musicCog[] = "\xef\xaf\x99"; + inline constexpr char musicDiscount[] = "\xef\xaf\x9a"; + inline constexpr char musicDollar[] = "\xef\xaf\x9b"; + inline constexpr char musicDown[] = "\xef\xaf\x9c"; + inline constexpr char musicExclamation[] = "\xef\xaf\x9d"; + inline constexpr char musicHeart[] = "\xef\xaf\x9e"; + inline constexpr char musicMinus[] = "\xef\xaf\x9f"; + inline constexpr char musicOff[] = "\xef\x85\xa6"; + inline constexpr char musicPause[] = "\xef\xaf\xa0"; + inline constexpr char musicPin[] = "\xef\xaf\xa1"; + inline constexpr char musicPlus[] = "\xef\xaf\xa2"; + inline constexpr char musicQuestion[] = "\xef\xaf\xa3"; + inline constexpr char musicSearch[] = "\xef\xaf\xa4"; + inline constexpr char musicShare[] = "\xef\xaf\xa5"; + inline constexpr char musicStar[] = "\xef\xaf\xa6"; + inline constexpr char musicUp[] = "\xef\xaf\xa7"; + inline constexpr char musicX[] = "\xef\xaf\xa8"; + inline constexpr char navigation[] = "\xef\x8b\x88"; + inline constexpr char navigationBolt[] = "\xef\xaf\xa9"; + inline constexpr char navigationCancel[] = "\xef\xaf\xaa"; + inline constexpr char navigationCheck[] = "\xef\xaf\xab"; + inline constexpr char navigationCode[] = "\xef\xaf\xac"; + inline constexpr char navigationCog[] = "\xef\xaf\xad"; + inline constexpr char navigationDiscount[] = "\xef\xaf\xae"; + inline constexpr char navigationDollar[] = "\xef\xaf\xaf"; + inline constexpr char navigationDown[] = "\xef\xaf\xb0"; + inline constexpr char navigationEast[] = "\xef\xb2\xba"; + inline constexpr char navigationExclamation[] = "\xef\xaf\xb1"; + inline constexpr char navigationHeart[] = "\xef\xaf\xb2"; + inline constexpr char navigationMinus[] = "\xef\xaf\xb3"; + inline constexpr char navigationNorth[] = "\xef\xb2\xbb"; + inline constexpr char navigationOff[] = "\xef\x90\x93"; + inline constexpr char navigationPause[] = "\xef\xaf\xb4"; + inline constexpr char navigationPin[] = "\xef\xaf\xb5"; + inline constexpr char navigationPlus[] = "\xef\xaf\xb6"; + inline constexpr char navigationQuestion[] = "\xef\xaf\xb7"; + inline constexpr char navigationSearch[] = "\xef\xaf\xb8"; + inline constexpr char navigationShare[] = "\xef\xaf\xb9"; + inline constexpr char navigationSouth[] = "\xef\xb2\xbc"; + inline constexpr char navigationStar[] = "\xef\xaf\xba"; + inline constexpr char navigationTop[] = "\xef\xab\xac"; + inline constexpr char navigationUp[] = "\xef\xaf\xbb"; + inline constexpr char navigationWest[] = "\xef\xb2\xbd"; + inline constexpr char navigationX[] = "\xef\xaf\xbc"; + inline constexpr char needle[] = "\xef\x94\x88"; + inline constexpr char needleThread[] = "\xef\x94\x87"; + inline constexpr char network[] = "\xef\x82\x9f"; + inline constexpr char networkOff[] = "\xef\x90\x94"; + inline constexpr char newSection[] = "\xee\xaf\x81"; + inline constexpr char news[] = "\xee\xab\xbd"; + inline constexpr char newsOff[] = "\xef\x85\xa7"; + inline constexpr char nfc[] = "\xee\xba\xb7"; + inline constexpr char nfcOff[] = "\xef\x85\xa8"; + inline constexpr char noCopyright[] = "\xee\xbe\xb9"; + inline constexpr char noCreativeCommons[] = "\xee\xbe\xba"; + inline constexpr char noDerivatives[] = "\xee\xbe\xbb"; + inline constexpr char noiseReduction[] = "\xf0\x90\x89\xa3"; + inline constexpr char northStar[] = "\xef\x80\x94"; + inline constexpr char notdef[] = "\xf0\x90\x89\x88"; + inline constexpr char note[] = "\xee\xad\xad"; + inline constexpr char noteOff[] = "\xef\x85\xa9"; + inline constexpr char notebook[] = "\xee\xae\x96"; + inline constexpr char notebookOff[] = "\xef\x90\x95"; + inline constexpr char notes[] = "\xee\xad\xae"; + inline constexpr char notesOff[] = "\xef\x85\xaa"; + inline constexpr char notification[] = "\xee\xab\xbe"; + inline constexpr char notificationOff[] = "\xef\x85\xab"; + inline constexpr char number[] = "\xef\x87\xbe"; + inline constexpr char number0[] = "\xee\xb7\xb0"; + inline constexpr char number0Small[] = "\xef\xb3\xa1"; + inline constexpr char number1[] = "\xee\xb7\xb1"; + inline constexpr char number1Small[] = "\xef\xb3\xa2"; + inline constexpr char number10[] = "\xf0\x90\x81\x9e"; + inline constexpr char number10Small[] = "\xef\xb3\xa3"; + inline constexpr char number100Small[] = "\xf0\x90\x80\x85"; + inline constexpr char number11[] = "\xf0\x90\x81\x9d"; + inline constexpr char number11Small[] = "\xef\xb3\xa4"; + inline constexpr char number12Small[] = "\xef\xb3\xa5"; + inline constexpr char number123[] = "\xef\x95\x94"; + inline constexpr char number13Small[] = "\xef\xb3\xa6"; + inline constexpr char number14Small[] = "\xef\xb3\xa7"; + inline constexpr char number15Small[] = "\xef\xb3\xa8"; + inline constexpr char number16Small[] = "\xef\xb3\xa9"; + inline constexpr char number17Small[] = "\xef\xb3\xaa"; + inline constexpr char number18Small[] = "\xef\xb3\xab"; + inline constexpr char number19Small[] = "\xef\xb3\xac"; + inline constexpr char number2[] = "\xee\xb7\xb2"; + inline constexpr char number2Small[] = "\xef\xb3\xad"; + inline constexpr char number20Small[] = "\xef\xb3\xae"; + inline constexpr char number21Small[] = "\xef\xb3\xaf"; + inline constexpr char number22Small[] = "\xef\xb3\xb0"; + inline constexpr char number23Small[] = "\xef\xb3\xb1"; + inline constexpr char number24Small[] = "\xef\xb3\xb2"; + inline constexpr char number25Small[] = "\xef\xb3\xb3"; + inline constexpr char number26Small[] = "\xef\xb3\xb4"; + inline constexpr char number27Small[] = "\xef\xb3\xb5"; + inline constexpr char number28Small[] = "\xef\xb3\xb6"; + inline constexpr char number29Small[] = "\xef\xb3\xb7"; + inline constexpr char number3[] = "\xee\xb7\xb3"; + inline constexpr char number3Small[] = "\xef\xb3\xb8"; + inline constexpr char number30Small[] = "\xf0\x90\x80\x84"; + inline constexpr char number31Small[] = "\xf0\x90\x80\x83"; + inline constexpr char number32Small[] = "\xf0\x90\x80\x82"; + inline constexpr char number33Small[] = "\xf0\x90\x80\x81"; + inline constexpr char number34Small[] = "\xf0\x90\x80\x80"; + inline constexpr char number35Small[] = "\xf0\x90\x88\x90"; + inline constexpr char number36Small[] = "\xf0\x90\x88\x91"; + inline constexpr char number37Small[] = "\xf0\x90\x88\x92"; + inline constexpr char number38Small[] = "\xf0\x90\x88\x93"; + inline constexpr char number39Small[] = "\xf0\x90\x88\x94"; + inline constexpr char number4[] = "\xee\xb7\xb4"; + inline constexpr char number4Small[] = "\xef\xb3\xb9"; + inline constexpr char number40Small[] = "\xf0\x90\x88\x95"; + inline constexpr char number41Small[] = "\xf0\x90\x88\x96"; + inline constexpr char number42Small[] = "\xf0\x90\x88\x97"; + inline constexpr char number43Small[] = "\xf0\x90\x88\x98"; + inline constexpr char number44Small[] = "\xf0\x90\x88\x99"; + inline constexpr char number45Small[] = "\xf0\x90\x88\x9a"; + inline constexpr char number46Small[] = "\xf0\x90\x88\x9b"; + inline constexpr char number47Small[] = "\xf0\x90\x88\x9c"; + inline constexpr char number48Small[] = "\xf0\x90\x88\x9d"; + inline constexpr char number49Small[] = "\xf0\x90\x88\x9e"; + inline constexpr char number5[] = "\xee\xb7\xb5"; + inline constexpr char number5Small[] = "\xef\xb3\xba"; + inline constexpr char number50Small[] = "\xf0\x90\x88\x9f"; + inline constexpr char number51Small[] = "\xef\xbf\xaf"; + inline constexpr char number52Small[] = "\xef\xbf\xae"; + inline constexpr char number53Small[] = "\xef\xbf\xad"; + inline constexpr char number54Small[] = "\xef\xbf\xac"; + inline constexpr char number55Small[] = "\xef\xbf\xab"; + inline constexpr char number56Small[] = "\xef\xbf\xaa"; + inline constexpr char number57Small[] = "\xef\xbf\xa9"; + inline constexpr char number58Small[] = "\xef\xbf\xa8"; + inline constexpr char number59Small[] = "\xef\xbf\xa7"; + inline constexpr char number6[] = "\xee\xb7\xb6"; + inline constexpr char number6Small[] = "\xef\xb3\xbb"; + inline constexpr char number60Small[] = "\xef\xbf\xa6"; + inline constexpr char number61Small[] = "\xef\xbf\xa5"; + inline constexpr char number62Small[] = "\xef\xbf\xa4"; + inline constexpr char number63Small[] = "\xef\xbf\xa3"; + inline constexpr char number64Small[] = "\xef\xbf\xa2"; + inline constexpr char number65Small[] = "\xef\xbf\xa1"; + inline constexpr char number66Small[] = "\xef\xbf\xa0"; + inline constexpr char number67Small[] = "\xef\xbf\x9f"; + inline constexpr char number68Small[] = "\xef\xbf\x9e"; + inline constexpr char number69Small[] = "\xef\xbf\x9d"; + inline constexpr char number7[] = "\xee\xb7\xb7"; + inline constexpr char number7Small[] = "\xef\xb3\xbc"; + inline constexpr char number70Small[] = "\xef\xbf\x9c"; + inline constexpr char number71Small[] = "\xef\xbf\x9b"; + inline constexpr char number72Small[] = "\xef\xbf\x9a"; + inline constexpr char number73Small[] = "\xef\xbf\x99"; + inline constexpr char number74Small[] = "\xef\xbf\x98"; + inline constexpr char number75Small[] = "\xef\xbf\x97"; + inline constexpr char number76Small[] = "\xef\xbf\x96"; + inline constexpr char number77Small[] = "\xef\xbf\x95"; + inline constexpr char number78Small[] = "\xef\xbf\x94"; + inline constexpr char number79Small[] = "\xef\xbf\x93"; + inline constexpr char number8[] = "\xee\xb7\xb8"; + inline constexpr char number8Small[] = "\xef\xb3\xbd"; + inline constexpr char number80Small[] = "\xef\xbf\x92"; + inline constexpr char number81Small[] = "\xef\xbf\x91"; + inline constexpr char number82Small[] = "\xef\xbf\x90"; + inline constexpr char number83Small[] = "\xef\xbf\x8f"; + inline constexpr char number84Small[] = "\xef\xbf\x8e"; + inline constexpr char number85Small[] = "\xef\xbf\x8d"; + inline constexpr char number86Small[] = "\xef\xbf\x8c"; + inline constexpr char number87Small[] = "\xef\xbf\x8b"; + inline constexpr char number88Small[] = "\xef\xbf\x8a"; + inline constexpr char number89Small[] = "\xef\xbf\x89"; + inline constexpr char number9[] = "\xee\xb7\xb9"; + inline constexpr char number9Small[] = "\xef\xb3\xbe"; + inline constexpr char number90Small[] = "\xef\xbf\x88"; + inline constexpr char number91Small[] = "\xef\xbf\x87"; + inline constexpr char number92Small[] = "\xef\xbf\x86"; + inline constexpr char number93Small[] = "\xef\xbf\x85"; + inline constexpr char number94Small[] = "\xef\xbf\x84"; + inline constexpr char number95Small[] = "\xef\xbf\x83"; + inline constexpr char number96Small[] = "\xef\xbf\x82"; + inline constexpr char number97Small[] = "\xef\xbf\x81"; + inline constexpr char number98Small[] = "\xef\xbf\x80"; + inline constexpr char number99Small[] = "\xef\xbe\xbf"; + inline constexpr char numbers[] = "\xef\x80\x95"; + inline constexpr char nurse[] = "\xee\xbd\xa5"; + inline constexpr char nut[] = "\xef\xb1\xa1"; + inline constexpr char objectScan[] = "\xef\xbb\xb1"; + inline constexpr char octagon[] = "\xee\xb2\xbd"; + inline constexpr char octagonMinus[] = "\xef\xb2\x92"; + inline constexpr char octagonMinus2[] = "\xef\xb2\x91"; + inline constexpr char octagonOff[] = "\xee\xba\xb8"; + inline constexpr char octagonPlus[] = "\xef\xb2\x94"; + inline constexpr char octagonPlus2[] = "\xef\xb2\x93"; + inline constexpr char octahedron[] = "\xef\xaa\xae"; + inline constexpr char octahedronOff[] = "\xef\xaa\xac"; + inline constexpr char octahedronPlus[] = "\xef\xaa\xad"; + inline constexpr char old[] = "\xee\xba\xb9"; + inline constexpr char olympicTorch[] = "\xf0\x90\x88\xa8"; + inline constexpr char olympics[] = "\xee\xba\xba"; + inline constexpr char olympicsOff[] = "\xef\x90\x96"; + inline constexpr char om[] = "\xef\x96\x8d"; + inline constexpr char omega[] = "\xee\xae\x97"; + inline constexpr char option[] = "\xf0\x90\x86\x9f"; + inline constexpr char outbound[] = "\xef\x89\x89"; + inline constexpr char outlet[] = "\xee\xaf\x97"; + inline constexpr char oval[] = "\xef\x80\xae"; + inline constexpr char ovalVertical[] = "\xef\x80\xad"; + inline constexpr char overline[] = "\xee\xba\xbb"; + inline constexpr char package[] = "\xee\xab\xbf"; + inline constexpr char packageExport[] = "\xef\x81\xba"; + inline constexpr char packageImport[] = "\xef\x81\xbb"; + inline constexpr char packageOff[] = "\xef\x85\xac"; + inline constexpr char packages[] = "\xef\x8b\x89"; + inline constexpr char pacman[] = "\xee\xba\xbc"; + inline constexpr char pageBreak[] = "\xee\xb2\x81"; + inline constexpr char paint[] = "\xee\xac\x80"; + inline constexpr char paintOff[] = "\xef\x85\xad"; + inline constexpr char palette[] = "\xee\xac\x81"; + inline constexpr char paletteOff[] = "\xef\x85\xae"; + inline constexpr char panoramaHorizontal[] = "\xee\xb4\xb3"; + inline constexpr char panoramaHorizontalOff[] = "\xef\x90\x97"; + inline constexpr char panoramaVertical[] = "\xee\xb4\xb4"; + inline constexpr char panoramaVerticalOff[] = "\xef\x90\x98"; + inline constexpr char paperBag[] = "\xef\x80\xaf"; + inline constexpr char paperBagOff[] = "\xef\x85\xaf"; + inline constexpr char paperclip[] = "\xee\xac\x82"; + inline constexpr char parachute[] = "\xee\xb5\xbc"; + inline constexpr char parachuteOff[] = "\xef\x85\xb0"; + inline constexpr char parentheses[] = "\xee\xaf\x98"; + inline constexpr char parenthesesOff[] = "\xef\x85\xb1"; + inline constexpr char parking[] = "\xee\xac\x83"; + inline constexpr char parkingCircle[] = "\xef\xb5\x9a"; + inline constexpr char parkingMeter[] = "\xf0\x90\x88\xa7"; + inline constexpr char parkingOff[] = "\xef\x85\xb2"; + inline constexpr char password[] = "\xef\x93\x8a"; + inline constexpr char passwordFingerprint[] = "\xef\xb1\xbb"; + inline constexpr char passwordMobilePhone[] = "\xef\xb1\xbc"; + inline constexpr char passwordUser[] = "\xef\xb1\xbd"; + inline constexpr char paw[] = "\xee\xbf\xb9"; + inline constexpr char pawOff[] = "\xef\x90\x99"; + inline constexpr char paywall[] = "\xef\xb5\xbe"; + inline constexpr char pdf[] = "\xef\x9e\xac"; + inline constexpr char peace[] = "\xee\xb2\xbe"; + inline constexpr char pencil[] = "\xee\xac\x84"; + inline constexpr char pencilBolt[] = "\xef\xaf\xbd"; + inline constexpr char pencilCancel[] = "\xef\xaf\xbe"; + inline constexpr char pencilCheck[] = "\xef\xaf\xbf"; + inline constexpr char pencilCode[] = "\xef\xb0\x80"; + inline constexpr char pencilCog[] = "\xef\xb0\x81"; + inline constexpr char pencilDiscount[] = "\xef\xb0\x82"; + inline constexpr char pencilDollar[] = "\xef\xb0\x83"; + inline constexpr char pencilDown[] = "\xef\xb0\x84"; + inline constexpr char pencilExclamation[] = "\xef\xb0\x85"; + inline constexpr char pencilHeart[] = "\xef\xb0\x86"; + inline constexpr char pencilMinus[] = "\xef\x87\xab"; + inline constexpr char pencilOff[] = "\xef\x85\xb3"; + inline constexpr char pencilPause[] = "\xef\xb0\x87"; + inline constexpr char pencilPin[] = "\xef\xb0\x88"; + inline constexpr char pencilPlus[] = "\xef\x87\xac"; + inline constexpr char pencilQuestion[] = "\xef\xb0\x89"; + inline constexpr char pencilSearch[] = "\xef\xb0\x8a"; + inline constexpr char pencilShare[] = "\xef\xb0\x8b"; + inline constexpr char pencilStar[] = "\xef\xb0\x8c"; + inline constexpr char pencilUp[] = "\xef\xb0\x8d"; + inline constexpr char pencilX[] = "\xef\xb0\x8e"; + inline constexpr char pendulum[] = "\xf0\x90\x88\xb3"; + inline constexpr char pennant[] = "\xee\xb5\xbd"; + inline constexpr char pennant2[] = "\xef\x81\xaa"; + inline constexpr char pennantOff[] = "\xef\x85\xb4"; + inline constexpr char pentagon[] = "\xee\xbf\xa3"; + inline constexpr char pentagonMinus[] = "\xef\xba\xb3"; + inline constexpr char pentagonNumber0[] = "\xef\xb1\xbe"; + inline constexpr char pentagonNumber1[] = "\xef\xb1\xbf"; + inline constexpr char pentagonNumber2[] = "\xef\xb2\x80"; + inline constexpr char pentagonNumber3[] = "\xef\xb2\x81"; + inline constexpr char pentagonNumber4[] = "\xef\xb2\x82"; + inline constexpr char pentagonNumber5[] = "\xef\xb2\x83"; + inline constexpr char pentagonNumber6[] = "\xef\xb2\x84"; + inline constexpr char pentagonNumber7[] = "\xef\xb2\x85"; + inline constexpr char pentagonNumber8[] = "\xef\xb2\x86"; + inline constexpr char pentagonNumber9[] = "\xef\xb2\x87"; + inline constexpr char pentagonOff[] = "\xef\x90\x9a"; + inline constexpr char pentagonPlus[] = "\xef\xb1\x89"; + inline constexpr char pentagonX[] = "\xef\xb2\x88"; + inline constexpr char pentagram[] = "\xef\x96\x86"; + inline constexpr char pepper[] = "\xee\xbc\x95"; + inline constexpr char pepperOff[] = "\xef\x85\xb5"; + inline constexpr char percentage[] = "\xee\xb3\xb4"; + inline constexpr char percentage0[] = "\xef\xbb\xa5"; + inline constexpr char percentage10[] = "\xef\xbb\xa4"; + inline constexpr char percentage100[] = "\xef\xbb\xa3"; + inline constexpr char percentage20[] = "\xef\xbb\xa2"; + inline constexpr char percentage25[] = "\xef\xbb\xa1"; + inline constexpr char percentage30[] = "\xef\xbb\xa0"; + inline constexpr char percentage33[] = "\xef\xbb\x9f"; + inline constexpr char percentage40[] = "\xef\xbb\x9e"; + inline constexpr char percentage50[] = "\xef\xbb\x9d"; + inline constexpr char percentage60[] = "\xef\xbb\x9c"; + inline constexpr char percentage66[] = "\xef\xbb\x9b"; + inline constexpr char percentage70[] = "\xef\xbb\x9a"; + inline constexpr char percentage75[] = "\xef\xbb\x99"; + inline constexpr char percentage80[] = "\xef\xbb\x98"; + inline constexpr char percentage90[] = "\xef\xbb\x97"; + inline constexpr char perfume[] = "\xef\x94\x89"; + inline constexpr char perspective[] = "\xee\xba\xbd"; + inline constexpr char perspectiveOff[] = "\xef\x85\xb6"; + inline constexpr char phone[] = "\xee\xac\x89"; + inline constexpr char phoneCall[] = "\xee\xac\x85"; + inline constexpr char phoneCalling[] = "\xee\xb1\x83"; + inline constexpr char phoneCheck[] = "\xee\xb0\x85"; + inline constexpr char phoneDone[] = "\xef\xbe\x9e"; + inline constexpr char phoneEnd[] = "\xef\xbe\x9d"; + inline constexpr char phoneIncoming[] = "\xee\xac\x86"; + inline constexpr char phoneOff[] = "\xee\xb3\xb5"; + inline constexpr char phoneOutgoing[] = "\xee\xac\x87"; + inline constexpr char phonePause[] = "\xee\xac\x88"; + inline constexpr char phonePlus[] = "\xee\xb0\x86"; + inline constexpr char phoneRinging[] = "\xef\xbe\x9c"; + inline constexpr char phoneSpark[] = "\xef\xbe\xb1"; + inline constexpr char phoneX[] = "\xee\xb0\x87"; + inline constexpr char photo[] = "\xee\xac\x8a"; + inline constexpr char photoAi[] = "\xef\xa8\xb2"; + inline constexpr char photoAlt[] = "\xf0\x90\x89\xa2"; + inline constexpr char photoBitcoin[] = "\xef\xbc\xb1"; + inline constexpr char photoBolt[] = "\xef\xa6\x90"; + inline constexpr char photoCancel[] = "\xef\x8d\x9d"; + inline constexpr char photoCheck[] = "\xef\x8d\x9e"; + inline constexpr char photoCircle[] = "\xef\xb1\x8a"; + inline constexpr char photoCircleMinus[] = "\xef\xb1\xa2"; + inline constexpr char photoCirclePlus[] = "\xef\xb1\xa3"; + inline constexpr char photoCode[] = "\xef\xa6\x91"; + inline constexpr char photoCog[] = "\xef\xa6\x92"; + inline constexpr char photoDollar[] = "\xef\xa6\x93"; + inline constexpr char photoDown[] = "\xef\x8d\x9f"; + inline constexpr char photoEdit[] = "\xef\x8d\xa0"; + inline constexpr char photoExclamation[] = "\xef\xa6\x94"; + inline constexpr char photoHeart[] = "\xef\x8d\xa1"; + inline constexpr char photoHexagon[] = "\xef\xb1\x8b"; + inline constexpr char photoMinus[] = "\xef\x8d\xa2"; + inline constexpr char photoOff[] = "\xee\xb3\xb6"; + inline constexpr char photoPause[] = "\xef\xa6\x95"; + inline constexpr char photoPentagon[] = "\xef\xb1\x8c"; + inline constexpr char photoPin[] = "\xef\xa6\x96"; + inline constexpr char photoPlus[] = "\xef\x8d\xa3"; + inline constexpr char photoQuestion[] = "\xef\xa6\x97"; + inline constexpr char photoScan[] = "\xef\xb2\xa8"; + inline constexpr char photoSearch[] = "\xef\x8d\xa4"; + inline constexpr char photoSensor[] = "\xef\x9e\x98"; + inline constexpr char photoSensor2[] = "\xef\x9e\x96"; + inline constexpr char photoSensor3[] = "\xef\x9e\x97"; + inline constexpr char photoShare[] = "\xef\xa6\x98"; + inline constexpr char photoShield[] = "\xef\x8d\xa5"; + inline constexpr char photoSpark[] = "\xef\xbe\xb0"; + inline constexpr char photoSquareRounded[] = "\xef\xb1\x8d"; + inline constexpr char photoStar[] = "\xef\x8d\xa6"; + inline constexpr char photoUp[] = "\xef\x8e\x8b"; + inline constexpr char photoVideo[] = "\xef\xb2\x95"; + inline constexpr char photoX[] = "\xef\x8d\xa7"; + inline constexpr char physiotherapist[] = "\xee\xba\xbe"; + inline constexpr char piano[] = "\xef\xab\x93"; + inline constexpr char pick[] = "\xef\xab\xbc"; + inline constexpr char picnicTable[] = "\xef\xbb\x96"; + inline constexpr char pictureInPicture[] = "\xee\xb4\xb5"; + inline constexpr char pictureInPictureOff[] = "\xee\xb5\x83"; + inline constexpr char pictureInPictureOn[] = "\xee\xb5\x84"; + inline constexpr char pictureInPictureTop[] = "\xee\xbf\xa4"; + inline constexpr char pig[] = "\xee\xbd\x92"; + inline constexpr char pigMoney[] = "\xef\x8e\x8c"; + inline constexpr char pigOff[] = "\xef\x85\xb7"; + inline constexpr char pilcrow[] = "\xef\x97\xb6"; + inline constexpr char pilcrowLeft[] = "\xef\xb5\xbf"; + inline constexpr char pilcrowRight[] = "\xef\xb6\x80"; + inline constexpr char pill[] = "\xee\xb1\x84"; + inline constexpr char pillOff[] = "\xef\x85\xb8"; + inline constexpr char pillow[] = "\xf0\x90\x88\xa6"; + inline constexpr char pills[] = "\xee\xbd\xa6"; + inline constexpr char pin[] = "\xee\xb2\x9c"; + inline constexpr char pinEnd[] = "\xef\xb5\x9b"; + inline constexpr char pinInvoke[] = "\xef\xb5\x9c"; + inline constexpr char pingPong[] = "\xef\x8e\x8d"; + inline constexpr char pinned[] = "\xee\xb5\xa0"; + inline constexpr char pinnedOff[] = "\xee\xb5\x9f"; + inline constexpr char pipeline[] = "\xf0\x90\x88\xa5"; + inline constexpr char pizza[] = "\xee\xb6\xbb"; + inline constexpr char pizzaOff[] = "\xef\x85\xb9"; + inline constexpr char placeholder[] = "\xef\x98\xa6"; + inline constexpr char plane[] = "\xee\xad\xaf"; + inline constexpr char planeArrival[] = "\xee\xae\x99"; + inline constexpr char planeDeparture[] = "\xee\xae\x9a"; + inline constexpr char planeInflight[] = "\xee\xbe\x98"; + inline constexpr char planeOff[] = "\xef\x85\xba"; + inline constexpr char planeTilt[] = "\xef\x87\xad"; + inline constexpr char planet[] = "\xee\xb0\x88"; + inline constexpr char planetOff[] = "\xef\x85\xbb"; + inline constexpr char plant[] = "\xee\xb5\x90"; + inline constexpr char plant2[] = "\xee\xb5\xbe"; + inline constexpr char plant2Off[] = "\xef\x85\xbc"; + inline constexpr char plantOff[] = "\xef\x85\xbd"; + inline constexpr char playBasketball[] = "\xef\xa9\xa6"; + inline constexpr char playCard[] = "\xee\xba\xbf"; + inline constexpr char playCard1[] = "\xf0\x90\x81\x9c"; + inline constexpr char playCard10[] = "\xf0\x90\x81\x9b"; + inline constexpr char playCard2[] = "\xf0\x90\x81\x9a"; + inline constexpr char playCard3[] = "\xf0\x90\x81\x99"; + inline constexpr char playCard4[] = "\xf0\x90\x81\x98"; + inline constexpr char playCard5[] = "\xf0\x90\x81\x97"; + inline constexpr char playCard6[] = "\xf0\x90\x81\x96"; + inline constexpr char playCard7[] = "\xf0\x90\x81\x95"; + inline constexpr char playCard8[] = "\xf0\x90\x81\x94"; + inline constexpr char playCard9[] = "\xf0\x90\x81\x93"; + inline constexpr char playCardA[] = "\xf0\x90\x81\x92"; + inline constexpr char playCardJ[] = "\xf0\x90\x81\x91"; + inline constexpr char playCardK[] = "\xf0\x90\x81\x90"; + inline constexpr char playCardOff[] = "\xef\x85\xbe"; + inline constexpr char playCardQ[] = "\xf0\x90\x81\x8f"; + inline constexpr char playCardStar[] = "\xf0\x90\x81\x8e"; + inline constexpr char playFootball[] = "\xef\xa9\xa7"; + inline constexpr char playHandball[] = "\xef\xa9\xa8"; + inline constexpr char playVolleyball[] = "\xef\xa9\xa9"; + inline constexpr char playerEject[] = "\xee\xbe\xbc"; + inline constexpr char playerPause[] = "\xee\xb5\x85"; + inline constexpr char playerPlay[] = "\xee\xb5\x86"; + inline constexpr char playerRecord[] = "\xee\xb5\x87"; + inline constexpr char playerSkipBack[] = "\xee\xb5\x88"; + inline constexpr char playerSkipForward[] = "\xee\xb5\x89"; + inline constexpr char playerStop[] = "\xee\xb5\x8a"; + inline constexpr char playerTrackNext[] = "\xee\xb5\x8b"; + inline constexpr char playerTrackPrev[] = "\xee\xb5\x8c"; + inline constexpr char playlist[] = "\xee\xbb\x80"; + inline constexpr char playlistAdd[] = "\xef\x80\x88"; + inline constexpr char playlistOff[] = "\xef\x85\xbf"; + inline constexpr char playlistX[] = "\xef\x80\x89"; + inline constexpr char playstationCircle[] = "\xef\x8a\xad"; + inline constexpr char playstationSquare[] = "\xef\x8a\xae"; + inline constexpr char playstationTriangle[] = "\xef\x8a\xaf"; + inline constexpr char playstationX[] = "\xef\x8a\xb0"; + inline constexpr char plug[] = "\xee\xaf\x99"; + inline constexpr char plugConnected[] = "\xef\x80\x8a"; + inline constexpr char plugConnectedX[] = "\xef\x82\xa0"; + inline constexpr char plugOff[] = "\xef\x86\x80"; + inline constexpr char plugX[] = "\xef\x82\xa1"; + inline constexpr char plunger[] = "\xf0\x90\x88\xb2"; + inline constexpr char plus[] = "\xee\xac\x8b"; + inline constexpr char plusEqual[] = "\xef\x9e\xad"; + inline constexpr char plusMinus[] = "\xef\x9e\xae"; + inline constexpr char png[] = "\xef\x8e\xad"; + inline constexpr char podium[] = "\xef\x87\x98"; + inline constexpr char podiumOff[] = "\xef\x90\x9b"; + inline constexpr char point[] = "\xee\xac\x8c"; + inline constexpr char pointOff[] = "\xef\x86\x81"; + inline constexpr char pointer[] = "\xef\x89\xa5"; + inline constexpr char pointer2[] = "\xf0\x90\x89\xa1"; + inline constexpr char pointerBolt[] = "\xef\xa6\x99"; + inline constexpr char pointerCancel[] = "\xef\xa6\x9a"; + inline constexpr char pointerCheck[] = "\xef\xa6\x9b"; + inline constexpr char pointerCode[] = "\xef\xa6\x9c"; + inline constexpr char pointerCog[] = "\xef\xa6\x9d"; + inline constexpr char pointerCollaboration[] = "\xf0\x90\x89\x9f"; + inline constexpr char pointerCollaboration2[] = "\xf0\x90\x89\xa0"; + inline constexpr char pointerDollar[] = "\xef\xa6\x9e"; + inline constexpr char pointerDown[] = "\xef\xa6\x9f"; + inline constexpr char pointerExclamation[] = "\xef\xa6\xa0"; + inline constexpr char pointerHeart[] = "\xef\xa6\xa1"; + inline constexpr char pointerMinus[] = "\xef\xa6\xa2"; + inline constexpr char pointerOff[] = "\xef\xa6\xa3"; + inline constexpr char pointerPause[] = "\xef\xa6\xa4"; + inline constexpr char pointerPin[] = "\xef\xa6\xa5"; + inline constexpr char pointerPlus[] = "\xef\xa6\xa6"; + inline constexpr char pointerQuestion[] = "\xef\xa6\xa7"; + inline constexpr char pointerSearch[] = "\xef\xa6\xa8"; + inline constexpr char pointerShare[] = "\xef\xa6\xa9"; + inline constexpr char pointerStar[] = "\xef\xa6\xaa"; + inline constexpr char pointerUp[] = "\xef\xa6\xab"; + inline constexpr char pointerX[] = "\xef\xa6\xac"; + inline constexpr char pokeball[] = "\xee\xbb\x81"; + inline constexpr char pokeballOff[] = "\xef\x90\x9c"; + inline constexpr char pokerChip[] = "\xef\x94\x95"; + inline constexpr char polaroid[] = "\xee\xbb\x82"; + inline constexpr char polygon[] = "\xee\xbf\x90"; + inline constexpr char polygonOff[] = "\xef\x86\x82"; + inline constexpr char poo[] = "\xef\x89\x98"; + inline constexpr char pool[] = "\xee\xb6\x91"; + inline constexpr char poolOff[] = "\xef\x90\x9d"; + inline constexpr char power[] = "\xee\xac\x8d"; + inline constexpr char pray[] = "\xee\xb2\xbf"; + inline constexpr char premiumRights[] = "\xee\xbe\xbd"; + inline constexpr char prescription[] = "\xee\xbe\x99"; + inline constexpr char presentation[] = "\xee\xad\xb0"; + inline constexpr char presentationAnalytics[] = "\xee\xbb\x83"; + inline constexpr char presentationOff[] = "\xef\x86\x83"; + inline constexpr char printer[] = "\xee\xac\x8e"; + inline constexpr char printerOff[] = "\xef\x86\x84"; + inline constexpr char prism[] = "\xef\xaa\xb1"; + inline constexpr char prismLight[] = "\xef\xba\xa6"; + inline constexpr char prismOff[] = "\xef\xaa\xaf"; + inline constexpr char prismPlus[] = "\xef\xaa\xb0"; + inline constexpr char prison[] = "\xee\xbd\xb9"; + inline constexpr char progress[] = "\xef\xa8\x8d"; + inline constexpr char progressAlert[] = "\xef\xa8\x87"; + inline constexpr char progressBolt[] = "\xef\xa8\x88"; + inline constexpr char progressCheck[] = "\xef\xa8\x89"; + inline constexpr char progressDown[] = "\xef\xa8\x8a"; + inline constexpr char progressHelp[] = "\xef\xa8\x8b"; + inline constexpr char progressX[] = "\xef\xa8\x8c"; + inline constexpr char prompt[] = "\xee\xac\x8f"; + inline constexpr char prong[] = "\xef\xb6\xa1"; + inline constexpr char propeller[] = "\xee\xbb\x84"; + inline constexpr char propellerOff[] = "\xef\x86\x85"; + inline constexpr char protocol[] = "\xef\xb6\x81"; + inline constexpr char pumpkinScary[] = "\xef\x96\x87"; + inline constexpr char puzzle[] = "\xee\xac\x90"; + inline constexpr char puzzle2[] = "\xee\xbe\x83"; + inline constexpr char puzzleOff[] = "\xef\x86\x86"; + inline constexpr char pyramid[] = "\xee\xbb\x85"; + inline constexpr char pyramidOff[] = "\xef\x86\x87"; + inline constexpr char pyramidPlus[] = "\xef\xaa\xb2"; + inline constexpr char qrcode[] = "\xee\xac\x91"; + inline constexpr char qrcodeOff[] = "\xef\x90\x9e"; + inline constexpr char questionMark[] = "\xee\xb2\x9d"; + inline constexpr char queuePopIn[] = "\xf0\x90\x88\x80"; + inline constexpr char queuePopOut[] = "\xf0\x90\x87\xbf"; + inline constexpr char quote[] = "\xee\xbe\xbe"; + inline constexpr char quoteOff[] = "\xef\x86\x88"; + inline constexpr char quoteOpen[] = "\xf0\x90\x88\xa4"; + inline constexpr char quotes[] = "\xef\xac\x9e"; + inline constexpr char radar[] = "\xef\x80\x97"; + inline constexpr char radar2[] = "\xef\x80\x96"; + inline constexpr char radarOff[] = "\xef\x90\x9f"; + inline constexpr char radio[] = "\xee\xbc\xad"; + inline constexpr char radioOff[] = "\xef\x90\xa0"; + inline constexpr char radioactive[] = "\xee\xb3\x80"; + inline constexpr char radioactiveOff[] = "\xef\x86\x89"; + inline constexpr char radiusBottomLeft[] = "\xee\xbb\x86"; + inline constexpr char radiusBottomRight[] = "\xee\xbb\x87"; + inline constexpr char radiusTopLeft[] = "\xee\xbb\x88"; + inline constexpr char radiusTopRight[] = "\xee\xbb\x89"; + inline constexpr char rainbow[] = "\xee\xb6\xbc"; + inline constexpr char rainbowOff[] = "\xef\x86\x8a"; + inline constexpr char rating12Plus[] = "\xef\x89\xa6"; + inline constexpr char rating14Plus[] = "\xef\x89\xa7"; + inline constexpr char rating16Plus[] = "\xef\x89\xa8"; + inline constexpr char rating18Plus[] = "\xef\x89\xa9"; + inline constexpr char rating21Plus[] = "\xef\x89\xaa"; + inline constexpr char razor[] = "\xef\x92\xb5"; + inline constexpr char razorElectric[] = "\xef\x92\xb4"; + inline constexpr char receipt[] = "\xee\xb7\xbd"; + inline constexpr char receipt2[] = "\xee\xb7\xba"; + inline constexpr char receiptBitcoin[] = "\xef\xb5\xa6"; + inline constexpr char receiptDollar[] = "\xef\xb5\xa7"; + inline constexpr char receiptEuro[] = "\xef\xb5\xa8"; + inline constexpr char receiptOff[] = "\xee\xb7\xbb"; + inline constexpr char receiptPound[] = "\xef\xb5\xa9"; + inline constexpr char receiptRefund[] = "\xee\xb7\xbc"; + inline constexpr char receiptRupee[] = "\xef\xb6\x82"; + inline constexpr char receiptTax[] = "\xee\xb6\xbd"; + inline constexpr char receiptYen[] = "\xef\xb5\xaa"; + inline constexpr char receiptYuan[] = "\xef\xb5\xab"; + inline constexpr char recharging[] = "\xee\xbb\x8a"; + inline constexpr char recordMail[] = "\xee\xac\x92"; + inline constexpr char recordMailOff[] = "\xef\x86\x8b"; + inline constexpr char rectangle[] = "\xee\xb4\xb7"; + inline constexpr char rectangleRoundedBottom[] = "\xef\xab\xad"; + inline constexpr char rectangleRoundedTop[] = "\xef\xab\xae"; + inline constexpr char rectangleVertical[] = "\xee\xb4\xb6"; + inline constexpr char rectangularPrism[] = "\xef\xaa\xb5"; + inline constexpr char rectangularPrismOff[] = "\xef\xaa\xb3"; + inline constexpr char rectangularPrismPlus[] = "\xef\xaa\xb4"; + inline constexpr char recycle[] = "\xee\xae\x9b"; + inline constexpr char recycleOff[] = "\xef\x86\x8c"; + inline constexpr char refresh[] = "\xee\xac\x93"; + inline constexpr char refreshAlert[] = "\xee\xb5\x97"; + inline constexpr char refreshDot[] = "\xee\xbe\xbf"; + inline constexpr char refreshOff[] = "\xef\x86\x8d"; + inline constexpr char regex[] = "\xef\x8c\x9f"; + inline constexpr char regexOff[] = "\xef\x90\xa1"; + inline constexpr char registered[] = "\xee\xac\x94"; + inline constexpr char relationManyToMany[] = "\xee\xb5\xbf"; + inline constexpr char relationOneToMany[] = "\xee\xb6\x80"; + inline constexpr char relationOneToOne[] = "\xee\xb6\x81"; + inline constexpr char reload[] = "\xef\x8e\xae"; + inline constexpr char reorder[] = "\xef\xb0\x95"; + inline constexpr char repeat[] = "\xee\xad\xb2"; + inline constexpr char repeatOff[] = "\xef\x86\x8e"; + inline constexpr char repeatOnce[] = "\xee\xad\xb1"; + inline constexpr char replace[] = "\xee\xaf\x87"; + inline constexpr char replaceOff[] = "\xef\x90\xa2"; + inline constexpr char replaceUser[] = "\xf0\x90\x83\xb0"; + inline constexpr char report[] = "\xee\xbb\x8e"; + inline constexpr char reportAnalytics[] = "\xee\xbb\x8b"; + inline constexpr char reportMedical[] = "\xee\xbb\x8c"; + inline constexpr char reportMoney[] = "\xee\xbb\x8d"; + inline constexpr char reportOff[] = "\xef\x86\x8f"; + inline constexpr char reportSearch[] = "\xee\xbe\x84"; + inline constexpr char reservedLine[] = "\xef\xa7\xb6"; + inline constexpr char resize[] = "\xee\xbb\x8f"; + inline constexpr char restore[] = "\xef\xab\xbd"; + inline constexpr char rewindBackward10[] = "\xef\xaa\xba"; + inline constexpr char rewindBackward15[] = "\xef\xaa\xbb"; + inline constexpr char rewindBackward20[] = "\xef\xaa\xbc"; + inline constexpr char rewindBackward30[] = "\xef\xaa\xbd"; + inline constexpr char rewindBackward40[] = "\xef\xaa\xbe"; + inline constexpr char rewindBackward5[] = "\xef\xaa\xbf"; + inline constexpr char rewindBackward50[] = "\xef\xab\x80"; + inline constexpr char rewindBackward60[] = "\xef\xab\x81"; + inline constexpr char rewindForward10[] = "\xef\xab\x82"; + inline constexpr char rewindForward15[] = "\xef\xab\x83"; + inline constexpr char rewindForward20[] = "\xef\xab\x84"; + inline constexpr char rewindForward30[] = "\xef\xab\x85"; + inline constexpr char rewindForward40[] = "\xef\xab\x86"; + inline constexpr char rewindForward5[] = "\xef\xab\x87"; + inline constexpr char rewindForward50[] = "\xef\xab\x88"; + inline constexpr char rewindForward60[] = "\xef\xab\x89"; + inline constexpr char ribbonHealth[] = "\xef\x96\x8e"; + inline constexpr char rings[] = "\xef\xa9\xaa"; + inline constexpr char ripple[] = "\xee\xb6\x82"; + inline constexpr char rippleDown[] = "\xf0\x90\x86\xaa"; + inline constexpr char rippleOff[] = "\xef\x86\x90"; + inline constexpr char rippleUp[] = "\xf0\x90\x86\xa9"; + inline constexpr char road[] = "\xef\x80\x98"; + inline constexpr char roadOff[] = "\xef\x86\x91"; + inline constexpr char roadSign[] = "\xee\xb3\x9d"; + inline constexpr char robot[] = "\xef\x80\x8b"; + inline constexpr char robotFace[] = "\xef\xb2\xbe"; + inline constexpr char robotOff[] = "\xef\x86\x92"; + inline constexpr char rocket[] = "\xee\xb1\x85"; + inline constexpr char rocketOff[] = "\xef\x86\x93"; + inline constexpr char rollerSkating[] = "\xee\xbf\x91"; + inline constexpr char rollercoaster[] = "\xef\x82\xa2"; + inline constexpr char rollercoasterOff[] = "\xef\x90\xa3"; + inline constexpr char rosette[] = "\xef\x96\x99"; + inline constexpr char rosetteAsterisk[] = "\xf0\x90\x86\xa8"; + inline constexpr char rosetteDiscount[] = "\xee\xb9\xbc"; + inline constexpr char rosetteDiscountCheck[] = "\xef\x87\xb8"; + inline constexpr char rosetteDiscountCheckOff[] = "\xef\xbc\x90"; + inline constexpr char rosetteDiscountOff[] = "\xef\x8f\xa6"; + inline constexpr char rosetteNumber0[] = "\xef\x96\x8f"; + inline constexpr char rosetteNumber1[] = "\xef\x96\x90"; + inline constexpr char rosetteNumber2[] = "\xef\x96\x91"; + inline constexpr char rosetteNumber3[] = "\xef\x96\x92"; + inline constexpr char rosetteNumber4[] = "\xef\x96\x93"; + inline constexpr char rosetteNumber5[] = "\xef\x96\x94"; + inline constexpr char rosetteNumber6[] = "\xef\x96\x95"; + inline constexpr char rosetteNumber7[] = "\xef\x96\x96"; + inline constexpr char rosetteNumber8[] = "\xef\x96\x97"; + inline constexpr char rosetteNumber9[] = "\xef\x96\x98"; + inline constexpr char rotate[] = "\xee\xac\x96"; + inline constexpr char rotate2[] = "\xee\xae\xb4"; + inline constexpr char rotate360[] = "\xee\xbe\x85"; + inline constexpr char rotate3d[] = "\xef\x80\xa0"; + inline constexpr char rotateClockwise[] = "\xee\xac\x95"; + inline constexpr char rotateClockwise2[] = "\xee\xae\xb5"; + inline constexpr char rotateDot[] = "\xee\xbf\xa5"; + inline constexpr char rotateRectangle[] = "\xee\xb0\x95"; + inline constexpr char roulette[] = "\xf0\x90\x89\x9e"; + inline constexpr char route[] = "\xee\xac\x97"; + inline constexpr char route2[] = "\xef\x92\xb6"; + inline constexpr char routeAltLeft[] = "\xef\xb2\xa9"; + inline constexpr char routeAltRight[] = "\xef\xb2\xaa"; + inline constexpr char routeOff[] = "\xef\x86\x94"; + inline constexpr char routeScan[] = "\xef\xb2\xbf"; + inline constexpr char routeSquare[] = "\xef\xb2\xac"; + inline constexpr char routeSquare2[] = "\xef\xb2\xab"; + inline constexpr char routeX[] = "\xef\xb2\xae"; + inline constexpr char routeX2[] = "\xef\xb2\xad"; + inline constexpr char router[] = "\xee\xac\x98"; + inline constexpr char routerOff[] = "\xef\x90\xa4"; + inline constexpr char rowInsertBottom[] = "\xee\xbb\x90"; + inline constexpr char rowInsertTop[] = "\xee\xbb\x91"; + inline constexpr char rowRemove[] = "\xef\xab\xbe"; + inline constexpr char rss[] = "\xee\xac\x99"; + inline constexpr char rubberStamp[] = "\xef\x96\xab"; + inline constexpr char rubberStampOff[] = "\xef\x96\xaa"; + inline constexpr char rugby[] = "\xf0\x90\x89\x87"; + inline constexpr char ruler[] = "\xee\xac\x9a"; + inline constexpr char ruler2[] = "\xee\xbb\x92"; + inline constexpr char ruler2Off[] = "\xef\x86\x95"; + inline constexpr char ruler3[] = "\xef\x8a\x90"; + inline constexpr char rulerMeasure[] = "\xef\x8a\x91"; + inline constexpr char rulerMeasure2[] = "\xef\xbc\x8f"; + inline constexpr char rulerOff[] = "\xef\x86\x96"; + inline constexpr char run[] = "\xee\xb2\x82"; + inline constexpr char rvTruck[] = "\xef\xb3\x80"; + inline constexpr char sTurnDown[] = "\xef\x94\x96"; + inline constexpr char sTurnLeft[] = "\xef\x94\x97"; + inline constexpr char sTurnRight[] = "\xef\x94\x98"; + inline constexpr char sTurnUp[] = "\xef\x94\x99"; + inline constexpr char sailboat[] = "\xee\xb2\x83"; + inline constexpr char sailboat2[] = "\xef\x97\xb7"; + inline constexpr char sailboatOff[] = "\xef\x90\xa5"; + inline constexpr char salad[] = "\xef\x94\x8a"; + inline constexpr char salt[] = "\xee\xbc\x96"; + inline constexpr char sandbox[] = "\xef\xb5\xac"; + inline constexpr char satellite[] = "\xee\xbb\x93"; + inline constexpr char satelliteOff[] = "\xef\x86\x97"; + inline constexpr char sausage[] = "\xee\xbc\x97"; + inline constexpr char scale[] = "\xee\xaf\x82"; + inline constexpr char scaleOff[] = "\xef\x86\x98"; + inline constexpr char scaleOutline[] = "\xee\xbd\x93"; + inline constexpr char scaleOutlineOff[] = "\xef\x86\x99"; + inline constexpr char scan[] = "\xee\xaf\x88"; + inline constexpr char scanCube[] = "\xf0\x90\x89\x9d"; + inline constexpr char scanEye[] = "\xef\x87\xbf"; + inline constexpr char scanLetterA[] = "\xf0\x90\x88\xa3"; + inline constexpr char scanLetterT[] = "\xf0\x90\x88\xa2"; + inline constexpr char scanPosition[] = "\xef\xb6\xac"; + inline constexpr char scanTraces[] = "\xf0\x90\x87\xac"; + inline constexpr char schema[] = "\xef\x88\x80"; + inline constexpr char schemaOff[] = "\xef\x90\xa6"; + inline constexpr char school[] = "\xee\xb3\xb7"; + inline constexpr char schoolBell[] = "\xef\x99\x8a"; + inline constexpr char schoolOff[] = "\xef\x86\x9a"; + inline constexpr char scissors[] = "\xee\xac\x9b"; + inline constexpr char scissorsOff[] = "\xef\x86\x9b"; + inline constexpr char scooter[] = "\xee\xb1\xac"; + inline constexpr char scooterElectric[] = "\xee\xb3\x81"; + inline constexpr char scoreboard[] = "\xef\xa9\xab"; + inline constexpr char screenShare[] = "\xee\xb4\x98"; + inline constexpr char screenShareOff[] = "\xee\xb4\x97"; + inline constexpr char screenshot[] = "\xef\x88\x81"; + inline constexpr char scribble[] = "\xef\x82\xa3"; + inline constexpr char scribbleOff[] = "\xef\x90\xa7"; + inline constexpr char script[] = "\xef\x8b\x9a"; + inline constexpr char scriptMinus[] = "\xef\x8b\x97"; + inline constexpr char scriptPlus[] = "\xef\x8b\x98"; + inline constexpr char scriptX[] = "\xef\x8b\x99"; + inline constexpr char scubaDiving[] = "\xef\xb5\x8e"; + inline constexpr char scubaDivingTank[] = "\xef\xbb\xba"; + inline constexpr char scubaMask[] = "\xee\xbb\x94"; + inline constexpr char scubaMaskOff[] = "\xef\x90\xa8"; + inline constexpr char sdk[] = "\xef\x8e\xaf"; + inline constexpr char search[] = "\xee\xac\x9c"; + inline constexpr char searchOff[] = "\xef\x86\x9c"; + inline constexpr char section[] = "\xee\xbb\x95"; + inline constexpr char sectionSign[] = "\xef\x80\x99"; + inline constexpr char seedling[] = "\xee\xb5\x91"; + inline constexpr char seedlingOff[] = "\xef\x86\x9d"; + inline constexpr char segway[] = "\xf0\x90\x88\xa1"; + inline constexpr char select[] = "\xee\xb2\x9e"; + inline constexpr char selectAll[] = "\xef\xa7\xb7"; + inline constexpr char selector[] = "\xee\xac\x9d"; + inline constexpr char send[] = "\xee\xac\x9e"; + inline constexpr char send2[] = "\xef\xb5\x9d"; + inline constexpr char sendOff[] = "\xef\x90\xa9"; + inline constexpr char seo[] = "\xef\x89\xab"; + inline constexpr char separator[] = "\xee\xaf\x9a"; + inline constexpr char separatorHorizontal[] = "\xee\xb1\xb9"; + inline constexpr char separatorVertical[] = "\xee\xb1\xba"; + inline constexpr char server[] = "\xee\xac\x9f"; + inline constexpr char server2[] = "\xef\x81\xbc"; + inline constexpr char serverBolt[] = "\xef\x8c\xa0"; + inline constexpr char serverCog[] = "\xef\x8c\xa1"; + inline constexpr char serverOff[] = "\xef\x86\x9e"; + inline constexpr char serverSpark[] = "\xef\xbe\xaf"; + inline constexpr char serverless[] = "\xf0\x90\x87\xab"; + inline constexpr char servicemark[] = "\xee\xb0\x89"; + inline constexpr char settings[] = "\xee\xac\xa0"; + inline constexpr char settings2[] = "\xef\x96\xac"; + inline constexpr char settingsAi[] = "\xf0\x90\x86\xa7"; + inline constexpr char settingsAutomation[] = "\xee\xbb\x96"; + inline constexpr char settingsBolt[] = "\xef\xa6\xad"; + inline constexpr char settingsCancel[] = "\xef\xa6\xae"; + inline constexpr char settingsCheck[] = "\xef\xa6\xaf"; + inline constexpr char settingsCode[] = "\xef\xa6\xb0"; + inline constexpr char settingsCog[] = "\xef\xa6\xb1"; + inline constexpr char settingsDollar[] = "\xef\xa6\xb2"; + inline constexpr char settingsDown[] = "\xef\xa6\xb3"; + inline constexpr char settingsExclamation[] = "\xef\xa6\xb4"; + inline constexpr char settingsHeart[] = "\xef\xa6\xb5"; + inline constexpr char settingsMinus[] = "\xef\xa6\xb6"; + inline constexpr char settingsOff[] = "\xef\x86\x9f"; + inline constexpr char settingsPause[] = "\xef\xa6\xb7"; + inline constexpr char settingsPin[] = "\xef\xa6\xb8"; + inline constexpr char settingsPlus[] = "\xef\xa6\xb9"; + inline constexpr char settingsQuestion[] = "\xef\xa6\xba"; + inline constexpr char settingsSearch[] = "\xef\xa6\xbb"; + inline constexpr char settingsShare[] = "\xef\xa6\xbc"; + inline constexpr char settingsSpark[] = "\xef\xbe\xae"; + inline constexpr char settingsStar[] = "\xef\xa6\xbd"; + inline constexpr char settingsUp[] = "\xef\xa6\xbe"; + inline constexpr char settingsX[] = "\xef\xa6\xbf"; + inline constexpr char shadow[] = "\xee\xbb\x98"; + inline constexpr char shadowOff[] = "\xee\xbb\x97"; + inline constexpr char shape[] = "\xee\xae\x9c"; + inline constexpr char shape2[] = "\xee\xbb\x99"; + inline constexpr char shape3[] = "\xee\xbb\x9a"; + inline constexpr char shapeOff[] = "\xef\x86\xa0"; + inline constexpr char share[] = "\xee\xac\xa1"; + inline constexpr char share2[] = "\xef\x9e\x99"; + inline constexpr char share3[] = "\xef\x9e\xbd"; + inline constexpr char shareOff[] = "\xef\x86\xa1"; + inline constexpr char shareplay[] = "\xef\xba\xa5"; + inline constexpr char shield[] = "\xee\xac\xa4"; + inline constexpr char shieldBolt[] = "\xef\xa7\x80"; + inline constexpr char shieldCancel[] = "\xef\xa7\x81"; + inline constexpr char shieldCheck[] = "\xee\xac\xa2"; + inline constexpr char shieldCheckered[] = "\xee\xbe\x9a"; + inline constexpr char shieldChevron[] = "\xee\xbe\x9b"; + inline constexpr char shieldCode[] = "\xef\xa7\x82"; + inline constexpr char shieldCog[] = "\xef\xa7\x83"; + inline constexpr char shieldDollar[] = "\xef\xa7\x84"; + inline constexpr char shieldDown[] = "\xef\xa7\x85"; + inline constexpr char shieldExclamation[] = "\xef\xa7\x86"; + inline constexpr char shieldHalf[] = "\xef\x8d\x98"; + inline constexpr char shieldHeart[] = "\xef\xa7\x87"; + inline constexpr char shieldLock[] = "\xee\xb5\x98"; + inline constexpr char shieldMinus[] = "\xef\xa7\x88"; + inline constexpr char shieldOff[] = "\xee\xb3\xb8"; + inline constexpr char shieldPause[] = "\xef\xa7\x89"; + inline constexpr char shieldPin[] = "\xef\xa7\x8a"; + inline constexpr char shieldPlus[] = "\xef\xa7\x8b"; + inline constexpr char shieldQuestion[] = "\xef\xa7\x8c"; + inline constexpr char shieldSearch[] = "\xef\xa7\x8d"; + inline constexpr char shieldShare[] = "\xef\xa7\x8e"; + inline constexpr char shieldStar[] = "\xef\xa7\x8f"; + inline constexpr char shieldUp[] = "\xef\xa7\x90"; + inline constexpr char shieldX[] = "\xee\xac\xa3"; + inline constexpr char ship[] = "\xee\xb2\x84"; + inline constexpr char shipOff[] = "\xef\x90\xaa"; + inline constexpr char shirt[] = "\xee\xb0\x8a"; + inline constexpr char shirtOff[] = "\xef\x86\xa2"; + inline constexpr char shirtSport[] = "\xef\x89\xac"; + inline constexpr char shoe[] = "\xee\xbf\x92"; + inline constexpr char shoeOff[] = "\xef\x86\xa4"; + inline constexpr char shoppingBag[] = "\xef\x97\xb8"; + inline constexpr char shoppingBagCheck[] = "\xef\xb0\x96"; + inline constexpr char shoppingBagDiscount[] = "\xef\xb0\x97"; + inline constexpr char shoppingBagEdit[] = "\xef\xb0\x98"; + inline constexpr char shoppingBagExclamation[] = "\xef\xb0\x99"; + inline constexpr char shoppingBagHeart[] = "\xef\xb6\xa2"; + inline constexpr char shoppingBagMinus[] = "\xef\xb0\x9a"; + inline constexpr char shoppingBagPlus[] = "\xef\xb0\x9b"; + inline constexpr char shoppingBagSearch[] = "\xef\xb0\x9c"; + inline constexpr char shoppingBagX[] = "\xef\xb0\x9d"; + inline constexpr char shoppingCart[] = "\xee\xac\xa5"; + inline constexpr char shoppingCartBolt[] = "\xef\xad\x97"; + inline constexpr char shoppingCartCancel[] = "\xef\xad\x98"; + inline constexpr char shoppingCartCheck[] = "\xef\xad\x99"; + inline constexpr char shoppingCartCode[] = "\xef\xad\x9a"; + inline constexpr char shoppingCartCog[] = "\xef\xad\x9b"; + inline constexpr char shoppingCartCopy[] = "\xef\xad\x9c"; + inline constexpr char shoppingCartDiscount[] = "\xef\xad\x9d"; + inline constexpr char shoppingCartDollar[] = "\xef\xad\x9e"; + inline constexpr char shoppingCartDown[] = "\xef\xad\x9f"; + inline constexpr char shoppingCartExclamation[] = "\xef\xad\xa0"; + inline constexpr char shoppingCartHeart[] = "\xef\xad\xa1"; + inline constexpr char shoppingCartMinus[] = "\xef\xad\xa2"; + inline constexpr char shoppingCartOff[] = "\xee\xbb\x9c"; + inline constexpr char shoppingCartPause[] = "\xef\xad\xa3"; + inline constexpr char shoppingCartPin[] = "\xef\xad\xa4"; + inline constexpr char shoppingCartPlus[] = "\xef\xad\xa5"; + inline constexpr char shoppingCartQuestion[] = "\xef\xad\xa6"; + inline constexpr char shoppingCartSearch[] = "\xef\xad\xa7"; + inline constexpr char shoppingCartShare[] = "\xef\xad\xa8"; + inline constexpr char shoppingCartStar[] = "\xef\xad\xa9"; + inline constexpr char shoppingCartUp[] = "\xef\xad\xaa"; + inline constexpr char shoppingCartX[] = "\xef\xad\xab"; + inline constexpr char shovel[] = "\xef\x87\x99"; + inline constexpr char shovelPitchforks[] = "\xef\xb4\xba"; + inline constexpr char shredder[] = "\xee\xbb\x9f"; + inline constexpr char signLeft[] = "\xef\x81\xab"; + inline constexpr char signRight[] = "\xef\x81\xac"; + inline constexpr char signal2g[] = "\xef\x9e\x9a"; + inline constexpr char signal3g[] = "\xef\x87\xae"; + inline constexpr char signal4g[] = "\xef\x87\xaf"; + inline constexpr char signal4gPlus[] = "\xef\x89\x99"; + inline constexpr char signal5g[] = "\xef\x87\xb0"; + inline constexpr char signal6g[] = "\xef\xa7\xb8"; + inline constexpr char signalE[] = "\xef\xa7\xb9"; + inline constexpr char signalG[] = "\xef\xa7\xba"; + inline constexpr char signalH[] = "\xef\xa7\xbc"; + inline constexpr char signalHPlus[] = "\xef\xa7\xbb"; + inline constexpr char signalLte[] = "\xef\xa7\xbd"; + inline constexpr char signature[] = "\xee\xbb\xa0"; + inline constexpr char signatureOff[] = "\xef\x86\xa5"; + inline constexpr char sitemap[] = "\xee\xae\x9d"; + inline constexpr char sitemapOff[] = "\xef\x86\xa6"; + inline constexpr char skateboard[] = "\xee\xb3\x82"; + inline constexpr char skateboardOff[] = "\xef\x90\xab"; + inline constexpr char skateboarding[] = "\xef\xab\x8a"; + inline constexpr char sketching[] = "\xf0\x90\x89\x9c"; + inline constexpr char skewX[] = "\xef\xb4\xbb"; + inline constexpr char skewY[] = "\xef\xb4\xbc"; + inline constexpr char skiJumping[] = "\xef\xa9\xac"; + inline constexpr char skull[] = "\xef\x8a\x92"; + inline constexpr char slash[] = "\xef\x93\xb9"; + inline constexpr char slashes[] = "\xef\x96\x88"; + inline constexpr char sleigh[] = "\xee\xbe\x9c"; + inline constexpr char slice[] = "\xee\xaf\x9b"; + inline constexpr char slideshow[] = "\xee\xaf\x89"; + inline constexpr char smartHome[] = "\xee\xb3\x9e"; + inline constexpr char smartHomeOff[] = "\xef\x86\xa7"; + inline constexpr char smoking[] = "\xee\xb3\x84"; + inline constexpr char smokingNo[] = "\xee\xb3\x83"; + inline constexpr char snowboarding[] = "\xef\xb5\x8f"; + inline constexpr char snowflake[] = "\xee\xb0\x8b"; + inline constexpr char snowflakeOff[] = "\xef\x86\xa8"; + inline constexpr char snowman[] = "\xef\x89\xad"; + inline constexpr char soccerField[] = "\xee\xb6\x92"; + inline constexpr char social[] = "\xee\xaf\xac"; + inline constexpr char socialOff[] = "\xef\x86\xa9"; + inline constexpr char sock[] = "\xee\xbb\xa1"; + inline constexpr char sofa[] = "\xee\xbe\xaf"; + inline constexpr char sofaOff[] = "\xef\x90\xac"; + inline constexpr char solarElectricity[] = "\xef\xb3\x81"; + inline constexpr char solarPanel[] = "\xef\x9e\xbf"; + inline constexpr char solarPanel2[] = "\xef\x9e\xbe"; + inline constexpr char sort09[] = "\xef\x95\x8d"; + inline constexpr char sort90[] = "\xef\x95\x8e"; + inline constexpr char sortAZ[] = "\xef\x95\x8f"; + inline constexpr char sortAscending[] = "\xee\xac\xa6"; + inline constexpr char sortAscending2[] = "\xee\xbb\xa2"; + inline constexpr char sortAscendingLetters[] = "\xee\xbc\x98"; + inline constexpr char sortAscendingNumbers[] = "\xee\xbc\x99"; + inline constexpr char sortAscendingShapes[] = "\xef\xb6\x94"; + inline constexpr char sortAscendingSmallBig[] = "\xef\xb6\x95"; + inline constexpr char sortDescending[] = "\xee\xac\xa7"; + inline constexpr char sortDescending2[] = "\xee\xbb\xa3"; + inline constexpr char sortDescendingLetters[] = "\xee\xbc\x9a"; + inline constexpr char sortDescendingNumbers[] = "\xee\xbc\x9b"; + inline constexpr char sortDescendingShapes[] = "\xef\xb6\x97"; + inline constexpr char sortDescendingSmallBig[] = "\xef\xb6\x96"; + inline constexpr char sortZA[] = "\xef\x95\x90"; + inline constexpr char sos[] = "\xef\x89\x8a"; + inline constexpr char soup[] = "\xee\xbc\xae"; + inline constexpr char soupOff[] = "\xef\x90\xad"; + inline constexpr char sourceCode[] = "\xef\x92\xa2"; + inline constexpr char space[] = "\xee\xb0\x8c"; + inline constexpr char spaceOff[] = "\xef\x86\xaa"; + inline constexpr char spaces[] = "\xef\xba\xa4"; + inline constexpr char spacingHorizontal[] = "\xee\xbd\x94"; + inline constexpr char spacingVertical[] = "\xee\xbd\x95"; + inline constexpr char spade[] = "\xee\xbf\xba"; + inline constexpr char sparkle[] = "\xf0\x90\x89\x99"; + inline constexpr char sparkle2[] = "\xf0\x90\x89\x9b"; + inline constexpr char sparkleHighlight[] = "\xf0\x90\x89\x9a"; + inline constexpr char sparkles[] = "\xef\x9b\x97"; + inline constexpr char sparkles2[] = "\xf0\x90\x86\xa6"; + inline constexpr char speakerphone[] = "\xee\xb5\xa1"; + inline constexpr char speedboat[] = "\xee\xb6\x93"; + inline constexpr char sphere[] = "\xef\xaa\xb8"; + inline constexpr char sphere2[] = "\xf0\x90\x89\x98"; + inline constexpr char sphereOff[] = "\xef\xaa\xb6"; + inline constexpr char spherePlus[] = "\xef\xaa\xb7"; + inline constexpr char spider[] = "\xef\x8a\x93"; + inline constexpr char spiral[] = "\xef\x8a\x94"; + inline constexpr char spiralOff[] = "\xef\x90\xae"; + inline constexpr char sportBilliard[] = "\xee\xbb\xa4"; + inline constexpr char spray[] = "\xef\x94\x8b"; + inline constexpr char spy[] = "\xef\x88\xa7"; + inline constexpr char spyOff[] = "\xef\x90\xaf"; + inline constexpr char sql[] = "\xef\x9f\x80"; + inline constexpr char square[] = "\xee\xac\xac"; + inline constexpr char squareArrowDown[] = "\xef\x92\xb7"; + inline constexpr char squareArrowLeft[] = "\xef\x92\xb8"; + inline constexpr char squareArrowRight[] = "\xef\x92\xb9"; + inline constexpr char squareArrowUp[] = "\xef\x92\xba"; + inline constexpr char squareAsterisk[] = "\xef\x80\x9a"; + inline constexpr char squareCheck[] = "\xee\xac\xa8"; + inline constexpr char squareChevronDown[] = "\xef\x98\xa7"; + inline constexpr char squareChevronLeft[] = "\xef\x98\xa8"; + inline constexpr char squareChevronRight[] = "\xef\x98\xa9"; + inline constexpr char squareChevronUp[] = "\xef\x98\xaa"; + inline constexpr char squareChevronsDown[] = "\xef\x99\x8b"; + inline constexpr char squareChevronsLeft[] = "\xef\x99\x8c"; + inline constexpr char squareChevronsRight[] = "\xef\x99\x8d"; + inline constexpr char squareChevronsUp[] = "\xef\x99\x8e"; + inline constexpr char squareDashed[] = "\xf0\x90\x82\xbb"; + inline constexpr char squareDot[] = "\xee\xb5\x99"; + inline constexpr char squareF0[] = "\xef\x94\xa6"; + inline constexpr char squareF1[] = "\xef\x94\xa7"; + inline constexpr char squareF2[] = "\xef\x94\xa8"; + inline constexpr char squareF3[] = "\xef\x94\xa9"; + inline constexpr char squareF4[] = "\xef\x94\xaa"; + inline constexpr char squareF5[] = "\xef\x94\xab"; + inline constexpr char squareF6[] = "\xef\x94\xac"; + inline constexpr char squareF7[] = "\xef\x94\xad"; + inline constexpr char squareF8[] = "\xef\x94\xae"; + inline constexpr char squareF9[] = "\xef\x94\xaf"; + inline constexpr char squareForbid[] = "\xee\xb5\x9b"; + inline constexpr char squareForbid2[] = "\xee\xb5\x9a"; + inline constexpr char squareHalf[] = "\xee\xbf\xbb"; + inline constexpr char squareKey[] = "\xef\x98\xb8"; + inline constexpr char squareLetterA[] = "\xef\x91\xbc"; + inline constexpr char squareLetterB[] = "\xef\x91\xbd"; + inline constexpr char squareLetterC[] = "\xef\x91\xbe"; + inline constexpr char squareLetterD[] = "\xef\x91\xbf"; + inline constexpr char squareLetterE[] = "\xef\x92\x80"; + inline constexpr char squareLetterF[] = "\xef\x92\x81"; + inline constexpr char squareLetterG[] = "\xef\x92\x82"; + inline constexpr char squareLetterH[] = "\xef\x92\x83"; + inline constexpr char squareLetterI[] = "\xef\x92\x84"; + inline constexpr char squareLetterJ[] = "\xef\x92\x85"; + inline constexpr char squareLetterK[] = "\xef\x92\x86"; + inline constexpr char squareLetterL[] = "\xef\x92\x87"; + inline constexpr char squareLetterM[] = "\xef\x92\x88"; + inline constexpr char squareLetterN[] = "\xef\x92\x89"; + inline constexpr char squareLetterO[] = "\xef\x92\x8a"; + inline constexpr char squareLetterP[] = "\xef\x92\x8b"; + inline constexpr char squareLetterQ[] = "\xef\x92\x8c"; + inline constexpr char squareLetterR[] = "\xef\x92\x8d"; + inline constexpr char squareLetterS[] = "\xef\x92\x8e"; + inline constexpr char squareLetterT[] = "\xef\x92\x8f"; + inline constexpr char squareLetterU[] = "\xef\x92\x90"; + inline constexpr char squareLetterV[] = "\xef\x92\xbb"; + inline constexpr char squareLetterW[] = "\xef\x92\x91"; + inline constexpr char squareLetterX[] = "\xef\x92\xbc"; + inline constexpr char squareLetterY[] = "\xef\x92\x92"; + inline constexpr char squareLetterZ[] = "\xef\x92\x93"; + inline constexpr char squareMinus[] = "\xf0\x90\x86\x9e"; + inline constexpr char squareMinus2[] = "\xee\xac\xa9"; + inline constexpr char squareNumber0[] = "\xee\xbb\xa5"; + inline constexpr char squareNumber1[] = "\xee\xbb\xa6"; + inline constexpr char squareNumber2[] = "\xee\xbb\xa7"; + inline constexpr char squareNumber3[] = "\xee\xbb\xa8"; + inline constexpr char squareNumber4[] = "\xee\xbb\xa9"; + inline constexpr char squareNumber5[] = "\xee\xbb\xaa"; + inline constexpr char squareNumber6[] = "\xee\xbb\xab"; + inline constexpr char squareNumber7[] = "\xee\xbb\xac"; + inline constexpr char squareNumber8[] = "\xee\xbb\xad"; + inline constexpr char squareNumber9[] = "\xee\xbb\xae"; + inline constexpr char squareOff[] = "\xee\xbb\xaf"; + inline constexpr char squarePercentage[] = "\xef\xb6\x83"; + inline constexpr char squarePlus[] = "\xee\xac\xaa"; + inline constexpr char squarePlus2[] = "\xef\xb2\x96"; + inline constexpr char squareRoot[] = "\xee\xbb\xb1"; + inline constexpr char squareRoot2[] = "\xee\xbb\xb0"; + inline constexpr char squareRotated[] = "\xee\xb3\x9f"; + inline constexpr char squareRotatedAsterisk[] = "\xf0\x90\x86\xa5"; + inline constexpr char squareRotatedForbid[] = "\xef\x80\x9c"; + inline constexpr char squareRotatedForbid2[] = "\xef\x80\x9b"; + inline constexpr char squareRotatedOff[] = "\xee\xbb\xb2"; + inline constexpr char squareRounded[] = "\xef\x96\x9a"; + inline constexpr char squareRoundedArrowDown[] = "\xef\x98\xb9"; + inline constexpr char squareRoundedArrowLeft[] = "\xef\x98\xba"; + inline constexpr char squareRoundedArrowRight[] = "\xef\x98\xbb"; + inline constexpr char squareRoundedArrowUp[] = "\xef\x98\xbc"; + inline constexpr char squareRoundedCheck[] = "\xef\x98\xbd"; + inline constexpr char squareRoundedChevronDown[] = "\xef\x98\xab"; + inline constexpr char squareRoundedChevronLeft[] = "\xef\x98\xac"; + inline constexpr char squareRoundedChevronRight[] = "\xef\x98\xad"; + inline constexpr char squareRoundedChevronUp[] = "\xef\x98\xae"; + inline constexpr char squareRoundedChevronsDown[] = "\xef\x99\x8f"; + inline constexpr char squareRoundedChevronsLeft[] = "\xef\x99\x90"; + inline constexpr char squareRoundedChevronsRight[] = "\xef\x99\x91"; + inline constexpr char squareRoundedChevronsUp[] = "\xef\x99\x92"; + inline constexpr char squareRoundedLetterA[] = "\xef\x96\xae"; + inline constexpr char squareRoundedLetterB[] = "\xef\x96\xaf"; + inline constexpr char squareRoundedLetterC[] = "\xef\x96\xb0"; + inline constexpr char squareRoundedLetterD[] = "\xef\x96\xb1"; + inline constexpr char squareRoundedLetterE[] = "\xef\x96\xb2"; + inline constexpr char squareRoundedLetterF[] = "\xef\x96\xb3"; + inline constexpr char squareRoundedLetterG[] = "\xef\x96\xb4"; + inline constexpr char squareRoundedLetterH[] = "\xef\x96\xb5"; + inline constexpr char squareRoundedLetterI[] = "\xef\x96\xb6"; + inline constexpr char squareRoundedLetterJ[] = "\xef\x96\xb7"; + inline constexpr char squareRoundedLetterK[] = "\xef\x96\xb8"; + inline constexpr char squareRoundedLetterL[] = "\xef\x96\xb9"; + inline constexpr char squareRoundedLetterM[] = "\xef\x96\xba"; + inline constexpr char squareRoundedLetterN[] = "\xef\x96\xbb"; + inline constexpr char squareRoundedLetterO[] = "\xef\x96\xbc"; + inline constexpr char squareRoundedLetterP[] = "\xef\x96\xbd"; + inline constexpr char squareRoundedLetterQ[] = "\xef\x96\xbe"; + inline constexpr char squareRoundedLetterR[] = "\xef\x96\xbf"; + inline constexpr char squareRoundedLetterS[] = "\xef\x97\x80"; + inline constexpr char squareRoundedLetterT[] = "\xef\x97\x81"; + inline constexpr char squareRoundedLetterU[] = "\xef\x97\x82"; + inline constexpr char squareRoundedLetterV[] = "\xef\x97\x83"; + inline constexpr char squareRoundedLetterW[] = "\xef\x97\x84"; + inline constexpr char squareRoundedLetterX[] = "\xef\x97\x85"; + inline constexpr char squareRoundedLetterY[] = "\xef\x97\x86"; + inline constexpr char squareRoundedLetterZ[] = "\xef\x97\x87"; + inline constexpr char squareRoundedMinus[] = "\xef\x98\xbe"; + inline constexpr char squareRoundedMinus2[] = "\xef\xb2\x97"; + inline constexpr char squareRoundedNumber0[] = "\xef\x97\x88"; + inline constexpr char squareRoundedNumber1[] = "\xef\x97\x89"; + inline constexpr char squareRoundedNumber2[] = "\xef\x97\x8a"; + inline constexpr char squareRoundedNumber3[] = "\xef\x97\x8b"; + inline constexpr char squareRoundedNumber4[] = "\xef\x97\x8c"; + inline constexpr char squareRoundedNumber5[] = "\xef\x97\x8d"; + inline constexpr char squareRoundedNumber6[] = "\xef\x97\x8e"; + inline constexpr char squareRoundedNumber7[] = "\xef\x97\x8f"; + inline constexpr char squareRoundedNumber8[] = "\xef\x97\x90"; + inline constexpr char squareRoundedNumber9[] = "\xef\x97\x91"; + inline constexpr char squareRoundedPercentage[] = "\xef\xb6\x84"; + inline constexpr char squareRoundedPlus[] = "\xef\x98\xbf"; + inline constexpr char squareRoundedPlus2[] = "\xef\xb2\x98"; + inline constexpr char squareRoundedX[] = "\xef\x99\x80"; + inline constexpr char squareToggle[] = "\xee\xbb\xb4"; + inline constexpr char squareToggleHorizontal[] = "\xee\xbb\xb3"; + inline constexpr char squareX[] = "\xee\xac\xab"; + inline constexpr char squares[] = "\xee\xbb\xb6"; + inline constexpr char squaresDiagonal[] = "\xee\xbb\xb5"; + inline constexpr char squaresSelected[] = "\xef\xba\xa3"; + inline constexpr char stack[] = "\xee\xac\xad"; + inline constexpr char stack2[] = "\xee\xbb\xb7"; + inline constexpr char stack3[] = "\xee\xbe\x9d"; + inline constexpr char stackBack[] = "\xef\xb4\xa6"; + inline constexpr char stackBackward[] = "\xef\xb4\xa7"; + inline constexpr char stackForward[] = "\xef\xb4\xa8"; + inline constexpr char stackFront[] = "\xef\xb4\xa9"; + inline constexpr char stackMiddle[] = "\xef\xb4\xaa"; + inline constexpr char stackPop[] = "\xef\x88\xb4"; + inline constexpr char stackPush[] = "\xef\x88\xb5"; + inline constexpr char stairs[] = "\xee\xb2\xa6"; + inline constexpr char stairsDown[] = "\xee\xb2\xa4"; + inline constexpr char stairsUp[] = "\xee\xb2\xa5"; + inline constexpr char star[] = "\xee\xac\xae"; + inline constexpr char starHalf[] = "\xee\xb4\x99"; + inline constexpr char starOff[] = "\xee\xb5\xa2"; + inline constexpr char stars[] = "\xee\xb4\xb8"; + inline constexpr char starsOff[] = "\xef\x90\xb0"; + inline constexpr char statusChange[] = "\xef\x8e\xb0"; + inline constexpr char steam[] = "\xef\x89\x8b"; + inline constexpr char steeringWheel[] = "\xee\xb1\xbb"; + inline constexpr char steeringWheelOff[] = "\xef\x90\xb1"; + inline constexpr char stepInto[] = "\xee\xb3\xa0"; + inline constexpr char stepOut[] = "\xee\xb3\xa1"; + inline constexpr char stereoGlasses[] = "\xef\x93\x8b"; + inline constexpr char stethoscope[] = "\xee\xb6\xbe"; + inline constexpr char stethoscopeOff[] = "\xef\x90\xb2"; + inline constexpr char sticker[] = "\xee\xac\xaf"; + inline constexpr char sticker2[] = "\xef\xb4\xbd"; + inline constexpr char stopwatch[] = "\xef\xbe\x9b"; + inline constexpr char storm[] = "\xef\x89\x8c"; + inline constexpr char stormOff[] = "\xef\x90\xb3"; + inline constexpr char stretching[] = "\xef\x8b\x9b"; + inline constexpr char stretching2[] = "\xef\xa9\xad"; + inline constexpr char strikethrough[] = "\xee\xae\x9e"; + inline constexpr char strokeCurved[] = "\xf0\x90\x87\xbe"; + inline constexpr char strokeDynamic[] = "\xf0\x90\x87\xbd"; + inline constexpr char strokeStraight[] = "\xf0\x90\x87\xbc"; + inline constexpr char submarine[] = "\xee\xb6\x94"; + inline constexpr char subscript[] = "\xee\xae\x9f"; + inline constexpr char subtask[] = "\xee\xb2\x9f"; + inline constexpr char subtitles[] = "\xf0\x90\x86\xa1"; + inline constexpr char subtitlesAi[] = "\xf0\x90\x86\xa4"; + inline constexpr char subtitlesEdit[] = "\xf0\x90\x86\xa3"; + inline constexpr char subtitlesOff[] = "\xf0\x90\x86\xa2"; + inline constexpr char sum[] = "\xee\xad\xb3"; + inline constexpr char sumOff[] = "\xef\x86\xab"; + inline constexpr char sun[] = "\xee\xac\xb0"; + inline constexpr char sunElectricity[] = "\xef\xb3\x82"; + inline constexpr char sunHigh[] = "\xef\x88\xb6"; + inline constexpr char sunLow[] = "\xef\x88\xb7"; + inline constexpr char sunMoon[] = "\xef\x92\xa3"; + inline constexpr char sunOff[] = "\xee\xb5\xa3"; + inline constexpr char sunWind[] = "\xef\x88\xb8"; + inline constexpr char sunglasses[] = "\xef\x88\xb9"; + inline constexpr char sunrise[] = "\xee\xbc\x9c"; + inline constexpr char sunset[] = "\xee\xb0\xb1"; + inline constexpr char sunset2[] = "\xef\x88\xba"; + inline constexpr char superscript[] = "\xee\xae\xa0"; + inline constexpr char svg[] = "\xef\x89\x9a"; + inline constexpr char swimming[] = "\xee\xb2\x92"; + inline constexpr char swipe[] = "\xef\x95\x91"; + inline constexpr char swipeDown[] = "\xef\xb5\x9e"; + inline constexpr char swipeLeft[] = "\xef\xb5\x9f"; + inline constexpr char swipeRight[] = "\xef\xb5\xa0"; + inline constexpr char swipeUp[] = "\xef\xb5\xa1"; + inline constexpr char switchIcon[] = "\xee\xac\xb3"; + inline constexpr char switch2[] = "\xee\xb6\xbf"; + inline constexpr char switch3[] = "\xee\xb7\x80"; + inline constexpr char switchHorizontal[] = "\xee\xac\xb1"; + inline constexpr char switchVertical[] = "\xee\xac\xb2"; + inline constexpr char sword[] = "\xef\x80\xb0"; + inline constexpr char swordOff[] = "\xef\x90\xb4"; + inline constexpr char swords[] = "\xef\x84\xb2"; + inline constexpr char tabClose[] = "\xf0\x90\x89\xb0"; + inline constexpr char table[] = "\xee\xae\xa1"; + inline constexpr char tableAlias[] = "\xef\x89\x9b"; + inline constexpr char tableColumn[] = "\xef\xab\xbf"; + inline constexpr char tableDashed[] = "\xf0\x90\x82\xba"; + inline constexpr char tableDown[] = "\xef\xa8\x9c"; + inline constexpr char tableExport[] = "\xee\xbb\xb8"; + inline constexpr char tableHeart[] = "\xef\xa8\x9d"; + inline constexpr char tableImport[] = "\xee\xbb\xb9"; + inline constexpr char tableMinus[] = "\xef\xa8\x9e"; + inline constexpr char tableOff[] = "\xee\xbb\xba"; + inline constexpr char tableOptions[] = "\xef\x89\x9c"; + inline constexpr char tablePlus[] = "\xef\xa8\x9f"; + inline constexpr char tableRow[] = "\xef\xac\x80"; + inline constexpr char tableShare[] = "\xef\xa8\xa0"; + inline constexpr char tableShortcut[] = "\xef\x89\x9d"; + inline constexpr char tableSpark[] = "\xef\xbe\xad"; + inline constexpr char tag[] = "\xf0\x90\x82\x96"; + inline constexpr char tagMinus[] = "\xee\xac\xb4"; + inline constexpr char tagOff[] = "\xee\xbf\x80"; + inline constexpr char tagPlus[] = "\xf0\x90\x82\x97"; + inline constexpr char tagStarred[] = "\xef\xb2\x99"; + inline constexpr char tags[] = "\xee\xbe\x86"; + inline constexpr char tagsOff[] = "\xee\xbf\x81"; + inline constexpr char taiwanDollar[] = "\xf0\x90\x89\x86"; + inline constexpr char tallymark1[] = "\xee\xb1\x86"; + inline constexpr char tallymark2[] = "\xee\xb1\x87"; + inline constexpr char tallymark3[] = "\xee\xb1\x88"; + inline constexpr char tallymark4[] = "\xee\xb1\x89"; + inline constexpr char tallymarks[] = "\xee\xb1\x8a"; + inline constexpr char tank[] = "\xee\xb6\x95"; + inline constexpr char target[] = "\xee\xac\xb5"; + inline constexpr char target2[] = "\xf0\x90\x89\x85"; + inline constexpr char targetArrow[] = "\xef\x94\x9a"; + inline constexpr char targetOff[] = "\xef\x86\xad"; + inline constexpr char tax[] = "\xef\xbb\xae"; + inline constexpr char taxEuro[] = "\xef\xbb\xb0"; + inline constexpr char taxPound[] = "\xef\xbb\xaf"; + inline constexpr char teapot[] = "\xef\x95\x92"; + inline constexpr char telescope[] = "\xef\x81\xbd"; + inline constexpr char telescopeOff[] = "\xef\x86\xae"; + inline constexpr char temperature[] = "\xee\xac\xb8"; + inline constexpr char temperatureCelsius[] = "\xee\xac\xb6"; + inline constexpr char temperatureFahrenheit[] = "\xee\xac\xb7"; + inline constexpr char temperatureMinus[] = "\xee\xaf\xad"; + inline constexpr char temperatureOff[] = "\xef\x86\xaf"; + inline constexpr char temperaturePlus[] = "\xee\xaf\xae"; + inline constexpr char temperatureSnow[] = "\xef\xb6\xa3"; + inline constexpr char temperatureSun[] = "\xef\xb6\xa4"; + inline constexpr char templateIcon[] = "\xee\xac\xb9"; + inline constexpr char templateOff[] = "\xef\x86\xb0"; + inline constexpr char tent[] = "\xee\xbb\xbb"; + inline constexpr char tentOff[] = "\xef\x90\xb5"; + inline constexpr char terminal[] = "\xee\xaf\x9c"; + inline constexpr char terminal2[] = "\xee\xaf\xaf"; + inline constexpr char testPipe[] = "\xee\xac\xba"; + inline constexpr char testPipe2[] = "\xef\x82\xa4"; + inline constexpr char testPipeOff[] = "\xef\x86\xb1"; + inline constexpr char tex[] = "\xef\x93\xa0"; + inline constexpr char textCaption[] = "\xef\x92\xa4"; + inline constexpr char textColor[] = "\xef\x8b\x9c"; + inline constexpr char textDecrease[] = "\xef\x88\x82"; + inline constexpr char textDirectionLtr[] = "\xee\xbb\xbc"; + inline constexpr char textDirectionRtl[] = "\xee\xbb\xbd"; + inline constexpr char textGrammar[] = "\xef\xb5\xad"; + inline constexpr char textIncrease[] = "\xef\x88\x83"; + inline constexpr char textOrientation[] = "\xef\x8a\xa4"; + inline constexpr char textOutline[] = "\xf0\x90\x89\xaf"; + inline constexpr char textPlus[] = "\xef\x8a\xa5"; + inline constexpr char textRecognition[] = "\xef\x88\x84"; + inline constexpr char textRegexAsterisk[] = "\xf0\x90\x89\xae"; + inline constexpr char textRegexEnd[] = "\xf0\x90\x89\xad"; + inline constexpr char textRegexPlus[] = "\xf0\x90\x89\xac"; + inline constexpr char textRegexQuestion[] = "\xf0\x90\x89\xab"; + inline constexpr char textRegexStart[] = "\xf0\x90\x89\xaa"; + inline constexpr char textResize[] = "\xee\xbe\x87"; + inline constexpr char textScan2[] = "\xef\xb3\x83"; + inline constexpr char textScanAi[] = "\xf0\x90\x89\x97"; + inline constexpr char textSize[] = "\xef\x8a\xb1"; + inline constexpr char textSpellcheck[] = "\xef\x8a\xa6"; + inline constexpr char textWrap[] = "\xee\xaf\x9d"; + inline constexpr char textWrapColumn[] = "\xef\xba\xb2"; + inline constexpr char textWrapDisabled[] = "\xee\xb2\xa7"; + inline constexpr char texture[] = "\xef\x94\x9b"; + inline constexpr char theater[] = "\xef\x9e\x9b"; + inline constexpr char thermometer[] = "\xee\xbd\xa7"; + inline constexpr char thumbDown[] = "\xee\xac\xbb"; + inline constexpr char thumbDownOff[] = "\xef\x90\xb6"; + inline constexpr char thumbUp[] = "\xee\xac\xbc"; + inline constexpr char thumbUpOff[] = "\xef\x90\xb7"; + inline constexpr char ticTac[] = "\xef\x94\x9c"; + inline constexpr char ticket[] = "\xee\xac\xbd"; + inline constexpr char ticketOff[] = "\xef\x86\xb2"; + inline constexpr char tie[] = "\xef\x81\xbe"; + inline constexpr char tilde[] = "\xef\x92\xa5"; + inline constexpr char tiltShift[] = "\xee\xbb\xbe"; + inline constexpr char tiltShiftOff[] = "\xef\x86\xb3"; + inline constexpr char timeDuration0[] = "\xef\xab\x94"; + inline constexpr char timeDuration10[] = "\xef\xab\x95"; + inline constexpr char timeDuration15[] = "\xef\xab\x96"; + inline constexpr char timeDuration30[] = "\xef\xab\x97"; + inline constexpr char timeDuration45[] = "\xef\xab\x98"; + inline constexpr char timeDuration5[] = "\xef\xab\x99"; + inline constexpr char timeDuration60[] = "\xef\xab\x9a"; + inline constexpr char timeDuration90[] = "\xef\xab\x9b"; + inline constexpr char timeDurationOff[] = "\xef\xab\x9c"; + inline constexpr char timeline[] = "\xef\x80\xb1"; + inline constexpr char timelineEvent[] = "\xef\x95\x93"; + inline constexpr char timelineEventExclamation[] = "\xef\x99\xa2"; + inline constexpr char timelineEventMinus[] = "\xef\x99\xa3"; + inline constexpr char timelineEventPlus[] = "\xef\x99\xa4"; + inline constexpr char timelineEventText[] = "\xef\x99\xa5"; + inline constexpr char timelineEventX[] = "\xef\x99\xa6"; + inline constexpr char timezone[] = "\xef\xbb\xad"; + inline constexpr char tipJar[] = "\xef\xbb\xaa"; + inline constexpr char tipJarEuro[] = "\xef\xbb\xac"; + inline constexpr char tipJarPound[] = "\xef\xbb\xab"; + inline constexpr char tir[] = "\xee\xaf\xb0"; + inline constexpr char toggleLeft[] = "\xee\xac\xbe"; + inline constexpr char toggleRight[] = "\xee\xac\xbf"; + inline constexpr char toiletPaper[] = "\xee\xbf\x93"; + inline constexpr char toiletPaperOff[] = "\xef\x86\xb4"; + inline constexpr char toml[] = "\xef\xa9\x9d"; + inline constexpr char tool[] = "\xee\xad\x80"; + inline constexpr char tools[] = "\xee\xaf\x8a"; + inline constexpr char toolsKitchen[] = "\xee\xb5\xa4"; + inline constexpr char toolsKitchen2[] = "\xee\xbb\xbf"; + inline constexpr char toolsKitchen2Off[] = "\xef\x86\xb5"; + inline constexpr char toolsKitchen3[] = "\xef\xb4\xab"; + inline constexpr char toolsKitchenOff[] = "\xef\x86\xb6"; + inline constexpr char toolsOff[] = "\xef\x86\xb7"; + inline constexpr char tooltip[] = "\xef\x8b\x9d"; + inline constexpr char topologyBus[] = "\xef\x97\x99"; + inline constexpr char topologyComplex[] = "\xef\x97\x9a"; + inline constexpr char topologyFull[] = "\xef\x97\x9c"; + inline constexpr char topologyFullHierarchy[] = "\xef\x97\x9b"; + inline constexpr char topologyRing[] = "\xef\x97\x9f"; + inline constexpr char topologyRing2[] = "\xef\x97\x9d"; + inline constexpr char topologyRing3[] = "\xef\x97\x9e"; + inline constexpr char topologyStar[] = "\xef\x97\xa5"; + inline constexpr char topologyStar2[] = "\xef\x97\xa0"; + inline constexpr char topologyStar3[] = "\xef\x97\xa1"; + inline constexpr char topologyStarRing[] = "\xef\x97\xa4"; + inline constexpr char topologyStarRing2[] = "\xef\x97\xa2"; + inline constexpr char topologyStarRing3[] = "\xef\x97\xa3"; + inline constexpr char torii[] = "\xef\x96\x9b"; + inline constexpr char tornado[] = "\xee\xb3\xa2"; + inline constexpr char tournament[] = "\xee\xb3\x90"; + inline constexpr char tower[] = "\xef\x8b\x8b"; + inline constexpr char towerOff[] = "\xef\x8b\x8a"; + inline constexpr char track[] = "\xee\xbc\x80"; + inline constexpr char tractor[] = "\xee\xb0\x8d"; + inline constexpr char trademark[] = "\xee\xb0\x8e"; + inline constexpr char trafficCone[] = "\xee\xb0\x8f"; + inline constexpr char trafficConeOff[] = "\xef\x86\xb8"; + inline constexpr char trafficLights[] = "\xee\xb4\xb9"; + inline constexpr char trafficLightsOff[] = "\xef\x86\xb9"; + inline constexpr char train[] = "\xee\xb6\x96"; + inline constexpr char transactionBitcoin[] = "\xef\xb5\xae"; + inline constexpr char transactionDollar[] = "\xef\xb5\xaf"; + inline constexpr char transactionEuro[] = "\xef\xb5\xb0"; + inline constexpr char transactionPound[] = "\xef\xb5\xb1"; + inline constexpr char transactionRupee[] = "\xef\xb6\x85"; + inline constexpr char transactionYen[] = "\xef\xb5\xb2"; + inline constexpr char transactionYuan[] = "\xef\xb5\xb3"; + inline constexpr char transfer[] = "\xef\xb0\x9f"; + inline constexpr char transferIn[] = "\xee\xbc\xaf"; + inline constexpr char transferOut[] = "\xee\xbc\xb0"; + inline constexpr char transferVertical[] = "\xef\xb0\x9e"; + inline constexpr char transform[] = "\xef\x8e\x8e"; + inline constexpr char transformPoint[] = "\xef\xb6\xa9"; + inline constexpr char transformPointBottomLeft[] = "\xef\xb6\xa5"; + inline constexpr char transformPointBottomRight[] = "\xef\xb6\xa6"; + inline constexpr char transformPointTopLeft[] = "\xef\xb6\xa7"; + inline constexpr char transformPointTopRight[] = "\xef\xb6\xa8"; + inline constexpr char transitionBottom[] = "\xef\x8a\xb2"; + inline constexpr char transitionLeft[] = "\xef\x8a\xb3"; + inline constexpr char transitionRight[] = "\xef\x8a\xb4"; + inline constexpr char transitionTop[] = "\xef\x8a\xb5"; + inline constexpr char trash[] = "\xee\xad\x81"; + inline constexpr char trashOff[] = "\xee\xb5\xa5"; + inline constexpr char trashX[] = "\xee\xbe\x88"; + inline constexpr char treadmill[] = "\xef\xa9\xae"; + inline constexpr char tree[] = "\xee\xbc\x81"; + inline constexpr char trees[] = "\xee\xb0\x90"; + inline constexpr char trekking[] = "\xef\x96\xad"; + inline constexpr char trendingDown[] = "\xee\xad\x82"; + inline constexpr char trendingDown2[] = "\xee\xb7\x81"; + inline constexpr char trendingDown3[] = "\xee\xb7\x82"; + inline constexpr char trendingUp[] = "\xee\xad\x83"; + inline constexpr char trendingUp2[] = "\xee\xb7\x83"; + inline constexpr char trendingUp3[] = "\xee\xb7\x84"; + inline constexpr char trendingUpDown[] = "\xf0\x90\x87\xbb"; + inline constexpr char triangle[] = "\xee\xad\x84"; + inline constexpr char triangleInverted[] = "\xef\x80\x9d"; + inline constexpr char triangleMinus[] = "\xef\xb2\x9b"; + inline constexpr char triangleMinus2[] = "\xef\xb2\x9a"; + inline constexpr char triangleOff[] = "\xee\xbc\x82"; + inline constexpr char trianglePlus[] = "\xef\xb2\x9d"; + inline constexpr char trianglePlus2[] = "\xef\xb2\x9c"; + inline constexpr char triangleSquareCircle[] = "\xee\xb3\xa8"; + inline constexpr char triangles[] = "\xef\x82\xa5"; + inline constexpr char trident[] = "\xee\xb3\x85"; + inline constexpr char trolley[] = "\xef\x93\x8c"; + inline constexpr char trophy[] = "\xee\xad\x85"; + inline constexpr char trophyOff[] = "\xef\x90\xb8"; + inline constexpr char trowel[] = "\xef\x8d\xa8"; + inline constexpr char truck[] = "\xee\xaf\x84"; + inline constexpr char truckDelivery[] = "\xee\xb1\x8b"; + inline constexpr char truckLoading[] = "\xef\x87\x9a"; + inline constexpr char truckOff[] = "\xee\xbc\x83"; + inline constexpr char truckReturn[] = "\xee\xb1\x8c"; + inline constexpr char txt[] = "\xef\x8e\xb1"; + inline constexpr char typeface[] = "\xef\xb6\xab"; + inline constexpr char typography[] = "\xee\xaf\x85"; + inline constexpr char typographyOff[] = "\xef\x86\xba"; + inline constexpr char uTurnLeft[] = "\xef\xba\xa2"; + inline constexpr char uTurnRight[] = "\xef\xba\xa1"; + inline constexpr char ufo[] = "\xef\x89\xaf"; + inline constexpr char ufoOff[] = "\xef\x89\xae"; + inline constexpr char uhd[] = "\xf0\x90\x82\xaa"; + inline constexpr char umbrella[] = "\xee\xaf\xb1"; + inline constexpr char umbrella2[] = "\xef\xbc\x8e"; + inline constexpr char umbrellaClosed[] = "\xef\xbc\x8c"; + inline constexpr char umbrellaClosed2[] = "\xef\xbc\x8d"; + inline constexpr char umbrellaOff[] = "\xef\x86\xbb"; + inline constexpr char underline[] = "\xee\xae\xa2"; + inline constexpr char underlineOff[] = "\xf0\x90\x89\xa9"; + inline constexpr char unicycle[] = "\xf0\x90\x89\x84"; + inline constexpr char universe[] = "\xef\xb3\x84"; + inline constexpr char unlink[] = "\xee\xad\x86"; + inline constexpr char upload[] = "\xee\xad\x87"; + inline constexpr char urgent[] = "\xee\xad\x88"; + inline constexpr char usb[] = "\xef\x80\x8c"; + inline constexpr char user[] = "\xee\xad\x8d"; + inline constexpr char userBitcoin[] = "\xef\xbc\xb0"; + inline constexpr char userBolt[] = "\xef\xa7\x91"; + inline constexpr char userCancel[] = "\xef\xa7\x92"; + inline constexpr char userCheck[] = "\xee\xad\x89"; + inline constexpr char userCircle[] = "\xee\xbd\xa8"; + inline constexpr char userCode[] = "\xef\xa7\x93"; + inline constexpr char userCog[] = "\xef\xa7\x94"; + inline constexpr char userDollar[] = "\xef\xa7\x95"; + inline constexpr char userDown[] = "\xef\xa7\x96"; + inline constexpr char userEdit[] = "\xef\x9f\x8c"; + inline constexpr char userExclamation[] = "\xee\xb0\x92"; + inline constexpr char userHeart[] = "\xef\x9f\x8d"; + inline constexpr char userHexagon[] = "\xef\xb1\x8e"; + inline constexpr char userKey[] = "\xf0\x90\x87\xaa"; + inline constexpr char userMinus[] = "\xee\xad\x8a"; + inline constexpr char userOff[] = "\xee\xb3\xb9"; + inline constexpr char userPause[] = "\xef\xa7\x97"; + inline constexpr char userPentagon[] = "\xef\xb1\x8f"; + inline constexpr char userPin[] = "\xef\x9f\x8e"; + inline constexpr char userPlus[] = "\xee\xad\x8b"; + inline constexpr char userQuestion[] = "\xef\x9f\x8f"; + inline constexpr char userScan[] = "\xef\xb2\xaf"; + inline constexpr char userScreen[] = "\xef\xba\xa0"; + inline constexpr char userSearch[] = "\xee\xbe\x89"; + inline constexpr char userShare[] = "\xef\xa7\x98"; + inline constexpr char userShield[] = "\xef\x9f\x90"; + inline constexpr char userSquare[] = "\xef\xb1\x91"; + inline constexpr char userSquareRounded[] = "\xef\xb1\x90"; + inline constexpr char userStar[] = "\xef\x9f\x91"; + inline constexpr char userUp[] = "\xef\x9f\x92"; + inline constexpr char userX[] = "\xee\xad\x8c"; + inline constexpr char users[] = "\xee\xaf\xb2"; + inline constexpr char usersGroup[] = "\xef\xa8\xa1"; + inline constexpr char usersMinus[] = "\xef\xa8\x8e"; + inline constexpr char usersPlus[] = "\xef\xa8\x8f"; + inline constexpr char uvIndex[] = "\xef\x8e\xb2"; + inline constexpr char uxCircle[] = "\xef\x8d\xa9"; + inline constexpr char vaccine[] = "\xee\xbc\x84"; + inline constexpr char vaccineBottle[] = "\xee\xbd\xa9"; + inline constexpr char vaccineBottleOff[] = "\xef\x90\xb9"; + inline constexpr char vaccineOff[] = "\xef\x86\xbc"; + inline constexpr char vacuumCleaner[] = "\xef\x97\xa6"; + inline constexpr char variable[] = "\xee\xbc\x85"; + inline constexpr char variableMinus[] = "\xef\x8d\xaa"; + inline constexpr char variableOff[] = "\xef\x86\xbd"; + inline constexpr char variablePlus[] = "\xef\x8d\xab"; + inline constexpr char vector[] = "\xee\xb2\xa9"; + inline constexpr char vectorBezier[] = "\xee\xbc\x9d"; + inline constexpr char vectorBezier2[] = "\xef\x86\xa3"; + inline constexpr char vectorBezierArc[] = "\xef\x93\x8d"; + inline constexpr char vectorBezierCircle[] = "\xef\x93\x8e"; + inline constexpr char vectorOff[] = "\xef\x86\xbe"; + inline constexpr char vectorSpline[] = "\xef\x95\xa5"; + inline constexpr char vectorTriangle[] = "\xee\xb2\xa8"; + inline constexpr char vectorTriangleOff[] = "\xef\x86\xbf"; + inline constexpr char venus[] = "\xee\xb2\x86"; + inline constexpr char versions[] = "\xee\xb5\x92"; + inline constexpr char versionsOff[] = "\xef\x87\x80"; + inline constexpr char video[] = "\xee\xb4\xa2"; + inline constexpr char videoMinus[] = "\xee\xb4\x9f"; + inline constexpr char videoOff[] = "\xee\xb4\xa0"; + inline constexpr char videoPlus[] = "\xee\xb4\xa1"; + inline constexpr char view360[] = "\xee\xb6\x84"; + inline constexpr char view360Arrow[] = "\xef\x98\xaf"; + inline constexpr char view360Number[] = "\xef\x95\xa6"; + inline constexpr char view360Off[] = "\xef\x87\x81"; + inline constexpr char viewfinder[] = "\xee\xad\x8e"; + inline constexpr char viewfinderOff[] = "\xef\x87\x82"; + inline constexpr char viewportNarrow[] = "\xee\xaf\xb3"; + inline constexpr char viewportShort[] = "\xef\xbb\xa9"; + inline constexpr char viewportTall[] = "\xef\xbb\xa8"; + inline constexpr char viewportWide[] = "\xee\xaf\xb4"; + inline constexpr char vignette[] = "\xf0\x90\x89\x96"; + inline constexpr char vinyl[] = "\xef\x80\x8d"; + inline constexpr char vip[] = "\xef\x8e\xb3"; + inline constexpr char vip2[] = "\xf0\x90\x87\xba"; + inline constexpr char vipOff[] = "\xef\x90\xba"; + inline constexpr char virtualSpace[] = "\xf0\x90\x89\xa8"; + inline constexpr char virus[] = "\xee\xad\xb4"; + inline constexpr char virusOff[] = "\xee\xb5\xa6"; + inline constexpr char virusSearch[] = "\xee\xb5\xa7"; + inline constexpr char vocabulary[] = "\xee\xbc\x9e"; + inline constexpr char vocabularyOff[] = "\xef\x90\xbb"; + inline constexpr char volcano[] = "\xef\x9e\x9c"; + inline constexpr char volume[] = "\xee\xad\x91"; + inline constexpr char volume2[] = "\xee\xad\x8f"; + inline constexpr char volume3[] = "\xee\xad\x90"; + inline constexpr char volume4[] = "\xf0\x90\x86\x9d"; + inline constexpr char volumeOff[] = "\xef\x87\x83"; + inline constexpr char vs[] = "\xef\xb1\x92"; + inline constexpr char walk[] = "\xee\xb2\x87"; + inline constexpr char wall[] = "\xee\xbd\xba"; + inline constexpr char wallOff[] = "\xef\x90\xbc"; + inline constexpr char wallet[] = "\xee\xad\xb5"; + inline constexpr char walletOff[] = "\xef\x87\x84"; + inline constexpr char wallpaper[] = "\xee\xbd\x96"; + inline constexpr char wallpaperOff[] = "\xef\x87\x85"; + inline constexpr char wand[] = "\xee\xaf\x8b"; + inline constexpr char wandOff[] = "\xef\x87\x86"; + inline constexpr char wash[] = "\xef\x8c\x91"; + inline constexpr char washDry[] = "\xef\x8c\x84"; + inline constexpr char washDry1[] = "\xef\x8b\xba"; + inline constexpr char washDry2[] = "\xef\x8b\xbb"; + inline constexpr char washDry3[] = "\xef\x8b\xbc"; + inline constexpr char washDryA[] = "\xef\x8b\xbd"; + inline constexpr char washDryDip[] = "\xef\x8b\xbe"; + inline constexpr char washDryF[] = "\xef\x8b\xbf"; + inline constexpr char washDryFlat[] = "\xef\xa9\xbf"; + inline constexpr char washDryHang[] = "\xef\x8c\x80"; + inline constexpr char washDryOff[] = "\xef\x8c\x81"; + inline constexpr char washDryP[] = "\xef\x8c\x82"; + inline constexpr char washDryShade[] = "\xef\x8c\x83"; + inline constexpr char washDryW[] = "\xef\x8c\xa2"; + inline constexpr char washDryclean[] = "\xef\x8c\x85"; + inline constexpr char washDrycleanOff[] = "\xef\x8c\xa3"; + inline constexpr char washEco[] = "\xef\xaa\x80"; + inline constexpr char washGentle[] = "\xef\x8c\x86"; + inline constexpr char washHand[] = "\xef\xaa\x81"; + inline constexpr char washMachine[] = "\xef\x89\x9e"; + inline constexpr char washOff[] = "\xef\x8c\x87"; + inline constexpr char washPress[] = "\xef\x8c\x88"; + inline constexpr char washTemperature1[] = "\xef\x8c\x89"; + inline constexpr char washTemperature2[] = "\xef\x8c\x8a"; + inline constexpr char washTemperature3[] = "\xef\x8c\x8b"; + inline constexpr char washTemperature4[] = "\xef\x8c\x8c"; + inline constexpr char washTemperature5[] = "\xef\x8c\x8d"; + inline constexpr char washTemperature6[] = "\xef\x8c\x8e"; + inline constexpr char washTumbleDry[] = "\xef\x8c\x8f"; + inline constexpr char washTumbleOff[] = "\xef\x8c\x90"; + inline constexpr char waterpolo[] = "\xef\xa9\xaf"; + inline constexpr char waveSawTool[] = "\xee\xb3\x93"; + inline constexpr char waveSine[] = "\xee\xb3\x94"; + inline constexpr char waveSquare[] = "\xee\xb3\x95"; + inline constexpr char wavesElectricity[] = "\xef\xb3\x85"; + inline constexpr char webhook[] = "\xef\x80\x9e"; + inline constexpr char webhookOff[] = "\xef\x90\xbd"; + inline constexpr char weight[] = "\xef\x96\x89"; + inline constexpr char wheat[] = "\xf0\x90\x82\xa8"; + inline constexpr char wheatOff[] = "\xf0\x90\x82\xa9"; + inline constexpr char wheel[] = "\xef\xb1\xa4"; + inline constexpr char wheelchair[] = "\xef\x87\x9b"; + inline constexpr char wheelchairOff[] = "\xef\x90\xbe"; + inline constexpr char whirl[] = "\xef\x94\x9d"; + inline constexpr char whisk[] = "\xf0\x90\x86\xa0"; + inline constexpr char wifi[] = "\xee\xad\x92"; + inline constexpr char wifi0[] = "\xee\xae\xa3"; + inline constexpr char wifi1[] = "\xee\xae\xa4"; + inline constexpr char wifi2[] = "\xee\xae\xa5"; + inline constexpr char wifiOff[] = "\xee\xb3\xba"; + inline constexpr char wind[] = "\xee\xb0\xb4"; + inline constexpr char windElectricity[] = "\xef\xb3\x86"; + inline constexpr char windOff[] = "\xef\x87\x87"; + inline constexpr char windmill[] = "\xee\xb6\x85"; + inline constexpr char windmillOff[] = "\xef\x87\x88"; + inline constexpr char window[] = "\xee\xbc\x86"; + inline constexpr char windowMaximize[] = "\xef\x87\xb1"; + inline constexpr char windowMinimize[] = "\xef\x87\xb2"; + inline constexpr char windowOff[] = "\xef\x87\x89"; + inline constexpr char windsock[] = "\xef\x81\xad"; + inline constexpr char wiper[] = "\xee\xb2\xab"; + inline constexpr char wiperWash[] = "\xee\xb2\xaa"; + inline constexpr char woman[] = "\xee\xad\x93"; + inline constexpr char wood[] = "\xef\x8d\x99"; + inline constexpr char world[] = "\xee\xad\x94"; + inline constexpr char worldBolt[] = "\xef\xa7\x99"; + inline constexpr char worldCancel[] = "\xef\xa7\x9a"; + inline constexpr char worldCheck[] = "\xef\xa7\x9b"; + inline constexpr char worldCode[] = "\xef\xa7\x9c"; + inline constexpr char worldCog[] = "\xef\xa7\x9d"; + inline constexpr char worldDollar[] = "\xef\xa7\x9e"; + inline constexpr char worldDown[] = "\xef\xa7\x9f"; + inline constexpr char worldDownload[] = "\xee\xbe\x8a"; + inline constexpr char worldExclamation[] = "\xef\xa7\xa0"; + inline constexpr char worldHeart[] = "\xef\xa7\xa1"; + inline constexpr char worldLatitude[] = "\xee\xb4\xae"; + inline constexpr char worldLongitude[] = "\xee\xb4\xaf"; + inline constexpr char worldMap[] = "\xf0\x90\x87\xa9"; + inline constexpr char worldMinus[] = "\xef\xa7\xa2"; + inline constexpr char worldOff[] = "\xef\x87\x8a"; + inline constexpr char worldPause[] = "\xef\xa7\xa3"; + inline constexpr char worldPin[] = "\xef\xa7\xa4"; + inline constexpr char worldPlus[] = "\xef\xa7\xa5"; + inline constexpr char worldQuestion[] = "\xef\xa7\xa6"; + inline constexpr char worldSearch[] = "\xef\xa7\xa7"; + inline constexpr char worldShare[] = "\xef\xa7\xa8"; + inline constexpr char worldStar[] = "\xef\xa7\xa9"; + inline constexpr char worldUp[] = "\xef\xa7\xaa"; + inline constexpr char worldUpload[] = "\xee\xbe\x8b"; + inline constexpr char worldWww[] = "\xef\x8e\x8f"; + inline constexpr char worldX[] = "\xef\xa7\xab"; + inline constexpr char wreckingBall[] = "\xee\xb6\x97"; + inline constexpr char writing[] = "\xee\xbc\x88"; + inline constexpr char writingOff[] = "\xef\x87\x8b"; + inline constexpr char writingSign[] = "\xee\xbc\x87"; + inline constexpr char writingSignOff[] = "\xef\x87\x8c"; + inline constexpr char x[] = "\xee\xad\x95"; + inline constexpr char xMark[] = "\xf0\x90\x88\xa0"; + inline constexpr char xPowerY[] = "\xf0\x90\x81\xb2"; + inline constexpr char xboxA[] = "\xef\x8a\xb6"; + inline constexpr char xboxB[] = "\xef\x8a\xb7"; + inline constexpr char xboxX[] = "\xef\x8a\xb8"; + inline constexpr char xboxY[] = "\xef\x8a\xb9"; + inline constexpr char xd[] = "\xef\xa8\xb3"; + inline constexpr char xxx[] = "\xef\xb0\xa0"; + inline constexpr char yinYang[] = "\xee\xb0\xb5"; + inline constexpr char yoga[] = "\xef\x80\x9f"; + inline constexpr char zeppelin[] = "\xef\x89\xb0"; + inline constexpr char zeppelinOff[] = "\xef\x90\xbf"; + inline constexpr char zeroConfig[] = "\xf0\x90\x87\xa8"; + inline constexpr char zip[] = "\xef\x8e\xb4"; + inline constexpr char zodiacAquarius[] = "\xee\xb2\xac"; + inline constexpr char zodiacAries[] = "\xee\xb2\xad"; + inline constexpr char zodiacCancer[] = "\xee\xb2\xae"; + inline constexpr char zodiacCapricorn[] = "\xee\xb2\xaf"; + inline constexpr char zodiacGemini[] = "\xee\xb2\xb0"; + inline constexpr char zodiacLeo[] = "\xee\xb2\xb1"; + inline constexpr char zodiacLibra[] = "\xee\xb2\xb2"; + inline constexpr char zodiacPisces[] = "\xee\xb2\xb3"; + inline constexpr char zodiacSagittarius[] = "\xee\xb2\xb4"; + inline constexpr char zodiacScorpio[] = "\xee\xb2\xb5"; + inline constexpr char zodiacTaurus[] = "\xee\xb2\xb6"; + inline constexpr char zodiacVirgo[] = "\xee\xb2\xb7"; + inline constexpr char zoom[] = "\xef\xb6\xaa"; + inline constexpr char zoomCancel[] = "\xee\xb1\x8d"; + inline constexpr char zoomCheck[] = "\xee\xbc\x89"; + inline constexpr char zoomCode[] = "\xef\x81\xbf"; + inline constexpr char zoomExclamation[] = "\xef\x82\x80"; + inline constexpr char zoomIn[] = "\xee\xad\x96"; + inline constexpr char zoomInArea[] = "\xef\x87\x9c"; + inline constexpr char zoomMoney[] = "\xee\xbc\x8a"; + inline constexpr char zoomOut[] = "\xee\xad\x97"; + inline constexpr char zoomOutArea[] = "\xef\x87\x9d"; + inline constexpr char zoomPan[] = "\xef\x87\x9e"; + inline constexpr char zoomQuestion[] = "\xee\xb7\xab"; + inline constexpr char zoomReplace[] = "\xef\x8a\xa7"; + inline constexpr char zoomReset[] = "\xef\x8a\x95"; + inline constexpr char zoomScan[] = "\xef\xb2\xb0"; + inline constexpr char zzz[] = "\xef\x88\xa8"; + inline constexpr char zzzOff[] = "\xef\x91\x80"; + inline constexpr char icon123[] = "\xef\x95\x94"; + inline constexpr char icon360[] = "\xef\x98\xaf"; + inline constexpr char codeAsterix[] = "\xef\x8c\x92"; + inline constexpr char discount2[] = "\xee\xb9\xbc"; + inline constexpr char discount2Off[] = "\xef\x8f\xa6"; + inline constexpr char discountCheck[] = "\xef\x87\xb8"; + inline constexpr char handRock[] = "\xee\xba\x97"; + inline constexpr char sortDeacendingSmallBig[] = "\xef\xb6\x96"; + inline constexpr char shiJumping[] = "\xef\xa9\xac"; + inline constexpr char boxSeam[] = "\xee\xab\xbf"; + inline constexpr char kering[] = "\xee\xbe\xb8"; + inline constexpr char icon2fa[] = "\xee\xb2\xa0"; + inline constexpr char icon3dCubeSphere[] = "\xee\xb3\x97"; + inline constexpr char icon3dCubeSphereOff[] = "\xef\x8e\xb5"; + inline constexpr char icon3dRotate[] = "\xef\x80\xa0"; + inline constexpr char icon12Hours[] = "\xef\xb1\x93"; + inline constexpr char icon24Hours[] = "\xef\x97\xa7"; + inline constexpr char icon360View[] = "\xef\x95\xa6"; + inline constexpr char circle0[] = "\xee\xb8\xb4"; + inline constexpr char circle1[] = "\xee\xb8\xb5"; + inline constexpr char circle2[] = "\xee\xb8\xb6"; + inline constexpr char circle3[] = "\xee\xb8\xb7"; + inline constexpr char circle4[] = "\xee\xb8\xb8"; + inline constexpr char circle5[] = "\xee\xb8\xb9"; + inline constexpr char circle6[] = "\xee\xb8\xba"; + inline constexpr char circle7[] = "\xee\xb8\xbb"; + inline constexpr char circle8[] = "\xee\xb8\xbc"; + inline constexpr char circle9[] = "\xee\xb8\xbd"; + inline constexpr char hexagon0[] = "\xef\x91\x99"; + inline constexpr char hexagon1[] = "\xef\x91\x9a"; + inline constexpr char hexagon2[] = "\xef\x91\x9b"; + inline constexpr char hexagon3[] = "\xef\x91\x9c"; + inline constexpr char hexagon4[] = "\xef\x91\x9d"; + inline constexpr char hexagon5[] = "\xef\x91\x9e"; + inline constexpr char hexagon6[] = "\xef\x91\x9f"; + inline constexpr char hexagon7[] = "\xef\x91\xa0"; + inline constexpr char hexagon8[] = "\xef\x91\xa1"; + inline constexpr char hexagon9[] = "\xef\x91\xa2"; + inline constexpr char square0[] = "\xee\xbb\xa5"; + inline constexpr char square1[] = "\xee\xbb\xa6"; + inline constexpr char square2[] = "\xee\xbb\xa7"; + inline constexpr char square3[] = "\xee\xbb\xa8"; + inline constexpr char square4[] = "\xee\xbb\xa9"; + inline constexpr char square5[] = "\xee\xbb\xaa"; + inline constexpr char square6[] = "\xee\xbb\xab"; + inline constexpr char square7[] = "\xee\xbb\xac"; + inline constexpr char square8[] = "\xee\xbb\xad"; + inline constexpr char square9[] = "\xee\xbb\xae"; + inline constexpr char messageCircle2[] = "\xee\xab\xad"; + inline constexpr char moodSuprised[] = "\xee\xb0\x84"; + inline constexpr char circleDashedLetterLetterV[] = "\xef\xbe\x84"; + inline constexpr char seeding[] = "\xee\xb5\x91"; + inline constexpr char seedingOff[] = "\xef\x86\x9d"; + inline constexpr char brandAdobePremier[] = "\xef\xbc\xa6"; + inline constexpr char foodsteps[] = "\xf0\x90\x89\xa5"; + inline constexpr char moodConfuzed[] = "\xee\xab\xb3"; + inline constexpr char currencyRubel[] = "\xee\xb9\xa7"; + inline constexpr char sportBillard[] = "\xee\xbb\xa4"; + inline constexpr char physotherapist[] = "\xee\xba\xbe"; + inline constexpr char ikosaedr[] = "\xef\xbb\x86"; + inline constexpr char genderTrasvesti[] = "\xef\x83\xb2"; + inline constexpr char brandKakoTalk[] = "\xef\xb4\xad"; + inline constexpr char brandAdobeAfterEffect[] = "\xef\xbc\xaa"; + + inline constexpr char allGlyphs[] = + "\xee\xa8\x82\xee\xa8\x83\xee\xa8\x84\xee\xa8\x85\xee\xa8\x86\xee\xa8\x87\xee\xa8\x88\xee\xa8\x89\xee\xa8\x8a\xee\xa8\x8b\xee\xa8\x8c\xee\xa8\x8d\xee\xa8\x8e\xee\xa8\x8f\xee\xa8\x90\xee\xa8\x91\xee\xa8\x92\xee\xa8\x93\xee\xa8\x94\xee\xa8\x95\xee\xa8\x96\xee\xa8\x97\xee\xa8\x98\xee\xa8\x99\xee\xa8\x9a\xee\xa8\x9b\xee\xa8\x9c\xee\xa8\x9d\xee\xa8\x9e\xee\xa8\x9f\xee\xa8\xa0\xee\xa8\xa1" + "\xee\xa8\xa2\xee\xa8\xa3\xee\xa8\xa4\xee\xa8\xa5\xee\xa8\xa6\xee\xa8\xa7\xee\xa8\xa8\xee\xa8\xa9\xee\xa8\xaa\xee\xa8\xab\xee\xa8\xac\xee\xa8\xad\xee\xa8\xae\xee\xa8\xaf\xee\xa8\xb0\xee\xa8\xb1\xee\xa8\xb2\xee\xa8\xb3\xee\xa8\xb4\xee\xa8\xb5\xee\xa8\xb6\xee\xa8\xb7\xee\xa8\xb8\xee\xa8\xb9\xee\xa8\xba\xee\xa8\xbb\xee\xa8\xbc\xee\xa8\xbd\xee\xa8\xbe\xee\xa8\xbf\xee\xa9\x80\xee\xa9\x81" + "\xee\xa9\x82\xee\xa9\x83\xee\xa9\x84\xee\xa9\x85\xee\xa9\x86\xee\xa9\x87\xee\xa9\x88\xee\xa9\x89\xee\xa9\x8a\xee\xa9\x8b\xee\xa9\x8c\xee\xa9\x8d\xee\xa9\x8e\xee\xa9\x8f\xee\xa9\x90\xee\xa9\x91\xee\xa9\x92\xee\xa9\x93\xee\xa9\x94\xee\xa9\x95\xee\xa9\x96\xee\xa9\x97\xee\xa9\x98\xee\xa9\x99\xee\xa9\x9a\xee\xa9\x9b\xee\xa9\x9c\xee\xa9\x9d\xee\xa9\x9e\xee\xa9\x9f\xee\xa9\xa0\xee\xa9\xa1" + "\xee\xa9\xa2\xee\xa9\xa3\xee\xa9\xa4\xee\xa9\xa5\xee\xa9\xa6\xee\xa9\xa7\xee\xa9\xa8\xee\xa9\xa9\xee\xa9\xaa\xee\xa9\xab\xee\xa9\xac\xee\xa9\xad\xee\xa9\xae\xee\xa9\xaf\xee\xa9\xb0\xee\xa9\xb1\xee\xa9\xb2\xee\xa9\xb3\xee\xa9\xb4\xee\xa9\xb5\xee\xa9\xb6\xee\xa9\xb7\xee\xa9\xb8\xee\xa9\xb9\xee\xa9\xba\xee\xa9\xbb\xee\xa9\xbc\xee\xa9\xbd\xee\xa9\xbe\xee\xa9\xbf\xee\xaa\x80\xee\xaa\x81" + "\xee\xaa\x82\xee\xaa\x83\xee\xaa\x84\xee\xaa\x85\xee\xaa\x86\xee\xaa\x87\xee\xaa\x88\xee\xaa\x89\xee\xaa\x8a\xee\xaa\x8b\xee\xaa\x8c\xee\xaa\x8d\xee\xaa\x8e\xee\xaa\x8f\xee\xaa\x90\xee\xaa\x91\xee\xaa\x92\xee\xaa\x93\xee\xaa\x94\xee\xaa\x95\xee\xaa\x96\xee\xaa\x97\xee\xaa\x98\xee\xaa\x99\xee\xaa\x9a\xee\xaa\x9b\xee\xaa\x9c\xee\xaa\x9d\xee\xaa\x9e\xee\xaa\x9f\xee\xaa\xa0\xee\xaa\xa1" + "\xee\xaa\xa2\xee\xaa\xa3\xee\xaa\xa4\xee\xaa\xa5\xee\xaa\xa6\xee\xaa\xa7\xee\xaa\xa8\xee\xaa\xaa\xee\xaa\xab\xee\xaa\xac\xee\xaa\xad\xee\xaa\xae\xee\xaa\xaf\xee\xaa\xb0\xee\xaa\xb1\xee\xaa\xb2\xee\xaa\xb3\xee\xaa\xb4\xee\xaa\xb5\xee\xaa\xb6\xee\xaa\xb7\xee\xaa\xb8\xee\xaa\xb9\xee\xaa\xba\xee\xaa\xbc\xee\xaa\xbd\xee\xaa\xbe\xee\xaa\xbf\xee\xab\x80\xee\xab\x81\xee\xab\x82\xee\xab\x83" + "\xee\xab\x84\xee\xab\x85\xee\xab\x86\xee\xab\x87\xee\xab\x88\xee\xab\x89\xee\xab\x8a\xee\xab\x8b\xee\xab\x8c\xee\xab\x8d\xee\xab\x8e\xee\xab\x8f\xee\xab\x90\xee\xab\x91\xee\xab\x92\xee\xab\x93\xee\xab\x94\xee\xab\x95\xee\xab\x96\xee\xab\x97\xee\xab\x98\xee\xab\x99\xee\xab\x9a\xee\xab\x9b\xee\xab\x9c\xee\xab\x9d\xee\xab\x9e\xee\xab\x9f\xee\xab\xa0\xee\xab\xa1\xee\xab\xa2\xee\xab\xa3" + "\xee\xab\xa4\xee\xab\xa5\xee\xab\xa6\xee\xab\xa7\xee\xab\xa8\xee\xab\xa9\xee\xab\xaa\xee\xab\xab\xee\xab\xac\xee\xab\xad\xee\xab\xae\xee\xab\xaf\xee\xab\xb0\xee\xab\xb1\xee\xab\xb2\xee\xab\xb3\xee\xab\xb4\xee\xab\xb5\xee\xab\xb6\xee\xab\xb7\xee\xab\xb8\xee\xab\xb9\xee\xab\xba\xee\xab\xbb\xee\xab\xbc\xee\xab\xbd\xee\xab\xbe\xee\xab\xbf\xee\xac\x80\xee\xac\x81\xee\xac\x82\xee\xac\x83" + "\xee\xac\x84\xee\xac\x85\xee\xac\x86\xee\xac\x87\xee\xac\x88\xee\xac\x89\xee\xac\x8a\xee\xac\x8b\xee\xac\x8c\xee\xac\x8d\xee\xac\x8e\xee\xac\x8f\xee\xac\x90\xee\xac\x91\xee\xac\x92\xee\xac\x93\xee\xac\x94\xee\xac\x95\xee\xac\x96\xee\xac\x97\xee\xac\x98\xee\xac\x99\xee\xac\x9a\xee\xac\x9b\xee\xac\x9c\xee\xac\x9d\xee\xac\x9e\xee\xac\x9f\xee\xac\xa0\xee\xac\xa1\xee\xac\xa2\xee\xac\xa3" + "\xee\xac\xa4\xee\xac\xa5\xee\xac\xa6\xee\xac\xa7\xee\xac\xa8\xee\xac\xa9\xee\xac\xaa\xee\xac\xab\xee\xac\xac\xee\xac\xad\xee\xac\xae\xee\xac\xaf\xee\xac\xb0\xee\xac\xb1\xee\xac\xb2\xee\xac\xb3\xee\xac\xb4\xee\xac\xb5\xee\xac\xb6\xee\xac\xb7\xee\xac\xb8\xee\xac\xb9\xee\xac\xba\xee\xac\xbb\xee\xac\xbc\xee\xac\xbd\xee\xac\xbe\xee\xac\xbf\xee\xad\x80\xee\xad\x81\xee\xad\x82\xee\xad\x83" + "\xee\xad\x84\xee\xad\x85\xee\xad\x86\xee\xad\x87\xee\xad\x88\xee\xad\x89\xee\xad\x8a\xee\xad\x8b\xee\xad\x8c\xee\xad\x8d\xee\xad\x8e\xee\xad\x8f\xee\xad\x90\xee\xad\x91\xee\xad\x92\xee\xad\x93\xee\xad\x94\xee\xad\x95\xee\xad\x96\xee\xad\x97\xee\xad\x98\xee\xad\x99\xee\xad\x9a\xee\xad\x9b\xee\xad\x9c\xee\xad\x9d\xee\xad\x9e\xee\xad\x9f\xee\xad\xa0\xee\xad\xa1\xee\xad\xa2\xee\xad\xa3" + "\xee\xad\xa4\xee\xad\xa5\xee\xad\xa6\xee\xad\xa7\xee\xad\xa8\xee\xad\xa9\xee\xad\xaa\xee\xad\xab\xee\xad\xac\xee\xad\xad\xee\xad\xae\xee\xad\xaf\xee\xad\xb0\xee\xad\xb1\xee\xad\xb2\xee\xad\xb3\xee\xad\xb4\xee\xad\xb5\xee\xad\xb6\xee\xad\xb7\xee\xad\xb8\xee\xad\xb9\xee\xad\xba\xee\xad\xbb\xee\xad\xbc\xee\xad\xbd\xee\xad\xbe\xee\xad\xbf\xee\xae\x80\xee\xae\x82\xee\xae\x83\xee\xae\x84" + "\xee\xae\x85\xee\xae\x86\xee\xae\x87\xee\xae\x88\xee\xae\x89\xee\xae\x8a\xee\xae\x8b\xee\xae\x8c\xee\xae\x8d\xee\xae\x8e\xee\xae\x8f\xee\xae\x90\xee\xae\x91\xee\xae\x92\xee\xae\x93\xee\xae\x94\xee\xae\x95\xee\xae\x96\xee\xae\x97\xee\xae\x99\xee\xae\x9a\xee\xae\x9b\xee\xae\x9c\xee\xae\x9d\xee\xae\x9e\xee\xae\x9f\xee\xae\xa0\xee\xae\xa1\xee\xae\xa2\xee\xae\xa3\xee\xae\xa4\xee\xae\xa5" + "\xee\xae\xa6\xee\xae\xa7\xee\xae\xa8\xee\xae\xa9\xee\xae\xaa\xee\xae\xab\xee\xae\xac\xee\xae\xad\xee\xae\xae\xee\xae\xaf\xee\xae\xb0\xee\xae\xb1\xee\xae\xb2\xee\xae\xb3\xee\xae\xb4\xee\xae\xb5\xee\xae\xb6\xee\xae\xb7\xee\xae\xb8\xee\xae\xb9\xee\xae\xba\xee\xae\xbb\xee\xae\xbc\xee\xae\xbd\xee\xae\xbe\xee\xaf\x80\xee\xaf\x81\xee\xaf\x82\xee\xaf\x84\xee\xaf\x85\xee\xaf\x86\xee\xaf\x87" + "\xee\xaf\x88\xee\xaf\x89\xee\xaf\x8a\xee\xaf\x8b\xee\xaf\x8c\xee\xaf\x8d\xee\xaf\x8e\xee\xaf\x8f\xee\xaf\x90\xee\xaf\x91\xee\xaf\x92\xee\xaf\x93\xee\xaf\x94\xee\xaf\x95\xee\xaf\x96\xee\xaf\x97\xee\xaf\x98\xee\xaf\x99\xee\xaf\x9a\xee\xaf\x9b\xee\xaf\x9c\xee\xaf\x9d\xee\xaf\x9e\xee\xaf\x9f\xee\xaf\xa1\xee\xaf\xa2\xee\xaf\xa3\xee\xaf\xa4\xee\xaf\xa5\xee\xaf\xa6\xee\xaf\xa7\xee\xaf\xa8" + "\xee\xaf\xa9\xee\xaf\xaa\xee\xaf\xab\xee\xaf\xac\xee\xaf\xad\xee\xaf\xae\xee\xaf\xaf\xee\xaf\xb0\xee\xaf\xb1\xee\xaf\xb2\xee\xaf\xb3\xee\xaf\xb4\xee\xaf\xb5\xee\xaf\xb6\xee\xaf\xb7\xee\xaf\xb9\xee\xaf\xba\xee\xaf\xbb\xee\xb0\x80\xee\xb0\x81\xee\xb0\x82\xee\xb0\x83\xee\xb0\x84\xee\xb0\x85\xee\xb0\x86\xee\xb0\x87\xee\xb0\x88\xee\xb0\x89\xee\xb0\x8a\xee\xb0\x8b\xee\xb0\x8c\xee\xb0\x8d" + "\xee\xb0\x8e\xee\xb0\x8f\xee\xb0\x90\xee\xb0\x92\xee\xb0\x93\xee\xb0\x94\xee\xb0\x95\xee\xb0\x96\xee\xb0\x97\xee\xb0\x98\xee\xb0\x99\xee\xb0\x9a\xee\xb0\x9b\xee\xb0\x9c\xee\xb0\x9d\xee\xb0\x9e\xee\xb0\x9f\xee\xb0\xa0\xee\xb0\xa1\xee\xb0\xa2\xee\xb0\xa3\xee\xb0\xa4\xee\xb0\xa5\xee\xb0\xa6\xee\xb0\xa7\xee\xb0\xa8\xee\xb0\xa9\xee\xb0\xaa\xee\xb0\xab\xee\xb0\xac\xee\xb0\xad\xee\xb0\xae" + "\xee\xb0\xaf\xee\xb0\xb0\xee\xb0\xb1\xee\xb0\xb4\xee\xb0\xb5\xee\xb0\xb6\xee\xb0\xb7\xee\xb0\xb8\xee\xb0\xb9\xee\xb0\xba\xee\xb0\xbb\xee\xb0\xbc\xee\xb0\xbd\xee\xb0\xbe\xee\xb0\xbf\xee\xb1\x80\xee\xb1\x81\xee\xb1\x82\xee\xb1\x83\xee\xb1\x84\xee\xb1\x85\xee\xb1\x86\xee\xb1\x87\xee\xb1\x88\xee\xb1\x89\xee\xb1\x8a\xee\xb1\x8b\xee\xb1\x8c\xee\xb1\x8d\xee\xb1\x8e\xee\xb1\x90\xee\xb1\x91" + "\xee\xb1\x92\xee\xb1\x93\xee\xb1\x94\xee\xb1\x95\xee\xb1\x96\xee\xb1\x97\xee\xb1\x98\xee\xb1\x99\xee\xb1\x9a\xee\xb1\x9b\xee\xb1\x9c\xee\xb1\x9d\xee\xb1\x9e\xee\xb1\x9f\xee\xb1\xa0\xee\xb1\xa1\xee\xb1\xa2\xee\xb1\xa3\xee\xb1\xa4\xee\xb1\xa5\xee\xb1\xa6\xee\xb1\xa7\xee\xb1\xa8\xee\xb1\xa9\xee\xb1\xab\xee\xb1\xac\xee\xb1\xae\xee\xb1\xaf\xee\xb1\xb0\xee\xb1\xb1\xee\xb1\xb2\xee\xb1\xb3" + "\xee\xb1\xb4\xee\xb1\xb5\xee\xb1\xb6\xee\xb1\xb7\xee\xb1\xb8\xee\xb1\xb9\xee\xb1\xba\xee\xb1\xbb\xee\xb1\xbc\xee\xb1\xbd\xee\xb1\xbe\xee\xb1\xbf\xee\xb2\x80\xee\xb2\x81\xee\xb2\x82\xee\xb2\x83\xee\xb2\x84\xee\xb2\x86\xee\xb2\x87\xee\xb2\x88\xee\xb2\x89\xee\xb2\x8a\xee\xb2\x8b\xee\xb2\x8c\xee\xb2\x8d\xee\xb2\x8e\xee\xb2\x8f\xee\xb2\x90\xee\xb2\x91\xee\xb2\x92\xee\xb2\x93\xee\xb2\x94" + "\xee\xb2\x95\xee\xb2\x96\xee\xb2\x97\xee\xb2\x98\xee\xb2\x99\xee\xb2\x9a\xee\xb2\x9b\xee\xb2\x9c\xee\xb2\x9d\xee\xb2\x9e\xee\xb2\x9f\xee\xb2\xa0\xee\xb2\xa1\xee\xb2\xa2\xee\xb2\xa3\xee\xb2\xa4\xee\xb2\xa5\xee\xb2\xa6\xee\xb2\xa7\xee\xb2\xa8\xee\xb2\xa9\xee\xb2\xaa\xee\xb2\xab\xee\xb2\xac\xee\xb2\xad\xee\xb2\xae\xee\xb2\xaf\xee\xb2\xb0\xee\xb2\xb1\xee\xb2\xb2\xee\xb2\xb3\xee\xb2\xb4" + "\xee\xb2\xb5\xee\xb2\xb6\xee\xb2\xb7\xee\xb2\xb8\xee\xb2\xb9\xee\xb2\xba\xee\xb2\xbb\xee\xb2\xbc\xee\xb2\xbd\xee\xb2\xbe\xee\xb2\xbf\xee\xb3\x80\xee\xb3\x81\xee\xb3\x82\xee\xb3\x83\xee\xb3\x84\xee\xb3\x85\xee\xb3\x86\xee\xb3\x87\xee\xb3\x88\xee\xb3\x89\xee\xb3\x8a\xee\xb3\x8b\xee\xb3\x90\xee\xb3\x93\xee\xb3\x94\xee\xb3\x95\xee\xb3\x97\xee\xb3\x98\xee\xb3\x99\xee\xb3\x9a\xee\xb3\x9b" + "\xee\xb3\x9c\xee\xb3\x9d\xee\xb3\x9e\xee\xb3\x9f\xee\xb3\xa0\xee\xb3\xa1\xee\xb3\xa2\xee\xb3\xa3\xee\xb3\xa4\xee\xb3\xa5\xee\xb3\xa6\xee\xb3\xa7\xee\xb3\xa8\xee\xb3\xa9\xee\xb3\xaa\xee\xb3\xab\xee\xb3\xac\xee\xb3\xad\xee\xb3\xae\xee\xb3\xaf\xee\xb3\xb0\xee\xb3\xb1\xee\xb3\xb2\xee\xb3\xb3\xee\xb3\xb4\xee\xb3\xb5\xee\xb3\xb6\xee\xb3\xb7\xee\xb3\xb8\xee\xb3\xb9\xee\xb3\xba\xee\xb3\xbb" + "\xee\xb3\xbc\xee\xb3\xbd\xee\xb3\xbe\xee\xb3\xbf\xee\xb4\x80\xee\xb4\x81\xee\xb4\x82\xee\xb4\x83\xee\xb4\x84\xee\xb4\x85\xee\xb4\x86\xee\xb4\x87\xee\xb4\x88\xee\xb4\x89\xee\xb4\x8a\xee\xb4\x8b\xee\xb4\x8c\xee\xb4\x8d\xee\xb4\x8e\xee\xb4\x8f\xee\xb4\x90\xee\xb4\x91\xee\xb4\x92\xee\xb4\x93\xee\xb4\x94\xee\xb4\x95\xee\xb4\x96\xee\xb4\x97\xee\xb4\x98\xee\xb4\x99\xee\xb4\x9a\xee\xb4\x9b" + "\xee\xb4\x9c\xee\xb4\x9d\xee\xb4\x9e\xee\xb4\x9f\xee\xb4\xa0\xee\xb4\xa1\xee\xb4\xa2\xee\xb4\xa3\xee\xb4\xa4\xee\xb4\xa5\xee\xb4\xa6\xee\xb4\xa7\xee\xb4\xa8\xee\xb4\xa9\xee\xb4\xaa\xee\xb4\xab\xee\xb4\xac\xee\xb4\xad\xee\xb4\xae\xee\xb4\xaf\xee\xb4\xb0\xee\xb4\xb2\xee\xb4\xb3\xee\xb4\xb4\xee\xb4\xb5\xee\xb4\xb6\xee\xb4\xb7\xee\xb4\xb8\xee\xb4\xb9\xee\xb4\xbc\xee\xb4\xbd\xee\xb4\xbe" + "\xee\xb5\x80\xee\xb5\x81\xee\xb5\x82\xee\xb5\x83\xee\xb5\x84\xee\xb5\x85\xee\xb5\x86\xee\xb5\x87\xee\xb5\x88\xee\xb5\x89\xee\xb5\x8a\xee\xb5\x8b\xee\xb5\x8c\xee\xb5\x8d\xee\xb5\x8e\xee\xb5\x8f\xee\xb5\x90\xee\xb5\x91\xee\xb5\x92\xee\xb5\x93\xee\xb5\x94\xee\xb5\x95\xee\xb5\x96\xee\xb5\x97\xee\xb5\x98\xee\xb5\x99\xee\xb5\x9a\xee\xb5\x9b\xee\xb5\x9c\xee\xb5\x9d\xee\xb5\x9e\xee\xb5\x9f" + "\xee\xb5\xa0\xee\xb5\xa1\xee\xb5\xa2\xee\xb5\xa3\xee\xb5\xa4\xee\xb5\xa5\xee\xb5\xa6\xee\xb5\xa7\xee\xb5\xa8\xee\xb5\xa9\xee\xb5\xaa\xee\xb5\xab\xee\xb5\xac\xee\xb5\xad\xee\xb5\xae\xee\xb5\xaf\xee\xb5\xb0\xee\xb5\xb1\xee\xb5\xb2\xee\xb5\xb3\xee\xb5\xb4\xee\xb5\xb5\xee\xb5\xb6\xee\xb5\xb7\xee\xb5\xb8\xee\xb5\xb9\xee\xb5\xba\xee\xb5\xbb\xee\xb5\xbc\xee\xb5\xbd\xee\xb5\xbe\xee\xb5\xbf" + "\xee\xb6\x80\xee\xb6\x81\xee\xb6\x82\xee\xb6\x84\xee\xb6\x85\xee\xb6\x86\xee\xb6\x87\xee\xb6\x88\xee\xb6\x89\xee\xb6\x8a\xee\xb6\x8c\xee\xb6\x8d\xee\xb6\x8e\xee\xb6\x8f\xee\xb6\x90\xee\xb6\x91\xee\xb6\x92\xee\xb6\x93\xee\xb6\x94\xee\xb6\x95\xee\xb6\x96\xee\xb6\x97\xee\xb6\x98\xee\xb6\x9a\xee\xb6\x9b\xee\xb6\x9c\xee\xb6\x9d\xee\xb6\x9e\xee\xb6\x9f\xee\xb6\xa0\xee\xb6\xa1\xee\xb6\xa2" + "\xee\xb6\xa3\xee\xb6\xa4\xee\xb6\xa6\xee\xb6\xa7\xee\xb6\xa8\xee\xb6\xa9\xee\xb6\xaa\xee\xb6\xab\xee\xb6\xac\xee\xb6\xad\xee\xb6\xae\xee\xb6\xaf\xee\xb6\xb0\xee\xb6\xb1\xee\xb6\xb2\xee\xb6\xb3\xee\xb6\xb4\xee\xb6\xb5\xee\xb6\xb6\xee\xb6\xb7\xee\xb6\xb8\xee\xb6\xb9\xee\xb6\xba\xee\xb6\xbb\xee\xb6\xbc\xee\xb6\xbd\xee\xb6\xbe\xee\xb6\xbf\xee\xb7\x80\xee\xb7\x81\xee\xb7\x82\xee\xb7\x83" + "\xee\xb7\x84\xee\xb7\x85\xee\xb7\x86\xee\xb7\x87\xee\xb7\x88\xee\xb7\x89\xee\xb7\x8a\xee\xb7\x8b\xee\xb7\x8c\xee\xb7\x8d\xee\xb7\x8e\xee\xb7\x8f\xee\xb7\x90\xee\xb7\x91\xee\xb7\x92\xee\xb7\x93\xee\xb7\x94\xee\xb7\x95\xee\xb7\x96\xee\xb7\x97\xee\xb7\x98\xee\xb7\x99\xee\xb7\x9a\xee\xb7\x9b\xee\xb7\x9c\xee\xb7\x9d\xee\xb7\x9e\xee\xb7\x9f\xee\xb7\xa0\xee\xb7\xa1\xee\xb7\xa2\xee\xb7\xa3" + "\xee\xb7\xa4\xee\xb7\xa5\xee\xb7\xa6\xee\xb7\xa7\xee\xb7\xa8\xee\xb7\xa9\xee\xb7\xaa\xee\xb7\xab\xee\xb7\xac\xee\xb7\xad\xee\xb7\xae\xee\xb7\xaf\xee\xb7\xb0\xee\xb7\xb1\xee\xb7\xb2\xee\xb7\xb3\xee\xb7\xb4\xee\xb7\xb5\xee\xb7\xb6\xee\xb7\xb7\xee\xb7\xb8\xee\xb7\xb9\xee\xb7\xba\xee\xb7\xbb\xee\xb7\xbc\xee\xb7\xbd\xee\xb7\xbe\xee\xb7\xbf\xee\xb8\x80\xee\xb8\x81\xee\xb8\x82\xee\xb8\x83" + "\xee\xb8\x84\xee\xb8\x85\xee\xb8\x86\xee\xb8\x87\xee\xb8\x88\xee\xb8\x89\xee\xb8\x8a\xee\xb8\x8b\xee\xb8\x8c\xee\xb8\x8d\xee\xb8\x8e\xee\xb8\x8f\xee\xb8\x90\xee\xb8\x91\xee\xb8\x92\xee\xb8\x93\xee\xb8\x94\xee\xb8\x95\xee\xb8\x96\xee\xb8\x97\xee\xb8\x98\xee\xb8\x99\xee\xb8\x9a\xee\xb8\x9b\xee\xb8\x9c\xee\xb8\x9d\xee\xb8\x9e\xee\xb8\x9f\xee\xb8\xa0\xee\xb8\xa1\xee\xb8\xa2\xee\xb8\xa3" + "\xee\xb8\xa4\xee\xb8\xa5\xee\xb8\xa6\xee\xb8\xa7\xee\xb8\xa8\xee\xb8\xa9\xee\xb8\xaa\xee\xb8\xab\xee\xb8\xac\xee\xb8\xad\xee\xb8\xae\xee\xb8\xaf\xee\xb8\xb0\xee\xb8\xb1\xee\xb8\xb2\xee\xb8\xb3\xee\xb8\xb4\xee\xb8\xb5\xee\xb8\xb6\xee\xb8\xb7\xee\xb8\xb8\xee\xb8\xb9\xee\xb8\xba\xee\xb8\xbb\xee\xb8\xbc\xee\xb8\xbd\xee\xb8\xbe\xee\xb8\xbf\xee\xb9\x80\xee\xb9\x81\xee\xb9\x82\xee\xb9\x83" + "\xee\xb9\x84\xee\xb9\x85\xee\xb9\x86\xee\xb9\x87\xee\xb9\x88\xee\xb9\x89\xee\xb9\x8a\xee\xb9\x8b\xee\xb9\x8c\xee\xb9\x8d\xee\xb9\x8e\xee\xb9\x8f\xee\xb9\x90\xee\xb9\x91\xee\xb9\x93\xee\xb9\x94\xee\xb9\x95\xee\xb9\x96\xee\xb9\x97\xee\xb9\x98\xee\xb9\x99\xee\xb9\x9a\xee\xb9\x9b\xee\xb9\x9c\xee\xb9\x9d\xee\xb9\x9e\xee\xb9\x9f\xee\xb9\xa0\xee\xb9\xa1\xee\xb9\xa2\xee\xb9\xa3\xee\xb9\xa4" + "\xee\xb9\xa5\xee\xb9\xa6\xee\xb9\xa7\xee\xb9\xa8\xee\xb9\xa9\xee\xb9\xaa\xee\xb9\xab\xee\xb9\xac\xee\xb9\xad\xee\xb9\xae\xee\xb9\xaf\xee\xb9\xb0\xee\xb9\xb1\xee\xb9\xb2\xee\xb9\xb3\xee\xb9\xb4\xee\xb9\xb5\xee\xb9\xb6\xee\xb9\xb7\xee\xb9\xb8\xee\xb9\xb9\xee\xb9\xba\xee\xb9\xbb\xee\xb9\xbc\xee\xb9\xbd\xee\xb9\xbe\xee\xba\x81\xee\xba\x82\xee\xba\x83\xee\xba\x84\xee\xba\x85\xee\xba\x86" + "\xee\xba\x87\xee\xba\x88\xee\xba\x89\xee\xba\x8a\xee\xba\x8b\xee\xba\x8c\xee\xba\x8d\xee\xba\x8e\xee\xba\x8f\xee\xba\x90\xee\xba\x91\xee\xba\x92\xee\xba\x93\xee\xba\x94\xee\xba\x95\xee\xba\x96\xee\xba\x97\xee\xba\x98\xee\xba\x99\xee\xba\x9a\xee\xba\x9b\xee\xba\x9c\xee\xba\x9d\xee\xba\x9e\xee\xba\x9f\xee\xba\xa0\xee\xba\xa1\xee\xba\xa2\xee\xba\xa3\xee\xba\xa4\xee\xba\xa5\xee\xba\xa6" + "\xee\xba\xa7\xee\xba\xa8\xee\xba\xa9\xee\xba\xaa\xee\xba\xab\xee\xba\xac\xee\xba\xad\xee\xba\xae\xee\xba\xaf\xee\xba\xb0\xee\xba\xb1\xee\xba\xb2\xee\xba\xb3\xee\xba\xb4\xee\xba\xb5\xee\xba\xb6\xee\xba\xb7\xee\xba\xb8\xee\xba\xb9\xee\xba\xba\xee\xba\xbb\xee\xba\xbc\xee\xba\xbd\xee\xba\xbe\xee\xba\xbf\xee\xbb\x80\xee\xbb\x81\xee\xbb\x82\xee\xbb\x83\xee\xbb\x84\xee\xbb\x85\xee\xbb\x86" + "\xee\xbb\x87\xee\xbb\x88\xee\xbb\x89\xee\xbb\x8a\xee\xbb\x8b\xee\xbb\x8c\xee\xbb\x8d\xee\xbb\x8e\xee\xbb\x8f\xee\xbb\x90\xee\xbb\x91\xee\xbb\x92\xee\xbb\x93\xee\xbb\x94\xee\xbb\x95\xee\xbb\x96\xee\xbb\x97\xee\xbb\x98\xee\xbb\x99\xee\xbb\x9a\xee\xbb\x9c\xee\xbb\x9f\xee\xbb\xa0\xee\xbb\xa1\xee\xbb\xa2\xee\xbb\xa3\xee\xbb\xa4\xee\xbb\xa5\xee\xbb\xa6\xee\xbb\xa7\xee\xbb\xa8\xee\xbb\xa9" + "\xee\xbb\xaa\xee\xbb\xab\xee\xbb\xac\xee\xbb\xad\xee\xbb\xae\xee\xbb\xaf\xee\xbb\xb0\xee\xbb\xb1\xee\xbb\xb2\xee\xbb\xb3\xee\xbb\xb4\xee\xbb\xb5\xee\xbb\xb6\xee\xbb\xb7\xee\xbb\xb8\xee\xbb\xb9\xee\xbb\xba\xee\xbb\xbb\xee\xbb\xbc\xee\xbb\xbd\xee\xbb\xbe\xee\xbb\xbf\xee\xbc\x80\xee\xbc\x81\xee\xbc\x82\xee\xbc\x83\xee\xbc\x84\xee\xbc\x85\xee\xbc\x86\xee\xbc\x87\xee\xbc\x88\xee\xbc\x89" + "\xee\xbc\x8a\xee\xbc\x8b\xee\xbc\x8c\xee\xbc\x8d\xee\xbc\x8e\xee\xbc\x90\xee\xbc\x91\xee\xbc\x92\xee\xbc\x93\xee\xbc\x94\xee\xbc\x95\xee\xbc\x96\xee\xbc\x97\xee\xbc\x98\xee\xbc\x99\xee\xbc\x9a\xee\xbc\x9b\xee\xbc\x9c\xee\xbc\x9d\xee\xbc\x9e\xee\xbc\x9f\xee\xbc\xa0\xee\xbc\xa1\xee\xbc\xa2\xee\xbc\xa3\xee\xbc\xa4\xee\xbc\xa5\xee\xbc\xa6\xee\xbc\xa7\xee\xbc\xa8\xee\xbc\xa9\xee\xbc\xaa" + "\xee\xbc\xab\xee\xbc\xac\xee\xbc\xad\xee\xbc\xae\xee\xbc\xaf\xee\xbc\xb0\xee\xbc\xb1\xee\xbc\xb2\xee\xbc\xb3\xee\xbc\xb4\xee\xbc\xb5\xee\xbc\xb6\xee\xbc\xb7\xee\xbc\xb8\xee\xbc\xb9\xee\xbc\xba\xee\xbc\xbb\xee\xbc\xbc\xee\xbc\xbd\xee\xbc\xbe\xee\xbc\xbf\xee\xbd\x80\xee\xbd\x81\xee\xbd\x82\xee\xbd\x83\xee\xbd\x84\xee\xbd\x85\xee\xbd\x86\xee\xbd\x87\xee\xbd\x88\xee\xbd\x89\xee\xbd\x8b" + "\xee\xbd\x8c\xee\xbd\x8d\xee\xbd\x8e\xee\xbd\x8f\xee\xbd\x90\xee\xbd\x91\xee\xbd\x92\xee\xbd\x93\xee\xbd\x94\xee\xbd\x95\xee\xbd\x96\xee\xbd\x97\xee\xbd\x98\xee\xbd\x99\xee\xbd\x9a\xee\xbd\x9b\xee\xbd\x9c\xee\xbd\x9d\xee\xbd\x9e\xee\xbd\x9f\xee\xbd\xa0\xee\xbd\xa1\xee\xbd\xa2\xee\xbd\xa3\xee\xbd\xa4\xee\xbd\xa5\xee\xbd\xa6\xee\xbd\xa7\xee\xbd\xa8\xee\xbd\xa9\xee\xbd\xaa\xee\xbd\xab" + "\xee\xbd\xac\xee\xbd\xad\xee\xbd\xae\xee\xbd\xaf\xee\xbd\xb0\xee\xbd\xb1\xee\xbd\xb2\xee\xbd\xb3\xee\xbd\xb4\xee\xbd\xb5\xee\xbd\xb6\xee\xbd\xb7\xee\xbd\xb8\xee\xbd\xb9\xee\xbd\xba\xee\xbd\xbb\xee\xbd\xbc\xee\xbd\xbd\xee\xbd\xbe\xee\xbd\xbf\xee\xbe\x80\xee\xbe\x81\xee\xbe\x82\xee\xbe\x83\xee\xbe\x84\xee\xbe\x85\xee\xbe\x86\xee\xbe\x87\xee\xbe\x88\xee\xbe\x89\xee\xbe\x8a\xee\xbe\x8b" + "\xee\xbe\x8c\xee\xbe\x8d\xee\xbe\x8e\xee\xbe\x8f\xee\xbe\x90\xee\xbe\x91\xee\xbe\x92\xee\xbe\x93\xee\xbe\x94\xee\xbe\x95\xee\xbe\x96\xee\xbe\x97\xee\xbe\x98\xee\xbe\x99\xee\xbe\x9a\xee\xbe\x9b\xee\xbe\x9c\xee\xbe\x9d\xee\xbe\x9e\xee\xbe\x9f\xee\xbe\xa0\xee\xbe\xa1\xee\xbe\xa2\xee\xbe\xa3\xee\xbe\xa4\xee\xbe\xa5\xee\xbe\xa6\xee\xbe\xa7\xee\xbe\xa8\xee\xbe\xa9\xee\xbe\xaa\xee\xbe\xab" + "\xee\xbe\xac\xee\xbe\xad\xee\xbe\xae\xee\xbe\xaf\xee\xbe\xb0\xee\xbe\xb1\xee\xbe\xb2\xee\xbe\xb3\xee\xbe\xb4\xee\xbe\xb5\xee\xbe\xb6\xee\xbe\xb7\xee\xbe\xb8\xee\xbe\xb9\xee\xbe\xba\xee\xbe\xbb\xee\xbe\xbc\xee\xbe\xbd\xee\xbe\xbe\xee\xbe\xbf\xee\xbf\x80\xee\xbf\x81\xee\xbf\x82\xee\xbf\x83\xee\xbf\x84\xee\xbf\x85\xee\xbf\x86\xee\xbf\x87\xee\xbf\x88\xee\xbf\x89\xee\xbf\x8a\xee\xbf\x8b" + "\xee\xbf\x8c\xee\xbf\x8d\xee\xbf\x8f\xee\xbf\x90\xee\xbf\x91\xee\xbf\x92\xee\xbf\x93\xee\xbf\x94\xee\xbf\x95\xee\xbf\x96\xee\xbf\x97\xee\xbf\x98\xee\xbf\x99\xee\xbf\x9a\xee\xbf\x9b\xee\xbf\x9c\xee\xbf\x9d\xee\xbf\x9e\xee\xbf\x9f\xee\xbf\xa0\xee\xbf\xa1\xee\xbf\xa2\xee\xbf\xa3\xee\xbf\xa4\xee\xbf\xa5\xee\xbf\xa6\xee\xbf\xa7\xee\xbf\xa8\xee\xbf\xa9\xee\xbf\xaa\xee\xbf\xab\xee\xbf\xac" + "\xee\xbf\xad\xee\xbf\xae\xee\xbf\xaf\xee\xbf\xb0\xee\xbf\xb1\xee\xbf\xb2\xee\xbf\xb3\xee\xbf\xb4\xee\xbf\xb5\xee\xbf\xb6\xee\xbf\xb7\xee\xbf\xb8\xee\xbf\xb9\xee\xbf\xba\xee\xbf\xbb\xee\xbf\xbc\xee\xbf\xbd\xee\xbf\xbe\xee\xbf\xbf\xef\x80\x80\xef\x80\x81\xef\x80\x82\xef\x80\x83\xef\x80\x84\xef\x80\x85\xef\x80\x86\xef\x80\x87\xef\x80\x88\xef\x80\x89\xef\x80\x8a\xef\x80\x8b\xef\x80\x8c" + "\xef\x80\x8d\xef\x80\x8e\xef\x80\x8f\xef\x80\x90\xef\x80\x91\xef\x80\x92\xef\x80\x93\xef\x80\x94\xef\x80\x95\xef\x80\x96\xef\x80\x97\xef\x80\x98\xef\x80\x99\xef\x80\x9a\xef\x80\x9b\xef\x80\x9c\xef\x80\x9d\xef\x80\x9e\xef\x80\x9f\xef\x80\xa0\xef\x80\xa1\xef\x80\xa2\xef\x80\xa3\xef\x80\xa4\xef\x80\xa5\xef\x80\xa6\xef\x80\xa7\xef\x80\xa8\xef\x80\xa9\xef\x80\xaa\xef\x80\xab\xef\x80\xac" + "\xef\x80\xad\xef\x80\xae\xef\x80\xaf\xef\x80\xb0\xef\x80\xb1\xef\x80\xb2\xef\x80\xb3\xef\x80\xb4\xef\x80\xb5\xef\x80\xb6\xef\x80\xb7\xef\x80\xb8\xef\x80\xb9\xef\x80\xba\xef\x80\xbb\xef\x80\xbc\xef\x80\xbd\xef\x80\xbe\xef\x80\xbf\xef\x81\x80\xef\x81\x81\xef\x81\x82\xef\x81\x83\xef\x81\x84\xef\x81\x85\xef\x81\x86\xef\x81\x87\xef\x81\x88\xef\x81\x89\xef\x81\x8a\xef\x81\x8b\xef\x81\x8c" + "\xef\x81\x8d\xef\x81\x8e\xef\x81\x8f\xef\x81\x90\xef\x81\x91\xef\x81\x92\xef\x81\x93\xef\x81\x94\xef\x81\x95\xef\x81\x96\xef\x81\x97\xef\x81\x98\xef\x81\x99\xef\x81\x9a\xef\x81\x9b\xef\x81\x9c\xef\x81\x9d\xef\x81\x9e\xef\x81\x9f\xef\x81\xa0\xef\x81\xa1\xef\x81\xa2\xef\x81\xa3\xef\x81\xa4\xef\x81\xa5\xef\x81\xa7\xef\x81\xa8\xef\x81\xa9\xef\x81\xaa\xef\x81\xab\xef\x81\xac\xef\x81\xad" + "\xef\x81\xae\xef\x81\xb0\xef\x81\xb1\xef\x81\xb2\xef\x81\xb3\xef\x81\xb4\xef\x81\xb5\xef\x81\xb6\xef\x81\xb7\xef\x81\xb8\xef\x81\xb9\xef\x81\xba\xef\x81\xbb\xef\x81\xbc\xef\x81\xbd\xef\x81\xbe\xef\x81\xbf\xef\x82\x80\xef\x82\x81\xef\x82\x82\xef\x82\x83\xef\x82\x84\xef\x82\x85\xef\x82\x86\xef\x82\x87\xef\x82\x88\xef\x82\x89\xef\x82\x8a\xef\x82\x8b\xef\x82\x8c\xef\x82\x8d\xef\x82\x8e" + "\xef\x82\x8f\xef\x82\x90\xef\x82\x91\xef\x82\x92\xef\x82\x93\xef\x82\x94\xef\x82\x95\xef\x82\x96\xef\x82\x97\xef\x82\x98\xef\x82\x99\xef\x82\x9a\xef\x82\x9b\xef\x82\x9c\xef\x82\x9d\xef\x82\x9e\xef\x82\x9f\xef\x82\xa0\xef\x82\xa1\xef\x82\xa2\xef\x82\xa3\xef\x82\xa4\xef\x82\xa5\xef\x82\xa6\xef\x82\xa7\xef\x82\xa8\xef\x82\xa9\xef\x82\xaa\xef\x82\xab\xef\x82\xac\xef\x82\xad\xef\x82\xae" + "\xef\x82\xaf\xef\x82\xb0\xef\x82\xb1\xef\x82\xb2\xef\x82\xb3\xef\x82\xb4\xef\x82\xb5\xef\x82\xb6\xef\x82\xb7\xef\x82\xb8\xef\x82\xb9\xef\x82\xba\xef\x82\xbb\xef\x82\xbc\xef\x82\xbd\xef\x82\xbe\xef\x82\xbf\xef\x83\x80\xef\x83\x81\xef\x83\x82\xef\x83\x83\xef\x83\x84\xef\x83\x85\xef\x83\x86\xef\x83\x87\xef\x83\x88\xef\x83\x89\xef\x83\x8a\xef\x83\x8b\xef\x83\x8c\xef\x83\x8d\xef\x83\x8e" + "\xef\x83\x8f\xef\x83\x90\xef\x83\x91\xef\x83\x92\xef\x83\x93\xef\x83\x94\xef\x83\x95\xef\x83\x96\xef\x83\x97\xef\x83\x98\xef\x83\x99\xef\x83\x9a\xef\x83\x9b\xef\x83\x9c\xef\x83\x9d\xef\x83\x9e\xef\x83\x9f\xef\x83\xa0\xef\x83\xa1\xef\x83\xa2\xef\x83\xa3\xef\x83\xa4\xef\x83\xa5\xef\x83\xa6\xef\x83\xa7\xef\x83\xa8\xef\x83\xa9\xef\x83\xaa\xef\x83\xab\xef\x83\xac\xef\x83\xad\xef\x83\xae" + "\xef\x83\xaf\xef\x83\xb0\xef\x83\xb1\xef\x83\xb2\xef\x83\xb3\xef\x83\xb4\xef\x83\xb5\xef\x83\xb6\xef\x83\xb7\xef\x83\xb8\xef\x83\xb9\xef\x83\xba\xef\x83\xbb\xef\x83\xbc\xef\x83\xbd\xef\x83\xbe\xef\x83\xbf\xef\x84\x80\xef\x84\x81\xef\x84\x82\xef\x84\x83\xef\x84\x84\xef\x84\x85\xef\x84\x86\xef\x84\x87\xef\x84\x88\xef\x84\x89\xef\x84\x8a\xef\x84\x8b\xef\x84\x8c\xef\x84\x8d\xef\x84\x8e" + "\xef\x84\x8f\xef\x84\x90\xef\x84\x91\xef\x84\x92\xef\x84\x93\xef\x84\x94\xef\x84\x95\xef\x84\x96\xef\x84\x97\xef\x84\x98\xef\x84\x99\xef\x84\x9a\xef\x84\x9b\xef\x84\x9c\xef\x84\x9d\xef\x84\x9e\xef\x84\x9f\xef\x84\xa0\xef\x84\xa1\xef\x84\xa2\xef\x84\xa3\xef\x84\xa4\xef\x84\xa5\xef\x84\xa6\xef\x84\xa7\xef\x84\xa8\xef\x84\xa9\xef\x84\xaa\xef\x84\xab\xef\x84\xac\xef\x84\xad\xef\x84\xae" + "\xef\x84\xaf\xef\x84\xb0\xef\x84\xb1\xef\x84\xb2\xef\x84\xb3\xef\x84\xb4\xef\x84\xb5\xef\x84\xb6\xef\x84\xb7\xef\x84\xb8\xef\x84\xb9\xef\x84\xba\xef\x84\xbc\xef\x84\xbd\xef\x84\xbe\xef\x84\xbf\xef\x85\x80\xef\x85\x81\xef\x85\x82\xef\x85\x83\xef\x85\x84\xef\x85\x85\xef\x85\x86\xef\x85\x87\xef\x85\x88\xef\x85\x89\xef\x85\x8a\xef\x85\x8b\xef\x85\x8c\xef\x85\x8d\xef\x85\x8e\xef\x85\x8f" + "\xef\x85\x90\xef\x85\x91\xef\x85\x93\xef\x85\x94\xef\x85\x95\xef\x85\x96\xef\x85\x97\xef\x85\x98\xef\x85\x99\xef\x85\x9a\xef\x85\x9b\xef\x85\x9c\xef\x85\x9d\xef\x85\x9e\xef\x85\x9f\xef\x85\xa0\xef\x85\xa1\xef\x85\xa2\xef\x85\xa3\xef\x85\xa4\xef\x85\xa5\xef\x85\xa6\xef\x85\xa7\xef\x85\xa8\xef\x85\xa9\xef\x85\xaa\xef\x85\xab\xef\x85\xac\xef\x85\xad\xef\x85\xae\xef\x85\xaf\xef\x85\xb0" + "\xef\x85\xb1\xef\x85\xb2\xef\x85\xb3\xef\x85\xb4\xef\x85\xb5\xef\x85\xb6\xef\x85\xb7\xef\x85\xb8\xef\x85\xb9\xef\x85\xba\xef\x85\xbb\xef\x85\xbc\xef\x85\xbd\xef\x85\xbe\xef\x85\xbf\xef\x86\x80\xef\x86\x81\xef\x86\x82\xef\x86\x83\xef\x86\x84\xef\x86\x85\xef\x86\x86\xef\x86\x87\xef\x86\x88\xef\x86\x89\xef\x86\x8a\xef\x86\x8b\xef\x86\x8c\xef\x86\x8d\xef\x86\x8e\xef\x86\x8f\xef\x86\x90" + "\xef\x86\x91\xef\x86\x92\xef\x86\x93\xef\x86\x94\xef\x86\x95\xef\x86\x96\xef\x86\x97\xef\x86\x98\xef\x86\x99\xef\x86\x9a\xef\x86\x9b\xef\x86\x9c\xef\x86\x9d\xef\x86\x9e\xef\x86\x9f\xef\x86\xa0\xef\x86\xa1\xef\x86\xa2\xef\x86\xa3\xef\x86\xa4\xef\x86\xa5\xef\x86\xa6\xef\x86\xa7\xef\x86\xa8\xef\x86\xa9\xef\x86\xaa\xef\x86\xab\xef\x86\xad\xef\x86\xae\xef\x86\xaf\xef\x86\xb0\xef\x86\xb1" + "\xef\x86\xb2\xef\x86\xb3\xef\x86\xb4\xef\x86\xb5\xef\x86\xb6\xef\x86\xb7\xef\x86\xb8\xef\x86\xb9\xef\x86\xba\xef\x86\xbb\xef\x86\xbc\xef\x86\xbd\xef\x86\xbe\xef\x86\xbf\xef\x87\x80\xef\x87\x81\xef\x87\x82\xef\x87\x83\xef\x87\x84\xef\x87\x85\xef\x87\x86\xef\x87\x87\xef\x87\x88\xef\x87\x89\xef\x87\x8a\xef\x87\x8b\xef\x87\x8c\xef\x87\x8d\xef\x87\x8e\xef\x87\x8f\xef\x87\x90\xef\x87\x91" + "\xef\x87\x92\xef\x87\x93\xef\x87\x94\xef\x87\x96\xef\x87\x97\xef\x87\x98\xef\x87\x99\xef\x87\x9a\xef\x87\x9b\xef\x87\x9c\xef\x87\x9d\xef\x87\x9e\xef\x87\x9f\xef\x87\xa0\xef\x87\xa1\xef\x87\xa2\xef\x87\xa3\xef\x87\xa4\xef\x87\xa5\xef\x87\xa6\xef\x87\xa7\xef\x87\xa8\xef\x87\xa9\xef\x87\xaa\xef\x87\xab\xef\x87\xac\xef\x87\xad\xef\x87\xae\xef\x87\xaf\xef\x87\xb0\xef\x87\xb1\xef\x87\xb2" + "\xef\x87\xb3\xef\x87\xb4\xef\x87\xb5\xef\x87\xb6\xef\x87\xb7\xef\x87\xb8\xef\x87\xb9\xef\x87\xba\xef\x87\xbb\xef\x87\xbc\xef\x87\xbd\xef\x87\xbe\xef\x87\xbf\xef\x88\x80\xef\x88\x81\xef\x88\x82\xef\x88\x83\xef\x88\x84\xef\x88\x85\xef\x88\x86\xef\x88\x87\xef\x88\x88\xef\x88\x89\xef\x88\x8a\xef\x88\x8b\xef\x88\x8c\xef\x88\x8d\xef\x88\x8e\xef\x88\x8f\xef\x88\x90\xef\x88\x91\xef\x88\x92" + "\xef\x88\x93\xef\x88\x94\xef\x88\x95\xef\x88\x96\xef\x88\x97\xef\x88\x98\xef\x88\x99\xef\x88\x9a\xef\x88\x9b\xef\x88\x9c\xef\x88\x9d\xef\x88\x9e\xef\x88\x9f\xef\x88\xa0\xef\x88\xa1\xef\x88\xa2\xef\x88\xa3\xef\x88\xa4\xef\x88\xa5\xef\x88\xa6\xef\x88\xa7\xef\x88\xa8\xef\x88\xa9\xef\x88\xaa\xef\x88\xab\xef\x88\xac\xef\x88\xad\xef\x88\xae\xef\x88\xaf\xef\x88\xb0\xef\x88\xb1\xef\x88\xb2" + "\xef\x88\xb3\xef\x88\xb4\xef\x88\xb5\xef\x88\xb6\xef\x88\xb7\xef\x88\xb8\xef\x88\xb9\xef\x88\xba\xef\x88\xbb\xef\x88\xbc\xef\x88\xbd\xef\x88\xbe\xef\x89\x80\xef\x89\x81\xef\x89\x82\xef\x89\x83\xef\x89\x84\xef\x89\x85\xef\x89\x86\xef\x89\x87\xef\x89\x88\xef\x89\x89\xef\x89\x8a\xef\x89\x8b\xef\x89\x8c\xef\x89\x8d\xef\x89\x8e\xef\x89\x8f\xef\x89\x90\xef\x89\x91\xef\x89\x92\xef\x89\x93" + "\xef\x89\x94\xef\x89\x95\xef\x89\x96\xef\x89\x97\xef\x89\x98\xef\x89\x99\xef\x89\x9a\xef\x89\x9b\xef\x89\x9c\xef\x89\x9d\xef\x89\x9e\xef\x89\x9f\xef\x89\xa0\xef\x89\xa1\xef\x89\xa2\xef\x89\xa3\xef\x89\xa4\xef\x89\xa5\xef\x89\xa6\xef\x89\xa7\xef\x89\xa8\xef\x89\xa9\xef\x89\xaa\xef\x89\xab\xef\x89\xac\xef\x89\xad\xef\x89\xae\xef\x89\xaf\xef\x89\xb0\xef\x89\xb1\xef\x89\xb2\xef\x89\xb3" + "\xef\x89\xb4\xef\x89\xb5\xef\x89\xb6\xef\x89\xb7\xef\x89\xb8\xef\x89\xb9\xef\x89\xba\xef\x89\xbb\xef\x89\xbc\xef\x89\xbd\xef\x89\xbe\xef\x89\xbf\xef\x8a\x80\xef\x8a\x81\xef\x8a\x82\xef\x8a\x83\xef\x8a\x84\xef\x8a\x85\xef\x8a\x86\xef\x8a\x87\xef\x8a\x88\xef\x8a\x89\xef\x8a\x8a\xef\x8a\x8b\xef\x8a\x8c\xef\x8a\x8d\xef\x8a\x8e\xef\x8a\x8f\xef\x8a\x90\xef\x8a\x91\xef\x8a\x92\xef\x8a\x93" + "\xef\x8a\x94\xef\x8a\x95\xef\x8a\x96\xef\x8a\x97\xef\x8a\x98\xef\x8a\x99\xef\x8a\x9a\xef\x8a\x9b\xef\x8a\x9c\xef\x8a\x9d\xef\x8a\x9e\xef\x8a\x9f\xef\x8a\xa0\xef\x8a\xa1\xef\x8a\xa2\xef\x8a\xa3\xef\x8a\xa4\xef\x8a\xa5\xef\x8a\xa6\xef\x8a\xa7\xef\x8a\xa8\xef\x8a\xa9\xef\x8a\xaa\xef\x8a\xab\xef\x8a\xad\xef\x8a\xae\xef\x8a\xaf\xef\x8a\xb0\xef\x8a\xb1\xef\x8a\xb2\xef\x8a\xb3\xef\x8a\xb4" + "\xef\x8a\xb5\xef\x8a\xb6\xef\x8a\xb7\xef\x8a\xb8\xef\x8a\xb9\xef\x8a\xba\xef\x8a\xbb\xef\x8a\xbc\xef\x8a\xbd\xef\x8a\xbe\xef\x8a\xbf\xef\x8b\x80\xef\x8b\x81\xef\x8b\x82\xef\x8b\x83\xef\x8b\x84\xef\x8b\x85\xef\x8b\x86\xef\x8b\x87\xef\x8b\x88\xef\x8b\x89\xef\x8b\x8a\xef\x8b\x8b\xef\x8b\x8c\xef\x8b\x8d\xef\x8b\x8e\xef\x8b\x8f\xef\x8b\x90\xef\x8b\x91\xef\x8b\x92\xef\x8b\x93\xef\x8b\x94" + "\xef\x8b\x95\xef\x8b\x96\xef\x8b\x97\xef\x8b\x98\xef\x8b\x99\xef\x8b\x9a\xef\x8b\x9b\xef\x8b\x9c\xef\x8b\x9d\xef\x8b\x9e\xef\x8b\x9f\xef\x8b\xa0\xef\x8b\xa1\xef\x8b\xa2\xef\x8b\xa3\xef\x8b\xa4\xef\x8b\xa5\xef\x8b\xa6\xef\x8b\xa7\xef\x8b\xa8\xef\x8b\xa9\xef\x8b\xaa\xef\x8b\xab\xef\x8b\xac\xef\x8b\xad\xef\x8b\xae\xef\x8b\xaf\xef\x8b\xb0\xef\x8b\xb1\xef\x8b\xb2\xef\x8b\xb3\xef\x8b\xb4" + "\xef\x8b\xb5\xef\x8b\xb6\xef\x8b\xb7\xef\x8b\xb8\xef\x8b\xb9\xef\x8b\xba\xef\x8b\xbb\xef\x8b\xbc\xef\x8b\xbd\xef\x8b\xbe\xef\x8b\xbf\xef\x8c\x80\xef\x8c\x81\xef\x8c\x82\xef\x8c\x83\xef\x8c\x84\xef\x8c\x85\xef\x8c\x86\xef\x8c\x87\xef\x8c\x88\xef\x8c\x89\xef\x8c\x8a\xef\x8c\x8b\xef\x8c\x8c\xef\x8c\x8d\xef\x8c\x8e\xef\x8c\x8f\xef\x8c\x90\xef\x8c\x91\xef\x8c\x92\xef\x8c\x93\xef\x8c\x94" + "\xef\x8c\x95\xef\x8c\x96\xef\x8c\x97\xef\x8c\x98\xef\x8c\x99\xef\x8c\x9a\xef\x8c\x9b\xef\x8c\x9c\xef\x8c\x9d\xef\x8c\x9e\xef\x8c\x9f\xef\x8c\xa0\xef\x8c\xa1\xef\x8c\xa2\xef\x8c\xa3\xef\x8c\xa4\xef\x8c\xa5\xef\x8c\xa6\xef\x8c\xa7\xef\x8c\xa8\xef\x8c\xa9\xef\x8c\xaa\xef\x8c\xab\xef\x8c\xac\xef\x8c\xad\xef\x8c\xae\xef\x8c\xaf\xef\x8c\xb0\xef\x8c\xb1\xef\x8c\xb2\xef\x8c\xb3\xef\x8c\xb4" + "\xef\x8c\xb5\xef\x8c\xb6\xef\x8c\xb7\xef\x8c\xb8\xef\x8c\xb9\xef\x8c\xba\xef\x8c\xbb\xef\x8c\xbc\xef\x8c\xbd\xef\x8c\xbe\xef\x8c\xbf\xef\x8d\x80\xef\x8d\x81\xef\x8d\x82\xef\x8d\x83\xef\x8d\x84\xef\x8d\x85\xef\x8d\x86\xef\x8d\x87\xef\x8d\x88\xef\x8d\x89\xef\x8d\x8a\xef\x8d\x8b\xef\x8d\x8c\xef\x8d\x8d\xef\x8d\x8e\xef\x8d\x8f\xef\x8d\x90\xef\x8d\x91\xef\x8d\x92\xef\x8d\x93\xef\x8d\x94" + "\xef\x8d\x95\xef\x8d\x96\xef\x8d\x98\xef\x8d\x99\xef\x8d\x9a\xef\x8d\x9b\xef\x8d\x9c\xef\x8d\x9d\xef\x8d\x9e\xef\x8d\x9f\xef\x8d\xa0\xef\x8d\xa1\xef\x8d\xa2\xef\x8d\xa3\xef\x8d\xa4\xef\x8d\xa5\xef\x8d\xa6\xef\x8d\xa7\xef\x8d\xa8\xef\x8d\xa9\xef\x8d\xaa\xef\x8d\xab\xef\x8d\xac\xef\x8d\xad\xef\x8d\xae\xef\x8d\xaf\xef\x8d\xb0\xef\x8d\xb1\xef\x8d\xb2\xef\x8d\xb3\xef\x8d\xb4\xef\x8d\xb5" + "\xef\x8d\xb6\xef\x8d\xb7\xef\x8d\xb8\xef\x8d\xb9\xef\x8d\xba\xef\x8d\xbb\xef\x8d\xbc\xef\x8d\xbd\xef\x8d\xbe\xef\x8d\xbf\xef\x8e\x80\xef\x8e\x81\xef\x8e\x82\xef\x8e\x83\xef\x8e\x84\xef\x8e\x85\xef\x8e\x86\xef\x8e\x87\xef\x8e\x88\xef\x8e\x89\xef\x8e\x8a\xef\x8e\x8b\xef\x8e\x8c\xef\x8e\x8d\xef\x8e\x8e\xef\x8e\x8f\xef\x8e\x90\xef\x8e\x91\xef\x8e\x92\xef\x8e\x93\xef\x8e\x94\xef\x8e\x95" + "\xef\x8e\x96\xef\x8e\x97\xef\x8e\x98\xef\x8e\x99\xef\x8e\x9a\xef\x8e\x9b\xef\x8e\x9d\xef\x8e\x9e\xef\x8e\x9f\xef\x8e\xa0\xef\x8e\xa1\xef\x8e\xa2\xef\x8e\xa3\xef\x8e\xa4\xef\x8e\xa5\xef\x8e\xa6\xef\x8e\xa7\xef\x8e\xa8\xef\x8e\xa9\xef\x8e\xaa\xef\x8e\xab\xef\x8e\xac\xef\x8e\xad\xef\x8e\xae\xef\x8e\xaf\xef\x8e\xb0\xef\x8e\xb1\xef\x8e\xb2\xef\x8e\xb3\xef\x8e\xb4\xef\x8e\xb5\xef\x8e\xb6" + "\xef\x8e\xb7\xef\x8e\xb8\xef\x8e\xb9\xef\x8e\xba\xef\x8e\xbb\xef\x8e\xbc\xef\x8e\xbd\xef\x8e\xbe\xef\x8e\xbf\xef\x8f\x80\xef\x8f\x81\xef\x8f\x82\xef\x8f\x83\xef\x8f\x84\xef\x8f\x85\xef\x8f\x86\xef\x8f\x87\xef\x8f\x88\xef\x8f\x89\xef\x8f\x8a\xef\x8f\x8b\xef\x8f\x8c\xef\x8f\x8d\xef\x8f\x8e\xef\x8f\x8f\xef\x8f\x90\xef\x8f\x91\xef\x8f\x92\xef\x8f\x93\xef\x8f\x94\xef\x8f\x95\xef\x8f\x96" + "\xef\x8f\x97\xef\x8f\x98\xef\x8f\x99\xef\x8f\x9a\xef\x8f\x9b\xef\x8f\x9c\xef\x8f\x9d\xef\x8f\x9e\xef\x8f\x9f\xef\x8f\xa0\xef\x8f\xa1\xef\x8f\xa2\xef\x8f\xa3\xef\x8f\xa4\xef\x8f\xa5\xef\x8f\xa6\xef\x8f\xa7\xef\x8f\xa8\xef\x8f\xa9\xef\x8f\xaa\xef\x8f\xab\xef\x8f\xac\xef\x8f\xad\xef\x8f\xae\xef\x8f\xaf\xef\x8f\xb0\xef\x8f\xb1\xef\x8f\xb2\xef\x8f\xb3\xef\x8f\xb4\xef\x8f\xb5\xef\x8f\xb6" + "\xef\x8f\xb7\xef\x8f\xb8\xef\x8f\xb9\xef\x8f\xba\xef\x8f\xbb\xef\x8f\xbc\xef\x8f\xbd\xef\x8f\xbe\xef\x8f\xbf\xef\x90\x80\xef\x90\x81\xef\x90\x82\xef\x90\x83\xef\x90\x84\xef\x90\x85\xef\x90\x86\xef\x90\x87\xef\x90\x88\xef\x90\x89\xef\x90\x8a\xef\x90\x8b\xef\x90\x8c\xef\x90\x8d\xef\x90\x8e\xef\x90\x8f\xef\x90\x90\xef\x90\x91\xef\x90\x92\xef\x90\x93\xef\x90\x94\xef\x90\x95\xef\x90\x96" + "\xef\x90\x97\xef\x90\x98\xef\x90\x99\xef\x90\x9a\xef\x90\x9b\xef\x90\x9c\xef\x90\x9d\xef\x90\x9e\xef\x90\x9f\xef\x90\xa0\xef\x90\xa1\xef\x90\xa2\xef\x90\xa3\xef\x90\xa4\xef\x90\xa5\xef\x90\xa6\xef\x90\xa7\xef\x90\xa8\xef\x90\xa9\xef\x90\xaa\xef\x90\xab\xef\x90\xac\xef\x90\xad\xef\x90\xae\xef\x90\xaf\xef\x90\xb0\xef\x90\xb1\xef\x90\xb2\xef\x90\xb3\xef\x90\xb4\xef\x90\xb5\xef\x90\xb6" + "\xef\x90\xb7\xef\x90\xb8\xef\x90\xb9\xef\x90\xba\xef\x90\xbb\xef\x90\xbc\xef\x90\xbd\xef\x90\xbe\xef\x90\xbf\xef\x91\x80\xef\x91\x81\xef\x91\x82\xef\x91\x83\xef\x91\x84\xef\x91\x85\xef\x91\x86\xef\x91\x87\xef\x91\x88\xef\x91\x89\xef\x91\x8a\xef\x91\x8b\xef\x91\x8c\xef\x91\x8d\xef\x91\x8e\xef\x91\x8f\xef\x91\x90\xef\x91\x91\xef\x91\x92\xef\x91\x93\xef\x91\x94\xef\x91\x95\xef\x91\x96" + "\xef\x91\x97\xef\x91\x98\xef\x91\x99\xef\x91\x9a\xef\x91\x9b\xef\x91\x9c\xef\x91\x9d\xef\x91\x9e\xef\x91\x9f\xef\x91\xa0\xef\x91\xa1\xef\x91\xa2\xef\x91\xa3\xef\x91\xa4\xef\x91\xa5\xef\x91\xa6\xef\x91\xa7\xef\x91\xa8\xef\x91\xa9\xef\x91\xaa\xef\x91\xab\xef\x91\xac\xef\x91\xad\xef\x91\xae\xef\x91\xaf\xef\x91\xb0\xef\x91\xb1\xef\x91\xb2\xef\x91\xb3\xef\x91\xb4\xef\x91\xb5\xef\x91\xb6" + "\xef\x91\xb7\xef\x91\xb8\xef\x91\xb9\xef\x91\xba\xef\x91\xbb\xef\x91\xbc\xef\x91\xbd\xef\x91\xbe\xef\x91\xbf\xef\x92\x80\xef\x92\x81\xef\x92\x82\xef\x92\x83\xef\x92\x84\xef\x92\x85\xef\x92\x86\xef\x92\x87\xef\x92\x88\xef\x92\x89\xef\x92\x8a\xef\x92\x8b\xef\x92\x8c\xef\x92\x8d\xef\x92\x8e\xef\x92\x8f\xef\x92\x90\xef\x92\x91\xef\x92\x92\xef\x92\x93\xef\x92\x94\xef\x92\x95\xef\x92\x96" + "\xef\x92\x97\xef\x92\x98\xef\x92\x99\xef\x92\x9a\xef\x92\x9b\xef\x92\x9c\xef\x92\x9d\xef\x92\x9e\xef\x92\x9f\xef\x92\xa0\xef\x92\xa1\xef\x92\xa2\xef\x92\xa3\xef\x92\xa4\xef\x92\xa5\xef\x92\xa6\xef\x92\xa7\xef\x92\xa8\xef\x92\xa9\xef\x92\xaa\xef\x92\xab\xef\x92\xac\xef\x92\xad\xef\x92\xae\xef\x92\xaf\xef\x92\xb0\xef\x92\xb1\xef\x92\xb2\xef\x92\xb3\xef\x92\xb4\xef\x92\xb5\xef\x92\xb6" + "\xef\x92\xb7\xef\x92\xb8\xef\x92\xb9\xef\x92\xba\xef\x92\xbb\xef\x92\xbc\xef\x92\xbd\xef\x92\xbe\xef\x92\xbf\xef\x93\x80\xef\x93\x81\xef\x93\x82\xef\x93\x83\xef\x93\x85\xef\x93\x86\xef\x93\x87\xef\x93\x88\xef\x93\x89\xef\x93\x8a\xef\x93\x8b\xef\x93\x8c\xef\x93\x8d\xef\x93\x8e\xef\x93\x8f\xef\x93\x90\xef\x93\x91\xef\x93\x92\xef\x93\x93\xef\x93\x94\xef\x93\x95\xef\x93\x96\xef\x93\x97" + "\xef\x93\x98\xef\x93\x99\xef\x93\x9a\xef\x93\x9b\xef\x93\x9c\xef\x93\x9d\xef\x93\x9e\xef\x93\x9f\xef\x93\xa0\xef\x93\xa1\xef\x93\xa2\xef\x93\xa3\xef\x93\xa4\xef\x93\xa5\xef\x93\xa6\xef\x93\xa7\xef\x93\xa8\xef\x93\xa9\xef\x93\xaa\xef\x93\xab\xef\x93\xac\xef\x93\xad\xef\x93\xae\xef\x93\xaf\xef\x93\xb0\xef\x93\xb1\xef\x93\xb2\xef\x93\xb3\xef\x93\xb4\xef\x93\xb5\xef\x93\xb6\xef\x93\xb7" + "\xef\x93\xb8\xef\x93\xb9\xef\x93\xba\xef\x93\xbb\xef\x93\xbc\xef\x93\xbd\xef\x93\xbe\xef\x93\xbf\xef\x94\x80\xef\x94\x81\xef\x94\x82\xef\x94\x83\xef\x94\x84\xef\x94\x85\xef\x94\x86\xef\x94\x87\xef\x94\x88\xef\x94\x89\xef\x94\x8a\xef\x94\x8b\xef\x94\x8c\xef\x94\x8d\xef\x94\x8e\xef\x94\x8f\xef\x94\x90\xef\x94\x91\xef\x94\x92\xef\x94\x93\xef\x94\x94\xef\x94\x95\xef\x94\x96\xef\x94\x97" + "\xef\x94\x98\xef\x94\x99\xef\x94\x9a\xef\x94\x9b\xef\x94\x9c\xef\x94\x9d\xef\x94\x9e\xef\x94\x9f\xef\x94\xa0\xef\x94\xa1\xef\x94\xa2\xef\x94\xa3\xef\x94\xa4\xef\x94\xa5\xef\x94\xa6\xef\x94\xa7\xef\x94\xa8\xef\x94\xa9\xef\x94\xaa\xef\x94\xab\xef\x94\xac\xef\x94\xad\xef\x94\xae\xef\x94\xaf\xef\x94\xb0\xef\x94\xb1\xef\x94\xb2\xef\x94\xb3\xef\x94\xb4\xef\x94\xb5\xef\x94\xb6\xef\x94\xb7" + "\xef\x94\xb8\xef\x94\xb9\xef\x94\xba\xef\x94\xbb\xef\x94\xbc\xef\x94\xbd\xef\x94\xbe\xef\x94\xbf\xef\x95\x80\xef\x95\x81\xef\x95\x82\xef\x95\x83\xef\x95\x84\xef\x95\x85\xef\x95\x86\xef\x95\x87\xef\x95\x88\xef\x95\x89\xef\x95\x8a\xef\x95\x8b\xef\x95\x8c\xef\x95\x8d\xef\x95\x8e\xef\x95\x8f\xef\x95\x90\xef\x95\x91\xef\x95\x92\xef\x95\x93\xef\x95\x94\xef\x95\x95\xef\x95\x96\xef\x95\x97" + "\xef\x95\x98\xef\x95\x99\xef\x95\x9a\xef\x95\x9b\xef\x95\x9c\xef\x95\x9d\xef\x95\x9e\xef\x95\x9f\xef\x95\xa0\xef\x95\xa2\xef\x95\xa3\xef\x95\xa4\xef\x95\xa5\xef\x95\xa6\xef\x95\xa7\xef\x95\xa8\xef\x95\xa9\xef\x95\xaa\xef\x95\xab\xef\x95\xac\xef\x95\xad\xef\x95\xae\xef\x95\xaf\xef\x95\xb0\xef\x95\xb1\xef\x95\xb2\xef\x95\xb3\xef\x95\xb4\xef\x95\xb5\xef\x95\xb6\xef\x95\xb7\xef\x95\xb8" + "\xef\x95\xb9\xef\x95\xba\xef\x95\xbb\xef\x95\xbc\xef\x95\xbd\xef\x95\xbe\xef\x95\xbf\xef\x96\x80\xef\x96\x81\xef\x96\x82\xef\x96\x83\xef\x96\x84\xef\x96\x85\xef\x96\x86\xef\x96\x87\xef\x96\x88\xef\x96\x89\xef\x96\x8a\xef\x96\x8b\xef\x96\x8c\xef\x96\x8d\xef\x96\x8e\xef\x96\x8f\xef\x96\x90\xef\x96\x91\xef\x96\x92\xef\x96\x93\xef\x96\x94\xef\x96\x95\xef\x96\x96\xef\x96\x97\xef\x96\x98" + "\xef\x96\x99\xef\x96\x9a\xef\x96\x9b\xef\x96\x9c\xef\x96\x9d\xef\x96\x9e\xef\x96\x9f\xef\x96\xa0\xef\x96\xa1\xef\x96\xa2\xef\x96\xa3\xef\x96\xa4\xef\x96\xa5\xef\x96\xa6\xef\x96\xa7\xef\x96\xa8\xef\x96\xa9\xef\x96\xaa\xef\x96\xab\xef\x96\xac\xef\x96\xad\xef\x96\xae\xef\x96\xaf\xef\x96\xb0\xef\x96\xb1\xef\x96\xb2\xef\x96\xb3\xef\x96\xb4\xef\x96\xb5\xef\x96\xb6\xef\x96\xb7\xef\x96\xb8" + "\xef\x96\xb9\xef\x96\xba\xef\x96\xbb\xef\x96\xbc\xef\x96\xbd\xef\x96\xbe\xef\x96\xbf\xef\x97\x80\xef\x97\x81\xef\x97\x82\xef\x97\x83\xef\x97\x84\xef\x97\x85\xef\x97\x86\xef\x97\x87\xef\x97\x88\xef\x97\x89\xef\x97\x8a\xef\x97\x8b\xef\x97\x8c\xef\x97\x8d\xef\x97\x8e\xef\x97\x8f\xef\x97\x90\xef\x97\x91\xef\x97\x92\xef\x97\x93\xef\x97\x94\xef\x97\x95\xef\x97\x96\xef\x97\x97\xef\x97\x98" + "\xef\x97\x99\xef\x97\x9a\xef\x97\x9b\xef\x97\x9c\xef\x97\x9d\xef\x97\x9e\xef\x97\x9f\xef\x97\xa0\xef\x97\xa1\xef\x97\xa2\xef\x97\xa3\xef\x97\xa4\xef\x97\xa5\xef\x97\xa6\xef\x97\xa7\xef\x97\xa8\xef\x97\xa9\xef\x97\xaa\xef\x97\xab\xef\x97\xac\xef\x97\xad\xef\x97\xae\xef\x97\xaf\xef\x97\xb0\xef\x97\xb1\xef\x97\xb2\xef\x97\xb3\xef\x97\xb4\xef\x97\xb5\xef\x97\xb6\xef\x97\xb7\xef\x97\xb8" + "\xef\x97\xb9\xef\x97\xba\xef\x97\xbb\xef\x97\xbc\xef\x97\xbd\xef\x97\xbe\xef\x97\xbf\xef\x98\x80\xef\x98\x81\xef\x98\x82\xef\x98\x83\xef\x98\x84\xef\x98\x85\xef\x98\x86\xef\x98\x87\xef\x98\x88\xef\x98\x89\xef\x98\x8a\xef\x98\x8b\xef\x98\x8c\xef\x98\x8d\xef\x98\x8e\xef\x98\x8f\xef\x98\x90\xef\x98\x91\xef\x98\x92\xef\x98\x93\xef\x98\x94\xef\x98\x95\xef\x98\x96\xef\x98\x97\xef\x98\x98" + "\xef\x98\x99\xef\x98\x9a\xef\x98\x9b\xef\x98\x9c\xef\x98\x9d\xef\x98\x9e\xef\x98\x9f\xef\x98\xa0\xef\x98\xa1\xef\x98\xa2\xef\x98\xa3\xef\x98\xa4\xef\x98\xa5\xef\x98\xa6\xef\x98\xa7\xef\x98\xa8\xef\x98\xa9\xef\x98\xaa\xef\x98\xab\xef\x98\xac\xef\x98\xad\xef\x98\xae\xef\x98\xaf\xef\x98\xb0\xef\x98\xb1\xef\x98\xb2\xef\x98\xb3\xef\x98\xb4\xef\x98\xb5\xef\x98\xb6\xef\x98\xb8\xef\x98\xb9" + "\xef\x98\xba\xef\x98\xbb\xef\x98\xbc\xef\x98\xbd\xef\x98\xbe\xef\x98\xbf\xef\x99\x80\xef\x99\x81\xef\x99\x82\xef\x99\x83\xef\x99\x84\xef\x99\x85\xef\x99\x86\xef\x99\x87\xef\x99\x88\xef\x99\x89\xef\x99\x8a\xef\x99\x8b\xef\x99\x8c\xef\x99\x8d\xef\x99\x8e\xef\x99\x8f\xef\x99\x90\xef\x99\x91\xef\x99\x92\xef\x99\x93\xef\x99\x94\xef\x99\x95\xef\x99\x96\xef\x99\x97\xef\x99\x98\xef\x99\x99" + "\xef\x99\x9a\xef\x99\x9b\xef\x99\x9c\xef\x99\x9d\xef\x99\x9e\xef\x99\x9f\xef\x99\xa0\xef\x99\xa1\xef\x99\xa2\xef\x99\xa3\xef\x99\xa4\xef\x99\xa5\xef\x99\xa6\xef\x9b\x92\xef\x9b\x93\xef\x9b\x94\xef\x9b\x95\xef\x9b\x96\xef\x9b\x97\xef\x9b\xb6\xef\x9b\xb8\xef\x9b\xb9\xef\x9b\xbb\xef\x9b\xbd\xef\x9c\x80\xef\x9c\x82\xef\x9c\x83\xef\x9e\x8b\xef\x9e\x8c\xef\x9e\x8d\xef\x9e\x8e\xef\x9e\x8f" + "\xef\x9e\x90\xef\x9e\x91\xef\x9e\x92\xef\x9e\x93\xef\x9e\x94\xef\x9e\x95\xef\x9e\x96\xef\x9e\x97\xef\x9e\x98\xef\x9e\x99\xef\x9e\x9a\xef\x9e\x9b\xef\x9e\x9c\xef\x9e\x9d\xef\x9e\x9e\xef\x9e\x9f\xef\x9e\xa0\xef\x9e\xa1\xef\x9e\xa2\xef\x9e\xa3\xef\x9e\xa4\xef\x9e\xa5\xef\x9e\xa6\xef\x9e\xa7\xef\x9e\xa8\xef\x9e\xa9\xef\x9e\xaa\xef\x9e\xab\xef\x9e\xac\xef\x9e\xad\xef\x9e\xae\xef\x9e\xaf" + "\xef\x9e\xb0\xef\x9e\xb1\xef\x9e\xb2\xef\x9e\xb3\xef\x9e\xb4\xef\x9e\xb5\xef\x9e\xb6\xef\x9e\xb7\xef\x9e\xb8\xef\x9e\xb9\xef\x9e\xba\xef\x9e\xbb\xef\x9e\xbc\xef\x9e\xbd\xef\x9e\xbe\xef\x9e\xbf\xef\x9f\x80\xef\x9f\x81\xef\x9f\x82\xef\x9f\x83\xef\x9f\x84\xef\x9f\x85\xef\x9f\x86\xef\x9f\x87\xef\x9f\x88\xef\x9f\x89\xef\x9f\x8a\xef\x9f\x8b\xef\x9f\x8c\xef\x9f\x8d\xef\x9f\x8e\xef\x9f\x8f" + "\xef\x9f\x90\xef\x9f\x91\xef\x9f\x92\xef\x9f\xa3\xef\x9f\xa8\xef\x9f\xac\xef\x9f\xad\xef\x9f\xae\xef\x9f\xaf\xef\x9f\xb0\xef\x9f\xb1\xef\x9f\xbb\xef\x9f\xbc\xef\x9f\xbd\xef\x9f\xbe\xef\x9f\xbf\xef\xa0\x80\xef\xa0\x81\xef\xa0\x82\xef\xa0\x83\xef\xa0\x84\xef\xa0\x85\xef\xa0\x86\xef\xa0\x87\xef\xa0\x88\xef\xa0\x89\xef\xa0\x8a\xef\xa0\x8b\xef\xa0\x8c\xef\xa0\x8d\xef\xa0\x8e\xef\xa0\x8f" + "\xef\xa0\x90\xef\xa0\x91\xef\xa0\x92\xef\xa0\x93\xef\xa0\x94\xef\xa0\x95\xef\xa0\x96\xef\xa0\x97\xef\xa0\x98\xef\xa0\x99\xef\xa0\x9a\xef\xa0\x9b\xef\xa0\x9c\xef\xa0\x9d\xef\xa0\x9e\xef\xa0\x9f\xef\xa0\xa0\xef\xa0\xa1\xef\xa0\xa2\xef\xa0\xa3\xef\xa0\xa4\xef\xa0\xa5\xef\xa0\xa6\xef\xa0\xa7\xef\xa0\xa8\xef\xa0\xa9\xef\xa0\xaa\xef\xa0\xab\xef\xa0\xac\xef\xa0\xad\xef\xa0\xae\xef\xa0\xaf" + "\xef\xa0\xb0\xef\xa0\xb1\xef\xa0\xb2\xef\xa0\xb3\xef\xa0\xb4\xef\xa0\xb5\xef\xa0\xb6\xef\xa0\xb7\xef\xa0\xb8\xef\xa0\xb9\xef\xa0\xba\xef\xa0\xbb\xef\xa0\xbc\xef\xa0\xbd\xef\xa0\xbe\xef\xa0\xbf\xef\xa1\x80\xef\xa1\x81\xef\xa1\x82\xef\xa1\x83\xef\xa1\x84\xef\xa1\x85\xef\xa1\x86\xef\xa1\x87\xef\xa1\x88\xef\xa1\x89\xef\xa1\x8a\xef\xa1\x8b\xef\xa1\x8c\xef\xa1\x8d\xef\xa1\x8e\xef\xa1\x8f" + "\xef\xa1\x90\xef\xa1\x91\xef\xa1\x92\xef\xa1\x93\xef\xa1\x94\xef\xa1\x95\xef\xa1\x96\xef\xa1\x97\xef\xa1\x98\xef\xa1\x99\xef\xa1\x9a\xef\xa1\x9b\xef\xa1\x9c\xef\xa1\x9d\xef\xa1\x9e\xef\xa1\x9f\xef\xa1\xa0\xef\xa1\xa1\xef\xa1\xa2\xef\xa1\xa3\xef\xa1\xa4\xef\xa1\xa5\xef\xa1\xa6\xef\xa1\xa7\xef\xa1\xa8\xef\xa1\xa9\xef\xa1\xaa\xef\xa1\xab\xef\xa1\xac\xef\xa1\xad\xef\xa1\xae\xef\xa1\xaf" + "\xef\xa1\xb0\xef\xa1\xb1\xef\xa1\xb2\xef\xa1\xb3\xef\xa1\xb4\xef\xa1\xb5\xef\xa1\xb6\xef\xa1\xb7\xef\xa1\xb8\xef\xa1\xb9\xef\xa1\xba\xef\xa1\xbb\xef\xa1\xbc\xef\xa1\xbd\xef\xa1\xbe\xef\xa1\xbf\xef\xa2\x80\xef\xa2\x81\xef\xa2\x82\xef\xa2\x83\xef\xa2\x84\xef\xa2\x85\xef\xa2\x86\xef\xa2\x87\xef\xa2\x88\xef\xa2\x89\xef\xa2\x8a\xef\xa2\x8b\xef\xa2\x8c\xef\xa2\x8d\xef\xa2\x8e\xef\xa2\x8f" + "\xef\xa2\x90\xef\xa2\x91\xef\xa2\x92\xef\xa2\x93\xef\xa2\x94\xef\xa2\x95\xef\xa2\x96\xef\xa2\x97\xef\xa2\x98\xef\xa2\x99\xef\xa2\x9a\xef\xa2\x9b\xef\xa2\x9c\xef\xa2\x9d\xef\xa2\x9e\xef\xa2\x9f\xef\xa2\xa0\xef\xa2\xa1\xef\xa2\xa2\xef\xa2\xa3\xef\xa2\xa4\xef\xa2\xa5\xef\xa2\xa6\xef\xa2\xa7\xef\xa2\xa8\xef\xa2\xa9\xef\xa2\xaa\xef\xa2\xab\xef\xa2\xac\xef\xa2\xad\xef\xa2\xae\xef\xa2\xaf" + "\xef\xa2\xb0\xef\xa2\xb1\xef\xa2\xb2\xef\xa2\xb3\xef\xa2\xb4\xef\xa2\xb5\xef\xa2\xb6\xef\xa2\xb7\xef\xa2\xb8\xef\xa2\xb9\xef\xa2\xba\xef\xa2\xbb\xef\xa2\xbc\xef\xa2\xbd\xef\xa2\xbe\xef\xa2\xbf\xef\xa3\x80\xef\xa3\x81\xef\xa3\x82\xef\xa3\x83\xef\xa3\x84\xef\xa3\x85\xef\xa3\x86\xef\xa3\x87\xef\xa3\x88\xef\xa3\x89\xef\xa3\x8a\xef\xa3\x8b\xef\xa3\x8c\xef\xa3\x8d\xef\xa3\x8e\xef\xa3\x8f" + "\xef\xa3\x90\xef\xa3\x91\xef\xa3\x92\xef\xa3\x93\xef\xa3\x94\xef\xa3\x95\xef\xa3\x96\xef\xa3\x97\xef\xa3\x98\xef\xa3\x99\xef\xa3\x9a\xef\xa3\x9b\xef\xa3\x9c\xef\xa3\x9d\xef\xa3\x9e\xef\xa3\x9f\xef\xa3\xa0\xef\xa3\xa1\xef\xa3\xa2\xef\xa3\xa3\xef\xa3\xa4\xef\xa3\xa5\xef\xa3\xa6\xef\xa3\xa7\xef\xa3\xa8\xef\xa3\xa9\xef\xa3\xaa\xef\xa3\xab\xef\xa3\xac\xef\xa3\xad\xef\xa3\xae\xef\xa3\xaf" + "\xef\xa3\xb0\xef\xa3\xb1\xef\xa3\xb2\xef\xa3\xb3\xef\xa3\xb4\xef\xa3\xb5\xef\xa3\xb6\xef\xa3\xb7\xef\xa3\xb8\xef\xa3\xb9\xef\xa3\xba\xef\xa3\xbb\xef\xa3\xbc\xef\xa3\xbd\xef\xa3\xbe\xef\xa3\xbf\xef\xa4\x80\xef\xa4\x81\xef\xa4\x82\xef\xa4\x83\xef\xa4\x84\xef\xa4\x85\xef\xa4\x86\xef\xa4\x87\xef\xa4\x88\xef\xa4\x89\xef\xa4\x8a\xef\xa4\x8b\xef\xa4\x8c\xef\xa4\x8d\xef\xa4\x8e\xef\xa4\x8f" + "\xef\xa4\x90\xef\xa4\x91\xef\xa4\x92\xef\xa4\x93\xef\xa4\x94\xef\xa4\x95\xef\xa4\x96\xef\xa4\x97\xef\xa4\x98\xef\xa4\x99\xef\xa4\x9a\xef\xa4\x9b\xef\xa4\x9c\xef\xa4\x9d\xef\xa4\x9e\xef\xa4\x9f\xef\xa4\xa0\xef\xa4\xa1\xef\xa4\xa2\xef\xa4\xa3\xef\xa4\xa4\xef\xa4\xa5\xef\xa4\xa6\xef\xa4\xa7\xef\xa4\xa8\xef\xa4\xa9\xef\xa4\xaa\xef\xa4\xab\xef\xa4\xac\xef\xa4\xad\xef\xa4\xae\xef\xa4\xaf" + "\xef\xa4\xb0\xef\xa4\xb1\xef\xa4\xb2\xef\xa4\xb3\xef\xa4\xb4\xef\xa4\xb5\xef\xa4\xb6\xef\xa4\xb7\xef\xa4\xb8\xef\xa4\xb9\xef\xa4\xba\xef\xa4\xbb\xef\xa4\xbc\xef\xa4\xbd\xef\xa4\xbe\xef\xa4\xbf\xef\xa5\x80\xef\xa5\x81\xef\xa5\x82\xef\xa5\x83\xef\xa5\x84\xef\xa5\x85\xef\xa5\x86\xef\xa5\x87\xef\xa5\x88\xef\xa5\x89\xef\xa5\x8a\xef\xa5\x8b\xef\xa5\x8c\xef\xa5\x8d\xef\xa5\x8e\xef\xa5\x8f" + "\xef\xa5\x90\xef\xa5\x91\xef\xa5\x92\xef\xa5\x93\xef\xa5\x94\xef\xa5\x95\xef\xa5\x96\xef\xa5\x97\xef\xa5\x98\xef\xa5\x99\xef\xa5\x9a\xef\xa5\x9b\xef\xa5\x9c\xef\xa5\x9d\xef\xa5\x9e\xef\xa5\x9f\xef\xa5\xa0\xef\xa5\xa1\xef\xa5\xa2\xef\xa5\xa3\xef\xa5\xa4\xef\xa5\xa5\xef\xa5\xa6\xef\xa5\xa7\xef\xa5\xa8\xef\xa5\xa9\xef\xa5\xaa\xef\xa5\xab\xef\xa5\xac\xef\xa5\xad\xef\xa5\xae\xef\xa5\xaf" + "\xef\xa5\xb0\xef\xa5\xb1\xef\xa5\xb2\xef\xa5\xb3\xef\xa5\xb4\xef\xa5\xb5\xef\xa5\xb6\xef\xa5\xb7\xef\xa5\xb8\xef\xa5\xb9\xef\xa5\xba\xef\xa5\xbb\xef\xa5\xbc\xef\xa5\xbd\xef\xa5\xbe\xef\xa5\xbf\xef\xa6\x80\xef\xa6\x81\xef\xa6\x82\xef\xa6\x83\xef\xa6\x84\xef\xa6\x85\xef\xa6\x86\xef\xa6\x87\xef\xa6\x88\xef\xa6\x89\xef\xa6\x8a\xef\xa6\x8b\xef\xa6\x8c\xef\xa6\x8d\xef\xa6\x8e\xef\xa6\x8f" + "\xef\xa6\x90\xef\xa6\x91\xef\xa6\x92\xef\xa6\x93\xef\xa6\x94\xef\xa6\x95\xef\xa6\x96\xef\xa6\x97\xef\xa6\x98\xef\xa6\x99\xef\xa6\x9a\xef\xa6\x9b\xef\xa6\x9c\xef\xa6\x9d\xef\xa6\x9e\xef\xa6\x9f\xef\xa6\xa0\xef\xa6\xa1\xef\xa6\xa2\xef\xa6\xa3\xef\xa6\xa4\xef\xa6\xa5\xef\xa6\xa6\xef\xa6\xa7\xef\xa6\xa8\xef\xa6\xa9\xef\xa6\xaa\xef\xa6\xab\xef\xa6\xac\xef\xa6\xad\xef\xa6\xae\xef\xa6\xaf" + "\xef\xa6\xb0\xef\xa6\xb1\xef\xa6\xb2\xef\xa6\xb3\xef\xa6\xb4\xef\xa6\xb5\xef\xa6\xb6\xef\xa6\xb7\xef\xa6\xb8\xef\xa6\xb9\xef\xa6\xba\xef\xa6\xbb\xef\xa6\xbc\xef\xa6\xbd\xef\xa6\xbe\xef\xa6\xbf\xef\xa7\x80\xef\xa7\x81\xef\xa7\x82\xef\xa7\x83\xef\xa7\x84\xef\xa7\x85\xef\xa7\x86\xef\xa7\x87\xef\xa7\x88\xef\xa7\x89\xef\xa7\x8a\xef\xa7\x8b\xef\xa7\x8c\xef\xa7\x8d\xef\xa7\x8e\xef\xa7\x8f" + "\xef\xa7\x90\xef\xa7\x91\xef\xa7\x92\xef\xa7\x93\xef\xa7\x94\xef\xa7\x95\xef\xa7\x96\xef\xa7\x97\xef\xa7\x98\xef\xa7\x99\xef\xa7\x9a\xef\xa7\x9b\xef\xa7\x9c\xef\xa7\x9d\xef\xa7\x9e\xef\xa7\x9f\xef\xa7\xa0\xef\xa7\xa1\xef\xa7\xa2\xef\xa7\xa3\xef\xa7\xa4\xef\xa7\xa5\xef\xa7\xa6\xef\xa7\xa7\xef\xa7\xa8\xef\xa7\xa9\xef\xa7\xaa\xef\xa7\xab\xef\xa7\xac\xef\xa7\xad\xef\xa7\xae\xef\xa7\xaf" + "\xef\xa7\xb0\xef\xa7\xb1\xef\xa7\xb2\xef\xa7\xb3\xef\xa7\xb4\xef\xa7\xb5\xef\xa7\xb6\xef\xa7\xb7\xef\xa7\xb8\xef\xa7\xb9\xef\xa7\xba\xef\xa7\xbb\xef\xa7\xbc\xef\xa7\xbd\xef\xa7\xbe\xef\xa7\xbf\xef\xa8\x80\xef\xa8\x81\xef\xa8\x82\xef\xa8\x83\xef\xa8\x84\xef\xa8\x85\xef\xa8\x86\xef\xa8\x87\xef\xa8\x88\xef\xa8\x89\xef\xa8\x8a\xef\xa8\x8b\xef\xa8\x8c\xef\xa8\x8d\xef\xa8\x8e\xef\xa8\x8f" + "\xef\xa8\x90\xef\xa8\x91\xef\xa8\x92\xef\xa8\x93\xef\xa8\x94\xef\xa8\x95\xef\xa8\x96\xef\xa8\x97\xef\xa8\x98\xef\xa8\x99\xef\xa8\x9a\xef\xa8\x9b\xef\xa8\x9c\xef\xa8\x9d\xef\xa8\x9e\xef\xa8\x9f\xef\xa8\xa0\xef\xa8\xa1\xef\xa8\xa2\xef\xa8\xa3\xef\xa8\xa4\xef\xa8\xa5\xef\xa8\xa6\xef\xa8\xa7\xef\xa8\xa8\xef\xa8\xa9\xef\xa8\xaa\xef\xa8\xab\xef\xa8\xac\xef\xa8\xad\xef\xa8\xae\xef\xa8\xaf" + "\xef\xa8\xb0\xef\xa8\xb1\xef\xa8\xb2\xef\xa8\xb3\xef\xa9\x8c\xef\xa9\x8d\xef\xa9\x8e\xef\xa9\x8f\xef\xa9\x90\xef\xa9\x91\xef\xa9\x92\xef\xa9\x93\xef\xa9\x94\xef\xa9\x95\xef\xa9\x96\xef\xa9\x97\xef\xa9\x98\xef\xa9\x99\xef\xa9\x9a\xef\xa9\x9b\xef\xa9\x9c\xef\xa9\x9d\xef\xa9\x9e\xef\xa9\x9f\xef\xa9\xa0\xef\xa9\xa1\xef\xa9\xa2\xef\xa9\xa3\xef\xa9\xa4\xef\xa9\xa5\xef\xa9\xa6\xef\xa9\xa7" + "\xef\xa9\xa8\xef\xa9\xa9\xef\xa9\xaa\xef\xa9\xab\xef\xa9\xac\xef\xa9\xad\xef\xa9\xae\xef\xa9\xaf\xef\xa9\xb0\xef\xa9\xb1\xef\xa9\xb2\xef\xa9\xb3\xef\xa9\xb4\xef\xa9\xb5\xef\xa9\xb6\xef\xa9\xb7\xef\xa9\xb8\xef\xa9\xb9\xef\xa9\xba\xef\xa9\xbb\xef\xa9\xbc\xef\xa9\xbd\xef\xa9\xbe\xef\xa9\xbf\xef\xaa\x80\xef\xaa\x81\xef\xaa\x94\xef\xaa\x95\xef\xaa\x96\xef\xaa\x97\xef\xaa\x98\xef\xaa\x99" + "\xef\xaa\x9a\xef\xaa\x9b\xef\xaa\x9c\xef\xaa\x9d\xef\xaa\x9e\xef\xaa\x9f\xef\xaa\xa0\xef\xaa\xa1\xef\xaa\xa2\xef\xaa\xa3\xef\xaa\xa4\xef\xaa\xa5\xef\xaa\xa6\xef\xaa\xa7\xef\xaa\xa8\xef\xaa\xa9\xef\xaa\xaa\xef\xaa\xab\xef\xaa\xac\xef\xaa\xad\xef\xaa\xae\xef\xaa\xaf\xef\xaa\xb0\xef\xaa\xb1\xef\xaa\xb2\xef\xaa\xb3\xef\xaa\xb4\xef\xaa\xb5\xef\xaa\xb6\xef\xaa\xb7\xef\xaa\xb8\xef\xaa\xb9" + "\xef\xaa\xba\xef\xaa\xbb\xef\xaa\xbc\xef\xaa\xbd\xef\xaa\xbe\xef\xaa\xbf\xef\xab\x80\xef\xab\x81\xef\xab\x82\xef\xab\x83\xef\xab\x84\xef\xab\x85\xef\xab\x86\xef\xab\x87\xef\xab\x88\xef\xab\x89\xef\xab\x8a\xef\xab\x8b\xef\xab\x8c\xef\xab\x8d\xef\xab\x8e\xef\xab\x8f\xef\xab\x90\xef\xab\x91\xef\xab\x92\xef\xab\x93\xef\xab\x94\xef\xab\x95\xef\xab\x96\xef\xab\x97\xef\xab\x98\xef\xab\x99" + "\xef\xab\x9a\xef\xab\x9b\xef\xab\x9c\xef\xab\x9d\xef\xab\x9e\xef\xab\x9f\xef\xab\xa0\xef\xab\xa1\xef\xab\xa2\xef\xab\xa3\xef\xab\xa4\xef\xab\xa5\xef\xab\xa6\xef\xab\xa7\xef\xab\xa8\xef\xab\xa9\xef\xab\xaa\xef\xab\xab\xef\xab\xac\xef\xab\xad\xef\xab\xae\xef\xab\xaf\xef\xab\xb0\xef\xab\xb1\xef\xab\xb2\xef\xab\xb3\xef\xab\xb4\xef\xab\xb5\xef\xab\xb6\xef\xab\xb7\xef\xab\xb8\xef\xab\xb9" + "\xef\xab\xba\xef\xab\xbb\xef\xab\xbc\xef\xab\xbd\xef\xab\xbe\xef\xab\xbf\xef\xac\x80\xef\xac\x81\xef\xac\x82\xef\xac\x83\xef\xac\x84\xef\xac\x85\xef\xac\x86\xef\xac\x87\xef\xac\x88\xef\xac\x89\xef\xac\x8a\xef\xac\x8b\xef\xac\x8c\xef\xac\x8d\xef\xac\x8e\xef\xac\x8f\xef\xac\x90\xef\xac\x91\xef\xac\x92\xef\xac\x93\xef\xac\x94\xef\xac\x95\xef\xac\x96\xef\xac\x97\xef\xac\x98\xef\xac\x99" + "\xef\xac\x9a\xef\xac\x9b\xef\xac\x9c\xef\xac\x9d\xef\xac\x9e\xef\xad\x83\xef\xad\x84\xef\xad\x85\xef\xad\x86\xef\xad\x87\xef\xad\x88\xef\xad\x89\xef\xad\x8a\xef\xad\x8b\xef\xad\x8c\xef\xad\x8d\xef\xad\x8e\xef\xad\x8f\xef\xad\x90\xef\xad\x91\xef\xad\x92\xef\xad\x93\xef\xad\x94\xef\xad\x95\xef\xad\x96\xef\xad\x97\xef\xad\x98\xef\xad\x99\xef\xad\x9a\xef\xad\x9b\xef\xad\x9c\xef\xad\x9d" + "\xef\xad\x9e\xef\xad\x9f\xef\xad\xa0\xef\xad\xa1\xef\xad\xa2\xef\xad\xa3\xef\xad\xa4\xef\xad\xa5\xef\xad\xa6\xef\xad\xa7\xef\xad\xa8\xef\xad\xa9\xef\xad\xaa\xef\xad\xab\xef\xad\xad\xef\xad\xae\xef\xad\xaf\xef\xad\xb0\xef\xad\xb1\xef\xad\xb2\xef\xad\xb3\xef\xad\xb4\xef\xad\xb5\xef\xad\xb6\xef\xad\xb7\xef\xad\xb8\xef\xad\xb9\xef\xad\xba\xef\xad\xbb\xef\xad\xbc\xef\xad\xbd\xef\xad\xbe" + "\xef\xad\xbf\xef\xae\x80\xef\xae\x81\xef\xae\x82\xef\xae\x83\xef\xae\x84\xef\xae\x85\xef\xae\x86\xef\xae\x87\xef\xae\x88\xef\xae\x89\xef\xae\x8a\xef\xae\x8b\xef\xae\x8c\xef\xae\x8d\xef\xae\x8e\xef\xae\x8f\xef\xae\x90\xef\xae\x91\xef\xae\x92\xef\xae\x93\xef\xae\x94\xef\xae\x95\xef\xae\x96\xef\xae\x97\xef\xae\x98\xef\xae\x99\xef\xae\x9a\xef\xae\x9b\xef\xae\x9c\xef\xae\x9d\xef\xae\x9e" + "\xef\xae\x9f\xef\xae\xa0\xef\xae\xa1\xef\xae\xa2\xef\xae\xa3\xef\xae\xa4\xef\xae\xa5\xef\xae\xa6\xef\xae\xa7\xef\xae\xa8\xef\xae\xa9\xef\xae\xaa\xef\xae\xab\xef\xae\xac\xef\xae\xad\xef\xae\xae\xef\xae\xaf\xef\xae\xb0\xef\xae\xb1\xef\xae\xb2\xef\xae\xb3\xef\xae\xb4\xef\xae\xb5\xef\xae\xb6\xef\xae\xb7\xef\xae\xb8\xef\xae\xb9\xef\xae\xba\xef\xae\xbb\xef\xae\xbc\xef\xae\xbd\xef\xae\xbe" + "\xef\xae\xbf\xef\xaf\x80\xef\xaf\x81\xef\xaf\x82\xef\xaf\x83\xef\xaf\x84\xef\xaf\x85\xef\xaf\x86\xef\xaf\x87\xef\xaf\x88\xef\xaf\x89\xef\xaf\x8a\xef\xaf\x8b\xef\xaf\x8c\xef\xaf\x8d\xef\xaf\x8e\xef\xaf\x8f\xef\xaf\x90\xef\xaf\x91\xef\xaf\x92\xef\xaf\x93\xef\xaf\x94\xef\xaf\x95\xef\xaf\x96\xef\xaf\x97\xef\xaf\x98\xef\xaf\x99\xef\xaf\x9a\xef\xaf\x9b\xef\xaf\x9c\xef\xaf\x9d\xef\xaf\x9e" + "\xef\xaf\x9f\xef\xaf\xa0\xef\xaf\xa1\xef\xaf\xa2\xef\xaf\xa3\xef\xaf\xa4\xef\xaf\xa5\xef\xaf\xa6\xef\xaf\xa7\xef\xaf\xa8\xef\xaf\xa9\xef\xaf\xaa\xef\xaf\xab\xef\xaf\xac\xef\xaf\xad\xef\xaf\xae\xef\xaf\xaf\xef\xaf\xb0\xef\xaf\xb1\xef\xaf\xb2\xef\xaf\xb3\xef\xaf\xb4\xef\xaf\xb5\xef\xaf\xb6\xef\xaf\xb7\xef\xaf\xb8\xef\xaf\xb9\xef\xaf\xba\xef\xaf\xbb\xef\xaf\xbc\xef\xaf\xbd\xef\xaf\xbe" + "\xef\xaf\xbf\xef\xb0\x80\xef\xb0\x81\xef\xb0\x82\xef\xb0\x83\xef\xb0\x84\xef\xb0\x85\xef\xb0\x86\xef\xb0\x87\xef\xb0\x88\xef\xb0\x89\xef\xb0\x8a\xef\xb0\x8b\xef\xb0\x8c\xef\xb0\x8d\xef\xb0\x8e\xef\xb0\x8f\xef\xb0\x90\xef\xb0\x91\xef\xb0\x92\xef\xb0\x93\xef\xb0\x94\xef\xb0\x95\xef\xb0\x96\xef\xb0\x97\xef\xb0\x98\xef\xb0\x99\xef\xb0\x9a\xef\xb0\x9b\xef\xb0\x9c\xef\xb0\x9d\xef\xb0\x9e" + "\xef\xb0\x9f\xef\xb0\xa0\xef\xb1\x81\xef\xb1\x82\xef\xb1\x83\xef\xb1\x84\xef\xb1\x85\xef\xb1\x86\xef\xb1\x87\xef\xb1\x88\xef\xb1\x89\xef\xb1\x8a\xef\xb1\x8b\xef\xb1\x8c\xef\xb1\x8d\xef\xb1\x8e\xef\xb1\x8f\xef\xb1\x90\xef\xb1\x91\xef\xb1\x92\xef\xb1\x93\xef\xb1\x94\xef\xb1\x95\xef\xb1\x96\xef\xb1\x97\xef\xb1\x98\xef\xb1\x99\xef\xb1\x9a\xef\xb1\x9b\xef\xb1\x9c\xef\xb1\x9d\xef\xb1\x9e" + "\xef\xb1\x9f\xef\xb1\xa0\xef\xb1\xa1\xef\xb1\xa2\xef\xb1\xa3\xef\xb1\xa4\xef\xb1\xa5\xef\xb1\xa6\xef\xb1\xa7\xef\xb1\xa8\xef\xb1\xa9\xef\xb1\xaa\xef\xb1\xab\xef\xb1\xac\xef\xb1\xad\xef\xb1\xae\xef\xb1\xaf\xef\xb1\xb0\xef\xb1\xb1\xef\xb1\xb2\xef\xb1\xb3\xef\xb1\xb4\xef\xb1\xb5\xef\xb1\xb6\xef\xb1\xb7\xef\xb1\xb8\xef\xb1\xb9\xef\xb1\xba\xef\xb1\xbb\xef\xb1\xbc\xef\xb1\xbd\xef\xb1\xbe" + "\xef\xb1\xbf\xef\xb2\x80\xef\xb2\x81\xef\xb2\x82\xef\xb2\x83\xef\xb2\x84\xef\xb2\x85\xef\xb2\x86\xef\xb2\x87\xef\xb2\x88\xef\xb2\x89\xef\xb2\x8a\xef\xb2\x8b\xef\xb2\x8c\xef\xb2\x8d\xef\xb2\x8e\xef\xb2\x8f\xef\xb2\x90\xef\xb2\x91\xef\xb2\x92\xef\xb2\x93\xef\xb2\x94\xef\xb2\x95\xef\xb2\x96\xef\xb2\x97\xef\xb2\x98\xef\xb2\x99\xef\xb2\x9a\xef\xb2\x9b\xef\xb2\x9c\xef\xb2\x9d\xef\xb2\x9e" + "\xef\xb2\x9f\xef\xb2\xa0\xef\xb2\xa1\xef\xb2\xa2\xef\xb2\xa3\xef\xb2\xa4\xef\xb2\xa5\xef\xb2\xa6\xef\xb2\xa7\xef\xb2\xa8\xef\xb2\xa9\xef\xb2\xaa\xef\xb2\xab\xef\xb2\xac\xef\xb2\xad\xef\xb2\xae\xef\xb2\xaf\xef\xb2\xb0\xef\xb2\xb1\xef\xb2\xb2\xef\xb2\xb3\xef\xb2\xb4\xef\xb2\xb5\xef\xb2\xb6\xef\xb2\xb7\xef\xb2\xb8\xef\xb2\xb9\xef\xb2\xba\xef\xb2\xbb\xef\xb2\xbc\xef\xb2\xbd\xef\xb2\xbe" + "\xef\xb2\xbf\xef\xb3\x80\xef\xb3\x81\xef\xb3\x82\xef\xb3\x83\xef\xb3\x84\xef\xb3\x85\xef\xb3\x86\xef\xb3\x87\xef\xb3\x88\xef\xb3\x89\xef\xb3\x8a\xef\xb3\x8b\xef\xb3\x8c\xef\xb3\x8d\xef\xb3\x8e\xef\xb3\x8f\xef\xb3\x90\xef\xb3\x91\xef\xb3\x92\xef\xb3\x93\xef\xb3\x94\xef\xb3\x95\xef\xb3\x96\xef\xb3\x97\xef\xb3\x98\xef\xb3\x99\xef\xb3\x9a\xef\xb3\x9b\xef\xb3\x9c\xef\xb3\x9d\xef\xb3\x9e" + "\xef\xb3\x9f\xef\xb3\xa0\xef\xb3\xa1\xef\xb3\xa2\xef\xb3\xa3\xef\xb3\xa4\xef\xb3\xa5\xef\xb3\xa6\xef\xb3\xa7\xef\xb3\xa8\xef\xb3\xa9\xef\xb3\xaa\xef\xb3\xab\xef\xb3\xac\xef\xb3\xad\xef\xb3\xae\xef\xb3\xaf\xef\xb3\xb0\xef\xb3\xb1\xef\xb3\xb2\xef\xb3\xb3\xef\xb3\xb4\xef\xb3\xb5\xef\xb3\xb6\xef\xb3\xb7\xef\xb3\xb8\xef\xb3\xb9\xef\xb3\xba\xef\xb3\xbb\xef\xb3\xbc\xef\xb3\xbd\xef\xb3\xbe" + "\xef\xb4\x8d\xef\xb4\x96\xef\xb4\x97\xef\xb4\x9b\xef\xb4\x9c\xef\xb4\x9d\xef\xb4\x9e\xef\xb4\x9f\xef\xb4\xa0\xef\xb4\xa1\xef\xb4\xa2\xef\xb4\xa3\xef\xb4\xa4\xef\xb4\xa5\xef\xb4\xa6\xef\xb4\xa7\xef\xb4\xa8\xef\xb4\xa9\xef\xb4\xaa\xef\xb4\xab\xef\xb4\xac\xef\xb4\xad\xef\xb4\xae\xef\xb4\xaf\xef\xb4\xb0\xef\xb4\xb1\xef\xb4\xb2\xef\xb4\xb3\xef\xb4\xb4\xef\xb4\xb5\xef\xb4\xb6\xef\xb4\xb7" + "\xef\xb4\xb8\xef\xb4\xb9\xef\xb4\xba\xef\xb4\xbb\xef\xb4\xbc\xef\xb4\xbd\xef\xb4\xbe\xef\xb5\x83\xef\xb5\x84\xef\xb5\x85\xef\xb5\x86\xef\xb5\x87\xef\xb5\x88\xef\xb5\x89\xef\xb5\x8a\xef\xb5\x8b\xef\xb5\x8c\xef\xb5\x8d\xef\xb5\x8e\xef\xb5\x8f\xef\xb5\x90\xef\xb5\x91\xef\xb5\x92\xef\xb5\x93\xef\xb5\x94\xef\xb5\x95\xef\xb5\x96\xef\xb5\x97\xef\xb5\x98\xef\xb5\x99\xef\xb5\x9a\xef\xb5\x9b" + "\xef\xb5\x9c\xef\xb5\x9d\xef\xb5\x9e\xef\xb5\x9f\xef\xb5\xa0\xef\xb5\xa1\xef\xb5\xa2\xef\xb5\xa3\xef\xb5\xa4\xef\xb5\xa5\xef\xb5\xa6\xef\xb5\xa7\xef\xb5\xa8\xef\xb5\xa9\xef\xb5\xaa\xef\xb5\xab\xef\xb5\xac\xef\xb5\xad\xef\xb5\xae\xef\xb5\xaf\xef\xb5\xb0\xef\xb5\xb1\xef\xb5\xb2\xef\xb5\xb3\xef\xb5\xb5\xef\xb5\xb6\xef\xb5\xb7\xef\xb5\xb8\xef\xb5\xb9\xef\xb5\xba\xef\xb5\xbb\xef\xb5\xbc" + "\xef\xb5\xbd\xef\xb5\xbe\xef\xb5\xbf\xef\xb6\x80\xef\xb6\x81\xef\xb6\x82\xef\xb6\x83\xef\xb6\x84\xef\xb6\x85\xef\xb6\x86\xef\xb6\x87\xef\xb6\x88\xef\xb6\x89\xef\xb6\x8a\xef\xb6\x8b\xef\xb6\x8c\xef\xb6\x8d\xef\xb6\x8e\xef\xb6\x8f\xef\xb6\x90\xef\xb6\x91\xef\xb6\x92\xef\xb6\x93\xef\xb6\x94\xef\xb6\x95\xef\xb6\x96\xef\xb6\x97\xef\xb6\x98\xef\xb6\x99\xef\xb6\x9a\xef\xb6\x9b\xef\xb6\x9c" + "\xef\xb6\x9d\xef\xb6\x9e\xef\xb6\x9f\xef\xb6\xa0\xef\xb6\xa1\xef\xb6\xa2\xef\xb6\xa3\xef\xb6\xa4\xef\xb6\xa5\xef\xb6\xa6\xef\xb6\xa7\xef\xb6\xa8\xef\xb6\xa9\xef\xb6\xaa\xef\xb6\xab\xef\xb6\xac\xef\xb6\xad\xef\xb6\xae\xef\xb6\xaf\xef\xb6\xb0\xef\xb6\xb1\xef\xb6\xb2\xef\xb6\xb3\xef\xb6\xb4\xef\xb6\xb5\xef\xb6\xb6\xef\xb6\xb7\xef\xb6\xb8\xef\xb6\xb9\xef\xb6\xba\xef\xb6\xbb\xef\xb6\xbc" + "\xef\xb6\xbd\xef\xb6\xbe\xef\xba\xa0\xef\xba\xa1\xef\xba\xa2\xef\xba\xa3\xef\xba\xa4\xef\xba\xa5\xef\xba\xa6\xef\xba\xa7\xef\xba\xa8\xef\xba\xa9\xef\xba\xaa\xef\xba\xab\xef\xba\xac\xef\xba\xad\xef\xba\xae\xef\xba\xaf\xef\xba\xb0\xef\xba\xb2\xef\xba\xb3\xef\xba\xb4\xef\xba\xb5\xef\xba\xb6\xef\xba\xb7\xef\xba\xb8\xef\xba\xb9\xef\xba\xba\xef\xba\xbb\xef\xba\xbc\xef\xba\xbd\xef\xba\xbe" + "\xef\xbb\x84\xef\xbb\x85\xef\xbb\x86\xef\xbb\x96\xef\xbb\x97\xef\xbb\x98\xef\xbb\x99\xef\xbb\x9a\xef\xbb\x9b\xef\xbb\x9c\xef\xbb\x9d\xef\xbb\x9e\xef\xbb\x9f\xef\xbb\xa0\xef\xbb\xa1\xef\xbb\xa2\xef\xbb\xa3\xef\xbb\xa4\xef\xbb\xa5\xef\xbb\xa6\xef\xbb\xa7\xef\xbb\xa8\xef\xbb\xa9\xef\xbb\xaa\xef\xbb\xab\xef\xbb\xac\xef\xbb\xad\xef\xbb\xae\xef\xbb\xaf\xef\xbb\xb0\xef\xbb\xb1\xef\xbb\xb2" + "\xef\xbb\xb3\xef\xbb\xb4\xef\xbb\xb5\xef\xbb\xb6\xef\xbb\xb7\xef\xbb\xb8\xef\xbb\xba\xef\xbb\xbb\xef\xbb\xbc\xef\xbb\xbd\xef\xbb\xbe\xef\xbb\xbf\xef\xbc\x80\xef\xbc\x8c\xef\xbc\x8d\xef\xbc\x8e\xef\xbc\x8f\xef\xbc\x90\xef\xbc\x91\xef\xbc\x92\xef\xbc\x93\xef\xbc\x94\xef\xbc\x95\xef\xbc\x96\xef\xbc\x97\xef\xbc\x98\xef\xbc\x99\xef\xbc\x9a\xef\xbc\x9b\xef\xbc\x9c\xef\xbc\x9d\xef\xbc\x9e" + "\xef\xbc\x9f\xef\xbc\xa0\xef\xbc\xa1\xef\xbc\xa2\xef\xbc\xa3\xef\xbc\xa4\xef\xbc\xa5\xef\xbc\xa6\xef\xbc\xa7\xef\xbc\xa8\xef\xbc\xa9\xef\xbc\xaa\xef\xbc\xab\xef\xbc\xac\xef\xbc\xad\xef\xbc\xae\xef\xbc\xaf\xef\xbc\xb0\xef\xbc\xb1\xef\xbc\xb2\xef\xbc\xb3\xef\xbc\xb4\xef\xbc\xb5\xef\xbc\xb6\xef\xbc\xb7\xef\xbc\xb8\xef\xbc\xb9\xef\xbc\xba\xef\xbc\xbb\xef\xbc\xbc\xef\xbc\xbd\xef\xbc\xbe" + "\xef\xbc\xbf\xef\xbd\x80\xef\xbd\x82\xef\xbd\x83\xef\xbd\x84\xef\xbd\x85\xef\xbd\x86\xef\xbd\x87\xef\xbd\x88\xef\xbd\x89\xef\xbd\x8a\xef\xbd\x8b\xef\xbd\x8c\xef\xbd\x8d\xef\xbd\x8e\xef\xbd\x8f\xef\xbd\x90\xef\xbd\x91\xef\xbd\x92\xef\xbd\xa6\xef\xbd\xa7\xef\xbd\xa8\xef\xbd\xa9\xef\xbd\xaa\xef\xbd\xab\xef\xbd\xac\xef\xbd\xad\xef\xbd\xae\xef\xbd\xaf\xef\xbd\xb0\xef\xbd\xb1\xef\xbd\xb2" + "\xef\xbd\xb3\xef\xbd\xb4\xef\xbd\xb5\xef\xbd\xb6\xef\xbd\xb7\xef\xbd\xb8\xef\xbd\xb9\xef\xbd\xba\xef\xbd\xbb\xef\xbd\xbc\xef\xbd\xbd\xef\xbd\xbe\xef\xbd\xbf\xef\xbe\x80\xef\xbe\x81\xef\xbe\x82\xef\xbe\x83\xef\xbe\x84\xef\xbe\x85\xef\xbe\x86\xef\xbe\x87\xef\xbe\x88\xef\xbe\x89\xef\xbe\x8a\xef\xbe\x8b\xef\xbe\x8c\xef\xbe\x8d\xef\xbe\x8f\xef\xbe\x90\xef\xbe\x91\xef\xbe\x92\xef\xbe\x93" + "\xef\xbe\x94\xef\xbe\x95\xef\xbe\x96\xef\xbe\x97\xef\xbe\x98\xef\xbe\x99\xef\xbe\x9a\xef\xbe\x9b\xef\xbe\x9c\xef\xbe\x9d\xef\xbe\x9e\xef\xbe\x9f\xef\xbe\xa0\xef\xbe\xa1\xef\xbe\xa2\xef\xbe\xa3\xef\xbe\xa4\xef\xbe\xa5\xef\xbe\xa6\xef\xbe\xa7\xef\xbe\xa8\xef\xbe\xa9\xef\xbe\xaa\xef\xbe\xab\xef\xbe\xac\xef\xbe\xad\xef\xbe\xae\xef\xbe\xaf\xef\xbe\xb0\xef\xbe\xb1\xef\xbe\xb2\xef\xbe\xb3" + "\xef\xbe\xb4\xef\xbe\xb5\xef\xbe\xb6\xef\xbe\xb7\xef\xbe\xb8\xef\xbe\xb9\xef\xbe\xba\xef\xbe\xbb\xef\xbe\xbc\xef\xbe\xbd\xef\xbe\xbe\xef\xbe\xbf\xef\xbf\x80\xef\xbf\x81\xef\xbf\x82\xef\xbf\x83\xef\xbf\x84\xef\xbf\x85\xef\xbf\x86\xef\xbf\x87\xef\xbf\x88\xef\xbf\x89\xef\xbf\x8a\xef\xbf\x8b\xef\xbf\x8c\xef\xbf\x8d\xef\xbf\x8e\xef\xbf\x8f\xef\xbf\x90\xef\xbf\x91\xef\xbf\x92\xef\xbf\x93" + "\xef\xbf\x94\xef\xbf\x95\xef\xbf\x96\xef\xbf\x97\xef\xbf\x98\xef\xbf\x99\xef\xbf\x9a\xef\xbf\x9b\xef\xbf\x9c\xef\xbf\x9d\xef\xbf\x9e\xef\xbf\x9f\xef\xbf\xa0\xef\xbf\xa1\xef\xbf\xa2\xef\xbf\xa3\xef\xbf\xa4\xef\xbf\xa5\xef\xbf\xa6\xef\xbf\xa7\xef\xbf\xa8\xef\xbf\xa9\xef\xbf\xaa\xef\xbf\xab\xef\xbf\xac\xef\xbf\xad\xef\xbf\xae\xef\xbf\xaf\xf0\x90\x80\x80\xf0\x90\x80\x81\xf0\x90\x80\x82\xf0\x90\x80\x83" + "\xf0\x90\x80\x84\xf0\x90\x80\x85\xf0\x90\x81\x8e\xf0\x90\x81\x8f\xf0\x90\x81\x90\xf0\x90\x81\x91\xf0\x90\x81\x92\xf0\x90\x81\x93\xf0\x90\x81\x94\xf0\x90\x81\x95\xf0\x90\x81\x96\xf0\x90\x81\x97\xf0\x90\x81\x98\xf0\x90\x81\x99\xf0\x90\x81\x9a\xf0\x90\x81\x9b\xf0\x90\x81\x9c\xf0\x90\x81\x9d\xf0\x90\x81\x9e\xf0\x90\x81\x9f\xf0\x90\x81\xa0\xf0\x90\x81\xa1\xf0\x90\x81\xa2\xf0\x90\x81\xa3\xf0\x90\x81\xa4\xf0\x90\x81\xa5\xf0\x90\x81\xa6\xf0\x90\x81\xa7\xf0\x90\x81\xa8\xf0\x90\x81\xa9\xf0\x90\x81\xaa\xf0\x90\x81\xb2" + "\xf0\x90\x81\xb3\xf0\x90\x81\xb4\xf0\x90\x82\x96\xf0\x90\x82\x97\xf0\x90\x82\x98\xf0\x90\x82\x99\xf0\x90\x82\xa8\xf0\x90\x82\xa9\xf0\x90\x82\xaa\xf0\x90\x82\xab\xf0\x90\x82\xac\xf0\x90\x82\xad\xf0\x90\x82\xae\xf0\x90\x82\xaf\xf0\x90\x82\xb0\xf0\x90\x82\xb1\xf0\x90\x82\xb2\xf0\x90\x82\xb3\xf0\x90\x82\xb4\xf0\x90\x82\xb5\xf0\x90\x82\xb6\xf0\x90\x82\xba\xf0\x90\x82\xbb\xf0\x90\x82\xbc\xf0\x90\x82\xbd\xf0\x90\x83\x9e\xf0\x90\x83\x9f\xf0\x90\x83\xa0\xf0\x90\x83\xa1\xf0\x90\x83\xa2\xf0\x90\x83\xa3\xf0\x90\x83\xa4" + "\xf0\x90\x83\xa5\xf0\x90\x83\xa6\xf0\x90\x83\xa7\xf0\x90\x83\xb0\xf0\x90\x83\xb1\xf0\x90\x83\xb2\xf0\x90\x84\xb8\xf0\x90\x84\xb9\xf0\x90\x84\xba\xf0\x90\x84\xbb\xf0\x90\x84\xbc\xf0\x90\x84\xbd\xf0\x90\x84\xbe\xf0\x90\x84\xbf\xf0\x90\x85\x80\xf0\x90\x85\x81\xf0\x90\x85\x82\xf0\x90\x85\x83\xf0\x90\x85\x84\xf0\x90\x85\x85\xf0\x90\x85\x86\xf0\x90\x85\x87\xf0\x90\x85\x88\xf0\x90\x85\x89\xf0\x90\x85\x8a\xf0\x90\x85\x8b\xf0\x90\x85\x8c\xf0\x90\x85\x8d\xf0\x90\x85\x8e\xf0\x90\x85\x8f\xf0\x90\x85\x90\xf0\x90\x85\x91" + "\xf0\x90\x85\x92\xf0\x90\x85\x93\xf0\x90\x85\x94\xf0\x90\x85\x95\xf0\x90\x85\x96\xf0\x90\x85\x97\xf0\x90\x85\x98\xf0\x90\x85\x99\xf0\x90\x85\x9a\xf0\x90\x85\x9b\xf0\x90\x85\x9c\xf0\x90\x85\x9d\xf0\x90\x85\x9e\xf0\x90\x85\x9f\xf0\x90\x85\xa0\xf0\x90\x85\xa1\xf0\x90\x85\xa2\xf0\x90\x85\xa3\xf0\x90\x85\xa4\xf0\x90\x86\x8a\xf0\x90\x86\x9d\xf0\x90\x86\x9e\xf0\x90\x86\x9f\xf0\x90\x86\xa0\xf0\x90\x86\xa1\xf0\x90\x86\xa2\xf0\x90\x86\xa3\xf0\x90\x86\xa4\xf0\x90\x86\xa5\xf0\x90\x86\xa6\xf0\x90\x86\xa7\xf0\x90\x86\xa8" + "\xf0\x90\x86\xa9\xf0\x90\x86\xaa\xf0\x90\x86\xab\xf0\x90\x86\xac\xf0\x90\x86\xad\xf0\x90\x86\xae\xf0\x90\x86\xaf\xf0\x90\x86\xb0\xf0\x90\x86\xb1\xf0\x90\x87\xa8\xf0\x90\x87\xa9\xf0\x90\x87\xaa\xf0\x90\x87\xab\xf0\x90\x87\xac\xf0\x90\x87\xad\xf0\x90\x87\xae\xf0\x90\x87\xaf\xf0\x90\x87\xb0\xf0\x90\x87\xb1\xf0\x90\x87\xb2\xf0\x90\x87\xb3\xf0\x90\x87\xb4\xf0\x90\x87\xb5\xf0\x90\x87\xb6\xf0\x90\x87\xb7\xf0\x90\x87\xb8\xf0\x90\x87\xb9\xf0\x90\x87\xba\xf0\x90\x87\xbb\xf0\x90\x87\xbc\xf0\x90\x87\xbd\xf0\x90\x87\xbe" + "\xf0\x90\x87\xbf\xf0\x90\x88\x80\xf0\x90\x88\x81\xf0\x90\x88\x82\xf0\x90\x88\x83\xf0\x90\x88\x84\xf0\x90\x88\x85\xf0\x90\x88\x86\xf0\x90\x88\x87\xf0\x90\x88\x88\xf0\x90\x88\x89\xf0\x90\x88\x8a\xf0\x90\x88\x8b\xf0\x90\x88\x90\xf0\x90\x88\x91\xf0\x90\x88\x92\xf0\x90\x88\x93\xf0\x90\x88\x94\xf0\x90\x88\x95\xf0\x90\x88\x96\xf0\x90\x88\x97\xf0\x90\x88\x98\xf0\x90\x88\x99\xf0\x90\x88\x9a\xf0\x90\x88\x9b\xf0\x90\x88\x9c\xf0\x90\x88\x9d\xf0\x90\x88\x9e\xf0\x90\x88\x9f\xf0\x90\x88\xa0\xf0\x90\x88\xa1\xf0\x90\x88\xa2" + "\xf0\x90\x88\xa3\xf0\x90\x88\xa4\xf0\x90\x88\xa5\xf0\x90\x88\xa6\xf0\x90\x88\xa7\xf0\x90\x88\xa8\xf0\x90\x88\xa9\xf0\x90\x88\xaa\xf0\x90\x88\xab\xf0\x90\x88\xac\xf0\x90\x88\xad\xf0\x90\x88\xae\xf0\x90\x88\xaf\xf0\x90\x88\xb0\xf0\x90\x88\xb1\xf0\x90\x88\xb2\xf0\x90\x88\xb3\xf0\x90\x88\xb4\xf0\x90\x88\xb5\xf0\x90\x88\xb6\xf0\x90\x88\xb7\xf0\x90\x88\xb8\xf0\x90\x88\xb9\xf0\x90\x88\xba\xf0\x90\x88\xbb\xf0\x90\x88\xbc\xf0\x90\x88\xbd\xf0\x90\x88\xbe\xf0\x90\x88\xbf\xf0\x90\x89\x80\xf0\x90\x89\x81\xf0\x90\x89\x82" + "\xf0\x90\x89\x83\xf0\x90\x89\x84\xf0\x90\x89\x85\xf0\x90\x89\x86\xf0\x90\x89\x87\xf0\x90\x89\x88\xf0\x90\x89\x89\xf0\x90\x89\x8a\xf0\x90\x89\x8b\xf0\x90\x89\x8c\xf0\x90\x89\x8d\xf0\x90\x89\x8e\xf0\x90\x89\x8f\xf0\x90\x89\x90\xf0\x90\x89\x91\xf0\x90\x89\x92\xf0\x90\x89\x93\xf0\x90\x89\x94\xf0\x90\x89\x95\xf0\x90\x89\x96\xf0\x90\x89\x97\xf0\x90\x89\x98\xf0\x90\x89\x99\xf0\x90\x89\x9a\xf0\x90\x89\x9b\xf0\x90\x89\x9c\xf0\x90\x89\x9d\xf0\x90\x89\x9e\xf0\x90\x89\x9f\xf0\x90\x89\xa0\xf0\x90\x89\xa1\xf0\x90\x89\xa2" + "\xf0\x90\x89\xa3\xf0\x90\x89\xa4\xf0\x90\x89\xa5\xf0\x90\x89\xa6\xf0\x90\x89\xa7\xf0\x90\x89\xa8\xf0\x90\x89\xa9\xf0\x90\x89\xaa\xf0\x90\x89\xab\xf0\x90\x89\xac\xf0\x90\x89\xad\xf0\x90\x89\xae\xf0\x90\x89\xaf\xf0\x90\x89\xb0\xf0\x90\x89\xb1\xf0\x90\x89\xb2\xf0\x90\x89\xb3\xf0\x90\x89\xb4\xf0\x90\x89\xb5\xf0\x90\x89\xb6\xf0\x90\x89\xb7\xf0\x90\x89\xb8\xf0\x90\x89\xb9\xf0\x90\x89\xba"; +} diff --git a/Editor/Resource/Icons/Tabler/README.md b/Editor/Resource/Icons/Tabler/README.md index 3fc0f066..86df189f 100644 --- a/Editor/Resource/Icons/Tabler/README.md +++ b/Editor/Resource/Icons/Tabler/README.md @@ -4,6 +4,9 @@ This directory contains the official Tabler Icons v3.45.0 outline webfont from [`@tabler/icons-webfont`](https://www.npmjs.com/package/@tabler/icons-webfont). `tabler-icons.ttf` is copied without modification from `dist/fonts/tabler-icons.ttf` in the upstream package. The editor loads -only the glyphs used by its UI into the ImGui font atlas. +the complete icon set into the ImGui font atlas. + +`TablerIcons.h` is generated from the matching upstream CSS by +[`tabler.py`](../../../../Tool/Scripts/IconFontGenerator/tabler.py). Tabler Icons is distributed under the [MIT License](LICENSE). diff --git a/Editor/Src/EditorApplication.cpp b/Editor/Src/EditorApplication.cpp index c7873ec2..19bda7bd 100644 --- a/Editor/Src/EditorApplication.cpp +++ b/Editor/Src/EditorApplication.cpp @@ -10,11 +10,13 @@ #include #include +#include #include #include #include #include #include +#include #include namespace Editor::Internal { @@ -82,6 +84,24 @@ namespace Editor::Internal { style.TabRounding = 2.0f; } + static void LoadIconFonts(ImFontAtlas& inFontAtlas, float inSizePixels) + { + static ImVector glyphRanges; + if (glyphRanges.empty()) { + ImFontGlyphRangesBuilder builder; + builder.AddText(Icons::Tabler::allGlyphs); + builder.BuildRanges(&glyphRanges); + } + + const std::string fontPath = (Core::Paths::EngineResDir() / "Editor" / "Icons" / "Tabler" / "tabler-icons.ttf").String(); + ImFontConfig config; + config.MergeMode = true; + config.PixelSnapH = true; + config.GlyphMinAdvanceX = inSizePixels; + config.GlyphMaxAdvanceX = inSizePixels; + Assert(inFontAtlas.AddFontFromFileTTF(fontPath.c_str(), inSizePixels, &config, glyphRanges.Data) != nullptr); + } + static float CalculatePanelRatio(float inAvailableSize, float inDefaultRatio, float inMinSize, float inMaxSize) { if (inAvailableSize <= 0.0f) { @@ -223,6 +243,7 @@ namespace Editor { ImFontConfig defaultFontConfig; defaultFontConfig.SizePixels = Internal::defaultFontSize; io.FontDefault = io.Fonts->AddFontDefaultVector(&defaultFontConfig); + Internal::LoadIconFonts(*io.Fonts, Internal::defaultFontSize); Internal::SetDarkStyle(); } diff --git a/Editor/Src/Frame/EditorFrame.cpp b/Editor/Src/Frame/EditorFrame.cpp index f0344977..9c084444 100644 --- a/Editor/Src/Frame/EditorFrame.cpp +++ b/Editor/Src/Frame/EditorFrame.cpp @@ -15,7 +15,9 @@ #include #include #include +#include #include +#include #include #include #include @@ -101,22 +103,30 @@ namespace Editor { if (!ImGui::BeginMainMenuBar()) { return; } - if (ImGui::BeginMenu("File")) { - if (ImGui::MenuItem("Save Level", "Ctrl+S")) { + const std::string fileMenuLabel = Widgets::Label(Icons::Tabler::file, "File"); + if (ImGui::BeginMenu(fileMenuLabel.c_str())) { + const std::string saveLevelLabel = Widgets::Label(Icons::Tabler::deviceFloppy, "Save Level"); + if (ImGui::MenuItem(saveLevelLabel.c_str(), "Ctrl+S")) { inContext.GetSceneClient().SaveLevel(); } ImGui::Separator(); - if (ImGui::MenuItem("Exit")) { + const std::string exitLabel = Widgets::Label(Icons::Tabler::doorExit, "Exit"); + if (ImGui::MenuItem(exitLabel.c_str())) { outRequestQuit = true; } ImGui::EndMenu(); } - if (ImGui::BeginMenu("View")) { - ImGui::MenuItem(PanelNames::scene, nullptr, &tabVisibility.scene); - ImGui::MenuItem(PanelNames::outliner, nullptr, &tabVisibility.outliner); - ImGui::MenuItem(PanelNames::inspector, nullptr, &tabVisibility.inspector); + const std::string viewMenuLabel = Widgets::Label(Icons::Tabler::layoutDashboard, "View"); + if (ImGui::BeginMenu(viewMenuLabel.c_str())) { + const std::string sceneLabel = Widgets::Label(Icons::Tabler::viewportWide, PanelNames::scene); + ImGui::MenuItem(sceneLabel.c_str(), nullptr, &tabVisibility.scene); + const std::string outlinerLabel = Widgets::Label(Icons::Tabler::hierarchy2, PanelNames::outliner); + ImGui::MenuItem(outlinerLabel.c_str(), nullptr, &tabVisibility.outliner); + const std::string inspectorLabel = Widgets::Label(Icons::Tabler::adjustmentsHorizontal, PanelNames::inspector); + ImGui::MenuItem(inspectorLabel.c_str(), nullptr, &tabVisibility.inspector); panels.RenderViewMenuItems(); - ImGui::MenuItem(PanelNames::log, nullptr, &tabVisibility.log); + const std::string logLabel = Widgets::Label(Icons::Tabler::terminal2, PanelNames::log); + ImGui::MenuItem(logLabel.c_str(), nullptr, &tabVisibility.log); ImGui::EndMenu(); } ImGui::EndMainMenuBar(); @@ -124,9 +134,10 @@ namespace Editor { void EditorFrame::RenderSceneTab(EditorContext& inContext, Runtime::Canvas& inSceneRenderCanvas, bool& inOutOpen) { + static const std::string label = Widgets::Label(Icons::Tabler::viewportWide, PanelNames::scene, PanelNames::scene); ImGui::PushStyleVar(ImGuiStyleVar_WindowPadding, ImVec2(0.0f, 0.0f)); auto& sceneClient = inContext.GetSceneClient(); - if (ImGui::Begin(PanelNames::scene, &inOutOpen, ImGuiWindowFlags_NoScrollbar | ImGuiWindowFlags_NoScrollWithMouse)) { + if (ImGui::Begin(label.c_str(), &inOutOpen, ImGuiWindowFlags_NoScrollbar | ImGuiWindowFlags_NoScrollWithMouse)) { ImVec2 sceneSize = ImGui::GetContentRegionAvail(); sceneSize.x = std::max(sceneSize.x, 1.0f); sceneSize.y = std::max(sceneSize.y, 1.0f); @@ -148,18 +159,21 @@ namespace Editor { void EditorFrame::RenderOutlinerTab(EditorContext& inContext, Runtime::ECRegistry& inRegistry, bool& inOutOpen) { - if (!ImGui::Begin(PanelNames::outliner, &inOutOpen)) { + static const std::string label = Widgets::Label(Icons::Tabler::hierarchy2, PanelNames::outliner, PanelNames::outliner); + if (!ImGui::Begin(label.c_str(), &inOutOpen)) { ImGui::End(); return; } - if (ImGui::Button("New Entity")) { + const std::string newEntityLabel = Widgets::Label(Icons::Tabler::plus, "New Entity"); + if (ImGui::Button(newEntityLabel.c_str())) { ImGui::OpenPopup("NewEntityMenu"); } ImGui::SetNextWindowSize(ImVec2(260.0f, 0.0f), ImGuiCond_Appearing); if (ImGui::BeginPopup("NewEntityMenu")) { ImGui::SetNextItemWidth(-1.0f); ImGui::InputText("##EntityName", &createEntityName); - if (ImGui::Button("Create", ImVec2(ImGui::GetContentRegionAvail().x, 0.0f))) { + const std::string createLabel = Widgets::Label(Icons::Tabler::check, "Create"); + if (ImGui::Button(createLabel.c_str(), ImVec2(ImGui::GetContentRegionAvail().x, 0.0f))) { const auto entity = inContext.CreateEntity(inRegistry, createEntityName); inContext.SetSelectedEntity(entity); ImGui::CloseCurrentPopup(); @@ -173,7 +187,7 @@ namespace Editor { if (inRegistry.Has(entity)) { return; } - const std::string label = Internal::EntityDisplayName(inRegistry, entity); + const std::string label = Widgets::Label(Icons::Tabler::box, Internal::EntityDisplayName(inRegistry, entity)); const bool selected = inContext.GetSelectedEntity() == entity; ImGui::PushID(static_cast(entity)); if (ImGui::Selectable(label.c_str(), selected)) { @@ -181,7 +195,8 @@ namespace Editor { } if (ImGui::BeginPopupContextItem("EntityMenu")) { inContext.SetSelectedEntity(entity); - if (ImGui::MenuItem("Delete")) { + const std::string deleteLabel = Widgets::Label(Icons::Tabler::trash, "Delete"); + if (ImGui::MenuItem(deleteLabel.c_str())) { entityToDelete = entity; } ImGui::EndPopup(); @@ -196,7 +211,8 @@ namespace Editor { void EditorFrame::RenderInspectorTab(EditorContext& inContext, Runtime::ECRegistry& inRegistry, bool& inOutOpen) { - if (!ImGui::Begin(PanelNames::inspector, &inOutOpen)) { + static const std::string label = Widgets::Label(Icons::Tabler::adjustmentsHorizontal, PanelNames::inspector, PanelNames::inspector); + if (!ImGui::Begin(label.c_str(), &inOutOpen)) { ImGui::End(); return; } @@ -216,7 +232,8 @@ namespace Editor { } ImGui::BeginDisabled(addableComponents.empty()); - if (ImGui::Button("Add Component")) { + const std::string addComponentLabel = Widgets::Label(Icons::Tabler::plus, "Add Component"); + if (ImGui::Button(addComponentLabel.c_str())) { ImGui::OpenPopup("AddComponentMenu"); } ImGui::EndDisabled(); @@ -224,7 +241,8 @@ namespace Editor { for (const auto* clazz : addableComponents) { const std::string componentName = Internal::ComponentDisplayName(*clazz); ImGui::PushID(clazz->GetName().c_str()); - if (ImGui::MenuItem(componentName.c_str())) { + const std::string componentLabel = Widgets::Label(Icons::Tabler::boxMultiple, componentName); + if (ImGui::MenuItem(componentLabel.c_str())) { inContext.AddComponent(inRegistry, selectedEntity, clazz); } ImGui::PopID(); @@ -237,9 +255,11 @@ namespace Editor { inRegistry.CompEach(selectedEntity, [&](Runtime::CompClass compClass) -> void { ImGui::PushID(compClass->GetName().c_str()); const std::string componentName = Internal::ComponentDisplayName(*compClass); - const bool open = ImGui::CollapsingHeader(componentName.c_str(), ImGuiTreeNodeFlags_DefaultOpen); + const std::string componentLabel = Widgets::Label(Icons::Tabler::boxMultiple, componentName); + const bool open = ImGui::CollapsingHeader(componentLabel.c_str(), ImGuiTreeNodeFlags_DefaultOpen); if (inContext.CanRemoveComponent(inRegistry, selectedEntity, compClass) && ImGui::BeginPopupContextItem("ComponentMenu")) { - if (ImGui::MenuItem("Remove")) { + const std::string removeLabel = Widgets::Label(Icons::Tabler::trash, "Remove"); + if (ImGui::MenuItem(removeLabel.c_str())) { componentToRemove = compClass; } ImGui::EndPopup(); @@ -259,9 +279,11 @@ namespace Editor { inRegistry.TagEach(selectedEntity, [&](Runtime::TagClass tagClass) -> void { ImGui::PushID(tagClass->GetName().c_str()); const std::string tagName = Internal::ComponentDisplayName(*tagClass); - ImGui::TextUnformatted(tagName.c_str()); + const std::string tagLabel = Widgets::Label(Icons::Tabler::box, tagName); + ImGui::TextUnformatted(tagLabel.c_str()); if (inContext.CanRemoveComponent(inRegistry, selectedEntity, tagClass) && ImGui::BeginPopupContextItem("ComponentMenu")) { - if (ImGui::MenuItem("Remove")) { + const std::string removeLabel = Widgets::Label(Icons::Tabler::trash, "Remove"); + if (ImGui::MenuItem(removeLabel.c_str())) { componentToRemove = tagClass; } ImGui::EndPopup(); @@ -277,12 +299,14 @@ namespace Editor { void EditorFrame::RenderLogTab(bool& inOutOpen) { - if (!ImGui::Begin(PanelNames::log, &inOutOpen)) { + static const std::string label = Widgets::Label(Icons::Tabler::terminal2, PanelNames::log, PanelNames::log); + if (!ImGui::Begin(label.c_str(), &inOutOpen)) { ImGui::End(); return; } const auto entries = EditorLogStream::Get().Snapshot(); - if (ImGui::Button("Copy")) { + const std::string copyLabel = Widgets::Label(Icons::Tabler::copy, "Copy"); + if (ImGui::Button(copyLabel.c_str())) { std::string text; for (const auto& entry : entries) { text += std::format("[{}][{}][{}] {}\n", entry.time, Internal::LevelString(entry.level), entry.tag, entry.content); @@ -293,13 +317,16 @@ namespace Editor { ImGui::BeginChild("LogEntries", ImVec2(0.0f, 0.0f), false, ImGuiWindowFlags_HorizontalScrollbar); for (const auto& entry : entries) { ImVec4 color = ImGui::GetStyleColorVec4(ImGuiCol_Text); + const char* levelIcon = Icons::Tabler::infoCircle; if (entry.level == Core::LogLevel::warning) { color = ImVec4(1.0f, 0.78f, 0.25f, 1.0f); + levelIcon = Icons::Tabler::alertTriangle; } else if (entry.level == Core::LogLevel::error) { color = ImVec4(1.0f, 0.35f, 0.32f, 1.0f); + levelIcon = Icons::Tabler::circleX; } ImGui::PushStyleColor(ImGuiCol_Text, color); - ImGui::TextUnformatted(std::format("[{}][{}][{}] {}", entry.time, Internal::LevelString(entry.level), entry.tag, entry.content).c_str()); + ImGui::TextUnformatted(std::format("{} [{}][{}][{}] {}", levelIcon, entry.time, Internal::LevelString(entry.level), entry.tag, entry.content).c_str()); ImGui::PopStyleColor(); } if (ImGui::GetScrollY() >= ImGui::GetScrollMaxY()) { diff --git a/Editor/Src/Frame/ProjectHubFrame.cpp b/Editor/Src/Frame/ProjectHubFrame.cpp index 4f265575..ff3d7689 100644 --- a/Editor/Src/Frame/ProjectHubFrame.cpp +++ b/Editor/Src/Frame/ProjectHubFrame.cpp @@ -19,6 +19,8 @@ #include #include #include +#include +#include namespace Editor::ProjectHub::Internal { constexpr std::string_view templateFileExtension = ".tpl"; @@ -56,11 +58,12 @@ namespace Editor::ProjectHub::Internal { ImDrawList* drawList = ImGui::GetWindowDrawList(); drawList->AddRectFilled(cardMin, cardMax, ImGui::GetColorU32(hovered ? cardHovered : cardBackground), 8.0f); - drawList->PushClipRect(ImVec2(cardMin.x + 16.0f, cardMin.y), ImVec2(cardMax.x - 38.0f, cardMax.y), true); - drawList->AddText(ImVec2(cardMin.x + 16.0f, cardMin.y + 13.0f), ImGui::GetColorU32(ImGuiCol_Text), inProject.name.c_str()); - drawList->AddText(ImVec2(cardMin.x + 16.0f, cardMin.y + 38.0f), ImGui::GetColorU32(ImGuiCol_TextDisabled), inProject.path.c_str()); + drawList->AddText(ImVec2(cardMin.x + 16.0f, cardMin.y + 26.0f), ImGui::GetColorU32(accent), Icons::Tabler::folder); + drawList->PushClipRect(ImVec2(cardMin.x + 46.0f, cardMin.y), ImVec2(cardMax.x - 38.0f, cardMax.y), true); + drawList->AddText(ImVec2(cardMin.x + 46.0f, cardMin.y + 13.0f), ImGui::GetColorU32(ImGuiCol_Text), inProject.name.c_str()); + drawList->AddText(ImVec2(cardMin.x + 46.0f, cardMin.y + 38.0f), ImGui::GetColorU32(ImGuiCol_TextDisabled), inProject.path.c_str()); drawList->PopClipRect(); - drawList->AddText(ImVec2(cardMax.x - 25.0f, cardMin.y + 25.0f), ImGui::GetColorU32(ImGuiCol_TextDisabled), ">"); + drawList->AddText(ImVec2(cardMax.x - 25.0f, cardMin.y + 26.0f), ImGui::GetColorU32(ImGuiCol_TextDisabled), Icons::Tabler::chevronRight); ImGui::PopID(); return ImGui::IsItemClicked(); @@ -171,14 +174,16 @@ namespace Editor { { const float spacing = ImGui::GetStyle().ItemSpacing.x; const float buttonWidth = (ImGui::GetContentRegionAvail().x - spacing) * 0.5f; - if (ProjectHub::Internal::RenderActionButton("Open", ImVec2(buttonWidth, ProjectHub::Internal::actionButtonHeight), ProjectHub::Internal::accent, ProjectHub::Internal::accentHovered)) { + const std::string openLabel = Widgets::Label(Icons::Tabler::folderOpen, "Open"); + if (ProjectHub::Internal::RenderActionButton(openLabel.c_str(), ImVec2(buttonWidth, ProjectHub::Internal::actionButtonHeight), ProjectHub::Internal::accent, ProjectHub::Internal::accentHovered)) { if (const auto selectedDirectory = PlatformUtils::SelectDirectory("Open Explosion Project")) { OpenProject(inWindow, *selectedDirectory, inRhiType); } } ImGui::SameLine(); - if (ProjectHub::Internal::RenderActionButton("Create", ImVec2(buttonWidth, ProjectHub::Internal::actionButtonHeight), ProjectHub::Internal::secondaryButton, ProjectHub::Internal::secondaryButtonHovered)) { + const std::string createLabel = Widgets::Label(Icons::Tabler::plus, "Create"); + if (ProjectHub::Internal::RenderActionButton(createLabel.c_str(), ImVec2(buttonWidth, ProjectHub::Internal::actionButtonHeight), ProjectHub::Internal::secondaryButton, ProjectHub::Internal::secondaryButtonHovered)) { statusMessage.clear(); ImGui::OpenPopup("##CreateProjectPopup"); } @@ -186,15 +191,17 @@ namespace Editor { void ProjectHubFrame::RenderRecentProjects(EditorWindow& inWindow, const std::string& inRhiType) { - ImGui::TextUnformatted("Recent projects"); + const std::string recentProjectsLabel = Widgets::Label(Icons::Tabler::folder, "Recent projects"); + ImGui::TextUnformatted(recentProjectsLabel.c_str()); const std::string projectCount = std::to_string(recentProjects.size()); ImGui::SameLine(ImGui::GetContentRegionMax().x - ImGui::CalcTextSize(projectCount.c_str()).x); ImGui::TextDisabled("%s", projectCount.c_str()); ImGui::Dummy(ImVec2(0.0f, 7.0f)); if (!statusMessage.empty()) { + const std::string statusLabel = Widgets::Label(Icons::Tabler::circleX, statusMessage); ImGui::PushStyleColor(ImGuiCol_Text, ImVec4(1.0f, 0.42f, 0.42f, 1.0f)); - ImGui::TextWrapped("%s", statusMessage.c_str()); + ImGui::TextWrapped("%s", statusLabel.c_str()); ImGui::PopStyleColor(); ImGui::Dummy(ImVec2(0.0f, 7.0f)); } @@ -214,8 +221,9 @@ namespace Editor { ImGui::GetWindowDrawList()->AddRectFilled(emptyMin, emptyMax, ImGui::GetColorU32(ProjectHub::Internal::cardBackground), 8.0f); const char* title = "No recent projects"; const char* description = "Open an existing project or create a new one."; - ImGui::GetWindowDrawList()->AddText(ImVec2(emptyMin.x + 16.0f, emptyMin.y + 31.0f), ImGui::GetColorU32(ImGuiCol_Text), title); - ImGui::GetWindowDrawList()->AddText(ImVec2(emptyMin.x + 16.0f, emptyMin.y + 59.0f), ImGui::GetColorU32(ImGuiCol_TextDisabled), description); + ImGui::GetWindowDrawList()->AddText(ImVec2(emptyMin.x + 16.0f, emptyMin.y + 51.0f), ImGui::GetColorU32(ProjectHub::Internal::accent), Icons::Tabler::folderOff); + ImGui::GetWindowDrawList()->AddText(ImVec2(emptyMin.x + 46.0f, emptyMin.y + 31.0f), ImGui::GetColorU32(ImGuiCol_Text), title); + ImGui::GetWindowDrawList()->AddText(ImVec2(emptyMin.x + 46.0f, emptyMin.y + 59.0f), ImGui::GetColorU32(ImGuiCol_TextDisabled), description); ImGui::Dummy(ImVec2(0.0f, 118.0f)); } ImGui::EndChild(); @@ -236,7 +244,8 @@ namespace Editor { ImGui::PushStyleVar(ImGuiStyleVar_WindowBorderSize, 0.0f); ImGui::PushStyleVar(ImGuiStyleVar_FrameRounding, 6.0f); if (ImGui::BeginPopupModal("##CreateProjectPopup", nullptr, ImGuiWindowFlags_NoTitleBar | ImGuiWindowFlags_AlwaysAutoResize | ImGuiWindowFlags_NoSavedSettings)) { - ImGui::TextUnformatted("Create project"); + const std::string createProjectLabel = Widgets::Label(Icons::Tabler::templateIcon, "Create project"); + ImGui::TextUnformatted(createProjectLabel.c_str()); ImGui::TextDisabled("Start from a template and open it right away."); ImGui::Dummy(ImVec2(0.0f, 13.0f)); @@ -250,7 +259,8 @@ namespace Editor { ImGui::SetNextItemWidth(ImGui::GetContentRegionAvail().x - browseButtonWidth - ImGui::GetStyle().ItemSpacing.x); ImGui::InputTextWithHint("##ProjectDirectory", "Choose a parent folder", &directory); ImGui::SameLine(); - if (ImGui::Button("Browse", ImVec2(browseButtonWidth, 0.0f))) { + const std::string browseLabel = Widgets::Label(Icons::Tabler::folderOpen, "Browse"); + if (ImGui::Button(browseLabel.c_str(), ImVec2(browseButtonWidth, 0.0f))) { if (const auto selectedDirectory = PlatformUtils::SelectDirectory("Choose Project Location", directory)) { directory = *selectedDirectory; } @@ -265,7 +275,8 @@ namespace Editor { if (ImGui::BeginCombo("##ProjectTemplate", selectedTemplate)) { for (int i = 0; i < static_cast(projectTemplates.size()); i++) { const bool selected = i == selectedTemplateIndex; - if (ImGui::Selectable(projectTemplates[i].name.c_str(), selected)) { + const std::string templateLabel = Widgets::Label(Icons::Tabler::templateIcon, projectTemplates[i].name); + if (ImGui::Selectable(templateLabel.c_str(), selected)) { selectedTemplateIndex = i; } if (selected) { @@ -277,20 +288,23 @@ namespace Editor { if (!statusMessage.empty()) { ImGui::Dummy(ImVec2(0.0f, 9.0f)); + const std::string statusLabel = Widgets::Label(Icons::Tabler::circleX, statusMessage); ImGui::PushStyleColor(ImGuiCol_Text, ImVec4(1.0f, 0.42f, 0.42f, 1.0f)); - ImGui::TextWrapped("%s", statusMessage.c_str()); + ImGui::TextWrapped("%s", statusLabel.c_str()); ImGui::PopStyleColor(); } ImGui::Dummy(ImVec2(0.0f, 15.0f)); const float footerWidth = 178.0f; ImGui::SetCursorPosX(ImGui::GetContentRegionMax().x - footerWidth); - if (ImGui::Button("Cancel", ImVec2(82.0f, 36.0f))) { + const std::string cancelLabel = Widgets::Label(Icons::Tabler::x, "Cancel"); + if (ImGui::Button(cancelLabel.c_str(), ImVec2(82.0f, 36.0f))) { statusMessage.clear(); ImGui::CloseCurrentPopup(); } ImGui::SameLine(); - if (ProjectHub::Internal::RenderActionButton("Create##Confirm", ImVec2(88.0f, 36.0f), ProjectHub::Internal::accent, ProjectHub::Internal::accentHovered)) { + const std::string confirmLabel = Widgets::Label(Icons::Tabler::check, "Create##Confirm"); + if (ProjectHub::Internal::RenderActionButton(confirmLabel.c_str(), ImVec2(88.0f, 36.0f), ProjectHub::Internal::accent, ProjectHub::Internal::accentHovered)) { const CreateProjectResult result = CreateProject(); if (result.success) { statusMessage.clear(); diff --git a/Editor/Src/Panel/AssetsPanel.cpp b/Editor/Src/Panel/AssetsPanel.cpp index bb602199..1578442a 100644 --- a/Editor/Src/Panel/AssetsPanel.cpp +++ b/Editor/Src/Panel/AssetsPanel.cpp @@ -14,6 +14,8 @@ #include #include #include +#include +#include namespace Editor::Internal { constexpr float assetsFolderTreeWidth = 220.0f; @@ -65,7 +67,8 @@ namespace Editor { void AssetsPanel::Render(bool& inOutOpen) { - if (!ImGui::Begin(PanelNames::assets, &inOutOpen)) { + static const std::string label = Widgets::Label(Icons::Tabler::folder, PanelNames::assets, PanelNames::assets); + if (!ImGui::Begin(label.c_str(), &inOutOpen)) { ImGui::End(); return; } @@ -89,8 +92,9 @@ namespace Editor { const ImVec4 color = statusIsError ? ImVec4(1.0f, 0.35f, 0.32f, 1.0f) : ImGui::GetStyleColorVec4(ImGuiCol_TextDisabled); + const std::string statusLabel = Widgets::Label(statusIsError ? Icons::Tabler::circleX : Icons::Tabler::infoCircle, statusMessage); ImGui::PushStyleColor(ImGuiCol_Text, color); - ImGui::TextWrapped("%s", statusMessage.c_str()); + ImGui::TextWrapped("%s", statusLabel.c_str()); ImGui::PopStyleColor(); } ImGui::Separator(); @@ -111,42 +115,42 @@ namespace Editor { { const bool atRoot = currentDirectory == fileSystem.Root(); ImGui::BeginDisabled(atRoot); - if (ImGui::Button("Up")) { + if (Widgets::IconButton("Up", Icons::Tabler::arrowUp, "Up (Backspace)")) { NavigateTo(currentDirectory.parent_path()); } ImGui::EndDisabled(); ImGui::SameLine(); - if (ImGui::Button("New Folder")) { + if (Widgets::IconButton("New Folder", Icons::Tabler::folderPlus, "New Folder")) { OpenCreateFolderPopup(); } ImGui::SameLine(); - if (ImGui::Button("Import")) { + if (Widgets::IconButton("Import", Icons::Tabler::upload, "Import")) { ImportFiles(); } ImGui::SameLine(); const bool hasSelection = !selectedPath.empty(); ImGui::BeginDisabled(!hasSelection); - if (ImGui::Button("Cut")) { + if (Widgets::IconButton("Cut", Icons::Tabler::cut, "Cut (Ctrl+X)")) { SetClipboard(selectedPath, ClipboardMode::move); } ImGui::SameLine(); - if (ImGui::Button("Copy")) { + if (Widgets::IconButton("Copy", Icons::Tabler::copy, "Copy (Ctrl+C)")) { SetClipboard(selectedPath, ClipboardMode::copy); } ImGui::SameLine(); - if (ImGui::Button("Rename")) { + if (Widgets::IconButton("Rename", Icons::Tabler::edit, "Rename (F2)")) { OpenRenamePopup(selectedPath); } ImGui::SameLine(); - if (ImGui::Button("Delete")) { + if (Widgets::IconButton("Delete", Icons::Tabler::trash, "Delete")) { OpenDeletePopup(selectedPath); } ImGui::EndDisabled(); ImGui::SameLine(); ImGui::BeginDisabled(clipboardMode == ClipboardMode::none); - if (ImGui::Button("Paste")) { + if (Widgets::IconButton("Paste", Icons::Tabler::clipboard, "Paste (Ctrl+V)")) { PasteInto(currentDirectory); } ImGui::EndDisabled(); @@ -154,7 +158,7 @@ namespace Editor { void AssetsPanel::RenderBreadcrumbs() { - if (ImGui::Button(PanelNames::assets)) { + if (Widgets::IconButton("Asset Root", Icons::Tabler::home, PanelNames::assets)) { NavigateTo(fileSystem.Root()); } @@ -166,7 +170,7 @@ namespace Editor { } accumulated /= component; ImGui::SameLine(); - ImGui::TextUnformatted(">"); + ImGui::TextDisabled("%s", Icons::Tabler::chevronRight); ImGui::SameLine(); const std::string id = accumulated.string(); const std::string label = component.string(); @@ -189,8 +193,9 @@ namespace Editor { } const std::string id = inDirectory.string(); + const std::string label = Widgets::Label(Icons::Tabler::folder, inLabel); ImGui::PushID(id.c_str()); - const bool open = ImGui::TreeNodeEx(inLabel, flags); + const bool open = ImGui::TreeNodeEx(label.c_str(), flags); if (ImGui::IsItemClicked() && !ImGui::IsItemToggledOpen()) { NavigateTo(inDirectory); } @@ -236,12 +241,11 @@ namespace Editor { ImGui::TableNextRow(); ImGui::TableSetColumnIndex(0); const std::string pathId = inEntry.path.string(); - const std::string name = inEntry.directory - ? std::format("{}/", inEntry.path.filename().string()) - : inEntry.path.filename().string(); + const std::string name = inEntry.path.filename().string(); + const std::string label = Widgets::Label(inEntry.directory ? Icons::Tabler::folder : Icons::Tabler::file, name); ImGui::PushID(pathId.c_str()); const bool selected = selectedPath == inEntry.path; - if (ImGui::Selectable(name.c_str(), selected, ImGuiSelectableFlags_SpanAllColumns | ImGuiSelectableFlags_AllowDoubleClick)) { + if (ImGui::Selectable(label.c_str(), selected, ImGuiSelectableFlags_SpanAllColumns | ImGuiSelectableFlags_AllowDoubleClick)) { selectedPath = inEntry.path; if (inEntry.directory && ImGui::IsMouseDoubleClicked(ImGuiMouseButton_Left)) { NavigateTo(inEntry.path); @@ -250,7 +254,7 @@ namespace Editor { if (ImGui::BeginDragDropSource()) { ImGui::SetDragDropPayload(Internal::assetPathPayload, pathId.c_str(), pathId.size() + 1); - ImGui::TextUnformatted(name.c_str()); + ImGui::TextUnformatted(label.c_str()); ImGui::EndDragDropSource(); } if (inEntry.directory) { @@ -258,20 +262,25 @@ namespace Editor { } if (ImGui::BeginPopupContextItem("AssetEntryMenu")) { selectedPath = inEntry.path; - if (ImGui::MenuItem("Open", nullptr, false, inEntry.directory)) { + const std::string openLabel = Widgets::Label(Icons::Tabler::externalLink, "Open"); + if (ImGui::MenuItem(openLabel.c_str(), nullptr, false, inEntry.directory)) { NavigateTo(inEntry.path); } ImGui::Separator(); - if (ImGui::MenuItem("Cut", "Ctrl+X")) { + const std::string cutLabel = Widgets::Label(Icons::Tabler::cut, "Cut"); + if (ImGui::MenuItem(cutLabel.c_str(), "Ctrl+X")) { SetClipboard(inEntry.path, ClipboardMode::move); } - if (ImGui::MenuItem("Copy", "Ctrl+C")) { + const std::string copyLabel = Widgets::Label(Icons::Tabler::copy, "Copy"); + if (ImGui::MenuItem(copyLabel.c_str(), "Ctrl+C")) { SetClipboard(inEntry.path, ClipboardMode::copy); } - if (ImGui::MenuItem("Rename", "F2")) { + const std::string renameLabel = Widgets::Label(Icons::Tabler::edit, "Rename"); + if (ImGui::MenuItem(renameLabel.c_str(), "F2")) { OpenRenamePopup(inEntry.path); } - if (ImGui::MenuItem("Delete", "Delete")) { + const std::string deleteLabel = Widgets::Label(Icons::Tabler::trash, "Delete"); + if (ImGui::MenuItem(deleteLabel.c_str(), "Delete")) { OpenDeletePopup(inEntry.path); } ImGui::EndPopup(); @@ -293,14 +302,17 @@ namespace Editor { if (!ImGui::BeginPopupContextWindow("AssetBackgroundMenu", ImGuiPopupFlags_MouseButtonRight | ImGuiPopupFlags_NoOpenOverItems)) { return; } - if (ImGui::MenuItem("New Folder")) { + const std::string newFolderLabel = Widgets::Label(Icons::Tabler::folderPlus, "New Folder"); + if (ImGui::MenuItem(newFolderLabel.c_str())) { OpenCreateFolderPopup(); } - if (ImGui::MenuItem("Import")) { + const std::string importLabel = Widgets::Label(Icons::Tabler::upload, "Import"); + if (ImGui::MenuItem(importLabel.c_str())) { ImportFiles(); } ImGui::Separator(); - if (ImGui::MenuItem("Paste", "Ctrl+V", false, clipboardMode != ClipboardMode::none)) { + const std::string pasteLabel = Widgets::Label(Icons::Tabler::clipboard, "Paste"); + if (ImGui::MenuItem(pasteLabel.c_str(), "Ctrl+V", false, clipboardMode != ClipboardMode::none)) { PasteInto(currentDirectory); } ImGui::EndPopup(); @@ -318,7 +330,8 @@ namespace Editor { } ImGui::SetNextItemWidth(320.0f); const bool submit = ImGui::InputText("Name", &createFolderName, ImGuiInputTextFlags_EnterReturnsTrue); - if (submit || ImGui::Button("Create")) { + const std::string createLabel = Widgets::Label(Icons::Tabler::check, "Create"); + if (submit || ImGui::Button(createLabel.c_str())) { std::filesystem::path created; std::string error; if (fileSystem.CreateFolder(currentDirectory, createFolderName, created, error)) { @@ -330,7 +343,8 @@ namespace Editor { } } ImGui::SameLine(); - if (ImGui::Button("Cancel")) { + const std::string cancelLabel = Widgets::Label(Icons::Tabler::x, "Cancel"); + if (ImGui::Button(cancelLabel.c_str())) { ImGui::CloseCurrentPopup(); } ImGui::EndPopup(); @@ -346,7 +360,8 @@ namespace Editor { } ImGui::SetNextItemWidth(320.0f); const bool submit = ImGui::InputText("Name", &renameName, ImGuiInputTextFlags_EnterReturnsTrue); - if (submit || ImGui::Button("Rename")) { + const std::string renameLabel = Widgets::Label(Icons::Tabler::edit, "Rename"); + if (submit || ImGui::Button(renameLabel.c_str())) { std::filesystem::path renamed; std::string error; if (fileSystem.Rename(renamePath, renameName, renamed, error)) { @@ -361,7 +376,8 @@ namespace Editor { } } ImGui::SameLine(); - if (ImGui::Button("Cancel")) { + const std::string cancelLabel = Widgets::Label(Icons::Tabler::x, "Cancel"); + if (ImGui::Button(cancelLabel.c_str())) { ImGui::CloseCurrentPopup(); } ImGui::EndPopup(); @@ -373,7 +389,8 @@ namespace Editor { } if (ImGui::BeginPopupModal("Delete Asset", nullptr, ImGuiWindowFlags_AlwaysAutoResize)) { ImGui::TextWrapped("Delete '%s'? This cannot be undone.", deletePath.filename().string().c_str()); - if (ImGui::Button("Delete")) { + const std::string deleteLabel = Widgets::Label(Icons::Tabler::trash, "Delete"); + if (ImGui::Button(deleteLabel.c_str())) { std::string error; if (fileSystem.Remove(deletePath, error)) { if (clipboardPath == deletePath) { @@ -388,7 +405,8 @@ namespace Editor { } } ImGui::SameLine(); - if (ImGui::Button("Cancel")) { + const std::string cancelLabel = Widgets::Label(Icons::Tabler::x, "Cancel"); + if (ImGui::Button(cancelLabel.c_str())) { ImGui::CloseCurrentPopup(); } ImGui::EndPopup(); diff --git a/Editor/Src/Panel/EditorPanels.cpp b/Editor/Src/Panel/EditorPanels.cpp index 75f7a511..6c895cb5 100644 --- a/Editor/Src/Panel/EditorPanels.cpp +++ b/Editor/Src/Panel/EditorPanels.cpp @@ -6,6 +6,8 @@ #include #include +#include +#include namespace Editor { EditorPanels::EditorPanels() @@ -27,6 +29,7 @@ namespace Editor { void EditorPanels::RenderViewMenuItems() { - ImGui::MenuItem(PanelNames::assets, nullptr, &assetsVisible); + const std::string label = Widgets::Label(Icons::Tabler::folder, PanelNames::assets); + ImGui::MenuItem(label.c_str(), nullptr, &assetsVisible); } } diff --git a/Editor/Src/Widget/IconWidgets.cpp b/Editor/Src/Widget/IconWidgets.cpp new file mode 100644 index 00000000..d4c3a36f --- /dev/null +++ b/Editor/Src/Widget/IconWidgets.cpp @@ -0,0 +1,29 @@ +#include + +#include + +#include + +namespace Editor::Widgets { + std::string Label(const char* inIcon, std::string_view inText) + { + return std::format("{} {}", inIcon, inText); + } + + std::string Label(const char* inIcon, std::string_view inText, std::string_view inId) + { + return std::format("{} {}###{}", inIcon, inText, inId); + } + + bool IconButton(const char* inId, const char* inIcon, const char* inTooltip) + { + ImGui::PushID(inId); + const float size = ImGui::GetFrameHeight(); + const bool clicked = ImGui::Button(inIcon, ImVec2(size, size)); + if (inTooltip != nullptr && ImGui::IsItemHovered(ImGuiHoveredFlags_DelayShort | ImGuiHoveredFlags_AllowWhenDisabled)) { + ImGui::SetTooltip("%s", inTooltip); + } + ImGui::PopID(); + return clicked; + } +} diff --git a/Tool/CMakeLists.txt b/Program/CMakeLists.txt similarity index 100% rename from Tool/CMakeLists.txt rename to Program/CMakeLists.txt diff --git a/Tool/MirrorTool/CMakeLists.txt b/Program/MirrorTool/CMakeLists.txt similarity index 100% rename from Tool/MirrorTool/CMakeLists.txt rename to Program/MirrorTool/CMakeLists.txt diff --git a/Tool/MirrorTool/ExeSrc/Main.cpp b/Program/MirrorTool/ExeSrc/Main.cpp similarity index 100% rename from Tool/MirrorTool/ExeSrc/Main.cpp rename to Program/MirrorTool/ExeSrc/Main.cpp diff --git a/Tool/MirrorTool/Include/MirrorTool/Generator.h b/Program/MirrorTool/Include/MirrorTool/Generator.h similarity index 100% rename from Tool/MirrorTool/Include/MirrorTool/Generator.h rename to Program/MirrorTool/Include/MirrorTool/Generator.h diff --git a/Tool/MirrorTool/Include/MirrorTool/Parser.h b/Program/MirrorTool/Include/MirrorTool/Parser.h similarity index 100% rename from Tool/MirrorTool/Include/MirrorTool/Parser.h rename to Program/MirrorTool/Include/MirrorTool/Parser.h diff --git a/Tool/MirrorTool/Src/Generator.cpp b/Program/MirrorTool/Src/Generator.cpp similarity index 100% rename from Tool/MirrorTool/Src/Generator.cpp rename to Program/MirrorTool/Src/Generator.cpp diff --git a/Tool/MirrorTool/Src/Parser.cpp b/Program/MirrorTool/Src/Parser.cpp similarity index 100% rename from Tool/MirrorTool/Src/Parser.cpp rename to Program/MirrorTool/Src/Parser.cpp diff --git a/Tool/MirrorTool/Test/Main.cpp b/Program/MirrorTool/Test/Main.cpp similarity index 100% rename from Tool/MirrorTool/Test/Main.cpp rename to Program/MirrorTool/Test/Main.cpp diff --git a/Tool/MirrorTool/Test/MirrorToolInput.h b/Program/MirrorTool/Test/MirrorToolInput.h similarity index 100% rename from Tool/MirrorTool/Test/MirrorToolInput.h rename to Program/MirrorTool/Test/MirrorToolInput.h diff --git a/Tool/Scripts/IconFontGenerator/tabler.py b/Tool/Scripts/IconFontGenerator/tabler.py new file mode 100644 index 00000000..0a7d2fc7 --- /dev/null +++ b/Tool/Scripts/IconFontGenerator/tabler.py @@ -0,0 +1,399 @@ +#!/usr/bin/env python3 + +"""Generate the C++ Tabler icon catalog from an official webfont release.""" + +from __future__ import annotations + +import argparse +import re +import struct +import sys +from dataclasses import dataclass +from pathlib import Path + + +REPOSITORY_ROOT = Path(__file__).resolve().parents[3] +DEFAULT_FONT_PATH = REPOSITORY_ROOT / "Editor" / "Resource" / "Icons" / "Tabler" / "tabler-icons.ttf" +DEFAULT_OUTPUT_PATH = REPOSITORY_ROOT / "Editor" / "Include" / "Editor" / "Widget" / "TablerIcons.h" + +ICON_PATTERN = re.compile(r'\.ti-([a-z0-9-]+):before\s*\{\s*content:\s*"\\([0-9a-fA-F]+)";\s*\}') +VERSION_PATTERN = re.compile(r"Tabler Icons\s+([0-9]+\.[0-9]+\.[0-9]+)") +CPP_KEYWORDS = frozenset( + { + "alignas", + "alignof", + "and", + "and_eq", + "asm", + "atomic_cancel", + "atomic_commit", + "atomic_noexcept", + "auto", + "bitand", + "bitor", + "bool", + "break", + "case", + "catch", + "char", + "char8_t", + "char16_t", + "char32_t", + "class", + "compl", + "concept", + "const", + "const_cast", + "consteval", + "constexpr", + "constinit", + "continue", + "co_await", + "co_return", + "co_yield", + "decltype", + "default", + "delete", + "do", + "double", + "dynamic_cast", + "else", + "enum", + "explicit", + "export", + "extern", + "false", + "float", + "for", + "friend", + "goto", + "if", + "inline", + "int", + "long", + "mutable", + "namespace", + "new", + "noexcept", + "not", + "not_eq", + "nullptr", + "operator", + "or", + "or_eq", + "private", + "protected", + "public", + "reflexpr", + "register", + "reinterpret_cast", + "requires", + "return", + "short", + "signed", + "sizeof", + "static", + "static_assert", + "static_cast", + "struct", + "switch", + "synchronized", + "template", + "this", + "thread_local", + "throw", + "true", + "try", + "typedef", + "typeid", + "typename", + "union", + "unsigned", + "using", + "virtual", + "void", + "volatile", + "wchar_t", + "while", + "xor", + "xor_eq", + } +) + + +class GenerationError(RuntimeError): + pass + + +@dataclass(frozen=True) +class Icon: + css_name: str + identifier: str + codepoint: int + + +def read_u16(data: bytes, offset: int) -> int: + if offset < 0 or offset + 2 > len(data): + raise GenerationError("Unexpected end of TTF data while reading a 16-bit value") + return struct.unpack_from(">H", data, offset)[0] + + +def read_i16(data: bytes, offset: int) -> int: + if offset < 0 or offset + 2 > len(data): + raise GenerationError("Unexpected end of TTF data while reading a signed 16-bit value") + return struct.unpack_from(">h", data, offset)[0] + + +def read_u32(data: bytes, offset: int) -> int: + if offset < 0 or offset + 4 > len(data): + raise GenerationError("Unexpected end of TTF data while reading a 32-bit value") + return struct.unpack_from(">I", data, offset)[0] + + +def ttf_table(font_data: bytes, tag: bytes) -> bytes: + if len(font_data) < 12: + raise GenerationError("TTF offset table is truncated") + table_count = read_u16(font_data, 4) + records_end = 12 + table_count * 16 + if records_end > len(font_data): + raise GenerationError("TTF table directory is truncated") + for index in range(table_count): + record_offset = 12 + index * 16 + if font_data[record_offset : record_offset + 4] != tag: + continue + table_offset = read_u32(font_data, record_offset + 8) + table_length = read_u32(font_data, record_offset + 12) + if table_offset + table_length > len(font_data): + raise GenerationError(f"TTF {tag.decode('ascii')} table is truncated") + return font_data[table_offset : table_offset + table_length] + raise GenerationError(f"TTF does not contain a {tag.decode('ascii')} table") + + +def parse_cmap_format_4(cmap: bytes, subtable_offset: int) -> set[int]: + length = read_u16(cmap, subtable_offset + 2) + subtable_end = subtable_offset + length + if subtable_end > len(cmap): + raise GenerationError("TTF cmap format 4 subtable is truncated") + + segment_count = read_u16(cmap, subtable_offset + 6) // 2 + end_codes_offset = subtable_offset + 14 + start_codes_offset = end_codes_offset + segment_count * 2 + 2 + deltas_offset = start_codes_offset + segment_count * 2 + range_offsets_offset = deltas_offset + segment_count * 2 + if range_offsets_offset + segment_count * 2 > subtable_end: + raise GenerationError("TTF cmap format 4 segment arrays are truncated") + + codepoints: set[int] = set() + for index in range(segment_count): + end_code = read_u16(cmap, end_codes_offset + index * 2) + start_code = read_u16(cmap, start_codes_offset + index * 2) + delta = read_i16(cmap, deltas_offset + index * 2) + range_offset_position = range_offsets_offset + index * 2 + range_offset = read_u16(cmap, range_offset_position) + if start_code > end_code: + raise GenerationError("TTF cmap format 4 contains an invalid segment") + + for codepoint in range(start_code, end_code + 1): + if codepoint == 0xFFFF: + continue + if range_offset == 0: + glyph_index = (codepoint + delta) & 0xFFFF + else: + glyph_position = range_offset_position + range_offset + (codepoint - start_code) * 2 + if glyph_position + 2 > subtable_end: + raise GenerationError("TTF cmap format 4 glyph array is truncated") + glyph_index = read_u16(cmap, glyph_position) + if glyph_index != 0: + glyph_index = (glyph_index + delta) & 0xFFFF + if glyph_index != 0: + codepoints.add(codepoint) + return codepoints + + +def parse_cmap_format_12(cmap: bytes, subtable_offset: int) -> set[int]: + length = read_u32(cmap, subtable_offset + 4) + subtable_end = subtable_offset + length + if subtable_end > len(cmap): + raise GenerationError("TTF cmap format 12 subtable is truncated") + + group_count = read_u32(cmap, subtable_offset + 12) + groups_offset = subtable_offset + 16 + if groups_offset + group_count * 12 > subtable_end: + raise GenerationError("TTF cmap format 12 groups are truncated") + + codepoints: set[int] = set() + for index in range(group_count): + group_offset = groups_offset + index * 12 + start_codepoint = read_u32(cmap, group_offset) + end_codepoint = read_u32(cmap, group_offset + 4) + start_glyph = read_u32(cmap, group_offset + 8) + if start_codepoint > end_codepoint or end_codepoint > 0x10FFFF: + raise GenerationError("TTF cmap format 12 contains an invalid group") + for codepoint in range(start_codepoint, end_codepoint + 1): + if start_glyph + codepoint - start_codepoint != 0: + codepoints.add(codepoint) + return codepoints + + +def parse_ttf_codepoints(font_path: Path) -> set[int]: + try: + font_data = font_path.read_bytes() + except OSError as error: + raise GenerationError(f"Could not read TTF '{font_path}': {error}") from error + cmap = ttf_table(font_data, b"cmap") + if len(cmap) < 4: + raise GenerationError("TTF cmap table is truncated") + + subtable_count = read_u16(cmap, 2) + if 4 + subtable_count * 8 > len(cmap): + raise GenerationError("TTF cmap encoding records are truncated") + + codepoints: set[int] = set() + parsed_offsets: set[int] = set() + for index in range(subtable_count): + record_offset = 4 + index * 8 + platform_id = read_u16(cmap, record_offset) + encoding_id = read_u16(cmap, record_offset + 2) + if platform_id != 0 and not (platform_id == 3 and encoding_id in {1, 10}): + continue + subtable_offset = read_u32(cmap, record_offset + 4) + if subtable_offset in parsed_offsets: + continue + parsed_offsets.add(subtable_offset) + cmap_format = read_u16(cmap, subtable_offset) + if cmap_format == 4: + codepoints.update(parse_cmap_format_4(cmap, subtable_offset)) + elif cmap_format == 12: + codepoints.update(parse_cmap_format_12(cmap, subtable_offset)) + + if not codepoints: + raise GenerationError("TTF cmap does not contain a supported Unicode format 4 or 12 subtable") + return codepoints + + +def cpp_identifier(css_name: str) -> str: + parts = css_name.split("-") + identifier = parts[0] + "".join(part[:1].upper() + part[1:] for part in parts[1:]) + if identifier[0].isdigit(): + identifier = "icon" + identifier[:1].upper() + identifier[1:] + if identifier in CPP_KEYWORDS: + identifier += "Icon" + return identifier + + +def utf8_literal(codepoint: int) -> str: + try: + encoded = chr(codepoint).encode("utf-8") + except (ValueError, UnicodeEncodeError) as error: + raise GenerationError(f"Invalid Unicode codepoint U+{codepoint:04X}") from error + return "".join(f"\\x{byte:02x}" for byte in encoded) + + +def parse_css(css_path: Path) -> tuple[str, list[Icon]]: + try: + css = css_path.read_text(encoding="utf-8") + except OSError as error: + raise GenerationError(f"Could not read CSS '{css_path}': {error}") from error + + version_match = VERSION_PATTERN.search(css) + if version_match is None: + raise GenerationError("Could not determine the Tabler Icons version from the CSS header") + + raw_icons = ICON_PATTERN.findall(css) + if not raw_icons: + raise GenerationError("No Tabler icon declarations were found in the CSS") + + icons = [Icon(css_name, cpp_identifier(css_name), int(codepoint, 16)) for css_name, codepoint in raw_icons] + css_names = [icon.css_name for icon in icons] + identifiers = [icon.identifier for icon in icons] + if len(set(css_names)) != len(css_names): + raise GenerationError("The CSS contains duplicate icon names") + if len(set(identifiers)) != len(identifiers): + collisions = sorted(identifier for identifier in set(identifiers) if identifiers.count(identifier) > 1) + raise GenerationError(f"Generated C++ identifier collisions: {', '.join(collisions)}") + return version_match.group(1), icons + + +def validate_font(icons: list[Icon], font_path: Path) -> set[int]: + css_codepoints = {icon.codepoint for icon in icons} + font_codepoints = parse_ttf_codepoints(font_path) + if css_codepoints != font_codepoints: + missing_from_font = sorted(css_codepoints - font_codepoints) + missing_from_css = sorted(font_codepoints - css_codepoints) + format_codepoints = lambda values: ", ".join(f"U+{value:04X}" for value in values[:8]) or "none" + raise GenerationError( + "CSS and TTF codepoints differ; " + f"missing from TTF: {format_codepoints(missing_from_font)}; " + f"missing from CSS: {format_codepoints(missing_from_css)}" + ) + return css_codepoints + + +def render_header(version: str, icons: list[Icon], codepoints: set[int]) -> str: + lines = [ + "#pragma once", + "", + f"// Generated from @tabler/icons-webfont v{version} by Tool/Scripts/IconFontGenerator/tabler.py.", + "namespace Editor::Icons::Tabler {", + ] + for icon in icons: + lines.append(f' inline constexpr char {icon.identifier}[] = "{utf8_literal(icon.codepoint)}";') + + lines.extend(["", " inline constexpr char allGlyphs[] ="]) + sorted_codepoints = sorted(codepoints) + for offset in range(0, len(sorted_codepoints), 32): + literal = "".join(utf8_literal(codepoint) for codepoint in sorted_codepoints[offset : offset + 32]) + suffix = ";" if offset + 32 >= len(sorted_codepoints) else "" + lines.append(f' "{literal}"{suffix}') + lines.extend(["}", ""]) + return "\n".join(lines) + + +def create_argument_parser() -> argparse.ArgumentParser: + parser = argparse.ArgumentParser(description=__doc__) + parser.add_argument("css", type=Path, help="Path to dist/tabler-icons.css from the official webfont package") + parser.add_argument("--font", type=Path, default=DEFAULT_FONT_PATH, help=f"TTF to validate (default: {DEFAULT_FONT_PATH})") + parser.add_argument("--output", type=Path, default=DEFAULT_OUTPUT_PATH, help=f"Generated header path (default: {DEFAULT_OUTPUT_PATH})") + parser.add_argument("--check", action="store_true", help="Verify that the output is current without modifying it") + return parser + + +def run(arguments: argparse.Namespace) -> int: + version, icons = parse_css(arguments.css.resolve()) + codepoints = validate_font(icons, arguments.font.resolve()) + generated = render_header(version, icons, codepoints) + output_path = arguments.output.resolve() + + if arguments.check: + try: + current = output_path.read_text(encoding="ascii") + except OSError: + current = None + if current != generated: + print(f"Outdated generated header: {output_path}", file=sys.stderr) + return 1 + print(f"Validated {len(icons)} names and {len(codepoints)} glyphs in {output_path}") + return 0 + + output_path.parent.mkdir(parents=True, exist_ok=True) + if output_path.exists() and output_path.read_text(encoding="ascii") == generated: + action = "Unchanged" + else: + output_path.write_text(generated, encoding="ascii", newline="\n") + action = "Generated" + print(f"{action} {output_path}: Tabler Icons {version}, {len(icons)} names, {len(codepoints)} glyphs") + return 0 + + +def main() -> int: + parser = create_argument_parser() + arguments = parser.parse_args() + try: + return run(arguments) + except GenerationError as error: + parser.error(str(error)) + return 2 + + +if __name__ == "__main__": + raise SystemExit(main()) diff --git a/conanfile.py b/conanfile.py index a1ecad68..078dd7f0 100644 --- a/conanfile.py +++ b/conanfile.py @@ -3,6 +3,9 @@ class ExplosionConan(ConanFile): generators = "CMakeConfigDeps" settings = "os", "compiler", "build_type", "arch" + default_options = { + "imgui/*:use_wchar32": True, + } def requirements(self): self.requires("stb/cci.20230920") From ca194392de895889f46cfc34d01f5373694f824f Mon Sep 17 00:00:00 2001 From: kindem Date: Sat, 18 Jul 2026 23:04:24 +0800 Subject: [PATCH 3/6] refactor: rename MirrorTool to MirrorSourceGenerator --- CMake/Target.cmake | 6 +++--- Engine/Source/Common/Include/Common/Math/Simd.h | 2 +- Program/CMakeLists.txt | 2 +- .../CMakeLists.txt | 12 ++++++------ .../ExeSrc/Main.cpp | 12 ++++++------ .../Include/MirrorSourceGenerator}/Generator.h | 4 ++-- .../Include/MirrorSourceGenerator}/Parser.h | 2 +- .../Src/Generator.cpp | 6 +++--- .../Src/Parser.cpp | 8 ++++---- .../Test/Main.cpp | 12 ++++++------ .../Test/MirrorSourceGeneratorInput.h} | 0 11 files changed, 33 insertions(+), 33 deletions(-) rename Program/{MirrorTool => MirrorSourceGenerator}/CMakeLists.txt (57%) rename Program/{MirrorTool => MirrorSourceGenerator}/ExeSrc/Main.cpp (89%) rename Program/{MirrorTool/Include/MirrorTool => MirrorSourceGenerator/Include/MirrorSourceGenerator}/Generator.h (91%) rename Program/{MirrorTool/Include/MirrorTool => MirrorSourceGenerator/Include/MirrorSourceGenerator}/Parser.h (98%) rename Program/{MirrorTool => MirrorSourceGenerator}/Src/Generator.cpp (99%) rename Program/{MirrorTool => MirrorSourceGenerator}/Src/Parser.cpp (99%) rename Program/{MirrorTool => MirrorSourceGenerator}/Test/Main.cpp (91%) rename Program/{MirrorTool/Test/MirrorToolInput.h => MirrorSourceGenerator/Test/MirrorSourceGeneratorInput.h} (100%) diff --git a/CMake/Target.cmake b/CMake/Target.cmake index 984b093e..74594f09 100644 --- a/CMake/Target.cmake +++ b/CMake/Target.cmake @@ -415,8 +415,8 @@ function(exp_add_mirror_info_source_generation_target) add_custom_command( OUTPUT ${output_source} - COMMAND "$" ${dynamic_arg} "-i" ${input_header_file} "-o" ${output_source} ${inc_args} ${fwk_dir_args} - DEPENDS MirrorTool ${input_header_file} + COMMAND "$" ${dynamic_arg} "-i" ${input_header_file} "-o" ${output_source} ${inc_args} ${fwk_dir_args} + DEPENDS MirrorSourceGenerator ${input_header_file} ) endforeach() endforeach () @@ -424,7 +424,7 @@ function(exp_add_mirror_info_source_generation_target) set(custom_target_name "${arg_NAME}.Generated") add_custom_target( ${custom_target_name} - DEPENDS MirrorTool ${output_sources} + DEPENDS MirrorSourceGenerator ${output_sources} ) set_target_properties(${custom_target_name} PROPERTIES FOLDER ${AUX_TARGETS_FOLDER}) set(${arg_OUTPUT_SRC} ${output_sources} PARENT_SCOPE) diff --git a/Engine/Source/Common/Include/Common/Math/Simd.h b/Engine/Source/Common/Include/Common/Math/Simd.h index 2f8d6f92..6313ca25 100644 --- a/Engine/Source/Common/Include/Common/Math/Simd.h +++ b/Engine/Source/Common/Include/Common/Math/Simd.h @@ -8,7 +8,7 @@ #include -// MirrorTool parses these headers only to harvest reflection metadata, and its libclang has no usable SSE2/NEON +// MirrorSourceGenerator parses these headers only to harvest reflection metadata, and its libclang has no usable SSE2/NEON // intrinsic header (no clang resource headers on Linux, a version-mismatched arm_neon.h on macOS). Reflection needs the // declarations below but never the vectorized bodies, so under the parser we skip the intrinsic include and stand in a // scalar F32x4 instead; every real translation unit still takes the intrinsic backend. diff --git a/Program/CMakeLists.txt b/Program/CMakeLists.txt index a6d38b67..af1a1a9c 100644 --- a/Program/CMakeLists.txt +++ b/Program/CMakeLists.txt @@ -1 +1 @@ -add_subdirectory(MirrorTool) \ No newline at end of file +add_subdirectory(MirrorSourceGenerator) diff --git a/Program/MirrorTool/CMakeLists.txt b/Program/MirrorSourceGenerator/CMakeLists.txt similarity index 57% rename from Program/MirrorTool/CMakeLists.txt rename to Program/MirrorSourceGenerator/CMakeLists.txt index 7eb01bf9..801ad0be 100644 --- a/Program/MirrorTool/CMakeLists.txt +++ b/Program/MirrorSourceGenerator/CMakeLists.txt @@ -1,6 +1,6 @@ file(GLOB sources Src/*.cpp) exp_add_library( - NAME MirrorTool.Static + NAME MirrorSourceGenerator.Static SRC ${sources} PUBLIC_INC Include PUBLIC_LIB Mirror libclang::libclang clipp::clipp @@ -8,18 +8,18 @@ exp_add_library( file(GLOB exe_sources ExeSrc/*.cpp) exp_add_executable( - NAME MirrorTool + NAME MirrorSourceGenerator SRC ${exe_sources} INC Include - LIB MirrorTool.Static + LIB MirrorSourceGenerator.Static ) exp_add_test( - NAME MirrorTool.Test + NAME MirrorSourceGenerator.Test SRC Test/Main.cpp INC Include - LIB MirrorTool.Static + LIB MirrorSourceGenerator.Static RES - ${CMAKE_CURRENT_SOURCE_DIR}/Test/MirrorToolInput.h->../Test/Resource/Mirror/MirrorToolInput.h + ${CMAKE_CURRENT_SOURCE_DIR}/Test/MirrorSourceGeneratorInput.h->../Test/Resource/Mirror/MirrorSourceGeneratorInput.h ${CMAKE_SOURCE_DIR}/Engine/Source/Mirror/Include/Mirror/Meta.h->../Test/Resource/Mirror/Mirror/Meta.h ) diff --git a/Program/MirrorTool/ExeSrc/Main.cpp b/Program/MirrorSourceGenerator/ExeSrc/Main.cpp similarity index 89% rename from Program/MirrorTool/ExeSrc/Main.cpp rename to Program/MirrorSourceGenerator/ExeSrc/Main.cpp index 49df956a..78b088a5 100644 --- a/Program/MirrorTool/ExeSrc/Main.cpp +++ b/Program/MirrorSourceGenerator/ExeSrc/Main.cpp @@ -6,8 +6,8 @@ #include -#include -#include +#include +#include #include #include #include @@ -69,9 +69,9 @@ int main(int argc, char* argv[]) // NOLINT headerDirs = ProcessHeaderDirs(headerDirs); auto outputErrorWithDebugContext = [fullCmdLineStr, inputFile, outputFile, headerDirs, frameworkDirs, dynamic](const std::string& error) -> void { - std::cout << "MirrorTool fatal error:" << Common::newline; + std::cout << "MirrorSourceGenerator fatal error:" << Common::newline; std::cout << error << Common::newline; - std::cout << "MirrorTool debug context: " << Common::newline; + std::cout << "MirrorSourceGenerator debug context: " << Common::newline; std::cout << "[fullCmdLine] " << fullCmdLineStr << Common::newline; std::cout << "[dynamic] " << dynamic << Common::newline; std::cout << "[inputFile] " << inputFile << Common::newline; @@ -96,14 +96,14 @@ int main(int argc, char* argv[]) // NOLINT return 1; } - MirrorTool::Parser parser(inputFile, headerDirs, frameworkDirs); + MirrorSourceGenerator::Parser parser(inputFile, headerDirs, frameworkDirs); const auto parseResult = parser.Parse(); if (parseResult.IsErr()) { outputErrorWithDebugContext(parseResult.Error()); return 1; } - MirrorTool::Generator generator(inputFile, outputFile, headerDirs, parseResult.Value(), dynamic); + MirrorSourceGenerator::Generator generator(inputFile, outputFile, headerDirs, parseResult.Value(), dynamic); if (const auto generateResult = generator.Generate(); generateResult.IsErr()) { outputErrorWithDebugContext(generateResult.Error()); diff --git a/Program/MirrorTool/Include/MirrorTool/Generator.h b/Program/MirrorSourceGenerator/Include/MirrorSourceGenerator/Generator.h similarity index 91% rename from Program/MirrorTool/Include/MirrorTool/Generator.h rename to Program/MirrorSourceGenerator/Include/MirrorSourceGenerator/Generator.h index 36605c7e..82acc6bb 100644 --- a/Program/MirrorTool/Include/MirrorTool/Generator.h +++ b/Program/MirrorSourceGenerator/Include/MirrorSourceGenerator/Generator.h @@ -9,9 +9,9 @@ #include #include -#include +#include -namespace MirrorTool { +namespace MirrorSourceGenerator { struct MetaInfo; class Generator { diff --git a/Program/MirrorTool/Include/MirrorTool/Parser.h b/Program/MirrorSourceGenerator/Include/MirrorSourceGenerator/Parser.h similarity index 98% rename from Program/MirrorTool/Include/MirrorTool/Parser.h rename to Program/MirrorSourceGenerator/Include/MirrorSourceGenerator/Parser.h index 6fdf9f59..36cd2ad8 100644 --- a/Program/MirrorTool/Include/MirrorTool/Parser.h +++ b/Program/MirrorSourceGenerator/Include/MirrorSourceGenerator/Parser.h @@ -13,7 +13,7 @@ #include #include -namespace MirrorTool { +namespace MirrorSourceGenerator { enum class FieldAccess : uint8_t { pub, pro, diff --git a/Program/MirrorTool/Src/Generator.cpp b/Program/MirrorSourceGenerator/Src/Generator.cpp similarity index 99% rename from Program/MirrorTool/Src/Generator.cpp rename to Program/MirrorSourceGenerator/Src/Generator.cpp index c989aff4..d416b35b 100644 --- a/Program/MirrorTool/Src/Generator.cpp +++ b/Program/MirrorSourceGenerator/Src/Generator.cpp @@ -8,12 +8,12 @@ #include #include -#include +#include #include #include #include -namespace MirrorTool { +namespace MirrorSourceGenerator { static std::string GetFullName(const Node& node) { std::string outerName = node.outerName; @@ -435,7 +435,7 @@ namespace MirrorTool { } } -namespace MirrorTool { +namespace MirrorSourceGenerator { Generator::Generator(std::string inInputFile, std::string inOutputFile, std::vector inHeaderDirs, const MetaInfo& inMetaInfo, bool inDynamic) : metaInfo(inMetaInfo) , inputFile(std::move(inInputFile)) diff --git a/Program/MirrorTool/Src/Parser.cpp b/Program/MirrorSourceGenerator/Src/Parser.cpp similarity index 99% rename from Program/MirrorTool/Src/Parser.cpp rename to Program/MirrorSourceGenerator/Src/Parser.cpp index 4adb890e..abf692a3 100644 --- a/Program/MirrorTool/Src/Parser.cpp +++ b/Program/MirrorSourceGenerator/Src/Parser.cpp @@ -8,7 +8,7 @@ #include #include -#include +#include #define DEBUG_OUTPUT 0 @@ -22,7 +22,7 @@ #define VisitChildren(funcName, contextType, cursor, context) \ clang_visitChildren(cursor, [](CXCursor c, CXCursor p, CXClientData cd) -> CXChildVisitResult { \ auto* ctx = reinterpret_cast(cd); \ - return MirrorTool::funcName(c, p, *ctx); \ + return MirrorSourceGenerator::funcName(c, p, *ctx); \ }, &context); \ #define FetchCursorInfo(visitorName, cursorVar) \ @@ -67,7 +67,7 @@ static void PrintDebugInfo(const std::string& visitorName, CXCursor cursor) #endif } -namespace MirrorTool { +namespace MirrorSourceGenerator { static constexpr auto propertyMetaTag = "property"; static constexpr auto functionMetaTag = "func"; static constexpr auto classMetaTag = "class"; @@ -414,7 +414,7 @@ namespace MirrorTool { } } -namespace MirrorTool { +namespace MirrorSourceGenerator { #if PLATFORM_LINUX // The conan libclang package ships only libclang.so, without clang's builtin headers (stddef.h, stdarg.h, ...) or any // system include paths, so query the host GCC for the directories it searches and feed them to clang verbatim. diff --git a/Program/MirrorTool/Test/Main.cpp b/Program/MirrorSourceGenerator/Test/Main.cpp similarity index 91% rename from Program/MirrorTool/Test/Main.cpp rename to Program/MirrorSourceGenerator/Test/Main.cpp index bd9d9ab2..23220e1f 100644 --- a/Program/MirrorTool/Test/Main.cpp +++ b/Program/MirrorSourceGenerator/Test/Main.cpp @@ -4,10 +4,10 @@ #include -#include -#include +#include +#include -using namespace MirrorTool; +using namespace MirrorSourceGenerator; void AssertMetaDatasEqual(const MetaDataMap& lhs, const MetaDataMap& rhs) { @@ -120,7 +120,7 @@ void AssertNamespaceInfoEqual(const NamespaceInfo& lhs, const NamespaceInfo& rhs TEST(MirrorTest, ParserTest) { - const Parser parser("../Test/Resource/Mirror/MirrorToolInput.h", { "../Test/Resource/Mirror" }, {}); + const Parser parser("../Test/Resource/Mirror/MirrorSourceGeneratorInput.h", { "../Test/Resource/Mirror" }, {}); const auto parseResult = parser.Parse(); ASSERT_TRUE(parseResult.IsOk()); @@ -160,11 +160,11 @@ TEST(MirrorTest, ParserTest) TEST(MirrorTest, GeneratorTest) { - const Parser parser("../Test/Resource/Mirror/MirrorToolInput.h", { "../Test/Resource/Mirror" }, {}); + const Parser parser("../Test/Resource/Mirror/MirrorSourceGeneratorInput.h", { "../Test/Resource/Mirror" }, {}); const auto parseResult = parser.Parse(); ASSERT_TRUE(parseResult.IsOk()); - const Generator generator("../Test/Resource/Mirror/MirrorToolInput.h", "../Test/Generated/Mirror/MirrorToolTest.generated.cpp", { "../" }, parseResult.Value(), false); + const Generator generator("../Test/Resource/Mirror/MirrorSourceGeneratorInput.h", "../Test/Generated/Mirror/MirrorSourceGeneratorTest.generated.cpp", { "../" }, parseResult.Value(), false); const auto generateResult = generator.Generate(); ASSERT_TRUE(generateResult.IsOk()); } diff --git a/Program/MirrorTool/Test/MirrorToolInput.h b/Program/MirrorSourceGenerator/Test/MirrorSourceGeneratorInput.h similarity index 100% rename from Program/MirrorTool/Test/MirrorToolInput.h rename to Program/MirrorSourceGenerator/Test/MirrorSourceGeneratorInput.h From a8b14020102ebeb485668387915e4b1dfe4afce0 Mon Sep 17 00:00:00 2001 From: kindem Date: Sun, 19 Jul 2026 00:56:47 +0800 Subject: [PATCH 4/6] fix: harden math primitives and half conversion --- .../Common/Include/Common/Math/Common.h | 47 ++- .../Source/Common/Include/Common/Math/Half.h | 328 ++++++------------ .../Common/Include/Common/Math/Matrix.h | 96 ++++- .../Common/Include/Common/Math/Quaternion.h | 55 ++- .../Source/Common/Include/Common/Math/Simd.h | 16 + .../Common/Include/Common/Math/Transform.h | 53 ++- .../Common/Include/Common/Math/Vector.h | 36 +- Engine/Source/Common/Test/MathTest.cpp | 104 +++++- 8 files changed, 450 insertions(+), 285 deletions(-) diff --git a/Engine/Source/Common/Include/Common/Math/Common.h b/Engine/Source/Common/Include/Common/Math/Common.h index f65a85b6..ec014019 100644 --- a/Engine/Source/Common/Include/Common/Math/Common.h +++ b/Engine/Source/Common/Include/Common/Math/Common.h @@ -4,6 +4,7 @@ #pragma once +#include #include #include @@ -16,16 +17,60 @@ namespace Common { } namespace Common { + template T DefaultTolerance(); + template T Pi(); + template bool AlmostEqual(T lhs, T rhs, T absoluteTolerance, T relativeTolerance); template bool CompareNumber(T lhs, T rhs); template T DivideAndRoundUp(T lhs, T rhs); } namespace Common { + template + T DefaultTolerance() + { + if constexpr (std::is_same_v) { + return static_cast(epsilon); + } else if constexpr (std::is_same_v) { + return static_cast(1e-12); + } else if constexpr (std::is_same_v) { + return static_cast(1e-15L); + } else { + return static_cast(halfEpsilon); + } + } + + template + T Pi() + { + if constexpr (std::is_floating_point_v) { + return std::numbers::pi_v; + } else { + return static_cast(std::numbers::pi_v); + } + } + + template + bool AlmostEqual(T lhs, T rhs, T absoluteTolerance, T relativeTolerance) + { + static_assert(std::is_floating_point_v); + if (lhs == rhs) { + return true; + } + if (!std::isfinite(lhs) || !std::isfinite(rhs)) { + return false; + } + + const T difference = std::abs(lhs - rhs); + const T scale = std::max(std::abs(lhs), std::abs(rhs)); + return difference <= std::max(absoluteTolerance, relativeTolerance * scale); + } + template bool CompareNumber(T lhs, T rhs) { if constexpr (std::is_floating_point_v) { - return std::abs(lhs - rhs) < epsilon; + const T tolerance = DefaultTolerance(); + return AlmostEqual(lhs, rhs, tolerance, tolerance); } else { return lhs == rhs; } diff --git a/Engine/Source/Common/Include/Common/Math/Half.h b/Engine/Source/Common/Include/Common/Math/Half.h index dd386343..a814e66a 100644 --- a/Engine/Source/Common/Include/Common/Math/Half.h +++ b/Engine/Source/Common/Include/Common/Math/Half.h @@ -4,9 +4,8 @@ #pragma once -#include -#include #include +#include #include #include @@ -14,26 +13,14 @@ namespace Common { template concept ValidEndian = E == std::endian::little || E == std::endian::big; -} -namespace Common::Internal { template requires ValidEndian - struct FullFloatBase {}; + struct HalfFloatBase { + explicit HalfFloatBase(uint16_t inValue); - template - struct FullFloat : FullFloatBase { - FullFloat(); - FullFloat(float inValue); // NOLINT - FullFloat(const FullFloat& inValue); - FullFloat(FullFloat&& inValue) noexcept; + uint16_t value; }; -} - -namespace Common { - template - requires ValidEndian - struct HalfFloatBase {}; template struct HalfFloat : HalfFloatBase { @@ -78,25 +65,10 @@ namespace Common { using HFloat = HalfFloat; template concept HalfFloatingPoint = std::is_same_v; - template concept FloatingPoint = std::is_floating_point_v || std::is_same_v; + template concept FloatingPoint = std::is_floating_point_v || HalfFloatingPoint; } namespace Common { - template - struct Serializer> { - static constexpr size_t typeId = HashUtils::StrCrc32("Common::Internal::FullFloat"); - - static size_t Serialize(BinarySerializeStream& stream, const Internal::FullFloat& value) - { - return Serializer::Serialize(stream, value.value); - } - - static size_t Deserialize(BinaryDeserializeStream& stream, Internal::FullFloat& value) - { - return Serializer::Deserialize(stream, value.value); - } - }; - template struct Serializer> { static constexpr size_t typeId = HashUtils::StrCrc32("Common::Internal::HalfFloat"); @@ -112,14 +84,6 @@ namespace Common { } }; - template - struct StringConverter> { - static std::string ToString(const Internal::FullFloat& inValue) - { - return StringConverter::ToString(inValue.value); - } - }; - template struct StringConverter> { static std::string ToString(const HalfFloat& inValue) @@ -128,19 +92,6 @@ namespace Common { } }; - template - struct JsonSerializer> { - static void JsonSerialize(rapidjson::Value& outJsonValue, rapidjson::Document::AllocatorType& inAllocator, const Internal::FullFloat& inValue) - { - JsonSerializer::JsonSerialize(outJsonValue, inAllocator, inValue.value); - } - - static void JsonDeserialize(const rapidjson::Value& inJsonValue, Internal::FullFloat& outValue) - { - JsonSerializer::JsonDeserialize(inJsonValue, outValue.value); - } - }; - template struct JsonSerializer> { static void JsonSerialize(rapidjson::Value& outJsonValue, rapidjson::Document::AllocatorType& inAllocator, const HalfFloat& inValue) @@ -150,112 +101,94 @@ namespace Common { static void JsonDeserialize(const rapidjson::Value& inJsonValue, HalfFloat& outValue) { - float fltValue; - JsonSerializer::JsonDeserialize(inJsonValue, fltValue); - outValue = fltValue; + float floatValue = 0.0f; + JsonSerializer::JsonDeserialize(inJsonValue, floatValue); + outValue = floatValue; } }; } namespace Common::Internal { - template <> - struct FullFloatBase { - union { - float value; - struct { - uint32_t mantissa : 23; - uint32_t exponent : 8; - uint32_t sign : 1; - }; - }; - - inline explicit FullFloatBase(float inValue); - }; + inline uint16_t FloatToHalfBits(float inValue) + { + const uint32_t floatBits = std::bit_cast(inValue); + const uint16_t sign = static_cast((floatBits >> 16) & 0x8000u); + const uint32_t exponent = (floatBits >> 23) & 0xffu; + const uint32_t mantissa = floatBits & 0x7fffffu; - template <> - struct FullFloatBase { - union { - float value; - struct { - uint32_t sign : 1; - uint32_t exponent : 8; - uint32_t mantissa : 23; - }; - }; - - inline explicit FullFloatBase(float inValue); - }; + if (exponent == 0xffu) { + if (mantissa == 0) { + return static_cast(sign | 0x7c00u); + } - FullFloatBase::FullFloatBase(const float inValue) - : value(inValue) - { - } + uint16_t payload = static_cast(mantissa >> 13); + if (payload == 0) { + payload = 1; + } + return static_cast(sign | 0x7c00u | payload); + } - FullFloatBase::FullFloatBase(const float inValue) - : value(inValue) - { - } + const int32_t halfExponent = static_cast(exponent) - 127 + 15; + if (halfExponent >= 31) { + return static_cast(sign | 0x7c00u); + } - template - FullFloat::FullFloat() - : FullFloatBase(0) - { - } + if (halfExponent <= 0) { + if (halfExponent < -10) { + return sign; + } - template - FullFloat::FullFloat(float inValue) - : FullFloatBase(inValue) - { - } + const uint32_t significand = mantissa | 0x800000u; + const uint32_t shift = static_cast(14 - halfExponent); + uint16_t halfMantissa = static_cast(significand >> shift); + const uint32_t remainderMask = (uint32_t(1) << shift) - 1; + const uint32_t remainder = significand & remainderMask; + const uint32_t halfway = uint32_t(1) << (shift - 1); + if (remainder > halfway || (remainder == halfway && (halfMantissa & 1u) != 0)) { + ++halfMantissa; + } + return static_cast(sign | halfMantissa); + } - template - FullFloat::FullFloat(const FullFloat& inValue) - : FullFloatBase(inValue.value) - { + uint16_t result = static_cast(sign | (static_cast(halfExponent) << 10) | static_cast(mantissa >> 13)); + const uint32_t remainder = mantissa & 0x1fffu; + if (remainder > 0x1000u || (remainder == 0x1000u && (result & 1u) != 0)) { + ++result; + } + return result; } - template - FullFloat::FullFloat(FullFloat&& inValue) noexcept - : FullFloatBase(inValue.value) + inline float HalfBitsToFloat(uint16_t inValue) { - } -} + const uint32_t sign = static_cast(inValue & 0x8000u) << 16; + const uint32_t exponent = (inValue >> 10) & 0x1fu; + uint32_t mantissa = inValue & 0x03ffu; + uint32_t floatBits; -namespace Common { - template <> - struct HalfFloatBase { - union { - uint16_t value; - struct { - uint16_t mantissa : 10; - uint16_t exponent : 5; - uint16_t sign : 1; - }; - }; - - inline explicit HalfFloatBase(uint16_t inValue); - }; - - template <> - struct HalfFloatBase { - union { - uint16_t value; - struct { - uint16_t sign : 1; - uint16_t exponent : 5; - uint16_t mantissa : 10; - }; - }; - - inline explicit HalfFloatBase(uint16_t inValue); - }; + if (exponent == 0) { + if (mantissa == 0) { + floatBits = sign; + } else { + const uint32_t shift = std::countl_zero(mantissa) - 21; + mantissa = (mantissa << shift) & 0x03ffu; + const uint32_t floatExponent = 127 - 14 - shift; + floatBits = sign | (floatExponent << 23) | (mantissa << 13); + } + } else if (exponent == 0x1fu) { + floatBits = sign | 0x7f800000u | (mantissa << 13); + } else { + const uint32_t floatExponent = exponent - 15 + 127; + floatBits = sign | (floatExponent << 23) | (mantissa << 13); + } - HalfFloatBase::HalfFloatBase(const uint16_t inValue) - : value(inValue) - { + return std::bit_cast(floatBits); } +} - HalfFloatBase::HalfFloatBase(const uint16_t inValue) +namespace Common { + template + requires ValidEndian + HalfFloatBase::HalfFloatBase(uint16_t inValue) : value(inValue) { } @@ -267,104 +200,37 @@ namespace Common { } template - HalfFloat::HalfFloat(const HalfFloat& inValue) - : HalfFloatBase(inValue.value) - { - } + HalfFloat::HalfFloat(const HalfFloat& inValue) = default; template - HalfFloat::HalfFloat(HalfFloat&& inValue) noexcept - : HalfFloatBase(inValue.value) - { - } + HalfFloat::HalfFloat(HalfFloat&& inValue) noexcept = default; template - HalfFloat::HalfFloat(const float inValue) - : HalfFloatBase(0) + HalfFloat::HalfFloat(float inValue) + : HalfFloatBase(Internal::FloatToHalfBits(inValue)) { - Set(inValue); } template - HalfFloat& HalfFloat::operator=(const float inValue) + HalfFloat& HalfFloat::operator=(float inValue) { Set(inValue); return *this; } template - HalfFloat& HalfFloat::operator=(const HalfFloat& inValue) - { - this->value = inValue.value; - return *this; - } + HalfFloat& HalfFloat::operator=(const HalfFloat& inValue) = default; template void HalfFloat::Set(float inValue) { - Internal::FullFloat full(inValue); - - this->sign = full.sign; - if (full.exponent <= 112) - { - this->exponent = 0; - this->mantissa = 0; - - if (const int32_t newExp = full.exponent - 127 + 15; - 14 - newExp <= 24) - { - const uint32_t tMantissa = full.mantissa | 0x800000; - this->mantissa = static_cast(tMantissa >> (14 - newExp)); - if (((this->mantissa >> (13 - newExp)) & 1) != 0u) - { - ++this->value; - } - } - } - else if (full.exponent >= 143) - { - this->exponent = 30; - this->mantissa = 1023; - } - else - { - this->exponent = static_cast(static_cast(full.exponent) - 127 + 15); - this->mantissa = static_cast(full.mantissa >> 13); - } + this->value = Internal::FloatToHalfBits(inValue); } template float HalfFloat::AsFloat() const { - Internal::FullFloat result; - - result.sign = this->sign; - if (this->exponent == 0) - { - if (const uint32_t tMantissa = this->mantissa; - tMantissa == 0) - { - result.exponent = 0; - result.mantissa = 0; - } - else - { - const uint32_t mantissaShift = 10 - static_cast(std::trunc(std::log2(static_cast(tMantissa)))); - result.exponent = 127 - (15 - 1) - mantissaShift; - result.mantissa = tMantissa << (mantissaShift + 23 - 10); - } - } - else if (this->exponent == 31) - { - result.exponent = 142; - result.mantissa = 8380416; - } - else - { - result.exponent = static_cast(this->exponent) - 15 + 127; - result.mantissa = static_cast(this->mantissa) << 13; - } - return result.value; + return Internal::HalfBitsToFloat(this->value); } template @@ -374,27 +240,27 @@ namespace Common { } template - bool HalfFloat::operator==(const float rhs) const + bool HalfFloat::operator==(float rhs) const { - return std::abs(AsFloat() - rhs) < halfEpsilon; + return AsFloat() == rhs; } template - bool HalfFloat::operator!=(const float rhs) const + bool HalfFloat::operator!=(float rhs) const { - return std::abs(AsFloat() - rhs) >= halfEpsilon; + return !this->operator==(rhs); } template bool HalfFloat::operator==(const HalfFloat& rhs) const { - return std::abs(AsFloat() - rhs.AsFloat()) < halfEpsilon; + return AsFloat() == rhs.AsFloat(); } template bool HalfFloat::operator!=(const HalfFloat& rhs) const { - return std::abs(AsFloat() - rhs.AsFloat()) >= halfEpsilon; + return !this->operator==(rhs); } template @@ -422,25 +288,25 @@ namespace Common { } template - HalfFloat HalfFloat::operator+(const float rhs) const + HalfFloat HalfFloat::operator+(float rhs) const { return { AsFloat() + rhs }; } template - HalfFloat HalfFloat::operator-(const float rhs) const + HalfFloat HalfFloat::operator-(float rhs) const { return { AsFloat() - rhs }; } template - HalfFloat HalfFloat::operator*(const float rhs) const + HalfFloat HalfFloat::operator*(float rhs) const { return { AsFloat() * rhs }; } template - HalfFloat HalfFloat::operator/(const float rhs) const + HalfFloat HalfFloat::operator/(float rhs) const { return { AsFloat() / rhs }; } @@ -470,28 +336,28 @@ namespace Common { } template - HalfFloat& HalfFloat::operator+=(const float rhs) + HalfFloat& HalfFloat::operator+=(float rhs) { Set(AsFloat() + rhs); return *this; } template - HalfFloat& HalfFloat::operator-=(const float rhs) + HalfFloat& HalfFloat::operator-=(float rhs) { Set(AsFloat() - rhs); return *this; } template - HalfFloat& HalfFloat::operator*=(const float rhs) + HalfFloat& HalfFloat::operator*=(float rhs) { Set(AsFloat() * rhs); return *this; } template - HalfFloat& HalfFloat::operator/=(const float rhs) + HalfFloat& HalfFloat::operator/=(float rhs) { Set(AsFloat() / rhs); return *this; diff --git a/Engine/Source/Common/Include/Common/Math/Matrix.h b/Engine/Source/Common/Include/Common/Math/Matrix.h index 9d5b7493..1320b1c1 100644 --- a/Engine/Source/Common/Include/Common/Math/Matrix.h +++ b/Engine/Source/Common/Include/Common/Math/Matrix.h @@ -117,9 +117,10 @@ namespace Common { requires ValidSubMatDims Mat SubMatrix() const; - bool CanInverse() const; - Mat Inverse() const; - T Determinant() const; + bool CanInverse(T tolerance = DefaultTolerance()) const requires (R == C && R > 1 && FloatingPoint); + bool TryInverse(Mat& outResult, T tolerance = DefaultTolerance()) const requires (R == C && R > 1 && FloatingPoint); + Mat Inverse(T tolerance = DefaultTolerance()) const requires (R == C && R > 1 && FloatingPoint); + T Determinant() const requires (R == C && R > 1); Vec ExtractTranslation() const; Vec ExtractScale() const; @@ -533,11 +534,39 @@ namespace Common::Internal { return result; } + template + bool ScaledDeterminantIsInvertible(T determinant, T scale, T tolerance) + { + const T determinantValue = std::abs(determinant); + const T toleranceValue = std::abs(tolerance); + if (!std::isfinite(scale) || !std::isfinite(determinantValue) || scale == static_cast(0)) { + return false; + } + + T threshold = toleranceValue; + for (auto i = 0; i < R; i++) { + threshold *= scale; + } + return determinantValue > threshold; + } + template - Mat MatInverseScalar(const Mat& m) + bool MatDeterminantIsInvertible(const Mat& m, T determinant, T tolerance) + { + using EvaluationT = std::conditional_t, float, T>; + EvaluationT scale = 0; + for (auto i = 0; i < R * C; i++) { + scale = std::max(scale, std::abs(static_cast(m.data[i]))); + } + return ScaledDeterminantIsInvertible( + static_cast(determinant), scale, static_cast(tolerance)); + } + + template + Mat MatInverseScalar(const Mat& m, T determinant) { static_assert(R == C && R > 1 && R < 5); - T oneOverDet = static_cast(1) / MatDeterminantScalar(m); + T oneOverDet = static_cast(1) / determinant; Mat result; if constexpr (R == 2) { @@ -670,7 +699,15 @@ namespace Common::Internal { static Mat Transpose(const Mat& m) { return MatTransposeScalar(m); } static Vec MulVec(const Mat& m, const Vec& v) { return MatMulVecScalar(m, v); } static T Determinant(const Mat& m) { return MatDeterminantScalar(m); } - static Mat Inverse(const Mat& m) { return MatInverseScalar(m); } + static bool TryInverse(const Mat& m, Mat& outResult, T tolerance) + { + const T determinant = MatDeterminantScalar(m); + if (!MatDeterminantIsInvertible(m, determinant, tolerance)) { + return false; + } + outResult = MatInverseScalar(m, determinant); + return true; + } }; // Row-major 4x4 float matrix, backed by float[16] (four contiguous rows of 16 bytes each), so each row maps to an @@ -747,7 +784,7 @@ namespace Common::Internal { // (p, q) is (p2*q3 - p3*q2, same, p1*q3 - p3*q1, p1*q2 - p2*q1). The cofactor columns are transposed into rows, // and the determinant is recovered as row0 . (first row of the cofactor matrix), so there is no second // Determinant pass. - static M Inverse(const M& m) + static bool TryInverse(const M& m, M& outResult, float tolerance) { const Simd::F32x4 r0 = Simd::LoadU(&m.data[0]); const Simd::F32x4 r1 = Simd::LoadU(&m.data[4]); @@ -788,16 +825,19 @@ namespace Common::Internal { // det = row0 . (column 0 of the cofactor matrix). That column is the col0 register as-is, so compute the // determinant before Transpose4 turns col0 into the cofactor matrix's first row. const float det = Simd::Sum(Simd::Mul(r0, col0)); + const float scale = Simd::MaxValue(Simd::Max(Simd::Max(Simd::Abs(r0), Simd::Abs(r1)), Simd::Max(Simd::Abs(r2), Simd::Abs(r3)))); + if (!ScaledDeterminantIsInvertible(det, scale, tolerance)) { + return false; + } const Simd::F32x4 oneOverDet = Simd::Set1(1.0f / det); Simd::Transpose4(col0, col1, col2, col3); - M result; - Simd::StoreU(&result.data[0], Simd::Mul(col0, oneOverDet)); - Simd::StoreU(&result.data[4], Simd::Mul(col1, oneOverDet)); - Simd::StoreU(&result.data[8], Simd::Mul(col2, oneOverDet)); - Simd::StoreU(&result.data[12], Simd::Mul(col3, oneOverDet)); - return result; + Simd::StoreU(&outResult.data[0], Simd::Mul(col0, oneOverDet)); + Simd::StoreU(&outResult.data[4], Simd::Mul(col1, oneOverDet)); + Simd::StoreU(&outResult.data[8], Simd::Mul(col2, oneOverDet)); + Simd::StoreU(&outResult.data[12], Simd::Mul(col3, oneOverDet)); + return true; } static float Determinant(const M& m) { return MatDeterminantScalar(m); } @@ -871,7 +911,15 @@ namespace Common::Internal { return result; } - static M Inverse(const M& m) { return MatInverseScalar(m); } + static bool TryInverse(const M& m, M& outResult, float tolerance) + { + const float determinant = MatDeterminantScalar(m); + if (!MatDeterminantIsInvertible(m, determinant, tolerance)) { + return false; + } + outResult = MatInverseScalar(m, determinant); + return true; + } static float Determinant(const M& m) { return MatDeterminantScalar(m); } }; } @@ -1272,19 +1320,29 @@ namespace Common { template - bool Mat::CanInverse() const + bool Mat::CanInverse(T tolerance) const requires (R == C && R > 1 && FloatingPoint) + { + const T determinant = this->Determinant(); + return Internal::MatDeterminantIsInvertible(*this, determinant, tolerance); + } + + template + bool Mat::TryInverse(Mat& outResult, T tolerance) const requires (R == C && R > 1 && FloatingPoint) { - return this->Determinant() != static_cast(0); + return Internal::MatOps::TryInverse(*this, outResult, tolerance); } template - Mat Mat::Inverse() const + Mat Mat::Inverse(T tolerance) const requires (R == C && R > 1 && FloatingPoint) { - return Internal::MatOps::Inverse(*this); + Mat result; + const bool invertible = TryInverse(result, tolerance); + Assert(invertible); + return result; } template - T Mat::Determinant() const + T Mat::Determinant() const requires (R == C && R > 1) { return Internal::MatOps::Determinant(*this); } diff --git a/Engine/Source/Common/Include/Common/Math/Quaternion.h b/Engine/Source/Common/Include/Common/Math/Quaternion.h index 605cc194..f8ed7777 100644 --- a/Engine/Source/Common/Include/Common/Math/Quaternion.h +++ b/Engine/Source/Common/Include/Common/Math/Quaternion.h @@ -92,10 +92,13 @@ namespace Common { Quaternion& operator/=(T rhs); Vec ImaginaryPart() const; + T ModelSquared() const; T Model() const; Quaternion Negatived() const; Quaternion Conjugated() const; Quaternion Normalized() const; + bool TryNormalize(T tolerance = DefaultTolerance()); + void Normalize(); T Dot(const Quaternion& rhs) const; // when axis faced to us, ccw as positive direction Vec RotateVector(const Vec& inVector) const; @@ -420,7 +423,7 @@ namespace Common { template Angle& Angle::operator=(const Radian& inValue) { - this->value = inValue.value; + this->value = inValue.ToAngle(); return *this; } @@ -433,7 +436,7 @@ namespace Common { template T Angle::ToRadian() const { - return this->value / 180.0f * pi; + return this->value / static_cast(180) * Pi(); } template @@ -467,7 +470,7 @@ namespace Common { template Radian& Radian::operator=(const Angle& inValue) { - this->value = inValue.value; + this->value = inValue.ToRadian(); return *this; } @@ -480,7 +483,7 @@ namespace Common { template T Radian::ToAngle() const { - return this->value * 180.0f / pi; + return this->value * static_cast(180) / Pi(); } template @@ -524,7 +527,15 @@ namespace Common { template Quaternion::Quaternion(const Vec& inAxis, float inAngle) { - Vec axis = inAxis.Normalized(); + Vec axis = inAxis; + if (!axis.TryNormalize()) { + Assert(false); + this->w = 1; + this->x = 0; + this->y = 0; + this->z = 0; + return; + } T halfRadian = Angle(inAngle).ToRadian() / 2.0f; T halfRadianSin = std::sin(halfRadian); T halfRadianCos = std::cos(halfRadian); @@ -630,7 +641,13 @@ namespace Common { template T Quaternion::Model() const { - return std::sqrt(Internal::QuatOps::Dot(*this, *this)); + return std::sqrt(ModelSquared()); + } + + template + T Quaternion::ModelSquared() const + { + return Internal::QuatOps::Dot(*this, *this); } template @@ -658,7 +675,31 @@ namespace Common { template Quaternion Quaternion::Normalized() const { - return this->operator/(Model()); + Quaternion result(*this); + result.Normalize(); + return result; + } + + template + bool Quaternion::TryNormalize(T tolerance) + { + const T modelSquared = ModelSquared(); + const double modelSquaredValue = static_cast(modelSquared); + const double toleranceValue = static_cast(tolerance); + if (!std::isfinite(modelSquaredValue) || modelSquaredValue <= toleranceValue * toleranceValue) { + return false; + } + + const T oneOverModel = static_cast(1) / static_cast(std::sqrt(modelSquared)); + *this = Internal::QuatOps::MulScalar(*this, oneOverModel); + return true; + } + + template + void Quaternion::Normalize() + { + const bool normalized = TryNormalize(); + Assert(normalized); } template diff --git a/Engine/Source/Common/Include/Common/Math/Simd.h b/Engine/Source/Common/Include/Common/Math/Simd.h index 6313ca25..6108d737 100644 --- a/Engine/Source/Common/Include/Common/Math/Simd.h +++ b/Engine/Source/Common/Include/Common/Math/Simd.h @@ -4,6 +4,8 @@ #pragma once +#include +#include #include #include @@ -47,7 +49,10 @@ namespace Common::Simd { inline F32x4 Sub(F32x4 a, F32x4 b) { return { a.lanes[0] - b.lanes[0], a.lanes[1] - b.lanes[1], a.lanes[2] - b.lanes[2], a.lanes[3] - b.lanes[3] }; } inline F32x4 Mul(F32x4 a, F32x4 b) { return { a.lanes[0] * b.lanes[0], a.lanes[1] * b.lanes[1], a.lanes[2] * b.lanes[2], a.lanes[3] * b.lanes[3] }; } inline F32x4 Div(F32x4 a, F32x4 b) { return { a.lanes[0] / b.lanes[0], a.lanes[1] / b.lanes[1], a.lanes[2] / b.lanes[2], a.lanes[3] / b.lanes[3] }; } + inline F32x4 Abs(F32x4 v) { return { std::abs(v.lanes[0]), std::abs(v.lanes[1]), std::abs(v.lanes[2]), std::abs(v.lanes[3]) }; } + inline F32x4 Max(F32x4 a, F32x4 b) { return { std::max(a.lanes[0], b.lanes[0]), std::max(a.lanes[1], b.lanes[1]), std::max(a.lanes[2], b.lanes[2]), std::max(a.lanes[3], b.lanes[3]) }; } inline float Sum(F32x4 v) { return v.lanes[0] + v.lanes[1] + v.lanes[2] + v.lanes[3]; } + inline float MaxValue(F32x4 v) { return std::max(std::max(v.lanes[0], v.lanes[1]), std::max(v.lanes[2], v.lanes[3])); } inline F32x4 Set(float x, float y, float z, float w) { return { x, y, z, w }; } template @@ -74,6 +79,8 @@ namespace Common::Simd { inline F32x4 Sub(F32x4 a, F32x4 b) { return _mm_sub_ps(a, b); } inline F32x4 Mul(F32x4 a, F32x4 b) { return _mm_mul_ps(a, b); } inline F32x4 Div(F32x4 a, F32x4 b) { return _mm_div_ps(a, b); } + inline F32x4 Abs(F32x4 v) { return _mm_andnot_ps(_mm_set1_ps(-0.0f), v); } + inline F32x4 Max(F32x4 a, F32x4 b) { return _mm_max_ps(a, b); } inline float Sum(F32x4 v) { @@ -84,6 +91,12 @@ namespace Common::Simd { return _mm_cvtss_f32(sums); } + inline float MaxValue(F32x4 v) + { + const F32x4 pairMax = _mm_max_ps(v, _mm_movehl_ps(v, v)); + return _mm_cvtss_f32(_mm_max_ss(pairMax, _mm_shuffle_ps(pairMax, pairMax, _MM_SHUFFLE(1, 1, 1, 1)))); + } + inline F32x4 Set(float x, float y, float z, float w) { return _mm_set_ps(w, z, y, x); } template @@ -107,7 +120,10 @@ namespace Common::Simd { inline F32x4 Sub(F32x4 a, F32x4 b) { return vsubq_f32(a, b); } inline F32x4 Mul(F32x4 a, F32x4 b) { return vmulq_f32(a, b); } inline F32x4 Div(F32x4 a, F32x4 b) { return vdivq_f32(a, b); } + inline F32x4 Abs(F32x4 v) { return vabsq_f32(v); } + inline F32x4 Max(F32x4 a, F32x4 b) { return vmaxq_f32(a, b); } inline float Sum(F32x4 v) { return vaddvq_f32(v); } + inline float MaxValue(F32x4 v) { return vmaxvq_f32(v); } inline F32x4 Set(float x, float y, float z, float w) { diff --git a/Engine/Source/Common/Include/Common/Math/Transform.h b/Engine/Source/Common/Include/Common/Math/Transform.h index de2884cc..ab1814c5 100644 --- a/Engine/Source/Common/Include/Common/Math/Transform.h +++ b/Engine/Source/Common/Include/Common/Math/Transform.h @@ -45,6 +45,8 @@ namespace Common { Transform& Rotate(const Quaternion& inRotation); Transform& Scale(const Vec& inScale); Transform& UpdateRotation(const Vec& forward, const Vec& side, const Vec& up); + bool TryLookTo(const Vec& inTargetPosition, const Vec& inUpDirection = VecConsts::unitZ, T tolerance = DefaultTolerance()); + bool TryMoveAndLookTo(const Vec& inPosition, const Vec& inTargetPosition, const Vec& inUpDirection = VecConsts::unitZ, T tolerance = DefaultTolerance()); Transform& LookTo(const Vec& inTargetPosition, const Vec& inUpDirection = VecConsts::unitZ); Transform& MoveAndLookTo(const Vec& inPosition, const Vec& inTargetPosition, const Vec& inUpDirection = VecConsts::unitZ); @@ -348,38 +350,55 @@ namespace Common { } template - Transform& Transform::LookTo(const Vec& inTargetPosition, const Vec& inUpDirection) + bool Transform::TryLookTo(const Vec& inTargetPosition, const Vec& inUpDirection, T tolerance) { Vec f(inTargetPosition - this->translation); - f.Normalize(); + if (!f.TryNormalize(tolerance)) { + return false; + } Vec s = inUpDirection.Cross(f); - s.Normalize(); + if (!s.TryNormalize(tolerance)) { + const Vec& fallbackUp = std::abs(static_cast(f.z)) < 0.999 + ? VecConsts::unitZ + : VecConsts::unitY; + s = fallbackUp.Cross(f); + if (!s.TryNormalize(tolerance)) { + return false; + } + } Vec u = f.Cross(s); this->UpdateRotation(f, s, u); + return true; + } + template + bool Transform::TryMoveAndLookTo(const Vec& inPosition, const Vec& inTargetPosition, const Vec& inUpDirection, T tolerance) + { + Transform result(*this); + result.translation = inPosition; + if (!result.TryLookTo(inTargetPosition, inUpDirection, tolerance)) { + return false; + } + *this = result; + return true; + } + + template + Transform& Transform::LookTo(const Vec& inTargetPosition, const Vec& inUpDirection) + { + const bool success = TryLookTo(inTargetPosition, inUpDirection); + Assert(success); return *this; } template Transform& Transform::MoveAndLookTo(const Vec& inPosition, const Vec& inTargetPosition, const Vec& inUpDirection) { - // Translation of LookAtMatrix ([s.Dot(inPosition), u.Dot(inPosition), f.Dot(inPosition)]) applying to visible objects is in camera space, whose coordinate system consists of s u and f - // The translation we need is in world space, exactly inPosition - this->translation = inPosition; - - Vec f(inTargetPosition - this->translation); - f.Normalize(); - - Vec s = inUpDirection.Cross(f); - s.Normalize(); - - Vec u = f.Cross(s); - - this->UpdateRotation(f, s, u); - + const bool success = TryMoveAndLookTo(inPosition, inTargetPosition, inUpDirection); + Assert(success); return *this; } diff --git a/Engine/Source/Common/Include/Common/Math/Vector.h b/Engine/Source/Common/Include/Common/Math/Vector.h index f3d0cdc2..cc95a06d 100644 --- a/Engine/Source/Common/Include/Common/Math/Vector.h +++ b/Engine/Source/Common/Include/Common/Math/Vector.h @@ -9,6 +9,7 @@ #include #include +#include #include #include @@ -82,8 +83,10 @@ namespace Common { template Vec SubVec() const; + T ModelSquared() const; T Model() const; Vec Normalized() const; + bool TryNormalize(T tolerance = DefaultTolerance()); void Normalize(); T Dot(const Vec& rhs) const; typename Internal::VecCrossResultTraits::Type Cross(const Vec& rhs) const; @@ -817,20 +820,45 @@ namespace Common { T Vec::Model() const { static_assert(FloatingPoint); - return std::sqrt(Internal::VecOps::Dot(*this, *this)); + return std::sqrt(ModelSquared()); + } + + template + T Vec::ModelSquared() const + { + static_assert(FloatingPoint); + return Internal::VecOps::Dot(*this, *this); } template Vec Vec::Normalized() const { - return this->operator/(Model()); + Vec result(*this); + result.Normalize(); + return result; } template - void Vec::Normalize() + bool Vec::TryNormalize(T tolerance) { - T oneOverModel = static_cast(1.0) / Model(); + static_assert(FloatingPoint); + const T modelSquared = ModelSquared(); + const double modelSquaredValue = static_cast(modelSquared); + const double toleranceValue = static_cast(tolerance); + if (!std::isfinite(modelSquaredValue) || modelSquaredValue <= toleranceValue * toleranceValue) { + return false; + } + + const T oneOverModel = static_cast(1) / static_cast(std::sqrt(modelSquared)); *this = Internal::VecOps::MulScalar(*this, oneOverModel); + return true; + } + + template + void Vec::Normalize() + { + const bool normalized = TryNormalize(); + Assert(normalized); } template diff --git a/Engine/Source/Common/Test/MathTest.cpp b/Engine/Source/Common/Test/MathTest.cpp index c63548a7..734ba4c0 100644 --- a/Engine/Source/Common/Test/MathTest.cpp +++ b/Engine/Source/Common/Test/MathTest.cpp @@ -4,6 +4,9 @@ #include +#include +#include + #include #include #include @@ -32,6 +35,10 @@ TEST(MathTest, CompareNumberTest) { ASSERT_TRUE(CompareNumber(1.0f, 1.0f + epsilon / 2.0f)); ASSERT_FALSE(CompareNumber(1.0f, 1.1f)); + ASSERT_TRUE(CompareNumber(1.0e9, 1.0e9 + 0.0005)); + ASSERT_TRUE(CompareNumber(std::numeric_limits::infinity(), std::numeric_limits::infinity())); + ASSERT_FALSE(CompareNumber(std::numeric_limits::quiet_NaN(), std::numeric_limits::quiet_NaN())); + ASSERT_DOUBLE_EQ(Pi(), std::numbers::pi_v); ASSERT_TRUE(CompareNumber(5, 5)); ASSERT_FALSE(CompareNumber(5, 6)); } @@ -40,6 +47,8 @@ TEST(MathTest, CompareNumberTest) TEST(MathTest, HFloatTest) // NOLINT { + static_assert(sizeof(HFloat) == sizeof(uint16_t)); + const HFloat v0 = 1.0f; ASSERT_FLOAT_EQ(v0, 1.0f); ASSERT_TRUE(v0 == 1.0f); @@ -53,14 +62,14 @@ TEST(MathTest, HFloatTest) // NOLINT HFloat v3 = 1.0f; v3 /= v2; - ASSERT_TRUE(v3 == (1.0f / 1.5f)); + ASSERT_NEAR(v3.AsFloat(), 1.0f / 1.5f, halfEpsilon); HFloat v4 = 2.0f; v4 -= v2; ASSERT_TRUE(v4 == HFloat(0.5f)); const HFloat v5 = 3.0f; - ASSERT_TRUE(HFloat(9.0f) = HFloat(std::pow(v5, 2.0f))); + ASSERT_TRUE(HFloat(9.0f) == HFloat(std::pow(v5, 2.0f))); const HFloat v6 = 9.0f; ASSERT_TRUE(v5 == HFloat(std::sqrt(v6))); @@ -99,10 +108,40 @@ TEST(MathTest, HFloatEdgeCaseTest) // NOLINT ASSERT_TRUE(HFloat(0.5f) == 0.5f); ASSERT_TRUE(HFloat(0.25f) == 0.25f); - // values beyond the half range are clamped to the largest representable finite half (~65504) - const float large = static_cast(HFloat(100000.0f)); - ASSERT_GT(large, 60000.0f); - ASSERT_LT(large, 70000.0f); + ASSERT_FLOAT_EQ(HFloat(65504.0f).AsFloat(), 65504.0f); + ASSERT_TRUE(std::isinf(HFloat(100000.0f).AsFloat())); + ASSERT_TRUE(std::isinf(HFloat(std::numeric_limits::infinity()).AsFloat())); + ASSERT_TRUE(std::isnan(HFloat(std::numeric_limits::quiet_NaN()).AsFloat())); + + HFloat minimumSubnormal; + minimumSubnormal.value = 1; + ASSERT_FLOAT_EQ(minimumSubnormal.AsFloat(), std::ldexp(1.0f, -24)); + + const HFloat positiveZero(0.0f); + const HFloat negativeZero(-0.0f); + ASSERT_TRUE(positiveZero == negativeZero); + ASSERT_FALSE(std::signbit(positiveZero.AsFloat())); + ASSERT_TRUE(std::signbit(negativeZero.AsFloat())); + + const HFloat one(1.0f); + const float halfwayToNext = 1.0f + std::ldexp(1.0f, -11); + ASSERT_EQ(HFloat(halfwayToNext).value, one.value); + ASSERT_EQ(HFloat(std::nextafter(halfwayToNext, 2.0f)).value, one.value + 1); + ASSERT_FALSE(one == HFloat(1.0f + std::ldexp(1.0f, -10))); +} + +TEST(MathTest, HFloatBitPatternRoundTripTest) // NOLINT +{ + for (uint32_t bits = 0; bits <= std::numeric_limits::max(); ++bits) { + HFloat value; + value.value = static_cast(bits); + const float asFloat = value.AsFloat(); + if ((bits & 0x7c00u) == 0x7c00u && (bits & 0x03ffu) != 0) { + ASSERT_TRUE(std::isnan(asFloat)); + } else { + ASSERT_EQ(HFloat(asFloat).value, value.value); + } + } } // ==================================== Vector ==================================== @@ -365,6 +404,18 @@ TEST(MathTest, VecNormalizeTest) v0.Normalize(); ASSERT_TRUE(v0 == n0); + + FVec3 zero = FVec3Consts::zero; + ASSERT_FALSE(zero.TryNormalize()); + ASSERT_TRUE(zero == FVec3Consts::zero); + + FVec3 infinite(std::numeric_limits::infinity(), 0.0f, 0.0f); + ASSERT_FALSE(infinite.TryNormalize()); + + FVec3 tiny(1.0e-8f, 0.0f, 0.0f); + ASSERT_FALSE(tiny.TryNormalize()); + ASSERT_TRUE(tiny.TryNormalize(1.0e-9f)); + ASSERT_TRUE(tiny == FVec3Consts::unitX); } TEST(MathTest, VecConstsTest) @@ -605,6 +656,18 @@ TEST(MathTest, MatCanInverseTest) const FMat2x2 m1(1, 2, 2, 4); ASSERT_FALSE(m1.CanInverse()); + + FMat2x2 result(7.0f); + ASSERT_FALSE(m1.TryInverse(result)); + ASSERT_TRUE(result == 7.0f); + + const FMat2x2 nearSingular(1.0f, 1.0f, 1.0f, 1.0f + 1.0e-7f); + ASSERT_FALSE(nearSingular.CanInverse()); + + const FMat2x2 smallButInvertible(1.0e-8f, 0.0f, 0.0f, 1.0e-8f); + ASSERT_TRUE(smallButInvertible.CanInverse()); + ASSERT_TRUE(smallButInvertible.TryInverse(result)); + ASSERT_TRUE(result == FMat2x2(1.0e8f, 0.0f, 0.0f, 1.0e8f)); } TEST(MathTest, MatScalarArithmeticTest) @@ -666,6 +729,17 @@ TEST(MathTest, AngleRadianConvertTest) const FAngle a1(r1); ASSERT_TRUE(a1 == FAngle(180.0f)); + FAngle assignedAngle; + assignedAngle = FRadian(pi / 2.0f); + ASSERT_TRUE(assignedAngle == FAngle(90.0f)); + + FRadian assignedRadian; + assignedRadian = FAngle(180.0f); + ASSERT_TRUE(assignedRadian == FRadian(pi)); + + const DAngle preciseAngle { DRadian(std::numbers::pi_v) }; + ASSERT_TRUE(preciseAngle == DAngle(180.0)); + ASSERT_TRUE(FAngle(45.0f) == FAngle(45.0f)); ASSERT_FALSE(FRadian(1.0f) == FRadian(2.0f)); } @@ -714,6 +788,14 @@ TEST(MathTest, QuaternionPropertiesTest) const FQuat v1(2, 0, 0, 0); ASSERT_TRUE(v1.Normalized() == FQuat(1, 0, 0, 0)); + FQuat zero; + ASSERT_FALSE(zero.TryNormalize()); + ASSERT_TRUE(zero == FQuatConsts::zero); + + FQuat normalized(2, 0, 0, 0); + ASSERT_TRUE(normalized.TryNormalize()); + ASSERT_TRUE(normalized == FQuatConsts::identity); + const FQuat v2(2, 3, 4, 5); ASSERT_FLOAT_EQ(v0.Dot(v2), 1.0f * 2 + 2 * 3 + 3 * 4 + 4 * 5); } @@ -908,6 +990,16 @@ TEST(MathTest, TransformLookAtTest) const float invSqrt2 = std::sqrt(0.5f); ASSERT_TRUE((r3 * FVec4(1, 0, 0, 0)) == FVec4(invSqrt2, invSqrt2, 0, 0)); ASSERT_TRUE((r3 * FVec4(0, 0, 1, 0)) == FVec4(0, 0, 1, 0)); + + FTransform invalidLook(FQuatConsts::identity, FVec3(1, 2, 3)); + ASSERT_FALSE(invalidLook.TryLookTo(invalidLook.translation)); + ASSERT_TRUE(invalidLook == FTransform(FQuatConsts::identity, FVec3(1, 2, 3))); + ASSERT_FALSE(invalidLook.TryMoveAndLookTo(FVec3(4, 5, 6), FVec3(4, 5, 6))); + ASSERT_TRUE(invalidLook.translation == FVec3(1, 2, 3)); + + FTransform parallelUp; + ASSERT_TRUE(parallelUp.TryLookTo(FVec3Consts::unitZ, FVec3Consts::unitZ)); + ASSERT_TRUE(CompareNumber(parallelUp.rotation.Model(), 1.0f)); } TEST(MathTest, TransformCastToTest) From b995670cc586ac0279b217d268af99d980971fae Mon Sep 17 00:00:00 2001 From: kindem Date: Sun, 19 Jul 2026 01:55:49 +0800 Subject: [PATCH 5/6] perf: optimize math library hot paths --- .../Common/Benchmark/Math/MathBenchmark.cpp | 185 ++++ .../Common/Include/Common/Math/Adapters.h | 901 ++++++++++++++++++ .../Source/Common/Include/Common/Math/Box.h | 106 +-- .../Source/Common/Include/Common/Math/Color.h | 148 +-- .../Common/Include/Common/Math/Common.h | 4 +- .../Source/Common/Include/Common/Math/Half.h | 47 +- .../Source/Common/Include/Common/Math/Math.h | 1 + .../Common/Include/Common/Math/Matrix.h | 333 ++++--- .../Common/Include/Common/Math/Projection.h | 233 +---- .../Common/Include/Common/Math/Quaternion.h | 245 ++--- .../Source/Common/Include/Common/Math/Rect.h | 106 +-- .../Source/Common/Include/Common/Math/Simd.h | 14 +- .../Common/Include/Common/Math/Sphere.h | 119 +-- .../Common/Include/Common/Math/Transform.h | 172 ++-- .../Common/Include/Common/Math/Vector.h | 126 +-- .../Source/Common/Include/Common/Math/View.h | 85 +- Engine/Source/Common/Src/Math/Color.cpp | 41 +- Engine/Source/Common/Test/MathTest.cpp | 133 ++- Engine/Source/RHI-DirectX12/Src/Buffer.cpp | 3 +- Engine/Source/RHI-DirectX12/Src/Pipeline.cpp | 1 + .../RHI-DirectX12/Src/PipelineLayout.cpp | 2 + Engine/Source/RHI-DirectX12/Src/Texture.cpp | 1 + Engine/Source/Render/Include/Render/Shader.h | 1 + Engine/Source/Render/Src/RenderCache.cpp | 1 + Engine/Source/Render/Src/Shader.cpp | 3 + Engine/Source/Render/Src/ShaderCompiler.cpp | 2 + .../Runtime/Include/Runtime/Asset/Material.h | 3 +- .../Runtime/Include/Runtime/Asset/Mesh.h | 2 +- .../Runtime/Include/Runtime/Component/Light.h | 2 +- .../Include/Runtime/Component/Transform.h | 2 +- Sample/Base/Application.cpp | 1 + 31 files changed, 1726 insertions(+), 1297 deletions(-) create mode 100644 Engine/Source/Common/Include/Common/Math/Adapters.h diff --git a/Engine/Source/Common/Benchmark/Math/MathBenchmark.cpp b/Engine/Source/Common/Benchmark/Math/MathBenchmark.cpp index 0e0fabb5..1d9ab28a 100644 --- a/Engine/Source/Common/Benchmark/Math/MathBenchmark.cpp +++ b/Engine/Source/Common/Benchmark/Math/MathBenchmark.cpp @@ -10,6 +10,9 @@ #include #include #include +#include +#include +#include using namespace Common; @@ -96,6 +99,20 @@ namespace { } return result; } + + std::vector MakeRandomTransforms(const size_t count) + { + const auto raw = MakeRandomFloats(count * 9); + std::vector result(count); + for (size_t i = 0; i < count; i++) { + const float* p = &raw[i * 9]; + result[i] = FTransform( + FVec3(p[0], p[1], p[2]), + FQuat::FromEulerZYX(p[3] * 90.0f, p[4] * 90.0f, p[5] * 90.0f), + FVec3(p[6], p[7], p[8])); + } + return result; + } } template @@ -191,6 +208,23 @@ static void Mat4InverseBatch(benchmark::State& state) BENCHMARK(Mat4InverseBatch); BENCHMARK(Mat4InverseBatch); +template +static void Mat4InverseUncheckedBatch(benchmark::State& state) +{ + const auto a = MakeRandomMats(batchSize); + std::vector> c(batchSize); + for (auto _ : state) { + for (int i = 0; i < batchSize; i++) { + c[i] = a[i].InverseUnchecked(); + } + benchmark::DoNotOptimize(c.data()); + benchmark::ClobberMemory(); + } + state.SetItemsProcessed(state.iterations() * batchSize); +} +BENCHMARK(Mat4InverseUncheckedBatch); +BENCHMARK(Mat4InverseUncheckedBatch); + template static void Mat3MulBatch(benchmark::State& state) { @@ -226,3 +260,154 @@ static void Mat3MulVecBatch(benchmark::State& state) } BENCHMARK(Mat3MulVecBatch); BENCHMARK(Mat3MulVecBatch); + +template +static void VecNormalizeBatch(benchmark::State& state) +{ + const auto input = MakeRandomVecs(batchSize); + std::vector> output(batchSize); + for (auto _ : state) { + for (int i = 0; i < batchSize; i++) { + output[i] = input[i].Normalized(); + } + benchmark::DoNotOptimize(output.data()); + benchmark::ClobberMemory(); + } + state.SetItemsProcessed(state.iterations() * batchSize); +} +BENCHMARK(VecNormalizeBatch); +BENCHMARK(VecNormalizeBatch); + +static void TransformMatrixComposedBatch(benchmark::State& state) +{ + const auto input = MakeRandomTransforms(batchSize); + std::vector output(batchSize); + for (auto _ : state) { + for (int i = 0; i < batchSize; i++) { + output[i] = input[i].GetTranslationMatrix() * input[i].GetRotationMatrix() * input[i].GetScaleMatrix(); + } + benchmark::DoNotOptimize(output.data()); + benchmark::ClobberMemory(); + } + state.SetItemsProcessed(state.iterations() * batchSize); +} +BENCHMARK(TransformMatrixComposedBatch); + +static void TransformMatrixDirectBatch(benchmark::State& state) +{ + const auto input = MakeRandomTransforms(batchSize); + std::vector output(batchSize); + for (auto _ : state) { + for (int i = 0; i < batchSize; i++) { + output[i] = input[i].GetTransformMatrix(); + } + benchmark::DoNotOptimize(output.data()); + benchmark::ClobberMemory(); + } + state.SetItemsProcessed(state.iterations() * batchSize); +} +BENCHMARK(TransformMatrixDirectBatch); + +static void TransformPositionMatrixBatch(benchmark::State& state) +{ + const auto transforms = MakeRandomTransforms(batchSize); + const auto positions = MakeRandomVec3s(batchSize); + std::vector output(batchSize); + for (auto _ : state) { + for (int i = 0; i < batchSize; i++) { + output[i] = (transforms[i].GetTransformMatrix() * FVec4(positions[i].x, positions[i].y, positions[i].z, 1)).SubVec<0, 1, 2>(); + } + benchmark::DoNotOptimize(output.data()); + benchmark::ClobberMemory(); + } + state.SetItemsProcessed(state.iterations() * batchSize); +} +BENCHMARK(TransformPositionMatrixBatch); + +static void TransformPositionDirectBatch(benchmark::State& state) +{ + const auto transforms = MakeRandomTransforms(batchSize); + const auto positions = MakeRandomVec3s(batchSize); + std::vector output(batchSize); + for (auto _ : state) { + for (int i = 0; i < batchSize; i++) { + output[i] = transforms[i].TransformPosition(positions[i]); + } + benchmark::DoNotOptimize(output.data()); + benchmark::ClobberMemory(); + } + state.SetItemsProcessed(state.iterations() * batchSize); +} +BENCHMARK(TransformPositionDirectBatch); + +static void ViewMatrixGenericBatch(benchmark::State& state) +{ + const auto transforms = MakeRandomTransforms(batchSize); + const FMat4x4 axisTransform( + 0, 1, 0, 0, + 0, 0, 1, 0, + 1, 0, 0, 0, + 0, 0, 0, 1); + std::vector output(batchSize); + for (auto _ : state) { + for (int i = 0; i < batchSize; i++) { + const FViewTransform view(transforms[i]); + output[i] = axisTransform * view.GetTransformMatrixNoScale().InverseUnchecked(); + } + benchmark::DoNotOptimize(output.data()); + benchmark::ClobberMemory(); + } + state.SetItemsProcessed(state.iterations() * batchSize); +} +BENCHMARK(ViewMatrixGenericBatch); + +static void ViewMatrixDirectBatch(benchmark::State& state) +{ + const auto transforms = MakeRandomTransforms(batchSize); + std::vector output(batchSize); + for (auto _ : state) { + for (int i = 0; i < batchSize; i++) { + output[i] = FViewTransform(transforms[i]).GetViewMatrix(); + } + benchmark::DoNotOptimize(output.data()); + benchmark::ClobberMemory(); + } + state.SetItemsProcessed(state.iterations() * batchSize); +} +BENCHMARK(ViewMatrixDirectBatch); + +static void SphereInsideBatch(benchmark::State& state) +{ + const auto centers = MakeRandomVec3s(batchSize); + const auto points = MakeRandomVec3s(batchSize); + std::vector spheres(batchSize); + for (int i = 0; i < batchSize; i++) { + spheres[i] = FSphere(centers[i], 1.0f); + } + for (auto _ : state) { + size_t insideCount = 0; + for (int i = 0; i < batchSize; i++) { + insideCount += spheres[i].Inside(points[i]); + } + benchmark::DoNotOptimize(insideCount); + } + state.SetItemsProcessed(state.iterations() * batchSize); +} +BENCHMARK(SphereInsideBatch); + +static void HalfConvertBatch(benchmark::State& state) +{ + const auto input = MakeRandomFloats(batchSize); + std::vector half(batchSize); + std::vector output(batchSize); + for (auto _ : state) { + for (int i = 0; i < batchSize; i++) { + half[i] = input[i]; + output[i] = half[i].AsFloat(); + } + benchmark::DoNotOptimize(output.data()); + benchmark::ClobberMemory(); + } + state.SetItemsProcessed(state.iterations() * batchSize); +} +BENCHMARK(HalfConvertBatch); diff --git a/Engine/Source/Common/Include/Common/Math/Adapters.h b/Engine/Source/Common/Include/Common/Math/Adapters.h new file mode 100644 index 00000000..416ae1da --- /dev/null +++ b/Engine/Source/Common/Include/Common/Math/Adapters.h @@ -0,0 +1,901 @@ +#pragma once + +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include + +namespace Common { + template + struct Serializer> { + static constexpr size_t typeId = HashUtils::StrCrc32("Common::Internal::HalfFloat"); + + static size_t Serialize(BinarySerializeStream& stream, const HalfFloat& value) + { + return Serializer::Serialize(stream, value.value); + } + + static size_t Deserialize(BinaryDeserializeStream& stream, HalfFloat& value) + { + return Serializer::Deserialize(stream, value.value); + } + }; + + template + struct StringConverter> { + static std::string ToString(const HalfFloat& inValue) + { + return StringConverter::ToString(inValue.AsFloat()); + } + }; + + template + struct JsonSerializer> { + static void JsonSerialize(rapidjson::Value& outJsonValue, rapidjson::Document::AllocatorType& inAllocator, const HalfFloat& inValue) + { + JsonSerializer::JsonSerialize(outJsonValue, inAllocator, inValue.AsFloat()); + } + + static void JsonDeserialize(const rapidjson::Value& inJsonValue, HalfFloat& outValue) + { + float floatValue = 0.0f; + JsonSerializer::JsonDeserialize(inJsonValue, floatValue); + outValue = floatValue; + } + }; + + template + struct Serializer> { + static constexpr size_t typeId = HashUtils::StrCrc32("Common::Vector") + Serializer::typeId + L; + + static size_t Serialize(BinarySerializeStream& stream, const Vec& value) + { + size_t serialized = 0; + for (auto i = 0; i < L; i++) { + serialized += Serializer::Serialize(stream, value.data[i]); + } + return serialized; + } + + static size_t Deserialize(BinaryDeserializeStream& stream, Vec& value) + { + size_t deserialized = 0; + for (auto i = 0; i < L; i++) { + deserialized += Serializer::Deserialize(stream, value.data[i]); + } + return deserialized; + } + }; + + template + struct StringConverter> { + static std::string ToString(const Vec& inValue) + { + std::stringstream stream; + stream << "("; + for (auto i = 0; i < L; i++) { + stream << StringConverter::ToString(inValue.data[i]); + if (i != L - 1) { + stream << ", "; + } + } + stream << ")"; + return stream.str(); + } + }; + + template + struct JsonSerializer> { + static void JsonSerialize(rapidjson::Value& outJsonValue, rapidjson::Document::AllocatorType& inAllocator, const Vec& inValue) + { + outJsonValue.SetArray(); + outJsonValue.Reserve(L, inAllocator); + for (auto i = 0; i < L; i++) { + rapidjson::Value elementJson; + JsonSerializer::JsonSerialize(elementJson, inAllocator, inValue[i]); + outJsonValue.PushBack(elementJson, inAllocator); + } + } + + static void JsonDeserialize(const rapidjson::Value& inJsonValue, Vec& outValue) + { + if (!inJsonValue.IsArray() || inJsonValue.Size() != L) { + return; + } + for (auto i = 0; i < L; i++) { + JsonSerializer::JsonDeserialize(inJsonValue[i], outValue[i]); + } + } + }; + + template + struct Serializer> { + static constexpr size_t typeId = HashUtils::StrCrc32("Common::Matrix") + Serializer::typeId + (R << 8) + C; + + static size_t Serialize(BinarySerializeStream& stream, const Mat& value) + { + size_t serialized = 0; + for (auto i = 0; i < R * C; i++) { + serialized += Serializer::Serialize(stream, value.data[i]); + } + return serialized; + } + + static size_t Deserialize(BinaryDeserializeStream& stream, Mat& value) + { + size_t deserialized = 0; + for (auto i = 0; i < R * C; i++) { + deserialized += Serializer::Deserialize(stream, value.data[i]); + } + return deserialized; + } + }; + + template + struct StringConverter> { + static std::string ToString(const Mat& inValue) + { + std::stringstream stream; + stream << "("; + for (auto i = 0; i < R; i++) { + for (auto j = 0; j < C; j++) { + stream << StringConverter::ToString(inValue.At(i, j)); + if (i * C + j != R * C - 1) { + stream << ", "; + } + } + } + stream << ")"; + return stream.str(); + } + }; + + template + struct JsonSerializer> { + static void JsonSerialize(rapidjson::Value& outJsonValue, rapidjson::Document::AllocatorType& inAllocator, const Mat& inValue) + { + outJsonValue.SetArray(); + outJsonValue.Reserve(R * C, inAllocator); + for (auto i = 0; i < R; i++) { + for (auto j = 0; j < C; j++) { + rapidjson::Value jsonElement; + JsonSerializer::JsonSerialize(jsonElement, inAllocator, inValue.At(i, j)); + outJsonValue.PushBack(jsonElement, inAllocator); + } + } + } + + static void JsonDeserialize(const rapidjson::Value& inJsonValue, Mat& outValue) + { + if (!inJsonValue.IsArray() || inJsonValue.Size() != R * C) { + return; + } + for (auto i = 0; i < inJsonValue.Size(); i++) { + T element; + JsonSerializer::JsonDeserialize(inJsonValue[i], element); + outValue.At(i / C, i % C) = std::move(element); + } + } + }; + + template + struct Serializer> { + static constexpr size_t typeId = HashUtils::StrCrc32("Common::Angle") + Serializer::typeId; + + static size_t Serialize(BinarySerializeStream& stream, const Angle& value) + { + return Serializer::Serialize(stream, value.value); + } + + static size_t Deserialize(BinaryDeserializeStream& stream, Angle& value) + { + return Serializer::Deserialize(stream, value.value); + } + }; + + template + struct Serializer> { + static constexpr size_t typeId = HashUtils::StrCrc32("Common::Radian") + Serializer::typeId; + + static size_t Serialize(BinarySerializeStream& stream, const Radian& value) + { + return Serializer::Serialize(stream, value.value); + } + + static size_t Deserialize(BinaryDeserializeStream& stream, Radian& value) + { + return Serializer::Deserialize(stream, value.value); + } + }; + + template + struct Serializer> { + static constexpr size_t typeId = HashUtils::StrCrc32("Common::Quaternion") + Serializer::typeId; + + static size_t Serialize(BinarySerializeStream& stream, const Quaternion& value) + { + size_t serialized = 0; + serialized += Serializer::Serialize(stream, value.w); + serialized += Serializer::Serialize(stream, value.x); + serialized += Serializer::Serialize(stream, value.y); + serialized += Serializer::Serialize(stream, value.z); + return serialized; + } + + static size_t Deserialize(BinaryDeserializeStream& stream, Quaternion& value) + { + size_t deserialized = 0; + deserialized += Serializer::Deserialize(stream, value.w); + deserialized += Serializer::Deserialize(stream, value.x); + deserialized += Serializer::Deserialize(stream, value.y); + deserialized += Serializer::Deserialize(stream, value.z); + return deserialized; + } + }; + + template + struct StringConverter> { + static std::string ToString(const Angle& inValue) + { + return std::format("a{}", StringConverter::ToString(inValue.value)); + } + }; + + template + struct StringConverter> { + static std::string ToString(const Radian& inValue) + { + return StringConverter::ToString(inValue.value); + } + }; + + template + struct StringConverter> { + static std::string ToString(const Quaternion& inValue) + { + return std::format( + "({}, {}, {}, {})", + StringConverter::ToString(inValue.w), + StringConverter::ToString(inValue.x), + StringConverter::ToString(inValue.y), + StringConverter::ToString(inValue.z)); + } + }; + + template + struct JsonSerializer> { + static void JsonSerialize(rapidjson::Value& outJsonValue, rapidjson::Document::AllocatorType& inAllocator, const Angle& inValue) + { + JsonSerializer::JsonSerialize(outJsonValue, inAllocator, inValue.value); + } + + static void JsonDeserialize(const rapidjson::Value& inJsonValue, Angle& outValue) + { + JsonSerializer::JsonDeserialize(inJsonValue, outValue.value); + } + }; + + template + struct JsonSerializer> { + static void JsonSerialize(rapidjson::Value& outJsonValue, rapidjson::Document::AllocatorType& inAllocator, const Radian& inValue) + { + JsonSerializer::JsonSerialize(outJsonValue, inAllocator, inValue.value); + } + + static void JsonDeserialize(const rapidjson::Value& inJsonValue, Radian& outValue) + { + JsonSerializer::JsonDeserialize(inJsonValue, outValue.value); + } + }; + + template + struct JsonSerializer> { + static void JsonSerialize(rapidjson::Value& outJsonValue, rapidjson::Document::AllocatorType& inAllocator, const Quaternion& inValue) + { + outJsonValue.SetArray(); + rapidjson::Value wJson; + rapidjson::Value xJson; + rapidjson::Value yJson; + rapidjson::Value zJson; + JsonSerializer::JsonSerialize(wJson, inAllocator, inValue.w); + JsonSerializer::JsonSerialize(xJson, inAllocator, inValue.x); + JsonSerializer::JsonSerialize(yJson, inAllocator, inValue.y); + JsonSerializer::JsonSerialize(zJson, inAllocator, inValue.z); + outJsonValue.PushBack(wJson, inAllocator); + outJsonValue.PushBack(xJson, inAllocator); + outJsonValue.PushBack(yJson, inAllocator); + outJsonValue.PushBack(zJson, inAllocator); + } + + static void JsonDeserialize(const rapidjson::Value& inJsonValue, Quaternion& outValue) + { + if (!inJsonValue.IsArray() || inJsonValue.Size() != 4) { + return; + } + JsonSerializer::JsonDeserialize(inJsonValue[0], outValue.w); + JsonSerializer::JsonDeserialize(inJsonValue[1], outValue.x); + JsonSerializer::JsonDeserialize(inJsonValue[2], outValue.y); + JsonSerializer::JsonDeserialize(inJsonValue[3], outValue.z); + } + }; + + template + struct Serializer> { + static constexpr size_t typeId = HashUtils::StrCrc32("Common::Rect") + Serializer::typeId; + + static size_t Serialize(BinarySerializeStream& stream, const Rect& value) + { + size_t serialized = 0; + serialized += Serializer>::Serialize(stream, value.min); + serialized += Serializer>::Serialize(stream, value.max); + return serialized; + } + + static size_t Deserialize(BinaryDeserializeStream& stream, Rect& value) + { + size_t deserialized = 0; + deserialized += Serializer>::Deserialize(stream, value.min); + deserialized += Serializer>::Deserialize(stream, value.max); + return deserialized; + } + }; + + template + struct StringConverter> { + static std::string ToString(const Rect& inValue) + { + return std::format( + "{}min={}, max={}{}", "{", StringConverter>::ToString(inValue.min), + StringConverter>::ToString(inValue.max), "}"); + } + }; + + template + struct JsonSerializer> { + static void JsonSerialize(rapidjson::Value& outJsonValue, rapidjson::Document::AllocatorType& inAllocator, const Rect& inValue) + { + rapidjson::Value minJson; + rapidjson::Value maxJson; + JsonSerializer>::JsonSerialize(minJson, inAllocator, inValue.min); + JsonSerializer>::JsonSerialize(maxJson, inAllocator, inValue.max); + outJsonValue.SetObject(); + outJsonValue.AddMember("min", minJson, inAllocator); + outJsonValue.AddMember("max", maxJson, inAllocator); + } + + static void JsonDeserialize(const rapidjson::Value& inJsonValue, Rect& outValue) + { + if (!inJsonValue.IsObject()) { + return; + } + if (inJsonValue.HasMember("min")) { + JsonSerializer>::JsonDeserialize(inJsonValue["min"], outValue.min); + } + if (inJsonValue.HasMember("max")) { + JsonSerializer>::JsonDeserialize(inJsonValue["max"], outValue.max); + } + } + }; + + template + struct Serializer> { + static constexpr size_t typeId = HashUtils::StrCrc32("Common::Box") + Serializer::typeId; + + static size_t Serialize(BinarySerializeStream& stream, const Box& value) + { + size_t serialized = 0; + serialized += Serializer>::Serialize(stream, value.min); + serialized += Serializer>::Serialize(stream, value.max); + return serialized; + } + + static size_t Deserialize(BinaryDeserializeStream& stream, Box& value) + { + size_t deserialized = 0; + deserialized += Serializer>::Deserialize(stream, value.min); + deserialized += Serializer>::Deserialize(stream, value.max); + return deserialized; + } + }; + + template + struct StringConverter> { + static std::string ToString(const Box& inValue) + { + return std::format( + "{}min={}, max={}{}", "{", StringConverter>::ToString(inValue.min), + StringConverter>::ToString(inValue.max), "}"); + } + }; + + template + struct JsonSerializer> { + static void JsonSerialize(rapidjson::Value& outJsonValue, rapidjson::Document::AllocatorType& inAllocator, const Box& inValue) + { + rapidjson::Value minJson; + rapidjson::Value maxJson; + JsonSerializer>::JsonSerialize(minJson, inAllocator, inValue.min); + JsonSerializer>::JsonSerialize(maxJson, inAllocator, inValue.max); + outJsonValue.SetObject(); + outJsonValue.AddMember("min", minJson, inAllocator); + outJsonValue.AddMember("max", maxJson, inAllocator); + } + + static void JsonDeserialize(const rapidjson::Value& inJsonValue, Box& outValue) + { + if (!inJsonValue.IsObject()) { + return; + } + if (inJsonValue.HasMember("min")) { + JsonSerializer>::JsonDeserialize(inJsonValue["min"], outValue.min); + } + if (inJsonValue.HasMember("max")) { + JsonSerializer>::JsonDeserialize(inJsonValue["max"], outValue.max); + } + } + }; + + template + struct Serializer> { + static constexpr size_t typeId = HashUtils::StrCrc32("Common::Sphere") + Serializer::typeId; + + static size_t Serialize(BinarySerializeStream& stream, const Sphere& value) + { + size_t serialized = 0; + serialized += Serializer>::Serialize(stream, value.center); + serialized += Serializer::Serialize(stream, value.radius); + return serialized; + } + + static size_t Deserialize(BinaryDeserializeStream& stream, Sphere& value) + { + size_t deserialized = 0; + deserialized += Serializer>::Deserialize(stream, value.center); + deserialized += Serializer::Deserialize(stream, value.radius); + return deserialized; + } + }; + + template + struct StringConverter> { + static std::string ToString(const Sphere& inValue) + { + return std::format( + "{}center={}, radius={}{}", "{", StringConverter>::ToString(inValue.center), + StringConverter::ToString(inValue.radius), "}"); + } + }; + + template + struct JsonSerializer> { + static void JsonSerialize(rapidjson::Value& outJsonValue, rapidjson::Document::AllocatorType& inAllocator, const Sphere& inValue) + { + rapidjson::Value centerJson; + rapidjson::Value radiusJson; + JsonSerializer>::JsonSerialize(centerJson, inAllocator, inValue.center); + JsonSerializer::JsonSerialize(radiusJson, inAllocator, inValue.radius); + outJsonValue.SetObject(); + outJsonValue.AddMember("center", centerJson, inAllocator); + outJsonValue.AddMember("radius", radiusJson, inAllocator); + } + + static void JsonDeserialize(const rapidjson::Value& inJsonValue, Sphere& outValue) + { + if (!inJsonValue.IsObject()) { + return; + } + if (inJsonValue.HasMember("center")) { + JsonSerializer>::JsonDeserialize(inJsonValue["center"], outValue.center); + } + if (inJsonValue.HasMember("radius")) { + JsonSerializer::JsonDeserialize(inJsonValue["radius"], outValue.radius); + } + } + }; + + template <> + struct Serializer { + static constexpr size_t typeId = HashUtils::StrCrc32("Common::Color"); + + static size_t Serialize(BinarySerializeStream& stream, const Color& value) + { + size_t serialized = 0; + serialized += Serializer::Serialize(stream, value.r); + serialized += Serializer::Serialize(stream, value.g); + serialized += Serializer::Serialize(stream, value.b); + serialized += Serializer::Serialize(stream, value.a); + return serialized; + } + + static size_t Deserialize(BinaryDeserializeStream& stream, Color& value) + { + size_t deserialized = 0; + deserialized += Serializer::Deserialize(stream, value.r); + deserialized += Serializer::Deserialize(stream, value.g); + deserialized += Serializer::Deserialize(stream, value.b); + deserialized += Serializer::Deserialize(stream, value.a); + return deserialized; + } + }; + + template <> + struct Serializer { + static constexpr size_t typeId = HashUtils::StrCrc32("Common::LinearColor"); + + static size_t Serialize(BinarySerializeStream& stream, const LinearColor& value) + { + size_t serialized = 0; + serialized += Serializer::Serialize(stream, value.r); + serialized += Serializer::Serialize(stream, value.g); + serialized += Serializer::Serialize(stream, value.b); + serialized += Serializer::Serialize(stream, value.a); + return serialized; + } + + static size_t Deserialize(BinaryDeserializeStream& stream, LinearColor& value) + { + size_t deserialized = 0; + deserialized += Serializer::Deserialize(stream, value.r); + deserialized += Serializer::Deserialize(stream, value.g); + deserialized += Serializer::Deserialize(stream, value.b); + deserialized += Serializer::Deserialize(stream, value.a); + return deserialized; + } + }; + + template <> + struct StringConverter { + static std::string ToString(const Color& inValue) + { + return std::format( + "{}r={}, g={}, b={}, a={}{}", "{", StringConverter::ToString(inValue.r), + StringConverter::ToString(inValue.g), StringConverter::ToString(inValue.b), + StringConverter::ToString(inValue.a), "}"); + } + }; + + template <> + struct StringConverter { + static std::string ToString(const LinearColor& inValue) + { + return std::format( + "{}r={}, g={}, b={}, a={}{}", "{", StringConverter::ToString(inValue.r), + StringConverter::ToString(inValue.g), StringConverter::ToString(inValue.b), + StringConverter::ToString(inValue.a), "}"); + } + }; + + template <> + struct JsonSerializer { + static void JsonSerialize(rapidjson::Value& outJsonValue, rapidjson::Document::AllocatorType& inAllocator, const Color& inValue) + { + outJsonValue.SetObject(); + outJsonValue.AddMember("r", inValue.r, inAllocator); + outJsonValue.AddMember("g", inValue.g, inAllocator); + outJsonValue.AddMember("b", inValue.b, inAllocator); + outJsonValue.AddMember("a", inValue.a, inAllocator); + } + + static void JsonDeserialize(const rapidjson::Value& inJsonValue, Color& outValue) + { + if (!inJsonValue.IsObject()) { + return; + } + if (inJsonValue.HasMember("r") && inJsonValue["r"].IsUint()) { + outValue.r = static_cast(inJsonValue["r"].GetUint()); + } + if (inJsonValue.HasMember("g") && inJsonValue["g"].IsUint()) { + outValue.g = static_cast(inJsonValue["g"].GetUint()); + } + if (inJsonValue.HasMember("b") && inJsonValue["b"].IsUint()) { + outValue.b = static_cast(inJsonValue["b"].GetUint()); + } + if (inJsonValue.HasMember("a") && inJsonValue["a"].IsUint()) { + outValue.a = static_cast(inJsonValue["a"].GetUint()); + } + } + }; + + template <> + struct JsonSerializer { + static void JsonSerialize(rapidjson::Value& outJsonValue, rapidjson::Document::AllocatorType& inAllocator, const LinearColor& inValue) + { + outJsonValue.SetObject(); + outJsonValue.AddMember("r", inValue.r, inAllocator); + outJsonValue.AddMember("g", inValue.g, inAllocator); + outJsonValue.AddMember("b", inValue.b, inAllocator); + outJsonValue.AddMember("a", inValue.a, inAllocator); + } + + static void JsonDeserialize(const rapidjson::Value& inJsonValue, LinearColor& outValue) + { + if (!inJsonValue.IsObject()) { + return; + } + if (inJsonValue.HasMember("r") && inJsonValue["r"].IsFloat()) { + outValue.r = inJsonValue["r"].GetFloat(); + } + if (inJsonValue.HasMember("g") && inJsonValue["g"].IsFloat()) { + outValue.g = inJsonValue["g"].GetFloat(); + } + if (inJsonValue.HasMember("b") && inJsonValue["b"].IsFloat()) { + outValue.b = inJsonValue["b"].GetFloat(); + } + if (inJsonValue.HasMember("a") && inJsonValue["a"].IsFloat()) { + outValue.a = inJsonValue["a"].GetFloat(); + } + } + }; + + template + struct Serializer> { + static constexpr size_t typeId = HashUtils::StrCrc32("Common::Transform") + Serializer::typeId; + + static size_t Serialize(BinarySerializeStream& stream, const Transform& value) + { + size_t serialized = 0; + serialized += Serializer>::Serialize(stream, value.scale); + serialized += Serializer>::Serialize(stream, value.rotation); + serialized += Serializer>::Serialize(stream, value.translation); + return serialized; + } + + static size_t Deserialize(BinaryDeserializeStream& stream, Transform& value) + { + size_t deserialized = 0; + deserialized += Serializer>::Deserialize(stream, value.scale); + deserialized += Serializer>::Deserialize(stream, value.rotation); + deserialized += Serializer>::Deserialize(stream, value.translation); + return deserialized; + } + }; + + template + struct StringConverter> { + static std::string ToString(const Transform& inValue) + { + return std::format( + "{}scale={}, rotation={}, translation={}{}", "{", + StringConverter>::ToString(inValue.scale), + StringConverter>::ToString(inValue.rotation), + StringConverter>::ToString(inValue.translation), "}"); + } + }; + + template + struct JsonSerializer> { + static void JsonSerialize(rapidjson::Value& outJsonValue, rapidjson::Document::AllocatorType& inAllocator, const Transform& inValue) + { + rapidjson::Value scaleJson; + rapidjson::Value rotationJson; + rapidjson::Value translationJson; + JsonSerializer>::JsonSerialize(scaleJson, inAllocator, inValue.scale); + JsonSerializer>::JsonSerialize(rotationJson, inAllocator, inValue.rotation); + JsonSerializer>::JsonSerialize(translationJson, inAllocator, inValue.translation); + outJsonValue.SetObject(); + outJsonValue.AddMember("scale", scaleJson, inAllocator); + outJsonValue.AddMember("rotation", rotationJson, inAllocator); + outJsonValue.AddMember("translation", translationJson, inAllocator); + } + + static void JsonDeserialize(const rapidjson::Value& inJsonValue, Transform& outValue) + { + if (!inJsonValue.IsObject()) { + return; + } + if (inJsonValue.HasMember("scale")) { + JsonSerializer>::JsonDeserialize(inJsonValue["scale"], outValue.scale); + } + if (inJsonValue.HasMember("rotation")) { + JsonSerializer>::JsonDeserialize(inJsonValue["rotation"], outValue.rotation); + } + if (inJsonValue.HasMember("translation")) { + JsonSerializer>::JsonDeserialize(inJsonValue["translation"], outValue.translation); + } + } + }; + + template + struct Serializer> { + static constexpr size_t typeId = HashUtils::StrCrc32("Common::ViewTransform") + Serializer::typeId; + + static size_t Serialize(BinarySerializeStream& stream, const ViewTransform& value) + { + return Serializer>::Serialize(stream, value); + } + + static size_t Deserialize(BinaryDeserializeStream& stream, ViewTransform& value) + { + return Serializer>::Deserialize(stream, value); + } + }; + + template + struct StringConverter> { + static std::string ToString(const ViewTransform& inValue) + { + return StringConverter>::ToString(inValue); + } + }; + + template + struct JsonSerializer> { + static void JsonSerialize(rapidjson::Value& outJsonValue, rapidjson::Document::AllocatorType& inAllocator, const ViewTransform& inValue) + { + JsonSerializer>::JsonSerialize(outJsonValue, inAllocator, inValue); + } + + static void JsonDeserialize(const rapidjson::Value& inJsonValue, ViewTransform& outValue) + { + JsonSerializer>::JsonDeserialize(inJsonValue, outValue); + } + }; + + template + struct Serializer> { + static constexpr size_t typeId = HashUtils::StrCrc32("Common::ReversedZOrthogonalProjection") + Serializer::typeId; + + static size_t Serialize(BinarySerializeStream& stream, const ReversedZOrthogonalProjection& value) + { + size_t serialized = 0; + serialized += Serializer::Serialize(stream, value.width); + serialized += Serializer::Serialize(stream, value.height); + serialized += Serializer::Serialize(stream, value.nearPlane); + serialized += Serializer>::Serialize(stream, value.farPlane); + return serialized; + } + + static size_t Deserialize(BinaryDeserializeStream& stream, ReversedZOrthogonalProjection& value) + { + size_t deserialized = 0; + deserialized += Serializer::Deserialize(stream, value.width); + deserialized += Serializer::Deserialize(stream, value.height); + deserialized += Serializer::Deserialize(stream, value.nearPlane); + deserialized += Serializer>::Deserialize(stream, value.farPlane); + return deserialized; + } + }; + + template + struct Serializer> { + static constexpr size_t typeId = HashUtils::StrCrc32("Common::ReversedZPerspectiveProjection") + Serializer::typeId; + + static size_t Serialize(BinarySerializeStream& stream, const ReversedZPerspectiveProjection& value) + { + size_t serialized = 0; + serialized += Serializer::Serialize(stream, value.fov); + serialized += Serializer::Serialize(stream, value.width); + serialized += Serializer::Serialize(stream, value.height); + serialized += Serializer::Serialize(stream, value.nearPlane); + serialized += Serializer>::Serialize(stream, value.farPlane); + return serialized; + } + + static size_t Deserialize(BinaryDeserializeStream& stream, ReversedZPerspectiveProjection& value) + { + size_t deserialized = 0; + deserialized += Serializer::Deserialize(stream, value.fov); + deserialized += Serializer::Deserialize(stream, value.width); + deserialized += Serializer::Deserialize(stream, value.height); + deserialized += Serializer::Deserialize(stream, value.nearPlane); + deserialized += Serializer>::Deserialize(stream, value.farPlane); + return deserialized; + } + }; + + template + struct StringConverter> { + static std::string ToString(const ReversedZOrthogonalProjection& inValue) + { + return std::format( + "{}width={}, height={}, near={}, far={}{}", "{", StringConverter::ToString(inValue.width), + StringConverter::ToString(inValue.height), StringConverter::ToString(inValue.nearPlane), + StringConverter>::ToString(inValue.farPlane), "}"); + } + }; + + template + struct StringConverter> { + static std::string ToString(const ReversedZPerspectiveProjection& inValue) + { + return std::format( + "{}fov={}, width={}, height={}, near={}, far={}{}", "{", StringConverter::ToString(inValue.fov), + StringConverter::ToString(inValue.width), StringConverter::ToString(inValue.height), + StringConverter::ToString(inValue.nearPlane), + StringConverter>::ToString(inValue.farPlane), "}"); + } + }; + + template + struct JsonSerializer> { + static void JsonSerialize(rapidjson::Value& outJsonValue, rapidjson::Document::AllocatorType& inAllocator, const ReversedZOrthogonalProjection& inValue) + { + rapidjson::Value widthJson; + rapidjson::Value heightJson; + rapidjson::Value nearJson; + rapidjson::Value farJson; + JsonSerializer::JsonSerialize(widthJson, inAllocator, inValue.width); + JsonSerializer::JsonSerialize(heightJson, inAllocator, inValue.height); + JsonSerializer::JsonSerialize(nearJson, inAllocator, inValue.nearPlane); + JsonSerializer>::JsonSerialize(farJson, inAllocator, inValue.farPlane); + outJsonValue.SetObject(); + outJsonValue.AddMember("width", widthJson, inAllocator); + outJsonValue.AddMember("height", heightJson, inAllocator); + outJsonValue.AddMember("near", nearJson, inAllocator); + outJsonValue.AddMember("far", farJson, inAllocator); + } + + static void JsonDeserialize(const rapidjson::Value& inJsonValue, ReversedZOrthogonalProjection& outValue) + { + if (!inJsonValue.IsObject()) { + return; + } + if (inJsonValue.HasMember("width")) { + JsonSerializer::JsonDeserialize(inJsonValue["width"], outValue.width); + } + if (inJsonValue.HasMember("height")) { + JsonSerializer::JsonDeserialize(inJsonValue["height"], outValue.height); + } + if (inJsonValue.HasMember("near")) { + JsonSerializer::JsonDeserialize(inJsonValue["near"], outValue.nearPlane); + } + if (inJsonValue.HasMember("far")) { + JsonSerializer>::JsonDeserialize(inJsonValue["far"], outValue.farPlane); + } + } + }; + + template + struct JsonSerializer> { + static void JsonSerialize(rapidjson::Value& outJsonValue, rapidjson::Document::AllocatorType& inAllocator, const ReversedZPerspectiveProjection& inValue) + { + rapidjson::Value fovJson; + rapidjson::Value widthJson; + rapidjson::Value heightJson; + rapidjson::Value nearJson; + rapidjson::Value farJson; + JsonSerializer::JsonSerialize(fovJson, inAllocator, inValue.fov); + JsonSerializer::JsonSerialize(widthJson, inAllocator, inValue.width); + JsonSerializer::JsonSerialize(heightJson, inAllocator, inValue.height); + JsonSerializer::JsonSerialize(nearJson, inAllocator, inValue.nearPlane); + JsonSerializer>::JsonSerialize(farJson, inAllocator, inValue.farPlane); + outJsonValue.SetObject(); + outJsonValue.AddMember("fov", fovJson, inAllocator); + outJsonValue.AddMember("width", widthJson, inAllocator); + outJsonValue.AddMember("height", heightJson, inAllocator); + outJsonValue.AddMember("near", nearJson, inAllocator); + outJsonValue.AddMember("far", farJson, inAllocator); + } + + static void JsonDeserialize(const rapidjson::Value& inJsonValue, ReversedZPerspectiveProjection& outValue) + { + if (!inJsonValue.IsObject()) { + return; + } + if (inJsonValue.HasMember("fov")) { + JsonSerializer::JsonDeserialize(inJsonValue["fov"], outValue.fov); + } + if (inJsonValue.HasMember("width")) { + JsonSerializer::JsonDeserialize(inJsonValue["width"], outValue.width); + } + if (inJsonValue.HasMember("height")) { + JsonSerializer::JsonDeserialize(inJsonValue["height"], outValue.height); + } + if (inJsonValue.HasMember("near")) { + JsonSerializer::JsonDeserialize(inJsonValue["near"], outValue.nearPlane); + } + if (inJsonValue.HasMember("far")) { + JsonSerializer>::JsonDeserialize(inJsonValue["far"], outValue.farPlane); + } + } + }; +} diff --git a/Engine/Source/Common/Include/Common/Math/Box.h b/Engine/Source/Common/Include/Common/Math/Box.h index fc680a26..4d21e6d4 100644 --- a/Engine/Source/Common/Include/Common/Math/Box.h +++ b/Engine/Source/Common/Include/Common/Math/Box.h @@ -5,8 +5,6 @@ #pragma once #include -#include -#include namespace Common { template @@ -35,9 +33,9 @@ namespace Common { T CenterX() const; T CenterY() const; T CenterZ() const; - T Distance(const Box& inOther) const; + T Distance(const Box& inOther) const requires FloatingPoint; // half of diagonal - T Size() const; + T Size() const requires FloatingPoint; bool Inside(const Vec& inPoint) const; bool Intersect(const Box& inOther) const; bool operator==(const Box& inRhs) const; @@ -45,6 +43,8 @@ namespace Common { template Box CastTo() const; }; + template requires FloatingPoint bool AlmostEqual(const Box& lhs, const Box& rhs, T absoluteTolerance = DefaultTolerance(), T relativeTolerance = DefaultTolerance()); + using IBox = Box; using UBox = Box; using HBox = Box; @@ -52,73 +52,6 @@ namespace Common { using DBox = Box; } -namespace Common { // NOLINT - template - struct Serializer> { - static constexpr size_t typeId - = HashUtils::StrCrc32("Common::Box") - + Serializer::typeId; - - static size_t Serialize(BinarySerializeStream& stream, const Box& value) - { - size_t serialized = 0; - serialized += Serializer>::Serialize(stream, value.min); - serialized += Serializer>::Serialize(stream, value.max); - return serialized; - } - - static size_t Deserialize(BinaryDeserializeStream& stream, Box& value) - { - size_t deserialized = 0; - deserialized += Serializer>::Deserialize(stream, value.min); - deserialized += Serializer>::Deserialize(stream, value.max); - return deserialized; - } - }; - - template - struct StringConverter> { - static std::string ToString(const Box& inValue) - { - return std::format( - "{}min={}, max={}{}", - "{", - StringConverter>::ToString(inValue.min), - StringConverter>::ToString(inValue.max), - "}"); - } - }; - - template - struct JsonSerializer> { - static void JsonSerialize(rapidjson::Value& outJsonValue, rapidjson::Document::AllocatorType& inAllocator, const Box& inValue) - { - rapidjson::Value minJson; - JsonSerializer>::JsonSerialize(minJson, inAllocator, inValue.min); - - rapidjson::Value maxJson; - JsonSerializer>::JsonSerialize(maxJson, inAllocator, inValue.max); - - outJsonValue.SetObject(); - outJsonValue.AddMember("min", minJson, inAllocator); - outJsonValue.AddMember("max", maxJson, inAllocator); - } - - static void JsonDeserialize(const rapidjson::Value& inJsonValue, Box& outValue) - { - if (!inJsonValue.IsObject()) { - return; - } - if (inJsonValue.HasMember("min")) { - JsonSerializer>::JsonDeserialize(inJsonValue["min"], outValue.min); - } - if (inJsonValue.HasMember("max")) { - JsonSerializer>::JsonDeserialize(inJsonValue["max"], outValue.max); - } - } - }; -} - namespace Common { template Box Box::FromMinExtent(T inMinX, T inMinY, T inMinZ, T inExtentX, T inExtentY, T inExtentZ) @@ -154,26 +87,13 @@ namespace Common { } template - Box::Box(const Box& inOther) - { - this->min = inOther.min; - this->max = inOther.max; - } + Box::Box(const Box& inOther) = default; template - Box::Box(Box&& inOther) noexcept - { - this->min = std::move(inOther.min); - this->max = std::move(inOther.max); - } + Box::Box(Box&& inOther) noexcept = default; template - Box& Box::operator=(const Box& inOther) - { - this->min = inOther.min; - this->max = inOther.max; - return *this; - } + Box& Box::operator=(const Box& inOther) = default; template Vec Box::Extent() const @@ -224,14 +144,14 @@ namespace Common { } template - T Box::Distance(const Box& inOther) const + T Box::Distance(const Box& inOther) const requires FloatingPoint { Vec direction = Center() - inOther.Center(); return direction.Model(); } template - T Box::Size() const + T Box::Size() const requires FloatingPoint { Vec diagonal = this->max - this->min; return diagonal.Model() / T(2); @@ -272,4 +192,12 @@ namespace Common { this->max.template CastTo() ); } + + template + requires FloatingPoint + bool AlmostEqual(const Box& lhs, const Box& rhs, T absoluteTolerance, T relativeTolerance) + { + return AlmostEqual(lhs.min, rhs.min, absoluteTolerance, relativeTolerance) + && AlmostEqual(lhs.max, rhs.max, absoluteTolerance, relativeTolerance); + } } diff --git a/Engine/Source/Common/Include/Common/Math/Color.h b/Engine/Source/Common/Include/Common/Math/Color.h index ed5f943d..580f49b2 100644 --- a/Engine/Source/Common/Include/Common/Math/Color.h +++ b/Engine/Source/Common/Include/Common/Math/Color.h @@ -5,9 +5,9 @@ #pragma once #include +#include -#include -#include +#include namespace Common { struct Color; @@ -66,148 +66,6 @@ namespace Common { static const LinearColor blue; static const LinearColor green; }; -} - -namespace Common { - template <> - struct Serializer { - static constexpr size_t typeId = HashUtils::StrCrc32("Common::Color"); - - static size_t Serialize(BinarySerializeStream& stream, const Color& value) - { - size_t serialized = 0; - serialized += Serializer::Serialize(stream, value.r); - serialized += Serializer::Serialize(stream, value.g); - serialized += Serializer::Serialize(stream, value.b); - serialized += Serializer::Serialize(stream, value.a); - return serialized; - } - - static size_t Deserialize(BinaryDeserializeStream& stream, Color& value) - { - size_t deserialized = 0; - deserialized += Serializer::Deserialize(stream, value.r); - deserialized += Serializer::Deserialize(stream, value.g); - deserialized += Serializer::Deserialize(stream, value.b); - deserialized += Serializer::Deserialize(stream, value.a); - return deserialized; - } - }; - - template <> - struct Serializer { - static constexpr size_t typeId = HashUtils::StrCrc32("Common::LinearColor"); - - static size_t Serialize(BinarySerializeStream& stream, const LinearColor& value) - { - size_t serialized = 0; - serialized += Serializer::Serialize(stream, value.r); - serialized += Serializer::Serialize(stream, value.g); - serialized += Serializer::Serialize(stream, value.b); - serialized += Serializer::Serialize(stream, value.a); - return serialized; - } - - static size_t Deserialize(BinaryDeserializeStream& stream, LinearColor& value) - { - size_t deserialized = 0; - deserialized += Serializer::Deserialize(stream, value.r); - deserialized += Serializer::Deserialize(stream, value.g); - deserialized += Serializer::Deserialize(stream, value.b); - deserialized += Serializer::Deserialize(stream, value.a); - return deserialized; - } - }; - template <> - struct StringConverter { - static std::string ToString(const Color& inValue) - { - return std::format( - "{}r={}, g={}, b={}, a={}{}", - "{", - StringConverter::ToString(inValue.r), - StringConverter::ToString(inValue.g), - StringConverter::ToString(inValue.b), - StringConverter::ToString(inValue.a), - "}"); - } - }; - - template <> - struct StringConverter { - static std::string ToString(const LinearColor& inValue) - { - return std::format( - "{}r={}, g={}, b={}, a={}{}", - "{", - StringConverter::ToString(inValue.r), - StringConverter::ToString(inValue.g), - StringConverter::ToString(inValue.b), - StringConverter::ToString(inValue.a), - "}"); - } - }; - - template <> - struct JsonSerializer { - static void JsonSerialize(rapidjson::Value& outJsonValue, rapidjson::Document::AllocatorType& inAllocator, const Color& inValue) - { - outJsonValue.SetObject(); - outJsonValue.AddMember("r", inValue.r, inAllocator); - outJsonValue.AddMember("g", inValue.g, inAllocator); - outJsonValue.AddMember("b", inValue.b, inAllocator); - outJsonValue.AddMember("a", inValue.a, inAllocator); - } - - static void JsonDeserialize(const rapidjson::Value& inJsonValue, Color& outValue) - { - if (!inJsonValue.IsObject()) { - return; - } - if (inJsonValue.HasMember("r") && inJsonValue["r"].IsUint()) { - outValue.r = static_cast(inJsonValue["r"].GetUint()); - } - if (inJsonValue.HasMember("g") && inJsonValue["g"].IsUint()) { - outValue.g = static_cast(inJsonValue["g"].GetUint()); - } - if (inJsonValue.HasMember("b") && inJsonValue["b"].IsUint()) { - outValue.b = static_cast(inJsonValue["b"].GetUint()); - } - if (inJsonValue.HasMember("a") && inJsonValue["a"].IsUint()) { - outValue.a = static_cast(inJsonValue["a"].GetUint()); - } - } - }; - - template <> - struct JsonSerializer { - static void JsonSerialize(rapidjson::Value& outJsonValue, rapidjson::Document::AllocatorType& inAllocator, const LinearColor& inValue) - { - outJsonValue.SetObject(); - outJsonValue.AddMember("r", inValue.r, inAllocator); - outJsonValue.AddMember("g", inValue.g, inAllocator); - outJsonValue.AddMember("b", inValue.b, inAllocator); - outJsonValue.AddMember("a", inValue.a, inAllocator); - } - - static void JsonDeserialize(const rapidjson::Value& inJsonValue, LinearColor& outValue) - { - if (!inJsonValue.IsObject()) { - return; - } - if (inJsonValue.HasMember("r") && inJsonValue["r"].IsFloat()) { - outValue.r = inJsonValue["r"].GetFloat(); - } - if (inJsonValue.HasMember("g") && inJsonValue["g"].IsFloat()) { - outValue.g = inJsonValue["g"].GetFloat(); - } - if (inJsonValue.HasMember("b") && inJsonValue["b"].IsFloat()) { - outValue.b = inJsonValue["b"].GetFloat(); - } - if (inJsonValue.HasMember("a") && inJsonValue["a"].IsFloat()) { - outValue.a = inJsonValue["a"].GetFloat(); - } - } - }; + bool AlmostEqual(const LinearColor& lhs, const LinearColor& rhs, float absoluteTolerance = DefaultTolerance(), float relativeTolerance = DefaultTolerance()); } diff --git a/Engine/Source/Common/Include/Common/Math/Common.h b/Engine/Source/Common/Include/Common/Math/Common.h index ec014019..9d622886 100644 --- a/Engine/Source/Common/Include/Common/Math/Common.h +++ b/Engine/Source/Common/Include/Common/Math/Common.h @@ -19,7 +19,7 @@ namespace Common { namespace Common { template T DefaultTolerance(); template T Pi(); - template bool AlmostEqual(T lhs, T rhs, T absoluteTolerance, T relativeTolerance); + template requires std::is_floating_point_v bool AlmostEqual(T lhs, T rhs, T absoluteTolerance = DefaultTolerance(), T relativeTolerance = DefaultTolerance()); template bool CompareNumber(T lhs, T rhs); template T DivideAndRoundUp(T lhs, T rhs); } @@ -50,9 +50,9 @@ namespace Common { } template + requires std::is_floating_point_v bool AlmostEqual(T lhs, T rhs, T absoluteTolerance, T relativeTolerance) { - static_assert(std::is_floating_point_v); if (lhs == rhs) { return true; } diff --git a/Engine/Source/Common/Include/Common/Math/Half.h b/Engine/Source/Common/Include/Common/Math/Half.h index a814e66a..a7fd4dc8 100644 --- a/Engine/Source/Common/Include/Common/Math/Half.h +++ b/Engine/Source/Common/Include/Common/Math/Half.h @@ -8,8 +8,6 @@ #include #include -#include -#include namespace Common { template concept ValidEndian = E == std::endian::little || E == std::endian::big; @@ -66,46 +64,9 @@ namespace Common { template concept HalfFloatingPoint = std::is_same_v; template concept FloatingPoint = std::is_floating_point_v || HalfFloatingPoint; -} -namespace Common { template - struct Serializer> { - static constexpr size_t typeId = HashUtils::StrCrc32("Common::Internal::HalfFloat"); - - static size_t Serialize(BinarySerializeStream& stream, const HalfFloat& value) - { - return Serializer::Serialize(stream, value.value); - } - - static size_t Deserialize(BinaryDeserializeStream& stream, HalfFloat& value) - { - return Serializer::Deserialize(stream, value.value); - } - }; - - template - struct StringConverter> { - static std::string ToString(const HalfFloat& inValue) - { - return StringConverter::ToString(inValue.AsFloat()); - } - }; - - template - struct JsonSerializer> { - static void JsonSerialize(rapidjson::Value& outJsonValue, rapidjson::Document::AllocatorType& inAllocator, const HalfFloat& inValue) - { - JsonSerializer::JsonSerialize(outJsonValue, inAllocator, inValue.AsFloat()); - } - - static void JsonDeserialize(const rapidjson::Value& inJsonValue, HalfFloat& outValue) - { - float floatValue = 0.0f; - JsonSerializer::JsonDeserialize(inJsonValue, floatValue); - outValue = floatValue; - } - }; + bool AlmostEqual(HalfFloat lhs, HalfFloat rhs, HalfFloat absoluteTolerance = DefaultTolerance>(), HalfFloat relativeTolerance = DefaultTolerance>()); } namespace Common::Internal { @@ -186,6 +147,12 @@ namespace Common::Internal { } namespace Common { + template + bool AlmostEqual(HalfFloat lhs, HalfFloat rhs, HalfFloat absoluteTolerance, HalfFloat relativeTolerance) + { + return AlmostEqual(lhs.AsFloat(), rhs.AsFloat(), absoluteTolerance.AsFloat(), relativeTolerance.AsFloat()); + } + template requires ValidEndian HalfFloatBase::HalfFloatBase(uint16_t inValue) diff --git a/Engine/Source/Common/Include/Common/Math/Math.h b/Engine/Source/Common/Include/Common/Math/Math.h index fc68f8f7..911ac3e3 100644 --- a/Engine/Source/Common/Include/Common/Math/Math.h +++ b/Engine/Source/Common/Include/Common/Math/Math.h @@ -16,3 +16,4 @@ #include #include #include +#include diff --git a/Engine/Source/Common/Include/Common/Math/Matrix.h b/Engine/Source/Common/Include/Common/Math/Matrix.h index 1320b1c1..a995584c 100644 --- a/Engine/Source/Common/Include/Common/Math/Matrix.h +++ b/Engine/Source/Common/Include/Common/Math/Matrix.h @@ -6,8 +6,6 @@ #include #include -#include -#include #include #include @@ -120,13 +118,17 @@ namespace Common { bool CanInverse(T tolerance = DefaultTolerance()) const requires (R == C && R > 1 && FloatingPoint); bool TryInverse(Mat& outResult, T tolerance = DefaultTolerance()) const requires (R == C && R > 1 && FloatingPoint); Mat Inverse(T tolerance = DefaultTolerance()) const requires (R == C && R > 1 && FloatingPoint); + Mat InverseUnchecked() const requires (R == C && R > 1 && FloatingPoint); T Determinant() const requires (R == C && R > 1); - Vec ExtractTranslation() const; - Vec ExtractScale() const; - Quaternion ExtractRotation() const; + bool TryDecomposeAffine(Vec& outTranslation, Quaternion& outRotation, Vec& outScale, T tolerance = DefaultTolerance()) const requires (R == 4 && C == 4 && FloatingPoint); + Vec ExtractTranslation() const requires (R == 4 && C == 4); + Vec ExtractScale(T tolerance = DefaultTolerance()) const requires (R == 4 && C == 4 && FloatingPoint); + Quaternion ExtractRotation(T tolerance = DefaultTolerance()) const requires (R == 4 && C == 4 && FloatingPoint); }; + template requires FloatingPoint bool AlmostEqual(const Mat& lhs, const Mat& rhs, T absoluteTolerance = DefaultTolerance(), T relativeTolerance = DefaultTolerance()); + template requires ValidMatDims struct MatConsts { @@ -311,83 +313,6 @@ namespace Common { using DMat4x4Consts = MatConsts; } -namespace Common { // NOLINT - template - struct Serializer> { - static constexpr size_t typeId - = HashUtils::StrCrc32("Common::Matrix") - + Serializer::typeId + (R << 8) + C; - - static size_t Serialize(BinarySerializeStream& stream, const Mat& value) - { - auto serialized = 0; - for (auto i = 0; i < R * C; i++) { - serialized += Serializer::Serialize(stream, value.data[i]); - } - return serialized; - } - - static size_t Deserialize(BinaryDeserializeStream& stream, Mat& value) - { - auto deserialized = 0; - for (auto i = 0; i < R * C; i++) { - deserialized += Serializer::Deserialize(stream, value.data[i]); - } - return deserialized; - } - }; - - template - struct StringConverter> { - static std::string ToString(const Mat& inValue) - { - std::stringstream stream; - stream << "("; - for (auto i = 0; i < R; i++) { - for (auto j = 0; j < C; j++) { - stream << StringConverter::ToString(inValue.At(i, j)); - if (i * C + j != R * C - 1) { - stream << ", "; - } - } - } - stream << ")"; - return stream.str(); - } - }; - - template - struct JsonSerializer> { - static void JsonSerialize(rapidjson::Value& outJsonValue, rapidjson::Document::AllocatorType& inAllocator, const Mat& inValue) - { - outJsonValue.SetArray(); - outJsonValue.Reserve(R * C, inAllocator); - for (auto i = 0; i < R; i++) { - for (auto j = 0; j < C; j++) { - rapidjson::Value jsonElement; - JsonSerializer::JsonSerialize(jsonElement, inAllocator, inValue.At(i, j)); - outJsonValue.PushBack(jsonElement, inAllocator); - } - } - } - - static void JsonDeserialize(const rapidjson::Value& inJsonValue, Mat& outValue) - { - if (!inJsonValue.IsArray() || inJsonValue.Size() != R * C) { - return; - } - for (auto i = 0; i < inJsonValue.Size(); i++) { - auto row = i / C; - auto col = i % C; - - T element; - JsonSerializer::JsonDeserialize(inJsonValue[i], element); - outValue.At(row, col) = std::move(element); - } - } - }; -} - namespace Common::Internal { template static void CopyValuesToMatrix(Mat& matrix, VT&&... inValue, std::index_sequence) @@ -439,7 +364,7 @@ namespace Common::Internal { { static_assert(R == sizeof...(VT) && sizeof...(VT) == sizeof...(VI)); (void) std::initializer_list { ([&]() -> void { - static_assert(std::is_same_v>); + static_assert(std::is_same_v, Vec>); CopyVectorToMatrixRow(matrix, VI, inVectors, std::make_index_sequence {}); }(), 0)... }; } @@ -449,7 +374,7 @@ namespace Common::Internal { { static_assert(C == sizeof...(VT) && sizeof...(VT) == sizeof...(VI)); (void) std::initializer_list { ([&]() -> void { - static_assert(std::is_same_v>); + static_assert(std::is_same_v, Vec>); CopyVectorToMatrixCol(matrix, VI, inVectors, std::make_index_sequence {}); }(), 0)... }; } @@ -494,7 +419,12 @@ namespace Common::Internal { { Vec result; for (auto i = 0; i < R; i++) { - result[i] = mat.Row(i).Dot(vec); + const T* row = &mat.data[i * C]; + T value = row[0] * vec.data[0]; + for (auto j = 1; j < C; j++) { + value += row[j] * vec.data[j]; + } + result.data[i] = value; } return result; } @@ -708,6 +638,10 @@ namespace Common::Internal { outResult = MatInverseScalar(m, determinant); return true; } + static Mat InverseUnchecked(const Mat& m) + { + return MatInverseScalar(m, MatDeterminantScalar(m)); + } }; // Row-major 4x4 float matrix, backed by float[16] (four contiguous rows of 16 bytes each), so each row maps to an @@ -785,6 +719,19 @@ namespace Common::Internal { // and the determinant is recovered as row0 . (first row of the cofactor matrix), so there is no second // Determinant pass. static bool TryInverse(const M& m, M& outResult, float tolerance) + { + return InverseImpl(m, outResult, tolerance, true); + } + + static M InverseUnchecked(const M& m) + { + M result; + InverseImpl(m, result, 0.0f, false); + return result; + } + + private: + static bool InverseImpl(const M& m, M& outResult, float tolerance, bool validate) { const Simd::F32x4 r0 = Simd::LoadU(&m.data[0]); const Simd::F32x4 r1 = Simd::LoadU(&m.data[4]); @@ -825,9 +772,11 @@ namespace Common::Internal { // det = row0 . (column 0 of the cofactor matrix). That column is the col0 register as-is, so compute the // determinant before Transpose4 turns col0 into the cofactor matrix's first row. const float det = Simd::Sum(Simd::Mul(r0, col0)); - const float scale = Simd::MaxValue(Simd::Max(Simd::Max(Simd::Abs(r0), Simd::Abs(r1)), Simd::Max(Simd::Abs(r2), Simd::Abs(r3)))); - if (!ScaledDeterminantIsInvertible(det, scale, tolerance)) { - return false; + if (validate) { + const float scale = Simd::MaxValue(Simd::Max(Simd::Max(Simd::Abs(r0), Simd::Abs(r1)), Simd::Max(Simd::Abs(r2), Simd::Abs(r3)))); + if (!ScaledDeterminantIsInvertible(det, scale, tolerance)) { + return false; + } } const Simd::F32x4 oneOverDet = Simd::Set1(1.0f / det); @@ -840,6 +789,7 @@ namespace Common::Internal { return true; } + public: static float Determinant(const M& m) { return MatDeterminantScalar(m); } }; @@ -920,6 +870,7 @@ namespace Common::Internal { outResult = MatInverseScalar(m, determinant); return true; } + static M InverseUnchecked(const M& m) { return MatInverseScalar(m, MatDeterminantScalar(m)); } static float Determinant(const M& m) { return MatDeterminantScalar(m); } }; } @@ -1007,7 +958,7 @@ namespace Common { { bool result = true; for (auto i = 0; i < R * C; i++) { - result = result && CompareNumber(this->data[i], rhs); + result = result && this->data[i] == rhs; } return result; } @@ -1017,7 +968,7 @@ namespace Common { { bool result = true; for (auto i = 0; i < R * C; i++) { - result = result && CompareNumber(this->data[i], rhs.data[i]); + result = result && this->data[i] == rhs.data[i]; } return result; } @@ -1228,80 +1179,142 @@ namespace Common { return Internal::MatOps::Transpose(*this); } - template - Vec Mat::ExtractTranslation() const + template + bool Mat::TryDecomposeAffine(Vec& outTranslation, Quaternion& outRotation, Vec& outScale, T tolerance) const requires (R == 4 && C == 4 && FloatingPoint) { - static_assert( R == 4 && C == 4); - Vec ret = Vec(this->data[3], this->data[7], this->data[11]); - return ret; - } + using EvaluationT = std::conditional_t, float, T>; - template - Quaternion Mat::ExtractRotation() const - { - static_assert( R == 4 && C == 4); - Quaternion ret = Quaternion(1, 0, 0, 0); - - T sx = Vec(this->data[0], this->data[4], this->data[8]).Model(); - T sy = Vec(this->data[1], this->data[5], this->data[9]).Model(); - T sz = Vec(this->data[2], this->data[6], this->data[10]).Model(); - T det = this->Determinant(); - if (det < 0) { + const EvaluationT toleranceValue = std::abs(static_cast(tolerance)); + const EvaluationT m30 = static_cast(this->data[12]); + const EvaluationT m31 = static_cast(this->data[13]); + const EvaluationT m32 = static_cast(this->data[14]); + const EvaluationT m33 = static_cast(this->data[15]); + const EvaluationT tx = static_cast(this->data[3]); + const EvaluationT ty = static_cast(this->data[7]); + const EvaluationT tz = static_cast(this->data[11]); + if (!std::isfinite(tx) || !std::isfinite(ty) || !std::isfinite(tz) + || !std::isfinite(m30) || !std::isfinite(m31) || !std::isfinite(m32) || !std::isfinite(m33) + || std::abs(m30) > toleranceValue || std::abs(m31) > toleranceValue || std::abs(m32) > toleranceValue + || std::abs(m33 - static_cast(1)) > toleranceValue) { + return false; + } + + const EvaluationT c00 = static_cast(this->data[0]); + const EvaluationT c01 = static_cast(this->data[4]); + const EvaluationT c02 = static_cast(this->data[8]); + const EvaluationT c10 = static_cast(this->data[1]); + const EvaluationT c11 = static_cast(this->data[5]); + const EvaluationT c12 = static_cast(this->data[9]); + const EvaluationT c20 = static_cast(this->data[2]); + const EvaluationT c21 = static_cast(this->data[6]); + const EvaluationT c22 = static_cast(this->data[10]); + + EvaluationT sx = std::sqrt(c00 * c00 + c01 * c01 + c02 * c02); + const EvaluationT sy = std::sqrt(c10 * c10 + c11 * c11 + c12 * c12); + const EvaluationT sz = std::sqrt(c20 * c20 + c21 * c21 + c22 * c22); + const EvaluationT maxScale = std::max(sx, std::max(sy, sz)); + const EvaluationT scaleThreshold = toleranceValue * maxScale; + if (!std::isfinite(maxScale) || maxScale == static_cast(0) + || sx <= scaleThreshold || sy <= scaleThreshold || sz <= scaleThreshold) { + return false; + } + + const EvaluationT determinant = c00 * (c11 * c22 - c12 * c21) + - c10 * (c01 * c22 - c02 * c21) + + c20 * (c01 * c12 - c02 * c11); + if (!std::isfinite(determinant) || std::abs(determinant) <= toleranceValue * sx * sy * sz) { + return false; + } + if (determinant < static_cast(0)) { sx = -sx; } - T m11 = this->data[0] / sx, m21 = this->data[4] / sx, m31 = this->data[8] / sx; - T m12 = this->data[1] / sy, m22 = this->data[5] / sy, m32 = this->data[9] / sy; - T m13 = this->data[2] / sz, m23 = this->data[6] / sz, m33 = this->data[10] / sz; - - // http://www.euclideanspace.com/maths/geometry/rotations/conversions/matrixToQuaternion/index.htm - // assumes the upper 3x3 of m is a pure rotation matrix (i.e, unscaled) - T trace = m11 + m22 + m33; - if (trace > 0) { - T s = 0.5 / std::sqrt(trace + 1.0); - ret.w = 0.25 / s; - ret.x = (m32 - m23) * s; - ret.y = (m13 - m31) * s; - ret.z = (m21 - m12) * s; - } else if (m11 > m22 && m11 > m33) { - T s = 2.0 * std::sqrt(1.0 + m11 - m22 - m33); - ret.w = ( m32 - m23 ) / s; - ret.x = 0.25 * s; - ret.y = ( m12 + m21 ) / s; - ret.z = ( m13 + m31 ) / s; - } else if (m22 > m33) { - T s = 2.0 * std::sqrt( 1.0 + m22 - m11 - m33 ); - ret.w = ( m13 - m31 ) / s; - ret.x = ( m12 + m21 ) / s; - ret.y = 0.25 * s; - ret.z = ( m23 + m32 ) / s; + const EvaluationT m11 = c00 / sx, m21 = c01 / sx, m31n = c02 / sx; + const EvaluationT m12 = c10 / sy, m22 = c11 / sy, m32n = c12 / sy; + const EvaluationT m13 = c20 / sz, m23 = c21 / sz, m33n = c22 / sz; + if (std::abs(m11 * m12 + m21 * m22 + m31n * m32n) > toleranceValue + || std::abs(m11 * m13 + m21 * m23 + m31n * m33n) > toleranceValue + || std::abs(m12 * m13 + m22 * m23 + m32n * m33n) > toleranceValue) { + return false; + } + + EvaluationT qw; + EvaluationT qx; + EvaluationT qy; + EvaluationT qz; + const EvaluationT trace = m11 + m22 + m33n; + if (trace > static_cast(0)) { + const EvaluationT s = static_cast(0.5) / std::sqrt(trace + static_cast(1)); + qw = static_cast(0.25) / s; + qx = (m32n - m23) * s; + qy = (m13 - m31n) * s; + qz = (m21 - m12) * s; + } else if (m11 > m22 && m11 > m33n) { + const EvaluationT s = static_cast(2) * std::sqrt(std::max(static_cast(0), static_cast(1) + m11 - m22 - m33n)); + if (s <= toleranceValue) { + return false; + } + qw = (m32n - m23) / s; + qx = static_cast(0.25) * s; + qy = (m12 + m21) / s; + qz = (m13 + m31n) / s; + } else if (m22 > m33n) { + const EvaluationT s = static_cast(2) * std::sqrt(std::max(static_cast(0), static_cast(1) + m22 - m11 - m33n)); + if (s <= toleranceValue) { + return false; + } + qw = (m13 - m31n) / s; + qx = (m12 + m21) / s; + qy = static_cast(0.25) * s; + qz = (m23 + m32n) / s; } else { - T s = 2.0 * std::sqrt( 1.0 + m33 - m11 - m22 ); - ret.w = ( m21 - m12 ) / s; - ret.x = ( m13 + m31 ) / s; - ret.y = ( m23 + m32 ) / s; - ret.z = 0.25 * s; + const EvaluationT s = static_cast(2) * std::sqrt(std::max(static_cast(0), static_cast(1) + m33n - m11 - m22)); + if (s <= toleranceValue) { + return false; + } + qw = (m21 - m12) / s; + qx = (m13 + m31n) / s; + qy = (m23 + m32n) / s; + qz = static_cast(0.25) * s; + } + + Quaternion rotation(static_cast(qw), static_cast(qx), static_cast(qy), static_cast(qz)); + if (!rotation.TryNormalize(tolerance)) { + return false; } - return ret; + outTranslation = Vec(this->data[3], this->data[7], this->data[11]); + outRotation = rotation; + outScale = Vec(static_cast(sx), static_cast(sy), static_cast(sz)); + return true; } - template - Vec Mat::ExtractScale() const + template + Vec Mat::ExtractTranslation() const requires (R == 4 && C == 4) { - static_assert( R == 4 && C == 4); - - T sx = Vec(this->data[0], this->data[4], this->data[8]).Model(); - T sy = Vec(this->data[1], this->data[5], this->data[9]).Model(); - T sz = Vec(this->data[2], this->data[6], this->data[10]).Model(); + return Vec(this->data[3], this->data[7], this->data[11]); + } - T det = this->Determinant(); - if (det < 0) { - sx = -sx; - } - Vec ret = Vec(sx, sy, sz); + template + Quaternion Mat::ExtractRotation(T tolerance) const requires (R == 4 && C == 4 && FloatingPoint) + { + Vec translation; + Quaternion rotation; + Vec scale; + const bool decomposed = TryDecomposeAffine(translation, rotation, scale, tolerance); + Assert(decomposed); + return rotation; + } - return ret; + template + Vec Mat::ExtractScale(T tolerance) const requires (R == 4 && C == 4 && FloatingPoint) + { + Vec translation; + Quaternion rotation; + Vec scale; + const bool decomposed = TryDecomposeAffine(translation, rotation, scale, tolerance); + Assert(decomposed); + return scale; } template @@ -1341,12 +1354,30 @@ namespace Common { return result; } + template + Mat Mat::InverseUnchecked() const requires (R == C && R > 1 && FloatingPoint) + { + return Internal::MatOps::InverseUnchecked(*this); + } + template T Mat::Determinant() const requires (R == C && R > 1) { return Internal::MatOps::Determinant(*this); } + template + requires FloatingPoint + bool AlmostEqual(const Mat& lhs, const Mat& rhs, T absoluteTolerance, T relativeTolerance) + { + for (auto i = 0; i < R * C; i++) { + if (!AlmostEqual(lhs.data[i], rhs.data[i], absoluteTolerance, relativeTolerance)) { + return false; + } + } + return true; + } + template requires ValidMatDims const Mat MatConsts::zero = Mat(0); diff --git a/Engine/Source/Common/Include/Common/Math/Projection.h b/Engine/Source/Common/Include/Common/Math/Projection.h index 1fcc63b0..fbae87e5 100644 --- a/Engine/Source/Common/Include/Common/Math/Projection.h +++ b/Engine/Source/Common/Include/Common/Math/Projection.h @@ -8,8 +8,6 @@ #include #include -#include -#include namespace Common { template @@ -47,6 +45,10 @@ namespace Common { bool operator==(const ReversedZPerspectiveProjection& inRhs) const; }; + template requires FloatingPoint bool AlmostEqual(const ReversedZOrthogonalProjection& lhs, const ReversedZOrthogonalProjection& rhs, T absoluteTolerance = DefaultTolerance(), T relativeTolerance = DefaultTolerance()); + + template requires FloatingPoint bool AlmostEqual(const ReversedZPerspectiveProjection& lhs, const ReversedZPerspectiveProjection& rhs, T absoluteTolerance = DefaultTolerance(), T relativeTolerance = DefaultTolerance()); + using HReversedZOrthoProjection = ReversedZOrthogonalProjection; using FReversedZOrthoProjection = ReversedZOrthogonalProjection; using DReversedZOrthoProjection = ReversedZOrthogonalProjection; @@ -56,188 +58,6 @@ namespace Common { using DReversedZPerspectiveProjection = ReversedZPerspectiveProjection; } -namespace Common { - template - struct Serializer> { - static constexpr size_t typeId - = HashUtils::StrCrc32("Common::ReversedZOrthogonalProjection") - + Serializer::typeId; - - static size_t Serialize(BinarySerializeStream& stream, const ReversedZOrthogonalProjection& value) - { - size_t serialized = 0; - serialized += Serializer::Serialize(stream, value.width); - serialized += Serializer::Serialize(stream, value.height); - serialized += Serializer::Serialize(stream, value.nearPlane); - serialized += Serializer>::Serialize(stream, value.farPlane); - return serialized; - } - - static size_t Deserialize(BinaryDeserializeStream& stream, ReversedZOrthogonalProjection& value) - { - size_t deserialized = 0; - deserialized += Serializer::Deserialize(stream, value.width); - deserialized += Serializer::Deserialize(stream, value.height); - deserialized += Serializer::Deserialize(stream, value.nearPlane); - deserialized += Serializer>::Deserialize(stream, value.farPlane); - return deserialized; - } - }; - - template - struct Serializer> { - static constexpr size_t typeId - = HashUtils::StrCrc32("Common::ReversedZPerspectiveProjection") - + Serializer::typeId; - - static size_t Serialize(BinarySerializeStream& stream, const ReversedZPerspectiveProjection& value) - { - size_t serialized = 0; - serialized += Serializer::Serialize(stream, value.fov); - serialized += Serializer::Serialize(stream, value.width); - serialized += Serializer::Serialize(stream, value.height); - serialized += Serializer::Serialize(stream, value.nearPlane); - serialized += Serializer>::Serialize(stream, value.farPlane); - return serialized; - } - - static size_t Deserialize(BinaryDeserializeStream& stream, ReversedZPerspectiveProjection& value) - { - size_t deserialized = 0; - deserialized += Serializer::Deserialize(stream, value.fov); - deserialized += Serializer::Deserialize(stream, value.width); - deserialized += Serializer::Deserialize(stream, value.height); - deserialized += Serializer::Deserialize(stream, value.nearPlane); - deserialized += Serializer>::Deserialize(stream, value.farPlane); - return deserialized; - } - }; - - template - struct StringConverter> { - static std::string ToString(const ReversedZOrthogonalProjection& inValue) - { - return std::format( - "{}width={}, height={}, near={}, far={}{}", - "{", - StringConverter::ToString(inValue.width), - StringConverter::ToString(inValue.height), - StringConverter::ToString(inValue.nearPlane), - StringConverter>::ToString(inValue.farPlane), - "}"); - } - }; - - template - struct StringConverter> { - static std::string ToString(const ReversedZPerspectiveProjection& inValue) - { - return std::format( - "{}fov={}, width={}, height={}, near={}, far={}{}", - "{", - StringConverter::ToString(inValue.fov), - StringConverter::ToString(inValue.width), - StringConverter::ToString(inValue.height), - StringConverter::ToString(inValue.nearPlane), - StringConverter>::ToString(inValue.farPlane), - "}"); - } - }; - - template - struct JsonSerializer> { - static void JsonSerialize(rapidjson::Value& outJsonValue, rapidjson::Document::AllocatorType& inAllocator, const ReversedZOrthogonalProjection& inValue) - { - rapidjson::Value widthJson; - JsonSerializer::JsonSerialize(widthJson, inAllocator, inValue.width); - - rapidjson::Value heightJson; - JsonSerializer::JsonSerialize(heightJson, inAllocator, inValue.height); - - rapidjson::Value nearJson; - JsonSerializer::JsonSerialize(nearJson, inAllocator, inValue.nearPlane); - - rapidjson::Value farJson; - JsonSerializer>::JsonSerialize(farJson, inAllocator, inValue.farPlane); - - outJsonValue.SetObject(); - outJsonValue.AddMember("width", widthJson, inAllocator); - outJsonValue.AddMember("height", heightJson, inAllocator); - outJsonValue.AddMember("near", nearJson, inAllocator); - outJsonValue.AddMember("far", farJson, inAllocator); - } - - static void JsonDeserialize(const rapidjson::Value& inJsonValue, ReversedZOrthogonalProjection& outValue) - { - if (!inJsonValue.IsObject()) { - return; - } - if (inJsonValue.HasMember("width")) { - JsonSerializer::JsonDeserialize(inJsonValue["width"], outValue.width); - } - if (inJsonValue.HasMember("height")) { - JsonSerializer::JsonDeserialize(inJsonValue["height"], outValue.height); - } - if (inJsonValue.HasMember("near")) { - JsonSerializer::JsonDeserialize(inJsonValue["near"], outValue.nearPlane); - } - if (inJsonValue.HasMember("far")) { - JsonSerializer>::JsonDeserialize(inJsonValue["far"], outValue.farPlane); - } - } - }; - - template - struct JsonSerializer> { - static void JsonSerialize(rapidjson::Value& outJsonValue, rapidjson::Document::AllocatorType& inAllocator, const ReversedZPerspectiveProjection& inValue) - { - rapidjson::Value fovJson; - JsonSerializer::JsonSerialize(fovJson, inAllocator, inValue.fov); - - rapidjson::Value widthJson; - JsonSerializer::JsonSerialize(widthJson, inAllocator, inValue.width); - - rapidjson::Value heightJson; - JsonSerializer::JsonSerialize(heightJson, inAllocator, inValue.height); - - rapidjson::Value nearJson; - JsonSerializer::JsonSerialize(nearJson, inAllocator, inValue.nearPlane); - - rapidjson::Value farJson; - JsonSerializer>::JsonSerialize(farJson, inAllocator, inValue.farPlane); - - outJsonValue.SetObject(); - outJsonValue.AddMember("fov", fovJson, inAllocator); - outJsonValue.AddMember("width", widthJson, inAllocator); - outJsonValue.AddMember("height", heightJson, inAllocator); - outJsonValue.AddMember("near", nearJson, inAllocator); - outJsonValue.AddMember("far", farJson, inAllocator); - } - - static void JsonDeserialize(const rapidjson::Value& inJsonValue, ReversedZPerspectiveProjection& outValue) - { - if (!inJsonValue.IsObject()) { - return; - } - if (inJsonValue.HasMember("fov")) { - JsonSerializer::JsonDeserialize(inJsonValue["fov"], outValue.fov); - } - if (inJsonValue.HasMember("width")) { - JsonSerializer::JsonDeserialize(inJsonValue["width"], outValue.width); - } - if (inJsonValue.HasMember("height")) { - JsonSerializer::JsonDeserialize(inJsonValue["height"], outValue.height); - } - if (inJsonValue.HasMember("near")) { - JsonSerializer::JsonDeserialize(inJsonValue["near"], outValue.nearPlane); - } - if (inJsonValue.HasMember("far")) { - JsonSerializer>::JsonDeserialize(inJsonValue["far"], outValue.farPlane); - } - } - }; -} - namespace Common { template ReversedZOrthogonalProjection::ReversedZOrthogonalProjection() @@ -286,13 +106,13 @@ namespace Common { if (thisHasFar && !rhsHasFar || !thisHasFar && rhsHasFar) { return false; } - if (thisHasFar && !CompareNumber(this->farPlane.value(), inRhs.farPlane.value())) { + if (thisHasFar && this->farPlane.value() != inRhs.farPlane.value()) { return false; } - return CompareNumber(this->width, inRhs.width) - && CompareNumber(this->height, inRhs.height) - && CompareNumber(this->nearPlane, inRhs.nearPlane); + return this->width == inRhs.width + && this->height == inRhs.height + && this->nearPlane == inRhs.nearPlane; } template @@ -347,13 +167,40 @@ namespace Common { if (thisHasFar && !rhsHasFar || !thisHasFar && rhsHasFar) { return false; } - if (thisHasFar && !CompareNumber(this->farPlane.value(), inRhs.farPlane.value())) { + if (thisHasFar && this->farPlane.value() != inRhs.farPlane.value()) { return false; } - return CompareNumber(this->fov, inRhs.fov) - && CompareNumber(this->width, inRhs.width) - && CompareNumber(this->height, inRhs.height) - && CompareNumber(this->nearPlane, inRhs.nearPlane); + return this->fov == inRhs.fov + && this->width == inRhs.width + && this->height == inRhs.height + && this->nearPlane == inRhs.nearPlane; + } + + template + requires FloatingPoint + bool AlmostEqual(const ReversedZOrthogonalProjection& lhs, const ReversedZOrthogonalProjection& rhs, T absoluteTolerance, T relativeTolerance) + { + if (lhs.farPlane.has_value() != rhs.farPlane.has_value()) { + return false; + } + return (!lhs.farPlane.has_value() || AlmostEqual(lhs.farPlane.value(), rhs.farPlane.value(), absoluteTolerance, relativeTolerance)) + && AlmostEqual(lhs.width, rhs.width, absoluteTolerance, relativeTolerance) + && AlmostEqual(lhs.height, rhs.height, absoluteTolerance, relativeTolerance) + && AlmostEqual(lhs.nearPlane, rhs.nearPlane, absoluteTolerance, relativeTolerance); + } + + template + requires FloatingPoint + bool AlmostEqual(const ReversedZPerspectiveProjection& lhs, const ReversedZPerspectiveProjection& rhs, T absoluteTolerance, T relativeTolerance) + { + if (lhs.farPlane.has_value() != rhs.farPlane.has_value()) { + return false; + } + return (!lhs.farPlane.has_value() || AlmostEqual(lhs.farPlane.value(), rhs.farPlane.value(), absoluteTolerance, relativeTolerance)) + && AlmostEqual(lhs.fov, rhs.fov, absoluteTolerance, relativeTolerance) + && AlmostEqual(lhs.width, rhs.width, absoluteTolerance, relativeTolerance) + && AlmostEqual(lhs.height, rhs.height, absoluteTolerance, relativeTolerance) + && AlmostEqual(lhs.nearPlane, rhs.nearPlane, absoluteTolerance, relativeTolerance); } } diff --git a/Engine/Source/Common/Include/Common/Math/Quaternion.h b/Engine/Source/Common/Include/Common/Math/Quaternion.h index f8ed7777..f72f8dbd 100644 --- a/Engine/Source/Common/Include/Common/Math/Quaternion.h +++ b/Engine/Source/Common/Include/Common/Math/Quaternion.h @@ -9,8 +9,6 @@ #include #include #include -#include -#include namespace Common { template struct Angle; @@ -71,7 +69,7 @@ namespace Common { Quaternion(); Quaternion(T inW, T inX, T inY, T inZ); - Quaternion(const Vec& inAxis, float inAngle); + Quaternion(const Vec& inAxis, T inAngle); Quaternion(const Vec& inAxis, const Radian& inRadian); Quaternion(const Quaternion& inValue) = default; Quaternion(Quaternion&& inValue) noexcept = default; @@ -94,6 +92,7 @@ namespace Common { Vec ImaginaryPart() const; T ModelSquared() const; T Model() const; + bool IsNormalized(T tolerance = DefaultTolerance()) const; Quaternion Negatived() const; Quaternion Conjugated() const; Quaternion Normalized() const; @@ -109,6 +108,12 @@ namespace Common { Quaternion CastTo() const; }; + template requires FloatingPoint bool AlmostEqual(const Angle& lhs, const Angle& rhs, T absoluteTolerance = DefaultTolerance(), T relativeTolerance = DefaultTolerance()); + + template requires FloatingPoint bool AlmostEqual(const Radian& lhs, const Radian& rhs, T absoluteTolerance = DefaultTolerance(), T relativeTolerance = DefaultTolerance()); + + template requires FloatingPoint bool AlmostEqual(const Quaternion& lhs, const Quaternion& rhs, T absoluteTolerance = DefaultTolerance(), T relativeTolerance = DefaultTolerance()); + template struct QuatConsts { static const Quaternion zero; @@ -132,159 +137,6 @@ namespace Common { using DQuatConsts = QuatConsts; } -namespace Common { - template - struct Serializer> { - static constexpr size_t typeId - = HashUtils::StrCrc32("Common::Angle") - + Serializer::typeId; - - static size_t Serialize(BinarySerializeStream& stream, const Angle& value) - { - return Serializer::Serialize(stream, value.value); - } - - static size_t Deserialize(BinaryDeserializeStream& stream, Angle& value) - { - return Serializer::Deserialize(stream, value.value); - } - }; - - template - struct Serializer> { - static constexpr size_t typeId - = HashUtils::StrCrc32("Common::Radian") - + Serializer::typeId; - - static size_t Serialize(BinarySerializeStream& stream, const Radian& value) - { - return Serializer::Serialize(stream, value.value); - } - - static size_t Deserialize(BinaryDeserializeStream& stream, Radian& value) - { - return Serializer::Deserialize(stream, value.value); - } - }; - - template - struct Serializer> { - static constexpr size_t typeId - = HashUtils::StrCrc32("Common::Quaternion") - + Serializer::typeId; - - static size_t Serialize(BinarySerializeStream& stream, const Quaternion& value) - { - size_t serialized = 0; - serialized += Serializer::Serialize(stream, value.w); - serialized += Serializer::Serialize(stream, value.x); - serialized += Serializer::Serialize(stream, value.y); - serialized += Serializer::Serialize(stream, value.z); - return serialized; - } - - static size_t Deserialize(BinaryDeserializeStream& stream, Quaternion& value) - { - size_t deserialized = 0; - deserialized += Serializer::Deserialize(stream, value.w); - deserialized += Serializer::Deserialize(stream, value.x); - deserialized += Serializer::Deserialize(stream, value.y); - deserialized += Serializer::Deserialize(stream, value.z); - return deserialized; - } - }; - - template - struct StringConverter> { - static std::string ToString(const Angle& inValue) - { - return std::format("a{}", StringConverter::ToString(inValue.value)); - } - }; - - template - struct StringConverter> { - static std::string ToString(const Radian& inValue) - { - return StringConverter::ToString(inValue.value); - } - }; - - template - struct StringConverter> { - static std::string ToString(const Quaternion& inValue) - { - return std::format( - "({}, {}, {}, {})", - StringConverter::ToString(inValue.w), - StringConverter::ToString(inValue.x), - StringConverter::ToString(inValue.y), - StringConverter::ToString(inValue.z)); - } - }; - - template - struct JsonSerializer> { - static void JsonSerialize(rapidjson::Value& outJsonValue, rapidjson::Document::AllocatorType& inAllocator, const Angle& inValue) - { - JsonSerializer::JsonSerialize(outJsonValue, inAllocator, inValue.value); - } - - static void JsonDeserialize(const rapidjson::Value& inJsonValue, Angle& outValue) - { - JsonSerializer::JsonDeserialize(inJsonValue, outValue.value); - } - }; - - template - struct JsonSerializer> { - static void JsonSerialize(rapidjson::Value& outJsonValue, rapidjson::Document::AllocatorType& inAllocator, const Radian& inValue) - { - JsonSerializer::JsonSerialize(outJsonValue, inAllocator, inValue.value); - } - - static void JsonDeserialize(const rapidjson::Value& inJsonValue, Radian& outValue) - { - JsonSerializer::JsonDeserialize(inJsonValue, outValue.value); - } - }; - - template - struct JsonSerializer> { - static void JsonSerialize(rapidjson::Value& outJsonValue, rapidjson::Document::AllocatorType& inAllocator, const Quaternion& inValue) - { - rapidjson::Value xJson; - JsonSerializer::JsonSerialize(xJson, inAllocator, inValue.w); - - rapidjson::Value yJson; - JsonSerializer::JsonSerialize(yJson, inAllocator, inValue.x); - - rapidjson::Value zJson; - JsonSerializer::JsonSerialize(zJson, inAllocator, inValue.y); - - rapidjson::Value wJson; - JsonSerializer::JsonSerialize(wJson, inAllocator, inValue.z); - - outJsonValue.SetArray(); - outJsonValue.PushBack(xJson, inAllocator); - outJsonValue.PushBack(yJson, inAllocator); - outJsonValue.PushBack(zJson, inAllocator); - outJsonValue.PushBack(wJson, inAllocator); - } - - static void JsonDeserialize(const rapidjson::Value& inJsonValue, Quaternion& outValue) - { - if (!inJsonValue.IsArray() || inJsonValue.Size() != 4) { - return; - } - JsonSerializer::JsonDeserialize(inJsonValue[0], outValue.w); - JsonSerializer::JsonDeserialize(inJsonValue[1], outValue.x); - JsonSerializer::JsonDeserialize(inJsonValue[2], outValue.y); - JsonSerializer::JsonDeserialize(inJsonValue[3], outValue.z); - } - }; -} - namespace Common::Internal { // Per-backend dispatch for quaternion arithmetic. The primary template is the scalar implementation, so any // (T, B) without a specialization degrades gracefully to scalar; the SIMD specialization follows immediately after. @@ -408,17 +260,13 @@ namespace Common { Angle::Angle(const Radian& inValue) : Angle(inValue.ToAngle()) {} template - Angle::Angle(const Angle& inValue) : Angle(inValue.value) {} + Angle::Angle(const Angle& inValue) = default; template - Angle::Angle(Angle&& inValue) noexcept : Angle(inValue.value) {} + Angle::Angle(Angle&& inValue) noexcept = default; template - Angle& Angle::operator=(const Angle& inValue) - { - this->value = inValue.value; - return *this; - } + Angle& Angle::operator=(const Angle& inValue) = default; template Angle& Angle::operator=(const Radian& inValue) @@ -430,7 +278,7 @@ namespace Common { template bool Angle::operator==(const Angle& inRhs) const { - return CompareNumber(this->value, inRhs.value); + return this->value == inRhs.value; } template @@ -455,17 +303,13 @@ namespace Common { Radian::Radian(const Angle& inValue) : Radian(inValue.ToRadian()) {} template - Radian::Radian(const Radian& inValue) : Radian(inValue.value) {} + Radian::Radian(const Radian& inValue) = default; template - Radian::Radian(Radian&& inValue) noexcept : Radian(inValue.value) {} + Radian::Radian(Radian&& inValue) noexcept = default; template - Radian& Radian::operator=(const Radian& inValue) - { - this->value = inValue.value; - return *this; - } + Radian& Radian::operator=(const Radian& inValue) = default; template Radian& Radian::operator=(const Angle& inValue) @@ -477,7 +321,7 @@ namespace Common { template bool Radian::operator==(const Radian& inRhs) const { - return CompareNumber(this->value, inRhs.value); + return this->value == inRhs.value; } template @@ -525,7 +369,7 @@ namespace Common { } template - Quaternion::Quaternion(const Vec& inAxis, float inAngle) + Quaternion::Quaternion(const Vec& inAxis, T inAngle) { Vec axis = inAxis; if (!axis.TryNormalize()) { @@ -536,9 +380,9 @@ namespace Common { this->z = 0; return; } - T halfRadian = Angle(inAngle).ToRadian() / 2.0f; - T halfRadianSin = std::sin(halfRadian); - T halfRadianCos = std::cos(halfRadian); + const T halfRadian = Angle(inAngle).ToRadian() / static_cast(2); + const T halfRadianSin = std::sin(halfRadian); + const T halfRadianCos = std::cos(halfRadian); this->w = halfRadianCos; this->x = axis.x * halfRadianSin; @@ -555,10 +399,10 @@ namespace Common { template bool Quaternion::operator==(const Quaternion& rhs) const { - return CompareNumber(this->w, rhs.w) - && CompareNumber(this->x, rhs.x) - && CompareNumber(this->y, rhs.y) - && CompareNumber(this->z, rhs.z); + return this->w == rhs.w + && this->x == rhs.x + && this->y == rhs.y + && this->z == rhs.z; } template @@ -650,6 +494,15 @@ namespace Common { return Internal::QuatOps::Dot(*this, *this); } + template + bool Quaternion::IsNormalized(T tolerance) const + { + using EvaluationT = std::conditional_t, float, T>; + const EvaluationT modelSquared = static_cast(ModelSquared()); + const EvaluationT toleranceValue = std::abs(static_cast(tolerance)); + return std::isfinite(modelSquared) && std::abs(modelSquared - static_cast(1)) <= toleranceValue; + } + template Quaternion Quaternion::Negatived() const { @@ -711,16 +564,16 @@ namespace Common { template Vec Quaternion::RotateVector(const Vec& inVector) const { - Quaternion v = Quaternion(0, inVector.x, inVector.y, inVector.z); - Quaternion v2 = Conjugated() * v * (*this); - return Vec(v2.x, v2.y, v2.z); + const Vec imaginary = ImaginaryPart(); + const Vec twiceCross = inVector.Cross(imaginary) * static_cast(2); + return inVector + twiceCross * this->w + twiceCross.Cross(imaginary); } template Vec Quaternion::ToEulerZYX() const { const T normSquared = Dot(*this); - if (CompareNumber(normSquared, T(0.0f))) { + if (normSquared == static_cast(0)) { return VecConsts::zero; } @@ -768,4 +621,28 @@ namespace Common { result.z = static_cast(this->z); return result; } + + template + requires FloatingPoint + bool AlmostEqual(const Angle& lhs, const Angle& rhs, T absoluteTolerance, T relativeTolerance) + { + return AlmostEqual(lhs.value, rhs.value, absoluteTolerance, relativeTolerance); + } + + template + requires FloatingPoint + bool AlmostEqual(const Radian& lhs, const Radian& rhs, T absoluteTolerance, T relativeTolerance) + { + return AlmostEqual(lhs.value, rhs.value, absoluteTolerance, relativeTolerance); + } + + template + requires FloatingPoint + bool AlmostEqual(const Quaternion& lhs, const Quaternion& rhs, T absoluteTolerance, T relativeTolerance) + { + return AlmostEqual(lhs.w, rhs.w, absoluteTolerance, relativeTolerance) + && AlmostEqual(lhs.x, rhs.x, absoluteTolerance, relativeTolerance) + && AlmostEqual(lhs.y, rhs.y, absoluteTolerance, relativeTolerance) + && AlmostEqual(lhs.z, rhs.z, absoluteTolerance, relativeTolerance); + } } diff --git a/Engine/Source/Common/Include/Common/Math/Rect.h b/Engine/Source/Common/Include/Common/Math/Rect.h index 4974b0dd..d17fa090 100644 --- a/Engine/Source/Common/Include/Common/Math/Rect.h +++ b/Engine/Source/Common/Include/Common/Math/Rect.h @@ -5,8 +5,6 @@ #pragma once #include -#include -#include namespace Common { template @@ -33,9 +31,9 @@ namespace Common { Vec Center() const; T CenterX() const; T CenterY() const; - T Distance(const Rect& inOther) const; + T Distance(const Rect& inOther) const requires FloatingPoint; // half of diagonal - T Size() const; + T Size() const requires FloatingPoint; bool Inside(const Vec& inPoint) const; bool Intersect(const Rect& inOther) const; bool operator==(const Rect& inRhs) const; @@ -43,6 +41,8 @@ namespace Common { template Rect CastTo() const; }; + template requires FloatingPoint bool AlmostEqual(const Rect& lhs, const Rect& rhs, T absoluteTolerance = DefaultTolerance(), T relativeTolerance = DefaultTolerance()); + using IRect = Rect; using URect = Rect; using HRect = Rect; @@ -50,73 +50,6 @@ namespace Common { using DRect = Rect; } -namespace Common { - template - struct Serializer> { - static constexpr size_t typeId - = HashUtils::StrCrc32("Common::Rect") - + Serializer::typeId; - - static size_t Serialize(BinarySerializeStream& stream, const Rect& value) - { - size_t serialized = 0; - serialized += Serializer>::Serialize(stream, value.min); - serialized += Serializer>::Serialize(stream, value.max); - return serialized; - } - - static size_t Deserialize(BinaryDeserializeStream& stream, Rect& value) - { - size_t deserialized = 0; - deserialized += Serializer>::Deserialize(stream, value.min); - deserialized += Serializer>::Deserialize(stream, value.max); - return deserialized; - } - }; - - template - struct StringConverter> { - static std::string ToString(const Rect& inValue) - { - return std::format( - "{}min={}, max={}{}", - "{", - StringConverter>::ToString(inValue.min), - StringConverter>::ToString(inValue.max), - "}"); - } - }; - - template - struct JsonSerializer> { - static void JsonSerialize(rapidjson::Value& outJsonValue, rapidjson::Document::AllocatorType& inAllocator, const Rect& inValue) - { - rapidjson::Value minJson; - JsonSerializer>::JsonSerialize(minJson, inAllocator, inValue.min); - - rapidjson::Value maxJson; - JsonSerializer>::JsonSerialize(maxJson, inAllocator, inValue.max); - - outJsonValue.SetObject(); - outJsonValue.AddMember("min", minJson, inAllocator); - outJsonValue.AddMember("max", maxJson, inAllocator); - } - - static void JsonDeserialize(const rapidjson::Value& inJsonValue, Rect& outValue) - { - if (!inJsonValue.IsObject()) { - return; - } - if (inJsonValue.HasMember("min")) { - JsonSerializer>::JsonDeserialize(inJsonValue["min"], outValue.min); - } - if (inJsonValue.HasMember("max")) { - JsonSerializer>::JsonDeserialize(inJsonValue["max"], outValue.max); - } - } - }; -} - namespace Common { template Rect Rect::FromMinExtent(T inMinX, T inMinY, T inExtentX, T inExtentY) @@ -152,26 +85,13 @@ namespace Common { } template - Rect::Rect(const Rect& inOther) - { - this->min = inOther.min; - this->max = inOther.max; - } + Rect::Rect(const Rect& inOther) = default; template - Rect::Rect(Rect&& inOther) noexcept - { - this->min = std::move(inOther.min); - this->max = std::move(inOther.max); - } + Rect::Rect(Rect&& inOther) noexcept = default; template - Rect& Rect::operator=(const Rect& inOther) - { - this->min = inOther.min; - this->max = inOther.max; - return *this; - } + Rect& Rect::operator=(const Rect& inOther) = default; template Vec Rect::Extent() const @@ -210,14 +130,14 @@ namespace Common { } template - T Rect::Distance(const Rect& inOther) const + T Rect::Distance(const Rect& inOther) const requires FloatingPoint { Vec direction = Center() - inOther.Center(); return direction.Model(); } template - T Rect::Size() const + T Rect::Size() const requires FloatingPoint { Vec diagonal = this->max - this->min; return diagonal.Model() / T(2); @@ -255,4 +175,12 @@ namespace Common { this->max.template CastTo() ); } + + template + requires FloatingPoint + bool AlmostEqual(const Rect& lhs, const Rect& rhs, T absoluteTolerance, T relativeTolerance) + { + return AlmostEqual(lhs.min, rhs.min, absoluteTolerance, relativeTolerance) + && AlmostEqual(lhs.max, rhs.max, absoluteTolerance, relativeTolerance); + } } diff --git a/Engine/Source/Common/Include/Common/Math/Simd.h b/Engine/Source/Common/Include/Common/Math/Simd.h index 6108d737..05b7653c 100644 --- a/Engine/Source/Common/Include/Common/Math/Simd.h +++ b/Engine/Source/Common/Include/Common/Math/Simd.h @@ -134,15 +134,17 @@ namespace Common::Simd { template inline F32x4 Splat(F32x4 v) { return vdupq_n_f32(vgetq_lane_f32(v, L)); } - // NEON has no single arbitrary 4-lane float shuffle, so go through memory; for a compile-time permutation the - // compiler routinely folds the store/reload back into register moves. template inline F32x4 Shuffle(F32x4 v) { - float tmp[4]; - vst1q_f32(tmp, v); - const float out[4] = { tmp[I0], tmp[I1], tmp[I2], tmp[I3] }; - return vld1q_f32(out); + static_assert(I0 >= 0 && I0 < 4 && I1 >= 0 && I1 < 4 && I2 >= 0 && I2 < 4 && I3 >= 0 && I3 < 4); + static constexpr uint8_t indices[16] = { + I0 * 4 + 0, I0 * 4 + 1, I0 * 4 + 2, I0 * 4 + 3, + I1 * 4 + 0, I1 * 4 + 1, I1 * 4 + 2, I1 * 4 + 3, + I2 * 4 + 0, I2 * 4 + 1, I2 * 4 + 2, I2 * 4 + 3, + I3 * 4 + 0, I3 * 4 + 1, I3 * 4 + 2, I3 * 4 + 3 + }; + return vreinterpretq_f32_u8(vqtbl1q_u8(vreinterpretq_u8_f32(v), vld1q_u8(indices))); } // In-place transpose of the 4x4 matrix whose rows are r0..r3. diff --git a/Engine/Source/Common/Include/Common/Math/Sphere.h b/Engine/Source/Common/Include/Common/Math/Sphere.h index a02d8c13..e9c7c4de 100644 --- a/Engine/Source/Common/Include/Common/Math/Sphere.h +++ b/Engine/Source/Common/Include/Common/Math/Sphere.h @@ -5,8 +5,6 @@ #pragma once #include -#include -#include namespace Common { template @@ -24,7 +22,7 @@ namespace Common { Sphere(Sphere&& inOther) noexcept; Sphere& operator=(const Sphere& inOther); - T Distance(const Sphere& inOther) const; + T Distance(const Sphere& inOther) const requires FloatingPoint; bool Inside(const Vec& inPoint) const; bool Intersect(const Sphere& inOther) const; bool operator==(const Sphere& inRhs) const; @@ -32,79 +30,14 @@ namespace Common { template Sphere CastTo() const; }; + template requires FloatingPoint bool AlmostEqual(const Sphere& lhs, const Sphere& rhs, T absoluteTolerance = DefaultTolerance(), T relativeTolerance = DefaultTolerance()); + using ISphere = Sphere; using HSphere = Sphere; using FSphere = Sphere; using DSphere = Sphere; } -namespace Common { - template - struct Serializer> { - static constexpr size_t typeId - = HashUtils::StrCrc32("Common::Sphere") - + Serializer::typeId; - - static size_t Serialize(BinarySerializeStream& stream, const Sphere& value) - { - size_t serialized = 0; - serialized += Serializer>::Serialize(stream, value.center); - serialized += Serializer::Serialize(stream, value.radius); - return serialized; - } - - static size_t Deserialize(BinaryDeserializeStream& stream, Sphere& value) - { - size_t deserialized = 0; - deserialized += Serializer>::Deserialize(stream, value.center); - deserialized += Serializer::Deserialize(stream, value.radius); - return deserialized; - } - }; - - template - struct StringConverter> { - static std::string ToString(const Sphere& inValue) - { - return std::format( - "{}center={}, radius={}{}", - "{", - StringConverter>::ToString(inValue.center), - StringConverter::ToString(inValue.radius), - "}"); - } - }; - - template - struct JsonSerializer> { - static void JsonSerialize(rapidjson::Value& outJsonValue, rapidjson::Document::AllocatorType& inAllocator, const Sphere& inValue) - { - rapidjson::Value centerJson; - JsonSerializer>::JsonSerialize(centerJson, inAllocator, inValue.center); - - rapidjson::Value radiusJson; - JsonSerializer::JsonSerialize(radiusJson, inAllocator, inValue.radius); - - outJsonValue.SetObject(); - outJsonValue.AddMember("center", centerJson, inAllocator); - outJsonValue.AddMember("radius", radiusJson, inAllocator); - } - - static void JsonDeserialize(const rapidjson::Value& inJsonValue, Sphere& outValue) - { - if (!inJsonValue.IsObject()) { - return; - } - if (inJsonValue.HasMember("center")) { - JsonSerializer>::JsonDeserialize(inJsonValue["center"], outValue.center); - } - if (inJsonValue.HasMember("radius")) { - JsonSerializer::JsonDeserialize(inJsonValue["radius"], outValue.radius); - } - } - }; -} - namespace Common { template Sphere::Sphere() @@ -128,29 +61,16 @@ namespace Common { } template - Sphere::Sphere(const Sphere& inOther) - { - this->center = inOther.center; - this->radius = inOther.radius; - } + Sphere::Sphere(const Sphere& inOther) = default; template - Sphere::Sphere(Sphere&& inOther) noexcept - { - this->center = std::move(inOther.center); - this->radius = inOther.radius; - } + Sphere::Sphere(Sphere&& inOther) noexcept = default; template - Sphere& Sphere::operator=(const Sphere& inOther) - { - this->center = inOther.center; - this->radius = inOther.radius; - return *this; - } + Sphere& Sphere::operator=(const Sphere& inOther) = default; template - T Sphere::Distance(const Sphere& inOther) const + T Sphere::Distance(const Sphere& inOther) const requires FloatingPoint { Vec direction = this->center - inOther.center; return direction.Model(); @@ -159,22 +79,29 @@ namespace Common { template bool Sphere::Inside(const Vec& inPoint) const { - Vec direction = this->center - inPoint; - return direction.Model() <= this->radius; + if (this->radius < static_cast(0)) { + return false; + } + const Vec direction = this->center - inPoint; + return direction.ModelSquared() <= this->radius * this->radius; } template bool Sphere::Intersect(const Sphere& inOther) const { - Vec direction = this->center - inOther.center; - return direction.Model() <= (this->radius + inOther.radius); + const T combinedRadius = this->radius + inOther.radius; + if (combinedRadius < static_cast(0)) { + return false; + } + const Vec direction = this->center - inOther.center; + return direction.ModelSquared() <= combinedRadius * combinedRadius; } template bool Sphere::operator==(const Sphere& inRhs) const { return this->center == inRhs.center - && CompareNumber(this->radius, inRhs.radius); + && this->radius == inRhs.radius; } template @@ -186,4 +113,12 @@ namespace Common { static_cast(this->radius) ); } + + template + requires FloatingPoint + bool AlmostEqual(const Sphere& lhs, const Sphere& rhs, T absoluteTolerance, T relativeTolerance) + { + return AlmostEqual(lhs.center, rhs.center, absoluteTolerance, relativeTolerance) + && AlmostEqual(lhs.radius, rhs.radius, absoluteTolerance, relativeTolerance); + } } diff --git a/Engine/Source/Common/Include/Common/Math/Transform.h b/Engine/Source/Common/Include/Common/Math/Transform.h index ab1814c5..61c1c892 100644 --- a/Engine/Source/Common/Include/Common/Math/Transform.h +++ b/Engine/Source/Common/Include/Common/Math/Transform.h @@ -7,8 +7,6 @@ #include #include #include -#include -#include namespace Common { template @@ -21,6 +19,7 @@ namespace Common { template struct Transform : TransformBase { static Transform LookAt(const Vec& inPosition, const Vec& inTargetPosition, const Vec& inUpDirection = VecConsts::unitZ); + static bool TryFromMatrix(const Mat& inMatrix, Transform& outTransform, T tolerance = DefaultTolerance()); Transform(); Transform(const Mat& inMatrix); @@ -44,6 +43,7 @@ namespace Common { Transform& Translate(const Vec& inTranslation); Transform& Rotate(const Quaternion& inRotation); Transform& Scale(const Vec& inScale); + bool TrySetFromMatrix(const Mat& inMatrix, T tolerance = DefaultTolerance()); Transform& UpdateRotation(const Vec& forward, const Vec& side, const Vec& up); bool TryLookTo(const Vec& inTargetPosition, const Vec& inUpDirection = VecConsts::unitZ, T tolerance = DefaultTolerance()); bool TryMoveAndLookTo(const Vec& inPosition, const Vec& inTargetPosition, const Vec& inUpDirection = VecConsts::unitZ, T tolerance = DefaultTolerance()); @@ -64,88 +64,13 @@ namespace Common { Transform CastTo() const; }; + template requires FloatingPoint bool AlmostEqual(const Transform& lhs, const Transform& rhs, T absoluteTolerance = DefaultTolerance(), T relativeTolerance = DefaultTolerance()); + using HTransform = Transform; using FTransform = Transform; using DTransform = Transform; } -namespace Common { - template - struct Serializer> { - static constexpr size_t typeId - = HashUtils::StrCrc32("Common::Transform") - + Serializer::typeId; - - static size_t Serialize(BinarySerializeStream& stream, const Transform& value) - { - size_t serialized = 0; - serialized += Serializer>::Serialize(stream, value.scale); - serialized += Serializer>::Serialize(stream, value.rotation); - serialized += Serializer>::Serialize(stream, value.translation); - return serialized; - } - - static size_t Deserialize(BinaryDeserializeStream& stream, Transform& value) - { - size_t deserialized = 0; - deserialized += Serializer>::Deserialize(stream, value.scale); - deserialized += Serializer>::Deserialize(stream, value.rotation); - deserialized += Serializer>::Deserialize(stream, value.translation); - return deserialized; - } - }; - - template - struct StringConverter> { - static std::string ToString(const Transform& inValue) - { - return std::format( - "{}scale={}, rotation={}, translation={}{}", - "{", - StringConverter>::ToString(inValue.scale), - StringConverter>::ToString(inValue.rotation), - StringConverter>::ToString(inValue.translation), - "}"); - } - }; - - template - struct JsonSerializer> { - static void JsonSerialize(rapidjson::Value& outJsonValue, rapidjson::Document::AllocatorType& inAllocator, const Transform& inValue) - { - rapidjson::Value scaleJson; - JsonSerializer>::JsonSerialize(scaleJson, inAllocator, inValue.scale); - - rapidjson::Value rotationJson; - JsonSerializer>::JsonSerialize(rotationJson, inAllocator, inValue.rotation); - - rapidjson::Value translationJson; - JsonSerializer>::JsonSerialize(translationJson, inAllocator, inValue.translation); - - outJsonValue.SetObject(); - outJsonValue.AddMember("scale", scaleJson, inAllocator); - outJsonValue.AddMember("rotation", rotationJson, inAllocator); - outJsonValue.AddMember("translation", translationJson, inAllocator); - } - - static void JsonDeserialize(const rapidjson::Value& inJsonValue, Transform& outValue) - { - if (!inJsonValue.IsObject()) { - return; - } - if (inJsonValue.HasMember("scale")) { - JsonSerializer>::JsonDeserialize(inJsonValue["scale"], outValue.scale); - } - if (inJsonValue.HasMember("rotation")) { - JsonSerializer>::JsonDeserialize(inJsonValue["rotation"], outValue.rotation); - } - if (inJsonValue.HasMember("translation")) { - JsonSerializer>::JsonDeserialize(inJsonValue["translation"], outValue.translation); - } - } - }; -} - namespace Common { template Transform Transform::LookAt(const Vec& inPosition, const Vec& inTargetPosition, const Vec& inUpDirection) @@ -155,6 +80,17 @@ namespace Common { return result; } + template + bool Transform::TryFromMatrix(const Mat& inMatrix, Transform& outTransform, T tolerance) + { + Transform result; + if (!result.TrySetFromMatrix(inMatrix, tolerance)) { + return false; + } + outTransform = result; + return true; + } + template Transform::Transform() { @@ -165,10 +101,10 @@ namespace Common { template Transform::Transform(const Mat& inMatrix) + : Transform() { - this->translation = inMatrix.ExtractTranslation(); - this->rotation = inMatrix.ExtractRotation(); - this->scale = inMatrix.ExtractScale(); + const bool decomposed = TrySetFromMatrix(inMatrix); + Assert(decomposed); } template @@ -188,29 +124,13 @@ namespace Common { } template - Transform::Transform(const Transform& other) - { - this->scale = other.scale; - this->rotation = other.rotation; - this->translation = other.translation; - } + Transform::Transform(const Transform& other) = default; template - Transform::Transform(Transform&& other) noexcept - { - this->scale = std::move(other.scale); - this->rotation = std::move(other.rotation); - this->translation = std::move(other.translation); - } + Transform::Transform(Transform&& other) noexcept = default; template - Transform& Transform::operator=(const Transform& other) - { - this->scale = other.scale; - this->rotation = other.rotation; - this->translation = other.translation; - return *this; - } + Transform& Transform::operator=(const Transform& other) = default; template bool Transform::operator==(const Transform& rhs) const @@ -394,6 +314,22 @@ namespace Common { return *this; } + template + bool Transform::TrySetFromMatrix(const Mat& inMatrix, T tolerance) + { + Vec translation; + Quaternion rotation; + Vec scale; + if (!inMatrix.TryDecomposeAffine(translation, rotation, scale, tolerance)) { + return false; + } + + this->translation = translation; + this->rotation = rotation; + this->scale = scale; + return true; + } + template Transform& Transform::MoveAndLookTo(const Vec& inPosition, const Vec& inTargetPosition, const Vec& inUpDirection) { @@ -429,27 +365,40 @@ namespace Common { template Mat Transform::GetTransformMatrix() const { - return GetTranslationMatrix() * GetRotationMatrix() * GetScaleMatrix(); + Mat result = GetRotationMatrix(); + for (auto row = 0; row < 3; row++) { + result.At(row, 0) *= this->scale.x; + result.At(row, 1) *= this->scale.y; + result.At(row, 2) *= this->scale.z; + } + result.At(0, 3) = this->translation.x; + result.At(1, 3) = this->translation.y; + result.At(2, 3) = this->translation.z; + return result; } template Mat Transform::GetTransformMatrixNoScale() const { - return GetTranslationMatrix() * GetRotationMatrix(); + Mat result = GetRotationMatrix(); + result.At(0, 3) = this->translation.x; + result.At(1, 3) = this->translation.y; + result.At(2, 3) = this->translation.z; + return result; } template Vec Transform::TransformPosition(const Vec& inPosition) const { - Mat posColMat = Mat::FromColVecs(Vec(inPosition.x, inPosition.y, inPosition.z, 1)); - return (GetTransformMatrix() * posColMat).Col(0).template SubVec<0, 1, 2>(); + return this->rotation.RotateVector(this->scale * inPosition) + this->translation; } template Vec Transform::TransformPosition(const Vec& inPosition) const { - Mat posColMat = Mat::FromColVecs(Vec(inPosition)); - return (GetTransformMatrix() * posColMat).Col(0); + const Vec scaled(inPosition.x * this->scale.x, inPosition.y * this->scale.y, inPosition.z * this->scale.z); + const Vec transformed = this->rotation.RotateVector(scaled) + this->translation * inPosition.w; + return Vec(transformed.x, transformed.y, transformed.z, inPosition.w); } template @@ -462,4 +411,13 @@ namespace Common { result.scale = this->scale.template CastTo(); return result; } + + template + requires FloatingPoint + bool AlmostEqual(const Transform& lhs, const Transform& rhs, T absoluteTolerance, T relativeTolerance) + { + return AlmostEqual(lhs.scale, rhs.scale, absoluteTolerance, relativeTolerance) + && AlmostEqual(lhs.rotation, rhs.rotation, absoluteTolerance, relativeTolerance) + && AlmostEqual(lhs.translation, rhs.translation, absoluteTolerance, relativeTolerance); + } } diff --git a/Engine/Source/Common/Include/Common/Math/Vector.h b/Engine/Source/Common/Include/Common/Math/Vector.h index cc95a06d..e73fbf8b 100644 --- a/Engine/Source/Common/Include/Common/Math/Vector.h +++ b/Engine/Source/Common/Include/Common/Math/Vector.h @@ -10,8 +10,6 @@ #include #include #include -#include -#include namespace Common { template struct Vec; @@ -26,7 +24,7 @@ namespace Common::Internal { namespace Common { template concept ValidVecDim = L >= 1 && L <= 4; - template concept VecN = std::is_same_v>; + template concept VecN = std::is_same_v, Vec>; template requires ValidVecDim @@ -84,14 +82,17 @@ namespace Common { Vec SubVec() const; T ModelSquared() const; - T Model() const; - Vec Normalized() const; - bool TryNormalize(T tolerance = DefaultTolerance()); - void Normalize(); + T Model() const requires FloatingPoint; + bool IsNormalized(T tolerance = DefaultTolerance()) const requires FloatingPoint; + Vec Normalized() const requires FloatingPoint; + bool TryNormalize(T tolerance = DefaultTolerance()) requires FloatingPoint; + void Normalize() requires FloatingPoint; T Dot(const Vec& rhs) const; - typename Internal::VecCrossResultTraits::Type Cross(const Vec& rhs) const; + typename Internal::VecCrossResultTraits::Type Cross(const Vec& rhs) const requires (FloatingPoint && (L == 2 || L == 3)); }; + template requires FloatingPoint bool AlmostEqual(const Vec& lhs, const Vec& rhs, T absoluteTolerance = DefaultTolerance(), T relativeTolerance = DefaultTolerance()); + template requires ValidVecDim struct VecConsts {}; @@ -222,75 +223,6 @@ namespace Common::Internal { }; } -namespace Common { - template - struct Serializer> { - static constexpr size_t typeId - = Common::HashUtils::StrCrc32("Common::Vector") - + Serializer::typeId - + L; - - static size_t Serialize(BinarySerializeStream& stream, const Vec& value) - { - size_t serialized = 0; - for (auto i = 0; i < L; i++) { - serialized += Serializer::Serialize(stream, value.data[i]); - } - return serialized; - } - - static size_t Deserialize(BinaryDeserializeStream& stream, Vec& value) - { - size_t deserialized = 0; - for (auto i = 0; i < L; i++) { - deserialized += Serializer::Deserialize(stream, value.data[i]); - } - return deserialized; - } - }; - - template - struct StringConverter> { - static std::string ToString(const Vec& inValue) - { - std::stringstream stream; - stream << "("; - for (auto i = 0; i < L; i++) { - stream << StringConverter::ToString(inValue.data[i]); - if (i != L - 1) { - stream << ", "; - } - } - stream << ")"; - return stream.str(); - } - }; - - template - struct JsonSerializer> { - static void JsonSerialize(rapidjson::Value& outJsonValue, rapidjson::Document::AllocatorType& inAllocator, const Vec& inValue) - { - outJsonValue.SetArray(); - outJsonValue.Reserve(L, inAllocator); - for (auto i = 0; i < L; i++) { - rapidjson::Value elementJson; - JsonSerializer::JsonSerialize(elementJson, inAllocator, inValue[i]); - outJsonValue.PushBack(elementJson, inAllocator); - } - } - - static void JsonDeserialize(const rapidjson::Value& inJsonValue, Vec& outValue) - { - if (!inJsonValue.IsArray() || inJsonValue.Size() != L) { - return; - } - for (auto i = 0; i < L; i++) { - JsonSerializer::JsonDeserialize(inJsonValue[i], outValue[i]); - } - } - }; -} - namespace Common { template struct BaseVec { @@ -665,7 +597,7 @@ namespace Common { { bool result = true; for (auto i = 0; i < L; i++) { - result = result && CompareNumber(this->data[i], rhs); + result = result && this->data[i] == rhs; } return result; } @@ -675,7 +607,7 @@ namespace Common { { bool result = true; for (auto i = 0; i < L; i++) { - result = result && CompareNumber(this->data[i], rhs.data[i]); + result = result && this->data[i] == rhs.data[i]; } return result; } @@ -817,21 +749,28 @@ namespace Common { } template - T Vec::Model() const + T Vec::Model() const requires FloatingPoint { - static_assert(FloatingPoint); return std::sqrt(ModelSquared()); } template T Vec::ModelSquared() const { - static_assert(FloatingPoint); return Internal::VecOps::Dot(*this, *this); } template - Vec Vec::Normalized() const + bool Vec::IsNormalized(T tolerance) const requires FloatingPoint + { + using EvaluationT = std::conditional_t, float, T>; + const EvaluationT modelSquared = static_cast(ModelSquared()); + const EvaluationT toleranceValue = std::abs(static_cast(tolerance)); + return std::isfinite(modelSquared) && std::abs(modelSquared - static_cast(1)) <= toleranceValue; + } + + template + Vec Vec::Normalized() const requires FloatingPoint { Vec result(*this); result.Normalize(); @@ -839,9 +778,8 @@ namespace Common { } template - bool Vec::TryNormalize(T tolerance) + bool Vec::TryNormalize(T tolerance) requires FloatingPoint { - static_assert(FloatingPoint); const T modelSquared = ModelSquared(); const double modelSquaredValue = static_cast(modelSquared); const double toleranceValue = static_cast(tolerance); @@ -855,7 +793,7 @@ namespace Common { } template - void Vec::Normalize() + void Vec::Normalize() requires FloatingPoint { const bool normalized = TryNormalize(); Assert(normalized); @@ -864,14 +802,12 @@ namespace Common { template T Vec::Dot(const Vec& rhs) const { - static_assert(FloatingPoint); return Internal::VecOps::Dot(*this, rhs); } template - typename Internal::VecCrossResultTraits::Type Vec::Cross(const Vec& rhs) const + typename Internal::VecCrossResultTraits::Type Vec::Cross(const Vec& rhs) const requires (FloatingPoint && (L == 2 || L == 3)) { - static_assert(FloatingPoint && L >= 2 && L <= 3); typename Internal::VecCrossResultTraits::Type result; if constexpr (L == 2) { result = this->x * rhs.y - this->y * rhs.x; @@ -882,4 +818,16 @@ namespace Common { } return result; } + + template + requires FloatingPoint + bool AlmostEqual(const Vec& lhs, const Vec& rhs, T absoluteTolerance, T relativeTolerance) + { + for (auto i = 0; i < L; i++) { + if (!AlmostEqual(lhs.data[i], rhs.data[i], absoluteTolerance, relativeTolerance)) { + return false; + } + } + return true; + } } diff --git a/Engine/Source/Common/Include/Common/Math/View.h b/Engine/Source/Common/Include/Common/Math/View.h index 17c4f79c..0f97f8b8 100644 --- a/Engine/Source/Common/Include/Common/Math/View.h +++ b/Engine/Source/Common/Include/Common/Math/View.h @@ -5,8 +5,6 @@ #pragma once #include -#include -#include namespace Common { template @@ -24,51 +22,13 @@ namespace Common { Mat GetViewMatrix() const; }; + template requires FloatingPoint bool AlmostEqual(const ViewTransform& lhs, const ViewTransform& rhs, T absoluteTolerance = DefaultTolerance(), T relativeTolerance = DefaultTolerance()); + using HViewTransform = ViewTransform; using FViewTransform = ViewTransform; using DViewTransform = ViewTransform; } -namespace Common { - template - struct Serializer> { - static constexpr size_t typeId - = HashUtils::StrCrc32("Common::ViewTransform") - + Serializer::typeId; - - static size_t Serialize(BinarySerializeStream& stream, const ViewTransform& value) - { - return Serializer>::Serialize(stream, value); - } - - static size_t Deserialize(BinaryDeserializeStream& stream, ViewTransform& value) - { - return Serializer>::Deserialize(stream, value); - } - }; - - template - struct StringConverter> { - static std::string ToString(const ViewTransform& inValue) - { - return StringConverter>::ToString(inValue); - } - }; - - template - struct JsonSerializer> { - static void JsonSerialize(rapidjson::Value& outJsonValue, rapidjson::Document::AllocatorType& inAllocator, const ViewTransform& inValue) - { - JsonSerializer>::JsonSerialize(outJsonValue, inAllocator, inValue); - } - - static void JsonDeserialize(const rapidjson::Value& inJsonValue, ViewTransform& outValue) - { - JsonSerializer>::JsonDeserialize(inJsonValue, outValue); - } - }; -} - namespace Common { template ViewTransform ViewTransform::LookAt(const Vec& inPosition, const Vec& inTargetPosition, const Vec& inUpDirection) @@ -95,23 +55,13 @@ namespace Common { } template - ViewTransform::ViewTransform(const ViewTransform& inOther) - : Transform(inOther) - { - } + ViewTransform::ViewTransform(const ViewTransform& inOther) = default; template - ViewTransform::ViewTransform(ViewTransform&& inOther) noexcept - : Transform(std::move(inOther)) - { - } + ViewTransform::ViewTransform(ViewTransform&& inOther) noexcept = default; template - ViewTransform& ViewTransform::operator=(const ViewTransform& inOther) - { - Transform::operator=(inOther); - return *this; - } + ViewTransform& ViewTransform::operator=(const ViewTransform& inOther) = default; template bool ViewTransform::operator==(const ViewTransform& inRhs) const @@ -130,12 +80,21 @@ namespace Common { // x+ -> from left to right // y+ -> from bottom to top // z+ -> from screen outer to inner - static Mat axisTransMat = Mat( - 0, 1, 0, 0, - 0, 0, 1, 0, - 1, 0, 0, 0, - 0, 0, 0, 1 - ); - return axisTransMat * this->GetTransformMatrixNoScale().Inverse(); + const Mat rotation = this->GetRotationMatrix(); + const T tx = this->translation.x; + const T ty = this->translation.y; + const T tz = this->translation.z; + return Mat( + rotation.At(0, 1), rotation.At(1, 1), rotation.At(2, 1), -(rotation.At(0, 1) * tx + rotation.At(1, 1) * ty + rotation.At(2, 1) * tz), + rotation.At(0, 2), rotation.At(1, 2), rotation.At(2, 2), -(rotation.At(0, 2) * tx + rotation.At(1, 2) * ty + rotation.At(2, 2) * tz), + rotation.At(0, 0), rotation.At(1, 0), rotation.At(2, 0), -(rotation.At(0, 0) * tx + rotation.At(1, 0) * ty + rotation.At(2, 0) * tz), + 0, 0, 0, 1); } -} \ No newline at end of file + + template + requires FloatingPoint + bool AlmostEqual(const ViewTransform& lhs, const ViewTransform& rhs, T absoluteTolerance, T relativeTolerance) + { + return AlmostEqual(static_cast&>(lhs), static_cast&>(rhs), absoluteTolerance, relativeTolerance); + } +} diff --git a/Engine/Source/Common/Src/Math/Color.cpp b/Engine/Source/Common/Src/Math/Color.cpp index f6bc5824..867f4d14 100644 --- a/Engine/Source/Common/Src/Math/Color.cpp +++ b/Engine/Source/Common/Src/Math/Color.cpp @@ -32,10 +32,7 @@ namespace Common { Color::Color(const Color& inOther) = default; - Color::Color(Color&& inOther) noexcept - : r(inOther.r), g(inOther.g), b(inOther.b), a(inOther.a) - { - } + Color::Color(Color&& inOther) noexcept = default; Color& Color::operator=(const Color& inOther) = default; @@ -92,34 +89,26 @@ namespace Common { CheckValid(); } - LinearColor::LinearColor(const LinearColor& inOther) - : r(inOther.r), g(inOther.g), b(inOther.b), a(inOther.a) - { - CheckValid(); - } + LinearColor::LinearColor(const LinearColor& inOther) = default; - LinearColor::LinearColor(LinearColor&& inOther) noexcept - : r(inOther.r), g(inOther.g), b(inOther.b), a(inOther.a) - { - CheckValid(); - } + LinearColor::LinearColor(LinearColor&& inOther) noexcept = default; - LinearColor& LinearColor::operator=(const LinearColor& inOther) + LinearColor& LinearColor::operator=(const LinearColor& inOther) = default; + + bool LinearColor::operator==(const LinearColor& inRhs) const { - r = inOther.r; - g = inOther.g; - b = inOther.b; - a = inOther.a; - CheckValid(); - return *this; + return r == inRhs.r + && g == inRhs.g + && b == inRhs.b + && a == inRhs.a; } - bool LinearColor::operator==(const LinearColor& inRhs) const + bool AlmostEqual(const LinearColor& lhs, const LinearColor& rhs, float absoluteTolerance, float relativeTolerance) { - return CompareNumber(r, inRhs.r) - && CompareNumber(g, inRhs.g) - && CompareNumber(b, inRhs.b) - && CompareNumber(a, inRhs.a); + return AlmostEqual(lhs.r, rhs.r, absoluteTolerance, relativeTolerance) + && AlmostEqual(lhs.g, rhs.g, absoluteTolerance, relativeTolerance) + && AlmostEqual(lhs.b, rhs.b, absoluteTolerance, relativeTolerance) + && AlmostEqual(lhs.a, rhs.a, absoluteTolerance, relativeTolerance); } Color LinearColor::ToColor() const diff --git a/Engine/Source/Common/Test/MathTest.cpp b/Engine/Source/Common/Test/MathTest.cpp index 734ba4c0..050d3cba 100644 --- a/Engine/Source/Common/Test/MathTest.cpp +++ b/Engine/Source/Common/Test/MathTest.cpp @@ -18,6 +18,7 @@ #include #include #include +#include #include using namespace Common; @@ -86,6 +87,11 @@ TEST(MathTest, HFloatComparisonTest) // NOLINT ASSERT_FALSE(a > b); ASSERT_TRUE(a != b); + const HFloat adjacent = 1.0009765625f; + ASSERT_FALSE(a == adjacent); + ASSERT_TRUE(AlmostEqual(a, adjacent)); + ASSERT_TRUE(AlmostEqual(HVec2(a, a), HVec2(adjacent, adjacent))); + ASSERT_TRUE((HFloat(1.0f) + HFloat(2.0f)) == 3.0f); ASSERT_TRUE((HFloat(6.0f) - HFloat(2.0f)) == 4.0f); ASSERT_TRUE((HFloat(2.0f) * HFloat(3.0f)) == 6.0f); @@ -339,6 +345,11 @@ TEST(MathTest, VecScalarCompareTest) ASSERT_TRUE(v0 == 2.0f); ASSERT_TRUE(v0 != 3.0f); ASSERT_FALSE(FVec3(1, 2, 3) == 1.0f); + + const FVec2 exact(1.0f, 2.0f); + const FVec2 adjacent(std::nextafter(1.0f, 2.0f), 2.0f); + ASSERT_FALSE(exact == adjacent); + ASSERT_TRUE(AlmostEqual(exact, adjacent)); } TEST(MathTest, VecCastToTest) @@ -415,6 +426,8 @@ TEST(MathTest, VecNormalizeTest) FVec3 tiny(1.0e-8f, 0.0f, 0.0f); ASSERT_FALSE(tiny.TryNormalize()); ASSERT_TRUE(tiny.TryNormalize(1.0e-9f)); + ASSERT_TRUE(tiny.IsNormalized()); + ASSERT_FALSE(FVec3(2, 0, 0).IsNormalized()); ASSERT_TRUE(tiny == FVec3Consts::unitX); } @@ -545,6 +558,12 @@ TEST(MathTest, MatSetTest) // NOLINT ); ASSERT_TRUE(v0.Row(0) == FVec4(2, 3, 4, 5)); ASSERT_TRUE(v0.Row(1) == FVec4(6, 7, 8, 9)); + + const FVec4 row0(10, 11, 12, 13); + const FVec4 row1(14, 15, 16, 17); + v0.SetRows(row0, row1); + ASSERT_TRUE(v0.Row(0) == row0); + ASSERT_TRUE(v0.Row(1) == row1); } TEST(MathTest, MatFromVecsTest) @@ -556,6 +575,12 @@ TEST(MathTest, MatFromVecsTest) const FMat2x3 m1 = FMat2x3::FromColVecs(FVec2(1, 4), FVec2(2, 5), FVec2(3, 6)); ASSERT_TRUE(m1.Col(0) == FVec2(1, 4)); ASSERT_TRUE(m1 == m0); + + const FVec3 row0(7, 8, 9); + const FVec3 row1(10, 11, 12); + const FMat2x3 m2 = FMat2x3::FromRowVecs(row0, row1); + ASSERT_TRUE(m2.Row(0) == row0); + ASSERT_TRUE(m2.Row(1) == row1); } TEST(MathTest, MatCastToTest) @@ -593,6 +618,9 @@ TEST(MathTest, MatMulTest) ASSERT_TRUE(m2.Row(2) == FVec2(178, 220)); ASSERT_TRUE(v2 == FVec3(30, 70, 110)); ASSERT_TRUE(v3 == FVec4(5, 11, 17, 23)); + + const IMat2x3 intMatrix(1, 2, 3, 4, 5, 6); + ASSERT_TRUE((intMatrix * IVec3(2, 3, 4)) == IVec2(20, 47)); } TEST(MathTest, MathTranposeTest) @@ -632,6 +660,7 @@ TEST(MathTest, MatrixDetInverseTest) const FMat2x2 im0 = m0.Inverse(); const FMat3x3 im1 = m1.Inverse(); const FMat4x4 im2 = m2.Inverse(); + const FMat4x4 uim2 = m2.InverseUnchecked(); const FMat2x2 inverse0( -4, 7, @@ -647,6 +676,7 @@ TEST(MathTest, MatrixDetInverseTest) ASSERT_TRUE(im0 == inverse0); ASSERT_TRUE(im1.Col(0) == col1); ASSERT_TRUE(im2.Col(0) == col2); + ASSERT_TRUE(uim2 == im2); } TEST(MathTest, MatCanInverseTest) @@ -698,14 +728,37 @@ TEST(MathTest, MatExtractionTest) 0, -2, 0, 7, 4, 0, 0, 5, 0, 0, 3, 3, - 7, 5, 3, 1 + 0, 0, 0, 1 }; const FTransform trans = FTransform(m); ASSERT_TRUE(trans.translation == FVec3(7.0f, 5.0f, 3.0f)); ASSERT_TRUE(trans.scale == FVec3(4.0f, 2.0f, 3.0f)); - ASSERT_TRUE(trans.rotation == FQuat(0.7071067f, .0f, .0f, .7071067f)); + ASSERT_TRUE(AlmostEqual(trans.rotation, FQuat(0.7071067f, .0f, .0f, .7071067f))); + + FVec3 translation(9.0f); + FQuat rotation(9.0f, 9.0f, 9.0f, 9.0f); + FVec3 scale(9.0f); + + FMat4x4 nonAffine = m; + nonAffine.At(3, 0) = 1.0f; + ASSERT_FALSE(nonAffine.TryDecomposeAffine(translation, rotation, scale)); + ASSERT_TRUE(translation == FVec3(9.0f)); + ASSERT_TRUE(rotation == FQuat(9.0f, 9.0f, 9.0f, 9.0f)); + ASSERT_TRUE(scale == FVec3(9.0f)); + + FMat4x4 shear = FMat4x4Consts::identity; + shear.At(0, 1) = 0.25f; + ASSERT_FALSE(shear.TryDecomposeAffine(translation, rotation, scale)); + + FMat4x4 zeroScale = FMat4x4Consts::identity; + zeroScale.At(1, 1) = 0.0f; + ASSERT_FALSE(zeroScale.TryDecomposeAffine(translation, rotation, scale)); + + FTransform unchanged(FQuatConsts::identity, FVec3(1, 2, 3)); + ASSERT_FALSE(FTransform::TryFromMatrix(nonAffine, unchanged)); + ASSERT_TRUE(unchanged == FTransform(FQuatConsts::identity, FVec3(1, 2, 3))); } // ==================================== Quaternion ==================================== @@ -795,6 +848,8 @@ TEST(MathTest, QuaternionPropertiesTest) FQuat normalized(2, 0, 0, 0); ASSERT_TRUE(normalized.TryNormalize()); ASSERT_TRUE(normalized == FQuatConsts::identity); + ASSERT_TRUE(normalized.IsNormalized()); + ASSERT_FALSE(FQuat(2, 0, 0, 0).IsNormalized()); const FQuat v2(2, 3, 4, 5); ASSERT_FLOAT_EQ(v0.Dot(v2), 1.0f * 2 + 2 * 3 + 3 * 4 + 4 * 5); @@ -804,13 +859,13 @@ TEST(MathTest, QuaternionRotationTest) { const FQuat v0(FVec3(0, 0, 1), 90); const FVec3 v0r0 = v0.RotateVector(FVec3(1, 0, 0)); - ASSERT_TRUE(v0r0 == FVec3(0, -1, 0)); + ASSERT_TRUE(AlmostEqual(v0r0, FVec3(0, -1, 0))); const FVec3 v0r1 = v0.RotateVector(FVec3(1, 1, 1)); - ASSERT_TRUE(v0r1 == FVec3(1, -1, 1)); + ASSERT_TRUE(AlmostEqual(v0r1, FVec3(1, -1, 1))); const FQuat v1(FVec3(1, 0, 0), 90); const FVec3 v1r0 = v1.RotateVector(FVec3(0, 1, 0)); - ASSERT_TRUE(v1r0 == FVec3(0, 0, -1)); + ASSERT_TRUE(AlmostEqual(v1r0, FVec3(0, 0, -1))); } TEST(MathTest, QuaternionRadianTest) @@ -822,17 +877,23 @@ TEST(MathTest, QuaternionRadianTest) const FQuat v2 = FQuat::FromEulerZYX(FRadian(0.0f), FRadian(0.0f), FRadian(pi / 2.0f)); const FQuat v3 = FQuat::FromEulerZYX(0.0f, 0.0f, 90.0f); ASSERT_TRUE(v2 == v3); + + const double preciseAngle = 90.000000001; + const DQuat precise(DVec3Consts::unitZ, preciseAngle); + const double halfRadian = preciseAngle * std::numbers::pi_v / 360.0; + EXPECT_NEAR(precise.w, std::cos(halfRadian), 1.0e-15); + EXPECT_NEAR(precise.z, std::sin(halfRadian), 1.0e-15); } TEST(MathTest, EulerRotationTest) { const FQuat v0 = FQuat::FromEulerZYX(0, 0, 90); const FVec3 v0r0 = v0.RotateVector(FVec3(1, 0, 0)); - ASSERT_TRUE(v0r0 == FVec3(0, -1, 0)); + ASSERT_TRUE(AlmostEqual(v0r0, FVec3(0, -1, 0))); const FQuat v1 = FQuat::FromEulerZYX(90, 0, 90); const FVec3 v1r0 = v1.RotateVector(FVec3(1, 0, 0)); - ASSERT_TRUE(v1r0 == FVec3(0, 0, 1)); + ASSERT_TRUE(AlmostEqual(v1r0, FVec3(0, 0, 1))); ASSERT_TRUE(FQuatConsts::identity == FQuat::FromEulerZYX(0, 0, 0)); } @@ -862,11 +923,19 @@ TEST(MathTest, QuaternionToRotationMatrixTest) const FMat4x4 v0 = FQuat(FVec3Consts::unitZ, 90).GetRotationMatrix(); const FVec3 v0r0 = applyRotationMatrix(v0, FVec3(1, 0, 0)); - ASSERT_TRUE(v0r0 == FVec3(0, -1, 0)); + ASSERT_TRUE(AlmostEqual(v0r0, FVec3(0, -1, 0))); const FMat4x4 v1 = (FQuat(FVec3Consts::unitZ, 90) * FQuat(FVec3Consts::unitY, 180)).GetRotationMatrix(); const FVec3 v1r0 = applyRotationMatrix(v1, FVec3(0, 1, 0)); - ASSERT_TRUE(v1r0 == FVec3(-1, 0, 0)); + ASSERT_TRUE(AlmostEqual(v1r0, FVec3(-1, 0, 0))); + + const FQuat nonNormalized(2, 3, 4, 5); + const FVec3 input(1, -2, 3); + const FVec3 matrixResult = applyRotationMatrix(nonNormalized.GetRotationMatrix(), input); + const FVec3 directResult = nonNormalized.RotateVector(input); + EXPECT_NEAR(directResult.x, matrixResult.x, 1.0e-5f); + EXPECT_NEAR(directResult.y, matrixResult.y, 1.0e-5f); + EXPECT_NEAR(directResult.z, matrixResult.z, 1.0e-5f); } TEST(MathTest, QuatConstsTest) @@ -892,7 +961,7 @@ TEST(MathTest, TransformTest) FTransform v0(FVec3(2, 2, 2), FQuat(FVec3Consts::unitZ, 90), FVec3(5, 0, 0)); FVec3 v0r0 = v0.TransformPosition(x); - ASSERT_TRUE(v0r0 == FVec3(5, -2, 0)); + ASSERT_TRUE(AlmostEqual(v0r0, FVec3(5, -2, 0))); FTransform v1(FQuat::FromEulerZYX(90, 0, 90), FVec3(0, 0, 0)); FTransform v2(FQuat::FromEulerZYX(0, 90, 90), FVec3(0, 0, 0)); @@ -901,10 +970,10 @@ TEST(MathTest, TransformTest) FVec3 v2y = v2.TransformPosition(y); FVec3 v3x = v3.TransformPosition(x); FVec3 v3z = v3.TransformPosition(z); - ASSERT_TRUE(v1x == FVec3(0, 0, 1)); - ASSERT_TRUE(v2y == FVec3(0, 0, 1)); - ASSERT_TRUE(v3x == FVec3(0, 1, 0)); - ASSERT_TRUE(v3z == FVec3(-1, 0, 0)); + ASSERT_TRUE(AlmostEqual(v1x, FVec3(0, 0, 1))); + ASSERT_TRUE(AlmostEqual(v2y, FVec3(0, 0, 1))); + ASSERT_TRUE(AlmostEqual(v3x, FVec3(0, 1, 0))); + ASSERT_TRUE(AlmostEqual(v3z, FVec3(-1, 0, 0))); // In general, quaternion from eular angle performs z-axis rotation first, then y-axis, and last z-axis } @@ -958,6 +1027,20 @@ TEST(MathTest, TransformMatrixTest) const FVec4 p1 = (v0.GetTransformMatrixNoScale() * FVec4(1, 1, 1, 1)); const FVec3 p1Xyz = p1.SubVec<0, 1, 2>(); ASSERT_TRUE(p1Xyz == FVec3(6, 7, 8)); + + const FTransform complex(FVec3(2, 3, 4), FQuat::FromEulerZYX(20, -35, 70), FVec3(5, -6, 7)); + const FMat4x4 composed = complex.GetTranslationMatrix() * complex.GetRotationMatrix() * complex.GetScaleMatrix(); + const FMat4x4 direct = complex.GetTransformMatrix(); + for (auto i = 0; i < 16; i++) { + EXPECT_NEAR(direct[i], composed[i], 1.0e-5f); + } + + const FVec3 input(3, -2, 1); + const FVec4 matrixPosition = direct * FVec4(input.x, input.y, input.z, 1); + const FVec3 directPosition = complex.TransformPosition(input); + EXPECT_NEAR(directPosition.x, matrixPosition.x, 1.0e-5f); + EXPECT_NEAR(directPosition.y, matrixPosition.y, 1.0e-5f); + EXPECT_NEAR(directPosition.z, matrixPosition.z, 1.0e-5f); } TEST(MathTest, TransformPositionVec4Test) @@ -965,6 +1048,9 @@ TEST(MathTest, TransformPositionVec4Test) const FTransform v0(FVec3(2, 2, 2), FQuatConsts::identity, FVec3(1, 1, 1)); const FVec4 p0 = v0.TransformPosition(FVec4(1, 1, 1, 1)); ASSERT_TRUE(p0 == FVec4(3, 3, 3, 1)); + + const FVec4 direction = v0.TransformPosition(FVec4(1, 1, 1, 0)); + ASSERT_TRUE(direction == FVec4(2, 2, 2, 0)); } TEST(MathTest, TransformLookAtTest) @@ -988,7 +1074,7 @@ TEST(MathTest, TransformLookAtTest) v3.LookTo(FVec3(1, 1, 0)); const FMat4x4 r3 = v3.GetRotationMatrix(); const float invSqrt2 = std::sqrt(0.5f); - ASSERT_TRUE((r3 * FVec4(1, 0, 0, 0)) == FVec4(invSqrt2, invSqrt2, 0, 0)); + ASSERT_TRUE(AlmostEqual(r3 * FVec4(1, 0, 0, 0), FVec4(invSqrt2, invSqrt2, 0, 0))); ASSERT_TRUE((r3 * FVec4(0, 0, 1, 0)) == FVec4(0, 0, 1, 0)); FTransform invalidLook(FQuatConsts::identity, FVec3(1, 2, 3)); @@ -1110,6 +1196,13 @@ TEST(MathTest, SphereGeometryTest) ASSERT_FLOAT_EQ(v0.Distance(v1), 3.0f); ASSERT_FALSE(v0.Inside(FVec3(2, 0, 0))); ASSERT_TRUE(v0.Inside(FVec3(0.5f, 0, 0))); + ASSERT_TRUE(v0.Inside(FVec3(1, 0, 0))); + ASSERT_TRUE(v0.Intersect(FSphere(FVec3(3, 0, 0), 2.0f))); + ASSERT_FALSE(FSphere(FVec3Consts::zero, -1.0f).Inside(FVec3Consts::zero)); + + const ISphere integerSphere(IVec3Consts::zero, 3); + ASSERT_TRUE(integerSphere.Inside(IVec3(1, 2, 2))); + ASSERT_FALSE(integerSphere.Inside(IVec3(1, 2, 3))); const FSphere v2(FVec3(1, 2, 3), 1.0f); const DSphere v3 = v2.CastTo(); @@ -1152,6 +1245,16 @@ TEST(MathTest, ViewMatrixTest) const FViewTransform v1 = FViewTransform::LookAt(FVec3(3, 4, 5), FVec3(0, 0, 0), FVec3Consts::unitZ); const FMat4x4 vm1 = v1.GetViewMatrix(); + const FMat4x4 axisTransform( + 0, 1, 0, 0, + 0, 0, 1, 0, + 1, 0, 0, 0, + 0, 0, 0, 1); + const FMat4x4 genericView = axisTransform * v1.GetTransformMatrixNoScale().InverseUnchecked(); + for (auto i = 0; i < 16; i++) { + EXPECT_NEAR(vm1[i], genericView[i], 1.0e-5f); + } + const FVec4 camInView = vm1 * FVec4(3, 4, 5, 1); ASSERT_NEAR(camInView.x, 0.0f, 1e-4f); ASSERT_NEAR(camInView.y, 0.0f, 1e-4f); diff --git a/Engine/Source/RHI-DirectX12/Src/Buffer.cpp b/Engine/Source/RHI-DirectX12/Src/Buffer.cpp index 93b0b399..b9afe4fd 100644 --- a/Engine/Source/RHI-DirectX12/Src/Buffer.cpp +++ b/Engine/Source/RHI-DirectX12/Src/Buffer.cpp @@ -7,6 +7,7 @@ #include +#include #include #include #include @@ -131,4 +132,4 @@ namespace RHI::DirectX12 { } #endif } -} \ No newline at end of file +} diff --git a/Engine/Source/RHI-DirectX12/Src/Pipeline.cpp b/Engine/Source/RHI-DirectX12/Src/Pipeline.cpp index cee31a71..1e0ef56e 100644 --- a/Engine/Source/RHI-DirectX12/Src/Pipeline.cpp +++ b/Engine/Source/RHI-DirectX12/Src/Pipeline.cpp @@ -5,6 +5,7 @@ #include #include +#include #include #include #include diff --git a/Engine/Source/RHI-DirectX12/Src/PipelineLayout.cpp b/Engine/Source/RHI-DirectX12/Src/PipelineLayout.cpp index 48feb40d..7c2e3bfd 100644 --- a/Engine/Source/RHI-DirectX12/Src/PipelineLayout.cpp +++ b/Engine/Source/RHI-DirectX12/Src/PipelineLayout.cpp @@ -7,6 +7,8 @@ #include +#include +#include #include #include #include diff --git a/Engine/Source/RHI-DirectX12/Src/Texture.cpp b/Engine/Source/RHI-DirectX12/Src/Texture.cpp index 0b96994f..ca61de5d 100644 --- a/Engine/Source/RHI-DirectX12/Src/Texture.cpp +++ b/Engine/Source/RHI-DirectX12/Src/Texture.cpp @@ -4,6 +4,7 @@ #include +#include #include #include #include diff --git a/Engine/Source/Render/Include/Render/Shader.h b/Engine/Source/Render/Include/Render/Shader.h index bf5213a4..9c4d7737 100644 --- a/Engine/Source/Render/Include/Render/Shader.h +++ b/Engine/Source/Render/Include/Render/Shader.h @@ -10,6 +10,7 @@ #include #include +#include #include #define ShaderTypeInfo(inClass, inStage, inSourceFile, inEntryPoint) \ diff --git a/Engine/Source/Render/Src/RenderCache.cpp b/Engine/Source/Render/Src/RenderCache.cpp index 6e82a5f3..6c3e3be5 100644 --- a/Engine/Source/Render/Src/RenderCache.cpp +++ b/Engine/Source/Render/Src/RenderCache.cpp @@ -7,6 +7,7 @@ #include #include +#include #include #include #include diff --git a/Engine/Source/Render/Src/Shader.cpp b/Engine/Source/Render/Src/Shader.cpp index 9053c253..9956aa43 100644 --- a/Engine/Source/Render/Src/Shader.cpp +++ b/Engine/Source/Render/Src/Shader.cpp @@ -6,6 +6,9 @@ #include #include +#include +#include +#include #include #include diff --git a/Engine/Source/Render/Src/ShaderCompiler.cpp b/Engine/Source/Render/Src/ShaderCompiler.cpp index 49df3ac2..abe08b64 100644 --- a/Engine/Source/Render/Src/ShaderCompiler.cpp +++ b/Engine/Source/Render/Src/ShaderCompiler.cpp @@ -32,6 +32,8 @@ using namespace Microsoft::WRL; #include #include #include +#include +#include #include #include #include diff --git a/Engine/Source/Runtime/Include/Runtime/Asset/Material.h b/Engine/Source/Runtime/Include/Runtime/Asset/Material.h index 31aba53e..12509178 100644 --- a/Engine/Source/Runtime/Include/Runtime/Asset/Material.h +++ b/Engine/Source/Runtime/Include/Runtime/Asset/Material.h @@ -6,8 +6,7 @@ #include -#include -#include +#include #include #include #include diff --git a/Engine/Source/Runtime/Include/Runtime/Asset/Mesh.h b/Engine/Source/Runtime/Include/Runtime/Asset/Mesh.h index 85e90d55..f14dbd3b 100644 --- a/Engine/Source/Runtime/Include/Runtime/Asset/Mesh.h +++ b/Engine/Source/Runtime/Include/Runtime/Asset/Mesh.h @@ -4,7 +4,7 @@ #pragma once -#include +#include #include #include #include diff --git a/Engine/Source/Runtime/Include/Runtime/Component/Light.h b/Engine/Source/Runtime/Include/Runtime/Component/Light.h index 337b78be..5f0e24a6 100644 --- a/Engine/Source/Runtime/Include/Runtime/Component/Light.h +++ b/Engine/Source/Runtime/Include/Runtime/Component/Light.h @@ -4,7 +4,7 @@ #pragma once -#include +#include #include #include diff --git a/Engine/Source/Runtime/Include/Runtime/Component/Transform.h b/Engine/Source/Runtime/Include/Runtime/Component/Transform.h index f1506319..0c844cbc 100644 --- a/Engine/Source/Runtime/Include/Runtime/Component/Transform.h +++ b/Engine/Source/Runtime/Include/Runtime/Component/Transform.h @@ -4,7 +4,7 @@ #pragma once -#include +#include #include #include #include diff --git a/Sample/Base/Application.cpp b/Sample/Base/Application.cpp index 06285f7a..eff6e22b 100644 --- a/Sample/Base/Application.cpp +++ b/Sample/Base/Application.cpp @@ -6,6 +6,7 @@ #include #include +#include #include #include #include From 681d1df70c92aca54d41121fad6832681b598eb0 Mon Sep 17 00:00:00 2001 From: kindem Date: Sun, 19 Jul 2026 11:02:56 +0800 Subject: [PATCH 6/6] fix: include cstring for render buffer copies --- Engine/Source/Render/Src/MeshRenderData.cpp | 4 +++- Engine/Source/Render/Src/RenderGraph.cpp | 5 +++-- 2 files changed, 6 insertions(+), 3 deletions(-) diff --git a/Engine/Source/Render/Src/MeshRenderData.cpp b/Engine/Source/Render/Src/MeshRenderData.cpp index 3f7f30ba..527fc1db 100644 --- a/Engine/Source/Render/Src/MeshRenderData.cpp +++ b/Engine/Source/Render/Src/MeshRenderData.cpp @@ -2,6 +2,8 @@ // Created by johnk on 2026/7/5. // +#include + #include namespace Render::Internal { @@ -16,7 +18,7 @@ namespace Render::Internal { Common::UniquePtr result = inDevice.CreateBuffer(createInfo); Assert(result.Valid()); auto* data = result->Map(RHI::MapMode::write, 0, inSize); - memcpy(data, inData, inSize); + std::memcpy(data, inData, inSize); result->Unmap(); return result; } diff --git a/Engine/Source/Render/Src/RenderGraph.cpp b/Engine/Source/Render/Src/RenderGraph.cpp index 6083d13a..cd64bd46 100644 --- a/Engine/Source/Render/Src/RenderGraph.cpp +++ b/Engine/Source/Render/Src/RenderGraph.cpp @@ -2,6 +2,7 @@ // Created by johnk on 2023/11/28. // +#include #include #include @@ -349,7 +350,7 @@ namespace Render { if (inCopy) { auto& [data] = src.emplace(); data.resize(inSize); - memcpy(data.data(), inData, inSize); + std::memcpy(data.data(), inData, inSize); } else { src.emplace(inData, inSize); } @@ -888,7 +889,7 @@ namespace Render { Assert(srcDataPtr != nullptr && srcDataSize > 0); const auto* src = srcDataPtr + uploadInfo.srcOffset; // NOLINT auto* dst = rhiBuffer->Map(RHI::MapMode::write, uploadInfo.dstOffset, srcDataSize); - memcpy(dst, src, srcDataSize); + std::memcpy(dst, src, srcDataSize); rhiBuffer->Unmap(); })); }

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 z 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 xd1YcI)A#WS<7CR9CN5z8$-t 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%0A3Sv}h<04HWAdOt?T4 zNYBxLE+??Eg4BVP`sL!B)t&P>RJ@uqm9>O)o!qe?p9Cs+!Hg#JFK$Di1#r@5oC-ko z0Pc{n@BmFwnwqiL3aCjKs#aay6)cj<6ktJJqo8zE9Ag(*+%4FT{GPV?x)xw{S+0j0 zEvf;P6=kkrR${EAsB*xJPb-u2ubu?Xz0KVNoXeLR=$Z{zVz%fzkoidO&DZ>ei zy!D}$)eDTciYla-98i>quEuKFz-sh+4Df!BSgN|dg3QAeu^RBWn=#7$iDk3QRyEV! zs>u}LVbt0dj~1UTQz52YV`!N}mx*Ydi_y~DL0Toe$rWT4uh3seq!+I(((gblqR2tL z(zX_1%{1{5>$zke4d4j;EeU>hCy=e_Cl&N+XhM2BYlqf?-dLh_1-ow5)vG`h-RlV_&FR(XbztqD;GrLJyT?E|1|xN1 z=LaVn3)_e+de(On2_}FeNE$WO(m-C4h{Yn$;!Wg1?A<92axe&mM-Yy+7w90I5Q4$z z9OR4yMT{QlX^i#xDGqBYc6n=^_b^OUni?a%yG1WC#{;t$u1Z{#W5(Tv=Rqt2mvelb zyQh6{e_OIW-s9Qr-W#!#4o<^1T!cT}7TS-ig)tAEbOU=oe?{M(W~evOVJa6A^9^2?UaGmJb|(MAFl*JE`ak-iBVn0`|zv!m^d zO-r)rGDc*2mh~*>gZ(H<@!B_F+}ImJS@|H?AubLch#RqzSnHvc9{pE2)113(X`a?X z=?v1vgAhLCRO~^_wie?@81t4c%ftVJ>w{|8UWG#CZ{Tj9H-xlrmDAZJo6czC-jdw% z9-xzhHQ%imhzsAu54tG?MJ){7Wb*HG7j(A2@E7vwBkWex;A`~$t^Y<1{#7sk_j)Bh zke$xX{)^lj|II(07PEfy@_)K-xB)Lm$8>#F)EAR_kX#~NBmJ$7Hu8k@T?z4dd{yxL zKAJc6zM6(cBvWv77~USM{^*1UtSeX0VaAd+EA&ff{iJ)MPc|(`0c_-abq?Nxhn+lL zJG&JY1W8R-fKP*D>K#j7Q=p0xbRW)up}#;3pCzCORlQQlHn|R4J|s_8KlSIIfgbFx z&}>0*UJ{e7UPz^|&=JXObE_t)oO3p5l3n^8#kq7`O^>J40CE?Ns;eUkUx%DO|&pz&(N5mBW(0 zORl2@^XEjZSXigL48-cx%#0(}kgAdRh^5k`aOugp#kN>14QZxl^xB?D0q$p(N}+=Z z$Jq2#YBTC_R7$1pZL(*I#_{g0RVCyr;j$!|WH&&y4Y zSmuiq0UKS4+*UJ?G~jYmBr-XUSZhxcv>UWyTQIkKEHZzpHL|68i3QauZ`(e4YzSO~ z<9Y1US^Nk^|CO)+Ao!y((}-05@3E#9G>Q2C;-*0AM|b1nj&8n^%U#WK?8xN*-$W?g zK#v5}O4YDFckCGmaDehS#8kZYajpkEhklm{s;T^oQ}%S)tY;d;$pudRW#K{*=?OgL zfT$fmke!gFba7IWDYVKHV#wy@rY?+Lf}e6`29E7VdwN*IwilJs6X3rQh2YplNewQ^ zzuXGMC@BS_&>(Y|9Jdl=#oKiDZ>e+|>SR6^k5jC@xauVM|B&h3l^`qmHiTSx%7Gq% zERKckRuifQJ*OS2jlJ2}kv@-|PApm!w3G_-sBBa&>S8s4RPQ8_Qs-`6Be@3G?Ky-|CxMYxWjvxOD#V+jWOgMkZC2 zod!^syW)LD3D(-fOZeQ!o=~M`p&SqAQTmR(GIGzG!d2H5n4ld5zu$WQ$a=ad6 zM+w2ab2=y1CX%0J@)D{qr47N+`acaT*qvc;Q8U6D}HZsGQs{+}$p@h{rqw}Ge@^S?B=HyYsiT0+|3Gc>uU{Mq&;eWum z=D7+(@OifZ32KFOx^%I0wR96|G42OyqXd_i$b}@=86k|pCDut8O^!4`_)Xzr0eO}w zz`o}Yk&`<|McyfnL)N6qeQ+I}ng^q(Y`dQuGn@}0qpN-FN2G}&{bNmZ?$Xg5tx(1X zxl$903`2XhR%zqQaBWq;5e4iKb_P{58#T+(#KLe;O+?sfMkQ(()`QV3`(Q4a=q}Sf zR2CrF1b(AmBGDy54qEF4c;sGpe2EkCEM5N*dH0Yy^B?8zM3O)jbU+8hqedcHo}*R_ z+)g4=F|7v;L)N24|EgLfp@xiXHfyQ@HBqf71jP_|H4+{x>XiZ2`dV&u>D&lk4J0xd zD&c7Z72tO9HgN0KvsgR!)EJ_jAZSO#mn+gz=~SST2!tCc1y3w|sRYkuX9Ne!^RJFcSZ(6CpL!)O~_i7vT~)~478+9mq!_N$ZI-SS{5OAgoa(P)Jr7TN{d0s`ArN+$xdK zS{74MwUQDa`?8x{`O#1hk{b~?XL2~G$F;V$crX?X)fmIin3jrU^Yn#cs?4I1r;qW@ z-t0P>p3r7hvUxDEYD!C_kY22$atif*cvjPJAuS$BCo`E8(>284^DLlu7o&QbjokYX zyZ)LLOQSI*Y~~^(qdPCZ_g3^vh*%$d=w2g&U$@@7YPneorp=SrT_Gs1qou~jU`im9 z0Z_9Mk5!CnHFusY^Pm0Ykz`bDsYMk{ZY{m@m~PDaqKK~XTsiW2MiFuCkrtt<;d0bX zeH0yh9w)@X=?O4R2_VA*$3TE~LgdU*pwEx_$?1rSLw@V*D2XaeM2fJ+43U-Nzx=}y z(1~G22|PU&P2F_Fgp$&T?$W^-AQi9olGoi4#v1oA)ug%7N#J|iK|42~6WIHko#`iH zVNJwg@VTN>$bs`@Y)_T|?n_lqc?A){t2K*he8Uo2`ov*fap2TDY(@c}juScj`k0#ozg1wfi`I5FypB2Pb$Jya!=zws8Dz`6>e+z*NzP^u|`1JxwLLohR6 zdK{;?R@mplR%aI_Y9Z@s4uZ+rfs1^bcki)%%EQcln>VDw;e>@=P04VAy_l$uy&%3j zw@D;PexA#PlGF>kM0AMs*D4KzzuK0GDDi3H4LVglgxOf`iMvcnoD?GN%Pfp0{gbMcEgu zoyH)ybTSU?GTa~D8IF2vHR5g6#`&&(^oP&$x`Y zmzlkOQ5!b1`p_$8>wsjAmDZvSVd1;8F@vepkEu+_h60+I$u4$%)^_c^ysNzd;%O=B z=%KJ>R%6AgjX2j_xSe>f_4K04&LC>5jI5{fLF=Cy?K;rDqQw?$+|a$ayF15gD6^d% zN;OZOA~pCQI1tj1c%J+|dfQ`{pePXkqyA@-k_V1$LTZ(|QD?MH+QxOPJ<_|RkKjE6 zc$2dnM`n3v0m^AbRjZAl0V@y9{NNwTHu1mR2m^30Y$MVB2F;HnEXMKT&Vh~LSMYH= zkgH3a?BRhkVu56}98f!RcuXiZZzl?SJ1oFcVrL8x1Kr5Bda<2O7(7ZLXX{@$Bjke#MPf`~>^ZI1|!~Tm} z4}#cVqER2<;EWNKI}oksP7hk*dMuo85aN(rL7BAh96@{reGvaXw%CB{M`T@M zTKmTR5Cjo@J1p2!f-wAG(AN+Hx(1H_7mdZ#u*TFggi8}$mWYOuaK}VLsbJMQADArH z5Uxk)HR0-~(L^SlMSBBPVUf6&t|l`1i_3+C22_)PiYboD)$?fjooD8s$klP>oC#+u zLjy{^m68W(>7a?QNANYa)6wihpuR^Oe;mlv&Q0!V>%dAZLVYJ|!D^zDScK7$h_d&F zYKgD%wisAiFSg_WB8zSsswPK+ky@)3iO((WG9$H;7Lh@@wwMP<0dJj*P+`DH-ADxk*xDF%hv8FJqCPx?e|{_HDV@@MiEvLOe}iq`6a$&0xQ|fj zWk4PqPH|tQ0>owS-TO@HO%w3pfHe?31Zl^Yze8Q;A@sB7OJ@62anp7QbKzZr_^^dA zyrE}6a?9yxJ!U;vCM*xfO|e&q-`Z;fweS zS_E)Md04@Ta2Jpf(A4N`)^{SbeV^#WtLE=JFMkfYD`D$T5^snzr}%$jtihcqzTQm- znrt3()8X#&+R3(BztT~d2#5)^=wo+~nm0}~kiKUgX1hwUI4V>)NW5J<%jNQIm@B=I zU1X=YmV^owbSZ`0@E=!Ap>LsA31S=gOD=r7#G5kU;m6bz!CE_9Fju(d%WA$A&5_{L&vQvq}P)i_64aukLLHZ z0XoIj9sGjCo8G57mFB!69h^cGt8?6TDpv3GB?HR$fI|(@)FweQ_N>SCuz>7~1+)v? z9slqPeh3FU0M%`%Ss(FKayXD8g>Ku_j#6wqK-e0#bPBo8XCWY z+?>RC;IY>AoQUw#2_@Nf&|DC}A&SBs(*KLsmp{xCOdk%ZKwULVsz667KZeg0>X(s7 zpkqrQ7NL*d4Z0^?trNNc;o*vC?cIp?_@#r-59AjKezoB6JoW^*ElH}<+rbMzNCE>3 zLTSVnPs3dH@6Cf8S0h=`P2+jI7xRz{qcY`jmxEt56>+qM6}}?S$#%LG+*)DmVL=ad zeBOc#loeNHKR#EZ!?T1QN2o+z?bBzp_}s`oRoZ*|juTVf?kpCrz1Q8&u62Ju zVRugBZO^n>zGh@HArfKAgFc5upe+-2qQJ+K5W9AJcQoMQRCvcOD2ScV z`Gw1X5-TAfd2~Aiq2RbAhWoKi?Ugyu*?b$kE7y!&1Kr0tau85lZW4>)&3J*=!o2~- z3+%ZJuj!B1(rSG1ZKqg2riOy+6A=@Q{2oFhKVW*IJ}r;itL+a~jYHfr!ji2EM-q=F zYDPHmSfWZ8uuy#7EsyYT?#Ij&n8=?;7rO6CKb8Ii67i51$?E zi^ck;J|OTs=RiM!31w4~*FJ{CbjX7{4}#urk3BMXucJ``5ngVnSLP5-XtPWXF;FUW zG?81;35Esgge3v~L>B{F@+&!z1dzzW(d9Fel&j6O(uEEvSSqcCQ3>u;0co8x)tvxH zNtmtJoUWB*EUg#a+yuu}pHC8kU^1P|_Zn@%oxxZeE#va6_F^KZ#o}7AltghC?<-s} z^J_a7X&A0mVbKuITZ7>Pd>zY^lt`i0PC`1v=e}X@aFo z641Os=j3Cjex{ToPFV66@*YmYgZf$M0iX!(Vn6D}UT#hla&16SlVpQVBD#Irp3id% z%ft1D`HV+jbc4htI0RnSxE|Q|UD4yhr%Kg-_hE^=+I&``*NTk{T;ync!=A=vs!< zAq~Knxr3(PniohAMJ4jd;s22Cm z0l{!M0I_|Fp7*BVOT^;=FOxJg`JSduk58`#AaV*af*(dg#k?ptPK#vCpfXBL50#~I z;&jiH|2MM~7!6Qf)>0)I4K~X0T1rhAS%t|3*kyY$Foxuo!cV}qnh<&|g*I%bWJ;Tl zjBu1V6C1lkph*Os*i&`8@tmC;G13Mu7D*77sNh07kRF;aFEA_TxHmP1M9m!{FEe_9 znULS=xrsssP?dn0*X49o=ib1~l8~Y%GEwUp?!#y8QNyww^SMCEWObxvCCSTHV(+gn z$?z05y_%MFox&EG$Gor3;egh^h3B+@|0F5Zbxz(K0&&t}d$TK^U```$r#jC;Epx(@ zN(!H8zT2p1ZG5FoGnR;x%4R}s3m_^LR|9Qo1=8D(bGA%6+qOmtiFL2EA2jYY;C+Bp zpx4Rp=!A_A;v)Yu+O#`>bRZk_Gw0ZJp5lKrgY%^i+c*GOPJ&*7&iP2tc74}4W`Gws zS?ST&m?=P%lI){kjU;cEn=4X?!d`i6O0j!p+jftV;^LR3Q&XL>|l= zcg64Tje_09k|`1bcrJJ-a5R44OfK^#^ffzO5^-6lhc|hGy&T0a$h?l>l#?`t#wNs7 zd_s;CG}=mxD(KVMn-Y~W)qP%2=w6($3Bd?i=-Q_9y(_AB<&d8*Oz1~9uJNDs5=}aW z_icTr&}+i6kCzC9+M51B0v!0D{!5eI9X>CqS@_{SpIs;Bn%$t%`jc37052iz_y&xK zE_oi4?<(xUMjGy7AxB3*Us%J&4qd;G$nHM9ewRyFB#_VMclt5Zw)eW{%R_FmmHP|K zu?ZLpwT9{joc?tk$g((FqMWI>N%u$}L)F07$N4v4sJS`6$PVsopeHg#*5Tm9C&q`Q z*2}KYgM!Www}UM&OgysZk$=o3Pp+9$&M};Yl1?f;zO?%_eU1U}8X?YVly(k|;q$SQ zdM-*Dcx2P3?CkTtL0RXqBV z?ug?PUYs|-Pu~d(#@bhLeBXFS8fSdQbqP3bpw#)FKbg%Qjv`~ZH4ti)N7k}UXX3=- zQ`^orfzM^0xrwbEDK|oB^qf+n!?V%lJ9Em(7i>k8Gl7VfQSV5fcIN8UptAc)856SKcug9Zp)_*gZvpKsDlENqIrEBdtZU2IB^{IH@PF_g{KJ zc{g+<>Ib(J`tW72_3r_0_h*o6hgc?jHg0atlzrgHsB&V_!sv&wPQ=CSIh2=>gWQ2V z6*eBho)X!02rmNn8BnMI;N74?s$OYoQ7B^J`Vtg!Z#JpHZnqiU4p2bgzv)J! zuUm&304drvw*1;Ry`~mIbKy{K{W%-D8E=OD!jd;#xl~)d7}$o<#H_i2u65_kf*~Jy z?ZEbWNDUI;Np2bOiR5hJ2hfJ@fUeL~7r0JjPS|qOf>&?t2N70B)^(VrQ1ZW1=UjGX zLN%&oH8f|iCrl~sH+IhrFFx;r8XVT>h%;|)S972GX3##|U~LgB)LxS03S~;;jV7cH#|G z)xe7yoEAs;*3CY#WW#|AJaFJrnD(myBXuM zA-V_aDP4Z+g2DWGZ@HzPL*rJrZ5=i0om9kP{ciZ?>(<8x26+)ny&j&waZ3mEcMUzo z^v}}cepavFUpf8sGW8nDj%IPm-{$i9EbYp2(A^mB7h7pDg2%>V)Uat&76;L09E1(! z(@(GP*h+2*o%&H8ZF!I$`?DeK-vyHb%@I#}4nFb$+fJvRZ)d_zzgBuHIxS1UN`ng! znM)+X8eW?#rDb!f&||5%4St=DQMp$RBAcnh7t-!!*hW19;LB3IrjfVrWwW@+6V@jf zW@0x%%@%}QTz<|p)Hwmn^MtCPIIQ0&tD6WTl$PrwTAa0qfj_TA!qzj18p~)EglQw> zw8%!Rhm1J8*38OX=oX)mXUi?CV6<3!q9}mFZghc5SZ`F5=66lxC1F{zs1j;XRWK5; zheOpxs}?${Mm@h*?jv3m?%+ub0~qTT45eYHTMXmYfPp*$a68k4kyB>dr_Zc&`4?AFR}fW*-QrZ zQKlO$UmGaFy<#H845VQuPnZ|weSxw$b_u_Z{5~^j-C-uxP5dS{2TH{635Vu6UdLfb zl&?F&F_tgn7|ZXF?v*|XZSq@__(~=ZXikdQ4?%F4=n-5NGXrQtE|Mlc_i2~VKV1FN zRzH=yo3a=a%61@*0}pm^(!K{5`vJS9R%p!DtK8&t>*?u-a-CXtIvgAL_D&ks*IQ0H z^`sW!`SC_qBMwO*U*Jg~rWD-$#O5i{gCoY!N`0Pt`p7&}aZt?uf57u@kiT*qFx~F>n9n3}H25J^LY*Q1YOSe##Hq zZI`gmYzh4fWG)>U@b;agtK6xNgES@;heOBmm`T_wx_zNM(6>0rfevW)P?-R{R&y)sV2Z2|G5%ia-G;G?=qNrCzJGL2)9*{`%Cz2L=q+TD=EB$F*%7 zJ7?N!&BD5me(IVeh!A za3a?_p$z-tao&<{ux#7P^N;HDEyEe?T4s1H+?w|p>QIl|P=C&8JoaQf*0*lcnr^jL zg{m2d7xe1rqI{G9fqyJ`>6?-(dJ;7=oM@Y;Yn5vJth~uHgBF0He5Cq2R`jq)f=pU(YA+rStEF&+5s((~79%sfAJt>p&lUFf2qT(QeIHe8VM6qg~y^?%=U4)8DerzPI}QcP$`O zY0g#G4@PpSNOTQ1k}e{{>lMgI>&fcr{$=Qig2I$SdyAYyBQSJ{)m0r~mME5J6{}xJ z>cbBGJ@e;Ibl_DLp(B`XVJvB}5h3f&MaSI6$>w2Wyowe}Y_uaa+nB^Vk%=GHZ zUiX@AuwwLxAzPLfdm7Q91@wDPSGcU|NKomDpgtmWA&s#klzk6kZ8br*0%@w#zj#0~sraE;PFNwSi509J0 z>%ol+{Z(LKkUxv)XES>7Q10VfIfBZA(l@~Mk?nQlel1@wNV4}hLvMP(JsPVwxH9Y| zBA-xc7LVG|V6V7Py(&e}N7hGi$0#wL$`9sb`oog+dan-=7eMl#^|&iXKLu*CRf4fc zFrV=m4|5hhWby&O5@ri0cKFE6>e#6O^p{|F}Dr~BmKO{Wp$SHK( zUqW`;t3vYIupFrGAa5Cp+Jrt37cd?ZDn%TpJPa$Cu}$TH6cuc63rBpJHp6@mysDH= z<=X>S$;)z%vT@NPTuN@fYc9zE>z2C_PhWT1;e*y`*+Ic-+7(O{yj zqAk_p8;wM8)b@WY)hhGh;OOGjYO~cO`}boy&FY7l-^DF#EHjAW;yP%5fNO4mw*|3s zcw3afs8;DW%l6f9P5HVl7lF*##?_=ceDk6$@Wut>t2baNO4OBA3twX zB8Udhr)&ZoM0xBk=g5sDAHKu~*}%sL_zry1H;9bBpXOff6~OY47B}`mZQ#r2wTiLN z_EqgO;(rb#aUi*(uzc}lJd5U?@ENU8Le2V8!Q0;`?L#gH%`t?W5L&Y57?g4uwm(HL zMp0S{IgTkOLyx7oNHwOECq z2$azU>+oSysEq%i*@@~rp4=g-oaIlaUbzgxpn}=HC`x4gc*jYDCCc+llsl0t#`520 zrNNUrC^^y0be0p?^QF$!MN$S54djur{CT?mD9PVPW3_J!Z56sK&pr@%ZTm0Ta%SHE z&U0$ztiM4Q%xJa{ORTy=ncd5WZY^wE$l`h~6AAOC-vfPT zZn=ciMP8$UP1g0nU^+d!Gn3ji!cyFq8SUF5CsXYmsZ`X^(NFwsCDcCXS`J5pHrl|G zf2VXRWbd^Ce`KY!g-iWgB+A5pKzdAiO8TDkGwB7%!e^+lMQk10!LDGhXSc9-v-{b8 z_9Q#Ne$0LcIs#4bkHqaHhjF877NmsaLDC07Sq}To!K2j7aRvwGOqjQ>rH}*u;|Yj^ zLk(qAhJOpuZ=72frXA{;y?UoeOoWz6fij;jteL)(o1YzOz{^dyf-4~z$eTThIzPUH zZV(p-`S$TE_NB7~>qf!^7A-D7iUmgC+VC)e$KiVXOgzkddUmISu^3)7yQNY?8W+(O zPSyBH0pY%~oZ&&8W@}^d4uPdk-ZcFob?Nx#xnw)pqsCOcn z(|#Uu-SOA!=5j((@<+8FT%@UpoE6QHqWmJTk9}&r{Pt9TDjG0L@p#ElS9G4+Plii< zc@dT3%9BQ3Ng26bw4n{8s-=LEkH219*kW*`IQ9Y2$nK?9XZq1q{Mdt%yxg^)FDv8z-z^~NYLKtH-8L&80Mk9N(CBT=L zXr*GJ1-%oLTsc=VN`V+Z9m^Y6oP#Tx<|>LpF}s3A$DAk?&|4u?C?No&&*K3eEH5pl zqKbiMY&8SXg`F1-5>H9CuOcTN`-k>b`GCm_+@qyxi;~$ZcU20-41daOAs>i@V6o+_ zcc?>W4e&h8`D--RQp^6K=gd_NSl2~V$Ilrm8D@?ZO$~Rcb6hSg7t=$=ORb@Vp&}8- zM8umf&PA{RSXKNn)o6OFipMO{V`j_wC{@490@^Dk2e&UenFIbUoJ(J1wH{+Ojv~|R zt7IcuMu<%d=Sxv)x1o0vd+FBMpJ8x{U6EpWu#Hs3TrLV5DVS|5DtJFAJ1>P&W;}uJ z*z-ds0NL9#Q)Y6Ex(m15-7#P10zbL1P@zDDxunnff;PHi0bz@^FKGl&6NGod*y+d! zTZn|Pl)1nxy|0u@v_vEEKubAoyN_cg8p_GpT8k`aMv6U}62m7?q?5}6DPxI2x3JhO zy?r#xuV&7r0B+7{+_y6|h|gx0VjxZVq?is3w?K<4U^f=&sf*>v5+t&N^Rbo!oqA@V z*rFE7Ci2h}B^pt1-B-8ug`(k*MygFX6lF?CGjmFjX@lo13d!kuixONn-^?m4-%`p; z&geld0^ZC(X9~@YVS1eb`XAwW6^qQ$`%76oUO1)}%W1m_a*zUA&I5*57kgAZU~3pi zXv0CkAVvXUrlrhf(d_H{@)|-neGZSb<$iZvvS^I-?+k+VdShL7YPet<;l{2ewOBX6Bwe?K}^9Gu}H=r8p_QSz69v;9Ee$|i~ zraMr=fe_tzCfs1TQ^2}Nsp*K8f^thO^Y;^MuSoZXRxO!CoAO!|jqa2EW%Abjd|o>d zQnaPc3aw@?pH%t=nvN*+_~pK=OU%U`W@`Ws6O=pkAg&pT+a)gfDWD&xf`xSG@wdtf zSYs&bi$Q0dao+F;jHiTidPkp7*@V^FD8c0aJxO>*cUvj81IL#SKJz zjA(l0(1hv!u)*eum+jZGYxhv1e)ZTuD~c7$+3NWCWM7@1<-T@aKSi+2{sCI51_sB% ztWa-ZTD_g{2(Jh(Y@nOT%X z80D75FY6fxOoH=U$fOp6=)yU32iv@Cv~N+Vg=WM2K5f;=*rHWS*HJ}9Rv#FoCDj~6 z^U(6<%H9cno35340*HKR@t(!xj^XFv)bB*XmYqoESN28?lP(nw+b0BrP#T_7l;vcTS=LT_O3GpQnT}a=0juEtWY{Iiu zVd4@&4b|#+6M?=JDLIHV?s#WJC%8g55>G|6NGz*UOrTAVYSBAZ5Ags&?>OrjEbz*w z^6)F{YW&|5CP04w9yk8jPavmSNqhN8SyFsqdnLGj6L6-N^_|ab-Kp6N#@gBzEiB|6 zI|V2ez~;GZxn7PJebCqK@=HhXkkdL77lAH5{~kUooG0Mnx6L=1&e-~k?9*m`_Wvz z-L7Tg_Po*7Rw@~1`$pCgKF6LM=qQ>T&S-4oX;%RoWRKfbmxK*Ju>TdWgD%WD zuR3S2l_)y&t|fa|0{P(tYt^HvSR#)9QGP+!6Un&4;^yu7JVFZz`?_^&YZK$0oX)g5 zzPPq-J-eaW#jDM#oy!)r68Lr;c&eqc_#BwKFejW`&P3Uwncd}JwP|ts2Kw9E zM@Kt5xCL3QjZbuT3=VRPkB?WS+G)W_aYpFnygnn;%u5auHFz=*nw(Nq2H+WehFCwo z56iLBUO9F;A$u1JSS>31`%yVr)*R1dTREosA(JX#{6Z%jgy{1ak3K(Pq1n36LhvVi z{uF(D#6oW0udL>s;ym7O_s0QuIWweVI)jkwEr`YgRt|vr!yq>B>Tyf}(9w<&834f0 z<(|yX1Q&c(_|<@6ff1oZn=j$29?OA8TqXFTe-G^EV(v5dhsJ^R*o|r^wQD_GLf_rw zHd0Y8|5Mlz$iwA20*)VdDG3RPcBN50K-?ES?p!~z!`KIEW`6l_;}ULtJRx zqr{%W>P`Fi`?jI!AlOto;_q5KfjaY?3OWNuN`|DdxAv{+?OoGH0iBla?iTv*>`&S# z0}0ONGFfdp{de{!STSkQ z?7O$X0`}M!7RM^-BOr6;TUSV44s>USIo%ny{~|ssF+Ec-*g+e?Ie-L{Dfa59lLn-( zQ+Lwt)9FsOK^&NmNk(^FA5)xE>rt1Rruh>`UokB^bLM23mt;BoV%8-C&f&cQY6hkJ=v zT~zPEF5!keB4q{7sOhc8yf_tIP#8gl2|3TA;4#=ipP~d-Bc>nCuSu`S6T81hl>^Kc zOYbYimM!O{nOmn;j_gA0W9Hf6Mdj8s_pQuAexT1<*4>_r!wyJTJ#1u${UG?SG#;U1 zkwhleJ~3~UbrIX4Gk^ZtC2Uh~oc+)9T*7^3$<)*m#9%Aw{`uPc{&Xc}#;m$=0mWHp zdnJgUE->mKe!9S@Sz`8T*7MBenN1t{Q*YeBhKC9WEfM@6#wLfgB{%)~&;0y9+ud76 zIEzbi2DL(Qvr;*1gsns5Gp7z&wTHk(b;v?w#X6JNrsO`+l&TLySf^q~s z4KHf`lKH7(8Gly~q${yA;}rhF)_u(jckDCJSwH3k^gl_be%*G#r5iR}dO=$PtOvR^ zHc_unj9D-@le>^j`Y|A9sq|0Mo!eft_l?v(YPavvuI74v1pfCH==fKM-UxQ_4}~5L zeG_k7268td=5QPkWk(!&Q26A$=kUa+7>T&7=zHaza8D{6;7o|75JRUytH;Q_p}#Q4 zV?}kZP?Y?rxQHc9V8xJ-P|9Amup&GZ_G~3ixx}@Ec6Z!N*JxVNwiQM6S;FkuIS|~{ zy5TEo{oR5`c!; zYjX0e`LI;1VHOm-GSGrC&t&MM6p~d&?8;TsBwXJ zE5phlpj$A!niQ7nt~B0-B0ZFSqiS+vMt%dU3x;T?PT?ikjcXr*E!@Vs^J*0yvwlFApHtX+xc zB3dd}$V9Vo3oBzhj!-ndiN@opt?97lgyWr<9=H=r(k$=88WxTu`0Y^>6ftrsbg0LA zhkHgd?m_=)vf`XyQ>Z%mIIgW4UWuUpAR3BKuuik|s)>FN~f#ihp#l=L(cc z`TE-NiiU7k3z$H~}8w;2ghOqsM&nQYXlbwsk+ly+<2A0C|*O9md(2k_JTr{Q75 z40V(PGmj>d?pH?^3$EvCds=s@uO2=1{8LA8Aa{IVg|UO-`~rmJ5IyXwmJQ0VxPO>8 z4=Ivdda!?dZ2fw2UDN9~jE5Thd!JH#5{hl8+^`4)!y3fYgH4&6kf&6(i9B9nAVdn6 zd}>yNbD_Y>!uSlMitiD^)kXv6r?0~2^}1VoBZXL{;rT`_1Vz>w;gtI@45x_2wpq0q516nJ#-P># z6RK{_JZpuu%Y#$gKfX#5IYBO64RHTvQ*%+mw}Bm~8f7 zrN#RU)EXk0Sgu8AavZNu^6uns{GbuVC=1g~v%ebPYO z{F5eQI>wb%c^KXOF7{6n*Gi!^)mN=B0>odlz)hi1dfltY`a3c>Izep^wt-a&yDlpS4;(yA34_%#)2Z$&pa zJ3JXh$#G;!IR0p?dqHdK`{7`KBopzi@9O;0feOrv_$(Vgd5Wu2s z{eRHs>&qG@S-q6t$l8UqicM53*-~PE1 zT%+kwl{2QE6gnMw+ABjh0t+eX#i&O3yU0Yq^Y$`Z0{%q7Dh{0Tn>;9`4h=N*2@x>` z!!w&?Tf%MmcWe+b1!fGAXTc7cOO*c|<75^X)+$e}RckQ>iH}jxaYQQ9Vh_p1RG!*( zpM(#L*G4lQC@qOC;^+8+k2JpZ00b&Q;LN9K;&B3YB1vsJmcFEGHb`YqWY8ekVNV3y zGUB*3$7)*vo5kmGVo!*^F}Q4_U}As3v>`D*xeuS{k<)>#cC@)tL9XTS&9}fFx+H9Y zIkSd-WShWj@p4oGQ$IZ*{xmOzi7uB|`A83o{1A87SPx1C5N+lrOA3X++|t1$#kg{V zmo_NS@yD9JfB}4*Z;Oy0Ns5n4hY-HlJoC2cOlu_Xta`-;U2Ci5-A6XR^;2A6E9g`kMW#5_G7xY2mtsc=Zs7!}v=`%}l28Cw(Zs?r$=? znn(}WW4qpby1}F6`ua;&Ir(TSJ0;nB`YPV6Wy>}roUgaKd$+&wj7sgSb^ODzjjiPk z7p$N|Z>cR5(gTUh)EA0TgA}nn(vBk?M5UA`f}s{1#g}sKTw&*K;d%qTxRsp31aE>O zW?ayaQc)CfSyRI@@+CmT-sCzY)gG3YbapTh{ljY0$Y4sMG$*<&3db+H6c)njb8oBh zo%Vw}X+^CiD(NDR*A~;pr-GHuGdR7FYxz~@o-;9tk()n%^R_eaR-p)J#*>YFP0V&4 z;+$3wr#rRQ;rE}#%r!O39m_ zn(WP|tVFWkT(quGGLqwH#zAI9*{p2tW$ARS@-L>9Fj1+B%|x-Kg(#xU68?dj02!bG zDzRbTGG~@lr$I>ogQ~c?44j#U9t2j5YEKZ+tX*9g!fDK`*l{g2k2zU7y^vdyiI}Vn zA&C_fl88;kE4RrzKaqFXTTMJH?)_6ROkLl#hTA?9?RuD1v+D9@F-5KZYb~Q|MGM z=)IEHIlR}abNEK+dziDbwXM>7LSJI6{hFEB?5adxp(3^qxl(YiN^IhVT~?Xvlq~a~ z0FsEMKJX3THwEH`W(SgaD7zOLEMlkv{9l7&=MdIIY3;*QZZyc7S*9%YyJ+>shN2f( zQN@n<1jqRcI(-Fo;2->8@F#^>{579?@ZmYMfN(Zmy(C?YAL3ND*#4C`;BmzW@Mx@_ zRWo&-t?`)jD?CUk9#JwOj(fIO94;9w7b_>f2R;X=Df^wrmyhU=PvD zp_`G+5%Poegg5xjBrC5}eL)D82dKAbi5Xci% zCgi}0Qr8M03~WKILyTuOiEyJHwvtF40Vc8%$^W}aSKMX29~>w&ak04(isvr=sp)oa z*cm_T?RV}=qdc!uPn42tUUu$^$oMej^{8x8$eG{E5xF=&M1=ZF_Ab1yjEnMZa@SnS zAUcE%aNhx#okelaa2VXfwIwEQhg)OwW!!q2Zar=8G4W_X6yVd|j@RAu+L8XN?pe#3 zIp)87duw(2<)`IHtD)?c;|=)r+0EjSyn&wiYw@dz%N()KyTT)=h#Ej2oU;&*zYTWT zCm)2a1yrZmBV)1*;hW8t_pglm+Z4s+qgT!GVT< z_#aQyP@m*NzJRrkfN^1bj8&0Rx=Qi!J25O_@O8Y57) z``;SyGVSRMwYx#j<#ei?0r<0}R+=708o4!5>(KQyi#uK9YOk)md}(IQN>;0I>{ClC z8yQRYtjUr8&mP=70LkL;KFso$Z$e^?waE>?ZC1m5Gt?*f5}5oQ^wDDh&=rdiqeLQa*ERUA=pJ0p3d0 zZmpC`qkS+HnEM2U3`-X1Z*|)J^eb*-{{?SZFvusq%DZ`vGOp~ zgPv+hRiepEF=rlFFy38fXHIpN=%?!0G8N3n>fTKRbf1Jh0C|aHy`5^g`hLRqUy?m#xJ={G!bKt@Gw>rOuhKc6{E2Bi?<2 zz(8P49cp@4xC9+ezRy6D4dy|F#CyXV0)roag(TBry%Mo1!ENMwNL06b7&z{4hJF(I z0~!HzQ?A8lV_qcC{Uj_>6v#6u{qCbAWR1RjjS!T?e>6uB$`5-frpJWrqbX)gynx~_ znj`>KM*xfMV7+2>!CFSk8Am0N`#VviWwrzSXi{ZxZ_)RRv0hEka)g9<9N1dXj)C(P zfZbXwX0(8EHqSa|Nux8yjBFT$;!u_2OvDRS_G@}$j2fnkEjYgA%Vu|ZX-2g7v z%;?O@8LeQzHo=Bt+Ctn7c zHVPSlEXy0!;nyUf-U0SaCSnm?wiuN__nb z>oKfZ0LQm%!S5yiSUwh|&~7S`1PT}m9d=|^XPRwVrq!50z%l~o@)p?US@5Y( zz#BXpEVH333jcU?v_`=LfILwZs#hKe(6VW$Vp*91ZdRbez3w?*|X&iOVzM?75l1Q0%aL6pg=o{@xE=RR~MR+1w=Aew2nDoZ~F`=RubZ<+-Roc4IvWLeBfWbyD(Gr==xAylChmKiLc| zSwl`G%#;)VAGbf zsOrzzc*W{9SHAW2dot1Xnxko`Appr{Sc}e|9_M()4Hqp549G?`1owF`H}2M6#^asM zH7U1qE_Lb|@>J+Mp`V40&YC4J+|7WWB34Fn_tm6^;wQA89D*b-g9|bY( zAx@`^?dMZb;}8WfXuB~;myr4+=SW%vpx^NkEw}r;FYyVV!T1=IWd0m(%*NoMf-jqW z7&$e0%wNN9mMy+SGHM;>g^7o)`n_lXcG!yM>i8%+Pv{d&(7-+fFkk!BZI!e$mTUV zHAC8cZ-w&dv@CrlFgv_Ngu7o}s%*5aI~=Fxc-Z<3p!juxqz1`>;Il~6>arJQh-gAb z5q|e!beH2j(@~=%@{%H!w3%n|uL#``x}CGLsJ~tLxeyolvG6Yt1Fl8oNPbvy5J2(M z=pzrltUy`?{Ku!clHa4CHt}jPpj3lJOGZ{U;yv<3@os%9Q~PqDkY+w%qAx5$?$~H+ z;k$XAV)r#Sp7mlKgJ~-^9T5ajD7=y4K5K!G25`R88J|XDx$A_)HxYk(eXiJB#kXE? zo|hPU_k}0vKaTsKlY15iRn8DU!)FMG^#at3vmTTb#4%g#pqBslHWXagQLtx>fu?_+$knvzg87yTwD1)WIU}5zI zqy55CgcwGi)srx90{^xFjg@u@qVvdfw6iA|?hSwdOe5af8Qm4Ny^P>pVtOGc<*yFM z@iY9sATz$L_$g4dANAPYkAm#|-~1PEJ4bm-D{R?%2`c$e@V5`K{hnHm=gm?NhkCJ; zzxCM=|D1d+0DR&MFCfeLy*V^l zj%uc%rJ$@xXSsKZ=M;TOjNLX*&I2cLqyky~*>MpfKhUV}t^F#T>v*g=7iUp=|gRd*v zF6$kq6FBzQ@=2evEbZr%=$t`UuR9<-LkS&#)S*POx0E63Yv%$){p^x+A^nZbAvAU! z;$*4VUTY_HzN63AtGj_p$VP{#pQ}DU#_ouL_af?DE;IY2ZBk9bY`G3CuFZ#DgQuTHc-t<-do9zD1Ew)EvoQyq!m`)QPL(^S?rDo z3DLZg3QtmI?hoEGI*kXBQ`)(oUM6+i_6kHU7MFNTEL2_$3Dk2WdES4hRco*gShC<~ z&j9UA{kt5}U^AJ(06Z!Oy?H@zAj-(ea})JIpr(SqQ2$H%nKsn)+E0H3Kj~1gDEpMF z+RT(FT75n)F~xix*K z2!i5^s);(vwsR_R0pOHJpSK$2@CJ-0n!m&1;G+ol&NK57WuG}NFjm5(tQKP~^%wO% zc{Uguzf32Ut{c24E}5XRG;`((MJPVu2~!Z)gV`Tc0L?r**Y`m&khVec^IS8q)7duZ zC!(F4FB_iy{#bD2qxE!DvvS2uBoenlhR8mp2ncL$>f_<-1s_Kv81S$0WaMu`pGO2k zp5w=r5rR2Td9{bpnj@Vxhrl2yEIBUlN=GSC;2o$+q!L9&v@tkO*-@9JE_udl8-!WQ zkpN_$V@B>TFK__wL&k$R*-0;mGiE+5y=qUIZs+XBJghn(jgXAJnt`zR=;XQnYFFgs znOP#IKEwVTb(~}bT<{+kPlY`SVBpXotL95UAaUfY;xMkpgt&cLC>;+AuBpoeucw(y z9z>Twfe?Mc(opl00VgI6SqdY2kqOFHYB5C@WaSWnlKE6(zHkVMPDFGWV<#X1Ue`<^ z0mp55j3%0#mdE7e9(i_>c%?+Co+tQJ-mC_AE^jTF`SuGNbKV8=1cqF@${8wyTMFz{ zjwz^3+5=66@)FlW8#KI13r%T<&a?jt>joH^ok$A6uG<}EI9l# z+8`B8=aVYHEqnxCgM6<@06k@x=fu)qcrKMV+go;WApIx1S~!M2*M`P4*Vwl_`P5d< zg1PMde|53J5%s@p)IrRNqd&7!Do*V_wL)m%^x(Ws(@fI^Sg2(T1=dEo73`ZJJ=A87 z$OAqnygoI^nJ%hH!q%T(pC_PDtq2V;_tA?#uzq+mhR$5lJ$}P92ig1a(_^CQJ3CL^ zy|P%W0LzP~GAo0FkjWBTHeTjrR#t1$q%K|zy>BJk5HZ5W8sPgdzHO-1&cQ(l%)@4H zA^1iO@5weC4L$<@Vm0ZO1I69)bPcZ(D$&bfc`C~bU3i+y`%ZfpQv5KPUeuzjw&Ju8zKoB}hO<5IuJ z`%;*pd8jX&=JwV#;2+>~M~P_=ts2akVu4Q<$T;?UF-v;9eE=P){UJGdP=kK^LtqtA zze&*4@DM{2i=ajkY{JrxQg0|n{1oi6GJOub9HqjiO~L+M>>U72V(Vi6(cEeem)>hOqV% z94m*d`y}=jr(${9M%gEl(UkihtDcLc*vnEi_eO+GPLHN5w6)*vbi`sH1?`MtJ2N8> zCd&$q%kJ1g&vzd^=?;pht)%C>fu3|Fc3o%3$3AdqD$&PTX)3Xi{Wsk7csji=6-(Y>5c=_sWbMgRG}+Igkl217IR>V2-Zs}wM%~{;!HtvVoU`sP z5OcXDnoj3v*U6$)-n&(C00TMAtuJz%atn`ft%podpNX48?+=k}CHQMXijf@lL*_i6 z<})v!AigMYpR(YeKBsdO)HP4utcws8z(k`Ri- z$kM?Ws<6T1t1I^XTRc05w=ij3NYp`j_LGDs69+TT$D2W~?;sw)9u16Z76R`sw2Wyw z=mL9wocB5j2R=paBQAl&w}@SJ~#phi9?k>uS5Qa`cHfz^knE? zL*EbmnsStU==oUtFdAjdpU3-?A_dQPB?TeZD+d`~BDsh25eVV2B{F>HoK+6b>n+Y5 zM#V6(?c_JO9|zn}46P7$64!gm5cVV(<4#Q2XP)vD+;if;GwAj%$>sSl@FmxS(n)?6 z(C3R#Q7QhngfVG4u@Q_GcS112&ziGA@I*u8Ei>JjOz%%X^ku};&qO@E4V{^&ujpx^{h`aeI&qQ;UuXRZECJM!Z=9`R zJJ=p}fL)CkyJ7_K?p{M!0YN)U)fz;y;8E;>76a861aO7T#i0#~``9cQptqFb@bV6k zi*g%n9EGP|`9@Uq6T`iz5IlfGVCfYP(!uiRwgBG;IyNwzvmWT3x3Z=l27x_?vLzwm z^gGmWy#F(}2PLahqzi;IwUA?e<%g!KO#aX#e#r^ZRdHTvDs`?e-@z>b7CPiGkSKA3z?A(Cj6I>RFOS;AeKwRmXpjg)3 zAEavR90)JXJIyH#b$6l^A_<5pqC4JgqB-0puA^PhPw>#^p)(HOKAD-9;Ta0L=6XGD z9|C!9B6Y~FeXE$`&x%PvbBbcPS?VZ)hd^yi)h?xU@Bw4{qugMYh+%AoT>o^3j zj&J|gXJ9~@fO~qu#b!PsPsw`$uYD7d-{{yr;yAofGwA#&u@HrC8GDG+7e54u?)>hl z3{`w2;-wT+H3fr)xxRr8XaD4^?4oI$D#cL2lU$8*m?{za>J`1V!%ieN;?o44v3eQZ z19^rx2!1=Oal4jyFh=~_u@C5pCvZ80nO1h;M%2%q-w2^+taE&wp!>P!R(OpO#;uk~ zyb=8ir;=5WflTSO1IZ+@yXo}ssDe)J;E%o|nRr*B&)`okj6d#k0pIcmqqj(F4i(F+ zwi9{^fAH;<2FjVe3&p`Ha*|Hv@tbx1QZXLcVvnc|!u2u(WoH9j1shgZ%%VcWCL;aP zkIrxFuf{Aac>Orj-|;qS%CzY9mm99KDp+5Gb5r zL20TrRc$ThKoL@{#p=Q|#}gex6R8S=^Ei2PTFnirx=i_LN}f;AKe9~~m#&QQi%-T-iU$ zy>xYc4P4zjpj*Avf68-Kvx1-TtxO{#ho9?q1>aD@AG02x`oJ^I!*ogc225ffe>UU! zGE1`=gmlVO9cQpDHZ&I%+v%9klc@wvXY5px)w3~SydAw3=BnZXJ&tK|VGI;HpCw)J zS*QF59JPbyr@lk4q4BeSvzKFfUO+lg$M*fWuDA)d>-l;73XjL|4ABe4VNgK-tjsQv z5BKB8Clsa<~=1f$B5mNm-p`V6+&$9}_d|)zz1C~cx9o0$US5T%zhH7pjPb!uP zT$1L+94meB<;3&(D=JV3lhAjPF!>d;@OV>NSu2S~g2G7T_^~JYdRDL9PJ^>}@8V!h zxP9WZv~YCiq40!^!vIS)XQjyQu_ZWrpgRRh>1%OuEK-CF_a%DC9a}w?rrvX{6@2YorO83|S->>C|LQe# z-teg%$$D#~5`buSVYc9(P#^d;cuKk!!H_7$>buxVI?TJ7`rG^jnYL7sR&a$XanHrD zHP3*5d<`lW--CV~pM`|VK(e^Jqo5WEV#Xa0f;e;OK-fi?UOnVkV2$vXg+|*AEGd3u z8)BX-AlfG?9&;jsPO+G#Yl4Kz3kLEPrm@sCuBil3xyJFkg=fy z$69)!D6WEZT)p#jj27Fvp6De$9hBhV!=qPxdnd)aH$1WrBE;Nz3-DoY5Be=u_p1j^ z-?yGhTkT~xZ^V%(NR)0c^9x0e1}v+eVs-;&?NtHr5nXQmEQPyg?d5CmV50U*yLRWd zufR2(eV<-WvAx~6F`hyc2)e&HeJ5RO!xk#4VfOm_rs>d)H!mZ5lWmlbW#)o;q%o5{ zy*PG2z6aer2Yc z=P_LRQam1=}06zc~{55N*#lEnhQr&aibqlBq zU}e{?sY0GJm>@~Tvp~Ddhe4+IARYXmIrEES9(LXpD$BdX$V~dJs?62O~&9~>^^n!Fop95NrkN{?Z}23dqPMOVo843z^i!x zm%E7PIOWgHu4?LO>CU2p$V$ZvlP7wh`#Z9UFhOB^e738_F5+|)O7R;*(W^yCo_$jK zYz(M|E!W&J_x~;do zl-yrG-vjzbvXpcr$9cTe7e(Hd^fmHa2WFL2;V z8i1@7&@Sr1Q+&bcC`fx?!;$DWYM+&FaF^h)F?mOcrKwgD6_*D?>i+$U%Sinqh>1~C zg+|^RPNHvw$bb1p41#x!i7<1SEKXtYsrbQ8_ZB1!A0}PMP*Xbd;?hx1ir;xa`OnNB zlwD7*wUDX|X}o`|VCGkbwgTbR$T%umPZ^R4SrU!|s*u;JDAjqd;5~7<9ZbA9UZIy_ zQ!7eT!33(S7m}r;WV>8oUJUJ;QQm#&4cFoHcbGN8x z)y^#wh4g5T#Er8$sC`rjajuj{lNf>ha5as+cpP6c-0Mx;5i1oo=oTi?<6J0gdPe}Y~mSsPrqYvQ2X|>F}AwNk5a~gd?X&pJb^@y)DK!ArRd5ABNgPzMpQ?5fTaOILQ`R*qclNZ@fB_=AErNOz+sQ(xTk*{E* z6y*ThE^ZHEFm&Lh$48I@-DL6m8_d;ShJX_psEP*eSR+H?t%3~@2qIm+Z*-_ZoGA`E zP_H6O980#e!b;tS46+u>6CN<8C2Lo7)%bUuWI-yHtEIY5nTMzUF!K9h9eo0F1wEXK{d(yu zhxxbNr=f*3d2l){``COec&&4|oT~rE!gP{5gDEsKbn#-+wx^#&oz9n!F2X&X{@yfl zvhHi_3iTjsMZW;+eXP>PJCLCvEaJXP+bSTw1Hqk1NQ8P@C)@YQM)QLpOTe$>e3_PPPnn}`1?2ao<%&Dwy$ZdgM4|Qf2m&bLh#6nib<)KLowe^ zbR7N{aP8bOm@%^!`heTs>n;zWJ6x?S;`rdxIKGCl zsspk1b|PK1Qa1WiQq=zBW+g&VA9zGORptJ7ec!oDp)xv#M=}O_(E_{Y{($SD7MSS& zm31sUAvYT5Rw|d!n&RGpT7nz%Yqp)#Vrb>MVRiS`k`y+YuV@XSGv3L^i}3S4j)4$f zlutSw`UGsYr@(9eUoU8#@N5-6q9;C7$B9itMK#PNZt^KUm>+9wRDGyEVk3MIEkwL0 z6M1Z~Ci2v>5I9wTz{3t8UFmFeABuZczw?rXsvoYhy=Mg99OD!%w9qt>#N#Tq)rW5bNyF?!>~sSrWBhebSfD? zPWkHPgE;~#hckT>REfPb-@%DQ+R%BjlGa)k86`aT?3h5{AIoK2rzW5TNOgfm*G_7A<$5#=DmX(YIjjm-rNlh! zAnYnXK#79Iz>scF7Mz&2g80h9Q<|*>4SZ&61DRNYP&P>c8Aps$Mv+fSBK{vcW016mHI_&XqpO2 zeOo)Xrq(qu`9Y>&cE>E9U~A-(WdTxak(A&>+=FPr#-c!kEV%02P%{zF2fUTdIK|ae zVrdjdpp{8v%fR1?y+c7VmD}j}-bvu|FcQlh_moO$C)tTQ5uAwyjf^1@IdwedP9b}P z-~zl66fCN^!inIDyMV%mB=C@m2ekfC&^Olo7UT&3P)I{CQ$kjwl{1d_tg|0u!ccA^ z)r!L=N0>_(=2V+cu{j=<^B({U zEIoq{|EGr(UkUIIU7pAD{NKVub?yA;3e@2Qspdx2Kc0z))f6qsPPVONr8SqSciO3Z z%&v6C@~Kp3&B>NKbi*DCuNVsdbyyt{WJfpk9;O zh1t&2U$dM`WAC=ftVy^B_mh^jf+DX|W=$IgHD|iC0?`NPyY3cd>M;U_eb7b#x}I|q zbSEQfr&+!&9Dy7^6pdO=5y!W%Vg|<>dYq7NZ%kH!=>sJ-Fn#g!6Y)&C+{RcDJeRDE z8J13H!|lBJ+%y0(@#J(Yw?7ukr0aN@m^ONzS#~0YpYSTJt(46tIgBrAn_4R)Zs?hf zvSQVSvf1<~n8G)2?dhIOcbay3qPuI$rk<{m1u4e{k7i`%5iOifXWA?E0X=D@b+l89 z7zqoM)_v7Vo0HB{WQtw2{55BEW_iJZnVa0!gKi(_gVWAyv zt7e!+zR)b5qR$<3S^(T-=Dmtxrv@iQ&%U9z+u5NcE{8whl} zQjG3-Q|hrnVY|C0FkK!z-jnz%&fy@~E)0vNpa|;JTfE!|^?L|%BhCC3e$M~DS(v3+ zI~!mVY%Mz(Ch;-H2NtXdoA3;YEC)Qp{{rPei3-AUJ;tRK1NX%56EG|&S-lhgagxNV zQ|ef9U6t)<#oRbt_Zhr{+zIOnSh+oGWR9cUr<;#r=L9Ikr<%X?5}z`=o}a6k<4VYE zU^u!F}t$0enmK?J=tbH12$^5glcL_C~!q)B!2yvX-> z-nkVhYCr0A0D0$ILwAQB2z?y2WuaLGuA+z=8Z<^ml-D7a05Qr;QAJaMQ%@+CGctZ; zTa9v4$-~BZ;F`d#)`+b*Oc+n+0C<-w3kq=)tG&F@jwYQWE z&Lpj8spNHDpySHUl{ETS0t2~XcKB&&WVGt!wXzd#t>(^IIK(4PU45Jw`kS3^IGy@m zr#D_)rd2;20CwH4HjA4Zl2y0%sU7r?_tE3-KzzWO8XCIxBOjhZn3K7g`6HZ;y06== z+R3Y%GMJJIKM=T!AFB38w3cciosG7fY7|i$kc?+_&XE1f)8Ej^?Y#2E8`HK?(Pqy# z0^$(Z7!-3dnvQc(A};an@Fe0AgC6pJ5AOi^7TDQT>g?rnVb{`-Qu%6NG{cbP;73_S zD|(dF?cDjVEai*+81^C|A;$(KXpg5(yXNw)WDH2?!n#dk3HssV6>9v3&sk^o{upk z3UQ2irZht>lpdr@9X5Z5HhqUUH6OO0!`t-$xIPP%tZx0d(UE42?LMW*#tkN(5sz_! zS-T5YJWP7&LF)@(=N#biUu=nm#Cw9jbL?0y;^YgdXe1x)^!h7y_Z|I{5CK@5Yur>jG62;IT+PR-mMys%#a|uEoAyaw*PO)v@`B#WS8P5jYeQrO;8tor(Zhu8}PbC_B73%pt*Q2@9-6^cJ{i?9rBr>4Kvt0JA(>H1sPS~Z z^VT!fo+9!VQ;#O|UN*`{mK_aD&FN!b!h815wQOEbY1CA)j8sK=k2>spZvEV=k@Y#d z&f=UBp>Cz^I|7T|n#wICxdnAx;owx%DJ_*nPjSY2>pZf=Az#q~0$*ObFE$%R6+Rza zhVEC%TF}{KqUL_z=$+>^?4k~0=ccQPwN&z_uhEmYgRAhHeCHd9}#}Du*eB z0)pCECuEZZfCZ&?V z);09*MJ1|qw<)5pV^N9t5Q?R0DtkF`3$c|H@A zo_sN#!LK0Ze{9`9iC-wGX>cjg(_x*(ld?T=)5iTPwuz@nSKNK2Mcuk6kf$8(MYf4w z04BirBZ*2Fb62V+2`N~zN@$qZ#!(OS%R|?P-hzsw{}cKY?~fJ?e~~v;@XCU`vbV;Z z2JX>Q-@yrL-s^Y~FCPx#1-Swf?6~o@M(ta()`pb$s_u|l7p6tGyuObY>$dGh0G~1q zzPz}5|039-t+HzH`YA6Z7WnNX9U!>I4A(YpUWMpw!X6q6H27@pN6Pd6nP{|eMGE53 z6@D(h18epaI4_8gr3sfG)P{LQzum|mh+xu)mp=&0O8doO_f_l2&$BN)t4{V!ae0*& z+A@}G+pvEzy}ItT3$k%oCvCsR9;}rYi^!i*+*c|l@^gXi(>px5!ICTM3 zPGxdqH(6k8GO(ZKzc{SDrmm&|*PV@ea2gLn{2lPDDC$Nkax$Jvs>BhXDZStX72t`b z5sl(y{hg(Oq&SB+d6k?XsGX^45>Nb4@&<9dAT_NFuQE{Dcb%Q1Jh4&k*TExXUlG_A z?)ysGylq2d%oKYI%#1R^IqeB1=aG3^ihMGfJp~*k;bq)+HeL2tVvs$XL`@oN>xP$w zdA^~egfKwosp8mt&zakYAQ{Ep`8mCiGn3!(1m(%WZWQ9_scb%&ZKtZ2(AEY1>&#n% zzh}WTsV{=(TNE&2J3LM!K2~1qRrHz>1E%#v5tzr~MgawIe_%Kl_KYn=Ls$$-79TGx zjDq9>xiRch+N)lpWB6#uR%=wYk(K39`&sXSrEGdFM>!8o_HS;Dqv>2C;w~Oxk^U~R z6K}1ASugP?l&WVfa?*>>?}?g(DvP#k=rN40m8B#yKgd}&@|PeK4!~0zWQC@^W@wZx z;MnpCt5@_y#LgA^PTiMEExvG2kB70RS5F=^jIC=ZJ>_oiAB}56{ZZ;gYDIyAj&`*p z3s+|Z$i`}Zr}z)G43}0b(o>?2yBHb`1@=q`Zz_TeB7h)%B9k(d^oGeg^c@GUgi$Gy zRhlv=VFNW4D!Xjq!BTkS?1MKfr;Ya0&eua;Zq9wd10< ztwUpj6uV+2-OD4u1M+6LR@-~S4a3k@mj@S?n)1zz2lt?6^4?=Kxyr$Nw!yWz032OH zon=FE9$Y{V^7qZVl-xa`U6n(;;TXNkJ zZdvu8IY3s-g5}pu*u-bjd*-0iY1rQzS{9`aOj@|3C{1>DacRfiGqG0G&D_M2VVe@H zcLWtTZdrb>XSR?HZN{@%GVs>t%qrz?6D8e_A^dPodh@W;8i7XYPQ;+mKtjd%isOEb z3gidItj-!O3%P8fQl=!W`zKFo|4EVBP$=4v+aOP*b}`7x#WjQA;fr={#*6%Wy#&~Yn|?}2 z$i`j3aTP;dkPPa$B_b#g1e#%DVexrUmDV{?K20(Bn5GdPSM^$UdVvv&xHp2O(0eq0 z`BH@Ik{h79)PG z^4DE`&Il{VP>OMNCjhj_&gaV(hzXEXaY^xH*gqp$_RRV%;pt6QJs+`_t`0Asw6sF~ zZSw15|LSa-UTXC9LN0N~R3z70=G;<4Ce@9Xv8n%R>jQURIi*$50nCb(*~mFp-?SoK zu~PSxJD~HzRw+lk0`r7ruU)?UgO46w0=z&yx#0D8-n0{|~5s>YUaG+gI3C{cF63 zHn#51jA(UHC&I=>r%+79Q=Jv|w&NHC2gK`LQ!J(}jDI|VeG?oi%;inOT@7COR7bsz z-qUF`!8Xk#@i%p%A@)-8(^E_B+IztB<37kC73>Un=I?G_Hrfev2B8|dau`ud8<8wU zD!jy;67!2)qz+*y4L$H9sV3g(g-kIIT0k?L%xSvm6@fPC+6PB+QfP2Pmeq1Kb`qLpiM=iPEmJJ$*{PtAU+ zzO1r~gmTV@VP8b^wYHgymtFkk+ppGa<0m~4Ku`}iezJG9AdiDb2{P@^H9a^xU;F?R3dz>D8Y?2)>Licu z6N>vfu+s=8rKa2)B7KwqDWdDF$05=Sq`e>c1G_ZYgX6Fg_<_`4Po&h8up*A~ju5uI zY>dNZ_dW!hBEORa^jF~5s;MtuL;D3x;giW`JlT9_OAAHI!{J0Unl9uM2nIevn0B@a z!N9+3+1Nsdp|^Iuv=w%Schbl4=L7V`1LjZt^J&+_X>_vt2oUkh>11REK>YzDfzHM$ zwE1dK6UY#lu{KivV3Rp>R53c3X`W2iI@zqRYdl5*U8JMYO*je9ha2KX?5*k(;CO!0 zyG-)|I{yK){?5kv-p{~kI2o64Unx#zOg#Pv@T7RcI(v-}iRBia4i~{4**_@Kfv)qO zZ$>t5AF^v}5Vas?U#b(Q9u1#DW|lfm{W|m~7$<~-TFN%EGuX@7RqQ7A4t78L8}@nj zPwZ*-Q}%mJ*TAR(e*<1Hra1|QQjO6|)}dfDp#=yrNggNWHY5Lv9P8$9s7@Of^Q}$g z;vy}hwWs)Bok(B$2BvVJmt;Jn@{W<h1ulwK+vJ1x+X6Y-t-^L^XOOW4<(8(@D#a`LT(dVlux(~&U&A)an=RQ@w9qSBz zh%kmTkjs)oU}LA(zl2rWlFj9^G>vSVGyr}CZcF#xS4c*psY2d~>(CVYTf`%zr~~$r z;7-%t=XQ>BI}C~Q=^}GIHr)r$PLGXcAQL>cNJ=P=?O8ud=Xh$f&Yzl;2|YEhfAwD0 zzHAP^&&Ct$VxdW8a>UeWq)_HwyGGVx{~e_Bk!B%hiRiYbQ{DBvT`niAq7k{mF)QV$ z9&V}R&$qg}^5}C`*6E8YGe)Hxqb~~VuagCOuR1#RRntBGn|&eAcnO9JPu))MR;n}D z)p)n~DPt!l5QPq-kd8;}LIQ8c{UKf+y(C=RlLG&B@^^AVV$gV@Ng+q_!_FxP_z{c# zEHU^v#6vV}$*1u6=PA0KILG|_K%m<%<^3aGY8^c*a0kr>4fTBeC*PG$QX^e{D5Ze2-!qe4Dn;SlFinC;1gmYN7V+_R}^v75YGyBu=)gx zy<)sKHA-qfu9+M_-QLoC94lGYG)+#x%Jv3~gBv02UJs%sZ_i_bkPU4Pis2~unPq`J zEvBh_oJLfGyu+L3U}l2q-)O4_2OIAzW=>{u*;$acx>j2Bqtw9{7=OO-^SKp&&o zKz05QbpV<%&2Q2I@C~#6_xSl=qBrz+7Td<=Z<&`Vmz?@SVn>-#^9)w+n(b@)aDUv= zY3b@()D1m*iD_aHE#dyP4Pi3cJLo|=6VdalrP9jNPpih!tR-Jaq~{M+(G3{fgCE2V zzezXzhUNaJiF;!)`4Y_BbtnoW$`v+(3NBV=zgNbEYO_@T*~cIH-OGu0MYf-S5R>9% zvel?SJ^#Y=EXpG(L#e$ga7HQJDez1_APF^$0f_shW6?mhTqD`OTDA`S&h{`<8eTX> z(+J-2toZLsOpEb8h!G*&;O9trCbYX11bXMI`>ZEc&FrtHg=%? z0{DXheNjL$N}&I^GT=j;M7Cs936!5GHX_z5FOpZ|7qhd;>~tRhEhhm=k~C}F-+b1LykKjX8c^C#_qLKE;fU3LEj$tvVZ_fn)P(SQl<9iT#4mQ)QNc&?HofB1gew< zM{4~5VqjeJ!krseGW#e2lU*;$vv8k}vT5A^>J|aBMcnO`6;DxCNzm&`TrJQ~gt^43 z;8l_xQ-mjgtn}S8T3}+lArsD1q+UTBDD|0Ya)2Vd7&xyXp~B`x<}-n(JY3e&U2nc~ zoB}9aFFR*3&T-RJj|-NsHeyf2HN?>zYBgOS#wU=4r9ys>ciqP@{u1bx#K(Oym;oq_ zrz&RJsMdjCb|UA&uZO{*jd{})Q^N)Pqn_G)-I9(mKxolotasN4o_(rVz!t@ou`JrY z`Bg5|$pFuygd6=Zax)7WrWtR103CjK4kYIx@q)bC_oo$Q2U(`PM6j-jp7%aSC-sO6 zdV*107?C`PCJ71zCQx&;^_L=9Cw8D8S>TAXsoQ}^K|oU@IkQO%&r=8e=Dwy?tH#n&q{YmczYAM z;)S6V=xQO5g(|WP>SWGLQlRdzbOn|wEqE}4c|3}1A7~*8!bwt4;M!AGn2HM0-YuTq z?OJxhb(d{7Ik-KsXzQ-^oPAqNJeZSy=>Z$7E|Eds0&tBNF5bDfNH%p-1w@-hk8{sI zz48_7%!TJpam4<>N_14;G>Gpc-SKlc28YNZJ!Dct2K*C`h?#^sMYwoX7fUC&yBCQ;zn#-F8DV;+n6ntu zsnBh`(+a{FqH;-V1psz5`Wu_=bYLDp3USz0{~BhtkTpHi56Hy7gokrqF!O&V3moe! zJ4uo*Y!>xSKzYQX5SvR!dyKrL=@}!YKgybZxoWKE-im9VA%CNrJEFu6Y{uhh-)q%s&O4p{RsAlt_a-_ z@|m5!3_14Ge?8FBM9++b0Bi|KkRXK~dI(>|ii#vRiDqC+DA`~1H6u0@TpV$v9{g+Y zgp3oaRX~XZj;KyN%XNghSn!B;W&vV6v6wZaYK>tlQ(h6gGDUv>7yJJW0cFr3b` z`)%-k>@QK8gubCZGPvkzO>$*6^d$8O9S*Gq-{kq6L7XbNiNBD#g9eqjA_FB0N|=U| z@<*U!f%t(r#@B)9iAUc>MP7_MQiQOb>lm<$`C>_>XB_RKU|i%bKBR1;%A$v$0MAQ$ zcu8g53$Hrm&W~=h!PjChz44VR@e;iB%R{-zr3(x~H>K*OT8p;X9vU4=Cy7la(V8IK znEQXzLnA|JBT65&B*1PG-I~ThHiwYmAmTf5zYy(NM?{e=H8Y;i8k&ZN-o4^&k9POq ze(kMBxV6TrkOD3WPU+6!t3ZtmDw@{StyJvmeqRx#M|Z#T%vc{4btXEZYcE@civdpI zJ1p+mgY)lK2$r{B>u&mfv}bi^8gdF&%|rz1 z5OSYiiMax{B#7(NzCHj4 zP+viI`p4ifw^<*AV>9GST?A#nT$Z!rP_rm_7R9@kO;fDRl1DDf4@!yy4T+UFSfIm_ z0sMjtH0Vd+mI^%dsZ|T#TnX8@_Vj_qeEqln^gtCvpzgsZg~nD}-G2djcw$x$MRQ zN{yFRAx;^qB@+*8ai@^CZvzWi4t$)k7{0JIOp>xw8Bengi)ypN>F$;@#=pNNuf-8_ zw!`VMR9}Ii)1MRR+i-a=g~(~PWy%yFFO_D#C{HDy4tOpg*@>`?_zu7n-N zav;}^DH#xzH9$^HA?zFEsg%Q1ssGDRnx7u{iMOaJtULvCa~5#J*dk1pH>*LqtBIV$ zOKiQwHsZpdxZuM|o-0rJmAqL$%cO0IHf!ksddyvBlVtcdrKlmNetnbZ5xzULPwB$^ z1g-y4^*}EmVt#>e&8rbtJPQvZBqB=<+^WalA**9Gx*qlnSF#cWQw%NWo~g-+_j(8s z3FRzS3&>#*wx}O-M+ryBo%fD3HQqZK1i23Z1PXOjg&p^m(IpzsQ)&HOw6g9L8V|8{ zphn5Eq&4&7J-vXFZUjIc)vM8R10e7Ige*>w#PBTx^-G{>J=JhPXlCy}u7X7Kvox6< zYghI5K^rXII|=>fM}(G!sX97}&sX$azLIm}4ee|rgXHri_$XM(u^GjGv2eT3Wj0MO zG5UIlzZ1q`B->Vs5v#y7*_JSj3>(`oiHFgmL7m-Pf2pw$pvQR6X2Q$2@w(P&&Nq84 z7_jdF6TzoKe+LHa?}UC9I!b)AtcxvVD-hO~M{JgD_dEutZ*Ia1X_U3dQK{zGWCJYrE|v>UP$==Z)L&xfdk8r)M-8hCLcBIFU^|gzNe;_gzXDlMbc$ z|5MMmbdk^!1nUS6Xc=raL?T%uU$>c{^;I5 zt5yil?EA=mwvbmm^s;Slq_S_A%oLEPW}B{+TG{WkMp1(jV?5C`7bQ7<7M4+ZxALja z%#MDk77v9bc{9&0GhXSm65(Sl{f#WzGX@>V+p2rMhS*fkCGz6;aK8C6@2`3a ze6=gl9sMncXgw5qEc6e+aw_lyg#iGKd&xVesufHj(yzq8%r&Z4qJqz5Dke*<6z)I4E~!L@cQqgJoI?(wB|V{laB54t?uOD36S?le+csOKyC1 zpFy#L)*ZVycE`#(ycYKr9fdq$CYV_$Ai@w!63h0-XyN>5qVP6vwFG?SA^b_`Kx}q& zF9OCwBmlVHQ>t z@X=3;r4pS>?*Lbdc@2N#dR(uu*EfX-c+IWArFD8dom3Aso8b-8^864o)Efla7w}@w z_u(EtMOi(y>J_>x67i2O4kG5hLo95dsRdJOy$F;I)!)87on5iJKb z$<`IG+OMQ5q%XCNg9&~Bj>mPrEDm@EBqOb$iK*Icw(%C0%odWZ{DQ4Xt5d$FhH5QT}I9N zekxq3SwFDCV9-cK68iVaMzMa7C`5!VnwwbR`544zo`8vhe?nsMOwB3F3rkZghaI~_ zD*&?8c;;1B*!V2Gf^hP4M(r07gj?dDrD&w_xp?@00`ne(WWE_VJHJev3*QgF3*3!1 z_&%wtJ9&vAnC*V9i)(Msc;Ng1Ub|x|U*xrpRF^=3T^{~LU^g(Nd*wh}RZf5((KXBa&y)Tw2W-S)2#z*$Q?zWZG zA!fzC+lH2GCL3YdQ1>f$5N-J%gBeS(72IfcJXCPZlYgBJ)fFa%pi?ou#YXLi&xuAU zML03^%6JE2m`#4848B~d5mP0{BC|XxZxbC?0^pp28d7FTR(7(LMskW?zNNP??;LVR zoysCu5wMe9-LtNh3=F$B2S{h>N&VF2PHQaZ)P|$ftj4_p>mgdfA;A0)IK19u>xsi; zt?Li!)pw?9*h#kY?eBp=>%yzHT&g<3KUU{>xu?wsgLI#lXQtFnqYT)6NK6YCT!ujn zzV<(Tue@Li6QRCj1z9}qCs`XR&rmC3W5)jLvfX+Z$fj^~xJEwz%sa(cjwMhERVV&1 z+kM*B*_8?1cAv3pAQfX>c9qv;xlfb0;pyBvduKFmFmt3#c_jI@%K0)G0jfr9LZy;I;tsZCqgT};~9if8okl+9%ZCjDhY`|vIIsebuv~#K1 z+hbD$C#%tN1;DHK1c8&}@TW^F3Uz^oGVl>rnr9F~`h?7~0~9B*&r^f>IzV z6286y=4c+`$s}nItRi4)rj>O?7_Oi10Fs9$bU3M}UhX%-mE&b-!5-!E6t%$iE;w&H zy{VSrrET;Z-Dfvk@!I(`QCd&pw1(`w6+NV}6P+Vy3s=9@G!oGm;`-?Lg4Qnu#)cO- zTV8oNr;sbJTQihwYbSP{nXX|p2(g`Ziff+QgWeEGUX65;0pz|*neV%8XX$Ap^p-ou z>d6E(JNe?&g$v8`Nqx84#P(P&Ke+fLSb~PVYzQb-#>NbTVDr%!va={Lin@>14qSOg zcPkZ6nJwwU#QIe^BHgKW*)ftwofO^`CoMM6_`w{a=3!O#PIZ(hulmLCJJDYx74k7c zCxfB$5=2);Z#c|m_|>A<2X~|8g-{86HZ|>#gGS16VbRsYzpR34&isd#*u)N7sO+TdTsO-n~ed=-d2FJO-l8<{c$SH80f_K$3 zq~ksv1!GmryJD1mPCfFY!I3Pa9vMEv$Q6=D>;xiUN0Lbb-;sHwC+w$E;GVLN*ww#f zI7ENSJH+q~8N(s?5@c}Ly1#}ekJG(t&4{aj%g@lg%jm^N^jhjE-7vF7{fMo5hx8MY>qA^az^PNT>XN?7azqTve4f{_cBK@6}%K)m~lQwf2(k zq`TAI>F$t_1rm|~2@w+Z4Equ`6%bG%2qFrif;g_A;wZ!o#{p;DM$wsZ*O~C2as9v< zb=1#sbiP5yPr)v~-?{g_diPc@>2%Uy<9}pcx~krO&pr1nzwA~%s!>&O@ z5^fm#?%KKnEh2*YLrhET?dO`&9*Upm%`+Ulx@S4gluKde*Kbth=~Lq3-z;@?5qB>` zmmb*ma5dN?JR&YI?m~RfK&3x!iuS2!e|tM&Mh zI0F%y;0^fX75Z>~`*M08*)17BI@suY#cUelL)=wyn} ziVjfZSF3BgOkadG0%}7T72GPwK`gvN^dSbGeg32Dp3hP)`l5IP>xSOJx9pacwHjwu z!(dlWJ8fewS4FxtiCk-r*Sh56`qYRrhF?q6qd@2Y1O{AK^R|_*ymckHA+^&^uVD;W zth=|j8)J)t^o~4!NJJa)T+GNf;@P-9bGhi-V+O9)$m#KXyx#nYM=l3VSIy-%o_1Ol zr#mjLgCG;2A=8rnbriMbJZg*WiFlxuq$P1I9;LxfYwWoQB%4rBg>}b5s_RAN zT(ou&c2%q$39T0z#qZ(h_t*HE_8slV#PNW&gpV74-?YI};?fIomz$V|@GUsObTadh zv2sJJh>2udy!PwCO4<|+2*S(%*1wp?TUPc82Y1>pm z`tCCCfSzf8T;?D77Vk)u33+FGi+2TFN?fyb3jGJNh(kuvIkZ*F(ut_hYIq^1XyB%y{PC2gr!**=Ayk&vk#C~BtMuCk+ypazAK zfTBX;V`00l9RC^cX5NZ-9hCkaX zyt=dXyX%6_gqxx?CS?7G<%tbl)CR$hWK$7*<6gOG$@*E3`#18f)KF27A2?VDo8A5| zREmK!(DLXO9qM=uTR7VckKnTFo#%|zgo3J19P4|AXF!SP;Uzh_1u{vMEeQV_ymaUFw$&`WwYzg{0F-#eQ# zp-xf3B?oMJWC`TP8m~J*2|I5dnRg{0>^qd5Rbu9OvO{^67~V%d%W>Kxz3B-NwMBpz;_K(h5cBW7Qfk0C18H7 zjOajdG^Q8oZ$f7ej4tb-Z|eiw2AvKg?=*(#%Nz2k5QoBqo#N==iOczp!*u`(U(2UZ zk-0s>Hup`ygG)!v0DkKP_8L~Hp%Xvh1Vxv_CcFVFVTSW>@7@72XM<~y=Le5Y8!DBXKW?gFvwk;=B40UEIQ}zamr!)N2uao3AYNqk1^I@ zm=#EN;{D)rejQc#;}gFwk^wgXu5=PELs7KiGlkUs^w9U?#=6;LA5}MGq5+d`Fb3AYPIg2orZ7etY+sYfK}YLNb5FW;Q;d+X&`4M>qe^m6tj;S|ja2Ne@NoFa&5d z>lD6iOJtrtq18Xn4{gsz?a!SR_346{xk@|qJ zhfX>N{~WuTRPEk2CVMyF_(S{R<9MU5p-oZV&LCo;)hQ7dqUps;T}%TI0q6NZ#bXi1 zaC>5@F#5yGA~6t$Pc>yV&eEG-x~sE#D#%rVAX~96pE>%}5eypZzK7_) zoppPQq%oWSrSkvd7palu1zRq%dFP18<{|0}@fp-_?BcwTyTjI7e3a!Yp<`X5kUvjS zXVQA772X}Lqg{umz?(N$uRo41JakgdM9e74*o}&2o{oFntcm#B%Q>Hpuul#F_bPkK zt%!LG80O1N+6}-W{yM~z_{;1pEQ*YPGQ`KdLQndsGDTR}4&~i$!wSmRM97LO6_|-r z)F_nK+E2|;WOsITyn@|xwY<@>U5Egv^g!BDB>EPjYjHbyP-++}{=fN<*R1%atrYWP zVpUebOumyo^~0Hdmx~hh#_B5045UPV zUryL(6{+y-)=y%+CjPt?9P@gbwwI%*-oh)esgLNtYX6B9oA8Ru*f=~a#gLQ(Gvrpe zT^bO8p(2((*-b`7hp+FL>|WkQGB5oSff=f$Cgo@mIzEp{H7>OF=lVp=OA_TaumI%P z9#XEtZUsPBEZs_qkT5r3yF;iEK_^(@WQ!p9PXS2Zu5K$vM7fO=yJ`gvT_d8`Qu92Z z-XsoSCzL9L5Y|Xz*i+44K-YgtM{n{Htu^Urx(Firj&7&K@?d^O9Sh6-e|^VyQEV~p ztjLR{WCNWBo90)7YtA00316M88;BO}GvupS4`9F}gq6WMYq z8!7}k8rkLIB9eiAtT^Y(S&5P*u%is#EfTG#)%ca)AI|4#-@$t(%@Mm&l%E0xS8^Z< zueO^INub6C<%jYV(V;wId&vXZ8~YM~dDPhxo2l2xi=O^XQ4S?w-p$Y2 zpkp`h3V&`185^ifA@1K3o$3EoplWL)HIhmHvrJB4K6 zlo%TuJ7woUl=Esu0*Q`Jhdbo2Ebl&{n%gu$(>{?4MT?!_u`F)Il6WFz8@9)${<%`0 z*f=nlA8;rg0@NidcTNmeIw=hKB0H(;`HsF4g?VC~1@u>CEJQHGD=UqO4Ff~D0Vl*W zpkT)+ca9HLC?MT@V=~E%d`EAoN{e!-by!FJBR&T{OP@Ie7%TFUfxxmI#HX9heJI#V zS7Nah7A>VaswWQ;)+M!JFqF&ML9_Wt0$nZ6;Qq&n7e`}`9WA37hJ>34$M7z2uh_hM zU{kJo!tOG?pGapBxzYq@#C%UVIGe-UN=qrrBR9E$>V*J!wZ9 zMLiY**=@eNKxMtRIs^Gt!$*zODLfZ1Rr*)5YJ(9@72wRPs-@+nl+Kb#u`C(UMbAa*di;6qAE(<2{*tQ1 ziQrxM>7CYMJ7W^Zaa+=J2=xS7rurrXWS&6RVuD)=FRZ*<%U)eTLI+@0T5<>;cEAS- z9`HFI5I=km?LejP`qcnR(1*rKf2pDcE=GNa&i3uH*FpulE))mC zk>-zl2pvk(8nH_`s2$rcU_riwL*p-wP5t}keH@QfA=zABCkd755E1Nk#-I^UFh(7!0BxM2Dr4x zky(y}4}@yJ3rFa_dArCPfDX6{vI1Kz9%He~NvUJocr+H@i+Ce#*vRVl?!S5Ea!@oD zVk@fMdv3e|z`_n=3odsGzuYOY`eU5aaT!TUhbUNe`edTT4qQVu5JX>_pL5wEHh95> zs9{+fLeU&wStr-)W%`@)JMcfilSkq~0q-Q% zfV~(QHVJeOIPbm^*Kd_4Dmx~+{lzz3wjnfj-a4nt%sBlU>%rw)cAYS08C~`CV=#;h*Aeh13d4_T$6o&pI6ZD$@wmxn^1eX zz}@mSwc?Mb6&)+vA+S_@!)j9bpr~T`1cv+p0L>Q0LlBRXQRDiGlv?LD41!Q((y=h<({FH+}51 zdm2>cXmwn=4uZ;7Mkf0c^;{rP?z1RuHFbhK*e-LMTipmf>qT$i&9_{5*jXMS6Q`<% z@c`TWYX6#7D?98X>jInRzxW0<$6mSj{rk`U*-1(2@iBQU<|;dD)mb%8)==2kiv(a7 z`_DF6k$HlASvi|W1YQMZl?SwkwNGnb)}GJ=PmnAo3TOfzxSvu|pjS$Vjl6J11pF#b zCO8?bT)!%jbu}C2DQ3`c31{C&ZnW0+nPO22c2nhgk<|TMzJ426d%3QXJES43*~i-JzB8|%8iYKgp$@@&SYhqclxaCij(qFMl` zvIHTCXnPZY`d$(ViodPDcUuRL*9uLJ$g`JG+Siz^tH`T>2|J#!BiLHM+qIPny%J+< zG0_lxx`o_ z(Y>c9Yo;CR-$rJPoGkH&`}~5wjlrw6U@1rjXWIu~^(nk6$_F((H0udefgwtY76ni9 zPT@%luUZE`tp|je`jKx>5}%l4ae6t1E#*Z5vxR2geEmS1YEXFfYD&*utiCF-5vRN%+K%-MJzB{PmN}A?poB6Ih!)EbPku=2^1+_hTfC)#NJTo zqu}HwD+ys{_V3DT_qp|w8d*D&+Ga$CC_a0qM)6sym+-7no-8GTXQ)S>xnx-gsUqdR zVCRw8p)@2nk|q(R#s5f|jv(L$#rNtpkxay>K2%&QCr4QiMNI_)D)DW#|+pG8lkcM z1@d;|s3WQXD@k1q&&1eXuid8IqrDTpGfEY~v#00N!r&nX29pU!76y*G%Fy@;-=`0B zd(_(%Q;ohQN(vEaCzEN6`%CDRMh(q-%v?T*h$_q}I7mTdM;sznU~VvrMOiG+%Iwp> zUa4LiOy#mMJ@6<>w`0v`(&-YPYw5tTm}Irx*?5ThBYum|xE%&d$125Oh@~o}NV+2y zOC+qK9j~PHVzA<{p(v5Pog{vDbZ<_SkEPb zMc)3SsINHnMb}Rvfykc@;*v%Ic!`b|R)<0Xr`{DboH(^`jW$+V;edhOe0sprsYOq$ax-(R z{z|~KoUU-nVR6R*3=}%-{gTlRypBhH+&oua$$@N>8l4g`^6Z8fxd8B?+i(uIPu}pt zQ&;Fk;v}(3g|lxVu|?jY`PHLdf9ItG9fQQi7Oker$6s)9KQW!L8@ngtCYHTuJ{g!i ziWSLkc1oSczBfyqX1aTddf_M0(Hei87~~p_W%X_G$?kH+=?rF_jzTb5K=Ey&`H|y} zZA{v_!GfuJSAbc?q_GA}0w|wU^kcI}F&3OQu2`o{3$mE>;(ppT4@eJwf!7Aacx{O2 z??$yDA~$^qS!oWV(Gv!DJ;()VA-a2LX@j@laKUR*hFU@J$gA9#EZ_MghtH5I>^Ma<^azOP&NjIeHG1KKiLkr`h@a!(eu}{^O{%6N=<(f zr-A_?Wtm{KOZ8V5FRPLDfeRzSa-nk z+rqo=-m1OT^#(Oi_sM0;z;h5gJAdI+aOL@H{CiPyB`E;jO@tdUE$7V(%ua{t9?I$Z zq;QYv6_W;G>9kTIY82sV#8?M+oF!`8wyfl1#EzD}!Bk}@sh_7lAqQsJcsX(MwIk#n zC5lJ&TPWB8$Hr;uA?>GVR0{bGrvpa~o3nV_2&4EB(>lg!O-h#H)GK=GWJL--#!uL~ z@X9R|Uf$2|-VHYk`I_+??8<+=bmZET<7MuPCe8je1uEBh^NdIM7b0lZYXC&wP{%yrQ3y6M)3-{Ur5f73g!yBc6LXX+H%k*c7j9Zyd$ ztEZ^MDjma0lpO5sIM5X{5_#Z5EMEZHu>%8j|GjoKmYDhraE*~{HM(slQvRzM z1WP?fn7!xWTW{hh!mF=)=bPvp`cv)WRps#w;y})z^W{2i2lys#1kRSaUVcJ5fEe9> zu`r9UG^?_4wuzn1_Oh3=d)d3$U$HN<@3Eh-DNtCK^ktZZc0CLy~+$YGMBJL*YmXtPrISV0XJK z+{8F1Y!T~9nZXm|)^wjZNIVSIBD!CkPng*J);$v&mjJAp-=#|?=-xfuI{z9EZBm3c_6*wRgl6IuL*+Ik1(yeX;&)=-L9>G z*~kjD3^G(5*RL9>bd&&lEjoSOfD`rh6SU?tmbqf2x0i*0jw(3eTD9wVls4Pnt&CL( z2gS&GDt^ianTW%v@ww$eik92SKxHr*gklRuD+X-T;%ku`50pC*GYls!B-kzFfU4C# z8_TwP^oU~{m7xePTaH%rRH67f#-hyV>g3g`;-G+m=uB!&KVl7dn&!VSlS)vyat3T> z08^Z_jg!UI0Emj*SS?a*XWTGwI(CvCSk_}&7U z$xVf! zo(wOZ&DA=L+`Yk6B!n(&d5o6H5&=SC4eChqMFQlcF(Yhcs8D^RJX%g+C3fQI)Kt)q zG4Z1nuU0$pJg`vLnk+e1L)gu>Yc_heU1k`SdUcIMHdiQ^3EG z3wv=ut%d`Tj1S|0U?v@aqZJAy-i9k+@Js3LEUKg;QQSpg)ru_ut>D6;aw?iefG=}T zhQ|!)yT3@p`?or9GBHRcR4c`U;SfBl%p>GAa^KQgzdRJCuN>PckU+gEp6K6_5{Gme zW+4%vL(D84Qq;*Ewbri)@w0e`+~=&R)+!e9m)pTqHV{q*sT}f?)m2boxM92p09S6r zD~c2KL-^2kXKjv|;MaT1xCl9Vs%hGwZAW~HdPY!1(?i;$sOHe1X8fc%$o5>t=prFS ztO@!Bp(gOAx|VkrEjN^sotQ*u!e4lL4fzA0=TLn!J99oojDheNv?78QP+)1m+VBs- zIo-l>C8rP8T%anU@~9a&8;R5tS0{oQzGb=E3u^pBv?EH4^xMEj&ragp^Z*Cd*7m3NRt`}ZL!OkaxmXqx@%MQDf+85i+8=R!Rs<5M% zqIh;LUknl4@i^Sv+5G0tiq?Otm@br$rnslT9QUKs<*yg_zFrg17L;XFxkq)) zq*M>sa7A*5o#B)N9USbB?d{7qM??fFpTM#J4?aZ#f!f7S7M)MhLV->5eUZ)7tj9^@ zjbK;ZnQ&4#0|>xryUwT6aRHNe*VpH{14)+fWr%1G02Q3o`}GnVPn8%H3h)8gHqXME z@&H|qfavc~1j?=2%m-5TUer%G&R)CxKjQ;DXoMSWIYDl|Xv@GjzH@*s4tEU)y0ABj z7;vQHmV`=0?5x|bWNF?3SS>;p*#OYBH#ph1Ab?T}Ybe2k84_tNmWmmm`pn@Au zKXv!%x8!punkMkh`>JmBG=Achu!Z^`I>wWfD(WDgKRWeyKHi`5dtR_n&F_74=SSan z^ZL*-%7ulh=IF(@y>26Mxv-~BzVhGHF zlHo?-sPQ6?)`Q^%^cHKxIJiU2+WW7RFdn}&J`emBI9s*wG$ZOFD>kw;v>DRlKUZ=9BGr(EO!1 z>BV*8@4??vjUH>X?=ABS%znH2u#ojD#6Qhni+^$E7RREB@O86B@*R7xtobD8=8<06 zOb;I|P&H)=hQrh^;l|L5#6~YK?48W?lr8Fx<`WBhDe}X4!=Z2WXg$zAx^>&qYkE=) z&UCDkm+xA|`RbOtRn=E&x1cXA=PRSdp5|kNrfVKTj0y&^fK!nped&28JyN{_&>Ko= zB5YFEVHS2n4;c||K+|KYk_LPZxq4!RF0X`g&e@5*&pDqk*p7wl`P(IMX6r%}ML zNL2^tZd?n&iVsr(-%rlCkZybDR>WbVdh840-uJH^vjbf$?_W`%2{8j zQ%Jnme9P}IihZP^Ae{p8<4;BOuA-l^{ExMzMl!QCYa^_lM0`e-O zv>s$UVB3ok21$>}|8n!^LZh@&=kP-O*qQ>u&&v$)eKN7Vx|=MeDu5w5t<1uiR*J!H z0oHdPr~Sp2%6Tv*X>k97Mgi2n*lv_Rl-wQUgQi|2>wx0ibt(UWborK09W2OOLbc(d z^LkomUhfn)*tO6WBpd3qU5%odt)Va?wp+rHHx*K^!^qH{f02yf8$#u64b^_sHYC86 zs94~3`;T&F)G>s3#C-d20EHo&*~#o2p8uS;-N%(cdl9;#31rtzw)+rIdKRt%*VMQA zDE-D|&}EGBb_UEww=3{ zL1Pe471v_wQG{mniZ-O9P<7%Ln|gWWwWO1Z;<>%I149O@9q?4GXq>#4_jd3*eCq<* zwZmX@@8?LI>|7sa4qRIuH$f`lVsQnK2Ycl*Qk6~frH6iufg)k0gb4^qZ~ofAK`#eS z#gifJs)I#?fDrD;6F?1gT)GbEEfg6r8$M9|XR<7F>6f?Dyk zpjM?-T^4?2wZ$xuVmR_{hVnt4A*#lfrynvP{ygn-7Xuyn5_Hd0f%3ARx0DacLZL*z z<;6uYANQ@fY)6_WInozVS<}BdWwUHjnzdruuiR1Pf0j^zm~XJ~={q^+*@ojNaD?UY z?KproZ-@9nG+cLl3KcT+(S^BvLVR*74N%G8wIpy^h;f`3?WAA|X47w@^+Y}#(i7k; z&L@ILyO8}xM%Dxy$5(GuEe0yD_5nmS%X83kv&~Z+*%VEbp(J5b%$|4+zWTPI^ zJ34X9Fh2&{7s}Jm89sHAvX;)8t+@1ikQmv+KVr+qw_eEqKIteFakC4$dE+XI4Y~Lr zJiG)3ANO6;eSS0pc1NoQL?0_Ud+C*7)BJD$vDvT1bK@7UN{pNuyb0->{&+CrSV&ce z&^R<&-=Y>3yc`)A9*D!XaV&NnB!ix|n?cr);Ygrtz_GxUv6~ZuV0#IU>E>CR?nvWz zZIe*c5q_BGZRFmW9!~T9+TWswd>cDV+v=js0@qQRPZ5_t56D#F;Sk`4MLa|@gXPm> zQS;*m>FHk7Bz?uRJjD7S94pz2((m(oAQGdXr_9}vzNj#if6))_eu8ezvt|FjOY~1r|%Ef~6eABCptV za&mGtwUJmc5Z$nfm|h-Kg@^btDPJ%)L%!hM+J`k_h5l#l-vr{FWmt_3{W0bUT3GGwre6;gxkw(w)r6+49o5u*rhM0QMDo`$X!05Ne1Cizv1cZ+; zv>0k05If&xSIun%`m?s0@#Y_7z5bks+LaLcD}oh!pM&}X+I~>zcGt_yp#)|FUuLlV zi2wBT=)NyHiY1ZV5D#G0Yu*Vi`LFvC&M%vB`%!|v*pJxN&#N<016okv?ax+X9)3Oe zecJmq5%YKgoymX0j5hB_F<1c7^YcuK!J-&OO0Hcw!R(2u*>_W}qcm8V=P{G=TtmLm zpI)k+CQmP5E`q7$qEi~T#;9n@EC0w|=j!0dDjYUJLleH5z%2RFLeTVT6M zYa+Tv&`FW8bxBnjFL>nEgRuE&SB^*`;w9p{1SAQlQ;wVzzz_V*SzkROT8=0X(9^yK zb$jM)AjBy`?gP{^ccdpd0G3}I1_nQ$5_mgn<#v5=?*wnuuxsnOWe8eW>;)@VOzx>i z%u*xLv2A&UI9l0R0Zz4qykMuvHmz&y2Dl$U#*HIGW5^CRpIqJ#+Q=@aQbUUL$C)(G zBLbP%Ss!7iZ#{-A@!sbDC7@zT>+B1(nhkx=;fODGUH z^?)omQ#;35XQ#nW8(6V?W7101zT%{}3?qkUCb}n+Y}DDaXl~V@Ot*I6SkZs&2Y*M*dY0P;@uQx)L^&umK-u^oOaS11J($`U>^ zUGI8*BF-7)Ij|LeAEjrpDgLc%N0P<4yS`=uoVu-Dg`D|axK64Gx<&ST zWfo`})zSUXcsuHeiAQi5a8g^)GwlMPa;VYY%p4g@WJ13Uy5z^LR^2n$9f%2k0< z$;D*i6VUa&fXxV4riI!XGE$8e@Dh;vo?e372Xhlp!PNZ%B_GshL5?&iP51ySYM}C+ z*V;ddKU=-+UV~%=`*0MkBB?BRmz`igwJYX*0V=t5jQh;wxAAcseaxneZD#VXLzUht z7;!SCShSQ4uD2uBz0?qgwl79A(&m%AK`J$?Yknk^$)sYXlwny$s#G^C_Ln%)1Y4v( z{3sl&_~ftPSoOQ`z0OYJRzwxfeZlJI%%t7i70EfF063izHr?W+!5jw8Qm}}1p_Q#fAHB^t znSNx~tkt}E?qn!BwW($Ac^%fD_9GcDkESEKxgTYJR%E}KX|9n){*TK;+85{q30cPK z!Z!VTp|{<5Vg?U7bIEU81ln zj{~}$I!wM=dlPv)e%b0=gg}#RE3g{xLI#hjktm}JZbBF7DEl5t;+CTf2^3FutI17M zWo_QCcH1RRA8+NrO7oDk2B9x6EJ(4aOl2Y?6&u|ooM8e2?E$ z*5-60%CZ%plyhh#kem85Sw2`A*T8?Yvhx4jI&bAOu1desPwt=1t{z@Ep)-(iqCkQA zS^0ys*2v}z!_L@+fRl{tELShF%hZw5G|>b6F&=yL`-%w+@ZB0kkUpb*Rr|K~@7jN3 zos;9{^ftNCPvbB#Q(F`z#Xf7A?x5#U67m3ZN+C-RAAmkkWI;kRNij=LVkELl-yK!L zMT&2#NQUkvd48Zu2)T4*RUke|IT}a5&nf)=XYKf!ww}&zoDde8pC0cQBPO>FyGH(9 zFVE0utVukWBnjdlmE(Y=C6BX>JpgGwFZ|zpLOg;D8ESdf(+_L;u;Qp={nQg1S6hg= zxQ4c-WgdQNpNtXmbNQQ%_0mqLk0$mgFfYtYgBvn5m|L z5qYp%ItfM6*XtfCiIEZ`9Frp&%3=qznS?+H1pBoQR%Ou|rSm$91o&-!>!_=S5yh<~ zyH7={4hnF4OGz`fYUI?@FTs~7>TS@+2iO-B&V7n8cS-K1zAvkfD}@xXqs8d_bohlw z(X9-gN~lotP4y~8x5FJBkXcu9*}0dTv3ry#b(i%X3+f&0EsjNjSqtpu{{{MCDQze? zYN;1Z9ChbZ&%6`WOT?}7K~yds(0ZBYMGD>{TR|}-SHtZcr`-~A z8Wk#3g|-&uOqku2RG=DJj^ol1VZeW=FW|w5G>sy-n*EV>Pt+qPC28k%I1#@x@)CKJ zlky7?V|2sMQMy+TPQQ9~1O>VLk#LsTE>6|<{1RxCDOMbQ5k;@C8{-`ufgD1;UnMr& z)zEt@oZTRnV3AM~JvF`=8Eqt~Y9Un$2FrE(B19c4VcQOc=-VfT3cPg9}B9UJSBNJpLu3fX46iULPew3)gUKRyxE z*{XBa@lxx}yLGHps64Gc+BcBNOs=A(#pxSJCaYZ(`)t1H_&Swrn;omeDCx`QUXnBo z{g~@^P(8kV^qy5r55#DPpRO1x7EiioZQRH;;=|Xk&t!UdmA)Q3+N4f0ftA$oWlAZ& zVmEcAIJn&m6Ti>K3`=t+1#pc)( zw%P7pP}CfA{h4|3v^N|di?tjbPvY$K$L!-Jox2ia8`Nn*@w;jW9lY5VW1|vN?^6WDe4i z$(d?_RF)9MN>e5X^r@u$Bz@YvQz)uJl=>=hzUMv2r%9>585(v^?H=5Iw&;P0-gt<# z>`*`7Ud@Y+i*C&jJZG0EBx;x9R07n@`eEDV&t&DxJ|%9*RiF}-hV?BQ7Ck5m8KPUv z3pL$F6YT|qn-idqZmsqLgo8(EJq-_U+(G3>#x7?!uvfD; zu?N`0>~GoEz;N(0_8Z**fm#XGaFhCG()1LYMNugQYje=*ypBhoq(}wT)DyavH=h=o z5#T3U7ZB%gBgMoDJ<&%oT|zS9w>mYa=;O&{JqK0+0HyF7jw9LtA0Z0ODo9H3Ew3gL zOa=TV_(4FX5YmeJk3r)juEHaYa^S?8_xZpOfWRT$gnz#AY3EbuPt`Yp(2oBqEP*b> zN`}*-)mrOS@FkDvd&SF`ScSJD9X8v0L8X%yE^mJm%5b1pvUD~I%8Suxy9*i+7nvqb ztlUK&QFs{NbgRmE^vymV%JkMh56{{FN}8A@jZk!NsI%5-p-Wm3O~D*vogEGJ^2)oO zQ0>o`FXuJ?=kRSchMovETBhnD^jaN3gbAUuIQ+9{zLJ|LEk57Dpau@csam|>%wyO^qiOWYwg0VAcSw}Ey0cw*WlmPIo$9k)VNk%PfBv)r2q z@LPIN8k_>|q=AP9!VtG3?u6(ba3@27U`I8lJJqfa;Vo8ZSnNtN@_J=hoT}4lSbSKp zZK8*+6ha)u&0CQiLM}1%AgfI#9S2zxw2%v!>0$*Z-A=WZ$sNh)m8Qx09TI$d0mziH zx*pASL}IyUa5Fd+0In!QjW+)W{aPz_JQWN_jZ85Qx~0%?h{A{1UXqO9pIU`)OHMg$ zgv@*~V?@Kj^wCDfxyb1P|G-5~=T+c1-Acgit+Bt>vtV)v2cx-Iq$3v{aWZ;DM=_j% z?E^>Vd`W&jY-@NOd+@w``#R-iG*~2^i|pY=1$!c~o1IQ@(}XF=%92L*+_v`-!;NEU z!Dbj4$BP`0XwdeHbG#e*SR@mwUZIgWdvNrUY$rd{h!9*kEqM$xuAt>k1f z8ght3KV*k$hF#8pxiZ&*T84-iltGX_WE^Z6c*iC8rLE>!^t7h_2!~(u%-Px6>sI>Y z0RE(`r4^O9;DYDB^V#t!C{bu^7jc23(dws(@IHF|FmMmtA1vG71@lpbw#}eCofcT@ z{5_vFpTZ%H0)R~b=^-#d1^Q)x;dXK3d{@wE*iLXG3}zeKGP_9~58}i4xj`|gB=|50 zK~DTwSHm))KGYuqdi?9KZQEi!Cy*HXM~QaREh1VwwEN1dFKSTbO{C}AYqsEb_G@9vwe{uo zfCW#FocWTMUC|3x&U&=}mYa9r_3N9d+7z&{&TesN^BuzC{NHLo6G2QcXW|mr8~^?O zFJxKJf1g}Wl)X+YOH?$mol-vVsJ%OSA`?R(#tg<+Hu^3A$8&L~A1y!NM*m4e3jS)t!ymqRXo&X|TUoE4cgwBROT78Ub+^8B&!|x#)PPwkU;f79$oplHo3FvT zTeUB|%1$1?4e8#rv-9Ls^9yf!6({$;_7)f)U+OATzj3FtM6E=P9(5oo*E$=wJm<@E zJq<9)k)t8|xGF?xNb(YtqB2YFjG^{2lB*~t<;W3W++_8Ok_)B2f_*36h};sPS@?=* z0AS=+5LHaQBtX;eiw8lYi*55)z(!vOQeD2K9PNIp9NZs!RIOcbzx_B)eKzkZu_qE3 zkHwxQDs%96yi1v{1vC$PAD@!%OVmFlu8Ilc1$zGtaK2X%KpFQ}|8yb{J)1-O_C)H( z$8crPRABQh+{!+>m3^^0{cqojGhYWV3Ey4=v+`-OY@Uv_wb_&S>l2)3mblbU*3Qwc zpt&dW&Zm{(Qj**pd`VFW@*{iOiR}H_9pu1$7f&6DFY^rCLx^=+VPxQ5;*Z5!QNr{s z-failFTt=o+9c#o@aS;lHTd+0aHPz)&5ucO+c>Cx9zxgHT4aCNdP;uf>=H_Ug`ZAZ z2;@GE4nuA%{b$sMNR)LoZ%c;RKca~13K*$~Qe2U&eS^CEtmOq>?2Aa3SA=p~1^e}B z-b454WUZZ@Mbo@GN)ZPay%wnI?ONcpUa#G+eSqg@sJ33s&LE{BL0gm}3nddHkBHPB z%nNrKw+!p>>yRxh87>O*8yjtuEV7d?2J%SkbVORtRfi6Ft2$}uSv%l%J* z7E=Q4UO$j4T4gs_OAr`e>z6G_$%z|QpGOf9YD$Zh&c$D^Ro6ckv?rlqclit1l};vr z3~`NbL&5PrGXyrVJlrLg%mhpI?5O~aP_=W4HByDQ4)?!0W-1r5k+i3E<_+i zYHh;4>Z4U;qpA65t4dtV{Shpt;7(dV|1~RoSBO9PN#2t;*u>i&Dosb>njqC>%xs9~~k2q8z zuVQGKB2^nt_;M=*R0e!uZo+V+Ivw^vdopxwwTl*;R2mmRS1Av8PE*ahYd(#At?dGK zr7q8)zvLa%_QHTjJ5L(R>jDgv<=O2H-JRcZfVDjkN|h5Aa=!Rh>N`MlKV;P?(U8W_tJQ-aJ9_)_vhQq;1^y_}H9o13O7oqiv{( z-+xWkeN;paE%li1ETB$-oDck;Oj)oehlb3>Y861i_1kY=QywRo=}!0V9>dqrah`QW zMUt}E%!HSi>vy(HH9Ms`$o5{rH)yW{Zsh^(FL@Q#cLj1E-4D7Ls+ikWT}aC;T5EPJ zEHL-8Xvd()mWpWif4JRkrxu15M1ZSM#@)$(fu36s9r;CLvCCjQ-x{u4kSE z;0NTBJo+fECh-+r-Stzw+|A?wj~T^m{Cq(E;HJ%+p!W9+Yid&F!6KS>%H)4gZ>_BU zWAZG}U+W(-y&7A3MDM)QcDjq{oHm;w@|W3d9mCrM$5J|l-?l?hg9j5+9h{iW>+tY+ zLOh69M%-37?cE|UY@m+dn>P*|BLc2^iijc}Tz-tjqo#VAn0^4Z?Z-dZ6y7h!&I6$Q zkND_f6LhU@Znf*&aksZ5p*bkR^S-t^7zM_o=v)MWkh=g2DdmzBZ$izw$gv?sY$4PB z@=qqJWC57d%o9amAwk|64lXjk%nBcTE4fotIf9{Pe}n3$r`@(cPdmxxcg4`G zM&;Afyz&X#ulTm&ZvRiW40dLu6Z@yOF(r(ww~m(F{#oSnU8UXRa*Yao`7P~7qNAZQ zS}jjQMB^qUlTDPK`h(Q2I3=a06biJRLK;{2?Qk#rngCkg`SL!^==2#Qh8Xx={P-ey zQ?0eWCd&{`=HDySrvE_^9?&olpD00VxccFPhXL;QXDN*PmUnQ&H2vpe2??z4PVBZB z?H%5{v;A<=w4iWcH@3}NUmeNX%>P!U#PsMBq^jGyaWmet%%G~LeuN)WdKWsgTrA{O zj%Jdut9n>AnDwo6EU`Z54|}8w1qN`ghb3!130w0{JP|MZ7N>u+mt$7*+%}1YW9$orM@;1@5XqBmTbJeP5HFy;3NA-obxUM36Y?*K zuIwgb)%C4Wh2bqP%dR5G$}ft9^3FScgYB&t8!jvuAlDqcxHtsbE0R4@OHEo5xEh?I z3hB0eV-DH*D5`=x+bVZsJ8(d&lQjxrTE8?O#R(s!@h1MFCfG2zd5DXo3NBHBOGD^! zvUwD3uTqqv%g3gcY*WKTeQ7=CFS$+H3$#DuF%OW!~i62$y z>CZM_vl;)Jm$nMSJxY0Bh}IcC`59kz+|ybd6%Fj&y#(YpXC zcHELX(eQ_->Hk3)5;rFLIgURSnDuSiY3R{%4Pv5iKqTtp+CONIYlLJ1E0}KtsGl?Ud#Et@rW1(S%dl*%>wz!ff zcxf%>Eh3-j3h1XUU0+W@rz?V>BsG;us*kQ3qt?^T^5uAsA3x`^6xFnzeiB=M6vE49 zV!ere>1P6qS&yHYFkU5I|DW}*pf-1j{$+7Q120(7&)cal>*tOC#4bi85wOB%qOYfs zI5U(x(J&Ge_XbN`8sYBMm!Hcs`a91+(5K^>qwm;?0$XS8)gyY}N}YNIG2^)1n|22o zwHz_lu0$!9gD$Vs&lp1uupC7z@!HnLnzOadA%mbIA z;r$6nZSd`_MdvO$)m={UfA!R(lt`_0Qw#Z*H@ahWv~X|K2!ViGtf@sM6^*Mf?!syviwOyyuf(VHO=#?H=XEoppC|= z)4_ZLdbQ9{(fKq@fKNNcAGe;+)B8qL6=RM=@N8(mC-_-y-Vhl2Ezye>i;V z>}W92e3a8#vK@(f^M3If^gD$x+35bz{9(M23C3BOeilbfqe0iqmVZ&)wruX_$J z+gtBor_Ez8ccohJu(@XA%!w%1w1lT5SD{fU8P}LnG#=v_ROShF`*;cIkHecKWIuZL z%PbSaH+;Mzz6Fd)^9glgkRd?NsD8WPw|vp`3E}DD18qM^Icza6s9*GTi2MRSa@cQE zmRvyiHyM0x7*ux7rEu4R2LNdYDRty70digvT(9zo z(BR`gw^)DL8X&4j4}Uylk6Lx)WsNj0e^|&He?oe=X~qEO>*dV73x2!AjMlCZV8Qb* zT}qjD{Xl)DE;#}cEx#I-cUzYA1-vxU(q5npF|(F%i1)YPSEYLEh_v})Im4PrJ#Z-N z^G5AmN8nwl(&lDyT#h|CPDAjD*~ng1e?vaw0^Tv0P7hrNxGNsihnJgJ@L+gyE8!F7 z)B_l)sKPYgmUW0-+W2JyMpS`|L-^^z-w)>;YM(-K;NOlLn44H%>3swZqq* zhdIN&E-wofA7xQ#vwuhqt~vs9R?%cW zn{Q_x0cn(HoMJyNMEU!6peKMw=IwZv#|*M{HjkJdwrsU&X9VT^I<_>XWeXUZ0G)=E zo>{TMgnb{dkqp`p~>Vq2I7i4b6biwZr&bzF^!ATc6K+R*5 z2O^Q?Q;}!{AJID=A9E}q>vz0k)$d!3_0IsH9j{fObkp+6xPTYxMM79IYVGF)QrLd* zFs(ZE{oN1rZSzsi|HO9K(WX)rEXCSr9i;k_7a>!9*AbYV@RjAl5_z>aC}Osab9o^z z7A|yq@@?jDlav%&u*8x_?K)|&1U&`P?o3NRu^rOFGt;_rgyMQi8vfvsr^8kcss-&0 z0lCshBYLr0`t{k$o`{y3ISnNP!u_Yp%G)l|Gg+Yc=J=e2)4{P7@!hL1E-2S)~ds&PM1 z(ZGlu1@g|&}W+OVL3^4DXR271A7)OR73FxfPllh*FTUtMH_X(sntiG3~L%@Br&$4S+!f}3kt z@JoVg=w;rfIoL3OytMXAHqVjrwG{(hu8UJ)vS_iK2Ka!o$hif)zo{o3v^zIY>IAZv zQUYxNcBAyPV(l{H7g66hPS|P$&^d00Q!@JXY@JwPvI~E)dWpibC`%&mDBC>WN}!J( zSeIza^3+=|0_qDV7d>Dnn%~v4v|9;X&T&wwO-9Mi-+KgPRDm7KZ~AbBbL#hY+}s6D zNU(VX(1LHX&0j3YweXUOOdJ;Fg5Tu#+uqd^@|%3M53eB^T@-&(vC64&cnimHxM2)A zfc7JlaPGIF0FPn&l&=OC{N7ysmmz-RN2%w#%|Oc4bg`v^GxH0;gq_X#3Ra+J*74dI zJYRS_I%d63dlW2q-_U-b{gUaZ4_Vb#RUs>SAb(sKgNqYFhr1vL4E3yMK@Qf#Hzx26 zRDrf$Z!tlmcgghX3@LWqUMxakOAt{5KS<~A;nj0g*A8R^a7!p#2e~xjnz&csNEFDa z0v|o7LpxLbo$=%f9EtO=L zsA)Qh874d#iLq$7`O_qE)w5zG*SxK_nydq_7fZ~1#%_>=!lLf z2s^TsIMYaK1Lsmm6f7z~-h=?!F8C;z~0g z42QmoQ$V92G&&F8z1^*cw0r$ch^J#Vx&PktK;{)90A<21HCgUNWxq=V@0x{6Qexj9 zi|ry89-B8Pkx;O&|KZ@exUKj6^FTsn-$8Nm)RO&KYYPeY;Jb{n4G#ZNax>-YEICDP zOJIWec%yUrwG_G_Y{HV9Ka=i~*7B8o*LZqCx?epcg*jVC3TK{dM)Z3*^ts25WjooP z=fMnACXhT$7Bn4?zzO_WyW}S7g>#06T)eEzG~fl99-1kXG{^paylF{J*kd`L3pFBQzhq5ImCIz#@Vq;e{NZ` z&Xd_)EJQz#;Cx(av+g&CJn0T;W-iHjc>Y||&?ByCJ~7u`E!0Wd0w_2He`#E0tZc=r zPXJE#a$wwF!{gPWd&GCNAFH#Gle;Uyuj$chzjjuNR)gjq%~cSs2Fag`(vzaqqPB<@ z9*0-(A?xW;A&k3yoRr3fGX$%B!g?iCjkRcOgi_!{n1I~7zc8t}hbwDkUV9!U>UadC zc}#R!xlshYW`ycf5s*$i!{gD|Hm~hGrYjjn)oM707;ThAM-Y#Wgr7lGZ7A_fIN#jg z=%O%nG7^i@4zByLtcwb)aY970D?p1rlb~Lj*s{C3j>QS7;5-NZcssl`98Np~q#xh1 z4Q?bFop^ThT4)D>>E<2&Li0Vl3~m{4xdwIzz^zeVibh8>rWb&IfCr$l{W^NdASexnaz^cNO&)=MfJdMoKm&k6t`bY*#Fg-|$x!&ssLAKs&*8*W4Qqlcv0S&3weVX)A>84c!=X=+ zQHI0BJKrdx68S*NZa!j{Ln)h`WS7yO;*f1LT1zOdz%FCgv)kA`sw8tL#X%(bk1p?W zM4=yx7!{nS3Axl(spiLh>ZSeuiUq;t6^hhF2GWakkGDAap@li(4|Cd<-kE0KX-Tea z-xrS9p+Rouif1TPuO515-yyAyf4cVSLVUsW0&LvbLnup56CApic<`A#;72T$=76X?U|*&)}waCXNNsBR*EGznbwFEbmkfbsVr`3&Wclf zR3NHC)UrDX73lMEWaee-aybW4Q77wv9!R_FnH?OZerS6uR{l~0Yan0UGG|azGD}&> zAyJep&1rO_Yi6qq({5R_m(H3OKMM6vI9OcrUx3y7pQS&qtc9?)EVcFHH#4HRpAVqC zyQVJ}UTR?)5)Y8(dC2uQwC{1Y@*o5A>GJ@G>K8~T@Zp8B=qxqSZ{bqaRRVzsL@^IS z;j<){frOm8_3F##PaiZ-AA(~8m;U@f9?Itlrqolbnn;-}3aimln*qP^gWw)jnE#E> zsI(-7ebO~~W|H|9o0G`p9L$~}y-)q1mU`uZZ28a5GPTr%xGAGjeerb#dP&Nz8{zd> z4P_CgSkC->+$UhG{FcF1VU?vXyKUO|NV9$|HJOLvmL1!9nJm*8$Cl*W@btRGgK?;A zXY=u4pC>vWkx&U1AX_oWC;0jNr6&JPH|jZ^{%uLhbQ57tnYl<-_!9SAVqQM#(zjD& zFeLl$Z+`PWj)AL~YkblyipdPdgeTbKOPJ}QXM~ZEDsR=ruA5_c2ds@2?`GlO-woUaiQyuzmBv zK(%x~16$4iul=bKPV^p9n7IEGmI8?dd`V7?!&?RPCUWN8Goc7ED3#dFM9aP;C&~QRk2XqpG(|e7A0cw=zxH@xM9uNipBoFQ z2m~C<=apC3VWy`j)bccl2|&z=W1#{4?)EIE-KIC%S? zB`Lekd|MCA&rW_G*0asp4Qa{Au;j+g){1FK%CPI#&DsV^1D?R`b*pusW55w$gb9*F$o<&Y*-}MiPcWu2HdqXg@P6Rm-vAbHR9I+0j9c0*_ZYbM@*%r z@5{z#L~wf`p;j7&fHP%fnI>p#Fg-`$xXClAGvM1R)V#`Uw>*R=0E2cs*;eh!}N zKD52%%=n_oLUdl~h(ltySuC+}8NR_cu(>rc8ij>$&_rjIr`xo9&@b*;*Ai?YOfick z6MAsQ$VwZf%VLc(dti20%?z|F8r8JTrW@|m-ljdsdj~)JBP!2c1!cZac9g{$ZZ__= zB2qQMyh?%>O9=EXxq{JygdYOah&HD!aHsYb?Y+;%EI)Kcki{BxJ?O9Vb5VCJ)(Ep- z3nPTuGd@Dr3YD*V1MSgk%&wF4p+9SrLa+=Q{Vg_Z;|k$_US1jk;(9>PF>f zsv3QE#&7Pr&iJf)@n-EV?cLgkwNF3$vy$SbN2>aAu?CjHsfS!9xmY94qpOEg$~dRp z^Bm>afS31~=nkHRkyq5k8gz=($X>iB0?63SQ0B2{qwPj+D0J^tu;LCLpCR-%M;zUs z-(OzZGhC^#Tda{^&~%qd;TBC6D6g{cnXi%9#gf7U3u#Gq$n{8nY<|5gkV@6i;t7f$QFE(%7HdSM5SpLd zJ4mdP){SS~t4CYnE?AEOqcu}_Q_24<+Q@hr_!)5*i#13T8k;r1DOa7$9glggVx2Nd zKAoG`z$S*6nPevQuCB1MzFr?@Lkz!6rs)^UFmsDGe&&LzI2LbU53kZl=ds__bki`tcQ)V4Qx9*lf97L#oopqWRI}N*f-g4 z^`M^8EBXrkD1D2*OW&*CuHUP_TmP{BY5joyD?>AqMyJtlOcF>T?{BMZ$0nd@kkLD^2|CQN#)|X(GX=O8c_cNWMw{LRQ2KN8Dl^%hTb}kl|In;i0{j+Z`v=Dt8i|E28>2)5@XTZ*Qk4=hjFFh8l^|e z(?Zzeorx}hkrRV_WIoU>V9a4cjgv&J*M}GyL*%o${0PxbO!BqYY>>>1)8Bb{0A_#7 zZ9~J~ED-p;eRVFGL-fKRRTGortNQQ_eTE#;%gxZ!SqZ(YD_(tHP8bB@@_4)6L3n=) z`M_s@VB9G4OY<230c)7n2+?Zfb9B4C<22dE=x=NG7ca(941ZqPjlW*tlO`rtk%_~l z!oslTAZL^KMo0+>R9~H*2&0=|`c5kZTE6<&_B0C=8wIAvMr(ntN;VgBGB9`t3ptkU zjKwP>Rv=aH3b0_nGPA7ED89lltVnXa;&iaQ6S0HL3>d+3&3RR2G*-|f(TrhMt8vqC z!Xd^SW+XyR&L|Dza)s_1E~ksj#YbyKSzONQWJ86#dNm^?u6BzaFmbi2xSA8t-K*U$ zUoBzbYGMCk;{zgy6|yq{JUl zjcYo!m-0;?B=9#gGt+t@NFho zu|rN0cZ+S@tk@2}TiZ!)cbublg$wnfxvDpqtR`ZWug*4d_d9k_hhRWLa5}s>BZxPI z*H}r~3H(#7CM;%Eg3(Muhj3LZaVro^jRb@8XhYU&mFSJL4R$mg*5ldpkIXO!&2lXn z44Rdgoy2UZ;ATy;S`P-jVeUOTs?+b)#McgeoR2khJK>IVr8<3_^YxDTj&iAwGjSF-Xb2yUDLVq2)L}T7UM{%_k=t};PsI53WjsO?v zfE~A3IF*aKiYpS|#1+>e2sBq)?CVEhl%cDjY9bW}+Z#Ja%I_lI8?Z-sqd);4J8Xs-ZX{ll>E zzX%Jwm)mV)6ZtW|lxK4UL57_mOqujVAIv))-)6Z*-7tlzof8XwFvqO`eB0oL-*_*~ zL9*S2-EElM=EJuz$Y6ZnD%^1D73N_YSMo|3v#4e4XJc6N52 zboMr*zI^JdhjH*@eVcY}>cho)#(Lt0gOSmWox9`(shCdo)%d^SR$+1zmNca(w&L@kog+)w3hp49~dJX*6MP84vz5BTL zk*~Xs7w(YEWlWToJNVp*F)KwP<*sTFC@#kw9fa;r#;Whda@`e9Iq6Edly)kyq@62Q zCZbV1@mSP~SF2VaYTA`p;vO?XwiAqSGf{L>dnS5((TxF3#=r>tXMwYUMyM6b@NtqE<0O;qcyoUhA~0c$5fU zO|3F&JGo3U3XTqD7 ztw%dfyBsx3S{jaFehhL?|HHHqL2C*LSmtsbFzLm#=s~gh1bMosVBu>8d`J?13yT6t zKM6XI*H~GTeB<>x`J?OjMD*N51G8p?Uq;Ln@=NJIlXgw8>jno02FgbrwQ8hRE@aX% zR;n@fi*Hr`kh zWaYA%$*01)`Ty8^6EHcd^IW)2RdrV{wRBbQJv}|s)zh zB#)AmoemoB@-Q**aRld(3%Mdq1a%$hV0EnDbmRBOwMsSqKs@#xON-wREP-?)`aryT zeZlT0!4rom(@n752}rVu#)F9nJJ-Lp#){$5Y6VZm-N!9nPb;re{#0DE4qH`+AAb_B zT8HDbx8)LtEv@l4Vsefoq9*%S)6GQ9hHkpDE-pJ%+R_|;Y|I2JqHZFe%`Yqalyl%M zRFww6*KCo_mi9{5N!Lp^N_Sv(H@k`JWI(`)-gBZ`bNQ^pT%Ew=1{IE&tUe`!?SLjH zClnwk*@auU02&VU8Rlw5o`B+}3sjyD1vI8q;LEr0b=$3Stm%d_5k=5VG-jym6Bun+dlJMu^eHvPUq#YnPR~m5j@e zOo_YZ-^CNMp2^2ww4#mgITitzu2hZ z=gq04)t;JpZz?H&#Z0r5nQX~uk*Jz(X^X|pnO7~>j$3lxs?NNe8_t@TRmcB1Rcl=97&j`lwX+bEBkSlyXSS+%5 zG3@`Ca6)T0oXbS{uTWH9KBx;kUS@N_sNhDDt4E6@8k8=hep)ZkJg2{_zc z9xRs!TZx;D>3R%oBO+*}#f9d@5CYIxC`unzQ{oK|qef{{YOfPn)p%-lWZX60LK-c#tBV~U4 zqVDR4^g>NPXkh3Gg@wvprPBrM$%ph;gQeMBSJ7+fEmu)(XVZ(R1!vRQ5$;V231cJ? zF%OzekTXflV{Lj)7DM<2r4E6g(wmsE{wL3He_8R;=!#7o*^NUYqC%@n?w_W zGzD@x3Eq%$U_BC|JMm-qM{TB$5{y_=KMxH9+AFp!Y+C4qXg=t70)a$`ECX;^5cktf zzHK$4n5nGb_PF6j9#4;xX-({$dC>rNUD$WzaQL*hXlH3+W$ohBMQ7Cd6*=MLG6s_~ zmb_s*DY02T5_K}V-g)MrK{F|O!g7{KrmR@9R#F;2*>fgDdouzKE*cdN{QDbL*?9E` zRWggJOd7!|Sru<42Wfe!J=JBmC^@%9V|5uS=`Tj3X*(IO)K&1QMQwm#vrEMdC0F~X zJctRvJtb9@m+g6zwZvkona$lx^~4gjmPpd8husCQ?V#hfJ?H%L;ER$OLrFME`zTu+ z1FxVa7HaXEt%yFo+2sG6Hz?>r<;@MUnxR47xQ%AT{6P-Yx9A8%PO)PuO9sbS)F@F* z@sE@%lu_{8MX6I7f%SVU`0Y!jYe6-lw6;lI0PZ^yR5(Es;F~QYTsDH7gu>%k!G7#E zgr25R%w*udVTX%QeO>iVH&h>NqQrsG!ray1}wAbvNV8o_Id`T+v1- z9o8_r&MrO$IpKLOCp;G?aYqt5rTdg&AgXpsd%`7Y2*>PtZ^X9jHsZ-BqCF@onpmUh^E$Y3$iB9rGs|`2=73$sU(M8`42pX-N)kWV z@3r!%V&}4!st!Ojc8irt(Jeq2h>~6cbPJ{>tGz9%sxecx;*M)VY;IW=jamu2YAL!& zi_NZ-FT%Ph7TVj((F}{<^kI^~?OU(KjEZe5+BBpn*LA@yxDdDAeFj#((q^=RLd!`z z#&k@ABvYL%xBkRgETgu#N#kcXUzkwv?C2zTtw87uM z?!DB=t1d6Mq}rjqYHK@P*GXTMO2nCCFtDa^i2SUyL{?&MB@vS&48)x!q6$|ZM<6F% zc5*A^{#K>5nO#n@k|7{p9E`gW)wBEQI9OS3LZR5c13O&sp2~@26zu9~I$7c@uzvZ+1 zH#Gi`euI(6>yIbDJ|{m=ki-Xj6(Rw#?V<-mZqy-8{uuc6*I)77r9FTo&KtW$#ySu#eat+%kFdi-;vw;5o^BKi(Lcjz4V z$)5@BuQZ3RfsRI+2%2;vq23EYS_bE&7M!|W!3yfZvCxjLw*A=0NZ7C&x>JxP%u+7> z9MXYk)X@1S0fC_rxDk*^UYhgpto))MMLqY4RWM-C2$Iy}dVniS{eE5Q*Ylj%;{!Es z^2#>j>1aU)Ke?~Ia>29 zcp*R75P8vpV-#L5!Eu#G3ie*&L-u0ME$iPhKqFBb0%7z>=bZyv`f)Z?!wpRK#%|8E zJm?f=?p&bsO_;Sii4yHF9?`uzr7D9|nWMbXo5?hSKF6Aq+} zg(^?#I=x(TBN7D5IC0tyahXUh8t zrbVcNxwxo7Ln+t=&-n`8S-uPlwLFph5G@Mr7m?uLD9~?kVg_YrM*d*;zI`W`%iTn5 z3${JDW=+9xi{CL}`tdaFTEevlKlJ~c$bE&DUw>I0jAP^u5zE0dVX_vGUvn;Bf0g`>fj_Q0O!Q_Eq0gRf_Gz7 zTB-kA^_gXcA-_hGW5&_lChg+u$CnLeX&3fj-yEGL9T0|QjM&1E76H4nQ1Q`itf@eR z2a1zCoh8mMr1uL4iv^{9jGg~d&@TCYn)fpoJB1xCtqz<)14n8+9AJ(ftkF;0=)oOI z7&{x?#0&7EjTiiwEiv_p|DPp_5I{tyy*#(rA+E(*cC! zQ!vlLY0s)iIExP_M8STOhJ92?JtIfo0e#`GJw)({_Dx*J;Be7_{!L>GdC9Ki$=h-`Nc3 z?v07_WYaQOz6R&J%U8`@0%+#qeJZGA6|UM&f$@f;hkq(Ozk*%{d8w{ zcjxr_lX13lXcQut-BG=E7qbk#R%A)by71;TV)&p+oX>UJu^CnMvlPaKxli&13@Dtyr+-higU8R zqPX`s4-jme|AXocY1X76ya3Mx9QSyF-x8ws9ZYp0cE zYdFT?gIJB}>>fpq#78>Xt8luuGm#csGmK2y%Bc$D>WuGPMM@6$7#%P<1MsvlKZdKm{ zpM0&O%uV-gni2t7EuJzsw(GosrCf>B)p^?XrF~X49c6dL6RoYAH$=9sw_@q4wQ7B2 z?YeRq?nT(VK2WY}2r@#`Vp^ME>&|54$4kC4$y6ermZPjx%iSR8-lU<&s%;4?jwiTs z5#+~mig2ofqj5fEmt;m-CmeIO(;}1R9>24;U6y5;tlvz@LZ<}Xa#@kpbhWjVs=$Ms z{C5=9-WVyTnPH}&$hnWmd zVz@7r++3HPm*FE17ZfI!$b^9wlFH0)C|a9W<9T@NiXLSwp?R%lq=ZUxq$+Mz8vb4uRdtsnQ@PIYyu1uvx&;cFmyd5gFA-mMh$zEH?Ifis+)VWPvo5u^@ zD`wH(ppFvQp(-`@fcHW00K zlhN0XWE^}ZyzpCU**|S>AKji%@u^HvJMwBv*)HZ^W;t`XYSz1GH!Eag-7b7GDc)ex zE=7%c21Ay&W08oXlZ(S|ba$qz%iw?ln`E}Gw_(F&g%{e3z1bw+!{h1Bd}~}QySK|w z0Yb_u^^u)9-U-8zt%>pZV0wAAX9*9Qh*#TLJsX7x5|^LPb{Hi)LVjghM0Z#uhLI|L zDbNR2%Sa)Wu+Rt9LgDd(L(V8RlmmL+#!tKe$0R0}VV6`oX-Q&cMKC+ya}D`Ij}r=%#PVua(EHrczSq{%c*BWbgcG!R9B zV2&K?U!{~$9APqc%+8Ffs-0C^;Dn!(i#fSu$C6G0ZbnJOy~IHcXvfs-g2pXt-1d^m z+n9AShS4eJqcF22b@X)3){~iuXp}R+Rd+L-{`U%h3Y`QlV10{h5)~t=E zE`h^z!cNEN=uF~CYLP~b8DlLrT(Z>??&MZQqSTwXgE=9VYUBGwyP3t+|3$pWJlpy& zY*mj0H3;C4eTEeFmVi=oF{Ahq%;oR%wKRVpa_PMX9EoQcKW0VS0bi%~yy&%nZjbYA zUSA14@J9F{NYLa8QHQ=Oq-snDdqLqo2;5tNvm9`I!Y;+V5%{^neHb{;FQioNqrklx z_&Gc4NNt-uf`$J`)_-<&s5^ZptB!v!n6IVvSyW+Oezs-aj04#zsHQ>Rul|#z9!5uY#O?KB$BZsb|5pkSgk! z9bnjB`+bE4weSph{>}H8-0Sz){Iztf^OgI~&Y@SoFtw^f42Dl4ctKc`L*9bNU>|76 z2;JF9p*xWsaMrV1aYF3Oj)-&2Wa;~ecWOM6a$@jI+?H}0=c*3kCYT7A|8OxHS z1!&oQUxSbaG99FAq1^%IcywmgnYmKepCp0&NyGh?*m;5qLfAi05SqZ^%$+?IL2c(Ck&q`n7eqm%e4X_0vV)xdLKu|$Pbd;O- z=jnhK*VfTKtFNemwj`)4)6-fZ$8;%P#7b;o0V zydb7ra3VDUFQ1z?b%TvstmT+j&JpI-&C=bTFY;eVe=Ge+`cH0?|5ePa`BuB2F4#*G z7_iy}vXBI)P97dA9tS8~R70i;4LU)gRrbw)enrP)+QII}Er5sNVN6sgWKEJ^num*At)7vNL(H;^Bj2rw14fVJOW?W7PUOc&oh5psa1NQNv)N>~c_ zs`FnFD4UvCBLjk9gn1M%?Ga*nMHSrn&5yu=$2@->dCJ4l3x^$uR4r#x1oAhDIcp36a2&uk9C!u0Nz(hZm zJY+S6(Zb)gFjE8jbub<-2pc(zkOq4umvGH`*1oCqf7~y{c0R6#GZpiS%%-Z?D?=o1%7Q$XBK<^s8|oP{9lR zTl?`Jp0sO&oEr+XqS>%!;>A3qyhA+h_fV?heM=t5E{C`vc*u7C-H#mM{#_W$*8*d? zhQ}+?SpL>ro+wDr!>Wal`6yV7aujp6M8s!=c8lPE&jxh_Ynl@u29K_Q$?@xA@E}L{ zzC(?1aq%V5$(J|X?S0ncr8$udqWm5dL>byXnmYvgnyfVBis9)Y#0kH=!*}LuybuDy zK1|PGAHZeq?JwpOI0JZfG`9!#U?AHWXg-3KJUN_VVJ6Z4=Suse_mFp;kFGG=LFiDp zrE;3zjC!F+^gusHxjzaD;c+f#AYNu%*em@9x%o0AvU+<4UIcfR9q6Yfz&E<(a5zgY z`^KEFbLM1OMK?E-P45w75y;+5!-D^2yJqgg?1k{#DEcJOmYsp#!$A0>Kl4Q34*J#4 z2_j^9ip4zzefxIwEzkED@~92@vXL-ubLq_^`DTN@axmZ->dD#- z>U#_cv74Aweje;!IFa|KeAQdPHI&^NRPR0C95}SVYfxZh(ViL7obpyJlq@`4)^Gb! zj8)JA5OP8!2dyfX&a1=Y!L{+r7%SO6icV|j$7#sqokyA}?2+R%SVyzA>LCqQP=OzU zfl+?hYwNEU9IwXp!L5AfaT=~~9&xlNK8(}Ew|HqC#o7uE4_r)rQ=1ahQ2x@_*5gO& zuf{(gr%?(TZ31*KJVoTIj@M{;JQ?>PHsKf53$MzJ(hlhY=}L)kcYo6qqZ- z=j{WI2kJZKM8GWeOsENS zc3N^_YqmS|qB#%w!2t*v!*?{B5c;A}6GATvJ`;9k2o(#~7V2Sy4mCZUxh;$i!eBx- z*`Dp*PJ3^x}F%L{Pm23gz(XzQ3@c$SbC+!Isc#<~0M&19p%$uO)%PXaJgl z#;{k8tr?9vT6Z(O`eyyF{GU^Pd`jc6|9cO#79=6m3I}I@DHk31A_*j8EA~l z?m32L%sj87H&Fu)Px(JTgMQjU-?KwUpU(d7^^`B9T5c+0=r@rclHq@(d{mhPmQgF> zen=noPM|bWjMfpRd47CAF%|CT+SNJ5hJndN&a2_eN=4yUBk;bR%{~EaB<#w7<0kKe za755Uvm@@0{XN;p@R^rie&%o_%aN~gl{4RYR%?!c#vZE0cHZ-u&)l;!R^zwI(e>Bf zb=S4)qh-1~^LnZ+vOfxUIy&BAThaYqX!8C@+xvYz2)k>M-q}8KXY zMz7eg;fhfLRU6v%*eBlE)%DI#Jhsa+&30?UJs&u`t?ld&+_M32!RBjG3nAyJwxosl z^HdxA0-%8#2a-HMIDx1GtMSJ|dBbzfH8B82pe-le6=e-0i}5VIpR3EFum%~P$Z*t# zpDetWIhdJHRT0KI|3^U<-oFtd&#(f+{R;l$pXGHh=1Tw>6tjYg#>5 zCpX6Sbh~cY@K_}$=tqR|=L8Wm=iY;^3D5EM_w@lAjjy*WePUoOKmtC}ac_L9{C;0U|??;rqoT_TQ_sSGAdR?6 zAl-TpO(9h?H%lQ70+nE`xL!rHv}p;=Sr1-l0$_5)+i5M&<{kjJ4Tbx|7M;LCJxfcE1BF6VgU0b$Rz!%MmqQ?Es-$eGJ(;}IFZWx)QE zmv<^2=YW|>9f<${Gna(Jxt&FMkOH})v`hg%j^JE4NJ7&eAOS?d__-DW>a24TxqFfb zOt52CEDB^Pb#pRe{x1D6A2i*6O*;rxh?okHMF~m*p6%xr`*e<*r$m(md5D{Ebk0Pr z)YBX);^|a-<39iy0kFqNAOekv+z zbv4V4jq&Pnyuymd$AI#IW4yXAqVb;;?ScJCS&lRT8#(g!#%TLHQG<>EsW`w$a>X5K zoBu)^RGA{069%vwGp3q&cakuZaQrMlNNO!=GNMwY(`JHRK`)BA4G*4f1)>62M>1Crey!;xz(HsQRYrR#NI38DM72)HqrkOA|BN(2end0q zQ-*|x6SbfVQ7q^*dY1QDu&G_V1)z9;c%#<|5scPw6nQXQgkw2! zz01iLoqRsyuu404g+!`S$(JsQX?&e)hFK~XOPLIh87UU4?R7UjK7JxG6{!_VltMb^ zFanE>%IQMByj*6qYdev2x~l`2paoN>V3&ktxA$aoONUFvFKPwgFT>3!Dre$G(g0p< z5&=7j2xzHcCX4KQ`7*+4lCe_GNdizbrzP9kV-=P#?2Z;7Ke_QN5TCmTN+pZ)9fewT z5x~<*J z0ZKgYbkz~Y#N75A0UYl|xE7iXh*ttlE6A#Ia-|*7Ks9@)8{sC=2raIp7SESPrfyFe z$w*5r4Z6#^hir;mYR60)Nqdo0=NceX1v?S%tl0>~(yUy8^>-r%mvL?J*?( zh~J`8z0pKO!~a!w{ofxHH<>3wQa)*#Xns>fuOajH9Fq6 zwA~#ZNVQ{Nr#7-BJ!2nh@8RrRd(lXiFu)W$&g7WoS{r-&ILdW*XRS@?D<=slJC^KN z7U@{6@K`P-uIe$B$3y{WC>2c(A!H1hPhu3Y#|$-MV{ie({eeQx0*Ym;-O-8k8|XSi zA0GG!5b-ffqmGNv9nGNaCK)eed-La8Hf@fjq-nTLln4JLSiaZ#XsU2dL@ z`9k3AerQ%VCJ3W%=!TP4h0VIey@QP$OJ;LodrQg)) z%o9O77yG&pBs|Gz=D$LxEGbT36@MCa9%v8JL4o%2RUz>LmvDpP@MqxO?YTV`<*)dz zCNpqZXh4xQ7Jo)2)whJ6vA;U3rgAW1SUQsoQslTuCEgmu?x zg1MejyzR_X25`bR`gCpzC%(=I#Y}|@9qfZ^_U~Dtj9l=(-+22vD+|B_D`F)Fx1N3G zhPvEy!kPUDVoZOH%E-LTw3UsbOw>v)-FEgF8&PKSSpzAQk^jhOJNaGjzjjwgdh->( zF=boHwp8ESwvCvjshw}zu>w*rsME}!Q=uELJ-s7+!WHkIN_mAw&C;sVP$-w6Lc+KI zRpm>_TT*~G;|A#*P@UffSM=x7UqLtXb0p&GWXst`wu9}4hK2)l3*Y!CxC?hcCKdu5 ziOe~m@rsP(a9}vmMsKYIT4imD7;`c z27RZR?ORnXQB*Ma8AY|q7``mjG1sX1k##lVUaOUSQYj#4bg;UrFRRL>S{9m)vZX5d zJeYpFCF`y)tBT|B_-+e%&>&qjUdoj@`xA|@oXy-Gg~Gd;I@VVhaMuhKnN9%o%qX($OD_r7Flqp+i1Lt`ewIWNX~bl*anTR34J9^tcRYgDTSBf;TDUDwR|_<(z_` zp~e!8f2rsl+b+CtTZdlZ96?KR)9y{l7TQnQCFK@{A$FUf)|2>v#z{&`S<7W@Bv-Pb zOG037`zf0yfYb-YhvTkVpG;{HD<`knbV{nCIrjQhu7iN|c&v5i)p*pJvIx5qaQUwQ zrD)31GF4oP-c_WKSS))*udW^}F@-ct5JZ!?a7GluNEQnFWH z(_dr{$%Un>UEN6nmN99!Rp8hW7QR^&om?Mh#5~dZtlNkH9_UrLub@j z+QPdjv|LuK%xZ`zU9hNdukF*lFSro#c7q8s9Q(`yQWbqKMC$b$UjnS-6gxyjWfCu<6X{LEv@KrdT1 zO~lw9>M0>#2n6!KSg{gAhyMzBsJf65F#Xv2b;y=N`S%QC*cK)3_q7evEiE@(nRd8J#7gbC zrchkI0-sfEv={R{T}UQpVi~Bgx0qz3vh-aYrBVlwW|*F{tQ;i>(JL;PUBzrI;rkeE znaGU=-^nZBzdF}n{ub$Xya=DC`EK(va^e1*YcIQz<7k>~XK!Qsu+zRtKYCwZw~!w_ zCL}2+G4gNhN6&SoO-K450Y|Vq-|jfzJk8gjelp}l-&LcHj@Ct(-K7U;Q=5%df`fV2|IzG^GaCXq;D zIe3b{?$#RSiw?;$1uR$KBSY{Z2;^Afn$|U~To)J5#Vt1#pGY9HWgMW&>6m#qo^L$t zR=5f;0W)1Qtf;%<@-$&oAE2Lj@)1I$J#59;9j()%zC<3-5O!iyJdU>^kp<;8VN>Al zXtp9$qt{Ca>VYCP?gec9-Lw?sc>HdFB7F-RTjC%`KslI5coCBsqyaj}MaDx`@>CcY z4sqC%gQ=J_lGZ;JwT{<&U}cuuZV zC!y8@WNkD9uAKZn8$T8ewhN6j>`9kIJv|*I1=c#`e|a!b#b)qb{nY>(MkpWdethQ6LkqoIRYHM1LmHrI{!Rv(wPP-3t`}KYlTl zf{rW!_+8QjMlBb&Km+Lb1Zp5=o=AJ4(72^wKSh)cXj1HACfM7T+7qz|pi>@-MAqYzNOlwG&+no5fCz_<$X;PV-`zC4>h2k!>txfo`PjYB$uUHfmgmiX4RtlgWdEnO#NmJ0?B-u2i6Nts6sv@zf{hb(i#n|y17B4zWXZ4v;28l(;+R@ zM92%vbL_714Jjye;u*33(3`=K`Uc~WJy3pa-PN~Vy$*AcM>*hcW4ty5itf#VS!6G{ za->+_fbaE7bIT3EhieNDXg^7(+4q3)9huF*OuU@zA>h&}yffp)(K_~t2Ph2N2=-HrEUywUEFK9FXoY<5@5tLy! z{*vM%Y}Ri(jR#sf@K!qal5S0QwAd6bkE>M*o*$qyyYX$iB46uU4rw3C&_VfF zaFfUfM?I^Bgc6NUyKyitzG*jfqIfne&}K}bDFH)(Fhkp+e=RyVR*L}R!S%RZJb!XG zs18V9dR@0Xv5fR=YjKCD77m3}5g<7Di9=8Swxx3K7KGmbRNWnvhXKjS3R&QTbHGTb zV}H=UHOK7~$u0n{7av{L&f)l-HaVLIc9PRkYYjFiZ*v|B%_;#tz1g5$t-B|u))Moz zY(nl{mnO2!atpR-xPMEpymT8wIDNJT1_Hq}6F6Gj+6PAaw z3gH$On5MUoYH=Bs8`ez*Q1mDZa4CQW8RDAr;lzf~R5ca1I+kk0ErChw5zEXGf51HT zZaHh)QbMFEvf&Mb{KpQG0tt`Ev0HZZck#VBokJ78njNMz2UZI*VbKH0c2Nz%eRBQ8QqXDxt>#J+R_ei1=Z_CvqE(Kor~5+@C)dN;%#tb1a|-<0gf6n0b+N@ zDUOedufHwGM8twjg#3i~{Mjmq*+2>W@v4vwe~)_t_po=uT!7=H$j*pe6JjrpLvL9j zimgXKe|R?UMl;VHMXLTLG(6;g^O*E!((}^aNk8OVc7PN?O`~uH2Sm6KArPA!)F$NA z1f{L7jU{8YzcB`BU*2<)6dPU;R7tSWKtm)Rxho{Ld6hv>%fJuO*V%$h1;AH>iemWQ z_}g@-(V-J|oxd-3K(JUKd0REKgaRo9B#mOBg|Zc1!jaE<7{gS&1bqa6kyB`zCm5=CZ=A)1_1cJLyAr z>JQLTC(0A?p7r#Q_!31uOd!;o?iwQwB)gfS8q!}1iV z4TvA$szad=4C)mj(1|Lcb`Z+Vt>N&vIiY%uyO3#SKhHFSl29p& z$>v1N^q#h=e@#!PfF?_F8!DiJYVdKU;c-zd95;9cZxk5#Kk)ocu1DID(B7GVvI99M zkwT{de-XAFl&+Uc2{?YA^ZC0HBo6F~vX@hx_4YL7$5dccr8XtjAsgkh_*8yu{4i%j zvw%-Uc6w^50)gfX2ou!=>i9c6-Ik1Uyu+xR#8;%X6Zqr!XzN)Bg>YzbMYVBWL8VIb zur_ORTL?=ijBE3%^lxBnQmmErvI(}Hox;xL-c>iVyV>uuPqQyGAV`NGg2L{FM=fgv z$Z&|H1_k`NGEIO!zNPPh(jp`~9k2KNvifZ{2zR6@9g^-v>|0R(^POcjrkR9De(TUI zdG>dR`It8W@udmJ_`JVg2vR8DbTp+VkLG=^&Ju9nO7)yihy}+I6ug=^JjbyRd&Cz7 zu|>>W96CJ=Q4v>#j3^tw;v(Hv8vDQhP1Q)TI#(lfG*tRmN7WP`P0AGL4#Z9UH=P6d0m};I>@P+P z=g_$jVQX9!T9ToA|4sB9xN9B*(K}M7Eu2plNY6b16?Dp1DSg!5|6hS1TgQZ;pjQy z`%!X|Ogl&_;E4gV^>B%Lww}e$GJy5x3dgQaq&9#EoFC5O93Jglz;~C%v=k9O=Yb-dl-PMW|pQQ7TF~y?mZOQIjDbIt3ka9lmmSeYU z9??_^Nzu9{2)+Km`T-6E-n&v)O78x#dL&h?MBU*Sj0NYnAh8P+PHHZS;H3_h<0=t@ zbau$pmtIj#CLJjKG)*=OF}yZ@=Ly%hX_^yPcz$(Rvm#NJJ#~mwYYa`3-3n~rvSA~~ zI+c)@pD-AKn?v4-^sP-ojdn}Uj1#cDV%9YHT~_ncWPVLdq}A4H`fcM|ImZ6l0diir zy?a>AW#CkZY>lNX-S}u4jY?>3?M75J;pNxuPC+<^7kX^4M82VyYzxQ|+nbD_c*YWQF#IX?VP+KB=nuP#=s@?Ws})=;li9W(1a0Wf@8+W+tH! zbayD**BVC865U2-NIO<*PbQVVaaeRI9ZN2!C%ZS7bhuF@t=_yGk69L#YvQTgk9n^H zo2(y5H76h+8D(0%6A>bh!>^f?U}TQOWXZ5`$D7l_d54XYtsWr&e4fC&hi3DLaL}oX zGcV&ZL4)xr-s#QloZ}hth0_nk((;u=>xgC~)`+(@xVNx)%5(bRE&@1sP63qY897pd zm{5NQy~-0t!PP%+uv71Qro@A43V(C}6V+w!i@Gi*bX?Z)f4Z~kVc0F82tN2xt7_cyr5jc2qX#ih3XR)cH%cBL3ao_|Cg|4EGxr%3yKvx-3Ou^!>g;INq<9_(kx_QD zJ5^XdGBwS!*{ol~2FK;LUYPb<8Xr(p3^X%#t)3oQs|t5nRqc1#+9~8yVfvrw@H?f{ zi8DC)ELr;zwAlE!tJ%gUc^K3mHom(T(=Q_LudfBHKYZ=eF{qjm4)DPfc`gBYoo2LE zx3d#4y9{j|1$S&tt*s*hfB@@NazuUKla0?`&E5I;vfe+mGirI}y{S~9ibSLd4KwPm z)JkD+V(k>!;*)FEjSk32!hi$z*y$Pjva z%zY?>!Fr_N!j7%W$NB0PXB~wl{!({1#K)jw={j_xZ?{9L0#lxC{$16yb!Qs2GyV; zPg(?xV>Myd!1{8P+j7&Z&pziHyLOI_S>0VHZM%??CfM8Gvs&MI>+juji9@!)#>Fr( zlj4p;05@|-A^$N~kt3DjeoQ7hupeEx?WC@5YixAqu5X-k_Uh>zd77xsCHMT^tvmJA z@7YfKM`KDn2iHa(WMhUKqB^SXtsqZ7k2^%h>&@gEXG0) z&F#Q+5Q-AIQ9t5c`EsX(xFJeK(IaPbEbBZ+dw`AOe<3)ahkW6nW6Cdqx@S}Jgol-0313Zq^>@+f3pnn~9hMiWY_(r!{X+0N-C7!}q zR8ly;Xxo4-M|zXUj!3IDxPcPd!GLsdXu}|A08Sc@&i*_&dz;;bgcg_zl%562U|QJk z+bwdIw=*llr7v&KdR` z(l;n*rlBH8XSw)>XYDjQ8<|&nc@`Kz@|{R#;AfH6132l+ZF}Z>?$8kFxw$QnM>UgS z5RCooZ`=!%p>-zmq~7c0N$sD_`*=Y5pVH?rr-HVOP#7<(DB!zb3XTrQe8|1@);vyy zA1EwPu7Pfeoi1drAWhvYPFW}l97&`^ec6mD!=jbRiB%7-jkZK?A%=e(?S?qeb{q0> zS16_oRx5mIow@>t#)nw{sh6+dX3*ZPlN4Z^P=G1WR@Kx*B3qFAPSguX84ah7a#0=J zjvUbXEB@m%7d1@*PMy|j-6?EearvqJm>KPpTj79RV55qX(DN_NZijQ{#1dUmp=m%;=`N2BwEXosIiY29aPzaYkCySA4qyUo$jc~>#M5BY8{ia z>-*~6Ss_<5x~Q70ZcTm*?TW(nE8s6S5ppI| zwwG6okvrj3txE6!jZdC*;Ih^zens7TDA2m`xz@`LoP;0t8TYu9(euo)6=gWQB1$h( ztxW+18d>o4AL`_Vh~vM5efc5k!_jb`$>n;8mC5Tm)p%(6d0B)5wrTn(0*#6v%bvHK z>TMs@!6%!8J-Hmu7^w>xG1Ft^x0Rqg?h`jNjUOCGXP$f#)`}KKp@JI zwg5~AB^+-0^!WTqC}l8kjeG%4sl!hEQ~GKd(Rwp48@1#eN%-<6?@TJ+&9NLlOx9(Y z{OvUZt|Ir4NRmXR2bbNd*OKgBxZVKqW*>ajUjYBE!AJ&od>PLaYjHzCHEs((&V1SD z`>ygiHu*Ec$}prW#=|7_(($3A2 zzHQF=-1~PeFufOA25Q&3?(TJ6G)YPw9VPmUQ(UASzErQ5=!D>XMNIaJu4t zn68C9uEN5n4{eMLq6=lO2)k=>KMdk#h{S~&mJbSFp-4?ixQb2BQxPE}s>diD@^hX* zy@S!l|D63arT069LxP=Ue~u2lhORNV@ib2K1{9~aQb#tfhhFH@NEqQIw213EoDYi_ zg*)h(JM5yDX)FW3W;uG02gV$VX0Gw!r(Z>m_UC!X6ON77{p5gCQ6 z%c22jsPCNHgvF*&_dR?6Y?dFN{Uq`1v^VlJZ?t(Ku1x6i? zCmJt^5+jI~VjVn0zVU(?VcSJ@ldCR!-=$NiqT8cMG_3%d1;6Wk${3{bxfqvsa37s# zf!Fr~>0jW|Xt6RR)@6ti+{w;oS75$1*%J@eIy7OL133#g?$5?qyOqGWMnF+uYi(Mv z0G2I$ul>224le&Rpi?qA%q6nllU~UW78H_{hd;yP1&Ka|G3UWC(L+%%|GAJTN0ShY zmlmzz>(H19PXi$I>Jy}H2cPccc0oZN@yHnfE#&75>IEj=Ly@60Z>YCRU_$|Sg6;zA zfzEh()_h-)vXEVZ(y(w=@uJk$6}2Kf01 z6Rbhks;(rDT{H@Z$uziXNC2`5DKweh+Je?8#F}@taNeC__F4?L14~AgiS6!yBu~%c za7XYu{8fq9NBIImv>>DMTE=IqM?3I=&DY)&Y>sTq|JFJE@&X>`@x+ZWl;x`j4Wl4r zh}>a}>|oS!!QMt~-G*+uj%|F`2I?+*DO_>UL*Q>9inmj!q@9+X@pdHn1T;k|GO(p3 zn@)b2KgKI)^rZ|!B*>~zG`j%pp_fitCAVNe%Z>Ek<#H!kMqo!k2W{&_WEf;MC4x5Z zFf6{)dDTLC^*;>s3Ilm_PhdrV9u+&l12@CxB+7MJ2LjiyIKLk$hULC9EbG zhp?`pqGB9 zKki$Sf)dTHb)>9Q?i^sP?GY7Wwm=Sq{suH?#iM)DKU}dAaZfRG#l*-`C*}EnI?l*P z+iGZs(cU^XP%3hGlwxUU8PD4Y9^@lR44RZ_=_0~EW-Fm>CJ$|{y8;E|lv5_H)({1} zjitv|V}5x5Xu{CHEDn}TCQ3fal<9r;QBY~bTa1BL^N9iGfe*MCb?Mj(M$y8e$NF$M4mUY(G zOug&l6yPjBJ+SnQGvpiJyJ=ael|OA7eaqkZZsoMo`Vm?n7iapETI-sV*WGziU!M)D zWyZG5p6*Q_oMIc7At+WBG2TM2{u=aM!;oJqQqvQhBB*|cdx3vd`nL2c=Mn=(1z3w} zw8e~!BNhy!qM_5Vbw@o^M7l*w7z09`E>z`+P{B16f)Jbw?cSuYXl~#&N_WBcv@nmE zfkus}K`n~ikgGVL_|ovy_!w2&)Wt_N%!}rU$v|;TG=Z9kLbOf#9}&#E;WMW{z$OXa z8r$DEtP!{5dd2~Zfk2H?2WCleFb|@Qt);ADi{r~bp0Rt9H5kT_^4xgJkpC^!9^Jw9 zUO0XXMvVhh85HD&#_m}@uPI!ym&JR;J7?Y#cv~W!PwQ{|I;P>99MyZHs(b=F({;T0 z2hi*X=e@D%82+BtiJlzoJgiN(Po(eWo@2Vr`XFRYJJ_|@yLh#e_dKTlu(uA_Lt|B3^&EaAN(nFCM>ZBmVY4Zi~X zCv>!2#{au{{O8SHzR6!Ym-%LN00^-1Sy!-;{+v7%N=Fk&#1ADi@}IE z^u+7W%rDE5VbPV%5oHf!9?r5g2QeLegWQYrYYV^GmsCP2To!DlFTfn0C))N{sf4TT0e*^)(&+(wy=i}9XhEM!+adK^c9#Ou& zjP~3-sm&K%DO#u*=Rv-rLb_{SX`F}A+e&kx@u*$YV0>mX*2MqpjW)gdz+n(Ji}OP_Xc9JNMqnnS?F&36IeI>lhBEH|$znju9TsG(##c(?z_Wgn$>X-stRn7&jxjGLnwsF}r_#P#w zk`19qK|A3m(0R@u-NQ%Y`g~N0UMtX#hEoHxyTqVEZ$S$x=uh07K8NNxIr|p^)2`Nx zHufep5~3p}sE7!s8W5xo<0>7z+$A(dhE(ElwI_O-@ed*&;zPo+N_#kG^lM=$Hl)^B zSa%fc>aZGUvGN>=mh*`rfK>#Ufj_|Tfmg_c#)*BdR8N;%052EKTRr6CkA;F|x8K(a z#f)YyRJfZJY#ctokNj}fLghRc@4}Pyl9{KfTgvI@f)nC}`D3@LUb1qUX+%q{X;0RK zs%N>#acaYc)|5a!a=Gx$PJB&kDQcKnj(O;qKU;Y06u#~^$e-i1wwwEh`MwYnm7rsU z@Sh-HU7(yl9I4pyCIFLG?3pL*lo~#jKc=Q|JxLh>tR%`+K4jaGLuy+!r5=h@?n~K` zgIr|7@xD}>dPs=?=02qyQd1y9UYj1nzTb-6DnORuo*Ukq5sF2A9Nt+y*hFQ`+}B3t zUYL1%xTPOTRU(HJLe0n9Blcr2Q+pE^5K0J$P)WGXzC#&s2Zy?@ zt##OCVCU59Z(q8kH-eZoBa?UH>@%9i0jVa3hf1p;D5YS1%E{T*`kM8nkuJ0u zNKP6%+qXG3ERHciA|cF?Fp&`ESoQGOHps#^jXWFund?m%$dQ<*!XJP<^H$i7vF5fF--oVj?9epH`TuSS2wm46G7h;FVR4R!NG}>%s^{?q zc2=g5WG!aN1P(6X=zO|)G(-6&so2cdeTudyWqi}qV=mnbkveE$d?Kh!g$dov)nP(- zOOV#FM34;9UMJH*nP#8oyg``H4vAVJE?2%vF!D_{6ii|>Nh_)YNqqx;{$cQoA&!p> zC1gk;t~_ip>ug`!dp|1#$Ukl#q6%*=cWWitk%t?p*t%G~`FJZDg>hG<(zvUjknSwBf zMK*TwX(v8;2&2{_34bXGcFsUTvyc}+h@FLW7VudQ_Tg^4PkxO!i5bU`Tar$KMfY=i z{C+LNfI=64il6}!PsX*^pIfjqRKt*8BmQFs2pkCDCoB0=CIENLr{W0>nv=$hgp&Xx zIh@1(htCx?p7EI_&@uYHFVE^Fyzg7Q-TB2oHl$2pXD!(1t|NVD!w%95rDNeCc?K-F z_odd8{7cQo3mjX4)hzcyvGVzMVSzs*PjH$qbZ@}?U2HrS|KhG74F|sE0*t1-W5LTv zA>M?7lY1Bb7}mY;bx-9X#s}Z=C3(eBe#fGsRR}p|k?%O$6tYn)zCY%&47~Os6#)wG z*?4m13rF!aOOGJs+}|7-E{n_?o2{_f{Gy{1(u6GXiElVm9?Ie|j@adXFEzh2Ja+g_ z*mwfs@8TaF6pTZo7y3^5=HQ^s{N937Q9-cL!eiO|T$q!60X4PotYm{>!POhm&^HVH z>y?4|dQ9Id4_kZ^BJK%ddSml~UnT!<`YI0EjCm>_%O?>1TVQ>KMkqKAi>od|BQzCk zy;w-iX0mK>ypFKQLZ357Wk8DZ#ncJ@LKD8F^X4Bs9Rl<37``qv|K5U6U2qP*`7aL5 zL+;Qn|3v;i2iS=X-RQvLXwN#ScoKkUlLT16jzfus8r`9?k)tU6&jKNT%oBA>&>W94*L|&&6i& znNHeXeXV_vt*69+B)*bU0{jYUB2yrDIzVEcU`Y&|ZxaaR-%|>{;#?5wqz=TqS`lDO zR<=;KGnz(txn;eSZ7&r*Eg0V*@JPTWGd|ZSur!?~9HR=-+m-VsLq0tOH^=Rk_9b4r zyjk8~o)A285Qij7YHGlj-_QyWLpfhd0iTg|*O3`2Le3jbve44g-}7!?-#_0fFlzwt z3++f-=O}d^Uu(sQB3kEqOPuyKJMYp zy(0Y#0E6&h4e{;i!68@$Fe2P*7{gB51sHb7;fK47Amb4JjgV^q?uelog*Jjb0=Py( z;Z8#2D8!?uX#9~A&KqdBkOE9$vBN&T&9yQ%r z$aR&T$p#85_*laF#2WR=saE8yIeBF$^}bD?1ufpoEoKbb#r@Z4SJCe#+!XL^n09xTIxJ zNdf5BR`UiDE^1K|9(*#AfTe$=s)!6knt(#St8N(6OWalwdhDc^EI-{&^)D@#Qy=Q; z;lb;zEm}`UJO+MSO{iwNZ}mK)}ej?G?VT{x`Sb46RY^_+7yTFt7W(p34g4$E` zSrqqW!x{yVlZ%3E5BXcjax_`&*s$`XwbML)d)fH%0U+=LuZ!)7tR24W+76!HqrJ*5 zew$M1nai2U@f= z(RbNIhFXAV*!9a#a1kXFQIuggjUo<&C1k4*MfOT~eW|uyan=^>yQ%QqFq=Lq46efX z+StvMm=(z{F=|LnRJI~|RG|R!)BUmYWM=tARKShfNlqV0b{07t$&>CP#4eB@{UPZy zv=SC@Z5OUEe4@jhHbo}+X>BG zdDD^c?OybIgw;Gs)xYKJE##d)#6wWIUjlRjp2O+y5APbrJy_LH+U^Bip;-fpHZ=<| zY}bZ3?G5-mzhSbPnXh{<=L?HBigol8XmLN)Pw}Go3rl%(?Lif@m+tJPu^-+wg4ybz zQD~ayOv}c?-$52udG2!`BoSjIwEhw6Wr+v_9swDPU%RA<6FUll!-Jt3#;P*UM=1^ zUmdsT9;}5BiGvJQ*pDpe?G<994lmn%)$V0jTRb`gUC$okSMZBZN!j-yR+D?cEl_9#PnU;~&j2 zcJZ>^%kUq~Pw1J2D%)93*Ot@PKN~i3Vyc=&Y_(~Eh{0#L%+4Aa-g(A1oBhCDincd9 z06o#!jq1IL{F0)`ggy-5Lj+`%*w(rH&MXUpbx68OS~`sbb2*tH$J1O}7a=wf3Ti~9 zuGWk-N!QqKD!H1m-%y@SD&~H}%_%sk-2}DtY6>Dn;r8c)%4D*|iZ#~6ZrmYVEx{HG z8$Y&ZOheKlbp`cD^`O|87mfhpeq`~L<3(H&lMsw!A|3?M*`B+<7xpJlkxOJJd%v!) zCezw#-F-WhNUI4pb+yi}Sn%@9p5+tgo&VDL=S?ife4Pza!f$1Iu{(_qr`jVsRZ8?? zD?4F)8O3X+NHextKglqr0xzF`)xL_}MO9x#J6kwZ=?M28jGFcj637gzn#mue$RJMk z(fMQWD;WXyv`+B49AlTFbUhqi7G3c2%$J4g8+B!~O?9nmXm)Y61~(PuvOkLF7eTIHkrSuGt+T`U|4YAp>v| zWErk7_%BU93B-<)vuty#2Pc7AfvJpOcXvP*1%MO<76TR#pQXk__>Z|1`H~x{a8X#i znb+OLI^@nx=U{_mMW?!IX_17W*GG15?m*Hh&=2HBnyQi*;)o<3)9)LRGvHQ1l9{rk zHg(@uyN8jZxYojywxT?8Ex5#@ebSvXXDb~W&l@Gg_1fyeJc(8%JX2iS&+L&3*=n7o zry+sw(l)uPF7+yGMwo+tt-e z{YsbgFsrX%=ZmSxl9Nh9qm4^Sr!M7?7p=pV+|h-$4zQa?F95hX2qY_yz?qhR5ye^9 zY|||ha-l48T&V+{(+{#0C>E)f1OUR zMfk@QTQvs_J+zGmH{}rjM=?Wu{1%A33e&%k@B)#G6S_B!yBZ6=dhruzcKjS?Xpnyb ze;~etP0k95Jw9D;91tv2*!`5VjZWi5$OVJC{v54599~+e=pvq~7$H7P3m@c7lr^lG zJ&gV;h+b+ME}x%8S`{yZ#=Qw2NKOU(B4(w>?UU){dGe)r&OqM5X2F>|=a&qG5$zLQ z68__H!`>ef9RQz?x$_M8N)vwkgTNag&sf6ux*2%xe!Ij($RIFb zhnm|7Zqzrxf_n`pbb?b+37TffQ#5HwL9DK>HO6(WD4xOOc9+Y7Z)y;RG8A)U#j zDT*DOSiWYY2ZonAh^;E6of3${9jY29yfVO8Bi<^BePb2>g(H56Gk(NuUPU1`k!WnC z;SSPmO8P~GhLNm`|E9!ldNCTYi=}vPJ7wTPem11(Lx_=Xeb&ij98p7D2X%7|G_y!A zD|I4Xj5U7$2#f9RfPC}QfLn#f{k@4b_?1E`RiJo0WQ4&6X%CDHI0)*inz3;gV(!I#Z zTTP&6ZV2|>V!w|>abF5MlfO~tA0k?gv4v|YSG;&``Q9JU(LCtrSClVs`*cwvJEs^E zlGAUN?v);fhLR}hkEGXmHlPlqR5^*AF-NvgAP|5|3bS@dBSR`1||&fDPgK*lR7LMeiT7OHpu1E7@vmnb5}cw;!%D4r*EsMtW}A`33D{tqgc3b5;f}WULb?JgYsX`9 z#zgQX&{0ka01jk(+K|x=;kd}53DSE*3YkW63U^nEDa=LI585RaV5W%S&7Bs|p?hD$ zDoe}A?^8k+bYfWF9e3iH7L`M#$)Hy=pqa&k~ z3p}B@tSNM7D_{gJjwclIDY(Rpe9ASERT9)(VOmOLAI&$vG1b=xgOQN04K!=doeGBT@jZaxvCuDSxrA(9fdI5?bBL14Vq`Q%E@)7Av$Zhwi3Esr>4(ZZ7>r+XF^++IOR7;y)O#!rV&AE76NS!1vG0|1;t;otCoY#;J>M~0y- z-*uYMmP1MYaVU#PN9^q!k3$KKGr^OE!VG7g@b%Lu(F{x8j+bC>(qmYZf3T2MG z`KJ|4a4to0TD~y~e+uTp+HojBQeBfa|74s&9Zf9712U{5$S>$G zjwZvX<4h0-WE4fw5l0Qq;_nEKsK2A*KH@(!(SH8lxwq<7)$7-tPM|x{iNWeuuhw_( zx#ymH&Ud~8dxv5y_=giX{{$IJV?a#^H4W|yzQh*iaFPR!El=S&bcq`Qi0*|-|3eZ2bu z<^`_;y%DY+9B9WM@*?u{g+GW^_b!~@sgXdwMN<_YOSe|4!&fd{yG~QUIk$f8(yNEt zs)cL}$2#+^TV8iTnIDLcE?p4SQJyzb`O@W=hSgLha>-?5p1aV^z`A>R6#m?^bUO5oVclcnuKfq{HKOT)ms?97Lk)#B z;%dK%rMzBN?25(vK*7vB#C)f*C9B;CW2j*y`FAZ{l7QtTzkmC74d#w^`nJ`p2m7l9 z77ePwY->;rGp2@9rM7{g)u83WZ-?Fm{1J9icb<7vl6{YwE-hFDdi=_#v4++n3tMzl zAvY31#qX!`zuGN}dqNr;T$D(##lu-petHm^mc#i@lnj;^wv7%Z;;eIFz|UGRuvm8T zYpl?U=Y&x=jsAf69^=0Y*fO*U9IT&=h$viW7f$NjpYskMvnMu}E zS*PT4AQ7747F?hNM3(Ig4wpxpJqk^ZnaIoyuYK9YiD0u0$QvB%!=^5*X?(-xxlbZw zywv2;!t>zTb?(+)v~wXi;}ZZKP)b%l2G(AD8AhzfWS_Y=6H`4FZr73n2NpWixs<^# zviT3-RQxBNjQ24b_GLbR`FmRLM6MC>=GHe5Ig{({K_xgXZcq4?|C^!UEvvGAOh#MS zS?u*};`biW=W(&PxsiWPne6P~C`3N>T4gXWEpxtS@~D91$l(fctsX}^;PZgHZG_LR zZfpZj4WLOEvvVcxyak2$tYK^;d0ZCav57{!E`{L}Cm%=zl8TWFtMFX1#?Cb|@7R9o zST{EdTD#VqKyH)CZ^;2Al1k}5*^h`|HEkyRK*l%GMVpMw50);c;?cbeje@4{Gzx0B zhe{3fsIkRV5Ho1jQwXFjgr%E1)l8ydpA>rJ7(_`9{n0l5Q%^Js0pqTW0a~IgHkn;w zv@Vwm=|K)Nt3)#}qq2YAyHGPg+?CWiI>|4xG;3M(S-KIL+|N;hEP`@7#g%Hz*vspp zWBUtUck>d?M{=pRb_d5*Wnzg~W>u%f3meM{URYSs_@1A^>!-u7@*s~rHS$5;0XDcl zL;UGe((}?cr0;Xj3b1Zdz0?kernS_X)huLB4fQ40Az2`g0K^2CsU4?u?U1*;pCgG8 zU>|kvxMG{G9e|JR-|OaRv;q%o>!Gy0<;$);ZfSaSuetQHTzgfEsl)aWOes(KfEC@G zus&FSr+i@@sEydGsJWy}w0xktQ2XH!_#vaCTI)LMJ zTJ2f^U=?6i_81BdPiUT2zP%%?glc#jkb$u_twQe*VpS^LrPW^4WHyMzY09|cTRDTh zgM1I$pWr?R`F*ghePP-|{~)@G+qpjm&SluNIfl(D3|B~RmTpH3<^$5lq`!rShS-bI zz`T8lR23DT5lVm?6d~$V961U+JV8NZ9(%BR0?7qpWh=tl!>(dPie2Fu*~2azVn@}! zDY_Xu^-}2eRkHgc)Sz~~;b@#gZ4|sAnHSc3kPm?-df@>Wx!IF%iL`|L2tMS~twvt$ z=BuzCC4N!MLXR5B<^9okY}DuR8Jc`G_j*s>rzPcQ^QlNK6bLD)LRyh4sIWp8w$kMn zw=D7~;nvnbBpzF>#*HWVRZkeLFL)8D2O(fO8w?wAERTz}EAet3?RY+2EZU!2qYA>fwMLBy@2@@@Qvw<*3)rK+m=o8u9mw_SV2aMOKSyK1?Geso1L25bh-xAbD*jQhpK^!HC=AUww>lMI zx}0MHvywgC;50j338&ctiOO3z0<(20{kHRN>=lj##A3l>H)s3ZkU<=(?P@%!wsp!$ zSLqSo(`J2Bs7+njvRbc%8~ejNcAa{ytDx85As6d zOMGR9S_e5k6%!k~AX*MEAJ0my{g*$;PVst}t}->$n{MSr3*&mm2eMR+DXKqEEN?7U zkU_zEHn)1cMnv%kKwc*YLz=!Q6VlR26n6@Skk!ck4HeM9%9BO1^v^X-ZtvE#L}Gat zf~6XWjsuZoNelVBtu3<8PiL|vx?g400{AS`=rtn{_2^M8mPB3#)q@nij~^-@Q6j)M zS$X3E8+TcKeC?GUmp(&t0??55L<>dDp+jca8AF5|wlqZWhp)~|WRYXq#!St9v;43) zn-4CAA(H0T)8TZL#wCHHT=v}bNO*p!spZo!07%=XsasqV(3Q*|O9xpu=OwCrLkqKy zhF6uMC_xh?GNKh2G+#kUr7*U|zbj_L^rbf%j+ENH0W(8;VD>jwBU*}vFpg?)`c?VWm=s^Y){8Ugsah5ywFq#eb0 z-0h`Oc-YG4Xz=E$w{lqat!nJ@QcIZE#YCOOVyCyH*K`V9>+Ba8I`4?k>)~aois2Yu z?^a$5?-pNaPpKv1Efpj9RpC-6AntTNE~BgEnZh5q6*SdBLq?d9Y@afsuB2 zyprVd;@Y`+?GQdV$#F17@Ng13BC3XV=R$`3L$35GvWtI7c=@@k(mWvi`rIWC4Si|206I%6koSIcVqnKbX6OW*aj=rv4UOOQxD!^`7WaN_yk}`xp~ZDzL7AMzsMZos z2L`V6t>etuOT4w-i`Uckae(2M9rJUS{zU!3*`=6r#@q&c5* zx0WN4c!6|-bSLVCeMEXnA_nE}NI#VhV)>9@W$2CNY$Jn4cV_m?HQKajQG$;>BIY&Upkkux$`GaMJ~ea{8*NO1ce}a_%%9v0{qxxRGo9WveRM-ATKM(^;UjyIm)xX-j1-fr?Yu7l?9k>BZR3a8iGZVLH1 z7nEsO6b%*a&b};~R5b4-9E(;1axOWMiz00DT{QNZS(=2GoBP}RG{*v^4CUNZ35IYU{aHpRe!(RMW zGI`8Wmu50EOx2l^uNs4$n{j}iZ+&9itw92;KAg}6Uq1oMzL%B3K4fyb*mTp2Djm-3EX zPA}cb&mJVxnY;l!(#%_d=fG)zCsUo&2)LC05~3%t=4(vtqbNLJ z5VbR^x@K$p>j`t&l)}?jP=?JHNM`&<+zz55L?z%2wB!Q0jJ5}21b28_JQ`8UDF{JG zNsg9`b%hR<_z2ZlMCs~n??@U{qaw4Qd-!%APD15^o>r<5V)#1OE_l}Kg_~Fj2V+Jg z9%Y&*Tg}KUkc_AF*q;>38Uf99E#I1m%d7f=1gw*bY~`uRtIEAzQByqWFum<#L9ZBH>M|| zQJ*ZEmDm%Za3~Utp!92tk&dN}Xlr;~gI%|#eF0_G80iFygbJ;}LNTg?mB}B~0>whG zSkbTb0H~N%WtDldJgp<0^kmCk&%ei(SBzFQS@ z!)ctdj#a05Jv_lOpc@g4|7aXJM44DHAXoCav=M($3&>RGF{=22K0izMX^3XXh(eUv z%6y>qZ-GHP3o{qiiKr~?Q(#*w$W>3q$65<51+1G;SXXBY+bhLY;etP2sXg6jZ71}! zpFA*3&9!z_TT#cl+^V*gSm|*f7oSd0CRN}4Dq^>Dqo{l>?MFZLHBrZa9z&E;nS($hCDeGab96mBxABOH3;2j#c=8(bxmk`<{&+pZnm-U3*H#v`*oQ8u zy@BQdb|)0$$xRkK2(MAi5UL-7#I{HI^2g#B5KAK1H>j))u|#3*Ol=H+PqS9~=k0o& z=q}!0&vCwiCjI5Cyh4Rn$eBU7Mn?e7OBN8YVGeL1`k}$<;ghtBQQci##jeWdhABG7 zwVUHObBr{h(tkvfL&X-WP)H=QT_LV{3hL3uGq@9|oWsrM++mM4sh2&@>&;GC`Q>+f=(f$Cu|1D| z^nKS11yM&ZCHuQ~-u%v6E*SKzy!5scDXE>vn4r3l6=dPS-f0gpI4rDhO;dt$4a}*> zaUQ$ZQN+h^d}i7-OWY3zhhG1_kAC3ItGt`v_MsgH${QLd-gfCqb>M?awukMT8Jcr_{Esq0eIn#k#R07qG+GY-tCtPdncw15?iPo!WldVOzpVoBi7+ zAGSZs6Uh5`oQzN0xDpD7C%;EKxG~=W%Wal3-lBRoZcID*P!&74F(r^~2~}yl5dK~G zPAp!kt!8ZtLY&UphY91}F(WyRHkS$Sa~f^aA2A%-&(fjkCc1WJUm)Q&WvVA(Od`df zJ!($bw}nFcsG+c-;s^VvnfHZcsp;1DRSu z4&lo)`%rK$3;*=l((A!0_91wt|3&%@G+vXIYc@;y;3G+=cwnsR<>Vd_W_p3R`-l5$ zM1Z==82~6|;o*KEt`L(c_}271N`Hx zjNEyH5GIk0aBmNJdVC0?;UA`3f?o3Yr-+*1kyt&N-Xb&3V)~n8G~Nu(;(cm&*P3-( zcqZn^IZJtc$B?QZf?4)?gUIic(`&oDK9ZnlR2|t_%qGL^(ao#JDuUcZ88`z-Jvpm; zeR@gPbS)k$w#wChN~X*xEV{O@SV^3_W!;*tZk0Hcug2ry@D}$9I+P>v zHZ1QVCNb*JrMoD{=*ZmwM9bBMJ1p6?6t}||C%k~`H#=zGgb%fW>`md#(Fi)>v~YZU zjXImlBn2{&A8s^-1p=9o*U0_8N`Xa;LW9fA7EYvdgYK zm7F@OcWmFjm57v%LPo+D(pYC}oc0;S_ zPH&}quExA8pEcv*$=`J^TGWm6LWN?nfVbiO{+hNyT2R2i6@Zo*67BSA+ra(Kuc`$u zn$n;`_U$&H$m${bnfv``kdsbMJVU(?X-RM=zC7}k89Q2DGvndS&VCa$p5?!pxvTfi zc(|b*L^0-OdO)DfrXS~VJ_;JcVK&yx=X3;{>zvn04{%&oGc_SH#bZ z=pFHIX2T7d>qxX8d(^E#r;htqEAt8=Xoc1s14kT|r6WVHQsf&|->Z{&nK{Q0=|1p7 zn{ysv!g{1piCD$Ym#&uffX(55OHY8!;cL>1&<74D47oU+i;=m=d2_=X9E%kj4&+J+ zYM#&I3W&Ho1FlRTO7(&zKn@!?g=c0Wa;KI}5-6TuF-b(B-06cmnNA+IUwDC*Tki0X z5ynF(_(6}dz6~2#AfdXo4ZYlJe>6Sodeov%1({u;F4gEqaw^wawc`jGfCoR}z{mpuRau$`u00uu5(6X&dp<$+^Dcjx|_ zNn#X^oStyerSCA+AKeLkK|xQeFvgcjtL{5Q!E}h z8q)al!h%$>MUBRkOrOwA%V#rPRK&(y;-oz>P#)#MK8~#!OK;NMxx?3Step)YJ8m;OlU;mN^qmdK!K~_7 zGrOi`m-2JUPI{hJ?Xy&+M_YTg*z247ZJX0H0O~5#&feK;8wI96vaUkyjG-Al0EgDS zN6CA+#WW=93e{frPjwE=>ZIA2B(u`jO-8N+MuX}7?M>|Iqhp^O!lt%Jl1E*GcV?T$ z@>l@2ZhOCAQ%_^NA7j=wud4`9-zCMKBw4U=6&9@U;kykP0{&4I#!CtdP?J>AV`{q3 z9CB{^9b{dg?J}}IKN|B*6GI$tmr-J5kEKc(<8SHhu=&4J%^CNJtLQ{*@Ov9f`x&ei z!jB4^Mf2FeyxZe0szjG(!G$@UGiR-t>S-zr^Uqubd=A>{LO5})N*chITgEBJ_a0OI zN3DM-vl$2i)1PPlIrj7$*zfH1>;I(jV-=LXTTFfC zAHX|~y*_fS$>C#gxHp|UbEf0IbttoH&UBp1EHSMUNB@L4*Via`&c~(Q9M?tbOm}4t zXNKLpfV-Ss;$qg5H`wi1yJN0kSztYBV)(MSP)D4NmA9&`Bi-<+$r({!?sFYbE7MtF z8u*SrI!4w(u4*m+lg1FMHnSj)Nj>MPq6L4YqduH-XU_DTxmI;g*>k1a*!yj5(A;u7 zCi^Jv?1}mBBa^4uZS@|-E;{Dy?V~-0h^`;&Rku}j6gvom2)R$#T&-wkJ})ZHII>MW z2vZ};5X7BSuLzvYoCtLk4BoC93Gz3hny((C+ei@#iZRxi^&*hgt!TPJ?^sJ|SQ zAEuPL=;TFFP5!A*qYq_#gRjfPs|EjHV@=m{B~d^0U8vShHN4&RS-2~?DH1ad$8?!6 zorE%-k>7p>gu9!z!I^ujSb6M7qQyg8W+4u;Pq=&R7I?AGl4ZT4Ri=uS`C5 zsJbh&E#F;xkB#_YqfyO2!8;1uE7468JS7ubWro_^ufB3`ZJ0d9?91TfbJpyB!Iq4J z$nq>l4@Nb%*{|sbxmaKe@dVm(7IHzg-M{<$ARVAu7i@2oEjH?8hj#O>J8flGT;!+- z(Kj=(Fv%u1Bl$kCYL)V;o=y)LIXOxE0<=BNabQIzMs-SzNGx-;9dtjMLbjZBfLAHWpn-^nK}A$e%Z& zM@4x4GU$s=L@IG#WFlG~EBB~e*qI(uOXcMQ36!cwE^@G|Pi}8Af2{_e?b+u1b-y)# zwL7y>K*rh-7d-|hGw3C|EKAy{huGU}CWQlH?X=tm8Q8pOb2XKHJ_EW5s-&_HlL?naB!xHQu7}@F_fG{DMK#?N9~thg?%u0I%u3g;aC`q%59lKw%S+d&#r4T zvKb@M7U|3^DzlbCZa@pmfdIRK(?-|s2&7i@3=m6ZmdS;zJh*KAi5Kk}>(91w$&E%j z`_JCJal;y+=U@vyAfNZzv$qX0LAD%cusVkTZeE3GH5Gso?+=?882ig0E*(`GEl8~WJGWwRtd2}H`Ev{8DU zbPKA&NR-uWGNps?gBV&tOM)t^;!AuLCAM{wJY;kbgsdYTmmqV(k)*|JYjT?4dYp<` zhLhSNL$)1><0b%>=ts-~tVBKn3R=F-sB@BFijrT>=e&_p$(zf^lBz1BFnY}6NiGfr zeIXP=2nJbU5sQx&iB{DJ1mwlr@&mPvx!14fJg18`#Tb}hK>+NRWnT0GMHpfU)Q3l% zh>YA~^px4M_B2S%A1IwO%=thnD-&{WIS}xdiXmSx*tR>K+|o4JaFOkGRo1xbBvZm0 zlynV*kZv}A^MJ{3_Z8fH?9x4#t;ESx?+%aXbiWSgg@lr)HYXmmgr zt^5O?97r1h?WO}*CeCmaG>|hKjXP&$kFzga^R>L8|AcY8%*s2@xlp8MkY=dM^8?dv`L%&Yi%?Tig4w0DI2 z`!;X=tCKhNEPxEvK)C>6s#a|VK4&|BA`^@CuUnf%V`MvWS@6k#q4#c(AcXG<-8Ci0 zgbv96ZIK^r+6A?}*>!6NAnWLSsn!3*ti={OJdRsc(s9cvA1a z?2(V{yY&S5&2;T@N)V5673{ZA&gm%|Fm$;t0*`txh0s6Q|Ptsd9B6M^zB zPdpvR2R}+gO?aV{soE;VF8gzUZaJ?vwEp#XoM@m> z3ypUnGeU=w%#2HyI%H<52A#e=4@0+N?XcpyNA^8(!z#A^O;DO?mNnK-oHq)kIq{A? zXZI_lGIF(~KejkZ&Qp53d9!^y0Mb=UP6y0CR9q+vpNkZEod(I+NE_zOYYh z*}QNOX+5)yEkhXkR>ZsZl8{mdbJ`UCAd8TUY3>H?A&uA_roqV- zRb3uyFHU(5tueq8yIvWDJ-Qv7GH;gNgKAI`Mkc0~LAX2xli;w$oyZHUbymHdR69b{ z74s0oRA;rr*I`i*La|XnCrlq{s`yN0_&_i<#?Yh=7IU$Fwn*EkmJ^0J^U!59k>L+L z6)O=eX;5N^5I}PQ1o&}|7RKEP$YcDSj8nULvQwfbFtMb|B%jci1h1772DY;5g zex%_<@&iphZSpSBWXrw1)vY_acz8{4!-jl@wMG{JU&My-1LX9_bND)Nee1G37K|UFz6eQSjW| zIy0#=qUxmju_&Q2yc}6Y&U<4CGEEvVMTWSyh3u18orcLCwW0hp)X-nc-PD*=w`A(K z2W=05eS?Vxr&Uurju}s~EC_b5(6d+A0Ph10T+$%iYZ01aPe>EPk$6u9hz}0VJ_tKBYd z)@~S8_OF_gc5^|I>gUO z|A<)gw^8BCY4shRgWIlIQ1{H4HAI}fLp7~MsV@rL`J5HeJ#c~$yK_M{i=aBhA19ON zHX_q9os&*?w$n$dm)?%kX?@=-;|wbMO*M>VJcg=j*Nd{s*9bYfsItr^$cxoJj&BXN z8I@N;IKVp%x}B0l;mL8I`(_+9-i&$^CzaPM4tR`8AyCBsW9vK!z@BK}lV1CzQD9#U z#QMs#TQLH$av_VX>>W5e@4@y5bg62T#ihnlzZZ43YM;~#0mEP?YRTH_Kx}cDb}O*} zPRr^A&kn^KO`*Kh8LDwz54~0;`m}Y%WrqhpT0KMY{-RkkX{o5!8^upXLtQ3XS=d^@LtM`58@Hfp z<}&ES9nyu;weaQN3ubw$@J?J+Zd(f`HMe>O$h+SOM-S|Ad{BBBBvQS=C!3)J)LbST ztYI9^PF$w^A^d1aj(?&xAd(PKWZ_&AMudsZ0B|y{8A)`jr9#0 zY<@ytS^n9&W#4QjcCLs4M6;)<&XFMmgkZFDCyw(p%ry=h(Yca?bPC5i$sM8{wg`D# z3jo&w(zR%CJ;znw;s*Bw-%!sK!D(yJz0Lj@wtc@K8@25883T6&1QT*17iJUSqgp#A zo#eU(Q^7#k1^)?C113sLOu1&*;{&$0m|l!lD|L$y1BL=PF)GZ&zC6=w@X}5E?AnOE zU=a7~vk4~2q(eTu8Ebae5qX_-J+#=}(!;#|@AJ|(r0+|=W-^Pj64nDw?=bQ~?S;R~ z%aU&BUONc=+HyU*ma=Kc^YluMDudZd4G!_?18cA5M!Ox|DEjwudmtZd>=I`ePq$ig zF&-4*aVpqbrBbB#a0MWJrys9Az)Do(sN>P-282m zcQ&I})(_?+gf{=i)3}1(HURIL^|}yy?x2OQ^xI8v7R0^$5tDoQN78>W57oV%f94j~ z8X*ngbx1c&%QH*xq0e{4j@*T>t&t*dwFvgvSP*gm2^%Ig#dR}RFc0`t>*NmT&U%kp z(t!Xq4^YB!E%Hl;0)`wG ze7HWh0Kmj;kSALgqrg24T*EP#O%ZQ?kin5?xd&=5irdiJ^WT9xVfwQuHBnH=T1s3b zPQ*}0`LniNf5Y#e&ScEr4po!Es*#zB@8xNnGbl08!j|x(UcZS80oy zF90~E0A)rhS1X}|Q0M6&e*=~rgu?oKwu*08N? zC%c5bVg6;#71x}t{J08@H`>Dv?b%=t+t&4b8BEiAZD9@xPb5?s@=VCXOzrfo9#Rk-*z!j7~X8iXC#ie_Z;k z^i`}Veks+C^4NY&Y#vuWn=?8#Oup@@t`$sT_Mo5ZQFbI2PVEk19l_W@aakBeqCy6B zHI}4L+Ib}NF$@mdo~ivb%Nev{PaD}E2wRbs4rbL1MBDH^KjVJ!D@k0D+cd5HBh~^> z@j5I&lK$WPOY9Wm8}2yaQkjK(xq>INSwc9?t++FTZmuNNL~tKc*l4+1CpxX-O;nuye~>};o_4GL{{xE&Ac!nqPccCK63QLK#I zZ`QY>au9pPz2Cf&&|JwHTiQ&Up*9d#$WyBaU2%A)lZefv2k$`K?L(57yT2v<@F+-| zQ#HNzGdC8Nwv`V1{r6*zHfaVP_&u1EEyLDcK$?nA0#<1{{YJd;Zn+~rbd2^B|AOgkO$3d!5Y98KQ!YxVUYi!b@hG1NEN*W0gCg=Sp-wY(zcV6eE?4s_M9> zxK1y6wt1rEqGuc^=?7rY(c0BdRV+mGj=v-67@b$Q9r0fRiBXx9yFr0{obf? zP%i?mjP1Aat`x)YL%U+lJ-wCcsBy`nxQMhdk7AM@nqJmKebkRgPf5f$GVikX+AXVr zeFuuZnbgjejIsTWwX#?v2&tOQLb`U+3=%q5qDC4Eak;}>HnS}=3Fr*6MS6^E&Zi+; zz!%mBe;pb)$9k+IB2!|8aK0!`MK&s6U1s#kdE}T|Q9q%j5Wq^xEtRyKWT6&db;mi$ z(KerUKIo6e{pEt@+vY2eBTqcZQq>lmoMuao>I(b4DyBj0U@WDy7zabK+GqS)bRWk8 z@72ry4&tnR#G9q>)wM}Eh3uOag>SzvMv+imhgNyqzWUvdm4}cAIu&>GHlPOyeE^Ov z7x)SwQ6$a)EsCU>R9xiO^i5@P3;>22U~T?N?RU-|sC`Y3cvmU0 zR5GHdW8PvyjT@Khd0*VP#K_;QhrK;2CRH5k@s>^qSGC%Un%q*=Sequ-_Ccfdh&fm3 z@u0dJS2m-*uzrx!17OQE+#Z*fBED{4@l8Lq(mn>CxK9#1+ewnDMlc_s8|W zHS%ADymv$1Oa2~TunSp>?3E~xwb5EA>X-8n`GjnWJnm-f)gr3jNC)@nk-yjTN>Yti zXq)g+lLaG+-$-d_x;JWaxVArBNh@KtC0wa}0Sa!yoPj3{OqQa4s^CbP4mbTd>Fd(J zNX00tQ>ima;!$=dqjEee8XZ=3Y>YVCEbh zG1C$|hdA6XF9;JmMRp2+*Ff8MC?-Ci((O4NN~g%Uho-}Soq`92=3yv6(v}MU28vfn zBspe#cuW?&DiPT?TB*{5S0NS%lxrQpuW)3xNO=Sc3x}>CA=;a^vIcN(Zv9c7WrxqX zIGw-W0^76G^;-r;`I`b7!*SmrB=92dljm(7=8sT5&6e#NCE5m~yrjZdwgTdnYKAB9 zcOqpNoL#YWB80!`r+ZHu^srQ=MOK$~0OFbn`FvdchEgdFZ3a7n;eVk;#X$CtVkulg z-(Wk$TB<3=N<&3X4>5G+2s_~Q8EJ6KP+-U~(+|$7Bq;qsjTKn5ta|83CZ#O-wy}bf zot3jbxnwYJuuwKUUT^Y$37ua1@_hV&P$CUm$@LSypr}eLlQod}s%eRtV6Hph;)I87mdVJvg;5`rOXX6xLYRNWh^PZgm{HY(1tT6?`(9fwu)g{IC4{|# zA?W-q*O1_bC=L00NA?>?w+Rl-2YAj%R+^e~`7mO6PjKAn51`FnTcnT+I_H}F=IuGq zv_3N%07>MgE|Gs$2LRjnv#HQw2YkhvR1Y*lsV85V%~`X8D$8eFb>aCBcK4vuSFO0@ za`Im&Cg%>M)|>&IuGMK@s@daecQn3wv$JN^2=eE9x*t6M!mDWR-gEgSD^}r+r4|x4 z-vu*H7zVwUc&Wr#NBpwHM@^ng*FasmZ{kY$cg!F3N&+;cr({? z-2N5I794B}r?IS0`0n^y&kd;Gg$X>O9AwxBMCt=L2f^$*IW2<8vtThJ(4ep=;HpH8 zKokjNSjgAdAq?AmoG}I6vN2~o$;yAJg|b*FVNS$`atUaXaN^~i4n^P;EEx6uHZ1$V zp|7$Yz@Dhvs_W}EX*FY(qoK5Y%XGw0`|UH{p5nTb&pV&qZs(b7^->i?)e4a|Jm&Wm z%4Kkat**3YWI0*Nsd}6(8|&;Sl@<^WgZ$3AYB8T^4?EkZU3+n+v!+ADny}u6h7oW$ zo~4i%ZD?zYhAaisGs?LrFg-TQQeeZj;oQg#FavEs?N3WXp)wdUpbB&?FRO-TB)qME z#hBOQ^9S@yI2|wQEuOd@_NBut;PZL>G8$BZwjjN67w3;CasG%6(oQh_P}JwW(q8~) zBDv5=hndLjv~LxM*S(&N=A4$CNIC*K@#UlQ4xllt1EI#u(51_Srcr7RrwBpqtS);x*d{FZ$^dCF;nxXNfnULw+Lzhp|?;AvY^ z{y@Is_vLa1j(^5ZM?+jF+GWiefvuiI+JzI!e3<(TVZe$%wwwF@t7LYtf z(mpLjjtH-9T#YYSmnyYKkog-42Yp~L5&UnUyyBR+m#3LSY+L0;3Ai|>FrDRD4;y9c zu_im0UCwS~Z)f+j|II$ao?>5^aaM6b^j&TMXC|NaF)!| z4UYa#U|XC@)KZVvA!9tLQWiC~XWEm={dL{ygce)I(sl6mC3*GlgeP`p#<+y6m`jYz zeU=@^Za<=j-Q8@qyiRw%B7Y8l;{6ueOYF#AasLrL?4Bcf*pwMSMIVF z&RGdc%FZcru`0UkQWq^Ot@Q9Lkv3g+?zp%Dal}rdoqi`1Q{F}6=(ngwrhHm-yy@7p zT!Hm3Ew{VHBJP}O#7Qh9CPHSWDw}0KC(W7>*4NDRm0E-#m}@w|#b9mVdw5*Ty09EA zePIG4@LrZKFlT01d31@moZaBOjq~$F#vt?jwN-c>p}7A*o#& z03+6A(mTLz^jBB`{gd=l_z{72i8}*p4n;GgW7E8q}1Keoua1YCEx zB+W_{7R|tq6ly6&$w*1ZLD;z@5Qwl+v~2jJwU?t6)|qWp#}*~x#E_@QTSJs2y z>}id#2ttiPzv4-jLUN|EEug`(kG#4-;G#?>2*Q%!U&mX*m25a3rsxv$Yt_&RVV16h z*N5dZv#VDwjKum@jb-pvHCxV*kFt_dHiYExrV#vG;f>)cTVLtwUzY7(6r(3(qH;94 zu$`6jU<72Fb%V*7a6DHfe!zShrB$MgrQ~d7^RyS$K8}l&bhC@JmUsZBWFSmGHCpjM z76^cy@-e^vKM>?H;&?__kIE^PDgI!wJk~kLS_`Z-s|WS6?)8O&op`A%`$pX8>G=!L zsFb6R^>iC09A%43IcmLlI_fvdl9|T?uZPS2I~xp^H%fmDW`OlY{!MxXURjJF zSmR=;x{CNrEW@0$jyTm8l3#3<>LP`LdgNjY5&>|Lh=`=jz3;>hXVcWrOzq4U*d@sMm4>puZU`UlCci+Z(n<9@rjFRWm3)Tt$(V0!gtC@EQ^R}rm8^Ns+l#Fib8H!CTCl+Yuk-jpr8+( zQDOVl<*(ml?46 ziLi;<{Vl3Z6?qM#g1@W;yC}E80B5__l{GG)`R4*7dzY9yu%^Kd|N5>>SCEHAvELRg z`-&bp1UeH>!LO|rC(9m-WSMT_AhfRCFme(qC=e%mC8Gv|aF17iy7=1VaP?=6MW?qF zdxC1A9P@;ic7NmK+s})6D2g1}c+qH(eoob>f}S)ORMTaJya%#xQ>SR6x&GHg#M zG(kfYn+NQ?aMM;evB@~NO}Y<$w5Ko*{$U>FpK}D6Y(UjYFGibC+pe@SFv-iDPl`uw z#vsWNfq=s(a}6aMQE%VX2+Qu6THfRzTu>v(6UZkfJ7e{7U)oJSiH}6hL=tkGl3a$u&bYQY+sg z15RnDpH}GDw6h~;VUQIYl7>*Ft=G9u6mDLVPs$-b&J{3ugX@+v_|61! zB?%cN_a^i_G&`wXUgUzz54b})j~Yc=p}yx({%U)TsJC0yfwAqF5Jvs6N;qrmAyM07WFOay-qT@H@a_8`eI`K}Vvg4%TB*XkluI$hF`KpTi!YZmA^=ASmbSk>@wQ7^Jz%{;)sN(s3x>2r zSP8_~&L}w1F!QHMIdmd547rO0r;1&pi#YE8NU~}NQYIzU4tyTD{y&ud6LAOd548*K zJCn-HIivcV*@ry(4%-$UJ;+iACTdLY784c3$pL_J3hdD{M3B>A`L1|GL>LzI9UVY? zV}_&hpBi~(TuD?~v5nt>sdpb)W_!b*1(IppS40VvZQjy=53FkHIN((!?>1FAmkKb! zibWZMzX+xbzdTM1!OFNC**(w3$nLsbVp}L|Ym+ZOqa+OWJdvdv;OxxH5&I|ntFNfP zpoc>x{eTYhE#Oxo!58#mIHH5-9lVEDi~N_WMw1$@PI&XUmuA%3=i4sHIBXPS8r#MB zJ;sUPTWL{(Q}q5DB@6#I-*yGGG?7r61JUV(1tQQMUM_f`+nTr3Jcen?Mat>oW0_0U z{&sNgbpuP#BKOFtq-`6pB1j3l6qL zZ$9?0t$jz#?~>P-L+PH2W-jU=@R zBk`E2tucrujJ$`otzWV80PRnr4#CfXHyx6Cq%r99NiUfh;4RNy?Yxb*EIM(dbJf=2ttBGc1V{crA3J~DX=~eu*09QXqsW3{ zp~Nhy5#^5@s?)?UFewx#Z!m|BvUbVVvsPZddu=Jiiw792Yy863uN*&#E$CNh$r(id zGW;LBSEv!#h4C=UwtUO%eqVMLZy=uk5axj%JfDUlT!H4lI@sG9h>r0%`_YtT@koO8 zEII4a4JY^ZVrWFmaX$@>MT_{*=!o&50njDYD)|Z8qTi(>@K9lL(QDzAcq3s2z!R#t zg5bi2PfY{5hb7s&6q&1qOf247SUjA&;*YDFyW85q0h}=gb}w4c#qPc?H!@Jj$K$0V z5z5>4rvtLXZcK~m0kA7MSAzv9Emf@ zwWMS?uVEg2Nxa0TOBaEcnD}5Nl-V#5CJ2QVSSP`{vETwAh2vXYHn%rn`pw{^Cd0rv z!6Rm2!a}(;V3|lX!N35COPv1n_=x3$hLfB^^3IhadnL0ls-c#L=GUmF*G3m+Xc~xN zzmii<3@h3v=mTxPm&?(|px+q73P4ahr8XIG0muH~^{WiYI|w420EG zC9YM%-wLa634bfBuv^O8%Jgj{&=QE??2Vd=@8J`sE$g4fEoyI>=@z0E&QFy0a=$CB!`#c8#H$wl;U3cZH42l&So$N@zRD7+!MmwcqQ33yhZ z5|uYZ{78SAd@=%bY?In`7wek;-Q@H0Kj<$%)SGH0H;!Kq=iu+JeKM)`jh}Z8_x+c4 zo}7vMLZy-lnTmNH@=<2QLn@OaKGaCXg47p4jnoQzOLegb_>wv1_{=`)E9Z-$uniYSr~vonl1rY15j4sWjt&U3*b+daqq>4R=*~=gO6xf6|^!oA&(a#3mRW z1E*hn`rzQ{gHRX$D4akDgULUmA2^9Jy7JB8@C2>fu=%j^-r+b`)%VGmN2CRCC zY)K}TAO{i{FKfRPDv0=oCuo5<5kkc>%ZEun6?mTC{Zu)@l%p=Q=A3225KFm)ydG$9 zYgx@@h5+FTQfOT!h--D=(h^R4qyc~9AklE$%_O`x*BaB_jrAJ^@3>bl^X-kW+P5)q zXv1pXCg)2wP=@7Uvs>%s#EtOpAa}NmOj=K|(~fAGoGxImwPJ&)=w$^!zl7!IHdy_9 zdy}r?u>}N7u!uD?=RQNG8t$KlUUOnyi7?=o7}zGAe}vNmM2vR_diq7l{j zmXQ+^ov8~hjH1<5zm8L?M6V``=)`xCP%;dDfe~2j9X*lu* z2Y||SxH{5LaPG{EtasZB#l6njrSfhuzRbwC`R5sH1wji6(PNHG7^Ln@5~CF_fjSvG z)VX${R1^L9pfD~lc0v1u`T|$O9;+g1y$ZGCc1u@FZ-u@h*M5b2P{~z_cmSyX3$hup z^0>315KVJ9Vyy)NO#!F~X%YzA0fB~$ta|3FmG&6HN{; z8uIjvUwPw|<2|0CMPWHznf#KYJErDKISx`c+Fer{vHSM{l#D|^b7al?2jBV7eOIkq zdDVRny>l>x5}jJtKXNrT=YEF(O1$^BA}uy7lxU%xt1=8-#89 zIOVWV2No^o&aEde?1fy?rCepzf0=j_s!wETG+UX#I-m)GHWO}A4l}~Vq%F6cjPr-j zrp&6Ar5RLR!TEt$W>7r8Ik?sFyV;|?3s2swiG{N+mA@Qs|wfpzR=Ie8;^K6Hc*e;7bfc6 zBvDaviFAVLN4yDWD%6N;M)QXfGj+$7P4nlrsGa7utE)$yOGq~fv(w^)^@E=;ZzDk+$4Ri48 zP<};SN~-7rjIxxcU>wj5B)c6j^ndag`T?U5)Ui|el{n$Mq65+PC>{-4U@fmNPb-(@ z(nem>lk9=Jr1wc5mY(D*dq>{2y_^wwr>^OSIz}L&?Ti|G#NmjIGjv_2ILF%*>j0-Z zY>g(5u!)!pZUgG*Q>qBe_!94kA|{Wa?t_=@biy5OrWV5@5gy57Wf#6{TU z5-Zmch{iN#kC|riDtZ`YkIm(Sy#^G63AbX2{0!gm%b$ZGji;~4$(}1 zyMWN}h}i1a1!{J!@mxooSwr@;;JPjI0tZ3`@(3Ez!QE4EVU3!#WNmz2yZb!6uh)5= zFKModTt$Ll#Mk*fdaDfaO(QW_9d{Yc~-;4giJ!O)wX*22tZm*c*4mD zAbD^kKDcl|0q8Re&_tyeMwNP&Qu_cVjZ~7J2u^}`vE|(h2V_F;$*fu+4`XewErj+b z`JGed8W@drR8*FO1@RW7{@Q4YqC?$v$+y2_TMluf(cRnRwycH{$w57}Y9kPanc8IA zMN89Z%1uwimCh5hB26^CKiceW6(RZ@L`J^&gjH;nKUk00}R9=YXtg)Nv6l! zG~TETZflkq(AwfW$iW!+syzdm5m0!P67d zxy&M>nyKh9s<<8TBrAXzCR2e&!k%O`{0KODI&y1s0Y3qU0-m5J0tSN-VzLQ5f{WG2 zBZ1UQ&F=%Y2OI_70~bCLQEUH#`-DA-O2oX&2F(*T?*ZWTKils`(R*rLbNK}|NB&Rl z@4XX}mX{VH_PqrW+{@u1d#5Di>yYt~qajYN>}R(G{d&gkK02Z^`QGL-^I-E1J}QDj zW!9(2#_yh!pPNDV5Cem4vcmSAF>rP?1jVg)j(zQ-oMjK!$rZWe9xM zGxB%1-e`=WK4PN2xsBwCrzTQ7o+=XjUqw81sDsB-;if(8c&aOtX~s!Qz$b6FWZfB55J12m^rbnT|6~7jH5Jb{t7eR zxwAi)$Nyed{!Cc~CaqP-e4||cH*g$)@EJS@uK~0g9K~Rt5|LrTc_4(JPMP}zCF1*Z zfa1m2=jWUI9%2YYNs zk%0H&-i}h+xl>#5zxQ8x*=1LrN~vb6cWmFj+hgJ<1MTz2nggXfAyKo1AiTA>W*doq@!GZHKwSDN97tx26@QV@8?=(V} zZ}%2Uy61FNzcA>w$;{sriy_xS+MP9=Q%g6dbrjJL!YvaEfoSt!yU@o0OwU5MXshwRf+ z8uJ*@V9}`kMvJl&FaX~h^kTfcH|W7D2j7cxJ=m#y%@f5bMll#QZ~+kD0{?wgLq5aB zkhpu{rTU2UNz`or8Nl*!R$)unMz$Sm%xSxLblM|uE7-A1M7V4V8(C-~iHs+X5q}Ed zO|Wbvw1Y^95uiA67Oq5sm%Y#gfWeNuqce#d4&J*|8fVct z;%PM8_!l_ZU-8v}?L+1}IR^*Z2Kw%?XeI88tcp~I0pu9twPaRBd>f}da!<1;&AQ+z zOF-DA8WccB1+Xt3%hhJ zTGG?Rs=2OfA&r)7S}#R4EtLQ&1IUb!9{1-{@q`ic=Z!$HG!&LQbv0j(EAd5{Ge>?M zRr8gY8e(!aSdR0P+E>JTzZkE^`~^K=fD1KTg=)+dk(~PR%9)@?CjzPxe9*8Y_$yJzKcWc}rhfkF91@b!3jGX@rw*lB;s{M4kf9E@rnOzLow z1fcLSTPndEp~`xZb&EeNM=-0tXaYw(S~Muj)ct-Im`HCQpq^~$)%@k6wptH@L55I3 zs=qABe9d*0X*&_Vgs@6jcaI`(1JEzWp1eC+3D$P|&f2`sl9PHf9f&eKO-;227< z!|zH@jiDo_iR%o4%$YzJ3eICLL%m(0kmxu$U(VXH2*QWV2yEF__kQgROe}v%&0IST zFrgk#Ujeq4K}j8hK*Fr2YVw9pUJn#XyqpR8kkd%qe(+mOJ`X93$s-{B+^PmMl$%y>!6YcK3y|>gh&TM zJyDbO*0w68VnBRMPyI=;wpJaxl;*KUi37BTUOFuu)ty0TO2n9$^M$0;TA-bM@+pu(%L1LMozXJg{haicp%R23+TH^;j=l z`XHJZE5q8uY5_&l`H%r$LCi~p!9KP%NEU1Dai1c8FBGcnC!`kJ5~|kr0FcJEaAi^3 zAJyLGtlj!&PJkEtcO6+el$lD~+IzLI>JP9-In1!OE0D?{0LZoye5>|&m|X-!-9DaG zyBA|gbgF8 z>EZ<)$#^j6LuP&eXihDe>gpYm*LYxO8G&e5p)kByUVU!P54q7;;fhUzOAwr^T?~(t zeBo(&2)Mr!E?vghD{R@NCq&DUkbc^QNW9NpGq_CU8NzB`59=LWJk(l<8d@}9l%wI8 zQ7kMOTrT-}n^HWRWUL=Pp_AbeqIfoET&(kOG(^Fi8YIFhCY==g+IED*mGk0DP=j*z z2OhBI^b6h!xwHAc>q?i)5YRC$krbCAFYc0E*X~+^Pe2Rs=rRVHa55LfWV3v5VEc~0 z-?4pw@=d!s*RFrx`n8>1_$+^3oKV|f`;HYK^uxtmKfH&w^|;g0T}zhiT1x7s9%OdV zbvUvvCN8E&(K9cmvrnOi(Nj;sp5uzi?}>*K&pyWVL*U;q;Ne{cDLxym{UF%Ho{?Sz z5A|;u@xKnD^7RLDfEv_I8x?hcF|+Rqte`vL{JN%1q>!Jp6EWJQ&W5h(rw~o z0E)YGn8urZ7g%fc(Z{uw{U+R$B(DLzZ?z)KNag}86l4rp)AC%vyz~}wL}ulYbC(Ng zm#d>i8e9JgfV&=P*}Txmd6Gu1FB*+#Ud+(JuP?i>;P-tpy_eG%mYB!VDp2*RrhW6Wzw96Hkk;lykayw!`NhN5X9%|rDK{>$e}rxS_wZL*IWR4m&o8y!io$%jkX;d4q1#wqNq zU~;UArfGS}bMlhWG0B}anWol_5OD;%-3|%WuDht|> z(%_H8L9>h2{w7=89mRe$o#SN7%V8BGG1-WQ5rJY~$4s-0CYtf^(oI(`m1SO>fhmi& zFVP}Oz)11=_h<6Yl|kggECI&g4EPJ~LTU)l{16*HkZ1;?#TEYb6MUE_HejU%3(p#? zT;4GxxO|U}@bwNLaX1x26~fHNCk|qO0h`X5IdC$cg{IC$5cz(dB2Lp8TkG-UTcGJ$ zJE{xY(orxc<2N#II9}OR2rBqi>+KbphsmruDSu7WcNFSiqFVRudmuauyRe$qGFj(g^5H*Wo&7GZ?$((YioCyNH|`%=(Hl#TqP9iZ=r{M ztXMQ37LU{S8v>gdk25Dtu{wKk3u5&Xi$-?)Zjbgq)#j9z??^qBMs>5JezLgi)7)>mYU(Do;@ zv)QHW&FpseZuUX;1bddfz`o6X!6xO944cg513xm}(;1;CP_3q4i7&WEo#?Dlgr7-Z zXc~o9h7#^{Dn^J-eRU4a?Q#Uv>jyODjI9EGAnqq7`^hp&x#_m_H^6IHt4#1QkV&}H~>*s zc3Vq7=WL2nQp0el5+>fLP(Jj7c>l0@q&td1ydi`yi9ab+HR2dUusjm<{TjLpzg6b{ z;0g47GLPq&iw~m*lu#%`1p=u|r*(^PWpg}{AQq`mGz$M<7??LamY#iKJb^Q#@F50; zk!76icyDlzSPvVozc&;DM(()!R9;)&er*@zh zuZHZW+Aj_qD1Jgl4%M9)KKR~$M!%d?VB1lFJO^#oJ*N2R|79)~LK{wG6$1Xkrt-Q#RGxVrbS zyV!f!W9$>`@7O=F?=!H(V6lrdO^jnq%LxD+Y*=4C$-_ePyD(VC^)M+oYC7NVn;w1} zL~xwAxweH&_~18>%7FWyt8Cd9>}3e@%WSr`iR0R|K9$acHtlxlQa7(F(!q+$t}Sm&hl{JLHSy>$nfaq4;0*H1ZnUz@BZ6PcSr3{{c=g&sX~42Y`M;8h|y4 z9GJ~agB(|I&EfJI)hQv4dyW3E79f`Q-kuWd{N}x49a8&;;|hJA6}qDj>gpL@ zW&o6)Iqp|#9-^5CzY^FXr&%KqZisl=ABSJ*Yw#=mRQe5YvT4>0ztRb8oLvaN(yj0- zJqo|lr{Gum7W_*83BOVbex(6<756IH#<mf=1tZ;`3x9m(Ry4R{e=o-h9qi#ND`?9y%Bc24C)!%TpnahVS&3_Q?(u15UZ<7U91G-(6j17w!c#!vBOS-RI)A9E0UP!AFQ|7s z&Wqq}Q)9K~k1OW+Rm^5+IE@0$wf($8Gux^cZauD2=U1gli)Xae@8+KLC!}ZLz4;Ej zH@^k4KgYUw75nY%0(LEX3%ifKk9`!@`ror}vVVv7CIIhEJG?jRgf4G70q%@*zF-5I%sbg%*teRPX@O!DjjFr2*zLzB z$oZWh=h~O$ng(5y-L&zI_!0QOjzeh4YxqAZ|LpK1ABUcWdh7t~aWL(%6b!LkS*-1_ z=9A@OW@0OjPb>2~tw^Q%x=ZKWtHkYlhV(k=dPL0sRQiDQG3m3?SEZLwPleW8Ev%C* zWhb)j?0j||d#f`OgK$groLhL|DS4t{9yy*t{QH@?w(z)9YJQzkFCABd^Qi{G-vplh zcY{x(0RGK$f!qWi8fU~997zunNliMLB2oq9{R^&}ILJ6b?t*WLx}FL!3ogJERbL%r zo)qVS!M9ann<0Kd5Yr$rN^sUFAjw2EFnl{q3^Sv63i0D~b_lW?`Qh>H#ETc(vPCYB zWx9PqPCvr5;4-;##;3!KX()`V$ze608Cu6SZsg>7|DV10fRp1a@5lF@*=f78Q?~Ek z_Px8kqB~tbNhh7EEy*e_C)slEHnuTfY-|G-5W4*X8ynNB14sk|NlZdawPSE_3`yjK z5)uOeLh%nUh5#5iH*VeN1wsT zVh;v~e?BJj8YlvtkCjy)W=yt6z z6a-8CFG7qss;~11p)Opa>$eeD!)%M$m0%DMqOl`jE=IhVw*VkWu(@Z>T$&wlG2arS`Av*Nw zpX}O6-AHv&5rCV}KS18AX8v@POi$6~DSdxBgAF#0o(ed%sIwmd6*#vBn$iegz^&Xy zw{n~A{FnyDPvG+7rh!kvh~3_D<=|f%HU)Xd!RopfCC^ z7MG@+-vpb>fIeKzxaXt)Zw0kY8zOs%=d_S7$l-ciJXC7?4y@5}j>^+31+YtJ(Vb$6 zws7Dg;4?hwu-%?cJau9f8#${!T(c5{RjDM5u3nZ|RUK&A)wtn&u6mhPuPEBNB@xhs z&Oa@{is9+-&xaXv*I7@B^)!c96-(5v)hy&!wsLu9$Y!nfjnCd=D#^O}=6mh5R1!XP z%${A|^IsEs{sjotv1|?xJ(~4UhrmJcR6Te#oCR~NFzTMuhEr+uPPlFHmUw<9t(vfn zc-3wVR99ut?!ZWJ+`fcW8?K)WmkxPL9^m@)4J{|e{$o~bB zM3j{ns-**y5ahsB>u_E2GGOmoZORxQ^ZFc4B2CFJZl;cuczofmk+ zG!BmA)CO0OA5saOL4wb>3udWjFE6r_0^hF*oW6x-g+ZGklqcJBl#wXeY5@*VcrAMP zf^bVCCCtzdxRY;Y9L;^lz&=VNt42!L%iB$X!~EE7_-o^6Z1viNI)BJ}0rNp{I8O8M zRfHlA_s?)I0Y@u({N}MJ&|h-8FFt+#Z;x}HD_Gcti*M7rA@(M87ADq$E8+roaYP=@ z_U4uzcn96k4xsknJpR-G`ou}gK5zZvCjj6k=LS7_`$fcYZ%F3fyTql3j`9Fok9`_m zVY|JkP4J=-^!fbV!|3rz{bt;nnhod(at^mj32lX{YTQ^LAq4yzul6jn0X7Y7At+J9 z67T4Hf=EkZ5bG(7(sJ|xLVJP(h{2&l(moeFObH$qYLIyJ?$y8FbH0^GaDcu&dSfeu z?g7FnIjDakkvKr&@}S;$r;lFp&P3ucgdQ!P1XkT)I`(kFdBDf5yNG%c;s~7lE^NJv zWc;0p_v(N?fw08lm5|Usp!0sH|H>bYRegMpSJL%JaL?)Jfk@}k4ZhO9#{9!eZpNkg zgYbhFhF~A_pO24B*WROFwB%M{kALlV`cLvTT>Bv1(SZbdF19a1Z|g8^J*=~hI+l1{ zSj^w%A3_)OUg*yfcn{Da?$R3%LizC@@CS4r7S2!o@q`(=k7M2G()a&+-AeNjeKvmg zkoZN+#{~3pLIZmd#X$Y^R2FVS1zH1OCxLFd`iwZ0 zY)xQ2lNI=J3al$`B=I$X%DKRwWKZ?DXAu4;#D*v*UD(iGftyuO3^+pQ5)kXt4R6l{#Hp8Z;S-79p! z875x%;wV8;Ui^u78EUd&yx{|+m`w;J+q5%LzI<(8pPj|eW;ft0ft_WMpuobpHdQVT z6gG7W)1xbTyYd_qF`KXURGO(~g4NPpHfi<9(m;{;6uWhA9o(S5txb1_|>fXZbE{5W9cFdfa%&FnqEU1g%K&$DXt0nQSf8~LGH_m%cp^DcvFu9CtXNT1 zi4txy<{3ik{V?$K295TNAavDhKA{u5U_N@{iUkg3AH!1BkM9@m@;X_A=i9xdm< zUqY%^5@*tS%G=F8#(GT4{zdRQ z^X{;dp&NQ6RyV&$jT+1^n2J~eqWFG^#Q}{k@7J`OpvzDbE1Te<=l|W*wEdthzWlI6 z#~jwQazi^TvBQB@v#T)(Ht|7lfOCIfUxc5Ap>Y~6bQcW?4h!;yUmH_J;2R^#ZnpR!8Od2a zP7&uYyIW~hHy@*39@b-Kon06kX^^ZilU)+A+dS)cua=JTH9_i1nj}{mBO8F7|Cp(p zb(|h|9_{Tm3DG^7QCcOutwer99#}5xY6D?qJ4{Xn$r zk^O=vO*p9Qcay?~1$7R0KF{SN+pII^##EGzH(9ctFlrX;cY;lCR2BSwla)x+Ea&-F zg8gl-rkOU4Ad9MnBb~nvkH|Lh5uMNBv)*>J5uF$C5!szq!WrWua7=d z+~VEjMY~)7XQK6cU0UA*TK{Cai%D|#cmlBCN|e!#Kd=(YM?jwmR4-Z1Wvc6 zF56M1R!y)&AUYZ>@n$|4+sg-YKALE-Qwj1vdnJ z#mn7EN+7;#>h5R79YPg=Q(&9eFd0 z@0*Tu&v7oyFLZ+@NH)Bbx43ub_271~p-49(>*TV?b&*@qzaZFu`S6nUJE1> z{Oa7^Ab+e23k8AZ^@QTxh8PrH7!WITvf>Z=w#+yzR1cpZ^N(fc&CR5W3|+ ze%-TluMOJg9_Ky1*G0;kMjmPpyRTqVBlIL1&Ldi~@Cg2s-Ru8^i1d2uw0p7*Ms`Ln zhJ77@q3H`b3A&c2v1g}x+T1SFcETb!IqG)e811F<(hT)B8Hbt z(uCjw$k<3{OLL_po4#8E+(NC&B}n4d@s!nb408 zUn+cH`KK=1m*tXQxCss{Z3B6|Z^x^zR2ChS!Gqlb)y^PKv!usAG zvflM#7cRt_;Y%{r-gCo7y6DQe866G>+xgzc8}`^yyIzs>nYooqJ=Kn$UJTV$Boklg zI&I5F>U*)v*P7tUx5_o{7u*y2sPK7Z^@{!$!(aa9w1E`@BaeR|{`}-xPaPSabd~G0OU? zhJem9*;H)66&4=5yr0Kn@TGJ+fn~d3!H-cm-wF*;Y~;KF?hmpb_WkMe*9a^I(;B@8 z8>`UTqu_O9O5%${NtkJ0C_#E`{(yTIAcl7Ac#e;N#v_Z)M@OgC^aS8@I8WF(eaQM^0@=I8UtMCg_ z?qgHuQcJ_?bd8#wtb)BrBVfSzC&5x>+_gz@Yfdg; zeys_lyTGZ#NmhX+=L($+d3z}11v-@5R3@m$15wAf(nVNtJS&14!y%8u4f}e5&z!G| zdy&KizcKG{<3@lDj>+gnnVhO( z{0BlLRLV(0w$UX-ZCz6&YE>(%|Bj|wLUC>d_35+I-MU!-sg;WbtI?w=F#Z%+j|EMe z>4mpoWQBn{KrH(~DUlSS>FG+h+hqw|YD(#}ETRq6A>1U0>u#6E1cYex`6Q`N!jp*+ zw93TiDp0KRv7m(9H!^8=MYDEavxbxh>JytvIzL=BhHjO0l{+lOgjs9C(GiI#oF?81 zn$RP?kfYZ`-WK^&%4LCO>Ng7}pSkwFFeeNiSn#+ z=wX5{$@8g>ra3Qsa<~TQtHVJ6mnEo?#3=&NrnxOYdedJ1b(X*NZ|pZ zdrQHdPZCWCPuhj2zKjM&@VyK1*vf(|CuqCcvwb@8sd~MI$rCjs++|FF4>1*sqA!*t zOEDHz;w+b=Y%KPf#Tv1p^NvA`si3r^DhLD3O3k8ijdV(sRrpWk*oQaofRDIj5A~%M zD6p7|&hHLV9DLRg@%dLwLqlSPmG|T6Wfgw0XyVt~c6QzP8#1%o3x@%V9 z8>dC8bs&7p6=>YMs&VJH&+0iP(QhcVb7n-bGcSTR>PjBK2Q$wl9&34hT@+WsP>!A!Q6vA;ovmaOWSkP`^I%W0MbP!K2L^=J4in?hql9 z3|>f2czVhm$!1^C?t!M|hLq672V+2I&cUQ=JH*jG+s}3g=S{T5y40p?t`)-Jz%M7h zrKf5(?3k%zO1AS2hHAZ7fvYZNH7aNV?EJ`3Q+1OSOvTwzJ-Lc5w`kE@LKj|3n~v!W zp6?%_dzgYFVp-=^y*0A|cb;x6Jz_WdsvvLM&}y|^FItXJ6+uTR2b@6pX9A4mAnBJ92m9^3?7(ABM^k6$@Sn* zAn-gjkc@3M741IqIMedmwoThKS=Qi4)wmb?K23p-`#za5J}fy{`LJZL(SYvY?CZ2}i{PqzYQ;+PS z8sR>LpNd`Ja|UdN0UmF0y_Ppa0=@;7!+q$C_?5^vBR>QUyUIV=TpZWOwZ7=n(+)Vs zegAjZV-@mx1`h*)x}6QFvtlmTSXG%K&dDPz*{K$>J(tK`pJ;Fl*^d&E!zYBM`<@WVx_L{C;uiEZ?Q{aKhLqk zvM(XU_Q#rCSjHPy#1vz{Sx+k_+Pq$am7Tm9_AaCGC$SPd&}fVukBL#cQ7*zbL|1DV zhjA%+)8OVf|1IVW5CVv9Ez!eTJHHN9{0DjW=7Uz{!)V~XpEuOT^5yPrUG5h=3g2ps zx<$2ga&y$p*u!D-eQMl1NNusL16E!4T@{~zA9X+ZLig)06Vvu#bi}1)nQe+S69)|` z(=ZMuq|c!1^c?z8H#D^Oz5_v*alV4(XM0b{@{>WGZ$-|;`%6DKZJ8Do&fKhdZv1L%sRJS)<9!>2|6o( z8qzsrI|P{1QJkR*GP@ynG8LNL<9@gAwY#c<$>C8wYvFsoUz2q|gS6*olr#Nc-X=#- z@-U=vb3u~wNkU#wY~}}$zY80Yh|;+XYhVj6qL1B?b0L#ohkU9pA%i2*v)JZqE8FdC z(vUAQDm--{RR14CSXtD?AfhEBZ=GU2!bL$2g0P57>VYWWoG+h=xM(Ke-{qbpjC7K`Lb{Th zV|)hUEqB2#C5zNI@51J2P(DJpZ#yUnqEB=;z@;Suip93qsV>*&B?GeXP z6yrs4*{eHB59HT!WssY5eiD40uR(4~xSw2D{|WM-PHQw266amY{4ehbpN{D!ZRDD_ zF7fd@s&EAL;C3!0+4lP*?~Qye^6euyfafgoii|=*l|^CyAWMM5DJXdYJf)MOhL}ZA z`(2)lS>P%Z*iT|H&@rjgW+ls&GjI=3UI8T>cxo{_&_PafR6YX>JrD>CvX+qFrjy!j z+Zy)*Y|j?++fR~Y?+*%?_UG=XU_njuf?T1jj%&~rD6GA9RB|9onN-ZTc5FI_l*kTB zh48!_!k4-hU+QCv<$sX*2Lt-g2IG?)8wKEsevm_Ofi_<}(2u*%jQw_M?5!gCtG~SCcjDs3VXwq5jpsB2I z*;I#Z1UbOV3#gGe8}$+ISVSKoU&OP42;hTmGlgf%mu~wCgn`Z}V!`>|#p8Qt0-NKl zk-y-vlAtE$6*JAEo$N46!QZ$L%`+G>aQ$F)M+LbDVPa9;87~atWkRQh%Y(cG+d`+L z{e!Nz*;Ufm`%yWF!Yf|W6^l8)in#?}sKY|_7mEf}xeh7@$b$;&2ECC5-#|!b7g3c2 z@<0ZZ2s#OA^Br|9x|#qp0uWtjm`^FiEw%6 zcm(CYxjrGPxm+1p3v9frBmXDzk;s?9^%wb)gPI{>MFrf@JS-7%2P|Z7x;}+Yat>Yt zz{M+E0qwwQIEvwIy&PdM&t1?ldw~Zqa1-<|AlVkjE&{vQu7IbYvwS2db11hs5T8c| ziSJDQ9~VpQbd_%Sb^-|T}{@^)w?|M>gmILO^Y#wF4vkxSI*tUt0H ze}5Y6N7D5H$}Ymlkgl$+dTv!LOX>1e4E%D?3L?Zq9EohBgjd zyC81U$ABdKGX^9J(3M--@_Xrmh&-ggXrZVJ%rl;vNqONR_e`jTOJ~W`@9g2%-7c$1 z$Fkae1P#tK$Z1# zsImc}%dl$l9$=(Zl{qE>uMK1efSkTNn?KM%Lb5J1!JS&ruczdvG2LmNBhW*$-g%1~nCfH@7_q&@KKYH2 zi-2nTe!_)8jX?lD<9Hz*sx4?^a6>e~A2gu`fK-`ZB~P z2nC7?!8rus;z|X&uAe^4h=@J5<21#CFUJ#@xp&4hLhadQ+_1l|Z7b?x$zLq{D@ z0F-jayzyb3ZgFj2h{%u1cb`4p`nDG5Ghp9hI^a_1rjD^xcyuXlN@C)`0)e>pCcvwo z6)t_kHD8)fzBY0&@>h``{l24-p`JwuP5Nm)J)MjRJpC@r3t!fyGPg*aYwMk3V(f%M ziEi~5uLFC`4UK%Oqx^|_IV??+H+Z(^zc2>63@Mq*QzhY(@P#W-^?d4sw<@5RhN9$0 zy-p|9PvN>C%UhO?xvYcQWWA?jTr;ttfqEK-FGu~p56Feg2$)ga?9q<$s`N2=Rj?P^lW5p9%ueNe zD}bL6Vn`vjv%KV-Et4g7lnYjPqd$&Td(dZy9^*Js`(;__MaMX(Q!`{C zk9UFXEyo%OfI6L+p+6I3&_}Rdw8ZG3v9nxVA~X$y4EgAj0BF=Msxx`5(5fvksZU_C zb#fN5r?34!EnT8xPOW3>!-vV<$AWdAkS@{Dx_PR-d05=!^$Z$BwdGc1YFr8gs8^!P zC#czP>J()5fmSUZJaibqCs36`Eng+{T6!X zKp6G2*#l)W;6&|j;#{~y-uss8H{(2_WGjK`b!BcPcCmP9TjcU*ku#WeE?R1SPK z^4-Xjk>3(3_>oc3rM~o%NPkOE4$bfOTs#)#EcdwOQeudxQbCm6aCf>OY%l9RCdCNv z3{%h|dRs(ai}oIy+=O=>^U6*GzyLREDsbwt{Ek_V-4s&+Sc?_IQ1OSlVPg4^i9fNr zyR!K>)F<3}9CDoBbDR;_+T#%D;u*1c-FX-f@Ss^wspf+KvfhHWjSm1Rn{PWEfC3Nl zHmDDp3Ofln+wR(58miax;{ou$F4W|m5;+f5o;QR4y$d}xA3^2S4T z+z_ok+`faz0X1Ot$gQS~%s|0l65+}db~phq&jM6=3jJlN0S`!dRzOe9Hd-?P=nd9N zbCi5S!T0*lPJ4*WE-E?JToiKNQ-;=rihw3mV}N`HkYUaRPDig@8oU>))H~4w(&rm- zGaP3>=Xbbq5uv9zfb^;w} zX=piSW#r_(Bd#OS9VO+XT*IJ+(LC$GSudy)q>cZA<7I&8|ip$wpBel36T?-Uzb9n-*)yw35r~ z2^)=u&|RQfQnOzl=%+7XS8IcP7(Z^|LKnpFU6~#`Wr(=W-pWRfcfGn8tu$<0Dq5{u z(L8ghfv!Z|jm05?jc1t>H^P{uX_ZD(=x#*wiyIY- zLfp_yIo-IPb!qjArrOjNf%~wi58-H}>h(Oi0o8EOI2ZS3qE<|p9yECo?mx0WQ@B}N zxT9N8Vs-w=7@ z2wL%aPzanqwwh$}@-z-{Aa?RKfAF#^YcksN=2BAktM0fWPC3`}-x@u0eL2dC&8#4# z23A*-S+V#Fap;uuMs57EYwJeKBJF(~a0U-@)q4Xb`j1*WW}0p*5Fyb{{KpG&rbbMpuwcB#lU8|`-1G;gnpDjFR8+Gx%J$mGYoPQrVbA2UB ztP^+Czq)4U#NwCS&psm*C${$S<{r6$ipi(Yr>8EM5$S4Zd^BC98}ZsDQx7c4iTSzs zHgOD{5PDz}oQ{5U*F|0igwzATlmA=f7W^2qg7bF)Z;$^&E;QGS_$x=R6@&LFV205C zI_Mz#BpR%j`CX@Mc0JjmG&mj-AHUn&|{-p3}Slyt?gX`WD@$rFg?-T-6dw( z^{2mlqrzz+I&$IK23Rs&cI-}J@`~4?+hW09b>;3pYSQw)9ee1rZdzl2^EiLH{S?}{ zX=6NNL>2pnyqzOL$=UhRF?GXvsPaMEWRb22=yDnckj@}IOhsC-^G?35CSi)@l2U%} zBzSyzBw8wqedA!_g=E??5+a%tv7eY%zU2%eWqbDdyW+h4kaO4e*F9(2Wv>ILK4(=N z50`Wvo&3;w7(2Q35BfL@G6F-7N&`F+K^k4+s{i zefOt6Z|A+jX13OSi}=fV^ASkk$Fm-v?tbUj?u8!k8)z)`i&#B+1>w71vxNU4U`sMc zh2>h4%l*Q?Z!6JWg0n1T?Y4sG3ksa6Hct$+CwhS{oYX_K+4DVoGi8z7q2_N zInDr&_?=%eAs-16U;^l))DmZrE8X94Yu-s5OtpbL5JG4r-IXCI@rBf z3a&g$CxPedTMp$rXZaK6N&n|ZeR6XS`@f(4^CXn?B0NuwOcMoDrgJlZcfnpJeW;PvCX%6^I@enb0j*WoXPQ z5{xYh*?W(pj6S2dh;tz#Pw(dz!$rxw5CaPBA?{y(OshLTfgk!12dI5aQ;!<}ng8u^ z#Pnjhe#E*fm#Z55DZ9BZ*tyS8*?ZtM#t(87V{;>d&ZbAxN87w+*_!BbZHVP+qRZ86 zLrwgasZ_F?j;Y)oM=^XRI_J|6ng5+Q29XivA3rQUfH?NzIN8&trRCDd?>h<`!iozi zYCw=fhy%h1F_5$v)Xk2=QjSe5&&c}yV_iqoGOr)fo6bS}Cb@$RY$N2(Aw7=(ratBW ze8y2N=bmTClvtNe_XMeONXHE?+@$k_fAhjl|2JsLjlC{KQvrK<`MOZ2=xVvVEaZ+0 zInu?Te?P8A}(~T%>10@F%U=}%<_Z;(N#QKkME>|UvKJ>At zkg)ZbS9Ss&dxKN#>R?}9=iBjQjLBXr=FnCD-~3wq+pZq|JHKN`GT+Nu(N$V?RWlWuCjUR+y4|XxZ}7_8h8ODGmB4G zX0jXEtJs^^d)P81Vc#3Jwb6S{;xPj z)*;uO5zt|L#7$Lfm(TL@n3ld2-f%5>kOiR`IX zWFoRLvO97vFiT&A`nWqH?~eQtY8So`ITZO;g zrW7u|<(1Fd%6H7Kadnwco2X;Kfd%S~+a0jy7Ph$(X=b!ZDR*$=4){gMRP6_MOlV(w zfOgR9;(d1yscNO6Hg7n|&PZLm_PpWj?Dz|I0~k4BtvjpFKKa^>w4JT=J*!@8W9K*C z_zU;Kn{)HULH~Y^aTAN5f?T;rR5;JL1H9F*Ui5RczZ)q>#v&(2&Oyb@TTw0e9pquU zRU(uy@BK&4NJ^Eb|9afw7^-kViacd&Ba>cQ!dzP_omZOj3T1H4C@(wVF>LC{h`~hf z@6mO+%*C{2D8mC>MTrGcZzQIeC*VJpumraQpNlcQ9jl3PdvXSqzajOUo_ZH-c; z4)UDcROePN8#wn$s?;zq+Ou>0Y{!r)o6ujV6%wVSn?G($TsHOo$6D*w^%O9McNSu21N!xbrD&j-fU1$8^ zE_TUTiIH&>P1J?YxB8LYTd>PzrmIm^FdHekWLJxsii}DLTjB}!(zCl{5KQkGS|R2zxOR=tXv4xLF7L-0V> zloVc8TGMUD^g`XXh&MtvdM;uP`N(KwTjZ+9Ymp&*U*vBhPvC?GTg^^mSF)F}x3Q0d zH_G&B$B7yzhXrH?l-cAIvdVeQRI5qU>Q-;9V;NBC6ffdJkrgVRKr)=Bi9)<$EU)@% zG!6Pf%?45B)H*s0$?ZhCh5(9eHgG0yD+)(FI2*6gYBi~D3~BCDGmJK4e7`EI$;%U} zY;2(ttI=u(F3u;KUry%D0}MftSq!VR3(F=kH~3AVRE#QE6nUDSkP<;~gJYPlqkiQW zF41iHuLlqS#FTlxOKyr}iT8F;D?u*@f2N<-(HW|Lb6c) zgd|4+P^U_$QA%agvLq&jl6r0T`V199WojwGveKyn2Vjw6F|Cl#?U5C|P|#{MDv`2s zc_o#ytV+!K)yS|7>a$y|co7iwSsTX8nz(LvNf{gDnb6a!Ac*BgDk?;iE3)T{{5R@T zm|-b0FO5>ucCjoxUzXym*wFJCOwp97sc709H&iwC#er>Eo*@(OPRF#Yr77I85l>VG zQ7H5%e%Iq%bp{)9C^%<@6bKQeb+Q2@ut~-cB6QUv5Z~mMqQPT3N;~F z$fvricABxYU8Sw~FmX|Y3Y5Q~xxO5a3o)sy5ywLn%U#t3U{RkZNpS(2Bw1$3tZk?$ zZP8gwQ`A~dbY)9-oM=yl%KFMFK@_7>5~w_azy$Fefr(M3@HZ&or)1YFb1W7GkBF*Z zbyU5;WKp0#2ci&F6FFJ2()c*KK3X>JG)(@bB)PvVm>>bYSu z#WH!`f;x#8oxGFvH~AW#4{ZrzF;hn4PRnQ*%4hK^(t?o2tDp)Fdg6TY8EpIf@m?+G z@$QR_5H^CZL+?Z%>MKwk^@_+FsS4tmR;u;L*&HgQz_Z}1l%~LBz^QUH{oF!N{D8m= zchj04MineEul1O$QqcK1JqA%cjLO+YZ)?J5mb^CfL@L_m@03l8bz3#vu${-P8hf=- zYFJer(a`rlUHs(VLkqzt*ZPyG~=kr*DB^$>l+iYQLoBY%}8vOb?a)Vc6@oO ztA=WcX#7CDS&YUG#vA`ECGCTp_Z+m#_h9O+s7J+GZFrbEs@N-5H0u3ZdfW9`RHvv% zT#U=Xoua@T6UM>c{TJHY94nrmY2=ju4^w(@mn< zWdY&izJh%h5#U{R;j^vHeSMo-bab)1o7A{9d7E5WSmb}O%;O@|AM~fZHdRL_;(gq9 zepTd69H-+mkqCHt^8rzg=4lyqQdxnU|m zwK~k7T3gG|7W-eGfksZ4teJ~2mF8V>q zKI7s`=+&Hm{;nPC)(rKQ5(2n8D^yzp6O*&EnvI%fJGN=#%&M`W!A7pgqEh<2=?y2H z#=e2mh*Drh^RJARJ$ZZne)hR|8z#eQQ0=Rt1W9caO42rb2k3|W%Eo`tWnq|*F zfEGsg=@^9RTH5N$)KEbw$x1cN@>W_mwOEuvkmnc!6S2))rk-70WwvEb?<`hQnfVX7 zcXH%4mcE~5-#e+isM&jhk}0 zK#?cQhAKZ`je~6r7KJ}a=a*7KpHYozS24xJ$e#6y4PPNP8C1R>kiemXe zadLojR3izCA=N0KgGzLK=BQ|w)f8$O`4neQCiC+@!dPOuQ4%o{iQK(34zFr7XuM;O zbblgofV^J^^~OIT9&(tcMI1JiR}^eA_Gz)%#W#y7oBi4@ z%PHH@?Xr;66N4wkcsnmKXMo0O*9S$AE{mq>m2Q6^yCkP=41;=98pP4#857l{aT;y@ z$zu;AOu_?s0JWRA=}#Goc93hA2V#vs!3)AH;rSd7iGL}ck6P?u*ix57UL3g{{-t{( z4*?nD2a#Vze#b1<&$h5L*oBeEG`B=N&<8S6MqT=Gl>$%8=cU1%tfsLS|M_+|x1YGX zz%@@?i)eauY8sZytblUv1xyTVo8rm^3?~`D8=m!q8vw0uul1l$gJAn?cCLzfLrfOY#W*tTn88k%)3InZKTH=T1P z$B+2J`1v)~^z5NjYPymvh`H}Zqq-$4#nXn-`73LeMy!M$la*RE@wLqx_U&E2-ZJ&7 zH9LFyp4DsI33KCRm+);DUA+C2T9vCry}hTg?X~mAQAS=!R;E)a0!Uy@vBpjGWK1pt zM<#Z&B5LS7B;OpDUVr5cr<~dV$~g3?Vqxp1YcEPPGEryE*h;ats3dOs?1$S!TRy zU1V9WUo+O~0zd>k8#4>tBdf^w@@28FPZ(Xx&763>n9K9B{4c9YA*ZRWl~IAL4Y8a{ z!e%fNM(s0#neNJDX4N%~ z9>*{(C64=R7UoBB=0Uu4$v9v%1R=Qgnt0TBr_sprrSt3l?c*BwNI9yE)c^~S|1c{} zZ|kwM(W0I1DI2J6ZxoW2iwBX&_Ze1F7Gm_B)3!PE_EMJyJvmnF;@{LVrMiTNlW5$ z;40)*Aq^F~Ob9QsJ20siI0Jr@Uy)|=bOSyLI91^FBRse^7yzak7y$R%kY+>^J`KS~ zS7?d&3y>+!2bv8qu(q=XlY4XwBZd6oa6tPC4;1NuYz<;T(G}paROCS>dl$xCjS*w> z?p6_ltmJCYA~_j_Vp7-1cM;PQAwcuT7B*r(C&z@at8JO+k5av~`J5^S#dY=k43U&Y1>ak`YC)AnA=+?hv5}#Et zxbvxgC^`C6u`IqojOriVntJQZ;dGj9bzbB5_4JC(o!_7?_8yv( z&V`Vom!TV7H@WxJrdnf$VJAn%lF4X!OjqhvUCmuMoz1QRf9bZYSk<}*Ol3Q#t5agK z@D0XYlY)`AEJI2+4BPJhk4A~_&zB3e^oq>rKz9><9Wl|}JHD1RyIHGy_|vnSXl6}} z&h$47$YiDuPw#$F3=_0&$SDgL##1STpg3Cto(X6MFa;|e~rucUG$!sq+lL*j$t z1oXOcWFRsf*#bO{3%F)?E4=OzsBtZkQ!@}bL?U=H;RT3Qvf&{bxp6*?Spmx(+epMf zA|p)+wS?peWO5dVIvHxFHv!t_ybX*)9LS%I@9O>24GN37smC5 za}E3l8zt(qx+!X}*TL#<13|Eab7P{({z|IY&QCbx6C7pM{CA>dn( z3JDW)JK`=^0;}=WkvF4f8QJ`Q9r-$GW$=f=la2VlXMur{fnla$g85l$3&^i&c%;Gq zrWc#&t_9h)=G(?xv*AJ>;dF3gj7m-cVuM`knsAkzkh%^%#v2N_X;TwD!J7yL@c#d{ zI)y#vKo*L0QrGa7$9?#f4XtU&KRJp?d=maoHf3p~L`SM*`aM<}DU$)A(TZ2Qagu)u zJQaX&;iJ7NcmZe9Pv@Y{O56?M4gdQ#S>I?Tac?RLp6DUy0j9b8Au3~KqF~4A2IF>N z63>M#x{8OpqwN1iXf%cs?N~B@SKv(VVb#T>)+t)Y?m?;T2$`3g?UDim@pE=b_&oUMdfqvDHd?tzvTWyUa zh|APdQLy225jmWnF-Un39yS_JJq06Kc$kMs=Vwe+_)i$y>&ZT+CFCCcA9z1v44khU zk-XW+PM}b|G;%Ban;(q)DS9;iBWnH+L%gL~oedK@SilPO_)*J?yzwv?iN=syGB>rL z-esp+V_rO(bE_69XpoKy6gJ{`g|a0UvRnv5W?_Xq za0@Hqd;4Fp6<@GukDXlxv&dJstt6BuvV$6BDvwrO9+d=+<{5~C@a4yP0TT#e*3|`u z@vX%pB%@JM*ECr#SwjA#KB!P#_UcO;$?8cH;}lf35v?v1u9{g-yk&IQhAz1Y$efp% zY7$FBdy{*~YuNa3qL~$qS`*?w|J0TjYzEpNkjli-)5ioDkT|=aZ5@5bUUJgd8*b<= z3mlJ29F%ZhV64uU+aOr`+dtT@c7D$O_7C=!ne{jk(wnX5FTrV8uxCb{e<@!`b~egv zW^AfeKeJ%(A>O~oE?}B!qg>^~vPb0#h>Yvqv}S`?Bt3Gd5Ag#!cV_fXj9g)kB%V_ZwV|iQ~j{8VgH;Ixr2i)wMKXY5ClI@&>vj7Hrqr=eD?--?anY z@B)j)PrLaf4&^p>)*6*57~uAkb_jS+jIEv+n1GI7uy@X0l22+h1QrBGhIc~QN%U%d z6Iylk%byERda(r3FSkYZ!qY=|Z~rIqc6fC_Hw!>S@Z<*r1Pij=bNYuv4xV!uK>!TaQBqV?PPY=ei8o^Yq{Dk5O=UK*Gbm!8Kst6xf%C+=0pIe1}WGxQ8LS zEbq{;-#yMfhjn{H1SEdJrnam}Wc38gCp{G*;$c!=<9(lYf66clI=G$xiE_bwV(468 zB~a90(WXPGlheV&@S=ow(p}77K}-Mlw-Sl{(2i(vo!-#*le2Jt;syTC+x!FCpyl^t z2vFL){DZ#eAB0BF3nSj^9|1Fl^ZQM}0dr$ovxss~7ha!aKo zLx87+q?FH7;CX5LW85Q1ZY}H{ zORqe?&qe2zmR{CepXUApt!NOd{xsI( z1c9p+Oj^G*GmEPgl15Rbi|r1t(%HeI=U+n_5V^l(=s%~0f`UC(RT@CPQU$wA*o|Bf zznu-K^=eG*?p6t&c!*)<`3NcO=fjK*tMy8p4v1Ik^FIfD{+g&1VS&OxsmjGwLN}00 zvAtU24k4XvS)_i{unK=5tu|q?z)=gCfJ5OoY5rH7_;ONEZE~by`4RW=va)IKw;g z6V5|M*Nc(UMOm(4E+_$3lq+vzS(+ipSO}T`2svUR!C{C{0Y7Rw#6cE7cs)uC`aqEP z;d=6Wd6+X~`vy@7j}ram_v5~U#3*EOX7r}Q2>ig3h6KP zZCxpQ@hl0cdj<5|v>kFS!EXvam62Bh$rbca9hSsWBRz&hlnMGFObVs`(rC9Cr8TM0 zozGw3zDPDXwCkK*Ly&AECy!w1S#g5baO&o+$^INZMY+2qr8gp}#rbGFjo?%=&gSgW z{I7a8!bQl}D-jN5kPJ?6a{+b&#iEZK`I2eJ>^ zJptfMB?FC&KeEus_ev>bxfx0ng)D?OwmHlw2uYllvewApBN=Hh%9VpJgB-K?M;>bY zgEkL8FxXfV`G7&W$)h+}jLizja6w|Vz_(;Zvpmm_$PL#B7>Mx7HKF)`3OzQ?9l$*I zj#T^OR4x1+>_q1q5|F#IDT(!~apz5@jHJfd-dJM1he`>|td_4cAqrn=?d@=}?dBdf zED!c~lS{YSWaXyTT?V&^QM58v?;TmInXCUn*H=N#(_$cBQ?*>aJk_6Jx)eu}9I`E= zqQbfhdQ43cSNVwKUT^FJZ2`j2vHI-T|&fWxl z2mf4xgo?GeB%QrkiCOcXjO9?6ug8QPW_|wNQpL7=HuZ~AcLEBCDG1#Krm3lV-HLw| zPPv_QyYM1@y4<7(sT5cy%Ay&T!-L^P#Ohs5nJHJo**8r}%PRe41%sX<*FRmZR}+X1 z#gn<1q9#+tZc$W=;F>Q~>!xrD*i+q{|8p}YyuLCNmmzjl4O?QCBnhU?1Teg~QG=Ee z`Q4MiNTzuEipXj&|NhnJ8*qQ*E6BY63FSfuBq9ab;T`}vffIp}cyck(;G`?yLv3x4 z>I|}>$Y?uGK@pKMLr?^91Tthpg{5LpnTF9R_|Duwq@zu7h&xR3766zT?M!MOkEyU3 z(BSkGjNb*jbb5k_I5UmAPxBcyL9S)5cV9a~ItIGDn&cHN|Fqa(;`a5^GoTeAXKTZQ zJu5`R%tGMR?gAStaaQ=R5a}nMcgFMv7@f(O4w)CzVyYF>SZ{sPb_zlM$k4R?+$6e1 zYrLaif1Q}%*X_b@!H$IJI}pz_ly^w>Un?0L1Qai1S?VI1tH8D1t;iYzl$wadY$08i z5I$FvHB%^0X7r!1(Ow=;j3N7319d0%^^S;?3#zkp)ksut-nQA)&6+hZ42MZtc#Rsf zzCuFF`ifQi`sg*QH@_g4@sP7^V^g0nG{}YqEF9oa;tDz2gudcc>jvlgGHEjgjQ(V* z-mKPG&nz<5KxKLM2WUX?6&Sq@<8KhkxzW=g8H7OGd9#&B)GT&wJmIVy>@_u5#<`*> z^W0Smiv4qjm&L!If4YeI#czfhSkw1g4<41SE9OM>^2WJg|5i|pW7rm{x(N9buML@xbG|8v3XZnX$o4__zMBi*%OHHOFRes}6nHo! zpkNn9;SIQtuVQ&PLCNu&D$BG*K@RVIGDs>e-KW*xY^(&$=aX@X4q1gMfWh2>*&CnM zko*!yjM#3B_g0sX9I{QJS_#k?IXSWt(puq)(6H8{#Z2cBUMIs=n|0^G+^QUiv|%E@ zwPDBBsSWH#YCfWZF&v;duSJ}#QNYP|oif*mycdthR`KziFPU|=;mGl@I|eGoZjHSp zUxEhf4hPypE-U%?gy{v^Yv(cYy09#Wf%1(q4S6BN!1K(4PFsXsmvb07$renCknNib z;%y9!o-{HFIb|32wA-e6egNU4N8L65D8A`#{!IZV`S_A$aO{r8D8mRCdGkVX&K%C; z)CFdE%-x9U@^^o$Z!rf9Z?c^+hu;dke(GCsdgK~dm(MsCm}ZgdMs4-FB1+7{Ba^v-G%#{^X?uqCd^}6DY8AHtak(2I^qi+7003jcfY)uKeq>g;J54MIu8M;Pg+BRQQSgteCDPzYZi}c#?q^H^dKkD_WGwiApF?^4O4v9?NxUN;&PG2 z83TSAElAhro1s`(6Iv~2ZsY9$Tu8z<7CdXSE}Mi2?+*(>-DaM{UcpB2LQq!Str;)$ zCw%dU$dnU+C-cJkw=XE}_(brbB6pQ%v92FKa}4YTktDpq54fynX6(#ydY{;cT@d>1 zY}Z)~g44O`-)39zcDDJgR}~l75;*>LcM8mmV{Ba74PD&@`+=^6#bNBg*mNWL{0F>) zgEt+-_H<=kJBD;^>SohQLG2M?CqM2U^41Lm18#6O`izMEI^bpW?6%9W2``D{Lm2&5KjyJ) zyIqmzxHAJw=k?*ZkC)dd-0FUP&;J*0KuCGqR9pz~N7oF%Ex@5oHxllV*e*Z>;#kAo zj}U-tSxDT6Tj8)(y}2D2v$FC1mPH~23+UpT#c@6d2YDB-=Ogp=*2o7CDf)8c+mT-| z9j4w4*JAuR7qa9@OX1~BlV9!)W1Po1&);kX~x^~p*y&KL*Fq&O4e>d^Hkk=z7>H0ApI41tr6tMBuG5C*5b z4jig96gnFhC1ZmB2j?7OMQ#cq(w!(tL&0doD%|WNaB2aXJ%y^Krxcv(nzeYsmAGlT z2i!EmTp8?w(Hqk0KyvOp!xwa?7W-&Lm+<+dc$rktaWtqYvs95)yG7_BNx?MYYEq7o zZ_4?>>UG?MH#}(Nsc%Z5cCw_venZisIb2L;k{bO}l0TE12&T#1w#s>MQjk(x|rP+w)nZCg*|a&ygIc)?I~ zVOaTMrEGy`qv~QDOeNZc;$4TAR zV@lRg|z2Jd5flBf-QSYI*!V;MgdMa4wv2{ zzm4-voqfk18X2--Vjwq3jo0ETdaudyWtYO#wJhob9g5m= z#vgP!dvUXsI#E=CXzMiijhqa9V)j$r@mhy5FSg~yzyiZUj=(hu?oMt>_8xnPs$uGw z_S^WKVfOGl+iNG2wtLHJJnlUOlDx2!u7ujZoAN_8u9~mI#&Ab-M|NfduZZ2_s|(~g zbf2fKKzstX?!oD@H|V;PrWb>!XgVu=XSDx|WQVIew|l;k$MKeDt~>XTi)KO1GC-HE z(i{>vTzUjFxe82LI`0Hj=lS>b7Y5I}Y$LvO*I*xveM8DL?sFN&V@vEhVO@D^^|JGa zv!{&{SIaiERNr7C-sqA(%=^6MlZaZ5RWH2&M@)bT*x9C*?i(;D?h=WTjj|ADrZ{HU zd*2hBjnsV{lg8D!LNVu%)sC*loC0t&4glueP>M6jW-|(HN98 z2zrzpe54S+WUitBT;M9iG`wkCgiCN&^O5CYfm8r&beq>@4FMxViR8r;gh@bIcO;_e zKR$>^9&9)|dNDxGb8e900*O9Kp72XAdNGnOo5*5UFWF5Vsoz8=#`mBXCI!`YZQ9uC z=h+K4Uby#+i7AaYNL0>v#dgZ3XSa#tXRT5PAf@tlwW6)vNryV$899GjA9rOHhu2oo znlkJBk`+eQQ=`UWy_(Z0UE_m|^&`k8p=5VGSFOWr`?QfrCv@a=B3B{}d;O@5Y zi%GU77E|O_RwPx(OjYV@EK!*Jc+E2xJpr5HGpE? zY_s^iBX9VKhdMAZ*593jK*=X_1$#xSkT2JI5iDkTc0=C^x(hp()-=?7#oPUER`#K&H{sNM4IQQp-P3oSRfm-e%Hsdj*2n2u2`mK}w!y5>{B+aIFtS zrUHTQUN6ytWLeujfdT26c{yYPP~wtDpu}qsuf>oR2GQ#)soeKWhk1@^%7w=iKq@{l zr%>L8LMkLq?d6I33(;Sm*q&pT?A?Cy0RDIK_Prz?X0MvXKl-(I`_}%!!Tzn-4kqD8 z-jAr0^keaMv8ShqqyK$u)Le5}w_qwF<=~1+*Umw!g@_m{unT-2p7TVhc=Amvm>qK+ zq)|bM^5RfRvJd;ADJ1c-+R_`zT2 z@1Q682t5MU)?IzeRkK7|kA_Q0oyWt4r~Qejv2jGqci9#6Aw^R9Xe=7X`H#6gI;-jB z3)cz7GE-IVoYs=|#A$`NN}**&xtq94OxH$1&|+PNE%8uqRFB1@GIMi-zaTyjaWfPC zpR;%e<2SR-Co>CQ!auZ%&=3~+3Y#&Ch*>DH|IC_sGL#t!1e)&QMESlJNG~C zxg|P4r2;q~nH%6a90@}q69NA?Kbs^o$xRDDT%t8B$O;7^=LK5!EXv@#cE!ez9ALKbv` zVm!v)CtksFFSm3g{6GKK&nM#puI^G}XJdE2ICfrhWwD?|c^6$M>}n>}lbfvzt5>cn z69Zj1l zU1o_~T*%e)cdzc|hz^;iNOezaKQisplqgC|=ex1GIm=NJW=-X_d0av2&1*(h)pbG7 z7Nem|hc6=fA>xUm`B*WF{c$O^12-~j*3*hPYc!ny7&(bjxbW`)+@??`@ymH+;pc&c z-RzOo!fHerb!Ci=Dv2s=80EAb`&Q+Ps0A5azjgye7bHS5lR-}9NDnr%`oPAu8&EdJ z@|q|bXY7d&4sl^PHDT=Ao3xF1)p@&g zNT3AFN+X_VrsMgvCRn*lcXk95J8F~@j2@^DX})tj;S$S#0j?=E+f=lHSUs7psB*q6 z*rlSP=Mv%>uF5kb#DKqHrsPUm6%#pK$rn>=P*Ky*!BGb^MR;ywbd)mHP&%7WHb-4g zG;!ghZ09)`@X;^b+vr}zI^o}3W>kKe$1Qg}Bp>;noatb_RmgJ@LNN%TSP1VrCYJmn z$b0Hq5ht0CMMuwZU6^adcOe=3E){g6-Ko`|mrveFuO5pZ_&*OC4fQUbzI~^r z9k&&dQ-%+%?M5TPa6~jcew+imkVXp0w}*L%5liQru9RuFuA4;O_hBUd@+I^a(%&Bv z?}m&S2HM;UfIJX!`7Q(lmk>}H_&=<-{b-p{k|od!NQaOa*t_e!LfC-2)4=(;PVDNj zt`fux<=Vx1yx0#sd6eRZ$c^F}63G=hjo3V?-uyq#l|NU`#1R6{nE67zQCu}WeCN$< zau%$wQHTz=u6gC~^eP}QRE7J|bE0zfNwz(`ny?;hX?TTcu!%D;qlnAgxN@kcdDTg4 zvlfc8;SDm9W2^U;D@~ML!@aUb6lDqWQIbT?byzft^{6a}xXhSYpa4QqVF@iB16G#N zcODyf@fL#@sm9{t=Ty(=HY`((CF1Oj=j~yeF3l^F#kJE!RAQ+e<6E{9V`A@4#H_Ik z<}N>ZJKQnxl)ir5o|AU<0Wk;Kvm>ltGd9-KTk0}R1)LaZ3%U*;LUZNFG?JIe^+LHc z-n`8qKVd!cre1)IL((@NiF^&-7Wzyi0J#?E#zj#S27$*TY&`pKl6wzfvxtzBt}a0M zQFN9sbGe#`%o@m5F2u>#h(b;-KuKtF`AC(U9^@LNcx3@j0F;8^Kn@-uWZc7{inxRV zxf{yiTyVROk5NS@(~78CWXKLOeA#-L?AHT7dvs;zpE_9o2)f z>P$1CKugS&0YpaVE*h(^>lUgP+esNboqtYY^&o5=N_!@4|PUwT1G-wq_8bBTxx3a&t<@(Kdd^e;54-L8R38$rvJ#h_cHQG4@ zejN98k-LEx06dyd9Bi?*@0%YXAGs1#({yU-) z0w^=+gqvjW{v!JSOMKHy{92lycIzB^LM!EJFrS-xt9-6|Avwh}IhmE1=x&f-CsA2> za`F}w4D6Q)^GrsPjBuOFyur&TQPfQuo&TP@5gy|?@`LTs8@D0DX^)9QRBO(RzhdDW zKgG12p#FrruQ_uP047rQ)Npq>j_DHbS#c3A@i;vJ9qJ5i+Ctf~)03?YnF9HFV%hSU zlh>lQ=P?Z+VL9!Pi6FmByh!+k@CHsFRJ%nn(g+K>Qr+S!?*k~nL};tsm2lCHD7(y` zA3)kXeK1$a7ryAe<*|6fIFyKDjvg|iKZ_?&mU4&}zaP@FUuz!{HL#ZP_B|Zu$6~VJ zJhm?IwbvQZIDnbD`0}5k$kS8~a%_Twiul`n@-V##pb9zv2G9a*A|w(z;K#w!mVEv> z@Zg{ZgRB8ieX1St#Ky0{1-gJO5hT{(t1X37lM2oiASJ z-rDQda%-<%s=KOsNq5qn^pfs$LiQCx!jg?eAs7f@5oD1)Q4odTf-*!A1W|`XL`Mb3 z!DYmG4`%)YF5&q`XK}?*aTMmSV zFKFTw_$vo8Uv=ASwoUrCMl_Q}yMuTOEgjU_pqa-pZ}6ZEG<$-cy(mWxQ2C~6W99Vr zQJc;{vT34uqOPfaTYs4^>z(vF*?;4D&;CN~K7&k)n7m6_jNV8LtWfY@!`>(jp_qx` z6|MYKT+|+MerNdE)zLL0a-j1=V{_b^i*`kMNx&KCra$&o**O$y^lv2vJG)aCz( zOXBKO`8WNI*pHQ#{QMLR^gY>*EUdQN*Y)EhS+iITc$92M)USZfXPeLx6TJnMN^ILD{~uuNT% zaRvwJ`U1Z4AtU7g?5T1kR=*qfiD!&EFd!E?fg9?%%X?5XN~JMdhgj-au(#4F{DZU7 z-NPKOt^=}QCt!#AE*?s&JndGs@17QpH9DZ+1?66UGxzF!!t*ztCq2)?>;4PR@7(xI z*q%1AUF>{z)dWdE!@anvPj!sosLdCgzXm${OGkZIAB|aQP zkNBY;seTa};ifq3NA$THifa!+4(W3nkbyV`AfI!l7nb-?us2lt*BKPdmW3mc@FpHb zyeX912fT1E*LQn^C_IERiMbo+uLGzO2Y|7}XTwKspHxi_w)CT()xVfQb*fLR6<7k^ z){s+!a29owH5k*X&Auqs_{j~Y9657lt){&~UM$AgwA|_FAfYe;-3iWi0WOxpEAqzi zF9ZzOX;0p24ce1kiR#q4N_*(!?nOJKvgoA{8xiY`@^~j6QK{l>Y7K5DQPk)3sc)g$ zrMGGI1}n3O@i+(QfD*ib>pZ8!7jlK?X3rt$36Fc8MqKyvp8p0)AdL)qvxULydCZe^$p3g1G@YxAty1w90P3SrO_&;gYSgELbWD3X3b;J0C!VT*< zSGRNEJT}#J1_67@3ZyN3q^{JKD!2@lP)|LyU6qf(Yk;+kOP2mD^nDT{obb@qYp;Sd zpSMM*Y$3;KrNG7l!sK)|c^@0xF-R5=g5Hrz^2LGegW?in`Fyy(nzndzST2I0r~x9O z>|b;X;!Sefya75a>8oDJ?Vy4jx|Z2HURD6e>X+eU%rYSJpZKrfDIFFsW5n2 zKO5LK03Re&Oc3Vv5_i#(yd9)H38Cq4@7>TD;0i~^Ocb$|@h23Fe5twi1ek&Y;t786 z9q?#vZ}D$@B0?>ZK!jS-ZuRwWz7>4#s;O>J;8LNW84Ev~XoCv>Y&iQQ!blEN{@}yb z@69y0{D^fApLZu>fu2BHd(7V(Xd6xxeZ53XOrO%dpHYbujrcxcMNf*zja|NnV}ys2Dc9oEtfriIS*`4%aMVlaJ-^)&0$Ju53M!3p&?$QGnpMZ*|wwo=rWuC!Fzi9KW~OeIuutiVe?eJz!cppwh^(?MRrIC%v=t1qd6 zjxTtV32@iKe+3@f!vU^n#<|kD8=_XyyDdP(xZAwuJr+?V7Kk+QDli^qxb}Ji7vntaOSmRw8Bg@x%DcAnFyb(@U0VJCGdC}%_<~BOkxA2yD(f; zeuU@AS**k=(9HuJFxz;1LoH50M7%n|itxHpWCWMxTJW4Z-ErND5kX+eG^C_11W8Q|>#si^8L3zMGzi-<- zCdUt^ZlVYS*&I$%Vgh`!c_`M$kNf>pFadU`NJxr6zp-!Ht6(e5CsA;)Tnw+l9&{LA zf}w{(w*QbBmvomC zR;wZ4f~-59Vx7I0k?H8MO{bA@ov}4bjrj|0Xwk4t4!kW8KoGMxnmP5d43LinZ~kU; zpkRY-8DoifmB*jocpAYgl1qpC=dq5;nZ(v^o!QaZKl%;BxU#1&of}$)5GNSPPutj1 zV2c)9L*_H%^Cvuv_*d*6Cm$SOJspHn@Xop3vFur0Nx>mtUnTsOCg#|(0E(3U(z`!L+daBO4k z0Bz}V{2Y+GF1iRnVObXUB6ILC?AhdmC)(6uo~c9!_!^)OL)VR}QpS+zD(-6+{VJY{ z!yLR!HYM(LAz_3r5DyLv4p9a8&=7V{)R4eKBmxPUg*$6#P?2@DMjXTbDT^VU_C-Mj zxuDGskoVUN=PHA%tq3g-NyH5Y!|@bI)qs#~OH=N0W_sT>!-(I-} zduc8?GIT;`epf!C4qx+BTL97@;KIJ{bvDDlIJ~P9t3|7U$1@22_d=lOoN< zaIu?gsB4DrY$=e8k;=xCzA&;Hgy1Cdf+95?O&D-8ccxi9&e~4G)WCj?7)08}ku+v- z{b@bxRx=_ei0!Ux#K3 z6NT0rM*eGp11{z7-gu_~FMVH>?+u3|VfTjIy>%Y2E*d45kJW3H&%oZ$Ljc`gYozW`1hD;tc6NM#w5t@{ z7YaiLxF{H|enUGG#xaV#-4`s`aplK}(0EclT#vi<`PoD2xie9ob0!pK2V{BGuX82P zd6tijDW|@tmat*E>MJh=wnOqeKf$q09iF9FncoN&uy;bj`!e_rzlXKCl?}me2+t+$ zUI7GB2;Ug(9~JTvFOt?+^wGPI?yK32vjm24kxvW8>CHw zJ59fnSyf3Ak$$WY2$x&^`%BAG%xebWw=5X`bc6!8-#f1@3huU~;jI+l>Gop3|A>!P z93v9I=(NkDA8aSQXQ32}graTpIy!lfSF*W~wIiwg{mG7|h_|VfP2|l?^}krWrQDwM z=Ht2crfq#2qWJ(K639_&fEb?nT02mi{W;KlK~nIhtzt0DU7kH{Y|+=*ASzq1^X2^S z&wlvk^;rDIERQMS!X}W)&nWsq#riYm?y*CU_`> z7r;&cTQ4jP2D}NZ_K8A;qA7elgGK;sWWj_Cn}hi_?qU&v|!r2&;4^d|tf zy4SFpD#%X5IKf7OY&`+ycN-4lLSiYy^yEfZXQT6DMsY z7jbg!YSx3~Ug!Ez;N4Un7@$WSggYHA7P+^oe+nybA_$9C_zZt)1|h70@I1=~(tG{8~Z<4%@AsF4zu z|93ZByl>rx6omu_6U)YSow=9r)yB>B@cg`v__!3lrJ`qXba-qeTtVVG5^@n>rDyxjx{zMvw2h~47<>0A zW={_>2)4JazhQuFIeYZ#w-fs0P3H{{+;PMx6zIxy>h9~!VRp&pTlL{{xyaWX+I zlHtK~dW=gqg?k2A`TS8RGFHmCnL=5+2iBahGmo(Sd?3Afn4L6I{mmMaFTta%rR{=N z6W16`XCkTH>x?x^m#<4)ymbLq2H1AmTG_7aVk^gt1p^KhJ&?iFk%x@$I~Wa$eHC)t zb=+d|5zk)%FZ?w3&PZ{e++#J_f5H#Pa8fUlwV^nL?MaG=gkIpaFSuha5ottSumFo0|nu#Kw{Pz zfOPbd_T3XDuL({nQL606xEIH8bK!jSAkI>xmLrk9NlIkP#7Rm?<37rD-8m3E=g*Hc zpPU-aG+E5EWdIc0q6Eo~?^S*Pe<(|-y;V`ZmBMmyR6ZO-MEGd$F+K{(tCic;$WOmp z_0d9XmtuMmUd!k0#4IsLp+|5F8KxTn?i~}E1ZfHn3ZwS=}(A1 zi*W-=NsA)?0fjvq3nj~OlvVwK#PG-D2^39NYzHC}>^FoO#phqiRHp8Y2WCsc6tEUZ-)c_n%I=0|G`p*&EaHsx`)ZKBT*EV| zh7Z+Tsf{a&$ay7C!PBCpumib-WP~EY)P}4}5v}w=XdfJ*$azqI!sH366@;5{|Nl&G zbcPewd^bkeal22xnWaRrc*=zOC=tdD@2*?t+FLlQlB`AbyUJ68*14pZ4uWl)6{fT8F%fE^=VMvY*`o4^1aV0zYYuCMHE-MFZ!9fM~&SG z!hMeV5crLJbz5ChQsXYfr|u&?`y%VpQ7X4UPe9@Lj=f=@^=S*|%Xxf*M}oHr-(x58 z*$~P}@i;VmSuLIYObrxI>TiNKcUW3g*467}E4*K}4O$E}NA;uS4`2hsOVOLTTht@6 zQ55di*U2_{vuu+O)IBC1Xl;m7%_{Adbl6^g= zk~XuBI{KyYJw-f(szMu?PSJuVV&7oDK_)zUBEJM8t^-n6@NE?FkE;-LjXR7NC3}$k zRy`=5@La>VA|4O!iB^=A`&oa&N#V>k!MClVW7a*2Q^TxH@3GM~+g3 zILp4`ymLp##zxOQ?+V%q&faqJg1){5CvV|alqt@!@6_e^GKy5xb5thUjSBiam5A>z zeWlSE5f`twLubPo-O0^)yfL`qM0pg6>B2Sab@Bii-WZM@k*t8QTJj_YWxuiP6|4Af zU(ps7@kPS6L@@+nJZOS|IyijOyr(dGHf|^Osk-ej{#>JOGS@UZV?bqecidNCXw@4J z&~jmXfSV9j-L$r-zwCB6t8V41Z))_mjoX2pShq>{Pce zuQ%m0C42`wu`5i_l2))G@bw!B)dkyv7VFp8r=#=WYm-eKWSYB(y>G+a2QON(^rC~C zMW(Pb{$gGErca$t2%*21il0@t5w3u6b%Z3wBi4%qdx6M>kNa@c$-eo5Odc9(VPlsZ zJaostG13YnZ}`}!4pd5hgy9$tx!OV8wx0^yZyl6Rt9qs@_+D8Fl0k@TS-ha0Tj)n~9rVQF;~G9`EKi_>jh<1#03a`Lqe7x&4R>U-kU#p>6} z>dv4q8t(_@Yuy+1_m3m5QdiX9W7wmwR!>YfCmQZYul1a0uzyw0eU&<*!6wIfy{D8D zUx_(UPbYZIwSiQ_J(vv1uf{s`V%@FT9C&pGKl97I%GK5(2c@rQLpdrAGOTuejNI!K~4mA70BgZQ>~BQ?{PH$t=$wfBI$I+-NUJ;+d#I<0lFVzDUCg zH@w*x*|uY;W5Dh+cl}v^zhNCOqfcH|hc?)e4*${hCp3iySf{z1pAGh{ z-nr_|M*G^We|-JfaQ~Up{;aP*K0a6d*+2;bo6A3W}t0WotsbXdZs zNst&{VmVb7ar?qQ2q^9V-|;x8qO%6*;$QfF3L=dm!ng_4wvUhugpkbDa1I=*MjrsF zHMXxC-#m3yzQq8T6vRlG!IgmL7r*Tt=sNZ6ledylY{P~v>&#T%L;}N1b!Wie*S|2G z*|4UwiGj5QSc6!GEnU^!*EfQ6q%GAwfD|RmooxNd>p^3ZPc9o!dFxqZng!2@Lp5@?dz|_Z|GZXOo#>ZaZ{m(;^~y`rt7xo=;ErgCB{UyT++ zQo$oMX^{8b@$+ErPi(*Ij=u$gW0PL@QO#JTo-rE^!`U?Fh#XxnO4|_#SY2evVB?`V z>&Cr6_zPe^bECo@=Pr)|`(F*msqjH_+j$DOw2jDyel_Aq-$NLtnQ@Z6T>I%1&Pmm* z$ex~(ENuMF*_&Id?~@^kFId(JvMH{JmcJT}@~TM(^Coe!yHhc&#=%!TU-$egavJ`I1zCoyDRZY|`!JdKTq1a^Htu``mnB)0PHU(vV&CFn zYjj!zZ()ZLI9occ;lecNrxT3m`Vq2|o?zTJS0jog-ONuI--NKD4|XljSwndn9N+n} zI#*Q>PQ2;@F$kZ-`tJe(P=w>eH#_HSXx=)pqU!6AfQ0Dw!m*iLbVMPo5F3t|kYass z*(*3loa1kzy?WTQ8j(EY&!b$fhddwU@!B)qw*#8!qnSFiefKqXk4&@AKQP^v{p$I& zrjrE{)9vZTCRdceYFif)a-61q!V#)_<$BLv#1$UKny7WFYW_fkpM>`~p;~idZf1+5 zxJv2HxsUg7)M=i%vpRoD)`k0<1i~qS z<$Yw=&Q+&>ZOT5MLtA#kJ_njfiQrKuJtD;=1amGGALH?j^c-QwQB zzc|HiK8K4rJ4ffT)$s3#8o-X| z8X6kmGxYUS-7)8KlVop`i`2KJk6`Zn`Ak-VyAquBbJ5(bpOgdhMe~h_ZJ7^#x(j&L zuX~Vb_-_$w{T3sJbd$#P&hy6#%lrUAY1B9g{maR|K21Mzs$n5`H4fK~voo?jt5D6D=IGTXiOB z?l>acq>4H0CX^HmESOr@l9sSRw*XF952O;0AR1{1pW!_R0-c4{w%u=NDqMMadT@Rs z<;|3uy~T3s!i)3yv(6|WoomSO6-&19|Igq`AChV&eB(~U_R?Ti)6x}-7V)eM3l^}E zfk4=#vXG05Tb1EWalK%~rw2Q8e8;xo9#$||ro9;qP;B#7N&pm1F-nJv^FNoq0>?6q zFdElcNa3JZiJ(x(V#RHU_N+Zf9AR%SbOx*d0|6AvdLzx@A`&pBk^R=20XtS2DR&vT zw(L;RH~n?#IAs&<)hPXsG<5~?!60SN13gP1m^REX756r76XYMx!YQnT{K&JuY@{8@ z66}I61y-!IS0tC(4h0Em0z~=7M)8&~tGX6OryvSibSV^p&usm+KamDsUf!|18{uUtKjn5y5-qR(E&v?q==id#1WVE-sWPFe0b zi8K5WQtc4;R}!DU9>rb@c_8vx?((Z22~^|ih67P<__d&1qO|2s#`7z;B@@E1-@OF;umDM5=VcFK%jKzsjr*4D z9>Yd&14AJlAdgSDUM3+Pzo72*&Ymt9UhQBMg276@MWSTd0ofLu!oeuOUfw_$v|WW|34W8bHWwb!yMnwPvfFAtg~S0gq)heu$}p>>IQWqiuuy+%=X zMxCI*@dH90^>}hz?s_)&B+(TT6!664Q=75cy zKTfVR{h*tDo?e8n-*`D_L(1sAQx5A39K}e#R>p`LSIBE!PO(0oOTey(SK*tK*s!W2 zB7XzV?fM@6>^zcsawQb=hmyY}k2T(O*rOGr2JX&S7BXaT(b`c+!kCPjx|HZ3>(hVjyrXuz17lAKI$$+12yhQ$$Z$8OqeEKwK|F{f_IY+`N{~vGb#8Te z%mNjp0?=0g=L$;44nUQ2p#j4WuGHjL`a$HebOt6M*k2G8hnm6K1N_#0byTo#0G)X? zar#_sv4Om8FIu%a4^kxRc0e{^DZ@$nINaCTv5;I1?fG;u0`}7|ZVXsRiW#t23fFBV zDy6N~A&L_K0V*?_L5c)&c7)J@dkpCM6b1%LHJkBiqR@58{zSyETVt^nE4VIVM$KS0 z6ZgWZ5Cst5s$Ng{QFfbEsh*Tdg^PJ`eTVYJzV;kd$S{+D`j4)|y4y()o70E$0NBU>6|n$aCNex&hpgJa1cL?v}~bCr%7a{#Fp0r(4fEWHW_$Ljl8J`X zr$7yn&`1OgN{h6{XRM7$koqfT?FkWtiZNW3jVSFBp0Jp#crZE3#}GR&&-B3~5OrT5 zOm*Dmm(C)ky0DKRyAW|hA-zzcM}?tOk6PBVL??a}R;u5CC;Uk=K#iYZ7tA#SNJxY` z5DO>_w^o#{%G34L<*=7MNj9PZSh%=J;7E6_;D6HXiY0wERz^j%r*Wy@hxqc8PnTRe3zm zUkkUjib{$KSD&m5;HkKymfMB+({aedb9%Wrlga+(k9t1Mb9<4$Svo0dO6VN;n=w9R zMH)xAQd}AzlanH8jVn~LeGqe?85V3IUj!`j(gkZ=;c#~JZCQXT9DC1?CS0$$c<-!t zy|GZT`Bxv61F1F&oNkd-a@ozSJlmg>-svWuH+$+yrg1P2~{T?^N0L>p*ag%W6OK-kVOwm5@yE}ei z;!GwCoXq7xc^ITK!<_I#SuWKx-RcjG^ISubYGBcnip+3X<{d|w^XGB#7LSW1#W*N_ zjyvfzn6qLf#bFcqUtNFS_yy8Q$eza9Q$sgY59V#k%tIgW`?+7`H*yBnu0AY}S1q-p z_*w+)!t=&?wf%9UXS?S-&zn8Bc<%HZfye3_$TH{wY(&|J)cr!J7PnyIJPCRn7K`J%!g^D~% zhm>*U&duu(-^_g`8j=DqYdI+)M9B>YlTx11(AA68@uSU9?J}as6kVTo9E_@4zm_v= zXi#K_grFxM4yP~ya*5H1JjZA;hLz4ewa zE?cyQ>A~jB4`!Ah>E}RzpmWqcUv4fW2=jntI<5DiI}@D+VJ5P#CW2tyP(<8`E0bCsiK^EK z$OuixR{&lEtpKgo>PTQ)$}}6%Et<^2p5_RPBu+Vyv}MY5vhS)R6R$HqDH&xBPn3;S zxziZq7~_Ze5zx_SJ^v+GJnHkt9z z-mNV|lZL)p&Qv3)cHQ_#d^=c!JO#}7Upu47Oe)0i*sj{!RT8xkJUP^xZH77gpyzVvY9$2@gd!AhE z;Ap;+G-iCTbH^@QNJ)cZojYhx`})8Yuoe{Tg=chzkOJNeftk&^-7*T5$iWC3zgOm! zW595@vByvqYx(A?KbJA+)fej|^>OxJ2Z2VCGpNn5Wl~S81{9vB`TK=NM9p5!U0 zIR3Y09pQ>;3CA_!diFC|0PZAP!JX0Vt~&)X@RXojN)w_R=!JvM7=c|M6_$ojit)Q>wb8s>J*W;sU{B9%GI`3-L#0 zt;IJXON-WUL~2JU{qgVsTi%~fXX6W+f`sw5qfukQN%>SF)z;J9O}yi5uh$!kx0a33 zwI^?n61$n5UAJ+Hn@M=VuGW9HPXKL^e3kSxDQ(NSM;c{(HcmN|suUg{>to8H||OlJ7S1t+7NX z9!Qq3PEbtaFTn{v-;)7n>JGj_+=JEODPa5l8;oX1VZu&kXR4U6H{GDmNeg0!aDp^gF7b8^oxnZ;f zU*34ACI=4E3jnUzUB)QFKMXmuXrS^#oVyo~5KO;hZylxFPE(1e4iJ46M9n z4;J1|An_2o*UCzMUow?QY}m%~Iow@JtQldkSRxiAP+0X_N&#l33`C%Qd$o#tFdmmq z`}lfyGeg|{(lOtnj`nh*h|t5Pf;W-%0^as9ueYb8qm0bap`dMti-|~ASE*d?x0@0A zSU71hYXQKoz=D+lyhrg zB%2Hwv9LVKM(3@H_hQaeSfHhn@wR-H89skFmMTR$vypVn4BC-^*JzG2EA020-qup; z@BKbI5seHcytvJ@=7l5CSTKqgc|T)5e1`|7KGTn|QlF72Hygn^)6v~%yy!NHwF7$i1=V_Ft1S=54FaICgCI4P#p zu|6=`k0H%|Y-r~YF9bjM-6F(>qG5lYcXOrp|9qhe7=Oa z-i$bN-H)SL15ynvM;eWzmar5SBiS~zkx=DD8}Qcn(u#|hFTZ#NRe9dp?(Vho@C`5F zwiAovg=)H%`hBei!n;BgT;00jqMI&Wj%ReQJ!P#TYB9=Bh$mkn{@}IK{N3*{Bam0g z`nkn(w!^PZjDqAvc*gV34%$4;N~|Bdk!muLf$SMtsViJvAEX65plZII*g?=}T@|sw zBIce}U5cY0<70bRFN^L9j>v2-Pjy9vRDN|1$%zHGfnC3JJ&a{vAbo6diC1e`6na`aHn;g z5M}MrppVu{!yk-)4-n)IESvd6w$yZPBpgU)3|^Yg=S{=`sFn|M*kzr}>W4&cSGSrO zL};}5()7ue1EF4h$pY5dVqVLr9%x#Zix~7PTFIDkUpyHrX8}7;mRkcsAfC}4LZeTsV#A0vvEjTrr ztTb7^LMaRMY34$&A2jbN>|{GHDTGaNSK7ni;cO%z0+IEI#r6)&C$s zdX#jE>Sr^)CP?fC=r1DPrpm_Lf_T_$Do5;=U}_}f_s1iwCD9hL6V-o@WZ0;kMo}$g z{u!xQ)t>`D59E0^%BufHn0xG7NubHSk=5}9xkM`1Vn@nNX0NYkqZm8XhGOgl=489$ zml)FWxl(Sq{hm8G1Fp1U{FeDxlIA7`sAC{>D>Chy>2^WQHlqo_n#E9E1EC?;gmWV7Rg6gL>r;3xUmkg7 z)n!fd{}_KAD@Ts_y(C!%4oAG7i+aOHBIRap3^O_!q=CsWv6tsodHvKdoIW;#e)v84P)_{g|*-`S9trIJw8$(zv0OD&+_ z$~8C$VO2g^kH&PZ+Eq2>92Uh|%+!$yCcI^;sm~3y8b@|sH^^#6H#ig+=De^sdNc$X z-3*3~Ml03dN6N9IQ7@LIqcQLJzfXS03GIQbSFl4p0#v}a?fwF9vT_~)EojaHePo@Z z7NT*%wLOb#t1sg52ns}15Fp6)*Qa>CX~{)=wr1)2yyt&7NvACROJCoxtU zF^`2{$;C(jsKpFcCxsS-+^vFTH1EpH4f)dEF>}9y^x|kCaGL0$2_@`W*I|wB#GF9( zYL&M7NZvk%Mo+?Ti%>@QYgAI`!K&nr`D0Vz4wSh1;#AkUlZH~BZX^5DcFQrjIFj_* z2`)(+qstv&s6QzAxy0yLramgk^&DT8YER~ZEw`4iXQrx@w5L=@YW8FY*|5+;6@eMr z25aC6a_fFp?%arsBpW~FI-hRr{rQbN&ENeeFxZq_Cx65v?Fq3ELhd5F+|0(-pX0iw zjV`#;r406`HPoCX?vH=OT`CPp|F4fd&8z^iK#J6V0%NcGT}gf*y$FBA+y4 zv?$x-9i9(({u233fE98q53_(U%T26i?wAE-mSVo(WEErtBm)Y}iZD^a$wWpK4c?)7 zQ(4CZf-6OEe?2id&m!Wl@i_?)gnr_v z^%FU`2vkbCN!5~oS*hMnq|0)Z7~={SO=m;=nSwD!gDT!Tu!S&gqa{3pYE}oNR>7C5R$sVq*%q{bU40Dx;cG=( z^h7IRwk7OqDTk|%hW+e*)z1sxJa@s-Mb*dnMQkfBS}p`d(t^KB1@fqb_l5m2_H?YA z_Qk4;qZRgC?II<-;Bs749pM+TXQE()aDDY_IA@ad)t`kNeB4*haTg8_{&;j(>2R2c zx0lUyOaXIAkd}h-se?C{j)=*iFLPijy>FbOD2#iP`Inxb>N>gt@fEn*!Dk<;(?(an zcCADR#Tr)UNW~4x$R}k*&HPj^G}Vi<+r?0OrJK&os~86wZ((jzuHTk7&rxf_Z}TcP zt+VXaz&*#?M~M5ua*1UTNL;ng)fQI2yL;Is;Dd~T$7z9Q8TcU2gnjH<&pSOIM)taY zfK?0@Fm4bQ#;;L#YZG(=-7W-On9BmXr9SmC?hWXPcR6%N@b@|>9)~Z|B-SOznC)WY z1&^;VW4lgZ)1gk}mf{}Rj)dhaPwZTLCB*OJKAb1a)jX82Iwl*(5wZ~A=)U4{H`Aq}Y1m>}di4p}A+K6HX?RdA%0eT#IgWN3=P6o5 zay19%_ZTeIP7;~pZm51VijzqW(xybvKNgK1Ca5VABsZFSKECP=6HL)r<_M)gI5a>1 zo#Lw}pP8|&3s(^bE>j@DM~ zw8t|CpHh}4b!j0D2PUH9o`sK~nVh}Cbs)=ytI?QxMfW~LbSV0}x)B~nJE?o$eMYtqR~^y%uSq*;I6jRD=Xly_%C+RU+eu&e>P}{~)ja&)V}8Q;+>GLXe#=a7 zsJ60RHp_sdWlWb8a4WI1w{e(=L9Yd1H(#(_kMB4&KoheFM)T5C+uGV`n;fY+uq6PczxrGOCR+|hI~{vqlDC^+DA2MvVo zR3Ywz#~1{<)sKpLQSg&-9|6|JFR+X!MdK+kQiQ##K1M1i?y4S^5lEG;M$k3yjpDGu&AFd!mZ(1c_J3Jl<4aBXufVqk=j z$VL}bjsc2{=D6hUuF(Mz&C*pS&4fqVz(P!SVAUfKv$&oR%`h6v>k<7z#Q8k7htQgM z(tIRC1N=EnH}@M90W=wEt%;a`_RFn8Tbqq5GK*X7#L^z(y3Un?p(cU|vfuVv-b|Xl zSxLqM=;3^&Wzv;|ne+L7UFX_Mfe=oxv0m~LgiSFLM0B(&3Wa^EKL>Pf3$OTKWWIE%udU^Hp z0mhP4g12XB!fsuhq3>3*DHJRL9$fg{ge!v-5|atmy|yhzg+kdynbBxldk4R2B#j&< zwF2|ZDN$TTk1mwG^Or@y{T%>Sm{_&h4MH$?%>j;;)A`9U{eSodVo*;RL*dQ^$55<_`?Cp7qM|vDqwrk^2`t&2lZVf<)bi$ZXUl#zxnh< zO+*ph;0%#1F^K6bOJtu+tloacMzU5e+PpgEZ)=aUO`@w7hr;n=@siCy$3NYYPA@&} z%&vIIF2zfm2l5fKsq#p$9Q$h=DaSt-5B*52h1F*mi^T_b6oR2*IT&5o91OBZCgu&= z|JcL^7NEdTtk4__hFZ%fgse#Tv++_g6#r~Edrz>8=TY(aWX+T6RdtLli$fu*7jD9* zaq3L##THMlm)+t|e{)i;!jVY$G5&zZ!r6O6rTFi7t$rU1ZS6gw5FgpfsVlmcMmswa zF{>?5u)l*>Pa>=53-MCuouP2C6ns}Ol&$RCvA*ofB6u?tN=28R+!{r2LiPE0D0FeK z+!_jA94c*qm#;)STJ;C;^8L;nnosQ$&o?t8NGrh^3(ntJ2!)EJP;Aj?p3XhxOXX7j zi-JKMyU2ee9>xPpMgD2{8&vOG^aOl7A1?>ri_-X~UAKBHKcRZnAJEOLgf%F_j6vRi ziCl|8u?M>r?Ab-ND+fjGlA*tMYKP7ZQtd*)JA-As{(C|QAf-HWzclaR7|3>>Ct{~( z56sD!Sb)b;XidxzAuif3-ETNXEq7N@_Ga)IBLSu}A+a2Aa~5`QxVf>>z|B3(e!S~r zH?HzFAvnSu+H=bWyI|xa*dp0G_@;Y<#U3kPefO#KlIJ}%FWBB@#erw8#wdXT`?XcQ z<-A9(>FvAjjCd(##W$YYQ9Ab^xn+SRckKiT@2VR=whI9r1$)CSdxlH|Pc&ig#{;l+ zS8u@9J$m9BPrwA*cV^s*m70+VAx7H)`*pPZ>+OgB_6vW}6R_IagYDPc{ef%O;=1Zh zQoSY-NANw7&ozTAT}zy`@lwyNp7&8?lS*a4z#oOJK{OW+1DT-g%{t}+nx9gdw$-7RRNuRzRH_jiqnKpa z^APxjZ6yWSO-7C>1EvOT*Y#^T&Rje^yH<^RXoT3W3+q2B?-ZR~u@pJ}Pe% z`&|u8zQ(g^0l(t zGvZmxtJ9gLyBr8tt!6Hn9LOZ4j2ixEw&7Ol;4v{g2l)6L7$$B} z`Gb7vwKFi9$RE?7*bt;ZDQ#$GLnoz$gFe_taF}-<&N(Wy9^2zySv`01mCuQ8cR~=I zNRvZiz&J4l?8mqb|3u$Ytign?V^l6bi>f&$S3N#woLC`v8j5;JCG>06WEFCpRxLLw z7}Qxbgy`+X-`W8zQN*M8g83ngp&TUYQ#==wmsZYVmHJTMFIF(uPwu1r71^X+9WVyA z0g{HHDyB&MuIY{((tEXsY`0^j83ggebcF^o5P4uZe!QE=vR_OBYY#?(O%Ien4WBl=Vg zLkm5h9Jna$my<&fTnomJ%MVju1u8>VVHAq7$z8f~~hOPW8l85*6Y*IUV8e zfWumOo_c=4O1@W%y5j0zlu8Shpe%0~?vE;&)EAk($nJkC{Hk&%9MN{I}K*)f^WGhJAo zH75po&WM?gVFZ)TEE+-|RFS@o?c8h&pMGc|@CV_OZPkDO!CqJ(-kA!Fv22rNeU^mP z&mt1~P`2~3kA3F83-hBZ>Cj+r>Xhs6IIy!d=}nf3--qBlfnB&@e~HG%m$3GJQO?MU zgQ)}4UX6s0@A%a-cswUVM^ZTEXUHb@S&Qx4`KdcL2e$vkUwwQf9T~jk_AA%;mR|af zwRSO-tlnl>oM;&zX5RiX^(Q`lg1;E0u8r#u=R%k~XFuZk0+++&q@nGRs}wUzG9`^j znv-J!)(Jf!jR#ZB*x9bY1`N}#JVbk*JMimnE$)THcItkg@lE?D@?5e>%$IKPyFTNU z{I_42ygE4BsD6urDBd{vmg+MAN(u0k6WT``T%BVchqqDKfT`~nJB%Q2tmP>Cg2S5! zzuC0oK)RD4vB)12fNYu*YMMczEaSSoUW-O|(6VxP>LX<8^#ih$tfr>k!MH8YX!IyF zqG6-1q~1B|i zI&32P>gej4)yL#;IyQNkth=(h_p&Wh-us@ZV8yOlTK(=!t|A{3@SwWPybUt*<&Mn! zF^pZ+8Ph#M6~&mDLYh{Fkd7zT?DZ4C#jq#JeVeF9fhZM^fd`Pxg2F_o2mVRO zQ-AOI*0g;pCwO2=4XF`QL)*>Z+2a!15G^h+6DWnFb9vtqO^LQMlQluEMcO@@9Zgl( z%+-?1;P7<)>S{Vf7eWe^+&;$lN}4uSX=pKm;exOi^l@Y=`;^N^VvIUZ(#N7ZUCD|> z712~Tmv6<{jvO-nn$ZeXaJjdioiy3y0lEL~pHNYZ8Q7;`553Is!%G?LO`f-K1d^P= zAXt<$aq^T^qJO4ZB2;$R(QFQ$YvI*{lNrvwPA%jOVN^2sfhTjJo>HV9sJ=>Y&~rG0 z_QTY1Q@bf?6dDios=Qm(m%CUKDgssKA)dbNxrostYrSv4Y zhGDo<$#QJK3lGvUaI``*HCCA1ETkJ29YqVN3SdM+_ZZUr>~lSxL)3efa)tb;U?(GI z&M}B>1@*X z-hfr@S`inFhM^1@RA4M2Pe<~HSdjO}S9H;LD+A8mOw{NCZKQ#l+S@G@k*w~B$LwUN z)%N+x6A=ghSH6&Bu?S!TQG32=&(ASZ=aVdsEZ%vxo3Y${o9Drf#0+q@y*0NW!GDHh z23=@V3Ai3SmgJp}CKgZ`21>OJl!`;=IVF^%Veo(9+P6}P`LY#>u_Q>~T4UfTL_vNZ zOx$+$zr^-sMDENRL)p?)7Ty%g5e8zR}UXlwaIO$tr)2%&*0yyKvvpxJ{fbzyrna^3%4ZUh zSSjK4inRqMIexi=a7@bAAsqob944`=6YZZQFG4VI-;Y8M#*-u>8ZVNJNb>$u!0Mds z5%FJds7d+{ar^i;UVb!~7V|}8$(0ABGg}))+ODGovuh-%wUj81Gi#S5yaxQDEQK5INY{PCos4@!`^!nRf_6x6ZJNz-v@`N zetYTH6z4!2?hd4%auVAXjG1K6vVwKT4$K-gznK$ZF+ophJdivd*e;xSLCfRn6smqW zG0W0K)0mVWXXmI?#7SKP(NqgK)uruC!@fJXXx)mSdgRbed||+3B7+(UjdC7A9T>0g z>0?{v#M>@g7GOSClGhn>Up&s|Os>-*QA-DP=YsD9MszA0D&ZJpBTcrSOLc4x?WP8@ z?YY(uGJ5lO#gwDTg5|lcUDMTls^=d6z4a}UuSCg&2cF`MNdAY9cLD}l&zS&`L26ut zMk$eqOEUu|7y07|AIEv)p!hrf8`Zp}emC?KC-^19`HWW4(&O7jDO9x>pZkRQsyFw) z;Q6}e7oOj7TY@rM-NoL4D!dBzA)os4PynO>3R;BxuhIpiq>&-SOxNgQ2w!akx)lEj z$Y*EK6yPV|lN~2HU{Sad|8cVfbPGVD32@0}F^&C$tPRQng;9T;%mxnf3uAzpBH|8cl3FxJX_=wQZJ4 z=FLFe7kK$EyG9H#Y)F!3ef*(NC=t(PE3E}E8$;0r8nK0RlMb8Zq98#I#j>Ed&&K0+ zIM`AiY8&lA;s7|GyD?ym!e4s(yT&&44Her+tx2bQyOs~I=5_ zo`Z~w{qQlJ1)1j#&qJOsf-m&@p8rDk#u;3ZJSh&IhLk-9aS@R4pl zFob1`6OeQD*2kT~WbxwZ9>}PHAvcO2PLc;GwKN7vIdw6S-84EEbDcZ`)Nh=PiZhfi zqN{tcfIA2L8M+UOhENz*0IKY2)PlyGE5N8vt%|rCj~8RTJAf~EGzX9o$e5q=x!8~# z*wp%bS~W zUGXjoRI+7WAF+^xAhhqvK1{6>t-DZxAd`R2iil}MnN$(0D&rEdZhK59nx*PL{DdBw)tG8`_V(m*p?t<0E2AXuynef-rBo(Wy!uz6MR+p3Sc{KE z=^etL>yD>NAQ!LXn+wHw1jj-L3zVZL9xtVU)J5Ax;(KyY=4(mEgTP^z7lk4z(u!`M z-x&`kOYw9rmdo|@M$!>9MWkG6X|WIbdyu%WNC7W3_`iS|S|(Z9H*qa)6SXI6h(A;d^-%PMl>0-YFIb+8>C!()AsX{c5R4;tScs#; zI+!H0p_-{F2-<=_K|xTqOYO`I@6k{_x)xJ*H16RMnz>qqG>aQ0n{cIv{im*5&GSwP z4y@-C>$F&y6u^zMhpVtcaSdkD1S>FV1-B5;j6-BN{VSGc^>MluvI?XMKX;dv)9l`Sco7&sW zr(^Ts%}!Rpca7?j@dqNg`)2OjJMzd^%@&?(kK#;D@NDyt{z_Qt2RxJ!{X4M7c(gp_ zv?wDkgAnDTBS6OS#Z%)}4yYkwWJdw~im#Gg2>ZYn1V(YIG%bg;ifa@UBo}~n9t$O& z(JwI7h=*$6rJ`~H$D?>OP(1iy8pSunVgzL|-}dPheyWaA5F zVk}6;GEf>@w~^|9yM-{b+sI^byH&m^GdkK6kEIYy#H>I(jqstkKk%MN!siR(biukk zn0ZK+{EbW^);l(qrpTyBYal}5NT=5=_{PkVCB3m&hMp6MX9DSS&|{MRUi`&pdC+_tzz6X z1H2TikzB?%er1Mhcyo+Tg;5Ucl$7MLAj%&;k^BQ@J&ZzRb1H|}M?yjPGOFi>f<9G7 zRKK$y#)EW4xiv`Fm)kZ@k1V6tmGuZuZ@9iOvSGPvIEuIl=5xa}KTq*P>8Q#mgJ_MJg0Qd+2`6ew(}ybRtq9&cw;cgOG-yj@K0l9 zb`Its_zzkZqHwz?&yYvITDXrfh?Rig_F8=v_vrEBB7QjoiO@4RwhZV3kLEr zO7ufvF+4VhEkZ#9$(5bB%Z}v(WRhMR4}=~i$0vP$-?r%(lFLx|TgaEf-t=gQ+@_Br zkyu|R%B8S4UM>OlsX$RU`=-6BgEsJ3-j7(Za6iOU|6zO!h92^#o}hBE00jcUP+KX0 z0Jg(^66yU9g@R9`2n^=xLoNWmck%X9(!mH~sRB(fXjbySOxvYs1sQ=NK7TM$L=0Mr z>v3eej&WNg;jSp}`(+%vD;Qhd*y!Igc(ySNl-zrMp9rqx+5FT+BPHA?Sz=cmB?$of zpv$x>R6p{TQm`6=r)Bshn44(O`uUI>74fRLh5}Y8{S*X6%A1(e^50>GlT7Q~ldNhuwkfgah1SIslY_Y6OQqD6QVwnLoJ= zVvid<)HBINh?Uy)HT`LB4(Ev(?oh^K^O~UdlDq>fuH(;~eoy$d=MN12l0Um$;W)#*o7&l#Gmt~PocB={&c*(6R>La41NxN?fuRJR9hgr z7~GH(e2l9I;i2?`wi#+z?~H1ZC5?|`uZdg<$V`{C-}OF@$V2km_$C-sjE!Wh8UKQ1 z>=t!Aq+IZvFa%yI{(yP`SHpgUt1ET=qcf}dEGj#F74H<2X+*1=hynRKGYC6L8~C<2 zaZ98-a|mPoGaxsK>u(8L&rWCOVm5J27Q#Q*V=0e=06z<6CMXvgqDA;n63VD8RGA0TfOnx>%Hh!+k3@j?1UxWNZg<#s@0(zu03&WvBwXB zlvcxtN4!f`UVbHkHmhX!AyYd``R9$C`p7Q2`IIduZ(v<5hL>0-kgJfJXPgj}v59qA z+Nso~4U{8PT&lg-Yh)_T28&00Rx}ZV#uf64>W9S3y!51he*5YT*IZYpzU=GbnLoPr zMye0qW#tkxl7RQKl=aUmu5rR29Q1^_NK7*Jqzw)R3JImpL&-rSPY5F0Yc_{{ZKcGn zeDVP*?tx_fo28*>DMnSzS$NN+WvBfuUton;*&1#q0v!H>wFx^!O;RqpzZFG zi?aNNC6sKV9`o;v?{K@Q#K~WR)f5wkLEG;FZ=Ij)V^Hv+#bc5IV9iaF22DH4_bl0^ zra0x85(M=X%n{P!Fc^jb?!j0&gTx=_!cz2sFwhnc#(e2A{q{W-@y00kXw-|`qp|W+ z5uS83%M*~cMZD2o=Ui{JT*SHFs2BN>@%d&tha}AOsh?pF$B?b$X_1d)al}`BXAExH z5gznkeI{IH--%WthXW?@9R-erz0XH^*4QSVL6)6_lO^Y5IqZEy%o{0DF5+-GQclyk zh!^&&iDx+G3~l{9=V%dep=)?%o{K!!c-{v5t)3|zmJ>8G_zY-W0WS)cLmn;9!R^wV zsex$#dzWW41yBQ#X?{bjHS!+Ky=WB0Y&H^6KW0=GByisC{`Pf=w!k(&X0(61KZaF= zCj7XAH+Agq$TI7S07~LQ$3@4!Ant*C&rQ+!Rn-E`?)SGRj)swG*3L$bCSuj^24ab$ zu(t3|)}%@TRSoRJ9#qe{0)$u{$g=k+&0}fm7T*y7$zQ<(Mhcn>|559oQP|>V&Y>2Iz+;0ddK)-Q58`VN=Dnj9;kRh@bOJW9*+Ev{+C&X{-Qls95 zvLqSm4^y=Qgob9tHzmSBOdy9)BbT&$v}h+)g6h^v)9yjNWVDki;^frQ%+;cc%tYM3 z-)ra6anrls-*%%o`ov_|93o=WWU!7?Rf)bGKOomeN06&wUM&O+)Bt$TNmqqpXP6L9 zv`hv|Nz=m-d8ad+l`u@Qmy?m=aP3Zggg<~0UVSV=1avthPfEnAuTuvmjQq8zDb;m8 zS#)=28QY==;0}D8M*Od+A}kI=`Tr*%wKM}lmIa=wJnSegZE9w!H?C<8l>w+4bR!Cd z&M`YCB1|pfr}$6ve$F2>RpJD=05~ltzG@x77?vh6!C%3lO2Q9B zxHkbQA`Fq(c5*5Wyyn?9-)Akp<}c5phTHVEb9+N3$y`R(+%FXJo{icoXM1%qwuP=q?nyd*r`CvMKV`0G=o~EhO^H6E z=l|8b7yVN4jKZ%*Yo4kv|4*`-67xqb_`~0C3={hYpWVKCOBa?p1u^O7m6t+oK$UPc z_d`IH47yb=%AERxaHBOV=#>3$9$NM0dmsAXH7i$La}S4vuf5@%p}})*c>9g7A3{r4 zzpJk%fa$7>i?eAt;_v%FE;$NNQzcoa#f77iuoIA*d&beVNM&i%02D-~2O+Cp# zfgkwywY*L2$n^0O`So^yvDyfp6>1BX&!-=p_Yj9}fzPUq!=&(e3kV|V2S3ENp_~Sz z3PXjD72=p#?&;wSVB5fmdMToZ?gZ}eQAGBA4P%ASeS)=@FoIdfp^Ae5lF&S)gWO%z zIpaReIX)>erReMy7-cSy9@xZT=!?*{G|`7_I_}Op1bP*}aG`2jm^vEajgsTkyfd|N z{RJ0(Z`byo`K{|#@7a5~orPEW%+pR;Jd!Jy)^7OBw$nzJB#hQ_di+b%_4E5$n(aim z*j_@c(4z%=AFVO?xU1gM?3%c@*9nEFaezBi)=tnp`}So!w{`cF*RMT)@AuExIe&pg zu6rX~sjT1d+0#!Q8EtNFU$g!U(j6ShuHM?QItWN&B7{Leb|G5lTNaHiYQZkaH>W1KdOvo{@43y!V%Q4j_xyJ%~CZW)}w5_E}_8*wea z3m$t8oFdFCA)Q>7U7)Y%N&%lT53Rla!G}M1*P*-5pRgvhw3q}$HjD&+O!X&t z`lX2a#7E`4%+j$ez*OaEC?CQ*J(5T!6G6a_{eGL^Tlq>95j|8Zs_-b@H^`w#U>r{* zZJT08gFzk@N(BWG$(hO8g%BZ|-h>yvluDpatVP7#`X7k-TI!6clQ;sJWC=5d&B+}{ zhypH}T&8F|jx@_5yxfj$Nerr7JpsbpUrg+}>ocFeYe#IwfsdbM=Zr#f(>pF0jI6)< zUGIML1}pE6m)gd^J!wfmM2%}=tX5|rCou2M$L_zRv+IoyJod<2R{IF?&b-5W58ioT zS6l0@{dcZUfF1TfwGOIYD}G)(okV~(Bp%l%&8Ltz)SZ{F1FORA+){qrGm;{tu^0)vwyGJpT;ZhXgq-NOwgT+@awvU}N?t~iF&T|o%oW>XUQ zWXnpizwAhNZ@*xBce;aYwaIX*cc?cNqA0^36x&+~v=M75w$M=gP-i6^A_$^gu8>?8 z6}k#0)4kWM@U6S)fsfyF`KX^y67T#oZ+ORn^GCdc=iFFtGBvf3?Is?_OkTrph@`Wr z$b%hwUOzVW`aKGm zs}aA;eTaj#`LWA$A^1iYNgx=8_%5?$=l}LzNJ^*|M30SuQWI8 z|L{&smnM7tTh3o%44$|D_WiHx_k!=Psrr36IUKdE+Tp%YBjKs8bj_~Y@!|a&%$3*Q z|A`M>HRjBk{@3ll?ZA11#**{jvfgeoat`ILVzxi3&7YT3pEHF@YF?rFl@At|VF zVlN)E!{z5GTNcJ+WiBa_wp8tPo=lflnQu-4+uKz(57o2?`f>#c9%pYkc|l*_f|Iv= zp1#azy8L8nsOv?RwVB2uK9uZ4&z*Pf=opHxJ&L|i6!OGfMVSbfP9m|gCmrd-Zm^kV z$7YHZ6x@eT)Yh?+Ji9#S!*X+Qs?n~cwbJm)u3W$o&r^2L40ejUePdUB=-~%w=->1p zRx0ci>)yJDhW>%u+@XJ?7;6)Xktk7utGzK7yF5d zGVfLq>R54V&A$J^9m$+Y&CXYx1Gn!#TdX+aUz~1vd0)Ie<8QHpv_(YH>~k*dW3>DS zwAN9QU5;Apnw=j$P=C3hmVPT=ZVohV$JNN5oi=$~P~=|#14pq`HvT6#CMl~smv>;F ze7_lj7B;V@r;|5ZF4Mr6^0+<+9}2k^o-F>aAMjOxPO+enV{L@zG2yEVoNg6dP61ke zy)4z{5BV5=01|;AV;e=W-{scbG;ExBUM3hYQ{`6EA7u8#YQ4^G>)kmWS`+#L4p-mJLW|VD> zmd$`PCm#uq^|4KlonNWIO_Q=qC1ckED>@ej%;rjZ{CUGjHM5YvqqQj(+t3l>^ynUSe$mWAD(bwrG&3jH>C4A2YayMW2ec{+Gr0AUvq zmU_XI@s#I(d47NlAQRYCW323C{?*h_pKAZq%^#{Q%BLm@&`|WgLD-Zjc}I=|3N-ws zgEkoAdJ0TmFzQ3MMqDj;2e{~qo`zbi;>%4$#c?ArxfS3ZkeGD9k-?!upwZMw*C?Q# zDPF9J5!5k}kMoG+PoY?6GCk6V6W;j=%PNwdQAC`?0Zf-xnl7!@mjMF46|=z}zX|@c zPo>KFpwEDupYWTwf1RE5t>C=sE4{7pKp#c$+Vp!qICy!;zu^Z5@6p!20C)D`^g?*c zR&e(9mEPpdzF@xGiF(k1oXWMtdH`7y3@d=pk_X*zP4FpvkV8Ssg>C zWBd7$H2$st`$UoEXloSzYZb3p9{-F`jhESNovBE|?~iB0*!ULvTESFcgM$5-on!+o z6{yz4o6{u*|FTMp-3q5Dj+VSOuB0Ew62^wI)iZq`Q{6p%%-ua#&dJOqGm~Us z5^|FhNH{_Q;Yc7{Dhk4iLBUlBU_ca9t_5|8u8IqI;IZO?7pM#Cdh9Of8bw6~b;Wf> zruP4PUsZKg^)=m7T|JZRUt-TpPhV5-eee9e-&+EPm#u7Mw=T+ z=5n+0uwm1*h8N+<;U@?KMc6@_Co8P!ehE|V|1Pi`$fR@Su^joZ$)T8HP9lyLEhBT2 zC$BMOSwwGXC-z&+9K zs0Pe#Vt}=boe!Y@x6>^$_eJ$y=m_lFJhE?dL-Xp=8q)T+-{TrH<*K<# zjy7~d1wpltV+~WxdKEMOVD0PN?jOA9j>Gp~w<$FG+V}2=rlq93=IWgb0>@qW*0*21 zqt7d0=t|~bDa9Kr8NeciFC<`D~?$kQpld(ji zW=ZG?=-Eq`l}>W859}e$Rkf$mys@)g${i!#S3lPNTOnt}LgZI4p zEgCWD8;tIYFN5xjw+q8abep|SYq*HE%k|+b?xXo8+)6!Gh1o%8a69>Qs&x{-mARI) zw_HY5`iNM-bk?a~b24SB*sRwoHX?s=Ej|bNlU}jWuZnqKi^I80iejO#>ah_2I!*h;k#keit zj4M4DXr>+p$cV3r4UG)OXcuO94lO3*-%LlNY5FD0*388N zGW82fa%V*zm$r$f0>zuPl4wC)s8~rsRi@3`sXAHRK1dePdUx0Ga+}2XT@u7y!q;_>F(3syq>xOzqMW* z%@z|Y7hSSwN}KGY2~tdUqK02M*{NSg(j&EBzEkiLR%(S%yeWNQtJ=w6mWb;;4dcts zKKI9a&Kh0n8Xehn_G@VYp}cd`iSy=53+Hd#{K(c#1B+aQ{xx0Zx#Tjjc6D#%Md15i zch;^Yqpqc6XYKjPIcG0h-XJKNT#FWN+WN@mjSCjK=FdBE(@uiW{?&S|wb)a6wxH@e zRUMdWk6&?pNnlw95k;K=>wgOv!nIyjaRf_gU&%+o+71Oyi0T-sj%45ACt%_|u-|&K ziZJNvlEdbBvRQbQe$|_hVW;*Ls+H(S8vaJ~xZnh)0;gyhC)8ZO{`@N~)G*@BO`TF$ zcDdvvPxs25Dc6EexV=CndohF^2?jEvSuZCRh9j|^19OM^gw<@x@U{*NGxI?FExkkY z1_WDfM;p(yQ2Ti*7zz&*7t@DUpGYLV%a+XR0*eutZo89`Cz6sDZfk51TuN>Q5(K0~DD3hrzV>Bh{i6mnU zaH}Ji#kTGK9FdABM4Q3S+LI)z!J^VC&<6CXv`iG-wgNK^h=K0xsqO+ja3|@7RHz!l z2?`eQbl@h%c3ty8w})OxtmBmu`e&l3VYIXYyWZm&U$*<~e?NQo(q+NHMW>!|X|x5^ zqtn-|?d|goEIe`3Lz_1)T;!&<@=e}M)0sph9@!NMd`k+pV!LS2g;{E_I(NzKE}7P= zx}s8S1KRy3LSI5B2D{IY(|&KzmrjD41+>URt~Pm}9B-i8=4+d}ybBv4*krVEz!SLL z+m>nbxPkW%Vpp7NP9P47C{T%a1Uw5HV}6u5_JLr!!6ygyMOz;UdIRaEP%@fZrsJ-F-yJ>P6~`Y)a{{;}9L9Qay4D9jEhRcL0bheZ5%Q-K!69JrBk0yP!)vx? zy@94({sjKgpnq3W*Ub@Gjs#j_?#4!UtR>6+u>|f8fcR>cKX@&QdlBx9CcwBIb~Wz_ zc6Bzpq+lZL4<-B!YajrC2Gex2NWJ1{QQ*3N!z0Byn?g~yKj4a|li*>%pFkW3gWiDj z`J#t6=j*MpPTAa|!oFEKtu*y!tleOvH&ebPrqM6KFz$y9Avg=a>eTzyo^M{e>%h69 z39|+%e?mETs&*H@)q0%-9A`fTg?db=W0;zy!ZN>-?DR#kC<5$jfv45`~0)sDhhUMeJN@n@m;4Me#chN z#DNbybl>H}e$qtAJLk-|+dWT6DyG^)CHovP!C*ksbJavzPF{%RBlw6$dxb`KT+m;MriL(=NW09a zKI~XAUf6P(3;P&_d&P*)3*~_HV`vQEtBS7%8vAx?M_{Z*%BG^xq1CI>xJ2o`)-dVkCZ>6hwC?uV;lzI(IktauUrG;pb{=?+`#@r^~YIG;?aWuT$ z6Y15fhS8ruY}V4+*OE=IM?!Xpvaef%+56Q*93NMovq0L6^e06(kRxYZWR(Et@Sk7njhoRB)^*EQ4|<)M1# z+R!&0Yi8Cr;%|B%u*1&k83kB~z_p5t4bYh#wb@UGV?PW>!Y<6LmWuGIeW00&z0r62 zs{UXFn1^3uyo+N;ww|R*>(Kbpiuvz^T+&*_01_C=3|nshsuKolKMY#tMT9 zCb(rNpElcJs*)4m=>6>DK;u7!-tY_Tf3Tq`$}@bx*>eo~vSTC*FF?l>DoLrRG8a?4 z=NQYvYiI?3e~e}12#IpIRqI*25))O5; zxZc1Dm)QGq3v3^8E!TbX3u03NWktalsSt{mm@fiDGdhrcNmD9au8nW$7itrW*0nFD zH4W2U-NN78vT5DCdFwW{VDKU2O{c=)R2n@u0NvWHGn08El;|!|=iaFWGW>*=Nc)P- zE7~Kil-v3m{mtoSf1~Vn15$W$F2PoN_4&PfK4LVL_4D`=Ft#Hs!Ioif;a*I`ybo38 zPvJZcpo-fqfR)(Fr}e$42dw=E5UnWRs_g+FYz6ohph-Mb?G^MBM+_>skT(rHQz1Ey zQZH)0)K9>kf@V~WwP&eSXuOE}U#=Lfy;(ESc7j}1EcEci@foOcY(CYlI~vx#anp%g zC~jPNoV0xRsEew+%1P)a$LI8ScAm4A_qzzU!jt3Md3$?rZ!8*Y3J1HCvm4f2v2p%F z!ko#yJ<_r>M_xLJiGfcd8|}GZyRbZEsyL zuO;OYlPa!wvTt5XYjm}ZasKjf~c%`v%LA@z`%-N#G2bJln!CH= zv2+3pI+A`F^QdW~ym|8v zKuZHW^?9E>A&_lx#UmO2exIi;OSi6hVUKUWKLZ}z{r>Ev0@xskoKfkMU;g z@vc2PfwXpoHl8G*@A9dgdtB%)NhfV2IJWW!pC^1@BpdTY?gMBAv@G{VJh5!#-mvEs zKv5qQs6^Zn5cNTUNyM$FD*?wOeG*8-e$)p~W)~p;IK=K2=jbc!pV_lk?^e#V5z!Km zOjv&@=EBt8Oia^vF-1oPSc`qm*||VUKHvrOMT*^Yrir_8#^C zw$NJQtEn`QI=!&S)U~Zv17kHRSx==>WB2SN%%QyDEem+Bs#2LZ6<4W8&R3Q1)*&ew z2kDW=pIA2CV)oR!vhH-B=(2g%FXQuvgtmhjP+)>4fkYJ_YxHJ!_OyJ%j4=Ei)ka!9dCI^0Gd#VT~LP zbTy4G#{pFyFJ>VswEFz9J+OExxkf;nixqU$!&m`KyaMSVQe zD%?lMf#PS~+?(X=iO3{u+7pi!X{zB+ z%naYP_B*FACyWi6;Zc(h!r)GW$ zGDf;T>)YY;=o1(fy`=W`n1B)dNUHZLg3zZdU#~|gk77^bqj)HdQ>CAo;+fJSZ1y@w zJR0qErP1$+90(&H3Ll7MG-_hmd>;sK^f4ZO{}iwNm@zN;w1F2;_mdL#*wDwF$e`YU zPN|wfJ;i>?UZN?!%4R$)#UYC}B4Z*vqc*}$ZBaFCvOLK0^h)2ev|5=HvZ*)>KzFR; z1HjE(iH_+CvA+G(%{|R)=2HL>23t5TfN8WlUVaPzLs3sJWiT02D5 zi!Iill^0-K9wb7L!$BL`cx_kHoNe1j@fqc|)=*<0gjrwyBeMohe%7{vDI*IvFT_7m z>gf#8e z4MTRgD$_&-TpAQmFg8_ea1HS}`Ox2$u~}->=Y^xyYQ@Z!sC2)?GOAORN^NXCbz5J2 z%>pu5k%TAI(&i&dVQn4yGz?ZRiHh)M+k#@1nD#{asKo=pxNgTJ4qLKflGEW4~s9 z<_*}t+rj5Mqm$~EH;esp(36&nMoXJRfizbq)+V^e+=egByIGZ1FUg#|I-OcIm$W*Z z@cI(10b=>ysoKeDX!TyFE1%Op374h$;Fhg}I0;QH=_YRglrHEOm~5_%gP=1-DkD?a z?OK*k#oPsPeH!QJOm-nEXg4C?{RsOs`>NQ0ET%3v@T8T-hL&SsIUp2|O0;*D@Oo|m z)1!F6@)*mrD}Bq-M*zE#bGs-;seOQ;TBmfXIhklxXJ;ZgF|jBfoHM?nHSCUOTQkkB zR2MB|K>uf&LF}ClaE?y@z+9P#L>3%Bu{i0Dp$6@aHDJ2~W|_MAcWZQNbPCnn?q@4y z>9mMU!|*NE+${f0JPq$sle2*SaEByx5qv@d5WpQh3FhR#^jLURI()u&{`iXFmd5U} zE+}m#<%(xovFbN^?X*=mjZhQ`{z3SAZRp!H3T`8gd9-sN;qPB|!jev$twdK#V>APb z9;_;@jRB`}iHsZNSp#lh`ry_Xc2&nNG1*HH@zV;ePdT$oykV1VAeE!!HlVsqVCEx*OsmdTKW7hqA-(3Tn+DN#rdire($5u63%Fp-A8(%rx+L&FcdFSS?R#f3* z)A!DY4DV(`!#>?PnDqB8J7Gll;!L_RmWg`WrFe~ev7ivdjWVJFQ?)s`a(T|vwTbBR zvm0PMYaP;AOfk6FjOLEzH&yA$w)pr7W9?GUvJ={=N88aA^|WO$3+{eh^TX58#D7)`b(uVpl4&`m^@eXv%b%y3=;!6M zR{JClbt6x<_G_L&zXltlYNA7+5y&N|$O?cgbvi+=+3Z|ZI=3LZZAGHxggF#9hY~(- zb4wtSje1Y6UgNYX(;>SvxuZynk0`OIS~J+TIeVGhB=@5g560z zeID4*<9z>EBRe>g9@0Y2RFz7e?}ocvY<8EKmYTUsjqcutl6|IYFzM@CzH-#?nlX6I z<{GJ4F0atM<{gHsr`Sr(S?@8~z_ZxJm?^ti^sK+Ys4DX7npi;5vqp_jgIEt}yIk@- zDaaQLJY6NMQx;adN)w;bnMzffwYg>MmW2&Vwrz%?13JQ!2DfV@-Ri|ghla~ki^pSX z;iH1NQ{_GCQ>sZnZ0OzJb|u@_oU)?1qZ=qbPb3iVBwCX`4?023-5d)YjHcscR7dnp zNu71!w7c9o`T{yxXwOa+x$aHuz3fBmb3!L;5b-C~$#NATtdUk&lHeNTy(Xx~RG^7z z_aI-Gw>sI`1H_a!67+i$VRF6IYtmzt(}PXFnzCc~)^lSG!K z^p-cO%F3}u0i`D*Hb!DDRh8=R7KGHskgQE0r9(rkWnRfWdMg~!;SxU}C`J&}vG%hfTD z+8(6E?O5RK=CvqQxt(*p3&vLrrcFJ_&NkrFsT)TMT8-n;9!oor(Ss~L&~8KFKhe1$ z9_(MXa!Ch1SaT-rmb+wMhZL%X<1qn@CvUA_PQEa9cBmFmhngt5ibff<^pHeVT6I!v zeAUu+SI_vW_OLgWK~Ec_x7dN?zI@th^{5dVm?`|GA0^+^)`r^Xs%0InC~Bh~)X)K3 zZ^L9A|3!^dN)J}h&ndwbNVrhK5beT7r4Ba0#<7d!Oi>xQf!)a-#9X~T4@~sx>V{P< zaYu4(%s{xbWd_K8Fjp8>RGAL)mTwPJWL`5CZ2>P{M$Y5~1gQY!*cN1jrSd-LfMh{sk2(-B= zx1QQ{M{g%)V==^q)$=-a-@>jw9P@B6;%~}!__7h@m!wD$o{o5wO`YpHLF1cg3bcWb zwaGW;5AuLd`6WuA9z4RIP~O(p70J?ASQsy&kpY@tu_q8q`glv2wo@y=^!xcIJJ)xK zm&6h#Y^L_F$BJrtrFZ}@{EKjwpAA1tu_rJO$~$vmHMw7m-VgMwh>9fzo)q#zEcV6L z5WyVI2l4Qs=nAp#Je=}?Fx9_0;_*F#Q8RJ-V{AUceLjpCf{4`D7z1nLBR(4Tc*M>5 z!d|>C5tNG8r8u5mPPAH;WF-`~4qkJIaR`n(>G*Vmcx zV4?McZv4$L_uu=xPvRwD+QY_(iN4r`N${Uc>cnoGAVZ98;pnu;jK7?J4X`LrpIFJg zoZv}+(e+;Ndv~xE*x2zFu%5jiuiGcIbTJV{VEz!C&>A;{pn%}9QL)Gi_cn(?5RLt7 z>g0MtWq)W)2zAE2-9!xBKhigb4FMSPN@B9TgS*^GVh6#!BOrjFO>XLhd>>Iwhk0o| zlKWVv(A8NfnWmb<=QgZhMl+Y?+p@;1S5AO{>{-s9|oYl3|ug>*dox zfa1tg0D{FsHK29Tj0e9lUqVB8CsA}XER2;?X7Vv%FE+@jN#Zdr`&iQlZ7+8HX~u+R z@P=?M+raa^jBR0h1)2CEA7Ko8-;Ik0b_~4&toj3U^b%59uavEI%cBv_6RUdq@dEj$P;enZJB6-W&WOZ%;|9B1v?^{NU&*Qi=c1Oq@`S~No)Sb)B6QycWgm# zGX%wtR5E1uB?t}*6ic5nESAZ2U@RZq)3+MK*Zk}KckQMfNzt`$=O%thfUt;edckwVk30=talMz zxRKqbax~4LF67|BLKPaTsLWc%*`#48$9+OM&VzCsbV4~$&%_0ny9t!ed#n>{3Q ztI&Vk$nF3~#3#UNIg=hFPXVSePUfI$}>gF!F8 zBAvU49*dg^{D>G^8#}0h-adZv_1z*`Z#nOHIqq(I!K6WRH!KQ-u>vjJ=xI#$5(SJl zbv)iSxNNWue^gNHlA6}M6yH1!XslB_qJwj30Q>s1`pL(i+dQ_Oq^{!qNbCdeJeW`3W^u)k`l^SMJ<-e+k z{NJhV{V0Kh#2n^nH!v>z5KioZQw;=HqP$`ojS|K^3xC&R7`YtjZhd5I-V*CVxe<9Qm?+vtR+I?9gF(_$EYKpOT{3{}mxy-p2qT)Q1R(E3HzTJp{i{#eGU^v*-MeIBo+;+7 z0PyaxcFfzb$lr1N9N|wpd%TNiSQ3MdxJ7<8C6XOBMc+xEuM5{;-wti1ud_w5mLkpI zbW;>;>X?mC%S`mnEYNcPGC(BHi3qqG%!uEpY53B=cAnehyc^Q$%FyFQ5cIWwryo~5r0dDh8rR3+yLIGd@%5?101CjGKh_c`4 zi2)bTbBe~jG`@PIsngdaw`52szj%y6w`*{WKC|`OtXgk8d%P*`Y5RjIe;eD`)F@{< z8odkJU_{?=jA6C49O5Xcc{WGlrdBowSh6+P3v>>< z3|nw=+ea)lf?mD#Rs;%G9rVlqI$NB5##{#=oMT38&B5J`RbZLELDz>bLlY%~UKf54 zI5g^LAgSMnyYLnF2^c5ACuJoF?C9NvkJW0Jinbc=NGdAbMRt1f0<6bwB@A;!An){S3<5yz^wLSl#>OK6jG4W$+6EIr(ek)z z8cfNi32Spm{bkWa%Cfj$Y;2ewww2m53js&e0M$#`R zQbd0cwO<3=0S{(Wg)Oz;+6F3GQTL~I!9EH?Zz|GSs=~H4q=@Bs^>;RLKGNkygB>-d zRk1%-eNyZHAI1)cI%`wuU=`Y7s7ggRAVNOZCCriTR)d)eAV5y2N1<$$t<}JOrpRrK z-oWgr1e>ZwQ}qTcIG}pPD*Q<+?1z_z0om3D@OleI!SZ3oQw5Ot^7tRsE|iNA9-5WW zZ#g>1x|RD_IpB|NfmakiP+VCC>O*`og0HbueT}A_{t0NGe`CMG_CYsq7HFRdzJ;GT zi{yUHfPa8bG%6UiPR42KN1XtY4jp6gAKQoNU2xk`+?2PT7aeoJpV?8%tPuBs>elg` zfZ&uHlS4wxQVSjPJk8P#YO+i_uoc!z5=pJ=Oq+C7Axm@2Mma0_B7D$&- z&~nGc{7+qSeb8HTI4w^R><&#Q z6YJDB#kBnY@J3r1n^8+9rZzEufsQN@f+71NHmVVgRm^xG`d)%mY%%@1KMx;fu1*uV zm6d+X$o3nn2NmS{t;?p@vUf)1@+z~a9(<4Puo4z+@OlgCj$OnygntY~wO7NaakYuY>vy%s4LIqz&+}X@o^}XOFi2+&{4Al5Nccdq$$o4Q+DkqNIP$$Y8S31t#xXN!%5p7H3?4 ze?M~GlF-JB&l~Ybt=WXs&@wdI>uwopk=xxdNWSF{OyO~!LC<*n=sbyFP30z@uwoX(&wf*)K_W`9-XlRM_hN&2|4}H;ti33-TSw-MBSZT5w|Zi2iC^h zla@gwvQN|l(lx@I>UgwrXX^h@-Ny_MDUE#OHHB ze9naS{TM>h0~C@T0NhNk_muYynjRmOKB21WrCEzTW=xBKH`4^<{xDlh9Ggb{!l#bo!tc~}~31{Pt;dsp7Jvb2Y#6dsrItjL{ zj>zK~J4^a@*~|L76YI|1-R5s>%lab&gWUl+?(@08#jnWqhbuFco3p&{P-|9pkcu-} zuQH_*d=(X$ly4Njf3WmFyT9$TqkBzi8(kg^SIN1np zH01P*>9t-teR0{ofwo<*-_@G*bae$i!SKT63&Y9bcG@X%QgM<+ioXeOUCuXr2fVO< z;n*2-R7Nfy+5yrb8D%BFxM?{^?LgfEm+=h|)#!X2GiK$V_buIa>Y8r%z{dGhDas5s z&O2e$LwV|d*~Nm-n0o7G`{VOgbOaY~K5hM69J+-kEcW+x(XJBZuubT=5x?J4_8gE6 z{vG?@qxKY-j4+C-T1_Wrj?XK`oX?UN{%4-em!3BqJL$4PTH+N+jrIG}L!*5SD7-go ziDw0X^%+y_{d7ce^ZC(jvElPB-5hSkMn#`D?CBdFO8e%t%4mcr59yJ7CG?gR;SQc; z|CyWao9-0Uj71a0B7AP%*fJI7z|#H_i+uhdOm_sBgN-wpkp3>Y|BB6g!}2Dqhn3rU zdEfFSL3dYIXiIrujfrw|#ufS2(Xr&2Z#*m15Y4tXcm~E72HRSjf}t)&sS=)_<3}hL zmuP+5qthOj#Lu|QUEC?yK4(eLal}1x{>3MTM$R9h0s;ca|AU(QeDXYdR875qAW8^8Cctg?8D+ThqRGpsOcN;ZFK*?Hck_O`xIHt7n* z!r{K5g+c6c_Pym8n{t>jGoS}x*UXJJ2+^sLS1)2>YU0FTzz74F2*5{R!lH^j5%-Gp=6q}h|MN_yH&gZ7c+v>B zOrt3?rmT91SP2|e0oQQxxfVBK#IL&UaxG@vY>*w#HnP*%UdH$+s*1dUi*&ARtFcHeeF%xoio_LvEf|b znK%#%9SCOAbi+4SGNHk*I^zQe*0|PR|DliFb@BW#kukdh-8-(i>2LQhb&c)4ex2MR zfjQq8_k1px4IUt*?t#!l6%0;b8baWA$1K1=z_V#1+(N!6{21( zl%nwZLf9u-*??Rt~$Lhbizf~t(IFG zo0W%+CkRMr0s7Sh6eSR^K2t~6dxv;1Mj#pU<9ZTi?RYkqjk4A3Bz6INgR$?CNK5+r zz+~b9a|!;_^bvOsaPXJ_dP#RvxxClhtFc_Ny0QYg4#n25-M9bQ(|63B*Rf{R-V0uf zB3Y}v^OS8Pqp3`0_1cHGpFFlKA{GRkuOgLj=_g1SE1=_#)E=zGfApGDxA)J3a~fBSEMb6B3U9rTwAtD)OjDQ7lH+u4|TqR;i_&Zg7e{fST9ep+PW+6Q;ZN!}u# z`1XB6!8Q1xSFR1F+>x#>g@CFUrZZVnEG5#1KzPGxkKB7{Z{MZ&J@V1Fu4?2h*(7fm zx!~Zf*Phz|&rb8y&8Z^b?R{q)vbhZl$Y`_^wfQ%<^Cer>(r+F?{Ku-{A~ zpZ_)2J+9H59_l_{=%U(*#1=V27tJwS>5^Y*m37_jAG-8?AG!an>pc^1yyw&?2u;@< z*fZ3){DQaM@TSxHy)?F_yjZRhXOc$FPn~<}2i~?dH1_)Uf8_o*t%82@k@Mbi<2AeH z`&L|Z{TiAeQ?55cw!#V-f7W`1b6$ydaDCPFDe1?U_3dE8Y!y3$y^bA#Hs4ib2Uo8^ zA}{IlWCwWvl0E=<@PG3BG-Nm-;c_kM8&mHghb2z>m|I=VGdhM0P>UG22ac*A&n16` zCV>bZh^uP^AQ)3SL!02GCz9XuR56PCXAxT)L9; zKr9&xa@-}SQ*T~N7dt>DLb+9y5Wcy}qC>&k;kgy!PF}ikZ?JY;q1mCIx0iA_e z)r7jr{FI?(Lgo?3{Ip`LC0In%y$WOTn-GhCoPCac3;T?I%lZ+28x9-zguw{%D$v5APe4&6b+KH&Cv@L5~G9Y#9FqaOg8E}_T z&!`|cY>ta+r)8544UyN~qw!GNk~Mv(FydcxUwZ@=MUrsCU1+N+j~T9{u6p#r-nC2G zsW=;GYVT{NT4*o~ICxt2dgZpp_&afCsRyI_u}>d$eynh^uKtDU$;4Try41NiNV91K zxi<#q>MHEhhL6KrXWFPDeNEA!IEr7&ey>Sn|MJZrbZS65w8 zPP5w$RBc9KOr-X@W>q~J+|x!I%(7=~Ml|IwshuMfEVYZ|C!joTIETYC5dLmmGzPQL z*%ApfWt9Kb%$ML?fd2`*kszJFKX+m6F@#I^5wc*_U>tl=AO16ca$u4A9uqq{JF1o*%9Rl=_02_>G&^(eMZ8 zGY~LY>L|I`WgL&lu^>!dpuP%91^S9vPX(A$bzii~kC-pJo7nw`#`1cUb&{Q#_I#>j z&ALeifw^*@kmh-ad@}h`sz#dnT#+Wt7b*vhIwjJ>RYF3AkJk5=o0WKaUwy zNweAd&We25-k8JXKFywEzn&o(o7s%(3!kjTxh5x@XO?-)VO*pg&B|>yEaIOJ*AMn+ z;aSbs%j?*C*@r}T?_b$Z9neYxV}@AG2gM={gxwMjjE7+8?4R z&1gxX+5;eMXyEhoXFiW2WuaxO9qQ58MM|7yh59vfIRH`zL;cD?90?nHh0q89lqUad zM`Uw!_A~Z-VZBXt z@)~4o#_=hgX`AB4x|7TUSojJl0Y=W1gLZU4W$4Li0N;S%vySLN8_K2s{Y7lN@_5~0 zf>Z+}oS@(aEYw#=GtQEkP15`uK@H@LwSU1dyfy?XCemdp0u>P{k@FBFPpiL|w%<-( zX$y;t#YS6zmX;V#tolAE47RPX>oN5LXw36P%5HY9d@dDKg2e!Gl%e9{o2qPTKCko0 zoAv#T>>VPqewcmH(Wtt1Z0==bSEI6;Y!?GJ`Ak6qXhYmN%emSn*iB>Hw&;b{A1h%8 z9j?8Z?VaTmS}dXEH}x@#8i37)(8>nBnsvOxu)|uMtMc2M&!^g-xP$$@1E-U^8M*#M zi8!~>%q&z9{d^6xl!AztYk5iq_%l1Q`vV2qlr$IdY`MivQ`5a43w;X0;L#{EJU9lB5O2^mK~`c6o>k%DWrN`O%~9dxo+0mp8;g_U zKdwC<%#O1Dmq@z8Q@F?lID?3VYe9)8@XlWY9-x#i)&cKaQ65wwRIEmw&;qkpG#cjT zLR@G#n`!|jK$jgos4V|kVD!;U@B1-$_XC8>K7e>vlW)10x4wC(^9iYj`u~#Vbjz@U*l=2DfvHqR*I!hsvGb z`+-0EBKr>eG4N-TPS^7d;g-&Hk9s(o@GMsebval%eF9ZiT@h+_)bTmtb-JhUI?8YA zk5*G_r!SWAPqQH7vw${gHE|;>lsQQ+>VZCIcmO*JfCx#Amdcjfu0aGPux)BCZupd8 zwt{VDJJ~+=diEA}3wu9%kUh#6Y=B`9O3#SO8WkY5*04v#G=f|bAS-K=sF**^x-9Qv zM%GwLZ>7BrdU{D1rO_q**i{IWgVavPVe)6ulyrA~k&@!BU@Ci^`g`@UllzK3DxK}c zH8n;>H>6<3)!a!rh~nl}ibrXUk|iLuI2bHI0+dm!c(Biw}~PVTapfl=|D!ODL@BIDpcz z<19Fxmi=%RFl4PDj|E4yc&ZUnFSCY>v~yf5E2K%qAd;evMtI14nVIpBPdS=()(#Pg zNmawZl#V!vC9W3ZZT8`j^YU`iqBh-*W_(i^@}<$#WZEWX^1(7jfgt31A39%;>c%Tj ziR3Mw*^*V%)J-qOwUQ^lQ>JZVxM>YxX-CMFC5M`~He)TxZ`1y_(lYx5d)(2pZ*j?% z_@K0ZPF9V?yc|8ob3{ygKTg7teD`d2pyfCtM4*pFSg;-$A=_$_#QAIDJ$;c(lfNk# zbSF{KNpI{wwJkt<+c6G@`OH_sLabJyl&WV*Nt?nEKX_Oprk{G@{PX&w`MzsN}zn5sNi9IVi}RU0Z}0w6Kav#&gFf$3qOe>CMqE>i_|Iz8oj#83CMlFng%YV&dNdLxGO{n8%99)1aUBWnEM|@16rP`>0hp3O|XNaWA*WxQHyTV|TC* zuurfrVE^6^z>iaJnPR4Ic!G;HWc9^m(qyQN8)c9EGn+HATOEdA+SjCM0~zZU#3Ic?v41oU0(cv+w66b z41VM55VzNdv$zjG&@K8E>JG@_Hk~G59|cR(cd!T2DSuspsmbC?`t>Dw#H);GZd8PI zmZ_g4R927M79((Ti!JVBW{-qG&UiBm6^v+j=7Jn$)V}%=p#xPtr46;mQQFoxJ>1vz z?NT+Us|jpU=hrV{*JdV0Hw(QCl^*5Fxr12KDDNrt92dtz+LmQuY<{WHQ!532RQc{N zDIp`LPI`$6cMA@o5Yz}L8FCN6$|jH4KbE?O;hIo1$f7e+K!q_Sqt=)s2+{aVi^p%b zXlw&dvS--~j`@7U09ttQOtU%lroyA)ty+eIlv2w`WBJ?ai!-#XLpfHb&#LD5`}Ic^ zQqHdLM6l-UGh@5WjVz0|w=~6t_s*qIN>C4-j1GXcoKe2?G5JiIraNiGGhJDIWi=j+ zsH~bYfc3F(Ja|9Q3#FBy>MX`9udfhytyNY>S$%~-NPw5)0sv~RjM$gn?et<8-K?g* z;(!eIO~1ZUDAPLCS4x&tfG9H>%mfnvajB@ci(E}8?evaYsg(zh7;&?G+2qt~@&`o= zD;hgRuD(+I`X43rm0C)NjNyI?z;MH>sjt*fX1Y!M{`BfAg|aMGUonHLYgM-_6>H5{ zeWkW$wr&*`+q$Gj{kkTR_to7@-RdiadiW;xf2zJx(+JJU`igCR(|PT5eOu*3eWjQ_ z%|s8h!upDHQC`{lifvgI#^$Sx;HP|jMdi4*#^!n)S4V#{MSX>MglHTGy9jifIK4=Y zVg=pO=G9khOF@6#+=(ha^w}hE+$x_~{&oMqT3_M7#r%R~j2qDmwGph7h-a$4Vq1rv z#ve}Xce)P!Z~f~l)Nj#u4CL!)ovW@ECPFa?luMFon}ZwH(zXPZTrF6a;XWufN-uO- zac#wZI=weO0&LL98a9Yo#w*I|L!ns?2G0ZNa;ECO5_!mfFV-xM3c7``+W(d(d1{<4<>E5 zjx}m~a_jBaD(M>(&M!I=ZlVvNib0L&>}#}f=(Nfo47J{#GrlAJrnxeGUxU?l90Z<< z@aRrikWzUpu>hknn@EZo;Q>$u4|i}72-CQ-pbO^2LfnrnxryZH82$qa4@AKpA}}UU z-4LPcMuwL3)!zK*xv8|$?&b#DBF=X^58IqSBwf(By{19`7hn@bw?uEM zPCephTUhz0>aog)_;7x7Y-(W+?QHL)ge5gI;Z222wan`Y;!C4>w9$S7r$ZfIsdzTe zwkUJWU%mHL^(dZYr&Ru#oPnB%shd9Kx`iBvw!nppxNG|9x9;}%Ale)y2kdN1%v49# zWQJU-+(2DY#4hTdg?#xOWOuR;vPUpq{ax%A{w@0}_wyw0;fwjox}zYDne_@z<@{ef z#%APfABBA5b?>n@5?97o&Il%?(%CoXLeHnv6tMW5n{9MbbO|!O ztco7!H_rrEa07yj|6Ym~`T4Z3*j~6YYWN(}c$xy>fZiOkFN|DzKG{JYm4*wR4&r~h zvpb>|N+>7GuRob*)11o8E6K`zsiJBo#M zJx5^rd38Pe+MKIC>e{@@sOA~pk#6gCJ-u#i*o~vVuICu2-hN%rwutlLx;NCYu2-lF zv#YM>m|W2;$sr51x}I%86;4QKo~3wQuh_LeYU+Bq23akJCG;9wu9-h|UC*|#@=w*F zY1Q=#WoXp(oS0B{qOOY+EOuz%JtxcEK9}I=B%d73RUEt zIj~9%##nP$_OcZ{+tMPsT||?h-qqt3OrPjUPSMq=Ot0w`p0ziz|6kK{U}Y*m_du_t zWte59)~?xl_e@{B)`++!6J0)y$e%A8Q1vlo#qXJzYj4Y!&cKXKP$Xtg&RtEsrX`VhGdp zIFMYA7>>eJhTDPb=}4wNP_zy=Zu{Ejwz}%4UeC?T@lDl(ZzWdQ5Ts?CH)bxOP}Q|^ z0H{H~&tERA&kk0?H>Joac?X>++<-L)Ckb9le6i|#`8iDMV@=AmXsX#r=?t~XHTeoc z8WGpXKnR+7xy?PuHyV2xESwX)7}KdWdzi~K`ZHCd-_k_JE(c@$&MI95oO-=md8ANc z*2`F4x`!&~qr#I&rD)-zv{#^^jxzeuh75^v)n3)j`}>mc(o=h9@K z>q~uAD-&Mi%-?zR5MUMR&H1(W(a@afK2rq}9qHTc)1&DxWkIJJg!kYIPosDY=@5SQrSg<=43Wr0ur)ACB7W^jIG%tend;Cx^ z8}bD?Kve!xdCYqZX-Ckd?TQWbgJH@|ceVq`;JK%2IW^G5ddW%ujrB{De|1nTe z+bf;>5L(RH&Xz?dE#(BuVlaY^IcVKYM1{76YQV<|O$6BoLv2l2lZm4eG(NZSohY_L9OfDU)mmxyhQ5E%nj`8ss3+VMpbu8kK9UHg$5)2T2D*;$1?C(<_y=+ zlmZi@v#)6wDdlPh&T+1NqtA|;@KXHALNkjqtmZW89!2XJzK*>MvymSaC)f!rsgXCs zof(tGl?+6d5gLt3)+|s?Yf0+VC@STI+KW>^k(0+&jHu$DE+*tsd8_k%6hp?<^ieDW zlVxOG!#>Jm6%S7;7da^D&sGPylK!TcxV1A~swP$+PQ;8QHmVGXWp%kVl&(49eU`e> zw5Q{lAfdi!33*!1(SOlMLrt2Wxmvs`A<9`wgR@W_+e*qwb}XjCBv<2i%7M z#RLw%JpXa-$`D?I>*(e1@4?)6nmw;{iM;u7im{}-aVm5do~N!QhbZOj&=9RjisJuN zLo(+kW;wo&y@S0QID>~Bm18woi3Q!&UtY4-X{#&qB{p86WFM;n-IWt+jm0}zB`N-6 zrG-uSSRLPGmi0yKjqGg&mBLz{R|-G1uro2i`^tm4a$`LAO;>Kp^R1(uZgf@BJlND3 zh>Td_I93do`BWKWzpj*eWQ@kF`EkmXbcFcLm@Dx5VnfT~A&%aSyD8K07Q!GEt|1iX zOz&S5UVCD-&hKG3c>PU1HFvy12$yB)%=9JmtG2N&cRZjUEE?ud#n&KXF!`!Yz`+?4}zt8&-Wm zSh>NigVR2%PjwHf&xNP06Y$D>lq){+#)9|Y(Apu`1-SCVGlsRY>fY7t?d)#$VfID# z6#Ef--T|L&R1%T4lnJUVjo5l1t&DU-IcM5Bcy$r)&9^#+vzm_n>HUkz&z5lT`_$4| zEr3>K;==mG_m-Y-X)M(g@qLY=Kn;^q98skdQyn{w%82WOM$@V|p6Znnnm}>AnnSBN zt3q3Gy8{-&K!}&O5SI2|A<8N@kFNx4dYqrpdP(Y+nn+k@&@7V+ z+2636*n8Q7U?isf#ZE?oE~6DNqiYMN9YO9yz*v9m)O0Mi@|;K#x}&LApQ<}z%FL~0 z)-{?}&F9vtWv1bx_5+Q9VYe`~l9v>~qd?b2lP@%8I_<>#w~=MbJN%0}0YdosS8Thh}}{Yu9`nPqYjBH}w>Q6F_w+tDIJ zc`}!WHP#IMlt)1~?SrD2vnzh1U9^)O5$CL-V&qSMw25-knX~r~}&*X*d8g?_gi+#k=GYLys9hzwhVG*LK z20^KoMaY$4nQAP=+{v4aR*Yo2u#|9-TjcXBEM_Yi^?uZzfuqr@Y1(kAX>bdQsW#Qi zBNd~RYGNoc)V*aP{!v(>7s(3lS%`Re6BST5;n?Z+P{kfu&mQ&V4mp}zP?aBekXm+seV#qZ{*C>L{h2p#nRoGp4oJ$V;UP*tcA!H!il;}X zTQKN2HgQ7JNm_Gd#)ZcoHpq-CF`q-qiQn#Y{+7#&C8Whtg%F`yr2)SVEj=#dThtkd z26=-&7Uch`rnJRTL3WI!5ima6mX=43pBsoa`~A^o<;AJ6K)UamnOMFw;%5q|0Va)V z(SksQSI4KC5kEDK1aoONDpJMJK1WJMeG&LD9q-f5=CN_Mf$d}$us5)`vUeh;Kg>SK zzKne&`O%-o2-KbJ6F3}8B#>h@8(A_cl4$U08Js=2or8;q69OQF1!#r`L*{M#V0oV9 zXhC?!D_Zc)6+(!pesY)sFwjjX2Xn!g0Sh>U`|y)+Jpc;n4N?A7k;f`mtK}0sP8$+T zYvb{FgWNNF)CYaM5?GPOv{ucB$a}2507p4!P{q+73>3CBT5uOWr~ZV=|CkDQMDZx; z&DUJ&nJ%t3|HQt>{`2V3n`uLqXl0*%?UYA~Xh)u4a{4fZCh4zPT9f3;VN5frPvg~5 zSTPocZs~ZY;<`mP>8PYgYX%3*MS%e71@l9E(GzbPlfKI`w(>&+J+D0{d_7;!V80 zZn|YZ`Y{#K>WdiD)uX;HFzqm-mwlDiZE^K+*mylbXfYAbsr5zcnIH!9kFn3PuZwu@ zMfM8!aGW3uAS}laTJwA$W+nh}8h6%cH~FY(R&i(TacaueoH^G`ZRr@nzV7S9>LQV* ziO{yeWrJ-jfl{Q#g zk$u(?eP~~^_3h+Uhn25BPc0x4<%M8seK82UEx6tJL1!9cl<~U+VfhRxkC(3XNHz*mt&{+#_G&lftEJ=#9)wd1{;Ia9#{cHyD+b#40Y>UXxGq@tfNRjgLOeuBk; zSka}H$lToFtg!c4QynY9t!GpZDo6oUGgVE*miJga09Qsd!)Lg>?M8TBS;<%9vsd}} zirXft0eoMZu`I%xSo6wOY1=f-tgbqAtaQ0)iQb;t#oBr-QF*dAHFDNb`-4PKw@&2~ z!B>A(G0L`dfBenBBM~l8ucy{4BC4jnZ9&*tz!fvzx~hUta7C`vsT-2g>0b>MjE++7 zG^xPFf_qHZ-rZGOGF`W(inWg-%#LYz(H*xyiN?(3e?raOPIX{-ALYK>MYdfYm|8y? z%VCf0E6=neaZ2WOcv*3bax3z(CtNB1gDtnqe$9~KH!o57n`}hc7!%yaC^UL^~ z@*?%wT(vr8pwG_Kz;qv1+6W#z#?aFC&!yggsy;(@9cw7-squbCTMy0LEh!D-scA}O zD)&^9K#5%q#i88xbz66ORqOVvcTA1=Rxy0DC+9AmYgL$81F{EBTucQEu3e)+;*QT; zJ&+F?&fkPBx33y@!jWR=bLy!Qj*oEW9@K};Ga4%I%pt*Y^eOfg;I3FN#@=N?=_tn& zD8yP=Bn{MeBS^B$ERrVJxaDYD9%fn0ZFy<@fVWfM8YLRFHz(L7@k2(8f@iYs-f65L zmO9k>#dvlI)Kchhf|gq6pyyZR)6pH$(iY?XRCMxZ#5f_fgTVkSL5O$pg4&+var5K& zRrm#_TCu(RkxEeJ%1;ga>1uFgKS04X_Q#~8_HrXvIooA4Mi1xyHnoF0u98vW@13Wv z6IWM@PyQ_L|fbWXSWVDnlO4(4ZB*%F)fwDI%?Gx zp%#xuQ~c%15$E#^)%reED%<`j)$9m1cN*0T>YvQ@L%QdwB2 zOGD7>s7Bpn#E3k{3}$Y(0(~_gdKDU@J1gj$&NV+>W5h2|RY1A4I2JuB^rD>oQT0N_ z4%^ob0D4rCV{&sAbPviRCf{e*sacFn=}_2G7L1wO6V)kEZhUo>dbuqwtYTM}(Ga$vxH+!d|x^&E!rEZJg&YkX=d3`fLtAubcS zyA*Pkm2V=@{Zu(iTf;Qkv_G~utX*2Kg%2`f2g2!S=s$8mZXo!Vfb8HJV&n^e4j>8bEk09-Yb-eNHf# z|C0R=_oK(y!x*;|=`5uMJ#LyaHdPhh$Ym z{WUBmt}>AE#&k}-u9em?n*aM2CiKT|Eus?HB2IN zasF1#lp3FlG3tGM&2>*1d!^PJe!zag{&=)zj^KZ&4n%L6vX<^PC<|sZq11~N6>w7j z&g3SipKR7JBFEGTOc3(lc_TZv#l3-!jMvlB7ENbUzm3b8P(N}KH{ zXRC6!087?6+dQeM@i7%Hz|xDGDaV;>!SN?6CeZ$dp>X_ogMyKFm-CRh`EC0dpIiXO zFTBSD&*vY}w2bgemDSD2BhK1Ro2AuT8fkBFoON`MMmW#PA?}rD4J~@X#3FH3IVGxL zY>%=*Y1BR6qZ_6+5#xWktk3)mdxAX!p3E27t31G4_*}k}ujQxkbNOrdHM24DH?sW3 zV+CFKBStJ9W#AD%ZO`f$k7a)Opyl5 z3J{Od-D*@^9EJb1q3AP{vi;OR5}P`cPXvPpg54>);S^0%La)XzP(Dq@Ta-b1T1@+puC;D4S>q&0FN^a0gvhWVnf8}#|gzeL>p_3;$vVSFO5U-E=K@$9^S9LdH!VVC5~ zba+~P?y&MqI2&_E_&_+Te0TM>rVVdf7-(qC2D0aj29^)`6Y&5KD7$<5Jq_)dn5&U@ zw9>D?F%{?@{R(3jlv(DlXE(C@*hlLm^ReO40q)VIT}5_m$#Pr+{w5*+0OX$uFQ~cv zhu*kCPD*Kc(V0CYdwx#kAbEaYTZ_i%f`6=s;6LMX!BoOsUq2^Pal5D2W#go|ciTFrB;M86ASCV{ zCV`)5)xW|IYr>F24MZPW z&uZS>WZ&xt`*!tuq7)l=+zruWJS1gnu2BQ8T`s42N?xc&2K*+6f!_R4xszgwK*%4G ze9=V6DLw4zM`FR-+k{7{AHW+rOnj0m*I<}+!yiqs)7XA?rLbfVVdLI6!Q%vc83mCJ zM50<4DuP}qVTDK{fP)&Vv!mI*V%v|Bv^yJ7vASS55qFF4EHo#UWf3kjCz$lJK+MP8 zUl8Hz7u@l8)gXLbH+thbxw)}b9=UL?FVP%!d8N119(m0l3Ss9qPpZ-FuYG=gMy;aT z1-*U=zCiM{WjqZ&Inn$tYRX#!vT^8IsW|v8>=yR^I(f~U#)+)QtPo`o(@sad!`G~o z6H<#jcvi1)m7a0{X(P^!%i&;W*eRPd2fneTJHcJ;9b}fiYjm)S!=f3Z*!F8K;`%nn zw%Xo6HMW)F4yLwTOK*@FFV-_$3pl}oS*BbDu)A2m?NBnq^$a$Itaj6yreLJ2Y4LAV z(Q2S%lBFMcWjx`JIV#P4TDltO>F@G%bp}1DXN>-z8Gvl&CP}jab{spAor|r-2iUFb ze)e(p1@;~G6Yv}9m5NT3BPO^*K~0Gex868nS0}pU6xn#anT|kb&BL1hvxenXS3=%$ zoJfNnN1$9s{%rnbzfZ*4;YgsVtJx`Y(%IJ_CAwQA&mdWoH`E&}O!2xG_UYFmZUF3*bY%qb13jvR;liw#lOx&m$u!nJD*77(R1- zBhlzwePdy7P;|R|ZCSM@SsbzlmR*Byx0TIdV{8pOnVropL#%uQdk?A{#O~4!N?VoQ zHn)QdZA*~EAxvi*ztR|Ff(XwJ5Om}~kg%F~%04^@U$sb0 zAKX;FKP4KEWU2G3Z zAdy*~RpSEu{GGI{6HY#_ek)^r*$ok&kKnH2c5lSz?Lse~ZnM`#GWdjbTAvCOw13Ibe8O6gQ z6s-jtDHHidsTg$@ zaZqSC)R=R|GDfomEtoi>U7?*N>g?R)V@@1xO=!-YO0$&oH3nvgo8Sv8eZJlgoBkR0 zb@oFb_y2oFa|2V%S#QW2|4B;z1?d59lq;N213D~qM7cR&4RofS$-8F&%tkrwQDI*! zz^Qr^p&oa-8^Hr;_87HCgV(DbPF}W)mU2J^ z^w@Or1-k$#wH~Q*!R6};&5>a~cqVJhW?}cEGO2cX0g?@?V>e@%ICs+k`UGay@#}g9 z5K|*>oRs{L%Aq!u)trrW6!ooaRa0}e43Iis-cp{b7=+`XsFf<$kZbvy%1>N)rf0lg zWG*t7#^BV$Rg0cqDcFqz64gC7MQmljH7Vi0Rj#o@`Q6Dr$o`Q%&c4n5gZ*0D^WDRT z_)5NIX0wH31$x7=wEG##J#eEObRze-{20UDIB-;Q5zgeX2e`q$fLuSYoz2tw`R8c; zd^+Ec;CwTSZ3K}_t^q3`jh4DXR1y)G^$2Mm#3&6~V+N}yGvcCLq5r{L8&2Xm_|Mia-0Vaj4PSOrM5+}VC) zG8(vozRl8|8o+`cI!sSeVHVYcF|8| zeuuSI^oSf8bZ3_!gT}$jCxd1#IuO#;((yPIUEnogSov<`{FS7E{AIis%t$4F5V-v- z{b2Z59?1Ab*Lz)yF~PY47%Z9%ydUux<^x4}V)1BlaR>3IH77i1-$IoAsAUZB*l0gU zSR~xr9L9vFr`t_S{~+YC(G{qFG$zD28Sd>K;82K>zA=Dqpc6^dL%_Y}PIiF11^13j zfPHNY@1iEd9uS6wdDYiPx_kSnSl^tAZrLJbCQ@@fehxu!9`G-hvS)lTgzsoFT?#d{ zr*Ou3mf&e5}%+A`qk5^+3r#qU4jM(e0;} zd$RJeYLr69_Y5)O;URy%j%^34-fP*LG0Sp4Y=G{(bD%q83wT z({O1xFSuURzmzsm^gD?{ru5QO;V(T(ea2+8@Ui;F_e!KaRQPnO4=?{#*2fxu0(dH_>j`{2rusdnCkS)i2_Ac1)za@;8<&3#dcH*M$gu!jNKb&|%Q+5wXOUA&1?DBvy}ZYqZ2qzkZzG^{c&x+MGcL2t5 zR_o3`qwTY0R?-&r-L)lGSzWee%Z}t0_r$WDIBqFU>~yC&#da!591_w4DWpO|0;B^0 zE(ExQ%cCX_LMVa9&3kY!_famFgnRLemiL{1W_D&)TczEVV_#xM+jn-(`OkmKcfR9l zjJw#0PG|DWKudp2iAEH6&}}1NK_3M42`vq!P$rb82 zfgC%CAXM=^WQEwzW!Z{udjUk~V4fr~b>ezw?ZdP@!@fgX7OBwm2#WsLQBe7(Ss!YP zjt&D5z3M~S*fzXO_c1Au#Hu2UJ)aRqy43>RqTc`0Ij_Yn!bfTMD6>N0R~7%`U#oy- zq2gP>1(t$kRjGf?Cq7tq6@%Rg`RO^Cjp#DJ7=7l%xknM(_wwe-&9em3Low5qkm8hT z61xUPbfW3Q<2jt04yvojvDjwUe5wVh%gZYKl@`Eub%B6wg4z6;$1Q#&LRO89ThbuZ zkJ4+CI{~5YS2!L@k*ht`VeHY#vpbe`&@xCwo=n|3jF;mfcJtgF7wwpfoAG%|IH+2S zimopN%pFw)XEpxx$%Kz!kB&X(wnoBj!)XBB>kB%3mtL;{cNMJHS0ceD=^-3mpSN@F z+?~L|MU)iG3vhA$>Ev~J0pD2mq&rmaH|x#_RzERId{p>^@FhOqJs%3VSlv-Kl2R*= z#J8#OAjAPH1VMfz2&(+#rDFw?Rhi~00|c&vGT8x{b0^PAX;9(1G*CElyl9P@*2Fc+ z?RP7&Pfu8*M&BtGU9RdE;mghXwL#dabz@St_$$J9^5%vM)Gt^VPIH%`6Qtz2mKB>W zx{UVN1$|t;D8CJYFokh?GlY#$%u0&eyu;H z*&>Qnh&@)VERe3eRUU0AwSrVQkJS=NmM7fa~wKzImx6zu>3?c2^91bRG-m{ ztm-}XtSxx@YUq^8Lu>d(Cvf|-pLeHyE`_EarHRp{(k9MiZZ8;2O5cJa^E;qQzh-V&A1)>sQ_E=bMd6ZVSG`tLGUqIG~=Lutc^T$e7NR3DJuMU=g{8fWV4>384C9VDJWUCn`fyV&JvmR+ zh^!g2DV1$$C|Wb^K`5r(kTzWpGG&()D_}7Rkg__YV z_3mh$zc=1Juv7^YBvJJawxadOYJK&|>l4qKjK0HTD8MiEobAzcOuPqdT;Uu0TPVs+kTcNY^(7x3hY8YyxBSgv zMXQb91zRK8y)7;OcjC6@_B2=&7)Km+4MBi%#=tQ(E&*$-cY?47lPhlJY&oT|ClbTAYS=d!@yI9e}H-QfFL`+G!NSbC1pFqB@PoRE;dB87j98(h% zrsi}x9Oks~Sa4!tK2BOZWNBU~OeKsU-(F+UD9czj_E?6cJ$;i1c8;zzG^B8U_v@D2pK1rL7w!@s5kAA`^}QwhR(Ow9 zv1-=BX0rwC_!8xREYd7U8LE$(jx=K|KNj5>qQBHK9*xPK?=&J=w%iU9_@T9fHy&$KW$$CatD^ z#($JPCjQD)CnQ}d4QI6pE1e6E2>KWsv4XTsZMCD(qJJtSxg0hhvlR$|E|Rm_=sL;N zIP?CmTxb#7=ZjZ6e91$;I6IFf7VPsm&>n>Q4t7={h-WRpvJYQ}g7c+ffT42j6%y3rx zaBS>I~KQsyMNHV}Pzm$6vj)Y{*g8i!{UV!L-eVD~Met_l7Gyq; zmaSKd92!D(!dr|kx*S`~sz`7w3N@%=9kQ-LmFf0J!v7Ke%D^d;2Zd95$q})OT7u|r zV#Xa)*IK24sKwE0k3&oL`|Z^+|9+q2MpxYT|9ENx$6MhqPde9j5wVqCYZAXSY|B8%>mu9w3~8Pqg@sSYqA(;(W|O6@So_YB)U`nxha z70H(4kZ4rDH;`)DoO98+zFtK}^i%ly3t4vQ>b|0GlTD~cc18|)sr8D7GRW&%^ea6) zL7w}z zUQC_J!c~!7{-sQJ7r}Br8n2M}iv=-?V_o%BH4_!++%f%Qd2!ICj}47lv?(0S1z9YX z4?p*c&llo`JQG2@rkYfD~Y03W1?@()zB#(~T~5V(S%apY&P=QI<$Tpam@t@rE| zNi7|qW&<#|MC7cm8aX70V2L{tbjl!wr2#lTrXo^&qRQpf#^DR*R6;n!-z54Nf0s%m ziBAm;ifyevk*H$_8PU%=?0l|{*p7Rx_Aq@AUI6}Clvw)uDM_JnI1e&F6ijcU4{8@N zc}Gm06Max$aUA&*(?vFXl))4yoG{Zj$s9&6`IDm$ub2&UqWj#Hu;Wr;IK%8acWDtO zIoZ%hqh;Q$Q_gr^@F3ft!$+I^SSp9b&W;T%Y1u8`hRpuW*bhxWzzLg@0um_LiZf&U zoGQjonk&=_Gr^X;T-e1qEpH{R-6p1whRD~NBXOE^Vl|E9|Csn@LSte_6n&C0C{Ah; z`MfVjVE{h1CU-~9-y@3`N8sl0|JZU_enCz|aEP;qJ^lNhc;>Ec)%}C?P{&OFii>Wz zdh1M=SQ~HXF9fK^zSO>Y_UzT|B zR}EC3eAhFNFQi904&HFlGGF`7gTqR_t@hmf_&kygVY^k?3kqT^hy8hPx;Z zyFQMu0O1tVmu1D}`vJ#xsPso{7Ojf?q?n|OKu03TqyY;V^knGMoo5@z*;nK;OF4> z?B;8%Us$5?$`>a^EFidiBH*S4tu9-3;9Ncl#pWn=Vz?y|k1(_orIyp(k@&e!yzuee zb^VJ;I$blWPq^xqgCq6THYL`SeBTOR(jamLN+K??a3U&&ty0*r`Ptjn+D^Rt`KK4r z`sup<&_%~d3(mi3iPGd!zDW2jde{n#1OGd&^{Y}(+OPCd8jR59W?hYs+818=#8V&H66oi)a?UL8 zvh%OIdPj$ih2r%;C^I6hK)nf8c({f7pO7pqSEfiJ?yM;@+&OOV!Am1!n<5K%9=0YIgw|GJAQkoOQ`SZf& zmRlMp1E-7YZ6e;<)0bgN7(6n)U7{QO&2~YMR|3tY2#GCQ;GZK2DdX* z8?f7lP4@p0_leg(`q0&@-E-%Y{hvL{IdJ+F`_EeJz-Xb+jM78S3RJRYcgPuUbh#W= zZin6O57jzNF4(`HaA;do>uGm9`q6o$ZL=>uaN+8v@QQO6DYaGgUsGFh2TH-hn8{b8 zxdOM1Uxx~Jq|J5V92l~EyG`BkiGa`B67WQwnLM+suJl?JN@Qv|Gl8}Wlw!T#XK!io zIjU@~G+*rAO^@#%2yV&jMej1e1g7t#x$p;Q3p{{ygCMA~xmfd~=OV@#8CQ&B9+T!6 zPrzfAlLh;gZ(+*bxI9ePWmqmC+%b92AJW4eO-35rt1zLwDa%9NctjqO6MM6SIQMPJ z9O4WG>#J(d%mny?JhU7T>~5VfP3Xm(rJaxmVSgV1&;2)qA7ah)(4;LI!bPoLG+n$& z9i2#VBp)FSuPXn(&If0hJhMt;wZsS8mTXwlTOFD^Ezs=o2b!9F-HT^nGyi+jOa)g+ z@wst`xV#jJw6m4xpWA_ zjFPh}4zUvKhzEXxctG_lDTY2*xMD&!xyHJ!({wmW#3ScUlin~Uu#YB14T?=jxzl(l z>nx(YHh86KgJrV85py=cd&Ubs_iMzL*a`M(;5@+viw_nt!Y`p&N#s0YBx?U^f zP<%^#*=l@iQtXq%?VwH zoDfY2DfW7&yw$Ou2AN-L%C45GOeMrR$Jzk1J55^?pB=jcm7#@m9V$0{hpv|}0v7hC@}rIllbqpl#xKlbH@`9R(M%r3Wyg_+aY+%BXnYPV<=5x) zX>jC+?%}gw1*+kb_o)Tqd^gAL4g-ifM-f>iGMU9xQ7phA@jmagEoYB3B{ugG8nS+- z;-B6(yV_ob9N%A+_6XdtF-f7vq@n#!eDcGaQ_iD2eC{<@pV}=UyPEuE?mEgISzbjh z1rF@4p3~>shR)nI2%tuDcXv!|?5tB7ox$Y6U^N~}OX+-J;{z9T)NQ-#$%j>+?<)9w zHB&cVeq1oh!pZlGr7{y}7R@)Muk-kzP3RGbll*+)D&b~6Y3(IM2yY0#7XBo>&s;3R zreY0djTQ(yfvQJ_U?FolMmk#Pro;!QEg4zer$pvW4>Y?2f#w!(&!U+Wd3c*+iaTJd zO1H$1R;|AFu}5!MFV7tyHE5sd8a!+Nfn5UGZcr&owzSaZXB+M~qcy(s&L{4lPrh*bzN;@>RoA#??_wn^Mw6ExeOQgj z%xM*h(a5vE{XK^pnX^2+R`moj^E?%{mm#0(Ev@OUs!VVH5=l1?gfMhU{`k>8XpsOPQ)cmX8UNFn7U3ikS1-7dBnPrvQGsR^ zFBVR~Y0dFy6;1A)_nfk9RzM431LxI9Ubb z-jNgIj$*G-J21X4#mtGq0e_XXQcxfqV@gC}v^o^E;Yg>}VqsjG>2%3v$bDY#0pKC% za7I))K<*0;$rs@X(CtJA_8}U?49LVs@EHDfBye{Cty=HW3zD)D6<^En>NSOcHuOQx zG}Rn9)8xO(I3=9TbUAU79G4H!IUevnmHGS8Duw~LXd4roQn(L%3Jre#6QM#$=%-iCfGfqu|@d8!dSA$(Ez7OmZE+F@O5l~IUdJXb3OB#VmtprPZO7PoI~ANSo7>%f7vw%c|KX+p1ZxVOBg!HbpqwxY)OpSrIg-N}A+f zGrslH#<`RB&XQMO9V!_IogD{H5 z=}J-J9K%>vBYkGvxc8z-_pmK{krm35MUoXsIBGdW4e*mL*Yaf+Q#pfdgDds9mDzmK z&m*7s7FhFgtkFrAc?r=(*>t25j_ZW!l+x9ze9moZJDKp9%CY(Eu`$t+tb0f{7_}EG z^U`GMQU*Gv%4vrl`efi`(qiC;Ouj(6yuU1bHi3T&e0u@UP zMLD>rh6ywL9drHk0pV%k^O%PFKQXKOkHRRESv{M<`q>h;f$c0@yDC#xJ!&v!=?bnB zJUw6(+?A4Q_1>clg_geb-ZCH*8%ns|j^??ChCN94M_v}bo^$0-diJ$I7NRU($ooji z`^X9L%k^b*LR8dCW)NJu@_t{&slf5@dE*O9>v*L6(!3N!dLG1_vl^=xIlPU@kBKcF zP9YeIij)QW46vJtxhP!)%2(Ob^C4Mh6;2p`XR{!`Eo-wvZovfcca5%?|8>7J$d99H zOExfSw2>%i(@4IZ0Z&(c^xgOUF4qBY?DONZhBr{sip_QTxs>wNaP!6?;mOvIV&ag3 z;CO#=#{Exng~9Ph^u%ll^|@(`8YUf)ILt_d8uHxkjvV#jYx?M(Ep1R)`+&yCr2oC(=AJh+gwoZJI zNU^+v41vS$`wQjGn=|hKXilVhWzUX4i{G=Vs!{o-5_B{w|EN@t2AXaCyz!;a?)TXH z-LXcydwLaPb32*S<+InseIEDX;~9Hs$+dHRcHqj}_w?HqU*74Bha~TUd)BeX*ph`l z-0{unVT?G3*semr*~=Sh?Zg)&dfFYH=2)9jT{S~$jPv91Hox*X@gyjZD@|+ynaZh(o^3b~5yKy_=X+3{o z4S2Ic!L#%43)D|dJ%BEtIqHNqVMy2lhJfoh@02h#q;&w6SFE+vS=c{*`#xv;Zb~g} zT3v22g9MDhk63+*ih^I-2`oH%JuLT=ze5nKVQiNZSbl05<-9-+M#XS2`G1RKFc`+9RQ_02hcy;3iQl%at#i`G^XZ;+(qs~Mrv z%M(s9l&BN!jpY<2C`KA=sOHyFfRTaOPY^IK>F<9^TdS(fh%3C}ax%L2&&D=g;Z#a3k-dzxm3K=R)SBX70S*9i9rj|n%_)V3vn=>^?*{=q$roL(uZ(!NY(Slmy^Hokapn|4vx3Ctfz4zpw)(A17T{vDi z72KrP3AaOvU0T?fAYuy|0D}L}sqJUwi#dCGfe$z4mRZ5#?=Bx!0-h$Ne}2u%VOsEk z6Hk#3mNVQ0or!orm81p}udB5+#{zbRRkhH9bxf;br<5tS^asIIt#~{KGvUPbJfqo9 zIU7vIhj;n(GhI)7gVp_LD zY>3ys24A;=$nWLNZp;y=mz>d3?+~9GzHBDnA!4WWD7ChRWNYPl6VZ<+2x+m_MPNs& zn1@Z|iQ*vZr^JW}s>dkVfr`e)HD%B!OHM0n6TM(msA>|EZyWZy{9A;*uhSh4x~M*i_a;ec=pBvPU5V=7@`*$S*!?KyMz4=N$#9CvRovwYNy1!1bd z%b?-2m)D2vVqGF6x@VVqO`4L63mpC!Wh!cG9x=EXjazD-f;bwjd%%sDKtL=YSV7wU zU4Fk`B6b&Wf?&7NXh~UD6T{L%{MyE+i7^^d26`--*@Cr(VbIiS%QMk!X0kapXV(S6 zFpDZ%Pb`CAA9W7*aZ^5{o3g{T&WZ9kF7K>j#F#HlE43m#v+TfZH@WZeoqZJKB(I(@ zr=!lZWY!mAsRf%)h4LAy$8IsSR!npSo%959%)c}Yu15S=e!E)}B-cFoSIwdrXTWPe z#Q$ja#rFya!Mgf5BvesvoPv3@$`lD?u7rdBsAITaUBW#!vcU&6_dGu{WXg4yV&!n% zpIUyfoiEtLsaUX5ee$YeI3hFEht39PPbD+XBy?L5!?>&{Qc`)?8{6egCQ(J9r^*%31S*VX^KokS{6l3ul^A#ym0` z!NV#_l&_Mt^`5CVgc(8=+PzcG76^3=9-VMjToRje_GRE9tW$PwE{B*+#a^vc^sl&J zS*Ob`?{<(jF#C*B%hv3N*#oh9Ta8j%n>^ltr)3y4TdQHm&HF3GLauRtR~eM>QTr0h4)fuo3=O`#$t__p zp;-Ea!Y5W-qiunw^#^GSy#J^pE6ub|t3Gt4^WKFrmr@yz5*g(#<7s(s)ve78ay$|J}y3=cyxv=dyd+H|NYMYDH#q->~>ne9gL@^|HzeVdzxmzHT z`C0Dt9)4@j!y0g#pTqI81#p|&%pFu#q(at&Mj46D%}QcLGGy6)**@Mv#ha7c_&ZJ%gY0yUNrvXjI7<#)St zGU}DnV@~z>Wuw#sT3em1sqSkunRtlLCZ_xoVYgoqzOAD7va=Ow9xx4l3XoWPlC^cYcO(ZxSx<-eNiaFu=;R|V-R0SOLl)4o`#Fj6%Kf3r2 ztO$rSh0=N0z5^vv8{2VwrW{sm0xWE>SF5{v$pRpq6^A(BXIptZAM2RX+O<7DQ5^>3{9IhJ0({RG572gi@~-?$ee2~UlKV7G$73c>x#h2A6pm1(pHHW zJ1b3_fT};AliJDWq|Olfg%!d^;Y{ITU}_1C_gUdYoar5M^!Qr ziz9-gai*mft0@U)q=W4>=%*xLd{XbWehPwH1+jEIB$(?2J?|;sIw#!*YcM|KmsgbUU0L+`Dk7u zAO(6!+#=cal04gAV!qFRrfH^BPJ>e_%><%Jr2ZaisUtnEHtRXMe$WJj#YNLQ(Fax*3Zo#yV$I6l_cZUYixi&dCEn_K6 zk1B_0Dd3RooxG($23z)3gYASxlt`IbTS~feQdcjpozJ{(U>ca$$5;d=Ao;b5^1SHt zO|!2z+B3BEmbTI`vb}u%%s5w?HF1o#QIs(>I;B=)p1d(OCEPX0dfHinyJcOW8auz$ zZ{82lLu#Cir5%tF&U!-YvSv_?_nM$&U=siA(uvt$nm>@$> zN1{sd5LeWFN_6y<3K;tg-Z}X_nz6ToF;DgdYC_=8p(c2JU}h;buyE^~-3uq{EW!_O zu{-b2M46)1ymIN8>U(qaL@FXIs|78W-)+$|3w45_XBD@H1-sYPYNkn_hF3~O!xlgR zUr8P4e>6xLj9c)N^*VnxyY>%YXroBas&9z%j<_8gjlm`2cQDkCk`RC9X3mfOI935O zm)ehiJW<+*l6t185I3)9s_nkXg%hTNNX=QxrkkI|RFgN-H1kN@aY1KYT-o1Hz{>Bl zx&dT6w4Jnos(&esU*Vdj#X!lvVmJ&a=bGD(({o#6EZ$7WQKerxQgg29nJvkj*~;E8 zZ>ZZ562Xs6X7wO#m9@jZq?WE6n=g@;>HUfsdh$KcN#fJ@@H)V3VS%tp*d|a{{td#N z!o#p|mZYT0rLPu!ID3*xeAvXmR8-R>st-+VC8i@=s1G;9a5ZPz$FQ|(p89Mj+M`zF zK7A}~rsVH8r#Ni|X6(Nt%e}~)6CjXq}_2L1}bWD>l*Qmfh7M zyUPxS{n76Pnq5jj?DN!)e$5l|+oZ>BO)7m|l(I5V6W2Ke=OSNQGtjCg|spBEqSb$b01*Dk0<;2{|VJgQcp1 z8e)X1i3qP?(bZbo*mbVj_D@gJO1Gqp3N3m)E6daAx8bm@{E}`UrD}kwpG#MlF7yT& z<1{zW8Q_q)lEoH71E$l9r^^c}p#cr_T@7;b^HzNvd%o5J75Sl5pBk$d9~K@FJ|ldQ z&jS9n@P|p#5A#k?V~@9j3(+1%f*YCeS|a@K=|hqme=SLEBnyqCWWNQLV!qR6H|Q4a zVe=jFIdxnrs@L%fXqb;w2{Rg>D|3;EEyjRKC?y>#qLkV&%%4}T1f*iy)IF<3m?I1d z>op(tHn2TEFMNe}K?>R+sPa3n*1}7f%Qs8QZw&Qqk3C)bIt{z95{6RSD!WTpmdWlz zPiov`HiFsv?!{MRxtn&lZaHyQ`Squh+@=m}rnA(vPG-`7)(=C~MTV+NURnvI=%n4V zQ|>nU9J34opm|5HNkbX-OYRd-PK0chw6#$71zGMQ;daT1Gs`dBOGvmE8^YD9UvQk_ zUR+@uycLn=B_z#DNSX(zf`O?7hxObX`NCdP%xmls7Xa;e8#)R<%csGVc!w|rsg-VN z7w>S#{QW!|g5$oDWJB0XaD^+#>(3sC5tz!8CR1H;S80+azp8vUI-do@Is84GGoJjD zHNp-)iHMk`2SuX(=BU3W)>feeTiDFyFaE11V6!OdG(?xd+mkS>P$8>({(AU~F z@zf^}p`88QVUH6Xd<_`m4c=LX`-q-_friG2XJe6X( z#Um>2l<_|ZSC$it%P(BiLL+joDIm)aqF~#QxR%wOw7C*e?%>xuvapz{Qy9hIs(xwEsm^CM}EyV!18+w+f!} zP=51W4TM?>q*lOm2Yr2Kt2Is*_Q2ATl>@l)wAVX@R`nEb{G{@)>L{&hxV(45K4%4^ zu%&o*3a#TQa(^Y(ag^3^ot(TiC&q+$3co3R9d^80hzp&Pu*OqJaLS1wORSV%A7CB{add20Hx48V`{PkIqk(-fLv%R~5Y7IhZ2-fOS(iZD z_CiKwTq@CKulS2!@FMvSn~LH@1ya{k0`Yc{r=-TdpOLA#HPzv&VLVZnNFYlDqgtW5 zL^s7i-E#7pyh9pN`Hdqh&aoCm%=s(vSue`a5O8H`?5*@wtq}0HjQzuvs`CjE9d1Ul4vM{4ewh2iR2B#TK#E>@;>c zGRGYW9Z1Rh11W6?Y-L-!sLqY-<4xv$>X1tx+5=mAd(g1U0hkV2iFj9MSDU`qHi_U^ z=xeLdda>GBe{XB*&0%DzIc78D6EXfH6y~7Lc7{*v?$W!r+FAiq21cW^1~2GB$0EK= z^hq;muq91bj?*kz4D=Xe;qJaBX;8!`ItUa>r(nlRSy(-DJb+Kd=q>g2_#9XdG&pv~ z!!#0vcpchB`XS*SZSr;#!|$P253*iIVc=2v{b-!*C9{ODqN{^jHWSVSKaS1<`BwHW za|c8|ZaFL`M_=DROFVRv&mNF zaK)OOE>Q}4tDKTQ9(4IUaxlp7iPwgrcKfu2ZsbrywETGC; zE9pO56ID^a+ADRmQi2>QPcM^P=|ZXv-~!irij-2?Y5us)kPfp|K_8Unzzz8TyUbHS zXobB%?Sp<5_9F;Cdl;OlXA4&f55m9xF1kbCXEJ80^|Li>3%ih^@?_H{W}2)>|FL8{ zYHGPP>chHE#TsTBgM3E8RNng0>LO^PB)4e=VuFf2vc)3lYEW=D@ygYu>%@wSWuj%}65+}g3cX_iZ}0Spn4M30l= zwPVhNxP0*%yRT_#0lq@=fYn5gy~>t`lrZcH^`mqFrP&B{+*)Cma4Bkf&!P|ICzxI2 zU=7H7tYBLaw;W)%u#d7&uou`@(=#B)RN|wf6P`m~zZ$!UO^E)B@FWz|Yb)1aV@;wo z9vlA42pEA_XPc+iZ*x#$frzzo8Kp9J1DVn;$3k=zj4+V6!V{7lNR#<(0XHkeeEp$v zy-PK)eS}Z!5^97g!cuVXo{MRI9~V9c_T66!Np#82Nabv}?KAQ=_L&VKdSh_24wt@3ObG#0Y;!A~1!bJzlQJlnx8CEG)_8pknYda@Rr9BO)p3QlG?clNHk;!?y)EZ}Me z4Ez|dEIDdpwm`hejb1L|Rm|Krn4FT^p;Fw+ zeU9uq1^7lNGih}u$^-j_HcSpU2|Y4bV=~|Kn9KKT;oq5pIup+Vv-8ek${- z8@65;ZaZcxPgi+b>Q>KHke=aF8z z9%00&Yb}LBvjaBV3>MT53haYrD|ch)4=wNS%kRJ;+6q56D~Q`grpyyV2GX_Q(95 zfGiP8<`~I2f6UVw<}e=F4xoW=) z+2Sk0^bN6fY!~@T{~cc$Se)9BPvSWq7$5F1Nn~{#2^AFxqeTYI+{a#AfCZP>)udD% z;{le}jBE4Qy)7*qdbopuD_)cU){#U99=ym19+Ge83AkKMaphPGxU!=zqk$H$w~64P z%cUxZQ)#eQD^-COpZCWq=$r)$@S_A&+{tI6m@8YJIKk$@ifm!yhzBCO`IK-S> zXzkq+Vp%%$*}GF3{dOdMoyS7bH+$@7bK8K%3FRxYPq)wtD78R0+ugQfD|j*oP3|Jf z==T}?2gWTe|3X{{UFfIFoU?6UbJ++xgI&t5`){8DlWSFcuNo#f;5YCl1~rpS@e}B) z2?|_IkDz9x1v+?!bv5yz3Dh74Z6rlip)d>zHC)h;K5$=yxyMYj&)%(0_&rG9+K;{T z?Z-XS(CC2P2A|#0(k%a{ZSEO+mb>Sk-WvdEwNlqrUp1w-t6pTGc>TK*C8bd0=9u4p zY$bO;8Hs7Zju)l3miE4_Ga@IPyKRPt0&mG)JEwQLT-#o+)Jx&ya}%Y}(EJX<{AIH> zF)W$^b^<%=zb#EzZ$UC8b|rI!Vj=w~#vftt9=qYnm?ZA&Mlhn$mgFr0xsZmbI=1Y@ zo0PM4D=mu2{Yd^obH|J;c%Y#0L#z2b1Un!Dr_uwQ$}ZqkZspkjUkZQVdBoYgx9EI! zFjeyzq>%lXFZYb`KhPAZw>>&E^or_$n0<&g#44#|2(@ow08BqMcxo+_G1dfZx6v+D#~ZINc*fAD zJZRlS83?J77VoRaY7OX9(S+`I1fXmS+E&eLv`-sab9{eT4s(2tQZ;=+S9Q3jQE9YS zC%;$}w~w0NAV0$|Gz*Kt5ONk~(0q*7lz%Gx4ZI*x*27k^o$NeQCFodeE6}Y8`k>V& zY_cZ2Cz|SFdNIgRM6x5TgTT=d3qXL1Q|8s;W2BbzN&B1@Zawg`sn+|xtz-436|_sB9RG9z?Y9&5K(@g%BztTYXLrDYE9%dQgfldBz# z?wL#5q**IAt?sa~+C-fwbq%$PGh2eSQvKlqT#wnPovk9;gjKQ$cap77ppkV0skVuo z&Mt(Nu<#=sQ{4eP{-CY^qXiM(1W_oE7XfYsZANr8vK=rKX$VR;6}HH>4Vf9F02)yQ}A~1vMj=@ zk$g41jXsErQ4IBK=R}FyKK7Q{Zsb&sZmyOG;X=YF`hQ47C3ezy{{^(|R)?(RnF#Blk0`r;ho;%Z9Xe6$hT zrSQi2bI>c;c6P~sXQ4A@p)FpVWr!m$VR2*H*Hc_d8o5P`Cp{JsG$Se#mVqnQ%G{Y5 z1oMH8aTPIw_881gyOb6)qBz-`kMZ!{0z7TKKY{E;82t$=(4TMt`V+_(d|mi8fK3XU z&Uq?MV;8XfWG_(3C8D}xwjaS%t};M(YFV3HtaetEU9eaeGy5ZZ_t;KQo49P433uml z2RuHMu@zAMC4mOZ)gI2mMi^vbvQ$h_>9K{a$p*ZWY}7UBHh2w-1gze~&1plT@W5-k%3PW_HA@U_ovWZwnZFlkk8v;Ukigp-&2>txPsI1$^G-K(tN?!r|NB96j&Za{^7Spt9xet+jR3 z@Dkhe?RBygPI!l&K3S;~BkbgL-`=A{#5(2Vr-!_Wu*AL)6l?k5^PuRr1!GO?3*mJ1 zJ3Wr(7N6bisA`G@#b?g``PXi&r*~IH_CEf_ld0OctZLaZPa-PG0}E{7c->9QmQ}I3 zc-XdJK$fD3;@85NYaU2QOii^icV6;>%JGem-l%*d`hK=iIE_!Zdk_qWtHmsSnsIs&i$w)}?d772#>Is-+LzzS|gu0aoCYjyfU7*8V4IK^m2P_RbLuD8K z4n&n1ba#dl9Z{bIx*+J3Whed)L=^14{4l724%9z>yVKs>;h4d0BnnBlTM4+E0?Gtro9_LbrHUgn!GK?s zY(yb2UKu5CSZ;NCMhx&(=0<#6cEQ2d>67q#^mV#U*b2Ty{i=_5b%Nnt-CnuZV_~ka zbds~=@yGd{3Z}>|oWOhpLo_CH_`KzZ=)1<2ieW zGWHs)_D;_ocEf*PE9?~Zf>-}G;o))alh$i!@=z+>c00ap@*e{+E|dnZR2y&j3f!Cu zHm8nb%S?X#;tRN(x1Xxi+iH_@D&NH^2={`1SlOAsAl!;in zLtV8^T-bHhGn`;TdE2l(ezB@*LUv8w{-ZOwTsFP5j#{2?z#a#h7TtCcr6gpAWmucElHqW`FEc zB8DqwC;E8F?wDxbh+nF*H(^h&8gJBWa^t5Yz`$Ok%$Si(Ot{-ZUpwY}hw5+XYiGQc zCN0@y%i5K|N?~?P4px9CH2%Y|I~rsk<_Csp0&dmy%kS25N&9&&>9Dpsjc+19igFXL zNrYSX^Ei1}I2mjsR|>aSR*u*tjw{X)eaQKlqvc`&+$_0Lb+hI!^aSj7e<*p`xRMuG zA`%}2BLyToZ`*e4*SxL#<3Ih?tu$u_m;lL-VKR2{Q$=SpupTgM2D4~92yCZLL6>ul zGILh4p(qTn>hl`D+6rV^FM*vaNhV_0N6E3XIFLd#sX5`W{9OJ?ojhe@&YGyexr%U(L3*Et@a8^pgCwmy8}u|51k)Qulka|D@(k zE=%qA6ZN3fdXZEZpoab3r3G<;@mGgZ-qe)lDka`{mg?wa#+pnxTa_x&U4A7M6_W@` z4#SfO!o4!($G&Nd%2eYMs*!dAZ!t$$z;}#2V061)xC3*!EsZEX7N?+e0G((Qj`Fk^5UUJUh3X;R5IWO_{snq8)P)s>bInnHML1_D9nnN%pBR z-YfHV&IP4$Y|5hlCA^}f2*m*1BzEx8XVQn7E(JEch2287ysx3QrZ3>K7Q`b zdGt~7`7!ldMjwqT8|YOV6ilozp2cY(xr}49whBiPK1IXyyyeqW{nRX*y~0hxJ>`{5 z*dq1Z!xgRN)CoxEF1nC+1tW(Gub!4rEUy$@H>J3q=INMavm28yu7jUY)^%fX#tJN| zvJwb}eYTjIYUx%?@~6d=R*|(*YpZ6tT)?f_$AxDwjrE(DR$f;5*i5UZaz)pPNO(6b zz1!<+|XY68(*OQ(2@$Z}Pib&Af1d;~9RJ zvjsqVI>xW{$M6i82IzR5FOJ7>hmOcY=yg}KPVGh&;={sYm~-=Gbg7hAqs)z4WuJ>M z0aI~+6bUT6VpHkMttB+}N-2x1v=2~?)vOz5@yy3Z%BvMqRsX4r;!X?WSq>8W3CLFW zo>)~~9mE`KX>uyJVufM3nOsX#O|*mp3p(I5VK{SBvymS(ebZ;KF=_MO^&ITI7J1OV zT;3I$y_hk9ORl>_Yz;0ruCrFVDB*<#xZw?2vzCLNcO82T!ADlkh`{36WKT0qWUJFH z6tm|{GnH-$XI*KT7vYJ;-o(U@q$k=zXNTDOnE=Y;TfOB&xk#8U*tQFa1wN zA8?E!szfYqSIl>a@eIi*m0SSbcEqz<4T!h~Rt?vn`3_xpNaqz8aY^^s7F_<=XCJ<_ z&p&eLsm*-!@zNX5AC_lsKltHmcXm`UKt>-Kq7`RA@rB!^2 zA%w6*WYWEhFMZ&X_g}VX@ns(yp_M*-<@WBb?N{A!)wXWf)c4;?liSDXHObSn$n7oH zyv1B_bGw})#6G?7SdHDW;r>e(vqhKP|H%g~S&Xml+P43OD|d9U?(J6&Lr@w+tK*`w&JLFDa?ROu-;?&s0CJ5G`Hp3wdXr0bAhdUd3#e6=utvSJf1w)swrc!)8?U{ zdW>zhftQ-l%iqBy2#YnO#);BdLvwzrauK%Glt!6uORxM;7F&8Tx23mbS*kyAr);T< z0i(*w9DB1nMn0w+;7b=lO<4ChEO6Tu|MyI;Jg2;I4lHo!CzTAtQ*ro0VLB>v!<;AL z5}*M-3MRWRVgAUEp>@0h2PX(4E~qG{`A&T72uNQCd8LlKN8>jw=(p{wC@5OGy?WWw zU1$Aj^T_m>O-qJOKl1`5R8=25>BRLt{o#0Qc-adZ*7wizlRNbO&&O$#BJt>dmOg4{ zZ=Szt!?fw~rNd{O^{bOM&79>G>*FEOoro`8_Tq`_`}*r+&BIGiBCqoJLX6kxXMa~U zUh7}pj^%ZZ`ksM?j(Hso&}mtbaePXB^cCx)S_0k#_GSr=`R3^FRIc5yX=XoM0_m{H z4<~jWa-+wsLuNnR96M%@-QkDNzxbi2KYqm`Y1x5CHYs5=ge|@LjJZe$!)joTkh@Lb<^>MisJpZ)cDBlW^#4drAJ5%xfVTIKCB~wkPD@~pYmNj78`sc zZ15+9mylimiSWN^@8?&L;~L2do4^scy8V6pq4C5;V3N@zSqgDYu3e?!+tR)LeOtHx zuTyu-ACS8`Pu_X~1tiMJ$1iW2=9)8S^_mw~A3t*zjM117tA)D-zs}+o{M0tDn|q0~ zyKF3)2zS9ptRTXh-EqOrZFA?_db&^9_N&u(EF9!$BjV6=E20+ifm@)skRv_f zGh;KQ15JU=cR%<1og00F2S2qX7!sqw6*unc@+`gN*4r*!=8f6`0(t*E>yB;YQ8MOE z(nGu^!(=ks#+N>R?v&Q^9)9W5S0ATY=bkeU-F|R$bK|Ciw=You$ARCPKS&rG*4+-R zMG8{SuRdhTSJCyv^dn@eO0!F*Qm^c^&7ZtswQbRUB*ZT4adThBIeiNf zVW)T77Vf!W8AV}~2g@6U#jgD0ZoV?M{`fqlt}47CEeXr-5(ZYskIysN+v|n9VQpWi zoVQ!L;R@2-uEm3=?RsbHmX1yZx6atBgrz!V%L!|{y1i{}%U6DG{kpDhhX~JNjOEN7 zP#NJhT-iTO6lBg`xNzIa>M8P*?Q+s7iS}u&D^|XI!n)3GUmI?1Q9@$}T)Z9_`rs@beqEYdUn>!BbjmR$cnxTP_&3 zWn5)>l33FG0d60Ay1`Kq-8-$`?u#|sBMHju>mF);)H-|aQ^HtkBy_61(B6WKDc;Apjq|>7SE$Z|5V*| zozXk8uEyy>P2W-15RAqnzpqhZ-b6_9dTe%j9JW@+9~!>xIjF>tXRCU&t#J}X4f(TL zil5-V7^%r8ZH7bR_h@;j5pEJe^lEO}uch=>2E<)om-<~6q`P$Qy#5`hzH{o1{&{p` zFRiar)~ud2d-kl=Yd%jmGP$D^b}Pv*WLbtkljiklVaS|rk$GxD)t=1-BjMQ{d-b#7 zr-koNoeSMK1>aqeA9?AnuW!=glhvQu;;Ht?HK4j!GaLWt^b;K&3Hm$c5eqtAm+wPT zpT!sCd?eg^p$Y)6s>Rz4f3V0H-?W5j(V7}ebJ6iqzWLmbKKpV-;};C^=iJ2T93IJlPT`! zdN%j$^tOIwG0lqAuNj5o3r)dFd2P_2)qN0mnl3?DIS@0RUvpSFF$ zLjRohO(&mEf>cggzI1A3Qe#Xp9M!~~13k6iRe&eimYW1p`-nNQN{7>!k zy14zH)eUl>MEJa;44=>LI3EGz+S;`LtQ#_Ke_=4yJ+&3qYkof+B0?hg6fCfjI~;_h|ubZ zR+~}g*$aB)mR|JnOc~Qt58Qkpn_HS2x$s7H-*T@0i#meT&iWzMQ_KwKXP0k$lxIsn z{!FH9X%Qakdmm!Qq6C8k>!YUXN|v_{0tCeZ70{f9BDvhSijt0sNnkz0YRGnN!dai`H|L^g{;4qqpo!J! zbA`fZJ2uWD~xG! z06>iDCd7}!nvFNUWPHg>86Q>Db&=dRcjw-nbCEehyT<$&F1}WU5ris!o$eJ+OkFG%SkQ`^{;2N-fghxmo z^0I0pqGMCkbh?c5$18D_@UG;LOn-2p@K7StIWn{D0kCQ&SkTqL7?UOGgw&J6`O&GW zr!DDaD$_~gv~WT=Eu36(zn7nEl%KfuB-QH()(kqK2tT>x7MwE95~qv@=`v>5Ir9>< zSV~9MXWCR$nW}kH(ZhpCRJRjM@8q#ahj#{O*pfdOm=Bww8Gkg??-fKFZbI~3>My`wEep%n z5Bg8e0nSyoGdX^b<(n;c3OWt*DM=3XTy&60`d_*nweaizBoTg8Kexrg8evNc*{HLX z{ZM!t^Bw-mBo=^uH0PI4URS%rsMe0@tc`e9U3pk@1bWoe6MuNXMono5-Fg+eQHx)g zJ!_0N8=rnI#W{gtYOV>~~NyG(G@#jQ3dXz+~`N3$b20Xbl{pnX!A>F6yPx3KUZ(dRFY86E5pL^ApXo+s^joO1j z^*QUGQ5ahBk7Q^^gK}K#S3i3o(Sei1x1-LkpM3JgvCkR%&HDWiyesvj{-X51PZ_U$Qh$HyO`-yOJQ^f>EdJ5Uae|rjSAg|5RLpY6REf0L^qXOS zkSTdX>K-39n_bB)ZSg_%A}7D8UM%9O)IjYfsC#mT(Yr}VJM9(UG>d|r39VQ|S19=s zOzcaMAOPghl;lh3%rL#*1e+fvr$GNK;~T`kSS}0kD8b+jY4%g~ZPsArmh`Gj=t7k4 zx6@Dc@ZYQN7t@4ZVF~crJB9N!u1*2o@&JCl>IPUa0z|>X(}6vG^gKFW4ZyZd_u??h z35o$rW7q}>P99JAA@c_#*Kf6U+D;sA)$H9uMmOl)*maCEVQUOeLj%Jk-vd$$D--)7 zElu_=*9cjOiVxxmZY}UE(IBGAx6AU{BwnSyW0amqdoA{J-Sg6StDq5^u*b%}!}{s^ zo0B^VeWmt`ARCk;$=6QP$DI2NYh*K6KXev0n45Y{I>yDbW!-wvHqJ#;t4YT2{U~ap z4@!)YOBwee=#8_juYszUpgzK`YHzf4cklE6GptcwVbt?GqoLO-`#D)ae=IP=(N zgf9x;LU#4nSP7OOCe3VFG(-;sH1lJ&IN7^(rdpPh^}EbV(ELq^E=V}A zrQ~iQH>u|Dks?M@{sFX!l7%B9r`oy!wR4|8wt+Y9^H*zer3o#Ve9=%}(+4IxVN&r? z1Kch~2RakDqfn%4`mofR(Z19CNxGLL_GdgHz3=Yzv1cAp$Q0rbd0qYTkL3EE)G~ZK z*Q<2)f&*#4OO1uaz2?;4t-1o1@UYh`Kyj}@#PGW278;L4f_g7<>T1BxeUYvx zTdPnc$3>?(scPJ-os(J5%dOM&Bf#*WDhjqOs1xn0XK262w2^HvX-ewXk_#WiA@v)r zDp-ufL5yNr>w3OPm}>UO;FnNDq&{S!;INq`gRsVA<|!?NHSvo2=N&^tY>J_FX!WHR zeNB~)Dk=7;Sz?-EY8|)d8Xu#^%_e;+^qiR<%Zxd*{HH;e3N>EXMswatk4@9H#&p%P z>+@9e#kIT)*#*O?pqMcw1Lny8P%q3#+dJ-0A?^QJ_@nUuXzn7$`2id)@^O9^ zwNr-yVxAz4_=AheYi?sb*EX|jjLT^#p(EuALwozpqpmETOZB7>E{OHE=D-1uzsjM6 z+y@l@GpY%m?PZ=XJ3_UJ!{+>w98dly7&H^0B88AO=h~W2`lc#>Z?GD#K!sJ7!jE5d z@jpR2#@7b|_8F2As`Xb@O}96#hpT@Y*|y}v$O)f^)A@nZVe{99oImg~))AShc*QXC zxtvmGD_JreZd88-?rfpAZV5(y8EmIrF^*GQ?)APxX@W0!ILj1Hc zGB_Z+#Ch}8ydTAJLxRpMbvSJzbd)j4wb%*nv83MumxlZi1sgBc{2@wd2Kzi~SkObs|?T9Ir09a%o19g(JaW=kQPzRgh?FeKZpHdgJm((Ea1RO}@=Y zJ!-iEdh&KEn0&;098{@+s}c-2RJAh3?#bxzP#3%))NtzRTkFUuGMr32g42pWn%aoT znp4*WGJdyFxd#VwSCEJL`yYT|&%7t!rR&e6?!p$|r(&C zc?H?z1jg?pz+bXR%Hs7;hS)ST?<7m_UPF%{M+lSS(lXm^Vs8HoXMK80_^t3Bt76qm zn@_IGx6+neI$98G>|Jah8~OHu<8>w9K2{uMaJ3=qW{rF|!=5%=&fRSE7e^m8=5Oox z{SBzqsa#5gI52SoWW)}qaRYSnf=(xJ1xQe&?noE}+67XjL>$O}C`s+tXa!fes=Y$Ih`(sPWsU=>b2~{ z`i-B~Eo%i@E2`AC`r$*~g^^pKsyc;=cKXtikNExY&4(DBGh@hJ?3{>0toCUb zIDP|LqGC?7A{$d;%p+5pq2jRfdV-~5pS{ch0DtE>z&BnE0RLqVa(v^G0|ekdlK}i} zycKcuE4qxb3QLLA*cudwEE;`)l$2UqKb4bAko(NHd5CF@1ox%(pGIHV5b$$;xo|)+So(d!*%@d$GX5izV zYV>qt9IkCpL`|Dd#zhkgfQjn#L5+t@Wgn~7x|r0SCJfjG2N}r85MhQuT1L|fIX_1` z=!i@?Kx8hAA}5>LhiM_spwc;$Qdw+Z+dUgL+_Q~8wCb{?R^^G(%X@40 zJ@d6^_SN!-lpQxeaPtnOsxcm9t&8XKkC@%9U^XtBGJl9ql65>M?j%Y4nRFYi?^kbt|qA~@X_cW-bz8sn}Jm*a6G z+5Im*{zwCVw%n3A>~i=H_~O<4c%P~iLGxo2>rKwu0Awf&n5fKaW381RN&{k+TN26Z z0YDm|#LWh;3G_+VpZcOFWu2If_bWD4zwp)->hNtly{h@Zt zQg1gL3WeQOnYpxPN*k=U$M2OLAwSmr%GQky9yIxTTn(__0Z;OGW!--W`K@jPTC-|% z3vX7%PMzMYnzWaBcbX*oR-LsKqRb2GD+Z+8)F4srl{ESuoII@=LpIKU)(`QPjJ0p& z^t;M@h0A>{am{E?PM^teHYPX0;+TuXwQx{NImyIE;UFQ>ySS0+H#@_uM)hqiN!O>+ zN0t;n#Dr~V80M`zvl8BTsA^R^S`(MID~+yTU`9{R3=FJkOc*)M5>iIjh6w9Y@2RSf z-z5)>Y#$krX|9dUy=2p{hlT+sf3AiekVhtNbX6W;%RQnbVo8ISLOdf4OSpJu$9)jb z%G~17a^NMDQYb_bV}qxvE^&8GDOnQVL98FbesrT+IS>0aO##xUX8cO{4`$ag-SgRU zHUbH%bI(+$p1rNJbq>O2&d+6|;I6+Lp&tFEFb~8D35xa90Zvo-PENZy%GBz@p;m6V zw%FvS((CYQ2mi~NFX*%INmP?>XEw73hJ1`c$6!5&E}p1y@TCbrl!2ADfJ}0Hz@*?x z4%%kMmakjBf*gV4jvHQBB?m+zc4XH$oU{7-*`fhZclsF%wbV- z-CkW&Uq85H;bMAoZ}&iNG^{8tZ=zO8-jL_r$*0vK zDbZL1(P4N6iziZY(s*yr%du~w3;&4sh}GSaJKdJuGSk}1oW(a0CAcTcZbgqB!jj{H%VJKkVltKaw4(S6&&#G)EEASrHF zoex$c@+I8&(5JbgsKK$w>9vD+e>CW;bMm)a?^b%1o5&D;kue99JNJYfl0m(2pt->p zueJMRFGHi$ldJ`IYml45-2}qI7V!T^m{<1MYT}88X6(%Tp1n4H{CMAp{EruFoN6T2 zJ)G9~Tf(1(BnI*UgmQ%YvH4eb@yTAw7V9l87T4I)c=dr_t9dfE>)+3P5$w# zraID*m2b_v*7TnD^zbl)|4YL*;QIoZr+0SH^b@tQgVqeqJh84BJ!krR;cpDp+9Q0; zSRyxzf)^h95%5**FtpIkSc+#y>I%7Hc!-C70}D;6ov(m_|Hf@(?^VTpcm|p ztmQy49D+X{!{x}0WK{k*RdqFux6}l6jJ#F%)tK*Jgi!{}^^vam6D$1{#le1rYJY|( zEpw6adj)g5SK9H?O?j5mTXQiLH}@E#_}tX-s{PMaGy9;}f8MsB*12H+4IaBf?Z1)z zptc9oqO$azAE7G%^{H@>s#>+YK2>M|Tg(N*Kf;#43pCDy@^>TPW1->_Ct5Xa1X-5O z4{~+^=)I6;`~R>&zR&+ey%-!I%*n!R3M$4!>;$%xUBLFUL+oShlSkCPV95Yh`NX^q zP^R?X(b8l&=}UB0Y{j~kmLLtxYiwkMaZ###wIRhRzLuU%MBZ^-PmfZEv1N1SP~K5i zI2=a2<0$LooJ3>NFHezeBA-bu+FZ>@S4I>k1cK&zv>HVfG#%BN@|ADK@dl4eMAD*8 zbn@5p^yaxoU4v-uxR04udOx-`68Y{t33M0PRV)Dp}H)SHu&T(pDF2ZZ0bD zi$>rs)F~n0$D$0Wc)d~1G+AI0mux1~+Y1r~vV@oj4`2~Ef9G-!;M>6nz-W1#=NC{; zPlOry4tz=wHQc-oJbLO!BX6k3fyC*pbL~-o?RmnL!cD?G!ei)8Lrxp8E0xb{Y8qRl z+2cgVT@mECM#3L_bq0$rs?WwVmQr-~t{kxoWM}_`ypF==fle@{^H1T2Yl8{Sz(cr4 zi63yXi7V)}qhP@k|2X!wd_dtJ=`xR^Z-cE>_bzs(`WJltI;FCSz?tBaL={-X*H~X` zoc>`oKgAZP-;dcDIG0gS_0bc`;UKZd9H912986r#kfmP7%`D6N1&Z#!g?uo$*~=zX z138dGsz%6B>4K~1g8Teut|_QOBv+1=zEv#a(v+skRzxSPd(bJaT^Tj+{l_X^ucUr| zwcjI?O`1%5WFdd7gw-)6=_f4a;fO=PG^jbv{*Eb(`9rFkYU zxfH!>M#+)k)V<4$Gz@&dR_9Sv3vEJ=Ff6PWb_nO9vyJ?&=Y_8TfAt&m=Kz0&-r54& zRxr1~sFL=N@yHDB+MMGG3j8ul5jC7+{sFm-T`AsIjcFXOH=Q3Jno#iBvwa{;)hU|c z))9ZI>2C6E)mz(T&}$DEv;%C7iJDoPyn^us7-dBcB4>R*Y;AGDNRkoq8gRfjsqChP zcR4!K`sy??S3c2YjCZJi9y=2ssDCDXe>!7o@&P`mi;wJjLw}+1pkHVf^- zLSaNW9Wlir%vF9)_=fO9ng9x10vLAKacqR0$!=!%vd7tT$S+#(rvL+WYP9if7{|;A z8jj2~;t_R{hBoa^Qz<}xK-{CXrltDQ`qP4z3BAhtgi79Xl`IH&1JnBB4RJVE z-UNp}_(5u<)4NLfT}yBk*U416@hh=BXfCljB${I*fMkd}Y8up7s zUT=RNu1Yof?No$s9FM7O^&yRcg+5Eg2-5|i|9Yvl&&QgHA(S`r5#@8=RKq_{8+wDG z6NZDoLDirEsUOp4u-p_|phiTfdN4jOMlmNXr1>mH+M%wg+no-@A8xU6-j*t*O7^+~ zvcF}TNr7&6I0ODjvyEnhOH#1PITDg=jA&%mM;4LxDpNo{6=kO&=K3$XD>@N#{UE*w zquHVfIWomlVnxwktN5WEWxH8C^EIAu=129E^EIS1?qQJRbYk z2I7Gjk#`zI9U761cnfEn=Z8%*hujjtMofyvkQDi_>2mSW2>ilDZjq{79^dSGrO{ra z)VM{L-R_7r%h!^PEZr+UBDsfVqEjIhi%JA;!t@258Gn0SZBv5`QrBp`WOJa0vGI!k zPu-UQ$Wd1L_gB?*bRAt)efLaHpL67#9Fv*J0h5q~1W3Y_g!>Ah2E!qsh-mP_6_iU9 zL>B~f&4>poDxj#W>#chPU3GEARS;2EMGZ^O4n14Q=>xS^roe%KL{X@90$KI>uFBAsEyF{7EkRWb zq1ZI@MPcc{=1mua%-l>`MAPz;EE-8rPzTeKDFWq5DoG?jwMu=(O5dE};l+!$RP#=M_kHnrJrdCgVBsQBAeQL<(5V1N2DjYj9^|Rrc(4mQ5c0qn^ zh?o^*^Y}=>;Iwv&3y+RGUkSHs8TIbK!iuG}-QEEV2$G+88MK6P=b%?ed+PQ)r16n2 zCeSk`y=>w$QfmzQF}}hWv>n9G0RBI0o-vchXkX<$7+hO{R^bE4N0c6aW;}QMoc7Nd zH_r@T)Woa8j*3tLeB1`IQ)-FTiLHs3C0?7jDe(b#p@0%V<=snZ5%L0350Sh#S(<}Ihw)^x`_Wzb^+@PV%!9D&$=NEZ6@}?OwWVQI+Q>Vm7YrExA6)^%ZxnM152x( zTN{)aI>KXpEn^*5Af~5kX5{tGfYHO7XFwQ6=8O8hN2mSld!{9*vCoDJ?r7My$osZ& zV}U(K@(8)l@PjWu2d;Bi3A~+e%=H{;1;_3Q=ib^{0=maFC<-B2+H0j!yAdVG>P*_5 zYPMqLJ(6fXZYPA6-Pp)8-+ZD@MEG5fL-dH-?{xQ`p2H%0u28<)*TK^rvx}ZJX7B zQC)KX2wxA;7zXwvDV^NdMnEQ9{l?jykwYmvTC90{3QSo!2A+w$sC}32Ni-{YohoMs^wh_}8 zhbQs2#1ycYq8C#rg^eELtcvzGLwho=7NcKY(B8m(Jo5G@et&!^*5U%^@l1(DpogFE z*vst>{Tw0AK)8>>6rh;NY4fL{j?UYng1^Njk$z0gCAbz7tnwxqd(>n8xICOb+JhcG z0BxlhstIU-TS)BO;*>~D!_EATT7E0uC!%+bdv_u&q5QnuN5VjEAX9D^&d0i0hfk2O zSx-;AJn`zp+Y`4ZMm?D_-fK4QJ5F3mp`C||9yw96-1i{%vuy0hp_DQ3vB4vUcjK|S z-!g2RG9+B;eGg{q>L`p+UEQNLKJ2~HUrrR~^z9>FK3~X3d{|trM5r(-1ICMo8zG6% zea`EX#qLlWmisANw;LAQ0!+X&Vn9X&CV8S8Ad)GjAB;*6aQ+mhkvRiOkJ>}wTbaJ?B71d2#(Q5pBDcf# zfM8wD;}Iqi&WScM3q<$0_Ks~!WWodaYd$6nyP*Y>`27YaZKFn?3wc8AZx+N^P8hc~ zjPEWN&wz*uZCdd8axvRJn-N8J%5M|@gwgK_V?O+zY)i!Y1AF=0`4a!jMizA>n~pOR z@d|0BC+9L%lDA*^bf0r#Q^9s$y9krQL)4ya!Uv3yf-gdRQ9Ioy_4}OryzOyvAX_Kv z5l9-_t%(GDx1pGfv15F3JOH+e`A4#|T8n+Yo4B+H0RL#examFvbq$}%%DMkmi?_A; zb4qr?N*p8VeAmuFs?d|K$6?>f@ca6| zC(caB(P+!YdSYQ>Wnv@rl%0uJCEf%d5Bxg^{FY-Oz}az1PxP*_4-{?KI*}&ZpTU!Z zEbGzc=fwtfy%lDDar@OhjsD*B4{d*laNc2@4>dJ~*KzJRI2J zY_p?~Cj)MU4D+?n$*Coxo8A^RpV}_vwkyM@o2WM;pv%4CmA;s7_j(SU(~q{VoCOUY zq#^yO_H+2_LinKJgN^Sw9rfPq{}+P3fj2ur)@)1c;IigmBu&hWj)@DTyM|`IxIa(L ztVl;NCrEPlO8=|ItsCEAKZ~z9nWPS7jQjXR$rr4~ku{ilTJ~~zPVe|)F3;~6CpBU( zE4D1oZbi-d&4d~C5{C8_M$Ts^`0)kW{s@l}XSKNAmzK2Mdb1Ow*77YLAXDmZcOy|ahS{BCY*t# zUf3??sAADH6J()Kq6;v0Xjq0UnZ9Dw|9PmWN!S=PYl7o4=*{k4hst5HZCi^&R=*MZ zu*Fw2_&h><7vZauoc;XILhm43-my4Ci6iA~7K7m|?x-Unh1z(`HCi{$lF9-(6SypA z_gv%74g%0_DNIgeeJr0fTE$MZ@hY~AY@W?Q>cd>hJDF#=#(@(caQm@tm*C6v)|3I> zpPPJMiEPvdDHeu?vm8xaMAN9Kzv7U1!Jf9bR}sENco=QFp^U0}tpP`)&MxuQmWZ{58E-L^xxd!|)tcw@I|Xh3I|?ZK2*ZnagR$ek*!)Mey&hA>)4nY2TGtoESlT ziB@FKTk(G6(FOg@e@BQ7yk2(+8-div3-uu(sjo^80cu6stWf3`tX|6b%44Xqp=>Yj z)HN`~&x=*jMkP0xd@@FkJ4cXChQ-`l*t5}gV8hWPu|{El9ifCbA9pKi#QjxG0lX@n zQO9oDHoBQ|%B<^d%anzp`_vJ)p5RoFG7n-rtY$J1>C z8}&LL*E^NuQl!N3@qP2Fc1g@w$&Ol~UUHVva$SAC134yqlgkEZ| z_V%#U^r_0?3jU*eqzog4e<4(ZzIPN%fou7TVwb(o$thi^Y|FZzRt$TOT~G7zzm+;R zj5HsgPv)F`HnQq)Ue}S;`T2T>XlIheMV@F~wS-4|$utXnmRrZ0D(#3+c+Q^CeDP*l zQk$2rbtJ89k{nf@9r91&S#5c?Cb1>xoW}q!C-SZa*`eOJ+=_{}Xtg<|gYpE-A~+^K zL0aG`0v;O?)SSdy>Gg~NMlf0}r`dIRR53v`dld6`;ga?xyQb`u({(@;;I)s~TQCK7r zCA&;9ZTFRS-860XcDwFw_g>p_88DKUVt3jeyUDH#_n|BLQ+lf`7*83^=O0%Z7LFpV zlaA`bS7?$SS@kp~XT7|n=?rN_$P?nM+{Xc=A>8oN(9eZSxnW4TVjlmISKx3ib^6E^0He=) zwLNLUv;GE=+Dl%8;oh_WD+dy4M4&MO1z7Za7_koyO&F=iRbhmoxkax~XF`6S(`8aW zUnw_V>^iCsz;_NCs&B#{tehE`+iz(CF^#D&Z0syK&wr8FL|p5X#xe^xFQmlIB~4s& zadY+JGTEp?;k5M8%~y9S>3UtxY+XVC7|!-EmdG@az)nd_=ZcQBQ#OSmQK|WYM zF+Z_9aU{OlxrtXKu1?&TxFc~d^1{BF_%3>HKZoAiIpl>eCA~BZX6_HMM*^Sm-jfP? zPa+w55u?QqY0^XZAlQd>4##_oq+CM%DBv4o*Ps$+pkY(N;^-}nbbcR}M|uKUF(bQ! ztsv8!ShJ7dBL#m68}|PVh|s^IPm+|F?LC4|rK0Q~;R-g^NzY-m%)2R!Z7&CW#ETyl zeXo_*mI$&TXtKs9VdwU(JAPdszEjV#9-^G?__li?dNHykB))a`-*o9eb-}#KMEbFL z73`snW=nTJsEZvfot;j-Gt@>+Q_GmA*@QgpP@p-Tv}_LVwAorjP1Kexnc*pVmgy;fy#A{B^q6|>)Wx9IP5p~N zdYNX!scQE7D`&32zm_v^T~2LOb@o4f>*mZ^*GGKP(cRra|6&t6iR3$adOGm$^?EYR z-bkyw>0WKNK8yG9avkZ}G`>L>P4^u1WfDzxx7obrn6;LMaPi_nfiM2=KI%A{@~|Ph zZs}JXzJYp~TC11id|}<;>osIE>nYkSinq+`cd9AJ?(Mc3miB4{0KF~6!{D&&+p|L4>9{OYp|^+c4Lbeaz8x{ z6*-@zcMEv)y_n>0WI&1$M?xlgCnEOH0Rmf~)z zZKzo(G>FwJc&B!1STmTOa-X)E83ku(1^3Opb*pJ(M*0$y%-F4Giz(KTPB}EQrm;`g zHrDx+Mi;)hqis}GJ`)j@`*U#aS;(#-ItDGeHs}!Q)Gxh%+;4}Ag3#Z+Iz!y6DkZ?O zLiK@_LQX4(EyjgQGOK%NBVAI!G1@vyN!?Gb2pWIvIJ6H%11SxCb|vtM%}y4N_jNN`T~0#9(W?^Ic;1Z$E#$Pu_r=@} zy-h6DPz112F9YR~q+dor!A(eLlV?PP%qC>W!cUba7Vvq$s>>4wC6k-zj{;wwBFh1xIj zDN{oCL1clqYpH^T7J6E?o!T@a;v>>Z?+GBR(7w#^m*1H4IVuGqTV`Q+_O z2k^J}uBnc=_os*J#8hfpRAH3$>iKjsd4*hSq~$A;&QbYBR!~XHl#^&RZW*=LWR9C- zTYAmWa!I;i1V&|+8@uee)m?G85n(IFjdM3!vIU(|%<6Vkb=FC?Bil8N zk5_AR=h!vFa#ET={Q(PhO};`(H)`^$NUIzjhZm7g(AZ?IyF7*;4y0K5wWl8;C0w&I!-lQ3!tQfm0&D( zLf54l`qL8yL{l~cm}%`xD_PT5_C59l zdxkv^nMG2FRMruOdVS;ve<_T0R6sbsd%l@xQPVCKYRS0kHDt&^1A!Ifo8%{1yQtlODAhJlS{I;qKa zfh7fUKc$qU(im>A+@K{D7FMWUu4QG_YU6%3I2T)4$FOaK7az_YytJ~gAX%wKRn1y0 zFp!p1u*9n=A;}81tR>UUjB4p-HpejKjpdbty-G6EsHR$uR>(q+`Ptv{bHaFN)f*XD zEHjFy1(s^YvvdV1bOcAsytf5m7ce&x<49klG`KyXYkXhmc@a-LlrNor%r6h|8`oqF zk(KF3qi|=lE3O9}|8h0IHS>@ZBwEN3v5n+er!e9LU6eTEm2Xfv_lo6%Agsepc)kTG$8Izc0iC^@t+Y5c71H^l5aDCrOX# zTYOe5e=#u%Z;#hu7HT$@ZrUKhPFi<7B8^A#TFp|oS}~U55#89j!3Y&%ZF zHk}67Y=i9zPs7!88sbp;*i#FaT1PJ;{^^i1(1ntUU3kO%O^XDtgUwQS6j|vmW$7kp zEr?yT24w+lRN+BXNG(*H^5Mh7-k)gigGcGnW9#5o~2VUjQu91 zTA!w+BmHT_zMj`q>sEL?3{AV$YK;9}Ygq40)2j7OOJ!fi)=w-lmN8OKTc~7yE!ID_ zmUvlAG;MQ<=f{U^X7@)nGLe(qOCuXIy5gbMV$aKu8zbJ^{(Gzy*@zwxq7lQpU}d)h z{OqA<)xsCXokuAE-r4R^(et2~oOsp7Zc)>VWZOgqWvULcK+)Y_rpB}0RK zr0{`H#ZYnc+(Cu73FbL-AqB{r+edTp|0BaI_&-t!xwZ^BAuCH{^!QrR&oDQikPLBL zGqAMBzm%Scdj#Nr;wSk|S)srR)ZCi8lklj0B%y|VO?e1fDp#gitG5{ZVE)_qlVHMV z#tYYjxnj-Tx#AmamRoT4^7ZHjBc~5v!nXF>%p@nA`@CkF1w#;QRW(v7fj|g64k#sM zCS*;xdW5@=*@Eko^rnrcp2WSiCoi?D$vkOhG%88kxkZP`FWK5HPW9hMRu8Y3w;+?H zQ`3$;f9~?()gu&vVSTGt+J@P%`j_VO>yGGHTI!W#yF+p8?vCNgrp>JEj#`<{nv;3` zooo)JHad;^+b>~`RVk%4M0&G8i2eQfrvg{Q6yPOD=^KuPc~|^bO+|dEVTuCc%63(E znwjDo>)m!8rc$NMx+>iF1#^=7B3AXZltSK-CACCL^3Mi_)~#l5dFjYv-fw9B@M)J1 z49)F>(P;_WR3;cDQ%Vk1DrkK3DfOo>%45z;*mC@nUZu4|){ACT%AwS3#nr zne7Ep2O$Q}eL(@Tb{3z*j)wMc4I+KGMen5#eJ@z1 zFWu44V-RXeQq^ixmB{J&YzjtR>RI_&)HJWBQ`zT%MDw+A=PFhswT+*N@s2{D&i}^m zB){wL@vr0JNw2b0_3vQlrBWDo>U{+|K-+y~hiac_cmxlTrkG1AnF8ib`6N_vpTn=& zp*BH#T|Vud&i$%hp1+qD8f2k-F7b`T_Yyw?PFaGPyp!B8+W|iQxg+T? zY(fwe(g`2+?B}s9VTV!5$HgqZ3gl%(qE_D%|6$GW)^(R(d-*z?$vc$b-_bP1>J$lg zMf^mqBR0TC$7-l`i5az_jII-vT4elm24haE=1U{|F(AYWV8S-_;z z&!@S!m3y+4PP!djYb#(>M&1%G4HQ`)ToCNoPV}Fcd>tgehlP~{&WW$k#u)Ja_R(VS z>Vrz_J?)oEnV+=Vf8D#*U%qbL&|Z(g`?b3YDWRjnYjSBHZW8#$!Ft>IO!M_Bqh zk+QZ%D`qriXh&F$O_eIXqoX6I#MY0-`}2ROmGeIDs>qvOU9BLfg{ES7ak`#OAEIg5 zw|LcX;BO%cg3%PdMOq7~7J%c*QBCHG#0DVC5MK4`fGu|$A`GAAS*;1!kYPAa43;pz zfHvmr54?Ag1lMqNicdpa4d!X_wJs_?rmN76fu@NgLa>&4YhHA%i%YTS{Or{rYmiqw z**S1T?VBVam0jyyv8r7bGB1MN0b=ytZGepSgm?A_hfgAlcf)c7<*JLME+<8Qz~sxg zqu_iZHVjCe4gM4ru=aI)KYGxOL1<9!RTLLuTm~vvDe>Sa367QIw$rhETEj&AkuVp; zQ*c$u>Bn9SCHFyd<4ac1#){L^gz+`(WF#R84`~vv(^I^kpiJ%+iG8bBeSJ2XOY}erEf;iH^L0cC+)rsmMrI+% zI>isbey0O$i&k{WuEYU07(#t>sf>MK{W0=a@!Tt6OhHOdayQo^cPGWymNH{E@q;K` z7&}ry#|<2$tf1Y=wFJD~2hcX=G8w8SlRj}7|5OFR2&dDTKb85%f?{rBc z+!P#1I^v58d*KdpUjH^+J~u^pon1d!dZ)KIIptCRAedD(5gRO*zniQg(=!9nvd_-A zpG;=(FDy0et48bYqxHZqNnDnAJ^T;vLEXaVDElOg+(4llr!&0SVG`_2vw5>oULje1hO+?&FCKV5qsEk1PXc%}1 zJ>h}xyX0Izp9q5wm_okuh$0u1l^q-ckGmIH3-c)UKi3TPldxzwPz}k>z`6yDg`mD^ z+A=gB6Zt)Uj^N4!RkNOl{DIwxw{c7*&j(NWN9bV?Rc-f|9XP$`JoW+mqLxK0U1T^) zC@4t@4UlP0<8~~(*<{lWM}5`BXqtf(_i;tl0w@Y$N+t1v zQ+3B~^KGWNoAN*~_)F#F2hXJ}U_G5gSYLa=PQOGktb42mlArFj>wE3GdW>oybqC4o zZb42vV;XusVbvS6Yo{RB_Z~uUwePm||FS5XoznO)vX>&W75~xN6gYR=Dy!prb=}`i z;oe0Nc3bm}S|pzef6zz5pXpvVgL5|8Y3ayZ8@mvljaR*Y(){D88A5rM4Q*uob>zlf#A#iSrwN(DB_PLIggVeKq`EK|O8LnTCX zNh56zD#!6S6aVrB;UnHI!8YZs$qYV%nA|4U*CT~_tBmY+d7GT3Y!zJPM?0Vr1#&K^ zkb=|;1<+1!@}Say=eS|m=PyM#H!MR44zhEj&rbFE5rCjO!2^3WWZobLWv`uff25>s z&^~h9F|v;6y`z5zf)M%@a4wJ&@?~GYq73L`kQYLNS2AaLjuV zArl{~FecDQk3}j51=CQ#ljBKhT=rlGCB7+9dnkt28WU?mFmvTiM9tCf2@kyuRmW;Y_C&Ah?5A*_s{#S9XQ4&FqI%#G#` z(u%eRo#K_$sMdH42+bS0R{L28(3_LpXsX8=`+j-d+NF?oSWG)QdpjttjbVP|wcTVi zeH|Rs5s)>y?c6}?E(Ux;Zb$su?~PIBS?u%;&p*`PE~4W`^^8OD1tR^95B8n9pTcKy z7~o~bp75BHW4;ExL!$5J(nI}*Lh~agkdQ1N9y!FX%WwH{uy4(iHsL!%sd~E%KS8~3 zzAE0)w!tWmmFVkI$Os@5!NZSe6+%)x5cXn;3n;xyNLCCkLDDpLW6~{=A%@&73du+7 zUkdPY3hzQ$_3m^t%g4(PUP_cbQ`nimKG)rgcs6k24LID8On6M+_6jdgNL5U#wcKts zw5=$e=HtzWN=DoStWZ#PrZjJG+i^J+?m$)PsAN!7@#~z^Ku}FIbxEfEBokma!zZwcCJr{0U^eKAQM3R{E%Gdb;i$vGj!Lpu^zK4!zjLX^f&6n@s1gnzH