diff --git a/examples/Makefile b/examples/Makefile
index 4f86ad5c0..40906ebfc 100644
--- a/examples/Makefile
+++ b/examples/Makefile
@@ -561,6 +561,7 @@ CORE = \
core/core_window_flags \
core/core_window_letterbox \
core/core_window_should_close \
+ core/core_window_web \
core/core_world_screen
SHAPES = \
@@ -578,6 +579,7 @@ SHAPES = \
shapes/shapes_easings_ball \
shapes/shapes_easings_box \
shapes/shapes_easings_rectangles \
+ shapes/shapes_easings_testbed \
shapes/shapes_following_eyes \
shapes/shapes_hilbert_curve \
shapes/shapes_kaleidoscope \
@@ -655,6 +657,8 @@ TEXT = \
text/text_writing_anim
MODELS = \
+ models/models_animation_blending \
+ models/models_animation_bone_blending \
models/models_animation_gpu_skinning \
models/models_animation_playing \
models/models_basic_voxel \
@@ -707,6 +711,7 @@ SHADERS = \
shaders/shaders_palette_switch \
shaders/shaders_postprocessing \
shaders/shaders_raymarching_rendering \
+ shaders/shaders_rlgl_compute \
shaders/shaders_rounded_rectangle \
shaders/shaders_shadowmap_rendering \
shaders/shaders_shapes_textures \
@@ -728,14 +733,6 @@ AUDIO = \
audio/audio_sound_positioning \
audio/audio_spectrum_visualizer \
audio/audio_stream_effects
-
-OTHERS = \
- others/easings_testbed \
- others/embedded_files_loading \
- others/raylib_opengl_interop \
- others/rlgl_compute_shader \
- others/rlgl_standalone \
- others/web_basic_window
#EXAMPLES_LIST_END
# Define processes to execute
diff --git a/examples/Makefile.Web b/examples/Makefile.Web
index 3841dff29..b91f59267 100644
--- a/examples/Makefile.Web
+++ b/examples/Makefile.Web
@@ -546,6 +546,7 @@ CORE = \
core/core_window_flags \
core/core_window_letterbox \
core/core_window_should_close \
+ core/core_window_web \
core/core_world_screen
SHAPES = \
@@ -563,6 +564,7 @@ SHAPES = \
shapes/shapes_easings_ball \
shapes/shapes_easings_box \
shapes/shapes_easings_rectangles \
+ shapes/shapes_easings_testbed \
shapes/shapes_following_eyes \
shapes/shapes_hilbert_curve \
shapes/shapes_kaleidoscope \
@@ -640,6 +642,8 @@ TEXT = \
text/text_writing_anim
MODELS = \
+ models/models_animation_blending \
+ models/models_animation_bone_blending \
models/models_animation_gpu_skinning \
models/models_animation_playing \
models/models_basic_voxel \
@@ -692,6 +696,7 @@ SHADERS = \
shaders/shaders_palette_switch \
shaders/shaders_postprocessing \
shaders/shaders_raymarching_rendering \
+ shaders/shaders_rlgl_compute \
shaders/shaders_rounded_rectangle \
shaders/shaders_shadowmap_rendering \
shaders/shaders_shapes_textures \
@@ -871,6 +876,9 @@ core/core_window_letterbox: core/core_window_letterbox.c
core/core_window_should_close: core/core_window_should_close.c
$(CC) -o $@$(EXT) $< $(CFLAGS) $(INCLUDE_PATHS) $(LDFLAGS) $(LDLIBS) -D$(PLATFORM)
+core/core_window_web: core/core_window_web.c
+ $(CC) -o $@$(EXT) $< $(CFLAGS) $(INCLUDE_PATHS) $(LDFLAGS) $(LDLIBS) -D$(PLATFORM)
+
core/core_world_screen: core/core_world_screen.c
$(CC) -o $@$(EXT) $< $(CFLAGS) $(INCLUDE_PATHS) $(LDFLAGS) $(LDLIBS) -D$(PLATFORM)
@@ -917,6 +925,9 @@ shapes/shapes_easings_box: shapes/shapes_easings_box.c
shapes/shapes_easings_rectangles: shapes/shapes_easings_rectangles.c
$(CC) -o $@$(EXT) $< $(CFLAGS) $(INCLUDE_PATHS) $(LDFLAGS) $(LDLIBS) -D$(PLATFORM)
+shapes/shapes_easings_testbed: shapes/shapes_easings_testbed.c
+ $(CC) -o $@$(EXT) $< $(CFLAGS) $(INCLUDE_PATHS) $(LDFLAGS) $(LDLIBS) -D$(PLATFORM)
+
shapes/shapes_following_eyes: shapes/shapes_following_eyes.c
$(CC) -o $@$(EXT) $< $(CFLAGS) $(INCLUDE_PATHS) $(LDFLAGS) $(LDLIBS) -D$(PLATFORM)
@@ -1188,6 +1199,18 @@ text/text_writing_anim: text/text_writing_anim.c
$(CC) -o $@$(EXT) $< $(CFLAGS) $(INCLUDE_PATHS) $(LDFLAGS) $(LDLIBS) -D$(PLATFORM)
# Compile MODELS examples
+models/models_animation_blending: models/models_animation_blending.c
+ $(CC) -o $@$(EXT) $< $(CFLAGS) $(INCLUDE_PATHS) $(LDFLAGS) $(LDLIBS) -D$(PLATFORM) \
+ --preload-file models/resources/models/gltf/robot.glb@resources/models/gltf/robot.glb \
+ --preload-file models/resources/shaders/glsl100/skinning.vs@resources/shaders/glsl100/skinning.vs \
+ --preload-file models/resources/shaders/glsl100/skinning.fs@resources/shaders/glsl100/skinning.fs
+
+models/models_animation_bone_blending: models/models_animation_bone_blending.c
+ $(CC) -o $@$(EXT) $< $(CFLAGS) $(INCLUDE_PATHS) $(LDFLAGS) $(LDLIBS) -D$(PLATFORM) \
+ --preload-file models/resources/models/gltf/greenman.glb@resources/models/gltf/greenman.glb \
+ --preload-file models/resources/shaders/glsl100/skinning.vs@resources/shaders/glsl100/skinning.vs \
+ --preload-file models/resources/shaders/glsl100/skinning.fs@resources/shaders/glsl100/skinning.fs
+
models/models_animation_gpu_skinning: models/models_animation_gpu_skinning.c
$(CC) -o $@$(EXT) $< $(CFLAGS) $(INCLUDE_PATHS) $(LDFLAGS) $(LDLIBS) -D$(PLATFORM) \
--preload-file models/resources/models/gltf/greenman.glb@resources/models/gltf/greenman.glb \
@@ -1461,6 +1484,9 @@ shaders/shaders_raymarching_rendering: shaders/shaders_raymarching_rendering.c
$(CC) -o $@$(EXT) $< $(CFLAGS) $(INCLUDE_PATHS) $(LDFLAGS) $(LDLIBS) -D$(PLATFORM) \
--preload-file shaders/resources/shaders/glsl100/raymarching.fs@resources/shaders/glsl100/raymarching.fs
+shaders/shaders_rlgl_compute: shaders/shaders_rlgl_compute.c
+ $(CC) -o $@$(EXT) $< $(CFLAGS) $(INCLUDE_PATHS) $(LDFLAGS) $(LDLIBS) -D$(PLATFORM)
+
shaders/shaders_rounded_rectangle: shaders/shaders_rounded_rectangle.c
$(CC) -o $@$(EXT) $< $(CFLAGS) $(INCLUDE_PATHS) $(LDFLAGS) $(LDLIBS) -D$(PLATFORM) \
--preload-file shaders/resources/shaders/glsl100/base.vs@resources/shaders/glsl100/base.vs \
diff --git a/examples/README.md b/examples/README.md
index 6b2c1950b..2b8b9dd98 100644
--- a/examples/README.md
+++ b/examples/README.md
@@ -17,9 +17,9 @@ You may find it easier to use than other toolchains, especially when it comes to
- `zig build [module]` to compile all examples for a module (e.g. `zig build core`)
- `zig build [example]` to compile _and run_ a particular example (e.g. `zig build core_basic_window`)
-## EXAMPLES COLLECTION [TOTAL: 208]
+## EXAMPLES COLLECTION [TOTAL: 207]
-### category: core [48]
+### category: core [49]
Examples using raylib [core](../src/rcore.c) module platform functionality: window creation, inputs, drawing modes and system functionality.
@@ -73,8 +73,9 @@ Examples using raylib [core](../src/rcore.c) module platform functionality: wind
| [core_text_file_loading](core/core_text_file_loading.c) |
| ⭐☆☆☆ | 5.5 | 5.6 | [Aanjishnu Bhattacharyya](https://github.com/NimComPoo-04) |
| [core_compute_hash](core/core_compute_hash.c) |
| ⭐⭐☆☆ | 5.6-dev | 5.6-dev | [Ramon Santamaria](https://github.com/raysan5) |
| [core_keyboard_testbed](core/core_keyboard_testbed.c) |
| ⭐⭐☆☆ | 5.6 | 5.6 | [Ramon Santamaria](https://github.com/raysan5) |
+| [core_window_web](core/core_window_web.c) |
| ⭐☆☆☆ | 1.3 | 5.5 | [Ramon Santamaria](https://github.com/raysan5) |
-### category: shapes [39]
+### category: shapes [40]
Examples using raylib shapes drawing functionality, provided by raylib [shapes](../src/rshapes.c) module.
@@ -119,6 +120,7 @@ Examples using raylib shapes drawing functionality, provided by raylib [shapes](
| [shapes_ball_physics](shapes/shapes_ball_physics.c) |
| ⭐⭐☆☆ | 5.6-dev | 5.6-dev | [David Buzatto](https://github.com/davidbuzatto) |
| [shapes_penrose_tile](shapes/shapes_penrose_tile.c) |
| ⭐⭐⭐⭐️ | 5.5 | 5.6-dev | [David Buzatto](https://github.com/davidbuzatto) |
| [shapes_hilbert_curve](shapes/shapes_hilbert_curve.c) |
| ⭐⭐⭐☆ | 5.6 | 5.6 | [Hamza RAHAL](https://github.com/hmz-rhl) |
+| [shapes_easings_testbed](shapes/shapes_easings_testbed.c) |
| ⭐⭐⭐☆ | 2.5 | 2.5 | [Juan Miguel López](https://github.com/flashback-fx) |
### category: textures [30]
@@ -180,7 +182,7 @@ Examples using raylib text functionality, including sprite fonts loading/generat
| [text_words_alignment](text/text_words_alignment.c) |
| ⭐☆☆☆ | 5.6-dev | 5.6-dev | [JP Mortiboys](https://github.com/themushroompirates) |
| [text_strings_management](text/text_strings_management.c) |
| ⭐⭐⭐☆ | 5.6-dev | 5.6-dev | [David Buzatto](https://github.com/davidbuzatto) |
-### category: models [27]
+### category: models [29]
Examples using raylib models functionality, including models loading/generation and drawing, provided by raylib [models](../src/rmodels.c) module.
@@ -213,8 +215,10 @@ Examples using raylib models functionality, including models loading/generation
| [models_rotating_cube](models/models_rotating_cube.c) |
| ⭐☆☆☆ | 5.6-dev | 5.6-dev | [Jopestpe](https://github.com/jopestpe) |
| [models_decals](models/models_decals.c) |
| ⭐⭐⭐⭐️ | 5.6-dev | 5.6-dev | [JP Mortiboys](https://github.com/themushroompirates) |
| [models_directional_billboard](models/models_directional_billboard.c) |
| ⭐⭐☆☆ | 5.6-dev | 5.6 | [Robin](https://github.com/RobinsAviary) |
+| [models_animation_bone_blending](models/models_animation_bone_blending.c) |
| ⭐⭐⭐⭐️ | 5.5 | 5.5 | [dmitrii-brand](https://github.com/dmitrii-brand) |
+| [models_animation_blending](models/models_animation_blending.c) |
| ☆☆☆☆ | 5.5 | 5.6-dev | [Kirandeep](https://github.com/Kirandeep-Singh-Khehra) |
-### category: shaders [33]
+### category: shaders [34]
Examples using raylib shaders functionality, including shaders loading, parameters configuration and drawing using them (model shaders and postprocessing shaders). This functionality is directly provided by raylib [rlgl](../src/rlgl.c) module.
@@ -253,6 +257,7 @@ Examples using raylib shaders functionality, including shaders loading, paramete
| [shaders_rounded_rectangle](shaders/shaders_rounded_rectangle.c) |
| ⭐⭐⭐☆ | 5.5 | 5.5 | [Anstro Pleuton](https://github.com/anstropleuton) |
| [shaders_depth_rendering](shaders/shaders_depth_rendering.c) |
| ⭐⭐⭐☆ | 5.6-dev | 5.6-dev | [Luís Almeida](https://github.com/luis605) |
| [shaders_game_of_life](shaders/shaders_game_of_life.c) |
| ⭐⭐⭐☆ | 5.6 | 5.6 | [Jordi Santonja](https://github.com/JordSant) |
+| [shaders_rlgl_compute](shaders/shaders_rlgl_compute.c) |
| ⭐⭐⭐⭐️ | 4.0 | 4.0 | [Teddy Astie](https://github.com/tsnake41) |
### category: audio [9]
@@ -270,18 +275,5 @@ Examples using raylib audio functionality, including sound/music loading and pla
| [audio_sound_positioning](audio/audio_sound_positioning.c) |
| ⭐⭐☆☆ | 5.5 | 5.5 | [Le Juez Victor](https://github.com/Bigfoot71) |
| [audio_spectrum_visualizer](audio/audio_spectrum_visualizer.c) |
| ⭐⭐⭐☆ | 6.0 | 5.6-dev | [IANN](https://github.com/meisei4) |
-### category: others [6]
-
-Examples showing raylib misc functionality that does not fit in other categories, like standalone modules usage or examples integrating external libraries.
-
-| example | image | difficulty
level | version
created | last version
updated | original
developer |
-|-----------|--------|:-------------------:|:------------------:|:-----------------------:|:----------------------|
-| [rlgl_standalone](others/rlgl_standalone.c) |
| ⭐⭐⭐⭐️ | 1.6 | 4.0 | [Ramon Santamaria](https://github.com/raysan5) |
-| [rlgl_compute_shader](others/rlgl_compute_shader.c) |
| ⭐⭐⭐⭐️ | 4.0 | 4.0 | [Teddy Astie](https://github.com/tsnake41) |
-| [easings_testbed](others/easings_testbed.c) |
| ⭐⭐⭐☆ | 2.5 | 3.0 | [Juan Miguel López](https://github.com/flashback-fx) |
-| [raylib_opengl_interop](others/raylib_opengl_interop.c) |
| ⭐⭐⭐⭐️ | 3.8 | 4.0 | [Stephan Soller](https://github.com/arkanis) |
-| [embedded_files_loading](others/embedded_files_loading.c) |
| ⭐⭐☆☆ | 3.0 | 3.5 | [Kristian Holmgren](https://github.com/defutura) |
-| [web_basic_window](others/web_basic_window.c) |
| ⭐☆☆☆ | 5.6-dev | 5.6-dev | [Ramon Santamaria](https://github.com/raysan5) |
-
Some example missing? As always, contributions are welcome, feel free to send new examples!
Here is an [examples template](examples_template.c) with instructions to start with!
diff --git a/examples/core/core_directory_files.c b/examples/core/core_directory_files.c
index a98c950f6..f879b933e 100644
--- a/examples/core/core_directory_files.c
+++ b/examples/core/core_directory_files.c
@@ -37,10 +37,18 @@ int main(void)
char directory[MAX_FILEPATH_SIZE] = { 0 };
strcpy(directory, GetWorkingDirectory());
- FilePathList files = LoadDirectoryFiles(directory);
+ // Load file-paths on current working directory
+ // NOTE: LoadDirectoryFiles() loads files and directories by default,
+ // use LoadDirectoryFilesEx() for custom filters and recursive directories loading
+ //FilePathList files = LoadDirectoryFiles(directory);
+ FilePathList files = LoadDirectoryFilesEx(directory, ".png;.c", false);
int btnBackPressed = false;
+ int listScrollIndex = 0;
+ int listItemActive = -1;
+ int listItemFocused = -1;
+
SetTargetFPS(60);
//--------------------------------------------------------------------------------------
@@ -62,10 +70,18 @@ int main(void)
BeginDrawing();
ClearBackground(RAYWHITE);
- DrawText(directory, 100, 40, 20, DARKGRAY);
+ btnBackPressed = GuiButton((Rectangle){ 40.0f, 10.0f, 48, 28 }, "<");
- btnBackPressed = GuiButton((Rectangle){ 40.0f, 38.0f, 48, 24 }, "<");
+ GuiSetStyle(DEFAULT, TEXT_SIZE, GuiGetFont().baseSize*2);
+ GuiLabel((Rectangle){ 40 + 48 + 10, 10, 700, 28 }, directory);
+ GuiSetStyle(DEFAULT, TEXT_SIZE, GuiGetFont().baseSize);
+ GuiSetStyle(LISTVIEW, TEXT_ALIGNMENT, TEXT_ALIGN_LEFT);
+ GuiSetStyle(LISTVIEW, TEXT_PADDING, 40);
+ GuiListViewEx((Rectangle){ 0, 50, GetScreenWidth(), GetScreenHeight() - 50 },
+ files.paths, files.count, &listScrollIndex, &listItemActive, &listItemFocused);
+
+ /*
for (int i = 0; i < (int)files.count; i++)
{
Color color = Fade(LIGHTGRAY, 0.3f);
@@ -84,6 +100,7 @@ int main(void)
DrawRectangle(0, 85 + 40*i, screenWidth, 40, color);
DrawText(GetFileName(files.paths[i]), 120, 100 + 40*i, 10, GRAY);
}
+ */
EndDrawing();
//----------------------------------------------------------------------------------
diff --git a/examples/others/web_basic_window.c b/examples/core/core_window_web.c
similarity index 93%
rename from examples/others/web_basic_window.c
rename to examples/core/core_window_web.c
index 217c47fbc..3b1b50748 100644
--- a/examples/others/web_basic_window.c
+++ b/examples/core/core_window_web.c
@@ -1,14 +1,14 @@
/*******************************************************************************************
*
-* raylib [others] example - basic window
-*
-* This example has been adapted to compile for PLATFORM_WEB and PLATFORM_DESKTOP
-* As you will notice, code structure is slightly different to the other examples
+* raylib [core] example - window web
*
* Example complexity rating: [★☆☆☆] 1/4
*
* Example originally created with raylib 1.3, last time updated with raylib 5.5
*
+* This example has been adapted to compile for PLATFORM_WEB and PLATFORM_DESKTOP
+* As you will notice, code structure is slightly different to the other examples
+*
* Example licensed under an unmodified zlib/libpng license, which is an OSI-certified,
* BSD-like license that allows static linking with closed source software
*
@@ -40,7 +40,7 @@ int main(void)
{
// Initialization
//--------------------------------------------------------------------------------------
- InitWindow(screenWidth, screenHeight, "raylib [others] example - web basic window");
+ InitWindow(screenWidth, screenHeight, "raylib [core] example - window web");
#if defined(PLATFORM_WEB)
emscripten_set_main_loop(UpdateDrawFrame, 0, 1);
@@ -79,7 +79,7 @@ void UpdateDrawFrame(void)
ClearBackground(RAYWHITE);
- DrawText("Congrats! You created your first window!", 190, 200, 20, LIGHTGRAY);
+ DrawText("Welcome to raylib web structure!", 220, 200, 20, SKYBLUE);
EndDrawing();
//----------------------------------------------------------------------------------
diff --git a/examples/core/core_window_web.png b/examples/core/core_window_web.png
new file mode 100644
index 000000000..32886d665
Binary files /dev/null and b/examples/core/core_window_web.png differ
diff --git a/examples/core/raygui.h b/examples/core/raygui.h
index 88fe5cc5b..67c16be45 100644
--- a/examples/core/raygui.h
+++ b/examples/core/raygui.h
@@ -1,6 +1,6 @@
/*******************************************************************************************
*
-* raygui v4.5-dev - A simple and easy-to-use immediate-mode gui library
+* raygui v5.0-dev - A simple and easy-to-use immediate-mode gui library
*
* DESCRIPTION:
* raygui is a tools-dev-focused immediate-mode-gui library based on raylib but also
@@ -83,8 +83,8 @@
* used for all controls, when any of those base values is set, it is automatically populated to all
* controls, so, specific control values overwriting generic style should be set after base values
*
-* After the first BASE set we have the EXTENDED properties (by default guiStyle[16..23]), those
-* properties are actually common to all controls and can not be overwritten individually (like BASE ones)
+* After the first BASE properties set, the EXTENDED properties set is defined (by default guiStyle[16..23]),
+* those properties are actually common to all controls and can not be overwritten individually (like BASE ones)
* Some of those properties are: TEXT_SIZE, TEXT_SPACING, LINE_COLOR, BACKGROUND_COLOR
*
* Custom control properties can be defined using the EXTENDED properties for each independent control.
@@ -141,13 +141,14 @@
* Draw text bounds rectangles for debug
*
* VERSIONS HISTORY:
-* 5.0 (xx-Nov-2025) ADDED: Support up to 32 controls (v500)
+* 5.0 (xx-Mar-2026) ADDED: Support up to 32 controls (v500)
* ADDED: guiControlExclusiveMode and guiControlExclusiveRec for exclusive modes
* ADDED: GuiValueBoxFloat()
* ADDED: GuiDropdonwBox() properties: DROPDOWN_ARROW_HIDDEN, DROPDOWN_ROLL_UP
* ADDED: GuiListView() property: LIST_ITEMS_BORDER_WIDTH
* ADDED: GuiLoadIconsFromMemory()
* ADDED: Multiple new icons
+* ADDED: Macros for inputs customization, raylib decoupling
* REMOVED: GuiSpinner() from controls list, using BUTTON + VALUEBOX properties
* REMOVED: GuiSliderPro(), functionality was redundant
* REVIEWED: Controls using text labels to use LABEL properties
@@ -165,6 +166,7 @@
* REVIEWED: GuiTextBox(), multiple improvements: autocursor and more
* REVIEWED: Functions descriptions, removed wrong return value reference
* REDESIGNED: GuiColorPanel(), improved HSV <-> RGBA convertion
+* REDESIGNED: WARNING: TEXT_LINE_SPACING does not consider text height, only lines spacing
*
* 4.0 (12-Sep-2023) ADDED: GuiToggleSlider()
* ADDED: GuiColorPickerHSV() and GuiColorPanelHSV()
@@ -316,7 +318,7 @@
*
* LICENSE: zlib/libpng
*
-* Copyright (c) 2014-2025 Ramon Santamaria (@raysan5)
+* Copyright (c) 2014-2026 Ramon Santamaria (@raysan5)
*
* This software is provided "as-is", without any express or implied warranty. In no event
* will the authors be held liable for any damages arising from the use of this software.
@@ -351,10 +353,11 @@
// NOTE: Microsoft specifiers to tell compiler that symbols are imported/exported from a .dll
#if defined(_WIN32)
#if defined(BUILD_LIBTYPE_SHARED)
- #define RAYGUIAPI __declspec(dllexport) // We are building the library as a Win32 shared library (.dll)
+ #define RAYGUIAPI __declspec(dllexport) // Building the library as a Win32 shared library (.dll)
#elif defined(USE_LIBTYPE_SHARED)
- #define RAYGUIAPI __declspec(dllimport) // We are using the library as a Win32 shared library (.dll)
+ #define RAYGUIAPI __declspec(dllimport) // Using the library as a Win32 shared library (.dll)
#endif
+ #define _CRT_SECURE_NO_WARNINGS // Disable unsafe warnings on scanf() functions in MSVC
#endif
// Function specifiers definition
@@ -369,9 +372,48 @@
// NOTE: Avoiding those calls, also avoids const strings memory usage
#define RAYGUI_SUPPORT_LOG_INFO
#if defined(RAYGUI_SUPPORT_LOG_INFO)
- #define RAYGUI_LOG(...) printf(__VA_ARGS__)
+ #define RAYGUI_LOG(...) printf(__VA_ARGS__)
#else
- #define RAYGUI_LOG(...)
+ #define RAYGUI_LOG(...)
+#endif
+
+// Macros to define required UI inputs, including mapping to gamepad controls
+// TODO: Define additionally required macros for missing inputs
+#if !defined(GUI_BUTTON_DOWN)
+ #define GUI_BUTTON_DOWN (IsMouseButtonDown(MOUSE_LEFT_BUTTON) || IsGamepadButtonDown(0, GAMEPAD_BUTTON_RIGHT_FACE_DOWN))
+#endif
+#if !defined(GUI_BUTTON_DOWN_ALT)
+ // Mapping to alternative button down pressed
+ #define GUI_BUTTON_DOWN_ALT (IsMouseButtonDown(MOUSE_RIGHT_BUTTON) || IsGamepadButtonDown(0, GAMEPAD_BUTTON_RIGHT_FACE_RIGHT))
+#endif
+#if !defined(GUI_BUTTON_PRESSED)
+ #define GUI_BUTTON_PRESSED (IsMouseButtonPressed(MOUSE_LEFT_BUTTON) || IsGamepadButtonPressed(0, GAMEPAD_BUTTON_RIGHT_FACE_DOWN))
+#endif
+// TODO: WARNING: GuiTabBar() still requires IsMouseButtonPressed(MOUSE_MIDDLE_BUTTON)
+#if !defined(GUI_BUTTON_RELEASED)
+ #define GUI_BUTTON_RELEASED (IsMouseButtonReleased(MOUSE_LEFT_BUTTON) || IsGamepadButtonReleased(0, GAMEPAD_BUTTON_RIGHT_FACE_DOWN))
+#endif
+#if !defined(GUI_SCROLL_DELTA)
+ // Mapping to scroll delta changes
+ // TODO: Review inconsistencies between platforms
+ #if defined(PLATFORM_WEB)
+ // NOTE: Gamepad axis triggers not detected on web platform
+ #define GUI_SCROLL_DELTA ((float)IsGamepadButtonDown(0, GAMEPAD_BUTTON_RIGHT_TRIGGER_2) - (float)IsGamepadButtonDown(0, GAMEPAD_BUTTON_LEFT_TRIGGER_2))
+ #else
+ #define GUI_SCROLL_DELTA (GetMouseWheelMove() + (GetGamepadAxisMovement(0, GAMEPAD_AXIS_RIGHT_TRIGGER) + 1) - (GetGamepadAxisMovement(0, GAMEPAD_AXIS_LEFT_TRIGGER) + 1))
+ #endif
+#endif
+#if !defined(GUI_POINTER_POSITION)
+ #define GUI_POINTER_POSITION GetMousePosition()
+#endif
+#if !defined(GUI_KEY_DOWN)
+ #define GUI_KEY_DOWN(key) IsKeyDown(key)
+#endif
+#if !defined(GUI_KEY_PRESSED)
+ #define GUI_KEY_PRESSED(key) IsKeyPressed(key)
+#endif
+#if !defined(GUI_INPUT_KEY)
+ #define GUI_INPUT_KEY GetCharPressed()
#endif
//----------------------------------------------------------------------------------
@@ -567,7 +609,7 @@ typedef enum {
//----------------------------------------------------------------------------------
// DEFAULT extended properties
// NOTE: Those properties are common to all controls or global
-// WARNING: We only have 8 slots for those properties by default!!! -> New global control: TEXT?
+// WARNING: Only 8 slots vailable for those properties by default
typedef enum {
TEXT_SIZE = 16, // Text size (glyphs max height)
TEXT_SPACING, // Text spacing between glyphs
@@ -1091,7 +1133,7 @@ typedef enum {
// Icons data is defined by bit array (every bit represents one pixel)
// Those arrays are stored as unsigned int data arrays, so,
// every array element defines 32 pixels (bits) of information
-// One icon is defined by 8 int, (8 int * 32 bit = 256 bit = 16*16 pixels)
+// One icon is defined by 8 int, (8 int*32 bit = 256 bit = 16*16 pixels)
// NOTE: Number of elemens depend on RAYGUI_ICON_SIZE (by default 16x16 pixels)
#define RAYGUI_ICON_DATA_ELEMENTS (RAYGUI_ICON_SIZE*RAYGUI_ICON_SIZE/32)
@@ -1450,12 +1492,12 @@ static bool IsMouseButtonReleased(int button);
static bool IsKeyDown(int key);
static bool IsKeyPressed(int key);
-static int GetCharPressed(void); // -- GuiTextBox(), GuiValueBox()
+static int GetCharPressed(void); // -- GuiTextBox(), GuiValueBox()
//-------------------------------------------------------------------------------
// Drawing required functions
//-------------------------------------------------------------------------------
-static void DrawRectangle(int x, int y, int width, int height, Color color); // -- GuiDrawRectangle()
+static void DrawRectangle(int x, int y, int width, int height, Color color); // -- GuiDrawRectangle()
static void DrawRectangleGradientEx(Rectangle rec, Color col1, Color col2, Color col3, Color col4); // -- GuiColorPicker()
//-------------------------------------------------------------------------------
@@ -1520,11 +1562,11 @@ static Color GuiFade(Color color, float alpha); // Fade color by an alph
// Gui Setup Functions Definition
//----------------------------------------------------------------------------------
// Enable gui global state
-// NOTE: We check for STATE_DISABLED to avoid messing custom global state setups
+// NOTE: Checking for STATE_DISABLED to avoid messing custom global state setups
void GuiEnable(void) { if (guiState == STATE_DISABLED) guiState = STATE_NORMAL; }
// Disable gui global state
-// NOTE: We check for STATE_NORMAL to avoid messing custom global state setups
+// NOTE: Checking for STATE_NORMAL to avoid messing custom global state setups
void GuiDisable(void) { if (guiState == STATE_NORMAL) guiState = STATE_DISABLED; }
// Lock gui global state
@@ -1557,9 +1599,8 @@ void GuiSetFont(Font font)
{
if (font.texture.id > 0)
{
- // NOTE: If we try to setup a font but default style has not been
- // lazily loaded before, it will be overwritten, so we need to force
- // default style loading first
+ // NOTE: If a font is tried to be set but default style has not been lazily loaded first,
+ // it will be overwritten, so default style loading needs to be forced first
if (!guiStyleLoaded) GuiLoadStyleDefault();
guiFont = font;
@@ -1613,13 +1654,14 @@ int GuiWindowBox(Rectangle bounds, const char *title)
//GuiState state = guiState;
int statusBarHeight = RAYGUI_WINDOWBOX_STATUSBAR_HEIGHT;
+ int statusBorderWidth = GuiGetStyle(STATUSBAR, BORDER_WIDTH);
Rectangle statusBar = { bounds.x, bounds.y, bounds.width, (float)statusBarHeight };
if (bounds.height < statusBarHeight*2.0f) bounds.height = statusBarHeight*2.0f;
const float vPadding = statusBarHeight/2.0f - RAYGUI_WINDOWBOX_CLOSEBUTTON_HEIGHT/2.0f;
- Rectangle windowPanel = { bounds.x, bounds.y + (float)statusBarHeight - 1, bounds.width, bounds.height - (float)statusBarHeight + 1 };
- Rectangle closeButtonRec = { statusBar.x + statusBar.width - GuiGetStyle(STATUSBAR, BORDER_WIDTH) - RAYGUI_WINDOWBOX_CLOSEBUTTON_HEIGHT - vPadding,
+ Rectangle windowPanel = { bounds.x, bounds.y + (float)statusBarHeight - (float)statusBorderWidth, bounds.width, bounds.height - (float)statusBarHeight + (float)statusBorderWidth };
+ Rectangle closeButtonRec = { statusBar.x + statusBar.width - (float)statusBorderWidth - RAYGUI_WINDOWBOX_CLOSEBUTTON_HEIGHT - vPadding,
statusBar.y + vPadding, RAYGUI_WINDOWBOX_CLOSEBUTTON_HEIGHT, RAYGUI_WINDOWBOX_CLOSEBUTTON_HEIGHT };
// Update control
@@ -1629,8 +1671,8 @@ int GuiWindowBox(Rectangle bounds, const char *title)
// Draw control
//--------------------------------------------------------------------
- GuiStatusBar(statusBar, title); // Draw window header as status bar
GuiPanel(windowPanel, NULL); // Draw window base
+ GuiStatusBar(statusBar, title); // Draw window header as status bar
// Draw window close button
int tempBorderWidth = GuiGetStyle(BUTTON, BORDER_WIDTH);
@@ -1786,7 +1828,7 @@ int GuiTabBar(Rectangle bounds, const char **text, int count, int *active)
}
// Close tab with middle mouse button pressed
- if (CheckCollisionPointRec(GetMousePosition(), tabBounds) && IsMouseButtonPressed(MOUSE_MIDDLE_BUTTON)) result = i;
+ if (CheckCollisionPointRec(GUI_POINTER_POSITION, tabBounds) && IsMouseButtonPressed(MOUSE_MIDDLE_BUTTON)) result = i;
GuiSetStyle(TOGGLE, TEXT_PADDING, textPadding);
GuiSetStyle(TOGGLE, TEXT_ALIGNMENT, textAlignment);
@@ -1885,37 +1927,37 @@ int GuiScrollPanel(Rectangle bounds, const char *text, Rectangle content, Vector
//--------------------------------------------------------------------
if ((state != STATE_DISABLED) && !guiLocked)
{
- Vector2 mousePoint = GetMousePosition();
+ Vector2 mousePoint = GUI_POINTER_POSITION;
// Check button state
if (CheckCollisionPointRec(mousePoint, bounds))
{
- if (IsMouseButtonDown(MOUSE_LEFT_BUTTON)) state = STATE_PRESSED;
+ if (GUI_BUTTON_DOWN) state = STATE_PRESSED;
else state = STATE_FOCUSED;
#if defined(SUPPORT_SCROLLBAR_KEY_INPUT)
if (hasHorizontalScrollBar)
{
- if (IsKeyDown(KEY_RIGHT)) scrollPos.x -= GuiGetStyle(SCROLLBAR, SCROLL_SPEED);
- if (IsKeyDown(KEY_LEFT)) scrollPos.x += GuiGetStyle(SCROLLBAR, SCROLL_SPEED);
+ if (GUI_KEY_DOWN(KEY_RIGHT)) scrollPos.x -= GuiGetStyle(SCROLLBAR, SCROLL_SPEED);
+ if (GUI_KEY_DOWN(KEY_LEFT)) scrollPos.x += GuiGetStyle(SCROLLBAR, SCROLL_SPEED);
}
if (hasVerticalScrollBar)
{
- if (IsKeyDown(KEY_DOWN)) scrollPos.y -= GuiGetStyle(SCROLLBAR, SCROLL_SPEED);
- if (IsKeyDown(KEY_UP)) scrollPos.y += GuiGetStyle(SCROLLBAR, SCROLL_SPEED);
+ if (GUI_KEY_DOWN(KEY_DOWN)) scrollPos.y -= GuiGetStyle(SCROLLBAR, SCROLL_SPEED);
+ if (GUI_KEY_DOWN(KEY_UP)) scrollPos.y += GuiGetStyle(SCROLLBAR, SCROLL_SPEED);
}
#endif
- float wheelMove = GetMouseWheelMove();
+ float scrollDelta = GUI_SCROLL_DELTA;
// Set scrolling speed with mouse wheel based on ratio between bounds and content
- Vector2 mouseWheelSpeed = { content.width/bounds.width, content.height/bounds.height };
- if (mouseWheelSpeed.x < RAYGUI_MIN_MOUSE_WHEEL_SPEED) mouseWheelSpeed.x = RAYGUI_MIN_MOUSE_WHEEL_SPEED;
- if (mouseWheelSpeed.y < RAYGUI_MIN_MOUSE_WHEEL_SPEED) mouseWheelSpeed.y = RAYGUI_MIN_MOUSE_WHEEL_SPEED;
+ Vector2 scrollSpeed = { content.width/bounds.width, content.height/bounds.height };
+ if (scrollSpeed.x < RAYGUI_MIN_MOUSE_WHEEL_SPEED) scrollSpeed.x = RAYGUI_MIN_MOUSE_WHEEL_SPEED;
+ if (scrollSpeed.y < RAYGUI_MIN_MOUSE_WHEEL_SPEED) scrollSpeed.y = RAYGUI_MIN_MOUSE_WHEEL_SPEED;
// Horizontal and vertical scrolling with mouse wheel
- if (hasHorizontalScrollBar && (IsKeyDown(KEY_LEFT_CONTROL) || IsKeyDown(KEY_LEFT_SHIFT))) scrollPos.x += wheelMove*mouseWheelSpeed.x;
- else scrollPos.y += wheelMove*mouseWheelSpeed.y; // Vertical scroll
+ if (hasHorizontalScrollBar && (GUI_KEY_DOWN(KEY_LEFT_CONTROL) || GUI_KEY_DOWN(KEY_LEFT_SHIFT))) scrollPos.x += scrollDelta*scrollSpeed.x;
+ else scrollPos.y += scrollDelta*scrollSpeed.y; // Vertical scroll
}
}
@@ -2001,15 +2043,15 @@ int GuiButton(Rectangle bounds, const char *text)
//--------------------------------------------------------------------
if ((state != STATE_DISABLED) && !guiLocked && !guiControlExclusiveMode)
{
- Vector2 mousePoint = GetMousePosition();
+ Vector2 mousePoint = GUI_POINTER_POSITION;
// Check button state
if (CheckCollisionPointRec(mousePoint, bounds))
{
- if (IsMouseButtonDown(MOUSE_LEFT_BUTTON)) state = STATE_PRESSED;
+ if (GUI_BUTTON_DOWN) state = STATE_PRESSED;
else state = STATE_FOCUSED;
- if (IsMouseButtonReleased(MOUSE_LEFT_BUTTON)) result = 1;
+ if (GUI_BUTTON_RELEASED) result = 1;
}
}
//--------------------------------------------------------------------
@@ -2031,7 +2073,7 @@ int GuiLabelButton(Rectangle bounds, const char *text)
GuiState state = guiState;
bool pressed = false;
- // NOTE: We force bounds.width to be all text
+ // NOTE: Force bounds.width to be all text
float textWidth = (float)GuiGetTextWidth(text);
if ((bounds.width - 2*GuiGetStyle(LABEL, BORDER_WIDTH) - 2*GuiGetStyle(LABEL, TEXT_PADDING)) < textWidth) bounds.width = textWidth + 2*GuiGetStyle(LABEL, BORDER_WIDTH) + 2*GuiGetStyle(LABEL, TEXT_PADDING) + 2;
@@ -2039,15 +2081,15 @@ int GuiLabelButton(Rectangle bounds, const char *text)
//--------------------------------------------------------------------
if ((state != STATE_DISABLED) && !guiLocked && !guiControlExclusiveMode)
{
- Vector2 mousePoint = GetMousePosition();
+ Vector2 mousePoint = GUI_POINTER_POSITION;
// Check checkbox state
if (CheckCollisionPointRec(mousePoint, bounds))
{
- if (IsMouseButtonDown(MOUSE_LEFT_BUTTON)) state = STATE_PRESSED;
+ if (GUI_BUTTON_DOWN) state = STATE_PRESSED;
else state = STATE_FOCUSED;
- if (IsMouseButtonReleased(MOUSE_LEFT_BUTTON)) pressed = true;
+ if (GUI_BUTTON_RELEASED) pressed = true;
}
}
//--------------------------------------------------------------------
@@ -2073,13 +2115,13 @@ int GuiToggle(Rectangle bounds, const char *text, bool *active)
//--------------------------------------------------------------------
if ((state != STATE_DISABLED) && !guiLocked && !guiControlExclusiveMode)
{
- Vector2 mousePoint = GetMousePosition();
+ Vector2 mousePoint = GUI_POINTER_POSITION;
// Check toggle button state
if (CheckCollisionPointRec(mousePoint, bounds))
{
- if (IsMouseButtonDown(MOUSE_LEFT_BUTTON)) state = STATE_PRESSED;
- else if (IsMouseButtonReleased(MOUSE_LEFT_BUTTON))
+ if (GUI_BUTTON_DOWN) state = STATE_PRESSED;
+ else if (GUI_BUTTON_RELEASED)
{
state = STATE_NORMAL;
*active = !(*active);
@@ -2184,12 +2226,12 @@ int GuiToggleSlider(Rectangle bounds, const char *text, int *active)
//--------------------------------------------------------------------
if ((state != STATE_DISABLED) && !guiLocked)
{
- Vector2 mousePoint = GetMousePosition();
+ Vector2 mousePoint = GUI_POINTER_POSITION;
if (CheckCollisionPointRec(mousePoint, bounds))
{
- if (IsMouseButtonDown(MOUSE_LEFT_BUTTON)) state = STATE_PRESSED;
- else if (IsMouseButtonReleased(MOUSE_LEFT_BUTTON))
+ if (GUI_BUTTON_DOWN) state = STATE_PRESSED;
+ else if (GUI_BUTTON_RELEASED)
{
state = STATE_PRESSED;
(*active)++;
@@ -2255,7 +2297,7 @@ int GuiCheckBox(Rectangle bounds, const char *text, bool *checked)
//--------------------------------------------------------------------
if ((state != STATE_DISABLED) && !guiLocked && !guiControlExclusiveMode)
{
- Vector2 mousePoint = GetMousePosition();
+ Vector2 mousePoint = GUI_POINTER_POSITION;
Rectangle totalBounds = {
(GuiGetStyle(CHECKBOX, TEXT_ALIGNMENT) == TEXT_ALIGN_LEFT)? textBounds.x : bounds.x,
@@ -2267,10 +2309,10 @@ int GuiCheckBox(Rectangle bounds, const char *text, bool *checked)
// Check checkbox state
if (CheckCollisionPointRec(mousePoint, totalBounds))
{
- if (IsMouseButtonDown(MOUSE_LEFT_BUTTON)) state = STATE_PRESSED;
+ if (GUI_BUTTON_DOWN) state = STATE_PRESSED;
else state = STATE_FOCUSED;
- if (IsMouseButtonReleased(MOUSE_LEFT_BUTTON))
+ if (GUI_BUTTON_RELEASED)
{
*checked = !(*checked);
result = 1;
@@ -2323,18 +2365,18 @@ int GuiComboBox(Rectangle bounds, const char *text, int *active)
//--------------------------------------------------------------------
if ((state != STATE_DISABLED) && !guiLocked && (itemCount > 1) && !guiControlExclusiveMode)
{
- Vector2 mousePoint = GetMousePosition();
+ Vector2 mousePoint = GUI_POINTER_POSITION;
if (CheckCollisionPointRec(mousePoint, bounds) ||
CheckCollisionPointRec(mousePoint, selector))
{
- if (IsMouseButtonPressed(MOUSE_LEFT_BUTTON))
+ if (GUI_BUTTON_PRESSED)
{
*active += 1;
if (*active >= itemCount) *active = 0; // Cyclic combobox
}
- if (IsMouseButtonDown(MOUSE_LEFT_BUTTON)) state = STATE_PRESSED;
+ if (GUI_BUTTON_DOWN) state = STATE_PRESSED;
else state = STATE_FOCUSED;
}
}
@@ -2392,7 +2434,7 @@ int GuiDropdownBox(Rectangle bounds, const char *text, int *active, bool editMod
//--------------------------------------------------------------------
if ((state != STATE_DISABLED) && (editMode || !guiLocked) && (itemCount > 1) && !guiControlExclusiveMode)
{
- Vector2 mousePoint = GetMousePosition();
+ Vector2 mousePoint = GUI_POINTER_POSITION;
if (editMode)
{
@@ -2401,11 +2443,11 @@ int GuiDropdownBox(Rectangle bounds, const char *text, int *active, bool editMod
// Check if mouse has been pressed or released outside limits
if (!CheckCollisionPointRec(mousePoint, boundsOpen))
{
- if (IsMouseButtonPressed(MOUSE_LEFT_BUTTON) || IsMouseButtonReleased(MOUSE_LEFT_BUTTON)) result = 1;
+ if (GUI_BUTTON_PRESSED || GUI_BUTTON_RELEASED) result = 1;
}
// Check if already selected item has been pressed again
- if (CheckCollisionPointRec(mousePoint, bounds) && IsMouseButtonPressed(MOUSE_LEFT_BUTTON)) result = 1;
+ if (CheckCollisionPointRec(mousePoint, bounds) && GUI_BUTTON_PRESSED) result = 1;
// Check focused and selected item
for (int i = 0; i < itemCount; i++)
@@ -2417,7 +2459,7 @@ int GuiDropdownBox(Rectangle bounds, const char *text, int *active, bool editMod
if (CheckCollisionPointRec(mousePoint, itemBounds))
{
itemFocused = i;
- if (IsMouseButtonReleased(MOUSE_LEFT_BUTTON))
+ if (GUI_BUTTON_RELEASED)
{
itemSelected = i;
result = 1; // Item selected
@@ -2432,7 +2474,7 @@ int GuiDropdownBox(Rectangle bounds, const char *text, int *active, bool editMod
{
if (CheckCollisionPointRec(mousePoint, bounds))
{
- if (IsMouseButtonPressed(MOUSE_LEFT_BUTTON))
+ if (GUI_BUTTON_PRESSED)
{
result = 1;
state = STATE_PRESSED;
@@ -2506,7 +2548,7 @@ int GuiTextBox(Rectangle bounds, char *text, int textSize, bool editMode)
int result = 0;
GuiState state = guiState;
- bool multiline = false; // TODO: Consider multiline text input
+ bool multiline = false; // TODO: Consider multiline text input
int wrapMode = GuiGetStyle(DEFAULT, TEXT_WRAP_MODE);
Rectangle textBounds = GetTextBounds(TEXTBOX, bounds);
@@ -2514,7 +2556,7 @@ int GuiTextBox(Rectangle bounds, char *text, int textSize, bool editMode)
int thisCursorIndex = textBoxCursorIndex;
if (thisCursorIndex > textLength) thisCursorIndex = textLength;
int textWidth = GuiGetTextWidth(text) - GuiGetTextWidth(text + thisCursorIndex);
- int textIndexOffset = 0; // Text index offset to start drawing in the box
+ int textIndexOffset = 0; // Text index offset to start drawing in the box
// Cursor rectangle
// NOTE: Position X value should be updated
@@ -2547,13 +2589,13 @@ int GuiTextBox(Rectangle bounds, char *text, int textSize, bool editMode)
!guiControlExclusiveMode && // No gui slider on dragging
(wrapMode == TEXT_WRAP_NONE)) // No wrap mode
{
- Vector2 mousePosition = GetMousePosition();
+ Vector2 mousePosition = GUI_POINTER_POSITION;
if (editMode)
{
// GLOBAL: Auto-cursor movement logic
// NOTE: Keystrokes are handled repeatedly when button is held down for some time
- if (IsKeyDown(KEY_LEFT) || IsKeyDown(KEY_RIGHT) || IsKeyDown(KEY_UP) || IsKeyDown(KEY_DOWN) || IsKeyDown(KEY_BACKSPACE) || IsKeyDown(KEY_DELETE)) autoCursorCounter++;
+ if (GUI_KEY_DOWN(KEY_LEFT) || GUI_KEY_DOWN(KEY_RIGHT) || GUI_KEY_DOWN(KEY_UP) || GUI_KEY_DOWN(KEY_DOWN) || GUI_KEY_DOWN(KEY_BACKSPACE) || GUI_KEY_DOWN(KEY_DELETE)) autoCursorCounter++;
else autoCursorCounter = 0;
bool autoCursorShouldTrigger = (autoCursorCounter > RAYGUI_TEXTBOX_AUTO_CURSOR_COOLDOWN) && ((autoCursorCounter % RAYGUI_TEXTBOX_AUTO_CURSOR_DELAY) == 0);
@@ -2563,7 +2605,7 @@ int GuiTextBox(Rectangle bounds, char *text, int textSize, bool editMode)
if (textBoxCursorIndex > textLength) textBoxCursorIndex = textLength;
// If text does not fit in the textbox and current cursor position is out of bounds,
- // we add an index offset to text for drawing only what requires depending on cursor
+ // adding an index offset to text for drawing only what requires depending on cursor
while (textWidth >= textBounds.width)
{
int nextCodepointSize = 0;
@@ -2574,15 +2616,15 @@ int GuiTextBox(Rectangle bounds, char *text, int textSize, bool editMode)
textWidth = GuiGetTextWidth(text + textIndexOffset) - GuiGetTextWidth(text + textBoxCursorIndex);
}
- int codepoint = GetCharPressed(); // Get Unicode codepoint
- if (multiline && IsKeyPressed(KEY_ENTER)) codepoint = (int)'\n';
+ int codepoint = GUI_INPUT_KEY; // Get Unicode codepoint
+ if (multiline && GUI_KEY_PRESSED(KEY_ENTER)) codepoint = (int)'\n';
// Encode codepoint as UTF-8
int codepointSize = 0;
const char *charEncoded = CodepointToUTF8(codepoint, &codepointSize);
// Handle text paste action
- if (IsKeyPressed(KEY_V) && (IsKeyDown(KEY_LEFT_CONTROL) || IsKeyDown(KEY_RIGHT_CONTROL)))
+ if (GUI_KEY_PRESSED(KEY_V) && (GUI_KEY_DOWN(KEY_LEFT_CONTROL) || GUI_KEY_DOWN(KEY_RIGHT_CONTROL)))
{
const char *pasteText = GetClipboardText();
if (pasteText != NULL)
@@ -2632,13 +2674,13 @@ int GuiTextBox(Rectangle bounds, char *text, int textSize, bool editMode)
}
// Move cursor to start
- if ((textLength > 0) && IsKeyPressed(KEY_HOME)) textBoxCursorIndex = 0;
+ if ((textLength > 0) && GUI_KEY_PRESSED(KEY_HOME)) textBoxCursorIndex = 0;
// Move cursor to end
- if ((textLength > textBoxCursorIndex) && IsKeyPressed(KEY_END)) textBoxCursorIndex = textLength;
+ if ((textLength > textBoxCursorIndex) && GUI_KEY_PRESSED(KEY_END)) textBoxCursorIndex = textLength;
// Delete related codepoints from text, after current cursor position
- if ((textLength > textBoxCursorIndex) && IsKeyPressed(KEY_DELETE) && (IsKeyDown(KEY_LEFT_CONTROL) || IsKeyDown(KEY_RIGHT_CONTROL)))
+ if ((textLength > textBoxCursorIndex) && GUI_KEY_PRESSED(KEY_DELETE) && (GUI_KEY_DOWN(KEY_LEFT_CONTROL) || GUI_KEY_DOWN(KEY_RIGHT_CONTROL)))
{
int offset = textBoxCursorIndex;
int accCodepointSize = 0;
@@ -2674,7 +2716,7 @@ int GuiTextBox(Rectangle bounds, char *text, int textSize, bool editMode)
textLength -= accCodepointSize;
}
- else if ((textLength > textBoxCursorIndex) && (IsKeyPressed(KEY_DELETE) || (IsKeyDown(KEY_DELETE) && autoCursorShouldTrigger)))
+ else if ((textLength > textBoxCursorIndex) && (GUI_KEY_PRESSED(KEY_DELETE) || (GUI_KEY_DOWN(KEY_DELETE) && autoCursorShouldTrigger)))
{
// Delete single codepoint from text, after current cursor position
@@ -2688,12 +2730,12 @@ int GuiTextBox(Rectangle bounds, char *text, int textSize, bool editMode)
}
// Delete related codepoints from text, before current cursor position
- if ((textBoxCursorIndex > 0) && IsKeyPressed(KEY_BACKSPACE) && (IsKeyDown(KEY_LEFT_CONTROL) || IsKeyDown(KEY_RIGHT_CONTROL)))
+ if ((textBoxCursorIndex > 0) && GUI_KEY_PRESSED(KEY_BACKSPACE) && (GUI_KEY_DOWN(KEY_LEFT_CONTROL) || GUI_KEY_DOWN(KEY_RIGHT_CONTROL)))
{
int offset = textBoxCursorIndex;
int accCodepointSize = 0;
- int prevCodepointSize;
- int prevCodepoint;
+ int prevCodepointSize = 0;
+ int prevCodepoint = 0;
// Check whitespace to delete (ASCII only)
while (offset > 0)
@@ -2724,7 +2766,7 @@ int GuiTextBox(Rectangle bounds, char *text, int textSize, bool editMode)
textBoxCursorIndex -= accCodepointSize;
}
- else if ((textBoxCursorIndex > 0) && (IsKeyPressed(KEY_BACKSPACE) || (IsKeyDown(KEY_BACKSPACE) && autoCursorShouldTrigger)))
+ else if ((textBoxCursorIndex > 0) && (GUI_KEY_PRESSED(KEY_BACKSPACE) || (GUI_KEY_DOWN(KEY_BACKSPACE) && autoCursorShouldTrigger)))
{
// Delete single codepoint from text, before current cursor position
@@ -2740,12 +2782,12 @@ int GuiTextBox(Rectangle bounds, char *text, int textSize, bool editMode)
}
// Move cursor position with keys
- if ((textBoxCursorIndex > 0) && IsKeyPressed(KEY_LEFT) && (IsKeyDown(KEY_LEFT_CONTROL) || IsKeyDown(KEY_RIGHT_CONTROL)))
+ if ((textBoxCursorIndex > 0) && GUI_KEY_PRESSED(KEY_LEFT) && (GUI_KEY_DOWN(KEY_LEFT_CONTROL) || GUI_KEY_DOWN(KEY_RIGHT_CONTROL)))
{
int offset = textBoxCursorIndex;
//int accCodepointSize = 0;
- int prevCodepointSize;
- int prevCodepoint;
+ int prevCodepointSize = 0;
+ int prevCodepoint = 0;
// Check whitespace to skip (ASCII only)
while (offset > 0)
@@ -2771,14 +2813,14 @@ int GuiTextBox(Rectangle bounds, char *text, int textSize, bool editMode)
textBoxCursorIndex = offset;
}
- else if ((textBoxCursorIndex > 0) && (IsKeyPressed(KEY_LEFT) || (IsKeyDown(KEY_LEFT) && autoCursorShouldTrigger)))
+ else if ((textBoxCursorIndex > 0) && (GUI_KEY_PRESSED(KEY_LEFT) || (GUI_KEY_DOWN(KEY_LEFT) && autoCursorShouldTrigger)))
{
int prevCodepointSize = 0;
GetCodepointPrevious(text + textBoxCursorIndex, &prevCodepointSize);
textBoxCursorIndex -= prevCodepointSize;
}
- else if ((textLength > textBoxCursorIndex) && IsKeyPressed(KEY_RIGHT) && (IsKeyDown(KEY_LEFT_CONTROL) || IsKeyDown(KEY_RIGHT_CONTROL)))
+ else if ((textLength > textBoxCursorIndex) && GUI_KEY_PRESSED(KEY_RIGHT) && (GUI_KEY_DOWN(KEY_LEFT_CONTROL) || GUI_KEY_DOWN(KEY_RIGHT_CONTROL)))
{
int offset = textBoxCursorIndex;
//int accCodepointSize = 0;
@@ -2810,7 +2852,7 @@ int GuiTextBox(Rectangle bounds, char *text, int textSize, bool editMode)
textBoxCursorIndex = offset;
}
- else if ((textLength > textBoxCursorIndex) && (IsKeyPressed(KEY_RIGHT) || (IsKeyDown(KEY_RIGHT) && autoCursorShouldTrigger)))
+ else if ((textLength > textBoxCursorIndex) && (GUI_KEY_PRESSED(KEY_RIGHT) || (GUI_KEY_DOWN(KEY_RIGHT) && autoCursorShouldTrigger)))
{
int nextCodepointSize = 0;
GetCodepointNext(text + textBoxCursorIndex, &nextCodepointSize);
@@ -2847,14 +2889,14 @@ int GuiTextBox(Rectangle bounds, char *text, int textSize, bool editMode)
// Check if mouse cursor is at the last position
int textEndWidth = GuiGetTextWidth(text + textIndexOffset);
- if (GetMousePosition().x >= (textBounds.x + textEndWidth - glyphWidth/2))
+ if (GUI_POINTER_POSITION.x >= (textBounds.x + textEndWidth - glyphWidth/2))
{
mouseCursor.x = textBounds.x + textEndWidth;
mouseCursorIndex = textLength;
}
// Place cursor at required index on mouse click
- if ((mouseCursor.x >= 0) && IsMouseButtonPressed(MOUSE_LEFT_BUTTON))
+ if ((mouseCursor.x >= 0) && GUI_BUTTON_PRESSED)
{
cursor.x = mouseCursor.x;
textBoxCursorIndex = mouseCursorIndex;
@@ -2867,8 +2909,8 @@ int GuiTextBox(Rectangle bounds, char *text, int textSize, bool editMode)
//if (multiline) cursor.y = GetTextLines()
// Finish text editing on ENTER or mouse click outside bounds
- if ((!multiline && IsKeyPressed(KEY_ENTER)) ||
- (!CheckCollisionPointRec(mousePosition, bounds) && IsMouseButtonPressed(MOUSE_LEFT_BUTTON)))
+ if ((!multiline && GUI_KEY_PRESSED(KEY_ENTER)) ||
+ (!CheckCollisionPointRec(mousePosition, bounds) && GUI_BUTTON_PRESSED))
{
textBoxCursorIndex = 0; // GLOBAL: Reset the shared cursor index
autoCursorCounter = 0; // GLOBAL: Reset counter for repeated keystrokes
@@ -2881,7 +2923,7 @@ int GuiTextBox(Rectangle bounds, char *text, int textSize, bool editMode)
{
state = STATE_FOCUSED;
- if (IsMouseButtonPressed(MOUSE_LEFT_BUTTON))
+ if (GUI_BUTTON_PRESSED)
{
textBoxCursorIndex = textLength; // GLOBAL: Place cursor index to the end of current text
autoCursorCounter = 0; // GLOBAL: Reset counter for repeated keystrokes
@@ -2975,12 +3017,12 @@ int GuiSpinner(Rectangle bounds, const char *text, int *value, int minValue, int
//--------------------------------------------------------------------
if ((state != STATE_DISABLED) && !guiLocked && !guiControlExclusiveMode)
{
- Vector2 mousePoint = GetMousePosition();
+ Vector2 mousePoint = GUI_POINTER_POSITION;
// Check spinner state
if (CheckCollisionPointRec(mousePoint, bounds))
{
- if (IsMouseButtonDown(MOUSE_LEFT_BUTTON)) state = STATE_PRESSED;
+ if (GUI_BUTTON_DOWN) state = STATE_PRESSED;
else state = STATE_FOCUSED;
}
}
@@ -3050,7 +3092,7 @@ int GuiValueBox(Rectangle bounds, const char *text, int *value, int minValue, in
//--------------------------------------------------------------------
if ((state != STATE_DISABLED) && !guiLocked && !guiControlExclusiveMode)
{
- Vector2 mousePoint = GetMousePosition();
+ Vector2 mousePoint = GUI_POINTER_POSITION;
bool valueHasChanged = false;
if (editMode)
@@ -3060,7 +3102,7 @@ int GuiValueBox(Rectangle bounds, const char *text, int *value, int minValue, in
int keyCount = (int)strlen(textValue);
// Add or remove minus symbol
- if (IsKeyPressed(KEY_MINUS))
+ if (GUI_KEY_PRESSED(KEY_MINUS))
{
if (textValue[0] == '-')
{
@@ -3089,8 +3131,8 @@ int GuiValueBox(Rectangle bounds, const char *text, int *value, int minValue, in
// Add new digit to text value
if ((keyCount >= 0) && (keyCount < RAYGUI_VALUEBOX_MAX_CHARS) && (GuiGetTextWidth(textValue) < bounds.width))
{
- int key = GetCharPressed();
-
+ int key = GUI_INPUT_KEY;
+
// Only allow keys in range [48..57]
if ((key >= 48) && (key <= 57))
{
@@ -3101,7 +3143,7 @@ int GuiValueBox(Rectangle bounds, const char *text, int *value, int minValue, in
}
// Delete text
- if ((keyCount > 0) && IsKeyPressed(KEY_BACKSPACE))
+ if ((keyCount > 0) && GUI_KEY_PRESSED(KEY_BACKSPACE))
{
keyCount--;
textValue[keyCount] = '\0';
@@ -3110,11 +3152,11 @@ int GuiValueBox(Rectangle bounds, const char *text, int *value, int minValue, in
if (valueHasChanged) *value = TextToInteger(textValue);
- // NOTE: We are not clamp values until user input finishes
+ // NOTE: Values are not clamped until user input finishes
//if (*value > maxValue) *value = maxValue;
//else if (*value < minValue) *value = minValue;
- if ((IsKeyPressed(KEY_ENTER) || IsKeyPressed(KEY_KP_ENTER)) || (!CheckCollisionPointRec(mousePoint, bounds) && IsMouseButtonPressed(MOUSE_LEFT_BUTTON)))
+ if ((GUI_KEY_PRESSED(KEY_ENTER) || GUI_KEY_PRESSED(KEY_KP_ENTER)) || (!CheckCollisionPointRec(mousePoint, bounds) && GUI_BUTTON_PRESSED))
{
if (*value > maxValue) *value = maxValue;
else if (*value < minValue) *value = minValue;
@@ -3130,7 +3172,7 @@ int GuiValueBox(Rectangle bounds, const char *text, int *value, int minValue, in
if (CheckCollisionPointRec(mousePoint, bounds))
{
state = STATE_FOCUSED;
- if (IsMouseButtonPressed(MOUSE_LEFT_BUTTON)) result = 1;
+ if (GUI_BUTTON_PRESSED) result = 1;
}
}
}
@@ -3191,7 +3233,7 @@ int GuiValueBoxFloat(Rectangle bounds, const char *text, char *textValue, float
//--------------------------------------------------------------------
if ((state != STATE_DISABLED) && !guiLocked && !guiControlExclusiveMode)
{
- Vector2 mousePoint = GetMousePosition();
+ Vector2 mousePoint = GUI_POINTER_POSITION;
bool valueHasChanged = false;
@@ -3202,7 +3244,7 @@ int GuiValueBoxFloat(Rectangle bounds, const char *text, char *textValue, float
int keyCount = (int)strlen(textValue);
// Add or remove minus symbol
- if (IsKeyPressed(KEY_MINUS))
+ if (GUI_KEY_PRESSED(KEY_MINUS))
{
if (textValue[0] == '-')
{
@@ -3233,7 +3275,7 @@ int GuiValueBoxFloat(Rectangle bounds, const char *text, char *textValue, float
{
if (GuiGetTextWidth(textValue) < bounds.width)
{
- int key = GetCharPressed();
+ int key = GUI_INPUT_KEY;
if (((key >= 48) && (key <= 57)) ||
(key == '.') ||
((keyCount == 0) && (key == '+')) || // NOTE: Sign can only be in first position
@@ -3248,7 +3290,7 @@ int GuiValueBoxFloat(Rectangle bounds, const char *text, char *textValue, float
}
// Pressed backspace
- if (IsKeyPressed(KEY_BACKSPACE))
+ if (GUI_KEY_PRESSED(KEY_BACKSPACE))
{
if (keyCount > 0)
{
@@ -3260,14 +3302,14 @@ int GuiValueBoxFloat(Rectangle bounds, const char *text, char *textValue, float
if (valueHasChanged) *value = TextToFloat(textValue);
- if ((IsKeyPressed(KEY_ENTER) || IsKeyPressed(KEY_KP_ENTER)) || (!CheckCollisionPointRec(mousePoint, bounds) && IsMouseButtonPressed(MOUSE_LEFT_BUTTON))) result = 1;
+ if ((GUI_KEY_PRESSED(KEY_ENTER) || GUI_KEY_PRESSED(KEY_KP_ENTER)) || (!CheckCollisionPointRec(mousePoint, bounds) && GUI_BUTTON_PRESSED)) result = 1;
}
else
{
if (CheckCollisionPointRec(mousePoint, bounds))
{
state = STATE_FOCUSED;
- if (IsMouseButtonPressed(MOUSE_LEFT_BUTTON)) result = 1;
+ if (GUI_BUTTON_PRESSED) result = 1;
}
}
}
@@ -3321,11 +3363,11 @@ int GuiSlider(Rectangle bounds, const char *textLeft, const char *textRight, flo
//--------------------------------------------------------------------
if ((state != STATE_DISABLED) && !guiLocked)
{
- Vector2 mousePoint = GetMousePosition();
+ Vector2 mousePoint = GUI_POINTER_POSITION;
if (guiControlExclusiveMode) // Allows to keep dragging outside of bounds
{
- if (IsMouseButtonDown(MOUSE_LEFT_BUTTON))
+ if (GUI_BUTTON_DOWN)
{
if (CHECK_BOUNDS_ID(bounds, guiControlExclusiveRec))
{
@@ -3342,7 +3384,7 @@ int GuiSlider(Rectangle bounds, const char *textLeft, const char *textRight, flo
}
else if (CheckCollisionPointRec(mousePoint, bounds))
{
- if (IsMouseButtonDown(MOUSE_LEFT_BUTTON))
+ if (GUI_BUTTON_DOWN)
{
state = STATE_PRESSED;
guiControlExclusiveMode = true;
@@ -3535,12 +3577,12 @@ int GuiDummyRec(Rectangle bounds, const char *text)
//--------------------------------------------------------------------
if ((state != STATE_DISABLED) && !guiLocked && !guiControlExclusiveMode)
{
- Vector2 mousePoint = GetMousePosition();
+ Vector2 mousePoint = GUI_POINTER_POSITION;
// Check button state
if (CheckCollisionPointRec(mousePoint, bounds))
{
- if (IsMouseButtonDown(MOUSE_LEFT_BUTTON)) state = STATE_PRESSED;
+ if (GUI_BUTTON_DOWN) state = STATE_PRESSED;
else state = STATE_FOCUSED;
}
}
@@ -3578,7 +3620,7 @@ int GuiListViewEx(Rectangle bounds, const char **text, int count, int *scrollInd
int itemFocused = (focus == NULL)? -1 : *focus;
int itemSelected = (active == NULL)? -1 : *active;
- // Check if we need a scroll bar
+ // Check if scroll bar is needed
bool useScrollBar = false;
if ((GuiGetStyle(LISTVIEW, LIST_ITEMS_HEIGHT) + GuiGetStyle(LISTVIEW, LIST_ITEMS_SPACING))*count > bounds.height) useScrollBar = true;
@@ -3602,7 +3644,7 @@ int GuiListViewEx(Rectangle bounds, const char **text, int count, int *scrollInd
//--------------------------------------------------------------------
if ((state != STATE_DISABLED) && !guiLocked && !guiControlExclusiveMode)
{
- Vector2 mousePoint = GetMousePosition();
+ Vector2 mousePoint = GUI_POINTER_POSITION;
// Check mouse inside list view
if (CheckCollisionPointRec(mousePoint, bounds))
@@ -3615,7 +3657,7 @@ int GuiListViewEx(Rectangle bounds, const char **text, int count, int *scrollInd
if (CheckCollisionPointRec(mousePoint, itemBounds))
{
itemFocused = startIndex + i;
- if (IsMouseButtonPressed(MOUSE_LEFT_BUTTON))
+ if (GUI_BUTTON_PRESSED)
{
if (itemSelected == (startIndex + i)) itemSelected = -1;
else itemSelected = startIndex + i;
@@ -3629,8 +3671,8 @@ int GuiListViewEx(Rectangle bounds, const char **text, int count, int *scrollInd
if (useScrollBar)
{
- int wheelMove = (int)GetMouseWheelMove();
- startIndex -= wheelMove;
+ float scrollDelta = GUI_SCROLL_DELTA;
+ startIndex -= (int)scrollDelta;
if (startIndex < 0) startIndex = 0;
else if (startIndex > (count - visibleItems)) startIndex = count - visibleItems;
@@ -3659,7 +3701,7 @@ int GuiListViewEx(Rectangle bounds, const char **text, int count, int *scrollInd
{
if ((startIndex + i) == itemSelected) GuiDrawRectangle(itemBounds, GuiGetStyle(LISTVIEW, LIST_ITEMS_BORDER_WIDTH), GetColor(GuiGetStyle(LISTVIEW, BORDER_COLOR_DISABLED)), GetColor(GuiGetStyle(LISTVIEW, BASE_COLOR_DISABLED)));
- GuiDrawText(text[startIndex + i], GetTextBounds(DEFAULT, itemBounds), GuiGetStyle(LISTVIEW, TEXT_ALIGNMENT), GetColor(GuiGetStyle(LISTVIEW, TEXT_COLOR_DISABLED)));
+ GuiDrawText(text[startIndex + i], GetTextBounds(LISTVIEW, itemBounds), GuiGetStyle(LISTVIEW, TEXT_ALIGNMENT), GetColor(GuiGetStyle(LISTVIEW, TEXT_COLOR_DISABLED)));
}
else
{
@@ -3667,18 +3709,18 @@ int GuiListViewEx(Rectangle bounds, const char **text, int count, int *scrollInd
{
// Draw item selected
GuiDrawRectangle(itemBounds, GuiGetStyle(LISTVIEW, LIST_ITEMS_BORDER_WIDTH), GetColor(GuiGetStyle(LISTVIEW, BORDER_COLOR_PRESSED)), GetColor(GuiGetStyle(LISTVIEW, BASE_COLOR_PRESSED)));
- GuiDrawText(text[startIndex + i], GetTextBounds(DEFAULT, itemBounds), GuiGetStyle(LISTVIEW, TEXT_ALIGNMENT), GetColor(GuiGetStyle(LISTVIEW, TEXT_COLOR_PRESSED)));
+ GuiDrawText(text[startIndex + i], GetTextBounds(LISTVIEW, itemBounds), GuiGetStyle(LISTVIEW, TEXT_ALIGNMENT), GetColor(GuiGetStyle(LISTVIEW, TEXT_COLOR_PRESSED)));
}
- else if (((startIndex + i) == itemFocused)) // && (focus != NULL)) // NOTE: We want items focused, despite not returned!
+ else if (((startIndex + i) == itemFocused)) // && (focus != NULL)) // NOTE: Items focused, despite not returned
{
// Draw item focused
GuiDrawRectangle(itemBounds, GuiGetStyle(LISTVIEW, LIST_ITEMS_BORDER_WIDTH), GetColor(GuiGetStyle(LISTVIEW, BORDER_COLOR_FOCUSED)), GetColor(GuiGetStyle(LISTVIEW, BASE_COLOR_FOCUSED)));
- GuiDrawText(text[startIndex + i], GetTextBounds(DEFAULT, itemBounds), GuiGetStyle(LISTVIEW, TEXT_ALIGNMENT), GetColor(GuiGetStyle(LISTVIEW, TEXT_COLOR_FOCUSED)));
+ GuiDrawText(text[startIndex + i], GetTextBounds(LISTVIEW, itemBounds), GuiGetStyle(LISTVIEW, TEXT_ALIGNMENT), GetColor(GuiGetStyle(LISTVIEW, TEXT_COLOR_FOCUSED)));
}
else
{
// Draw item normal (no rectangle)
- GuiDrawText(text[startIndex + i], GetTextBounds(DEFAULT, itemBounds), GuiGetStyle(LISTVIEW, TEXT_ALIGNMENT), GetColor(GuiGetStyle(LISTVIEW, TEXT_COLOR_NORMAL)));
+ GuiDrawText(text[startIndex + i], GetTextBounds(LISTVIEW, itemBounds), GuiGetStyle(LISTVIEW, TEXT_ALIGNMENT), GetColor(GuiGetStyle(LISTVIEW, TEXT_COLOR_NORMAL)));
}
}
@@ -3765,11 +3807,11 @@ int GuiColorBarAlpha(Rectangle bounds, const char *text, float *alpha)
//--------------------------------------------------------------------
if ((state != STATE_DISABLED) && !guiLocked)
{
- Vector2 mousePoint = GetMousePosition();
+ Vector2 mousePoint = GUI_POINTER_POSITION;
if (guiControlExclusiveMode) // Allows to keep dragging outside of bounds
{
- if (IsMouseButtonDown(MOUSE_LEFT_BUTTON))
+ if (GUI_BUTTON_DOWN)
{
if (CHECK_BOUNDS_ID(bounds, guiControlExclusiveRec))
{
@@ -3788,7 +3830,7 @@ int GuiColorBarAlpha(Rectangle bounds, const char *text, float *alpha)
}
else if (CheckCollisionPointRec(mousePoint, bounds) || CheckCollisionPointRec(mousePoint, selector))
{
- if (IsMouseButtonDown(MOUSE_LEFT_BUTTON))
+ if (GUI_BUTTON_DOWN)
{
state = STATE_PRESSED;
guiControlExclusiveMode = true;
@@ -3850,11 +3892,11 @@ int GuiColorBarHue(Rectangle bounds, const char *text, float *hue)
//--------------------------------------------------------------------
if ((state != STATE_DISABLED) && !guiLocked)
{
- Vector2 mousePoint = GetMousePosition();
+ Vector2 mousePoint = GUI_POINTER_POSITION;
if (guiControlExclusiveMode) // Allows to keep dragging outside of bounds
{
- if (IsMouseButtonDown(MOUSE_LEFT_BUTTON))
+ if (GUI_BUTTON_DOWN)
{
if (CHECK_BOUNDS_ID(bounds, guiControlExclusiveRec))
{
@@ -3873,7 +3915,7 @@ int GuiColorBarHue(Rectangle bounds, const char *text, float *hue)
}
else if (CheckCollisionPointRec(mousePoint, bounds) || CheckCollisionPointRec(mousePoint, selector))
{
- if (IsMouseButtonDown(MOUSE_LEFT_BUTTON))
+ if (GUI_BUTTON_DOWN)
{
state = STATE_PRESSED;
guiControlExclusiveMode = true;
@@ -3886,12 +3928,12 @@ int GuiColorBarHue(Rectangle bounds, const char *text, float *hue)
}
else state = STATE_FOCUSED;
- /*if (IsKeyDown(KEY_UP))
+ /*if (GUI_KEY_DOWN(KEY_UP))
{
hue -= 2.0f;
if (hue <= 0.0f) hue = 0.0f;
}
- else if (IsKeyDown(KEY_DOWN))
+ else if (GUI_KEY_DOWN(KEY_DOWN))
{
hue += 2.0f;
if (hue >= 360.0f) hue = 360.0f;
@@ -4008,11 +4050,11 @@ int GuiColorPanelHSV(Rectangle bounds, const char *text, Vector3 *colorHsv)
//--------------------------------------------------------------------
if ((state != STATE_DISABLED) && !guiLocked)
{
- Vector2 mousePoint = GetMousePosition();
+ Vector2 mousePoint = GUI_POINTER_POSITION;
if (guiControlExclusiveMode) // Allows to keep dragging outside of bounds
{
- if (IsMouseButtonDown(MOUSE_LEFT_BUTTON))
+ if (GUI_BUTTON_DOWN)
{
if (CHECK_BOUNDS_ID(bounds, guiControlExclusiveRec))
{
@@ -4042,7 +4084,7 @@ int GuiColorPanelHSV(Rectangle bounds, const char *text, Vector3 *colorHsv)
}
else if (CheckCollisionPointRec(mousePoint, bounds))
{
- if (IsMouseButtonDown(MOUSE_LEFT_BUTTON))
+ if (GUI_BUTTON_DOWN)
{
state = STATE_PRESSED;
guiControlExclusiveMode = true;
@@ -4198,6 +4240,9 @@ int GuiTextInputBox(Rectangle bounds, const char *title, const char *message, co
GuiSetStyle(LABEL, TEXT_ALIGNMENT, prevTextAlignment);
}
+ int prevTextBoxAlignment = GuiGetStyle(TEXTBOX, TEXT_ALIGNMENT);
+ GuiSetStyle(TEXTBOX, TEXT_ALIGNMENT, TEXT_ALIGN_LEFT);
+
if (secretViewActive != NULL)
{
static char stars[] = "****************";
@@ -4211,6 +4256,8 @@ int GuiTextInputBox(Rectangle bounds, const char *title, const char *message, co
if (GuiTextBox(textBoxBounds, text, textMaxSize, textEditMode)) textEditMode = !textEditMode;
}
+ GuiSetStyle(TEXTBOX, TEXT_ALIGNMENT, prevTextBoxAlignment);
+
int prevBtnTextAlignment = GuiGetStyle(BUTTON, TEXT_ALIGNMENT);
GuiSetStyle(BUTTON, TEXT_ALIGNMENT, TEXT_ALIGN_CENTER);
@@ -4231,7 +4278,7 @@ int GuiTextInputBox(Rectangle bounds, const char *title, const char *message, co
// Grid control
// NOTE: Returns grid mouse-hover selected cell
// About drawing lines at subpixel spacing, simple put, not easy solution:
-// https://stackoverflow.com/questions/4435450/2d-opengl-drawing-lines-that-dont-exactly-fit-pixel-raster
+// REF: https://stackoverflow.com/questions/4435450/2d-opengl-drawing-lines-that-dont-exactly-fit-pixel-raster
int GuiGrid(Rectangle bounds, const char *text, float spacing, int subdivs, Vector2 *mouseCell)
{
// Grid lines alpha amount
@@ -4242,7 +4289,7 @@ int GuiGrid(Rectangle bounds, const char *text, float spacing, int subdivs, Vect
int result = 0;
GuiState state = guiState;
- Vector2 mousePoint = GetMousePosition();
+ Vector2 mousePoint = GUI_POINTER_POSITION;
Vector2 currentMouseCell = { -1, -1 };
float spaceWidth = spacing/(float)subdivs;
@@ -4410,11 +4457,14 @@ void GuiLoadStyle(const char *fileName)
if (fileDataSize > 0)
{
unsigned char *fileData = (unsigned char *)RAYGUI_CALLOC(fileDataSize, sizeof(unsigned char));
- fread(fileData, sizeof(unsigned char), fileDataSize, rgsFile);
+ if (fileData != NULL)
+ {
+ fread(fileData, sizeof(unsigned char), fileDataSize, rgsFile);
- GuiLoadStyleFromMemory(fileData, fileDataSize);
+ GuiLoadStyleFromMemory(fileData, fileDataSize);
- RAYGUI_FREE(fileData);
+ RAYGUI_FREE(fileData);
+ }
}
fclose(rgsFile);
@@ -4425,7 +4475,7 @@ void GuiLoadStyle(const char *fileName)
// Load style default over global style
void GuiLoadStyleDefault(void)
{
- // We set this variable first to avoid cyclic function calls
+ // Setting this flag first to avoid cyclic function calls
// when calling GuiSetStyle() and GuiGetStyle()
guiStyleLoaded = true;
@@ -4454,7 +4504,7 @@ void GuiLoadStyleDefault(void)
GuiSetStyle(DEFAULT, TEXT_SPACING, 1); // DEFAULT, shared by all controls
GuiSetStyle(DEFAULT, LINE_COLOR, 0x90abb5ff); // DEFAULT specific property
GuiSetStyle(DEFAULT, BACKGROUND_COLOR, 0xf5f5f5ff); // DEFAULT specific property
- GuiSetStyle(DEFAULT, TEXT_LINE_SPACING, 15); // DEFAULT, 15 pixels between lines
+ GuiSetStyle(DEFAULT, TEXT_LINE_SPACING, 5); // DEFAULT, pixels between lines, from bottom of first line to top of second
GuiSetStyle(DEFAULT, TEXT_ALIGNMENT_VERTICAL, TEXT_ALIGN_MIDDLE); // DEFAULT, text aligned vertically to middle of text-bounds
// Initialize control-specific property values
@@ -4520,7 +4570,7 @@ void GuiLoadStyleDefault(void)
// NOTE: Default raylib font character 95 is a white square
Rectangle whiteChar = guiFont.recs[95];
- // NOTE: We set up a 1px padding on char rectangle to avoid pixel bleeding on MSAA filtering
+ // NOTE: Setting up a 1px padding on char rectangle to avoid pixel bleeding on MSAA filtering
SetShapesTexture(guiFont.texture, RAYGUI_CLITERAL(Rectangle){ whiteChar.x + 1, whiteChar.y + 1, whiteChar.width - 2, whiteChar.height - 2 });
}
}
@@ -5037,14 +5087,14 @@ static Rectangle GetTextBounds(int control, Rectangle bounds)
}
// Get text icon if provided and move text cursor
-// NOTE: We support up to 999 values for iconId
+// NOTE: Up to #999# values supported for iconId
static const char *GetTextIcon(const char *text, int *iconId)
{
#if !defined(RAYGUI_NO_ICONS)
*iconId = -1;
- if (text[0] == '#') // Maybe we have an icon!
+ if (text[0] == '#') // Maybe it is stars with an icon, ending # must be found
{
- char iconValue[4] = { 0 }; // Maximum length for icon value: 3 digits + '\0'
+ char iconValue[4] = { 0 }; // Maximum length for icon value: 3 digits + '\0'
int pos = 1;
while ((pos < 4) && (text[pos] >= '0') && (text[pos] <= '9'))
@@ -5076,12 +5126,12 @@ static const char **GetTextLines(const char *text, int *count)
static const char *lines[RAYGUI_MAX_TEXT_LINES] = { 0 };
for (int i = 0; i < RAYGUI_MAX_TEXT_LINES; i++) lines[i] = NULL; // Init NULL pointers to substrings
- int textSize = (int)strlen(text);
+ int textLength = (int)strlen(text);
lines[0] = text;
*count = 1;
- for (int i = 0, k = 0; (i < textSize) && (*count < RAYGUI_MAX_TEXT_LINES); i++)
+ for (int i = 0, k = 0; (i < textLength) && (*count < RAYGUI_MAX_TEXT_LINES); i++)
{
if (text[i] == '\n')
{
@@ -5141,7 +5191,7 @@ static void GuiDrawText(const char *text, Rectangle textBounds, int alignment, C
// - For every line, wordwrap mode is checked (useful for GuitextBox(), read-only)
// Get text lines (using '\n' as delimiter) to be processed individually
- // WARNING: We can't use GuiTextSplit() function because it can be already used
+ // WARNING: GuiTextSplit() function can't be used now because it can have already been used
// before the GuiDrawText() call and its buffer is static, it would be overriden :(
int lineCount = 0;
const char **lines = GetTextLines(text, &lineCount);
@@ -5152,7 +5202,7 @@ static void GuiDrawText(const char *text, Rectangle textBounds, int alignment, C
int wrapMode = GuiGetStyle(DEFAULT, TEXT_WRAP_MODE); // Wrap-mode only available in read-only mode, no for text editing
// TODO: WARNING: This totalHeight is not valid for vertical alignment in case of word-wrap
- float totalHeight = (float)(lineCount*GuiGetStyle(DEFAULT, TEXT_SIZE) + (lineCount - 1)*GuiGetStyle(DEFAULT, TEXT_SIZE)/2);
+ float totalHeight = (float)(lineCount*GuiGetStyle(DEFAULT, TEXT_SIZE) + (lineCount - 1)*GuiGetStyle(DEFAULT, TEXT_LINE_SPACING));
float posOffsetY = 0.0f;
for (int i = 0; i < lineCount; i++)
@@ -5165,7 +5215,7 @@ static void GuiDrawText(const char *text, Rectangle textBounds, int alignment, C
Vector2 textBoundsPosition = { textBounds.x, textBounds.y };
float textBoundsWidthOffset = 0.0f;
- // NOTE: We get text size after icon has been processed
+ // NOTE: Get text size after icon has been processed
// WARNING: GuiGetTextWidth() also processes text icon to get width! -> Really needed?
int textSizeX = GuiGetTextWidth(lines[i]);
@@ -5200,8 +5250,8 @@ static void GuiDrawText(const char *text, Rectangle textBounds, int alignment, C
default: break;
}
- // NOTE: Make sure we get pixel-perfect coordinates,
- // In case of decimals we got weird text positioning
+ // NOTE: Make sure getting pixel-perfect coordinates,
+ // In case of decimals, it could result in text positioning artifacts
textBoundsPosition.x = (float)((int)textBoundsPosition.x);
textBoundsPosition.y = (float)((int)textBoundsPosition.y);
//---------------------------------------------------------------------------------
@@ -5211,7 +5261,7 @@ static void GuiDrawText(const char *text, Rectangle textBounds, int alignment, C
#if !defined(RAYGUI_NO_ICONS)
if (iconId >= 0)
{
- // NOTE: We consider icon height, probably different than text size
+ // NOTE: Considering icon height, probably different than text size
GuiDrawIcon(iconId, (int)textBoundsPosition.x, (int)(textBounds.y + textBounds.height/2 - RAYGUI_ICON_SIZE*guiIconScale/2 + TEXT_VALIGN_PIXEL_OFFSET(textBounds.height)), guiIconScale, tint);
textBoundsPosition.x += (float)(RAYGUI_ICON_SIZE*guiIconScale + ICON_TEXT_PADDING);
textBoundsWidthOffset = (float)(RAYGUI_ICON_SIZE*guiIconScale + ICON_TEXT_PADDING);
@@ -5237,8 +5287,8 @@ static void GuiDrawText(const char *text, Rectangle textBounds, int alignment, C
int codepoint = GetCodepointNext(&lines[i][c], &codepointSize);
int index = GetGlyphIndex(guiFont, codepoint);
- // NOTE: Normally we exit the decoding sequence as soon as a bad byte is found (and return 0x3f)
- // but we need to draw all of the bad bytes using the '?' symbol moving one byte
+ // NOTE: Normally, exiting the decoding sequence as soon as a bad byte is found (and return 0x3f)
+ // but all of the bad bytes need to be drawn using the '?' symbol, moving one byte
if (codepoint == 0x3f) codepointSize = 1; // TODO: Review not recognized codepoints size
// Get glyph width to check if it goes out of bounds
@@ -5253,7 +5303,7 @@ static void GuiDrawText(const char *text, Rectangle textBounds, int alignment, C
if ((textOffsetX + glyphWidth) > textBounds.width - textBoundsWidthOffset)
{
textOffsetX = 0.0f;
- textOffsetY += GuiGetStyle(DEFAULT, TEXT_LINE_SPACING);
+ textOffsetY += (GuiGetStyle(DEFAULT, TEXT_SIZE) + GuiGetStyle(DEFAULT, TEXT_LINE_SPACING));
if (tempWrapCharMode) // Wrap at char level when too long words
{
@@ -5282,7 +5332,7 @@ static void GuiDrawText(const char *text, Rectangle textBounds, int alignment, C
else if ((textOffsetX + nextSpaceWidth) > textBounds.width - textBoundsWidthOffset)
{
textOffsetX = 0.0f;
- textOffsetY += GuiGetStyle(DEFAULT, TEXT_LINE_SPACING);
+ textOffsetY += (GuiGetStyle(DEFAULT, TEXT_SIZE) + GuiGetStyle(DEFAULT, TEXT_LINE_SPACING));
}
}
@@ -5332,7 +5382,7 @@ static void GuiDrawText(const char *text, Rectangle textBounds, int alignment, C
}
}
- if (wrapMode == TEXT_WRAP_NONE) posOffsetY += (float)GuiGetStyle(DEFAULT, TEXT_LINE_SPACING);
+ if (wrapMode == TEXT_WRAP_NONE) posOffsetY += (float)(GuiGetStyle(DEFAULT, TEXT_SIZE) + GuiGetStyle(DEFAULT, TEXT_LINE_SPACING));
else if ((wrapMode == TEXT_WRAP_CHAR) || (wrapMode == TEXT_WRAP_WORD)) posOffsetY += (textOffsetY + (float)GuiGetStyle(DEFAULT, TEXT_LINE_SPACING));
//---------------------------------------------------------------------------------
}
@@ -5374,13 +5424,19 @@ static void GuiTooltip(Rectangle controlRec)
if ((controlRec.x + textSize.x + 16) > GetScreenWidth()) controlRec.x -= (textSize.x + 16 - controlRec.width);
- GuiPanel(RAYGUI_CLITERAL(Rectangle){ controlRec.x, controlRec.y + controlRec.height + 4, textSize.x + 16, GuiGetStyle(DEFAULT, TEXT_SIZE) + 8.0f }, NULL);
+ int lineCount = 0;
+ GetTextLines(guiTooltipPtr, &lineCount); // Only using the line count
+ if ((controlRec.y + controlRec.height + textSize.y + 4 + 8*lineCount) > GetScreenHeight())
+ controlRec.y -= (controlRec.height + textSize.y + 4 + 8*lineCount);
+
+ // TODO: Probably TEXT_LINE_SPACING should be considered on panel size instead of hardcoding 8.0f
+ GuiPanel(RAYGUI_CLITERAL(Rectangle){ controlRec.x, controlRec.y + controlRec.height + 4, textSize.x + 16, textSize.y + 8.0f*lineCount }, NULL);
int textPadding = GuiGetStyle(LABEL, TEXT_PADDING);
int textAlignment = GuiGetStyle(LABEL, TEXT_ALIGNMENT);
GuiSetStyle(LABEL, TEXT_PADDING, 0);
GuiSetStyle(LABEL, TEXT_ALIGNMENT, TEXT_ALIGN_CENTER);
- GuiLabel(RAYGUI_CLITERAL(Rectangle){ controlRec.x, controlRec.y + controlRec.height + 4, textSize.x + 16, GuiGetStyle(DEFAULT, TEXT_SIZE) + 8.0f }, guiTooltipPtr);
+ GuiLabel(RAYGUI_CLITERAL(Rectangle){ controlRec.x, controlRec.y + controlRec.height + 4, textSize.x + 16, textSize.y + 8.0f*lineCount }, guiTooltipPtr);
GuiSetStyle(LABEL, TEXT_ALIGNMENT, textAlignment);
GuiSetStyle(LABEL, TEXT_PADDING, textPadding);
}
@@ -5416,7 +5472,7 @@ static const char **GuiTextSplit(const char *text, char delimiter, int *count, i
if (textRow != NULL) textRow[0] = 0;
- // Count how many substrings we have on text and point to every one
+ // Count how many substrings text contains and point to every one of them
for (int i = 0; i < RAYGUI_TEXTSPLIT_MAX_TEXT_SIZE; i++)
{
buffer[i] = text[i];
@@ -5637,11 +5693,11 @@ static int GuiScrollBar(Rectangle bounds, int value, int minValue, int maxValue)
//--------------------------------------------------------------------
if ((state != STATE_DISABLED) && !guiLocked)
{
- Vector2 mousePoint = GetMousePosition();
+ Vector2 mousePoint = GUI_POINTER_POSITION;
if (guiControlExclusiveMode) // Allows to keep dragging outside of bounds
{
- if (IsMouseButtonDown(MOUSE_LEFT_BUTTON) &&
+ if (GUI_BUTTON_DOWN &&
!CheckCollisionPointRec(mousePoint, arrowUpLeft) &&
!CheckCollisionPointRec(mousePoint, arrowDownRight))
{
@@ -5664,11 +5720,11 @@ static int GuiScrollBar(Rectangle bounds, int value, int minValue, int maxValue)
state = STATE_FOCUSED;
// Handle mouse wheel
- int wheel = (int)GetMouseWheelMove();
- if (wheel != 0) value += wheel;
+ float scrollDelta = GUI_SCROLL_DELTA;
+ if (scrollDelta != 0) value += (int)scrollDelta;
// Handle mouse button down
- if (IsMouseButtonPressed(MOUSE_LEFT_BUTTON))
+ if (GUI_BUTTON_PRESSED)
{
guiControlExclusiveMode = true;
guiControlExclusiveRec = bounds; // Store bounds as an identifier when dragging starts
@@ -5690,13 +5746,13 @@ static int GuiScrollBar(Rectangle bounds, int value, int minValue, int maxValue)
/*
if (isVertical)
{
- if (IsKeyDown(KEY_DOWN)) value += 5;
- else if (IsKeyDown(KEY_UP)) value -= 5;
+ if (GUI_KEY_DOWN(KEY_DOWN)) value += 5;
+ else if (GUI_KEY_DOWN(KEY_UP)) value -= 5;
}
else
{
- if (IsKeyDown(KEY_RIGHT)) value += 5;
- else if (IsKeyDown(KEY_LEFT)) value -= 5;
+ if (GUI_KEY_DOWN(KEY_RIGHT)) value += 5;
+ else if (GUI_KEY_DOWN(KEY_LEFT)) value -= 5;
}
*/
}
@@ -5833,7 +5889,7 @@ const char **TextSplit(const char *text, char delimiter, int *count)
{
counter = 1;
- // Count how many substrings we have on text and point to every one
+ // Count how many substrings text contains and point to every one of them
for (int i = 0; i < RAYGUI_TEXTSPLIT_MAX_TEXT_SIZE; i++)
{
buffer[i] = text[i];
@@ -5866,7 +5922,7 @@ static int TextToInteger(const char *text)
text++;
}
- for (int i = 0; ((text[i] >= '0') && (text[i] <= '9')); ++i) value = value*10 + (int)(text[i] - '0');
+ for (int i = 0; ((text[i] >= '0') && (text[i] <= '9')); i++) value = value*10 + (int)(text[i] - '0');
return value*sign;
}
@@ -5941,9 +5997,9 @@ static const char *CodepointToUTF8(int codepoint, int *byteSize)
}
// Get next codepoint in a UTF-8 encoded text, scanning until '\0' is found
-// When a invalid UTF-8 byte is encountered we exit as soon as possible and a '?'(0x3f) codepoint is returned
+// When a invalid UTF-8 byte is encountered, exiting as soon as possible and returning a '?'(0x3f) codepoint
// Total number of bytes processed are returned as a parameter
-// NOTE: the standard says U+FFFD should be returned in case of errors
+// NOTE: The standard says U+FFFD should be returned in case of errors
// but that character is not supported by the default font in raylib
static int GetCodepointNext(const char *text, int *codepointSize)
{
diff --git a/examples/examples_list.txt b/examples/examples_list.txt
index eda62ee13..85b997ec4 100644
--- a/examples/examples_list.txt
+++ b/examples/examples_list.txt
@@ -57,6 +57,7 @@ core;core_clipboard_text;★★☆☆;5.6-dev;5.6-dev;2025;2025;"Ananth S";@Anan
core;core_text_file_loading;★☆☆☆;5.5;5.6;0;0;"Aanjishnu Bhattacharyya";@NimComPoo-04
core;core_compute_hash;★★☆☆;5.6-dev;5.6-dev;2025;2025;"Ramon Santamaria";@raysan5
core;core_keyboard_testbed;★★☆☆;5.6;5.6;2026;2026;"Ramon Santamaria";@raysan5
+core;core_window_web;★☆☆☆;1.3;5.5;2015;2025;"Ramon Santamaria";@raysan5
shapes;shapes_basic_shapes;★☆☆☆;1.0;4.2;2014;2025;"Ramon Santamaria";@raysan5
shapes;shapes_bouncing_ball;★☆☆☆;2.5;2.5;2013;2025;"Ramon Santamaria";@raysan5
shapes;shapes_bullet_hell;★☆☆☆;5.6;5.6;2025;2025;"Zero";@zerohorsepower
@@ -96,6 +97,7 @@ shapes;shapes_rlgl_triangle;★★☆☆;5.6-dev;5.6-dev;2025;2025;"Robin";@Robi
shapes;shapes_ball_physics;★★☆☆;5.6-dev;5.6-dev;2025;2025;"David Buzatto";@davidbuzatto
shapes;shapes_penrose_tile;★★★★;5.5;5.6-dev;2025;2025;"David Buzatto";@davidbuzatto
shapes;shapes_hilbert_curve;★★★☆;5.6;5.6;2025;2025;"Hamza RAHAL";@hmz-rhl
+shapes;shapes_easings_testbed;★★★☆;2.5;2.5;2019;2025;"Juan Miguel López";@flashback-fx
textures;textures_logo_raylib;★☆☆☆;1.0;1.0;2014;2025;"Ramon Santamaria";@raysan5
textures;textures_srcrec_dstrec;★★★☆;1.3;1.3;2015;2025;"Ramon Santamaria";@raysan5
textures;textures_image_drawing;★★☆☆;1.4;1.4;2016;2025;"Ramon Santamaria";@raysan5
@@ -169,6 +171,8 @@ models;models_basic_voxel;★★☆☆;5.5;5.5;2025;2025;"Tim Little";@timlittle
models;models_rotating_cube;★☆☆☆;5.6-dev;5.6-dev;2025;2025;"Jopestpe";@jopestpe
models;models_decals;★★★★;5.6-dev;5.6-dev;2025;2025;"JP Mortiboys";@themushroompirates
models;models_directional_billboard;★★☆☆;5.6-dev;5.6;2025;2025;"Robin";@RobinsAviary
+models;models_animation_bone_blending;★★★★;5.5;5.5;2026;2026;"dmitrii-brand";@dmitrii-brand
+models;models_animation_blending;☆☆☆☆;5.5;5.6-dev;2024;2024;"Kirandeep";@Kirandeep-Singh-Khehra
shaders;shaders_ascii_rendering;★★☆☆;5.5;5.6;2025;2025;"Maicon Santana";@maiconpintoabreu
shaders;shaders_basic_lighting;★★★★;3.0;4.2;2019;2025;"Chris Camacho";@chriscamacho
shaders;shaders_model_shader;★★☆☆;1.3;3.7;2014;2025;"Ramon Santamaria";@raysan5
@@ -202,6 +206,7 @@ shaders;shaders_lightmap_rendering;★★★☆;4.5;4.5;2019;2025;"Jussi Viitala
shaders;shaders_rounded_rectangle;★★★☆;5.5;5.5;2025;2025;"Anstro Pleuton";@anstropleuton
shaders;shaders_depth_rendering;★★★☆;5.6-dev;5.6-dev;2025;2025;"Luís Almeida";@luis605
shaders;shaders_game_of_life;★★★☆;5.6;5.6;2025;2025;"Jordi Santonja";@JordSant
+shaders;shaders_rlgl_compute;★★★★;4.0;4.0;2021;2025;"Teddy Astie";@tsnake41
audio;audio_module_playing;★☆☆☆;1.5;3.5;2016;2025;"Ramon Santamaria";@raysan5
audio;audio_music_stream;★☆☆☆;1.3;4.2;2015;2025;"Ramon Santamaria";@raysan5
audio;audio_raw_stream;★★★☆;1.6;4.2;2015;2025;"Ramon Santamaria";@raysan5
@@ -211,9 +216,3 @@ audio;audio_stream_effects;★★★★;4.2;5.0;2022;2025;"Ramon Santamaria";@ra
audio;audio_sound_multi;★★☆☆;5.0;5.0;2023;2025;"Jeffery Myers";@JeffM2501
audio;audio_sound_positioning;★★☆☆;5.5;5.5;2025;2025;"Le Juez Victor";@Bigfoot71
audio;audio_spectrum_visualizer;★★★☆;6.0;5.6-dev;2025;2025;"IANN";@meisei4
-others;rlgl_standalone;★★★★;1.6;4.0;2014;2025;"Ramon Santamaria";@raysan5
-others;rlgl_compute_shader;★★★★;4.0;4.0;2021;2025;"Teddy Astie";@tsnake41
-others;easings_testbed;★★★☆;2.5;3.0;2019;2025;"Juan Miguel López";@flashback-fx
-others;raylib_opengl_interop;★★★★;3.8;4.0;2021;2025;"Stephan Soller";@arkanis
-others;embedded_files_loading;★★☆☆;3.0;3.5;2020;2025;"Kristian Holmgren";@defutura
-others;web_basic_window;★☆☆☆;5.6-dev;5.6-dev;2014;2025;"Ramon Santamaria";@raysan5
diff --git a/examples/models/models_animation_blending.c b/examples/models/models_animation_blending.c
new file mode 100644
index 000000000..b33dbe85d
--- /dev/null
+++ b/examples/models/models_animation_blending.c
@@ -0,0 +1,152 @@
+/*******************************************************************************************
+*
+* raylib [models] example - animation blending
+*
+* Example originally created with raylib 5.5, last time updated with raylib 5.6-dev
+*
+* Example contributed by Kirandeep (@Kirandeep-Singh-Khehra)
+*
+* Example licensed under an unmodified zlib/libpng license, which is an OSI-certified,
+* BSD-like license that allows static linking with closed source software
+*
+* Copyright (c) 2024 Kirandeep (@Kirandeep-Singh-Khehra)
+*
+* Note: Due to limitations in the Apple OpenGL driver, this feature does not work on MacOS
+* Note: This example uses CPU for updating meshes.
+* For GPU skinning see comments with 'INFO:'.
+*
+********************************************************************************************/
+
+#include "raylib.h"
+
+#define clamp(x,a,b) ((x < a)? a : (x > b)? b : x)
+
+#if defined(PLATFORM_DESKTOP)
+ #define GLSL_VERSION 330
+#else // PLATFORM_ANDROID, PLATFORM_WEB
+ #define GLSL_VERSION 100
+#endif
+
+//------------------------------------------------------------------------------------
+// Program main entry point
+//------------------------------------------------------------------------------------
+int main(void)
+{
+ // Initialization
+ //--------------------------------------------------------------------------------------
+ const int screenWidth = 800;
+ const int screenHeight = 450;
+
+ InitWindow(screenWidth, screenHeight, "raylib [models] example - animation blending");
+
+ // Define the camera to look into our 3d world
+ Camera camera = { 0 };
+ camera.position = (Vector3){ 8.0f, 8.0f, 8.0f }; // Camera position
+ camera.target = (Vector3){ 0.0f, 2.0f, 0.0f }; // Camera looking at point
+ camera.up = (Vector3){ 0.0f, 1.0f, 0.0f }; // Camera up vector (rotation towards target)
+ camera.fovy = 45.0f; // Camera field-of-view Y
+ camera.projection = CAMERA_PERSPECTIVE; // Camera projection type
+
+ // Load gltf model
+ Model characterModel = LoadModel("resources/models/gltf/robot.glb"); // Load character model
+
+/* INFO: Uncomment this to use GPU skinning
+ // Load skinning shader
+ Shader skinningShader = LoadShader(TextFormat("resources/shaders/glsl%i/skinning.vs", GLSL_VERSION),
+ TextFormat("resources/shaders/glsl%i/skinning.fs", GLSL_VERSION));
+
+ for (int i = 0; i < characterModel.materialCount; i++)
+ {
+ characterModel.materials[i].shader = skinningShader;
+ }
+*/
+
+ // Load gltf model animations
+ int animsCount = 0;
+ unsigned int animIndex0 = 0;
+ unsigned int animIndex1 = 0;
+ unsigned int animCurrentFrame = 0;
+ ModelAnimation *modelAnimations = LoadModelAnimations("resources/models/gltf/robot.glb", &animsCount);
+
+ float blendFactor = 0.5f;
+
+ DisableCursor(); // Limit cursor to relative movement inside the window
+
+ SetTargetFPS(60); // Set our game to run at 60 frames-per-second
+ //--------------------------------------------------------------------------------------
+
+ // Main game loop
+ while (!WindowShouldClose()) // Detect window close button or ESC key
+ {
+ // Update
+ //----------------------------------------------------------------------------------
+ UpdateCamera(&camera, CAMERA_THIRD_PERSON);
+
+ // Select current animation
+ if (IsKeyPressed(KEY_T)) animIndex0 = (animIndex0 + 1)%animsCount;
+ else if (IsKeyPressed(KEY_G)) animIndex0 = (animIndex0 + animsCount - 1)%animsCount;
+ if (IsKeyPressed(KEY_Y)) animIndex1 = (animIndex1 + 1)%animsCount;
+ else if (IsKeyPressed(KEY_H)) animIndex1 = (animIndex1 + animsCount - 1)%animsCount;
+
+ // Select blend factor
+ if (IsKeyPressed(KEY_U)) blendFactor = clamp(blendFactor - 0.1, 0.0f, 1.0f);
+ else if (IsKeyPressed(KEY_J)) blendFactor = clamp(blendFactor + 0.1, 0.0f, 1.0f);
+
+ // Update animation
+ animCurrentFrame++;
+
+ // Update bones
+ // Note: Same animation frame index is used below. By default it loops both animations
+ UpdateModelAnimationBonesLerp(characterModel, modelAnimations[animIndex0], animCurrentFrame, modelAnimations[animIndex1], animCurrentFrame, blendFactor);
+
+// INFO: Comment the following line to use GPU skinning
+ UpdateModelVertsToCurrentBones(characterModel);
+ //----------------------------------------------------------------------------------
+
+ // Draw
+ //----------------------------------------------------------------------------------
+ BeginDrawing();
+
+ ClearBackground(RAYWHITE);
+
+ BeginMode3D(camera);
+
+/* INFO: Uncomment this to use GPU skinning
+ // Draw character mesh, pose calculation is done in shader (GPU skinning)
+ for (int i = 0; i < characterModel.meshCount; i++)
+ {
+ DrawMesh(characterModel.meshes[i], characterModel.materials[characterModel.meshMaterial[i]], characterModel.transform);
+ }
+*/
+
+// INFO: Comment the following line to use GPU skinning
+ DrawModel(characterModel, (Vector3){0.0f, 0.0f, 0.0f}, 1.0f, WHITE);
+
+
+ DrawGrid(10, 1.0f);
+
+ EndMode3D();
+
+ DrawText("Use the U/J to adjust blend factor", 10, 10, 20, GRAY);
+ DrawText("Use the T/G to switch first animation", 10, 30, 20, GRAY);
+ DrawText("Use the Y/H to switch second animation", 10, 50, 20, GRAY);
+ DrawText(TextFormat("Animations: %s, %s", modelAnimations[animIndex0].name, modelAnimations[animIndex1].name), 10, 70, 20, BLACK);
+ DrawText(TextFormat("Blend Factor: %f", blendFactor), 10, 86, 20, BLACK);
+
+ EndDrawing();
+ //----------------------------------------------------------------------------------
+ }
+
+ // De-Initialization
+ //--------------------------------------------------------------------------------------
+ UnloadModelAnimations(modelAnimations, animsCount); // Unload model animation
+ UnloadModel(characterModel); // Unload model and meshes/material
+
+// INFO: Uncomment the following line to use GPU skinning
+ // UnloadShader(skinningShader); // Unload GPU skinning shader
+
+ CloseWindow(); // Close window and OpenGL context
+ //--------------------------------------------------------------------------------------
+
+ return 0;
+}
diff --git a/examples/models/models_animation_blending.png b/examples/models/models_animation_blending.png
new file mode 100644
index 000000000..0d70c1a88
Binary files /dev/null and b/examples/models/models_animation_blending.png differ
diff --git a/examples/models/models_animation_bone_blending.c b/examples/models/models_animation_bone_blending.c
new file mode 100644
index 000000000..11e05a305
--- /dev/null
+++ b/examples/models/models_animation_bone_blending.c
@@ -0,0 +1,296 @@
+/*******************************************************************************************
+*
+* raylib [models] example - animation bone blending
+*
+* Example complexity rating: [★★★★] 4/4
+*
+* Example originally created with raylib 5.5, last time updated with raylib 5.5
+*
+* This example demonstrates per-bone animation blending, allowing smooth transitions
+* between two animations by interpolating bone transforms. This is useful for:
+* - Blending movement animations (walk/run) with action animations (jump/attack)
+* - Creating smooth animation transitions
+* - Layering animations (e.g., upper body attack while lower body walks)
+*
+* Example contributed by dmitrii-brand (@dmitrii-brand) and reviewed by Ramon Santamaria (@raysan5)
+*
+* NOTE: Due to limitations in the Apple OpenGL driver, this feature does not work on MacOS
+*
+* Example licensed under an unmodified zlib/libpng license, which is an OSI-certified,
+* BSD-like license that allows static linking with closed source software
+*
+* Copyright (c) 2026 dmitrii-brand (@dmitrii-brand)
+*
+********************************************************************************************/
+
+#include "raylib.h"
+
+#include "raymath.h"
+
+#include // Required for: memcpy()
+#include // Required for: NULL
+
+#if defined(PLATFORM_DESKTOP)
+ #define GLSL_VERSION 330
+#else // PLATFORM_ANDROID, PLATFORM_WEB
+ #define GLSL_VERSION 100
+#endif
+
+//------------------------------------------------------------------------------------
+// Module Functions Declaration
+//------------------------------------------------------------------------------------
+static bool IsUpperBodyBone(const char *boneName);
+static void BlendModelAnimationsBones(Model *model, ModelAnimation *anim1, int frame1,
+ ModelAnimation *anim2, int frame2, float blendFactor, bool upperBodyBlend);
+
+//------------------------------------------------------------------------------------
+// Program main entry point
+//------------------------------------------------------------------------------------
+int main(void)
+{
+ // Initialization
+ //--------------------------------------------------------------------------------------
+ const int screenWidth = 800;
+ const int screenHeight = 450;
+
+ InitWindow(screenWidth, screenHeight, "raylib [models] example - animation bone blending");
+
+ // Define the camera to look into our 3d world
+ Camera camera = { 0 };
+ camera.position = (Vector3){ 5.0f, 5.0f, 5.0f }; // Camera position
+ camera.target = (Vector3){ 0.0f, 2.0f, 0.0f }; // Camera looking at point
+ camera.up = (Vector3){ 0.0f, 1.0f, 0.0f }; // Camera up vector (rotation towards target)
+ camera.fovy = 45.0f; // Camera field-of-view Y
+ camera.projection = CAMERA_PERSPECTIVE; // Camera projection type
+
+ // Load gltf model
+ Model characterModel = LoadModel("resources/models/gltf/greenman.glb");
+
+ // Load skinning shader
+ Shader skinningShader = LoadShader(TextFormat("resources/shaders/glsl%i/skinning.vs", GLSL_VERSION),
+ TextFormat("resources/shaders/glsl%i/skinning.fs", GLSL_VERSION));
+
+ characterModel.materials[1].shader = skinningShader;
+
+ // Load gltf model animations
+ int animsCount = 0;
+ ModelAnimation *modelAnimations = LoadModelAnimations("resources/models/gltf/greenman.glb", &animsCount);
+
+ // Log all available animations for debugging
+ TraceLog(LOG_INFO, "Found %d animations:", animsCount);
+ for (int i = 0; i < animsCount; i++)
+ {
+ TraceLog(LOG_INFO, " Animation %d: %s (%d frames)", i, modelAnimations[i].name, modelAnimations[i].frameCount);
+ }
+
+ // Use specific indices: walk/move = 2, attack = 3
+ unsigned int animIndex1 = 2; // Walk/Move animation (index 2)
+ unsigned int animIndex2 = 3; // Attack animation (index 3)
+ unsigned int animCurrentFrame1 = 0;
+ unsigned int animCurrentFrame2 = 0;
+
+ // Validate indices
+ if (animIndex1 >= animsCount) animIndex1 = 0;
+ if (animIndex2 >= animsCount) animIndex2 = (animsCount > 1) ? 1 : 0;
+
+ TraceLog(LOG_INFO, "Using Walk (index %d): %s", animIndex1, modelAnimations[animIndex1].name);
+ TraceLog(LOG_INFO, "Using Attack (index %d): %s", animIndex2, modelAnimations[animIndex2].name);
+
+ Vector3 position = { 0.0f, 0.0f, 0.0f }; // Set model position
+ bool upperBodyBlend = true; // Toggle: true = upper/lower body blending, false = uniform blending (50/50)
+
+ DisableCursor(); // Limit cursor to relative movement inside the window
+
+ SetTargetFPS(60); // Set our game to run at 60 frames-per-second
+ //--------------------------------------------------------------------------------------
+
+ // Main game loop
+ while (!WindowShouldClose()) // Detect window close button or ESC key
+ {
+ // Update
+ //----------------------------------------------------------------------------------
+ UpdateCamera(&camera, CAMERA_THIRD_PERSON);
+
+ // Toggle upper/lower body blending mode (SPACE key)
+ if (IsKeyPressed(KEY_SPACE)) upperBodyBlend = !upperBodyBlend;
+
+ // Update animation frames
+ ModelAnimation anim1 = modelAnimations[animIndex1];
+ ModelAnimation anim2 = modelAnimations[animIndex2];
+
+ animCurrentFrame1 = (animCurrentFrame1 + 1)%anim1.frameCount;
+ animCurrentFrame2 = (animCurrentFrame2 + 1)%anim2.frameCount;
+
+ // Blend the two animations
+ characterModel.transform = MatrixTranslate(position.x, position.y, position.z);
+ // When upperBodyBlend is ON: upper body = attack (1.0), lower body = walk (0.0)
+ // When upperBodyBlend is OFF: uniform blend at 0.5 (50% walk, 50% attack)
+ float blendFactor = upperBodyBlend ? 1.0f : 0.5f;
+ BlendModelAnimationsBones(&characterModel, &anim1, animCurrentFrame1, &anim2, animCurrentFrame2, blendFactor, upperBodyBlend);
+ //----------------------------------------------------------------------------------
+
+ // Draw
+ //----------------------------------------------------------------------------------
+ BeginDrawing();
+
+ ClearBackground(RAYWHITE);
+
+ BeginMode3D(camera);
+
+ // Draw character mesh, pose calculation is done in shader (GPU skinning)
+ DrawMesh(characterModel.meshes[0], characterModel.materials[1], characterModel.transform);
+
+ DrawGrid(10, 1.0f);
+
+ EndMode3D();
+
+ // Draw UI
+ DrawText("BONE BLENDING EXAMPLE", 10, 10, 20, DARKGRAY);
+ DrawText(TextFormat("Walk (Animation 2): %s", anim1.name), 10, 35, 10, GRAY);
+ DrawText(TextFormat("Attack (Animation 3): %s", anim2.name), 10, 50, 10, GRAY);
+ DrawText(TextFormat("Mode: %s", upperBodyBlend ? "Upper/Lower Body Blending" : "Uniform Blending"), 10, 65, 10, GRAY);
+ DrawText("SPACE - Toggle blending mode", 10, GetScreenHeight() - 20, 10, DARKGRAY);
+
+ EndDrawing();
+ //----------------------------------------------------------------------------------
+ }
+
+ // De-Initialization
+ //--------------------------------------------------------------------------------------
+ UnloadModelAnimations(modelAnimations, animsCount); // Unload model animation
+ UnloadModel(characterModel); // Unload model and meshes/material
+ UnloadShader(skinningShader); // Unload GPU skinning shader
+
+ CloseWindow(); // Close window and OpenGL context
+ //--------------------------------------------------------------------------------------
+
+ return 0;
+}
+
+//----------------------------------------------------------------------------------
+// Module Functions Definition
+//----------------------------------------------------------------------------------
+// Check if a bone is part of upper body (for selective blending)
+static bool IsUpperBodyBone(const char *boneName)
+{
+ // Common upper body bone names (adjust based on your model)
+ if (TextIsEqual(boneName, "spine") || TextIsEqual(boneName, "spine1") || TextIsEqual(boneName, "spine2") ||
+ TextIsEqual(boneName, "chest") || TextIsEqual(boneName, "upperChest") ||
+ TextIsEqual(boneName, "neck") || TextIsEqual(boneName, "head") ||
+ TextIsEqual(boneName, "shoulder") || TextIsEqual(boneName, "shoulder_L") || TextIsEqual(boneName, "shoulder_R") ||
+ TextIsEqual(boneName, "upperArm") || TextIsEqual(boneName, "upperArm_L") || TextIsEqual(boneName, "upperArm_R") ||
+ TextIsEqual(boneName, "lowerArm") || TextIsEqual(boneName, "lowerArm_L") || TextIsEqual(boneName, "lowerArm_R") ||
+ TextIsEqual(boneName, "hand") || TextIsEqual(boneName, "hand_L") || TextIsEqual(boneName, "hand_R") ||
+ TextIsEqual(boneName, "clavicle") || TextIsEqual(boneName, "clavicle_L") || TextIsEqual(boneName, "clavicle_R"))
+ {
+ return true;
+ }
+
+ // Check if bone name contains upper body keywords
+ if (strstr(boneName, "spine") != NULL || strstr(boneName, "chest") != NULL ||
+ strstr(boneName, "neck") != NULL || strstr(boneName, "head") != NULL ||
+ strstr(boneName, "shoulder") != NULL || strstr(boneName, "arm") != NULL ||
+ strstr(boneName, "hand") != NULL || strstr(boneName, "clavicle") != NULL)
+ {
+ return true;
+ }
+
+ return false;
+}
+
+// Blend two animations per-bone with selective upper/lower body blending
+static void BlendModelAnimationsBones(Model *model, ModelAnimation *anim1, int frame1,
+ ModelAnimation *anim2, int frame2, float blendFactor, bool upperBodyBlend)
+{
+ // Validate inputs
+ if (anim1->boneCount == 0 || anim1->framePoses == NULL ||
+ anim2->boneCount == 0 || anim2->framePoses == NULL ||
+ model->boneCount == 0 || model->bindPose == NULL)
+ {
+ return;
+ }
+
+ // Clamp blend factor to [0, 1]
+ blendFactor = fminf(1.0f, fmaxf(0.0f, blendFactor));
+
+ // Ensure frame indices are valid
+ if (frame1 >= anim1->frameCount) frame1 = anim1->frameCount - 1;
+ if (frame2 >= anim2->frameCount) frame2 = anim2->frameCount - 1;
+ if (frame1 < 0) frame1 = 0;
+ if (frame2 < 0) frame2 = 0;
+
+ // Find first mesh with bones
+ int firstMeshWithBones = -1;
+ for (int i = 0; i < model->meshCount; i++)
+ {
+ if (model->meshes[i].boneMatrices)
+ {
+ firstMeshWithBones = i;
+ break;
+ }
+ }
+
+ if (firstMeshWithBones == -1) return;
+
+ // Get bone count (use minimum of all to be safe)
+ int boneCount = model->boneCount;
+ if (anim1->boneCount < boneCount) boneCount = anim1->boneCount;
+ if (anim2->boneCount < boneCount) boneCount = anim2->boneCount;
+
+ // Blend each bone
+ for (int boneId = 0; boneId < boneCount; boneId++)
+ {
+ // Determine blend factor for this bone
+ float boneBlendFactor = blendFactor;
+
+ // If upper body blending is enabled, use different blend factors for upper vs lower body
+ if (upperBodyBlend)
+ {
+ const char *boneName = model->bones[boneId].name;
+ bool isUpperBody = IsUpperBodyBone(boneName);
+
+ // Upper body: use anim2 (attack), Lower body: use anim1 (walk)
+ // blendFactor = 0.0 means full anim1 (walk), 1.0 means full anim2 (attack)
+ if (isUpperBody) boneBlendFactor = blendFactor; // Upper body: blend towards anim2 (attack)
+ else boneBlendFactor = 1.0f - blendFactor; // Lower body: blend towards anim1 (walk) - invert the blend
+ }
+
+ // Get transforms from both animations
+ Transform *bindTransform = &model->bindPose[boneId];
+ Transform *anim1Transform = &anim1->framePoses[frame1][boneId];
+ Transform *anim2Transform = &anim2->framePoses[frame2][boneId];
+
+ // Blend the transforms
+ Transform blended;
+ blended.translation = Vector3Lerp(anim1Transform->translation, anim2Transform->translation, boneBlendFactor);
+ blended.rotation = QuaternionSlerp(anim1Transform->rotation, anim2Transform->rotation, boneBlendFactor);
+ blended.scale = Vector3Lerp(anim1Transform->scale, anim2Transform->scale, boneBlendFactor);
+
+ // Convert bind pose to matrix
+ Matrix bindMatrix = MatrixMultiply(MatrixMultiply(
+ MatrixScale(bindTransform->scale.x, bindTransform->scale.y, bindTransform->scale.z),
+ QuaternionToMatrix(bindTransform->rotation)),
+ MatrixTranslate(bindTransform->translation.x, bindTransform->translation.y, bindTransform->translation.z));
+
+ // Convert blended transform to matrix
+ Matrix blendedMatrix = MatrixMultiply(MatrixMultiply(
+ MatrixScale(blended.scale.x, blended.scale.y, blended.scale.z),
+ QuaternionToMatrix(blended.rotation)),
+ MatrixTranslate(blended.translation.x, blended.translation.y, blended.translation.z));
+
+ // Calculate final bone matrix (similar to UpdateModelAnimationBones)
+ model->meshes[firstMeshWithBones].boneMatrices[boneId] = MatrixMultiply(MatrixInvert(bindMatrix), blendedMatrix);
+ }
+
+ // Copy bone matrices to remaining meshes
+ for (int i = firstMeshWithBones + 1; i < model->meshCount; i++)
+ {
+ if (model->meshes[i].boneMatrices)
+ {
+ memcpy(model->meshes[i].boneMatrices,
+ model->meshes[firstMeshWithBones].boneMatrices,
+ model->meshes[i].boneCount*sizeof(model->meshes[i].boneMatrices[0]));
+ }
+ }
+}
+
diff --git a/examples/models/models_basic_voxel.c b/examples/models/models_basic_voxel.c
index a70da1822..61313ecef 100644
--- a/examples/models/models_basic_voxel.c
+++ b/examples/models/models_basic_voxel.c
@@ -16,6 +16,7 @@
********************************************************************************************/
#include "raylib.h"
+
#include "raymath.h"
#define WORLD_SIZE 8 // Size of our voxel world (8x8x8 cubes)
@@ -32,7 +33,7 @@ int main(void)
InitWindow(screenWidth, screenHeight, "raylib [models] example - basic voxel");
- DisableCursor(); // Lock mouse to window center
+ DisableCursor(); // Lock mouse to window center
// Define the camera to look into our 3d world (first person)
Camera3D camera = { 0 };
@@ -59,7 +60,7 @@ int main(void)
}
}
}
-
+
SetTargetFPS(60);
//--------------------------------------------------------------------------------------
@@ -74,7 +75,7 @@ int main(void)
if (IsMouseButtonPressed(MOUSE_LEFT_BUTTON))
{
// Cast a ray from the screen center (where crosshair would be)
- Vector2 screenCenter = { screenWidth/2.0f, screenHeight/2.0f };
+ Vector2 screenCenter = { GetScreenWidth()/2.0f, GetScreenHeight()/2.0f };
Ray ray = GetMouseRay(screenCenter, camera);
// Check ray collision with all voxels
@@ -132,8 +133,11 @@ int main(void)
}
}
}
-
+
EndMode3D();
+
+ // Draw reference point for raycasting to delete blocks
+ DrawCircle(GetRenderWidth()/2, GetScreenHeight()/2, 4, RED);
DrawText("Left-click a voxel to remove it!", 10, 10, 20, DARKGRAY);
DrawText("WASD to move, mouse to look around", 10, 35, 10, GRAY);
@@ -145,6 +149,7 @@ int main(void)
// De-Initialization
//--------------------------------------------------------------------------------------
UnloadModel(cubeModel);
+
CloseWindow();
//--------------------------------------------------------------------------------------
diff --git a/examples/models/models_basic_voxel.png b/examples/models/models_basic_voxel.png
index 8bbcaf8da..0666ec8c8 100644
Binary files a/examples/models/models_basic_voxel.png and b/examples/models/models_basic_voxel.png differ
diff --git a/examples/models/models_directional_billboard.c b/examples/models/models_directional_billboard.c
index e2c75c15a..caab94afb 100644
--- a/examples/models/models_directional_billboard.c
+++ b/examples/models/models_directional_billboard.c
@@ -17,7 +17,9 @@
********************************************************************************************/
#include "raylib.h"
+
#include "raymath.h"
+
#include
//------------------------------------------------------------------------------------
diff --git a/examples/models/raygui.h b/examples/models/raygui.h
new file mode 100644
index 000000000..67c16be45
--- /dev/null
+++ b/examples/models/raygui.h
@@ -0,0 +1,6043 @@
+/*******************************************************************************************
+*
+* raygui v5.0-dev - A simple and easy-to-use immediate-mode gui library
+*
+* DESCRIPTION:
+* raygui is a tools-dev-focused immediate-mode-gui library based on raylib but also
+* available as a standalone library, as long as input and drawing functions are provided
+*
+* FEATURES:
+* - Immediate-mode gui, minimal retained data
+* - +25 controls provided (basic and advanced)
+* - Styling system for colors, font and metrics
+* - Icons supported, embedded as a 1-bit icons pack
+* - Standalone mode option (custom input/graphics backend)
+* - Multiple support tools provided for raygui development
+*
+* POSSIBLE IMPROVEMENTS:
+* - Better standalone mode API for easy plug of custom backends
+* - Externalize required inputs, allow user easier customization
+*
+* LIMITATIONS:
+* - No editable multi-line word-wraped text box supported
+* - No auto-layout mechanism, up to the user to define controls position and size
+* - Standalone mode requires library modification and some user work to plug another backend
+*
+* NOTES:
+* - WARNING: GuiLoadStyle() and GuiLoadStyle{Custom}() functions, allocate memory for
+* font atlas recs and glyphs, freeing that memory is (usually) up to the user,
+* no unload function is explicitly provided... but note that GuiLoadStyleDefault() unloads
+* by default any previously loaded font (texture, recs, glyphs)
+* - Global UI alpha (guiAlpha) is applied inside GuiDrawRectangle() and GuiDrawText() functions
+*
+* CONTROLS PROVIDED:
+* # Container/separators Controls
+* - WindowBox --> StatusBar, Panel
+* - GroupBox --> Line
+* - Line
+* - Panel --> StatusBar
+* - ScrollPanel --> StatusBar
+* - TabBar --> Button
+*
+* # Basic Controls
+* - Label
+* - LabelButton --> Label
+* - Button
+* - Toggle
+* - ToggleGroup --> Toggle
+* - ToggleSlider
+* - CheckBox
+* - ComboBox
+* - DropdownBox
+* - TextBox
+* - ValueBox --> TextBox
+* - Spinner --> Button, ValueBox
+* - Slider
+* - SliderBar --> Slider
+* - ProgressBar
+* - StatusBar
+* - DummyRec
+* - Grid
+*
+* # Advance Controls
+* - ListView
+* - ColorPicker --> ColorPanel, ColorBarHue
+* - MessageBox --> Window, Label, Button
+* - TextInputBox --> Window, Label, TextBox, Button
+*
+* It also provides a set of functions for styling the controls based on its properties (size, color)
+*
+*
+* RAYGUI STYLE (guiStyle):
+* raygui uses a global data array for all gui style properties (allocated on data segment by default),
+* when a new style is loaded, it is loaded over the global style... but a default gui style could always be
+* recovered with GuiLoadStyleDefault() function, that overwrites the current style to the default one
+*
+* The global style array size is fixed and depends on the number of controls and properties:
+*
+* static unsigned int guiStyle[RAYGUI_MAX_CONTROLS*(RAYGUI_MAX_PROPS_BASE + RAYGUI_MAX_PROPS_EXTENDED)];
+*
+* guiStyle size is by default: 16*(16 + 8) = 384 int = 384*4 bytes = 1536 bytes = 1.5 KB
+*
+* Note that the first set of BASE properties (by default guiStyle[0..15]) belong to the generic style
+* used for all controls, when any of those base values is set, it is automatically populated to all
+* controls, so, specific control values overwriting generic style should be set after base values
+*
+* After the first BASE properties set, the EXTENDED properties set is defined (by default guiStyle[16..23]),
+* those properties are actually common to all controls and can not be overwritten individually (like BASE ones)
+* Some of those properties are: TEXT_SIZE, TEXT_SPACING, LINE_COLOR, BACKGROUND_COLOR
+*
+* Custom control properties can be defined using the EXTENDED properties for each independent control.
+*
+* TOOL: rGuiStyler is a visual tool to customize raygui style: github.com/raysan5/rguistyler
+*
+*
+* RAYGUI ICONS (guiIcons):
+* raygui could use a global array containing icons data (allocated on data segment by default),
+* a custom icons set could be loaded over this array using GuiLoadIcons(), but loaded icons set
+* must be same RAYGUI_ICON_SIZE and no more than RAYGUI_ICON_MAX_ICONS will be loaded
+*
+* Every icon is codified in binary form, using 1 bit per pixel, so, every 16x16 icon
+* requires 8 integers (16*16/32) to be stored in memory.
+*
+* When the icon is draw, actually one quad per pixel is drawn if the bit for that pixel is set
+*
+* The global icons array size is fixed and depends on the number of icons and size:
+*
+* static unsigned int guiIcons[RAYGUI_ICON_MAX_ICONS*RAYGUI_ICON_DATA_ELEMENTS];
+*
+* guiIcons size is by default: 256*(16*16/32) = 2048*4 = 8192 bytes = 8 KB
+*
+* TOOL: rGuiIcons is a visual tool to customize/create raygui icons: github.com/raysan5/rguiicons
+*
+* RAYGUI LAYOUT:
+* raygui currently does not provide an auto-layout mechanism like other libraries,
+* layouts must be defined manually on controls drawing, providing the right bounds Rectangle for it
+*
+* TOOL: rGuiLayout is a visual tool to create raygui layouts: github.com/raysan5/rguilayout
+*
+* CONFIGURATION:
+* #define RAYGUI_IMPLEMENTATION
+* Generates the implementation of the library into the included file
+* If not defined, the library is in header only mode and can be included in other headers
+* or source files without problems. But only ONE file should hold the implementation
+*
+* #define RAYGUI_STANDALONE
+* Avoid raylib.h header inclusion in this file. Data types defined on raylib are defined
+* internally in the library and input management and drawing functions must be provided by
+* the user (check library implementation for further details)
+*
+* #define RAYGUI_NO_ICONS
+* Avoid including embedded ricons data (256 icons, 16x16 pixels, 1-bit per pixel, 2KB)
+*
+* #define RAYGUI_CUSTOM_ICONS
+* Includes custom ricons.h header defining a set of custom icons,
+* this file can be generated using rGuiIcons tool
+*
+* #define RAYGUI_DEBUG_RECS_BOUNDS
+* Draw control bounds rectangles for debug
+*
+* #define RAYGUI_DEBUG_TEXT_BOUNDS
+* Draw text bounds rectangles for debug
+*
+* VERSIONS HISTORY:
+* 5.0 (xx-Mar-2026) ADDED: Support up to 32 controls (v500)
+* ADDED: guiControlExclusiveMode and guiControlExclusiveRec for exclusive modes
+* ADDED: GuiValueBoxFloat()
+* ADDED: GuiDropdonwBox() properties: DROPDOWN_ARROW_HIDDEN, DROPDOWN_ROLL_UP
+* ADDED: GuiListView() property: LIST_ITEMS_BORDER_WIDTH
+* ADDED: GuiLoadIconsFromMemory()
+* ADDED: Multiple new icons
+* ADDED: Macros for inputs customization, raylib decoupling
+* REMOVED: GuiSpinner() from controls list, using BUTTON + VALUEBOX properties
+* REMOVED: GuiSliderPro(), functionality was redundant
+* REVIEWED: Controls using text labels to use LABEL properties
+* REVIEWED: Replaced sprintf() by snprintf() for more safety
+* REVIEWED: GuiTabBar(), close tab with mouse middle button
+* REVIEWED: GuiScrollPanel(), scroll speed proportional to content
+* REVIEWED: GuiDropdownBox(), support roll up and hidden arrow
+* REVIEWED: GuiTextBox(), cursor position initialization
+* REVIEWED: GuiSliderPro(), control value change check
+* REVIEWED: GuiGrid(), simplified implementation
+* REVIEWED: GuiIconText(), increase buffer size and reviewed padding
+* REVIEWED: GuiDrawText(), improved wrap mode drawing
+* REVIEWED: GuiScrollBar(), minor tweaks
+* REVIEWED: GuiProgressBar(), improved borders computing
+* REVIEWED: GuiTextBox(), multiple improvements: autocursor and more
+* REVIEWED: Functions descriptions, removed wrong return value reference
+* REDESIGNED: GuiColorPanel(), improved HSV <-> RGBA convertion
+* REDESIGNED: WARNING: TEXT_LINE_SPACING does not consider text height, only lines spacing
+*
+* 4.0 (12-Sep-2023) ADDED: GuiToggleSlider()
+* ADDED: GuiColorPickerHSV() and GuiColorPanelHSV()
+* ADDED: Multiple new icons, mostly compiler related
+* ADDED: New DEFAULT properties: TEXT_LINE_SPACING, TEXT_ALIGNMENT_VERTICAL, TEXT_WRAP_MODE
+* ADDED: New enum values: GuiTextAlignment, GuiTextAlignmentVertical, GuiTextWrapMode
+* ADDED: Support loading styles with custom font charset from external file
+* REDESIGNED: GuiTextBox(), support mouse cursor positioning
+* REDESIGNED: GuiDrawText(), support multiline and word-wrap modes (read only)
+* REDESIGNED: GuiProgressBar() to be more visual, progress affects border color
+* REDESIGNED: Global alpha consideration moved to GuiDrawRectangle() and GuiDrawText()
+* REDESIGNED: GuiScrollPanel(), get parameters by reference and return result value
+* REDESIGNED: GuiToggleGroup(), get parameters by reference and return result value
+* REDESIGNED: GuiComboBox(), get parameters by reference and return result value
+* REDESIGNED: GuiCheckBox(), get parameters by reference and return result value
+* REDESIGNED: GuiSlider(), get parameters by reference and return result value
+* REDESIGNED: GuiSliderBar(), get parameters by reference and return result value
+* REDESIGNED: GuiProgressBar(), get parameters by reference and return result value
+* REDESIGNED: GuiListView(), get parameters by reference and return result value
+* REDESIGNED: GuiColorPicker(), get parameters by reference and return result value
+* REDESIGNED: GuiColorPanel(), get parameters by reference and return result value
+* REDESIGNED: GuiColorBarAlpha(), get parameters by reference and return result value
+* REDESIGNED: GuiColorBarHue(), get parameters by reference and return result value
+* REDESIGNED: GuiGrid(), get parameters by reference and return result value
+* REDESIGNED: GuiGrid(), added extra parameter
+* REDESIGNED: GuiListViewEx(), change parameters order
+* REDESIGNED: All controls return result as int value
+* REVIEWED: GuiScrollPanel() to avoid smallish scroll-bars
+* REVIEWED: All examples and specially controls_test_suite
+* RENAMED: gui_file_dialog module to gui_window_file_dialog
+* UPDATED: All styles to include ISO-8859-15 charset (as much as possible)
+*
+* 3.6 (10-May-2023) ADDED: New icon: SAND_TIMER
+* ADDED: GuiLoadStyleFromMemory() (binary only)
+* REVIEWED: GuiScrollBar() horizontal movement key
+* REVIEWED: GuiTextBox() crash on cursor movement
+* REVIEWED: GuiTextBox(), additional inputs support
+* REVIEWED: GuiLabelButton(), avoid text cut
+* REVIEWED: GuiTextInputBox(), password input
+* REVIEWED: Local GetCodepointNext(), aligned with raylib
+* REDESIGNED: GuiSlider*()/GuiScrollBar() to support out-of-bounds
+*
+* 3.5 (20-Apr-2023) ADDED: GuiTabBar(), based on GuiToggle()
+* ADDED: Helper functions to split text in separate lines
+* ADDED: Multiple new icons, useful for code editing tools
+* REMOVED: Unneeded icon editing functions
+* REMOVED: GuiTextBoxMulti(), very limited and broken
+* REMOVED: MeasureTextEx() dependency, logic directly implemented
+* REMOVED: DrawTextEx() dependency, logic directly implemented
+* REVIEWED: GuiScrollBar(), improve mouse-click behaviour
+* REVIEWED: Library header info, more info, better organized
+* REDESIGNED: GuiTextBox() to support cursor movement
+* REDESIGNED: GuiDrawText() to divide drawing by lines
+*
+* 3.2 (22-May-2022) RENAMED: Some enum values, for unification, avoiding prefixes
+* REMOVED: GuiScrollBar(), only internal
+* REDESIGNED: GuiPanel() to support text parameter
+* REDESIGNED: GuiScrollPanel() to support text parameter
+* REDESIGNED: GuiColorPicker() to support text parameter
+* REDESIGNED: GuiColorPanel() to support text parameter
+* REDESIGNED: GuiColorBarAlpha() to support text parameter
+* REDESIGNED: GuiColorBarHue() to support text parameter
+* REDESIGNED: GuiTextInputBox() to support password
+*
+* 3.1 (12-Jan-2022) REVIEWED: Default style for consistency (aligned with rGuiLayout v2.5 tool)
+* REVIEWED: GuiLoadStyle() to support compressed font atlas image data and unload previous textures
+* REVIEWED: External icons usage logic
+* REVIEWED: GuiLine() for centered alignment when including text
+* RENAMED: Multiple controls properties definitions to prepend RAYGUI_
+* RENAMED: RICON_ references to RAYGUI_ICON_ for library consistency
+* Projects updated and multiple tweaks
+*
+* 3.0 (04-Nov-2021) Integrated ricons data to avoid external file
+* REDESIGNED: GuiTextBoxMulti()
+* REMOVED: GuiImageButton*()
+* Multiple minor tweaks and bugs corrected
+*
+* 2.9 (17-Mar-2021) REMOVED: Tooltip API
+* 2.8 (03-May-2020) Centralized rectangles drawing to GuiDrawRectangle()
+* 2.7 (20-Feb-2020) ADDED: Possible tooltips API
+* 2.6 (09-Sep-2019) ADDED: GuiTextInputBox()
+* REDESIGNED: GuiListView*(), GuiDropdownBox(), GuiSlider*(), GuiProgressBar(), GuiMessageBox()
+* REVIEWED: GuiTextBox(), GuiSpinner(), GuiValueBox(), GuiLoadStyle()
+* Replaced property INNER_PADDING by TEXT_PADDING, renamed some properties
+* ADDED: 8 new custom styles ready to use
+* Multiple minor tweaks and bugs corrected
+*
+* 2.5 (28-May-2019) Implemented extended GuiTextBox(), GuiValueBox(), GuiSpinner()
+* 2.3 (29-Apr-2019) ADDED: rIcons auxiliar library and support for it, multiple controls reviewed
+* Refactor all controls drawing mechanism to use control state
+* 2.2 (05-Feb-2019) ADDED: GuiScrollBar(), GuiScrollPanel(), reviewed GuiListView(), removed Gui*Ex() controls
+* 2.1 (26-Dec-2018) REDESIGNED: GuiCheckBox(), GuiComboBox(), GuiDropdownBox(), GuiToggleGroup() > Use combined text string
+* REDESIGNED: Style system (breaking change)
+* 2.0 (08-Nov-2018) ADDED: Support controls guiLock and custom fonts
+* REVIEWED: GuiComboBox(), GuiListView()...
+* 1.9 (09-Oct-2018) REVIEWED: GuiGrid(), GuiTextBox(), GuiTextBoxMulti(), GuiValueBox()...
+* 1.8 (01-May-2018) Lot of rework and redesign to align with rGuiStyler and rGuiLayout
+* 1.5 (21-Jun-2017) Working in an improved styles system
+* 1.4 (15-Jun-2017) Rewritten all GUI functions (removed useless ones)
+* 1.3 (12-Jun-2017) Complete redesign of style system
+* 1.1 (01-Jun-2017) Complete review of the library
+* 1.0 (07-Jun-2016) Converted to header-only by Ramon Santamaria
+* 0.9 (07-Mar-2016) Reviewed and tested by Albert Martos, Ian Eito, Sergio Martinez and Ramon Santamaria
+* 0.8 (27-Aug-2015) Initial release. Implemented by Kevin Gato, Daniel Nicolás and Ramon Santamaria
+*
+* DEPENDENCIES:
+* raylib 5.6-dev - Inputs reading (keyboard/mouse), shapes drawing, font loading and text drawing
+*
+* STANDALONE MODE:
+* By default raygui depends on raylib mostly for the inputs and the drawing functionality but that dependency can be disabled
+* with the config flag RAYGUI_STANDALONE. In that case is up to the user to provide another backend to cover library needs
+*
+* The following functions should be redefined for a custom backend:
+*
+* - Vector2 GetMousePosition(void);
+* - float GetMouseWheelMove(void);
+* - bool IsMouseButtonDown(int button);
+* - bool IsMouseButtonPressed(int button);
+* - bool IsMouseButtonReleased(int button);
+* - bool IsKeyDown(int key);
+* - bool IsKeyPressed(int key);
+* - int GetCharPressed(void); // -- GuiTextBox(), GuiValueBox()
+*
+* - void DrawRectangle(int x, int y, int width, int height, Color color); // -- GuiDrawRectangle()
+* - void DrawRectangleGradientEx(Rectangle rec, Color col1, Color col2, Color col3, Color col4); // -- GuiColorPicker()
+*
+* - Font GetFontDefault(void); // -- GuiLoadStyleDefault()
+* - Font LoadFontEx(const char *fileName, int fontSize, int *codepoints, int codepointCount); // -- GuiLoadStyle()
+* - Texture2D LoadTextureFromImage(Image image); // -- GuiLoadStyle(), required to load texture from embedded font atlas image
+* - void SetShapesTexture(Texture2D tex, Rectangle rec); // -- GuiLoadStyle(), required to set shapes rec to font white rec (optimization)
+* - char *LoadFileText(const char *fileName); // -- GuiLoadStyle(), required to load charset data
+* - void UnloadFileText(char *text); // -- GuiLoadStyle(), required to unload charset data
+* - const char *GetDirectoryPath(const char *filePath); // -- GuiLoadStyle(), required to find charset/font file from text .rgs
+* - int *LoadCodepoints(const char *text, int *count); // -- GuiLoadStyle(), required to load required font codepoints list
+* - void UnloadCodepoints(int *codepoints); // -- GuiLoadStyle(), required to unload codepoints list
+* - unsigned char *DecompressData(const unsigned char *compData, int compDataSize, int *dataSize); // -- GuiLoadStyle()
+*
+* CONTRIBUTORS:
+* Ramon Santamaria: Supervision, review, redesign, update and maintenance
+* Vlad Adrian: Complete rewrite of GuiTextBox() to support extended features (2019)
+* Sergio Martinez: Review, testing (2015) and redesign of multiple controls (2018)
+* Adria Arranz: Testing and implementation of additional controls (2018)
+* Jordi Jorba: Testing and implementation of additional controls (2018)
+* Albert Martos: Review and testing of the library (2015)
+* Ian Eito: Review and testing of the library (2015)
+* Kevin Gato: Initial implementation of basic components (2014)
+* Daniel Nicolas: Initial implementation of basic components (2014)
+*
+*
+* LICENSE: zlib/libpng
+*
+* Copyright (c) 2014-2026 Ramon Santamaria (@raysan5)
+*
+* This software is provided "as-is", without any express or implied warranty. In no event
+* will the authors be held liable for any damages arising from the use of this software.
+*
+* Permission is granted to anyone to use this software for any purpose, including commercial
+* applications, and to alter it and redistribute it freely, subject to the following restrictions:
+*
+* 1. The origin of this software must not be misrepresented; you must not claim that you
+* wrote the original software. If you use this software in a product, an acknowledgment
+* in the product documentation would be appreciated but is not required.
+*
+* 2. Altered source versions must be plainly marked as such, and must not be misrepresented
+* as being the original software.
+*
+* 3. This notice may not be removed or altered from any source distribution.
+*
+**********************************************************************************************/
+
+#ifndef RAYGUI_H
+#define RAYGUI_H
+
+#define RAYGUI_VERSION_MAJOR 4
+#define RAYGUI_VERSION_MINOR 5
+#define RAYGUI_VERSION_PATCH 0
+#define RAYGUI_VERSION "5.0-dev"
+
+#if !defined(RAYGUI_STANDALONE)
+ #include "raylib.h"
+#endif
+
+// Function specifiers in case library is build/used as a shared library (Windows)
+// NOTE: Microsoft specifiers to tell compiler that symbols are imported/exported from a .dll
+#if defined(_WIN32)
+ #if defined(BUILD_LIBTYPE_SHARED)
+ #define RAYGUIAPI __declspec(dllexport) // Building the library as a Win32 shared library (.dll)
+ #elif defined(USE_LIBTYPE_SHARED)
+ #define RAYGUIAPI __declspec(dllimport) // Using the library as a Win32 shared library (.dll)
+ #endif
+ #define _CRT_SECURE_NO_WARNINGS // Disable unsafe warnings on scanf() functions in MSVC
+#endif
+
+// Function specifiers definition
+#ifndef RAYGUIAPI
+ #define RAYGUIAPI // Functions defined as 'extern' by default (implicit specifiers)
+#endif
+
+//----------------------------------------------------------------------------------
+// Defines and Macros
+//----------------------------------------------------------------------------------
+// Simple log system to avoid printf() calls if required
+// NOTE: Avoiding those calls, also avoids const strings memory usage
+#define RAYGUI_SUPPORT_LOG_INFO
+#if defined(RAYGUI_SUPPORT_LOG_INFO)
+ #define RAYGUI_LOG(...) printf(__VA_ARGS__)
+#else
+ #define RAYGUI_LOG(...)
+#endif
+
+// Macros to define required UI inputs, including mapping to gamepad controls
+// TODO: Define additionally required macros for missing inputs
+#if !defined(GUI_BUTTON_DOWN)
+ #define GUI_BUTTON_DOWN (IsMouseButtonDown(MOUSE_LEFT_BUTTON) || IsGamepadButtonDown(0, GAMEPAD_BUTTON_RIGHT_FACE_DOWN))
+#endif
+#if !defined(GUI_BUTTON_DOWN_ALT)
+ // Mapping to alternative button down pressed
+ #define GUI_BUTTON_DOWN_ALT (IsMouseButtonDown(MOUSE_RIGHT_BUTTON) || IsGamepadButtonDown(0, GAMEPAD_BUTTON_RIGHT_FACE_RIGHT))
+#endif
+#if !defined(GUI_BUTTON_PRESSED)
+ #define GUI_BUTTON_PRESSED (IsMouseButtonPressed(MOUSE_LEFT_BUTTON) || IsGamepadButtonPressed(0, GAMEPAD_BUTTON_RIGHT_FACE_DOWN))
+#endif
+// TODO: WARNING: GuiTabBar() still requires IsMouseButtonPressed(MOUSE_MIDDLE_BUTTON)
+#if !defined(GUI_BUTTON_RELEASED)
+ #define GUI_BUTTON_RELEASED (IsMouseButtonReleased(MOUSE_LEFT_BUTTON) || IsGamepadButtonReleased(0, GAMEPAD_BUTTON_RIGHT_FACE_DOWN))
+#endif
+#if !defined(GUI_SCROLL_DELTA)
+ // Mapping to scroll delta changes
+ // TODO: Review inconsistencies between platforms
+ #if defined(PLATFORM_WEB)
+ // NOTE: Gamepad axis triggers not detected on web platform
+ #define GUI_SCROLL_DELTA ((float)IsGamepadButtonDown(0, GAMEPAD_BUTTON_RIGHT_TRIGGER_2) - (float)IsGamepadButtonDown(0, GAMEPAD_BUTTON_LEFT_TRIGGER_2))
+ #else
+ #define GUI_SCROLL_DELTA (GetMouseWheelMove() + (GetGamepadAxisMovement(0, GAMEPAD_AXIS_RIGHT_TRIGGER) + 1) - (GetGamepadAxisMovement(0, GAMEPAD_AXIS_LEFT_TRIGGER) + 1))
+ #endif
+#endif
+#if !defined(GUI_POINTER_POSITION)
+ #define GUI_POINTER_POSITION GetMousePosition()
+#endif
+#if !defined(GUI_KEY_DOWN)
+ #define GUI_KEY_DOWN(key) IsKeyDown(key)
+#endif
+#if !defined(GUI_KEY_PRESSED)
+ #define GUI_KEY_PRESSED(key) IsKeyPressed(key)
+#endif
+#if !defined(GUI_INPUT_KEY)
+ #define GUI_INPUT_KEY GetCharPressed()
+#endif
+
+//----------------------------------------------------------------------------------
+// Types and Structures Definition
+// NOTE: Some types are required for RAYGUI_STANDALONE usage
+//----------------------------------------------------------------------------------
+#if defined(RAYGUI_STANDALONE)
+ #ifndef __cplusplus
+ // Boolean type
+ #ifndef true
+ typedef enum { false, true } bool;
+ #endif
+ #endif
+
+ // Vector2 type
+ typedef struct Vector2 {
+ float x;
+ float y;
+ } Vector2;
+
+ // Vector3 type // -- ConvertHSVtoRGB(), ConvertRGBtoHSV()
+ typedef struct Vector3 {
+ float x;
+ float y;
+ float z;
+ } Vector3;
+
+ // Color type, RGBA (32bit)
+ typedef struct Color {
+ unsigned char r;
+ unsigned char g;
+ unsigned char b;
+ unsigned char a;
+ } Color;
+
+ // Rectangle type
+ typedef struct Rectangle {
+ float x;
+ float y;
+ float width;
+ float height;
+ } Rectangle;
+
+ // TODO: Texture2D type is very coupled to raylib, required by Font type
+ // It should be redesigned to be provided by user
+ typedef struct Texture {
+ unsigned int id; // OpenGL texture id
+ int width; // Texture base width
+ int height; // Texture base height
+ int mipmaps; // Mipmap levels, 1 by default
+ int format; // Data format (PixelFormat type)
+ } Texture;
+
+ // Texture2D, same as Texture
+ typedef Texture Texture2D;
+
+ // Image, pixel data stored in CPU memory (RAM)
+ typedef struct Image {
+ void *data; // Image raw data
+ int width; // Image base width
+ int height; // Image base height
+ int mipmaps; // Mipmap levels, 1 by default
+ int format; // Data format (PixelFormat type)
+ } Image;
+
+ // GlyphInfo, font characters glyphs info
+ typedef struct GlyphInfo {
+ int value; // Character value (Unicode)
+ int offsetX; // Character offset X when drawing
+ int offsetY; // Character offset Y when drawing
+ int advanceX; // Character advance position X
+ Image image; // Character image data
+ } GlyphInfo;
+
+ // TODO: Font type is very coupled to raylib, mostly required by GuiLoadStyle()
+ // It should be redesigned to be provided by user
+ typedef struct Font {
+ int baseSize; // Base size (default chars height)
+ int glyphCount; // Number of glyph characters
+ int glyphPadding; // Padding around the glyph characters
+ Texture2D texture; // Texture atlas containing the glyphs
+ Rectangle *recs; // Rectangles in texture for the glyphs
+ GlyphInfo *glyphs; // Glyphs info data
+ } Font;
+#endif
+
+// Style property
+// NOTE: Used when exporting style as code for convenience
+typedef struct GuiStyleProp {
+ unsigned short controlId; // Control identifier
+ unsigned short propertyId; // Property identifier
+ int propertyValue; // Property value
+} GuiStyleProp;
+
+/*
+// Controls text style -NOT USED-
+// NOTE: Text style is defined by control
+typedef struct GuiTextStyle {
+ unsigned int size;
+ int charSpacing;
+ int lineSpacing;
+ int alignmentH;
+ int alignmentV;
+ int padding;
+} GuiTextStyle;
+*/
+
+// Gui control state
+typedef enum {
+ STATE_NORMAL = 0,
+ STATE_FOCUSED,
+ STATE_PRESSED,
+ STATE_DISABLED
+} GuiState;
+
+// Gui control text alignment
+typedef enum {
+ TEXT_ALIGN_LEFT = 0,
+ TEXT_ALIGN_CENTER,
+ TEXT_ALIGN_RIGHT
+} GuiTextAlignment;
+
+// Gui control text alignment vertical
+// NOTE: Text vertical position inside the text bounds
+typedef enum {
+ TEXT_ALIGN_TOP = 0,
+ TEXT_ALIGN_MIDDLE,
+ TEXT_ALIGN_BOTTOM
+} GuiTextAlignmentVertical;
+
+// Gui control text wrap mode
+// NOTE: Useful for multiline text
+typedef enum {
+ TEXT_WRAP_NONE = 0,
+ TEXT_WRAP_CHAR,
+ TEXT_WRAP_WORD
+} GuiTextWrapMode;
+
+// Gui controls
+typedef enum {
+ // Default -> populates to all controls when set
+ DEFAULT = 0,
+
+ // Basic controls
+ LABEL, // Used also for: LABELBUTTON
+ BUTTON,
+ TOGGLE, // Used also for: TOGGLEGROUP
+ SLIDER, // Used also for: SLIDERBAR, TOGGLESLIDER
+ PROGRESSBAR,
+ CHECKBOX,
+ COMBOBOX,
+ DROPDOWNBOX,
+ TEXTBOX, // Used also for: TEXTBOXMULTI
+ VALUEBOX,
+ CONTROL11,
+ LISTVIEW,
+ COLORPICKER,
+ SCROLLBAR,
+ STATUSBAR
+} GuiControl;
+
+// Gui base properties for every control
+// NOTE: RAYGUI_MAX_PROPS_BASE properties (by default 16 properties)
+typedef enum {
+ BORDER_COLOR_NORMAL = 0, // Control border color in STATE_NORMAL
+ BASE_COLOR_NORMAL, // Control base color in STATE_NORMAL
+ TEXT_COLOR_NORMAL, // Control text color in STATE_NORMAL
+ BORDER_COLOR_FOCUSED, // Control border color in STATE_FOCUSED
+ BASE_COLOR_FOCUSED, // Control base color in STATE_FOCUSED
+ TEXT_COLOR_FOCUSED, // Control text color in STATE_FOCUSED
+ BORDER_COLOR_PRESSED, // Control border color in STATE_PRESSED
+ BASE_COLOR_PRESSED, // Control base color in STATE_PRESSED
+ TEXT_COLOR_PRESSED, // Control text color in STATE_PRESSED
+ BORDER_COLOR_DISABLED, // Control border color in STATE_DISABLED
+ BASE_COLOR_DISABLED, // Control base color in STATE_DISABLED
+ TEXT_COLOR_DISABLED, // Control text color in STATE_DISABLED
+ BORDER_WIDTH = 12, // Control border size, 0 for no border
+ //TEXT_SIZE, // Control text size (glyphs max height) -> GLOBAL for all controls
+ //TEXT_SPACING, // Control text spacing between glyphs -> GLOBAL for all controls
+ //TEXT_LINE_SPACING, // Control text spacing between lines -> GLOBAL for all controls
+ TEXT_PADDING = 13, // Control text padding, not considering border
+ TEXT_ALIGNMENT = 14, // Control text horizontal alignment inside control text bound (after border and padding)
+ //TEXT_WRAP_MODE // Control text wrap-mode inside text bounds -> GLOBAL for all controls
+} GuiControlProperty;
+
+// TODO: Which text styling properties should be global or per-control?
+// At this moment TEXT_PADDING and TEXT_ALIGNMENT is configured and saved per control while
+// TEXT_SIZE, TEXT_SPACING, TEXT_LINE_SPACING, TEXT_ALIGNMENT_VERTICAL, TEXT_WRAP_MODE are global and
+// should be configured by user as needed while defining the UI layout
+
+// Gui extended properties depend on control
+// NOTE: RAYGUI_MAX_PROPS_EXTENDED properties (by default, max 8 properties)
+//----------------------------------------------------------------------------------
+// DEFAULT extended properties
+// NOTE: Those properties are common to all controls or global
+// WARNING: Only 8 slots vailable for those properties by default
+typedef enum {
+ TEXT_SIZE = 16, // Text size (glyphs max height)
+ TEXT_SPACING, // Text spacing between glyphs
+ LINE_COLOR, // Line control color
+ BACKGROUND_COLOR, // Background color
+ TEXT_LINE_SPACING, // Text spacing between lines
+ TEXT_ALIGNMENT_VERTICAL, // Text vertical alignment inside text bounds (after border and padding)
+ TEXT_WRAP_MODE // Text wrap-mode inside text bounds
+ //TEXT_DECORATION // Text decoration: 0-None, 1-Underline, 2-Line-through, 3-Overline
+ //TEXT_DECORATION_THICK // Text decoration line thickness
+} GuiDefaultProperty;
+
+// Other possible text properties:
+// TEXT_WEIGHT // Normal, Italic, Bold -> Requires specific font change
+// TEXT_INDENT // Text indentation -> Now using TEXT_PADDING...
+
+// Label
+//typedef enum { } GuiLabelProperty;
+
+// Button/Spinner
+//typedef enum { } GuiButtonProperty;
+
+// Toggle/ToggleGroup
+typedef enum {
+ GROUP_PADDING = 16, // ToggleGroup separation between toggles
+} GuiToggleProperty;
+
+// Slider/SliderBar
+typedef enum {
+ SLIDER_WIDTH = 16, // Slider size of internal bar
+ SLIDER_PADDING // Slider/SliderBar internal bar padding
+} GuiSliderProperty;
+
+// ProgressBar
+typedef enum {
+ PROGRESS_PADDING = 16, // ProgressBar internal padding
+} GuiProgressBarProperty;
+
+// ScrollBar
+typedef enum {
+ ARROWS_SIZE = 16, // ScrollBar arrows size
+ ARROWS_VISIBLE, // ScrollBar arrows visible
+ SCROLL_SLIDER_PADDING, // ScrollBar slider internal padding
+ SCROLL_SLIDER_SIZE, // ScrollBar slider size
+ SCROLL_PADDING, // ScrollBar scroll padding from arrows
+ SCROLL_SPEED, // ScrollBar scrolling speed
+} GuiScrollBarProperty;
+
+// CheckBox
+typedef enum {
+ CHECK_PADDING = 16 // CheckBox internal check padding
+} GuiCheckBoxProperty;
+
+// ComboBox
+typedef enum {
+ COMBO_BUTTON_WIDTH = 16, // ComboBox right button width
+ COMBO_BUTTON_SPACING // ComboBox button separation
+} GuiComboBoxProperty;
+
+// DropdownBox
+typedef enum {
+ ARROW_PADDING = 16, // DropdownBox arrow separation from border and items
+ DROPDOWN_ITEMS_SPACING, // DropdownBox items separation
+ DROPDOWN_ARROW_HIDDEN, // DropdownBox arrow hidden
+ DROPDOWN_ROLL_UP // DropdownBox roll up flag (default rolls down)
+} GuiDropdownBoxProperty;
+
+// TextBox/TextBoxMulti/ValueBox/Spinner
+typedef enum {
+ TEXT_READONLY = 16, // TextBox in read-only mode: 0-text editable, 1-text no-editable
+} GuiTextBoxProperty;
+
+// ValueBox/Spinner
+typedef enum {
+ SPINNER_BUTTON_WIDTH = 16, // Spinner left/right buttons width
+ SPINNER_BUTTON_SPACING, // Spinner buttons separation
+} GuiValueBoxProperty;
+
+// Control11
+//typedef enum { } GuiControl11Property;
+
+// ListView
+typedef enum {
+ LIST_ITEMS_HEIGHT = 16, // ListView items height
+ LIST_ITEMS_SPACING, // ListView items separation
+ SCROLLBAR_WIDTH, // ListView scrollbar size (usually width)
+ SCROLLBAR_SIDE, // ListView scrollbar side (0-SCROLLBAR_LEFT_SIDE, 1-SCROLLBAR_RIGHT_SIDE)
+ LIST_ITEMS_BORDER_NORMAL, // ListView items border enabled in normal state
+ LIST_ITEMS_BORDER_WIDTH // ListView items border width
+} GuiListViewProperty;
+
+// ColorPicker
+typedef enum {
+ COLOR_SELECTOR_SIZE = 16,
+ HUEBAR_WIDTH, // ColorPicker right hue bar width
+ HUEBAR_PADDING, // ColorPicker right hue bar separation from panel
+ HUEBAR_SELECTOR_HEIGHT, // ColorPicker right hue bar selector height
+ HUEBAR_SELECTOR_OVERFLOW // ColorPicker right hue bar selector overflow
+} GuiColorPickerProperty;
+
+#define SCROLLBAR_LEFT_SIDE 0
+#define SCROLLBAR_RIGHT_SIDE 1
+
+//----------------------------------------------------------------------------------
+// Global Variables Definition
+//----------------------------------------------------------------------------------
+// ...
+
+//----------------------------------------------------------------------------------
+// Module Functions Declaration
+//----------------------------------------------------------------------------------
+
+#if defined(__cplusplus)
+extern "C" { // Prevents name mangling of functions
+#endif
+
+// Global gui state control functions
+RAYGUIAPI void GuiEnable(void); // Enable gui controls (global state)
+RAYGUIAPI void GuiDisable(void); // Disable gui controls (global state)
+RAYGUIAPI void GuiLock(void); // Lock gui controls (global state)
+RAYGUIAPI void GuiUnlock(void); // Unlock gui controls (global state)
+RAYGUIAPI bool GuiIsLocked(void); // Check if gui is locked (global state)
+RAYGUIAPI void GuiSetAlpha(float alpha); // Set gui controls alpha (global state), alpha goes from 0.0f to 1.0f
+RAYGUIAPI void GuiSetState(int state); // Set gui state (global state)
+RAYGUIAPI int GuiGetState(void); // Get gui state (global state)
+
+// Font set/get functions
+RAYGUIAPI void GuiSetFont(Font font); // Set gui custom font (global state)
+RAYGUIAPI Font GuiGetFont(void); // Get gui custom font (global state)
+
+// Style set/get functions
+RAYGUIAPI void GuiSetStyle(int control, int property, int value); // Set one style property
+RAYGUIAPI int GuiGetStyle(int control, int property); // Get one style property
+
+// Styles loading functions
+RAYGUIAPI void GuiLoadStyle(const char *fileName); // Load style file over global style variable (.rgs)
+RAYGUIAPI void GuiLoadStyleDefault(void); // Load style default over global style
+
+// Tooltips management functions
+RAYGUIAPI void GuiEnableTooltip(void); // Enable gui tooltips (global state)
+RAYGUIAPI void GuiDisableTooltip(void); // Disable gui tooltips (global state)
+RAYGUIAPI void GuiSetTooltip(const char *tooltip); // Set tooltip string
+
+// Icons functionality
+RAYGUIAPI const char *GuiIconText(int iconId, const char *text); // Get text with icon id prepended (if supported)
+#if !defined(RAYGUI_NO_ICONS)
+RAYGUIAPI void GuiSetIconScale(int scale); // Set default icon drawing size
+RAYGUIAPI unsigned int *GuiGetIcons(void); // Get raygui icons data pointer
+RAYGUIAPI char **GuiLoadIcons(const char *fileName, bool loadIconsName); // Load raygui icons file (.rgi) into internal icons data
+RAYGUIAPI void GuiDrawIcon(int iconId, int posX, int posY, int pixelSize, Color color); // Draw icon using pixel size at specified position
+#endif
+
+// Utility functions
+RAYGUIAPI int GuiGetTextWidth(const char *text); // Get text width considering gui style and icon size (if required)
+
+// Controls
+//----------------------------------------------------------------------------------------------------------
+// Container/separator controls, useful for controls organization
+RAYGUIAPI int GuiWindowBox(Rectangle bounds, const char *title); // Window Box control, shows a window that can be closed
+RAYGUIAPI int GuiGroupBox(Rectangle bounds, const char *text); // Group Box control with text name
+RAYGUIAPI int GuiLine(Rectangle bounds, const char *text); // Line separator control, could contain text
+RAYGUIAPI int GuiPanel(Rectangle bounds, const char *text); // Panel control, useful to group controls
+RAYGUIAPI int GuiTabBar(Rectangle bounds, const char **text, int count, int *active); // Tab Bar control, returns TAB to be closed or -1
+RAYGUIAPI int GuiScrollPanel(Rectangle bounds, const char *text, Rectangle content, Vector2 *scroll, Rectangle *view); // Scroll Panel control
+
+// Basic controls set
+RAYGUIAPI int GuiLabel(Rectangle bounds, const char *text); // Label control
+RAYGUIAPI int GuiButton(Rectangle bounds, const char *text); // Button control, returns true when clicked
+RAYGUIAPI int GuiLabelButton(Rectangle bounds, const char *text); // Label button control, returns true when clicked
+RAYGUIAPI int GuiToggle(Rectangle bounds, const char *text, bool *active); // Toggle Button control
+RAYGUIAPI int GuiToggleGroup(Rectangle bounds, const char *text, int *active); // Toggle Group control
+RAYGUIAPI int GuiToggleSlider(Rectangle bounds, const char *text, int *active); // Toggle Slider control
+RAYGUIAPI int GuiCheckBox(Rectangle bounds, const char *text, bool *checked); // Check Box control, returns true when active
+RAYGUIAPI int GuiComboBox(Rectangle bounds, const char *text, int *active); // Combo Box control
+
+RAYGUIAPI int GuiDropdownBox(Rectangle bounds, const char *text, int *active, bool editMode); // Dropdown Box control
+RAYGUIAPI int GuiSpinner(Rectangle bounds, const char *text, int *value, int minValue, int maxValue, bool editMode); // Spinner control
+RAYGUIAPI int GuiValueBox(Rectangle bounds, const char *text, int *value, int minValue, int maxValue, bool editMode); // Value Box control, updates input text with numbers
+RAYGUIAPI int GuiValueBoxFloat(Rectangle bounds, const char *text, char *textValue, float *value, bool editMode); // Value box control for float values
+RAYGUIAPI int GuiTextBox(Rectangle bounds, char *text, int textSize, bool editMode); // Text Box control, updates input text
+
+RAYGUIAPI int GuiSlider(Rectangle bounds, const char *textLeft, const char *textRight, float *value, float minValue, float maxValue); // Slider control
+RAYGUIAPI int GuiSliderBar(Rectangle bounds, const char *textLeft, const char *textRight, float *value, float minValue, float maxValue); // Slider Bar control
+RAYGUIAPI int GuiProgressBar(Rectangle bounds, const char *textLeft, const char *textRight, float *value, float minValue, float maxValue); // Progress Bar control
+RAYGUIAPI int GuiStatusBar(Rectangle bounds, const char *text); // Status Bar control, shows info text
+RAYGUIAPI int GuiDummyRec(Rectangle bounds, const char *text); // Dummy control for placeholders
+RAYGUIAPI int GuiGrid(Rectangle bounds, const char *text, float spacing, int subdivs, Vector2 *mouseCell); // Grid control
+
+// Advance controls set
+RAYGUIAPI int GuiListView(Rectangle bounds, const char *text, int *scrollIndex, int *active); // List View control
+RAYGUIAPI int GuiListViewEx(Rectangle bounds, const char **text, int count, int *scrollIndex, int *active, int *focus); // List View with extended parameters
+RAYGUIAPI int GuiMessageBox(Rectangle bounds, const char *title, const char *message, const char *buttons); // Message Box control, displays a message
+RAYGUIAPI int GuiTextInputBox(Rectangle bounds, const char *title, const char *message, const char *buttons, char *text, int textMaxSize, bool *secretViewActive); // Text Input Box control, ask for text, supports secret
+RAYGUIAPI int GuiColorPicker(Rectangle bounds, const char *text, Color *color); // Color Picker control (multiple color controls)
+RAYGUIAPI int GuiColorPanel(Rectangle bounds, const char *text, Color *color); // Color Panel control
+RAYGUIAPI int GuiColorBarAlpha(Rectangle bounds, const char *text, float *alpha); // Color Bar Alpha control
+RAYGUIAPI int GuiColorBarHue(Rectangle bounds, const char *text, float *value); // Color Bar Hue control
+RAYGUIAPI int GuiColorPickerHSV(Rectangle bounds, const char *text, Vector3 *colorHsv); // Color Picker control that avoids conversion to RGB on each call (multiple color controls)
+RAYGUIAPI int GuiColorPanelHSV(Rectangle bounds, const char *text, Vector3 *colorHsv); // Color Panel control that updates Hue-Saturation-Value color value, used by GuiColorPickerHSV()
+//----------------------------------------------------------------------------------------------------------
+
+#if !defined(RAYGUI_NO_ICONS)
+
+#if !defined(RAYGUI_CUSTOM_ICONS)
+//----------------------------------------------------------------------------------
+// Icons enumeration
+//----------------------------------------------------------------------------------
+typedef enum {
+ ICON_NONE = 0,
+ ICON_FOLDER_FILE_OPEN = 1,
+ ICON_FILE_SAVE_CLASSIC = 2,
+ ICON_FOLDER_OPEN = 3,
+ ICON_FOLDER_SAVE = 4,
+ ICON_FILE_OPEN = 5,
+ ICON_FILE_SAVE = 6,
+ ICON_FILE_EXPORT = 7,
+ ICON_FILE_ADD = 8,
+ ICON_FILE_DELETE = 9,
+ ICON_FILETYPE_TEXT = 10,
+ ICON_FILETYPE_AUDIO = 11,
+ ICON_FILETYPE_IMAGE = 12,
+ ICON_FILETYPE_PLAY = 13,
+ ICON_FILETYPE_VIDEO = 14,
+ ICON_FILETYPE_INFO = 15,
+ ICON_FILE_COPY = 16,
+ ICON_FILE_CUT = 17,
+ ICON_FILE_PASTE = 18,
+ ICON_CURSOR_HAND = 19,
+ ICON_CURSOR_POINTER = 20,
+ ICON_CURSOR_CLASSIC = 21,
+ ICON_PENCIL = 22,
+ ICON_PENCIL_BIG = 23,
+ ICON_BRUSH_CLASSIC = 24,
+ ICON_BRUSH_PAINTER = 25,
+ ICON_WATER_DROP = 26,
+ ICON_COLOR_PICKER = 27,
+ ICON_RUBBER = 28,
+ ICON_COLOR_BUCKET = 29,
+ ICON_TEXT_T = 30,
+ ICON_TEXT_A = 31,
+ ICON_SCALE = 32,
+ ICON_RESIZE = 33,
+ ICON_FILTER_POINT = 34,
+ ICON_FILTER_BILINEAR = 35,
+ ICON_CROP = 36,
+ ICON_CROP_ALPHA = 37,
+ ICON_SQUARE_TOGGLE = 38,
+ ICON_SYMMETRY = 39,
+ ICON_SYMMETRY_HORIZONTAL = 40,
+ ICON_SYMMETRY_VERTICAL = 41,
+ ICON_LENS = 42,
+ ICON_LENS_BIG = 43,
+ ICON_EYE_ON = 44,
+ ICON_EYE_OFF = 45,
+ ICON_FILTER_TOP = 46,
+ ICON_FILTER = 47,
+ ICON_TARGET_POINT = 48,
+ ICON_TARGET_SMALL = 49,
+ ICON_TARGET_BIG = 50,
+ ICON_TARGET_MOVE = 51,
+ ICON_CURSOR_MOVE = 52,
+ ICON_CURSOR_SCALE = 53,
+ ICON_CURSOR_SCALE_RIGHT = 54,
+ ICON_CURSOR_SCALE_LEFT = 55,
+ ICON_UNDO = 56,
+ ICON_REDO = 57,
+ ICON_REREDO = 58,
+ ICON_MUTATE = 59,
+ ICON_ROTATE = 60,
+ ICON_REPEAT = 61,
+ ICON_SHUFFLE = 62,
+ ICON_EMPTYBOX = 63,
+ ICON_TARGET = 64,
+ ICON_TARGET_SMALL_FILL = 65,
+ ICON_TARGET_BIG_FILL = 66,
+ ICON_TARGET_MOVE_FILL = 67,
+ ICON_CURSOR_MOVE_FILL = 68,
+ ICON_CURSOR_SCALE_FILL = 69,
+ ICON_CURSOR_SCALE_RIGHT_FILL = 70,
+ ICON_CURSOR_SCALE_LEFT_FILL = 71,
+ ICON_UNDO_FILL = 72,
+ ICON_REDO_FILL = 73,
+ ICON_REREDO_FILL = 74,
+ ICON_MUTATE_FILL = 75,
+ ICON_ROTATE_FILL = 76,
+ ICON_REPEAT_FILL = 77,
+ ICON_SHUFFLE_FILL = 78,
+ ICON_EMPTYBOX_SMALL = 79,
+ ICON_BOX = 80,
+ ICON_BOX_TOP = 81,
+ ICON_BOX_TOP_RIGHT = 82,
+ ICON_BOX_RIGHT = 83,
+ ICON_BOX_BOTTOM_RIGHT = 84,
+ ICON_BOX_BOTTOM = 85,
+ ICON_BOX_BOTTOM_LEFT = 86,
+ ICON_BOX_LEFT = 87,
+ ICON_BOX_TOP_LEFT = 88,
+ ICON_BOX_CENTER = 89,
+ ICON_BOX_CIRCLE_MASK = 90,
+ ICON_POT = 91,
+ ICON_ALPHA_MULTIPLY = 92,
+ ICON_ALPHA_CLEAR = 93,
+ ICON_DITHERING = 94,
+ ICON_MIPMAPS = 95,
+ ICON_BOX_GRID = 96,
+ ICON_GRID = 97,
+ ICON_BOX_CORNERS_SMALL = 98,
+ ICON_BOX_CORNERS_BIG = 99,
+ ICON_FOUR_BOXES = 100,
+ ICON_GRID_FILL = 101,
+ ICON_BOX_MULTISIZE = 102,
+ ICON_ZOOM_SMALL = 103,
+ ICON_ZOOM_MEDIUM = 104,
+ ICON_ZOOM_BIG = 105,
+ ICON_ZOOM_ALL = 106,
+ ICON_ZOOM_CENTER = 107,
+ ICON_BOX_DOTS_SMALL = 108,
+ ICON_BOX_DOTS_BIG = 109,
+ ICON_BOX_CONCENTRIC = 110,
+ ICON_BOX_GRID_BIG = 111,
+ ICON_OK_TICK = 112,
+ ICON_CROSS = 113,
+ ICON_ARROW_LEFT = 114,
+ ICON_ARROW_RIGHT = 115,
+ ICON_ARROW_DOWN = 116,
+ ICON_ARROW_UP = 117,
+ ICON_ARROW_LEFT_FILL = 118,
+ ICON_ARROW_RIGHT_FILL = 119,
+ ICON_ARROW_DOWN_FILL = 120,
+ ICON_ARROW_UP_FILL = 121,
+ ICON_AUDIO = 122,
+ ICON_FX = 123,
+ ICON_WAVE = 124,
+ ICON_WAVE_SINUS = 125,
+ ICON_WAVE_SQUARE = 126,
+ ICON_WAVE_TRIANGULAR = 127,
+ ICON_CROSS_SMALL = 128,
+ ICON_PLAYER_PREVIOUS = 129,
+ ICON_PLAYER_PLAY_BACK = 130,
+ ICON_PLAYER_PLAY = 131,
+ ICON_PLAYER_PAUSE = 132,
+ ICON_PLAYER_STOP = 133,
+ ICON_PLAYER_NEXT = 134,
+ ICON_PLAYER_RECORD = 135,
+ ICON_MAGNET = 136,
+ ICON_LOCK_CLOSE = 137,
+ ICON_LOCK_OPEN = 138,
+ ICON_CLOCK = 139,
+ ICON_TOOLS = 140,
+ ICON_GEAR = 141,
+ ICON_GEAR_BIG = 142,
+ ICON_BIN = 143,
+ ICON_HAND_POINTER = 144,
+ ICON_LASER = 145,
+ ICON_COIN = 146,
+ ICON_EXPLOSION = 147,
+ ICON_1UP = 148,
+ ICON_PLAYER = 149,
+ ICON_PLAYER_JUMP = 150,
+ ICON_KEY = 151,
+ ICON_DEMON = 152,
+ ICON_TEXT_POPUP = 153,
+ ICON_GEAR_EX = 154,
+ ICON_CRACK = 155,
+ ICON_CRACK_POINTS = 156,
+ ICON_STAR = 157,
+ ICON_DOOR = 158,
+ ICON_EXIT = 159,
+ ICON_MODE_2D = 160,
+ ICON_MODE_3D = 161,
+ ICON_CUBE = 162,
+ ICON_CUBE_FACE_TOP = 163,
+ ICON_CUBE_FACE_LEFT = 164,
+ ICON_CUBE_FACE_FRONT = 165,
+ ICON_CUBE_FACE_BOTTOM = 166,
+ ICON_CUBE_FACE_RIGHT = 167,
+ ICON_CUBE_FACE_BACK = 168,
+ ICON_CAMERA = 169,
+ ICON_SPECIAL = 170,
+ ICON_LINK_NET = 171,
+ ICON_LINK_BOXES = 172,
+ ICON_LINK_MULTI = 173,
+ ICON_LINK = 174,
+ ICON_LINK_BROKE = 175,
+ ICON_TEXT_NOTES = 176,
+ ICON_NOTEBOOK = 177,
+ ICON_SUITCASE = 178,
+ ICON_SUITCASE_ZIP = 179,
+ ICON_MAILBOX = 180,
+ ICON_MONITOR = 181,
+ ICON_PRINTER = 182,
+ ICON_PHOTO_CAMERA = 183,
+ ICON_PHOTO_CAMERA_FLASH = 184,
+ ICON_HOUSE = 185,
+ ICON_HEART = 186,
+ ICON_CORNER = 187,
+ ICON_VERTICAL_BARS = 188,
+ ICON_VERTICAL_BARS_FILL = 189,
+ ICON_LIFE_BARS = 190,
+ ICON_INFO = 191,
+ ICON_CROSSLINE = 192,
+ ICON_HELP = 193,
+ ICON_FILETYPE_ALPHA = 194,
+ ICON_FILETYPE_HOME = 195,
+ ICON_LAYERS_VISIBLE = 196,
+ ICON_LAYERS = 197,
+ ICON_WINDOW = 198,
+ ICON_HIDPI = 199,
+ ICON_FILETYPE_BINARY = 200,
+ ICON_HEX = 201,
+ ICON_SHIELD = 202,
+ ICON_FILE_NEW = 203,
+ ICON_FOLDER_ADD = 204,
+ ICON_ALARM = 205,
+ ICON_CPU = 206,
+ ICON_ROM = 207,
+ ICON_STEP_OVER = 208,
+ ICON_STEP_INTO = 209,
+ ICON_STEP_OUT = 210,
+ ICON_RESTART = 211,
+ ICON_BREAKPOINT_ON = 212,
+ ICON_BREAKPOINT_OFF = 213,
+ ICON_BURGER_MENU = 214,
+ ICON_CASE_SENSITIVE = 215,
+ ICON_REG_EXP = 216,
+ ICON_FOLDER = 217,
+ ICON_FILE = 218,
+ ICON_SAND_TIMER = 219,
+ ICON_WARNING = 220,
+ ICON_HELP_BOX = 221,
+ ICON_INFO_BOX = 222,
+ ICON_PRIORITY = 223,
+ ICON_LAYERS_ISO = 224,
+ ICON_LAYERS2 = 225,
+ ICON_MLAYERS = 226,
+ ICON_MAPS = 227,
+ ICON_HOT = 228,
+ ICON_LABEL = 229,
+ ICON_NAME_ID = 230,
+ ICON_SLICING = 231,
+ ICON_MANUAL_CONTROL = 232,
+ ICON_COLLISION = 233,
+ ICON_CIRCLE_ADD = 234,
+ ICON_CIRCLE_ADD_FILL = 235,
+ ICON_CIRCLE_WARNING = 236,
+ ICON_CIRCLE_WARNING_FILL = 237,
+ ICON_BOX_MORE = 238,
+ ICON_BOX_MORE_FILL = 239,
+ ICON_BOX_MINUS = 240,
+ ICON_BOX_MINUS_FILL = 241,
+ ICON_UNION = 242,
+ ICON_INTERSECTION = 243,
+ ICON_DIFFERENCE = 244,
+ ICON_SPHERE = 245,
+ ICON_CYLINDER = 246,
+ ICON_CONE = 247,
+ ICON_ELLIPSOID = 248,
+ ICON_CAPSULE = 249,
+ ICON_250 = 250,
+ ICON_251 = 251,
+ ICON_252 = 252,
+ ICON_253 = 253,
+ ICON_254 = 254,
+ ICON_255 = 255
+} GuiIconName;
+#endif
+
+#endif
+
+#if defined(__cplusplus)
+} // Prevents name mangling of functions
+#endif
+
+#endif // RAYGUI_H
+
+/***********************************************************************************
+*
+* RAYGUI IMPLEMENTATION
+*
+************************************************************************************/
+
+#if defined(RAYGUI_IMPLEMENTATION)
+
+#include // required for: isspace() [GuiTextBox()]
+#include // Required for: FILE, fopen(), fclose(), fprintf(), feof(), fscanf(), snprintf(), vsprintf() [GuiLoadStyle(), GuiLoadIcons()]
+#include // Required for: strlen() [GuiTextBox(), GuiValueBox()], memset(), memcpy()
+#include // Required for: va_list, va_start(), vfprintf(), va_end() [TextFormat()]
+#include // Required for: roundf() [GuiColorPicker()]
+
+// Allow custom memory allocators
+#if defined(RAYGUI_MALLOC) || defined(RAYGUI_CALLOC) || defined(RAYGUI_FREE)
+ #if !defined(RAYGUI_MALLOC) || !defined(RAYGUI_CALLOC) || !defined(RAYGUI_FREE)
+ #error "RAYGUI: if RAYGUI_MALLOC, RAYGUI_CALLOC, or RAYGUI_FREE is customized, all three must be customized"
+ #endif
+#else
+ #include // Required for: malloc(), calloc(), free() [GuiLoadStyle(), GuiLoadIcons()]
+
+ #define RAYGUI_MALLOC(sz) malloc(sz)
+ #define RAYGUI_CALLOC(n,sz) calloc(n,sz)
+ #define RAYGUI_FREE(p) free(p)
+#endif
+
+#ifdef __cplusplus
+ #define RAYGUI_CLITERAL(name) name
+#else
+ #define RAYGUI_CLITERAL(name) (name)
+#endif
+
+// Check if two rectangles are equal, used to validate a slider bounds as an id
+#ifndef CHECK_BOUNDS_ID
+ #define CHECK_BOUNDS_ID(src, dst) (((int)src.x == (int)dst.x) && ((int)src.y == (int)dst.y) && ((int)src.width == (int)dst.width) && ((int)src.height == (int)dst.height))
+#endif
+
+#if !defined(RAYGUI_NO_ICONS) && !defined(RAYGUI_CUSTOM_ICONS)
+
+// Embedded icons, no external file provided
+#define RAYGUI_ICON_SIZE 16 // Size of icons in pixels (squared)
+#define RAYGUI_ICON_MAX_ICONS 256 // Maximum number of icons
+#define RAYGUI_ICON_MAX_NAME_LENGTH 32 // Maximum length of icon name id
+
+// Icons data is defined by bit array (every bit represents one pixel)
+// Those arrays are stored as unsigned int data arrays, so,
+// every array element defines 32 pixels (bits) of information
+// One icon is defined by 8 int, (8 int*32 bit = 256 bit = 16*16 pixels)
+// NOTE: Number of elemens depend on RAYGUI_ICON_SIZE (by default 16x16 pixels)
+#define RAYGUI_ICON_DATA_ELEMENTS (RAYGUI_ICON_SIZE*RAYGUI_ICON_SIZE/32)
+
+//----------------------------------------------------------------------------------
+// Icons data for all gui possible icons (allocated on data segment by default)
+//
+// NOTE 1: Every icon is codified in binary form, using 1 bit per pixel, so,
+// every 16x16 icon requires 8 integers (16*16/32) to be stored
+//
+// NOTE 2: A different icon set could be loaded over this array using GuiLoadIcons(),
+// but loaded icons set must be same RAYGUI_ICON_SIZE and no more than RAYGUI_ICON_MAX_ICONS
+//
+// guiIcons size is by default: 256*(16*16/32) = 2048*4 = 8192 bytes = 8 KB
+//----------------------------------------------------------------------------------
+static unsigned int guiIcons[RAYGUI_ICON_MAX_ICONS*RAYGUI_ICON_DATA_ELEMENTS] = {
+ 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, // ICON_NONE
+ 0x3ff80000, 0x2f082008, 0x2042207e, 0x40027fc2, 0x40024002, 0x40024002, 0x40024002, 0x00007ffe, // ICON_FOLDER_FILE_OPEN
+ 0x3ffe0000, 0x44226422, 0x400247e2, 0x5ffa4002, 0x57ea500a, 0x500a500a, 0x40025ffa, 0x00007ffe, // ICON_FILE_SAVE_CLASSIC
+ 0x00000000, 0x0042007e, 0x40027fc2, 0x40024002, 0x41024002, 0x44424282, 0x793e4102, 0x00000100, // ICON_FOLDER_OPEN
+ 0x00000000, 0x0042007e, 0x40027fc2, 0x40024002, 0x41024102, 0x44424102, 0x793e4282, 0x00000000, // ICON_FOLDER_SAVE
+ 0x3ff00000, 0x201c2010, 0x20042004, 0x21042004, 0x24442284, 0x21042104, 0x20042104, 0x00003ffc, // ICON_FILE_OPEN
+ 0x3ff00000, 0x201c2010, 0x20042004, 0x21042004, 0x21042104, 0x22842444, 0x20042104, 0x00003ffc, // ICON_FILE_SAVE
+ 0x3ff00000, 0x201c2010, 0x00042004, 0x20041004, 0x20844784, 0x00841384, 0x20042784, 0x00003ffc, // ICON_FILE_EXPORT
+ 0x3ff00000, 0x201c2010, 0x20042004, 0x20042004, 0x22042204, 0x22042f84, 0x20042204, 0x00003ffc, // ICON_FILE_ADD
+ 0x3ff00000, 0x201c2010, 0x20042004, 0x20042004, 0x25042884, 0x25042204, 0x20042884, 0x00003ffc, // ICON_FILE_DELETE
+ 0x3ff00000, 0x201c2010, 0x20042004, 0x20042ff4, 0x20042ff4, 0x20042ff4, 0x20042004, 0x00003ffc, // ICON_FILETYPE_TEXT
+ 0x3ff00000, 0x201c2010, 0x27042004, 0x244424c4, 0x26442444, 0x20642664, 0x20042004, 0x00003ffc, // ICON_FILETYPE_AUDIO
+ 0x3ff00000, 0x201c2010, 0x26042604, 0x20042004, 0x35442884, 0x2414222c, 0x20042004, 0x00003ffc, // ICON_FILETYPE_IMAGE
+ 0x3ff00000, 0x201c2010, 0x20c42004, 0x22442144, 0x22442444, 0x20c42144, 0x20042004, 0x00003ffc, // ICON_FILETYPE_PLAY
+ 0x3ff00000, 0x3ffc2ff0, 0x3f3c2ff4, 0x3dbc2eb4, 0x3dbc2bb4, 0x3f3c2eb4, 0x3ffc2ff4, 0x00002ff4, // ICON_FILETYPE_VIDEO
+ 0x3ff00000, 0x201c2010, 0x21842184, 0x21842004, 0x21842184, 0x21842184, 0x20042184, 0x00003ffc, // ICON_FILETYPE_INFO
+ 0x0ff00000, 0x381c0810, 0x28042804, 0x28042804, 0x28042804, 0x28042804, 0x20102ffc, 0x00003ff0, // ICON_FILE_COPY
+ 0x00000000, 0x701c0000, 0x079c1e14, 0x55a000f0, 0x079c00f0, 0x701c1e14, 0x00000000, 0x00000000, // ICON_FILE_CUT
+ 0x01c00000, 0x13e41bec, 0x3f841004, 0x204420c4, 0x20442044, 0x20442044, 0x207c2044, 0x00003fc0, // ICON_FILE_PASTE
+ 0x00000000, 0x3aa00fe0, 0x2abc2aa0, 0x2aa42aa4, 0x20042aa4, 0x20042004, 0x3ffc2004, 0x00000000, // ICON_CURSOR_HAND
+ 0x00000000, 0x003c000c, 0x030800c8, 0x30100c10, 0x10202020, 0x04400840, 0x01800280, 0x00000000, // ICON_CURSOR_POINTER
+ 0x00000000, 0x00180000, 0x01f00078, 0x03e007f0, 0x07c003e0, 0x04000e40, 0x00000000, 0x00000000, // ICON_CURSOR_CLASSIC
+ 0x00000000, 0x04000000, 0x11000a00, 0x04400a80, 0x01100220, 0x00580088, 0x00000038, 0x00000000, // ICON_PENCIL
+ 0x04000000, 0x15000a00, 0x50402880, 0x14102820, 0x05040a08, 0x015c028c, 0x007c00bc, 0x00000000, // ICON_PENCIL_BIG
+ 0x01c00000, 0x01400140, 0x01400140, 0x0ff80140, 0x0ff80808, 0x0aa80808, 0x0aa80aa8, 0x00000ff8, // ICON_BRUSH_CLASSIC
+ 0x1ffc0000, 0x5ffc7ffe, 0x40004000, 0x00807f80, 0x01c001c0, 0x01c001c0, 0x01c001c0, 0x00000080, // ICON_BRUSH_PAINTER
+ 0x00000000, 0x00800000, 0x01c00080, 0x03e001c0, 0x07f003e0, 0x036006f0, 0x000001c0, 0x00000000, // ICON_WATER_DROP
+ 0x00000000, 0x3e003800, 0x1f803f80, 0x0c201e40, 0x02080c10, 0x00840104, 0x00380044, 0x00000000, // ICON_COLOR_PICKER
+ 0x00000000, 0x07800300, 0x1fe00fc0, 0x3f883fd0, 0x0e021f04, 0x02040402, 0x00f00108, 0x00000000, // ICON_RUBBER
+ 0x00c00000, 0x02800140, 0x08200440, 0x20081010, 0x2ffe3004, 0x03f807fc, 0x00e001f0, 0x00000040, // ICON_COLOR_BUCKET
+ 0x00000000, 0x21843ffc, 0x01800180, 0x01800180, 0x01800180, 0x01800180, 0x03c00180, 0x00000000, // ICON_TEXT_T
+ 0x00800000, 0x01400180, 0x06200340, 0x0c100620, 0x1ff80c10, 0x380c1808, 0x70067004, 0x0000f80f, // ICON_TEXT_A
+ 0x78000000, 0x50004000, 0x00004800, 0x03c003c0, 0x03c003c0, 0x00100000, 0x0002000a, 0x0000000e, // ICON_SCALE
+ 0x75560000, 0x5e004002, 0x54001002, 0x41001202, 0x408200fe, 0x40820082, 0x40820082, 0x00006afe, // ICON_RESIZE
+ 0x00000000, 0x3f003f00, 0x3f003f00, 0x3f003f00, 0x00400080, 0x001c0020, 0x001c001c, 0x00000000, // ICON_FILTER_POINT
+ 0x6d800000, 0x00004080, 0x40804080, 0x40800000, 0x00406d80, 0x001c0020, 0x001c001c, 0x00000000, // ICON_FILTER_BILINEAR
+ 0x40080000, 0x1ffe2008, 0x14081008, 0x11081208, 0x10481088, 0x10081028, 0x10047ff8, 0x00001002, // ICON_CROP
+ 0x00100000, 0x3ffc0010, 0x2ab03550, 0x22b02550, 0x20b02150, 0x20302050, 0x2000fff0, 0x00002000, // ICON_CROP_ALPHA
+ 0x40000000, 0x1ff82000, 0x04082808, 0x01082208, 0x00482088, 0x00182028, 0x35542008, 0x00000002, // ICON_SQUARE_TOGGLE
+ 0x00000000, 0x02800280, 0x06c006c0, 0x0ea00ee0, 0x1e901eb0, 0x3e883e98, 0x7efc7e8c, 0x00000000, // ICON_SYMMETRY
+ 0x01000000, 0x05600100, 0x1d480d50, 0x7d423d44, 0x3d447d42, 0x0d501d48, 0x01000560, 0x00000100, // ICON_SYMMETRY_HORIZONTAL
+ 0x01800000, 0x04200240, 0x10080810, 0x00001ff8, 0x00007ffe, 0x0ff01ff8, 0x03c007e0, 0x00000180, // ICON_SYMMETRY_VERTICAL
+ 0x00000000, 0x010800f0, 0x02040204, 0x02040204, 0x07f00308, 0x1c000e00, 0x30003800, 0x00000000, // ICON_LENS
+ 0x00000000, 0x061803f0, 0x08240c0c, 0x08040814, 0x0c0c0804, 0x23f01618, 0x18002400, 0x00000000, // ICON_LENS_BIG
+ 0x00000000, 0x00000000, 0x1c7007c0, 0x638e3398, 0x1c703398, 0x000007c0, 0x00000000, 0x00000000, // ICON_EYE_ON
+ 0x00000000, 0x10002000, 0x04700fc0, 0x610e3218, 0x1c703098, 0x001007a0, 0x00000008, 0x00000000, // ICON_EYE_OFF
+ 0x00000000, 0x00007ffc, 0x40047ffc, 0x10102008, 0x04400820, 0x02800280, 0x02800280, 0x00000100, // ICON_FILTER_TOP
+ 0x00000000, 0x40027ffe, 0x10082004, 0x04200810, 0x02400240, 0x02400240, 0x01400240, 0x000000c0, // ICON_FILTER
+ 0x00800000, 0x00800080, 0x00000080, 0x3c9e0000, 0x00000000, 0x00800080, 0x00800080, 0x00000000, // ICON_TARGET_POINT
+ 0x00800000, 0x00800080, 0x00800080, 0x3f7e01c0, 0x008001c0, 0x00800080, 0x00800080, 0x00000000, // ICON_TARGET_SMALL
+ 0x00800000, 0x00800080, 0x03e00080, 0x3e3e0220, 0x03e00220, 0x00800080, 0x00800080, 0x00000000, // ICON_TARGET_BIG
+ 0x01000000, 0x04400280, 0x01000100, 0x43842008, 0x43849ab2, 0x01002008, 0x04400100, 0x01000280, // ICON_TARGET_MOVE
+ 0x01000000, 0x04400280, 0x01000100, 0x41042108, 0x41049ff2, 0x01002108, 0x04400100, 0x01000280, // ICON_CURSOR_MOVE
+ 0x781e0000, 0x500a4002, 0x04204812, 0x00000240, 0x02400000, 0x48120420, 0x4002500a, 0x0000781e, // ICON_CURSOR_SCALE
+ 0x00000000, 0x20003c00, 0x24002800, 0x01000200, 0x00400080, 0x00140024, 0x003c0004, 0x00000000, // ICON_CURSOR_SCALE_RIGHT
+ 0x00000000, 0x0004003c, 0x00240014, 0x00800040, 0x02000100, 0x28002400, 0x3c002000, 0x00000000, // ICON_CURSOR_SCALE_LEFT
+ 0x00000000, 0x00100020, 0x10101fc8, 0x10001020, 0x10001000, 0x10001000, 0x00001fc0, 0x00000000, // ICON_UNDO
+ 0x00000000, 0x08000400, 0x080813f8, 0x00080408, 0x00080008, 0x00080008, 0x000003f8, 0x00000000, // ICON_REDO
+ 0x00000000, 0x3ffc0000, 0x20042004, 0x20002000, 0x20402000, 0x3f902020, 0x00400020, 0x00000000, // ICON_REREDO
+ 0x00000000, 0x3ffc0000, 0x20042004, 0x27fc2004, 0x20202000, 0x3fc82010, 0x00200010, 0x00000000, // ICON_MUTATE
+ 0x00000000, 0x0ff00000, 0x10081818, 0x11801008, 0x10001180, 0x18101020, 0x00100fc8, 0x00000020, // ICON_ROTATE
+ 0x00000000, 0x04000200, 0x240429fc, 0x20042204, 0x20442004, 0x3f942024, 0x00400020, 0x00000000, // ICON_REPEAT
+ 0x00000000, 0x20001000, 0x22104c0e, 0x00801120, 0x11200040, 0x4c0e2210, 0x10002000, 0x00000000, // ICON_SHUFFLE
+ 0x7ffe0000, 0x50024002, 0x44024802, 0x41024202, 0x40424082, 0x40124022, 0x4002400a, 0x00007ffe, // ICON_EMPTYBOX
+ 0x00800000, 0x03e00080, 0x08080490, 0x3c9e0808, 0x08080808, 0x03e00490, 0x00800080, 0x00000000, // ICON_TARGET
+ 0x00800000, 0x00800080, 0x00800080, 0x3ffe01c0, 0x008001c0, 0x00800080, 0x00800080, 0x00000000, // ICON_TARGET_SMALL_FILL
+ 0x00800000, 0x00800080, 0x03e00080, 0x3ffe03e0, 0x03e003e0, 0x00800080, 0x00800080, 0x00000000, // ICON_TARGET_BIG_FILL
+ 0x01000000, 0x07c00380, 0x01000100, 0x638c2008, 0x638cfbbe, 0x01002008, 0x07c00100, 0x01000380, // ICON_TARGET_MOVE_FILL
+ 0x01000000, 0x07c00380, 0x01000100, 0x610c2108, 0x610cfffe, 0x01002108, 0x07c00100, 0x01000380, // ICON_CURSOR_MOVE_FILL
+ 0x781e0000, 0x6006700e, 0x04204812, 0x00000240, 0x02400000, 0x48120420, 0x700e6006, 0x0000781e, // ICON_CURSOR_SCALE_FILL
+ 0x00000000, 0x38003c00, 0x24003000, 0x01000200, 0x00400080, 0x000c0024, 0x003c001c, 0x00000000, // ICON_CURSOR_SCALE_RIGHT_FILL
+ 0x00000000, 0x001c003c, 0x0024000c, 0x00800040, 0x02000100, 0x30002400, 0x3c003800, 0x00000000, // ICON_CURSOR_SCALE_LEFT_FILL
+ 0x00000000, 0x00300020, 0x10301ff8, 0x10001020, 0x10001000, 0x10001000, 0x00001fc0, 0x00000000, // ICON_UNDO_FILL
+ 0x00000000, 0x0c000400, 0x0c081ff8, 0x00080408, 0x00080008, 0x00080008, 0x000003f8, 0x00000000, // ICON_REDO_FILL
+ 0x00000000, 0x3ffc0000, 0x20042004, 0x20002000, 0x20402000, 0x3ff02060, 0x00400060, 0x00000000, // ICON_REREDO_FILL
+ 0x00000000, 0x3ffc0000, 0x20042004, 0x27fc2004, 0x20202000, 0x3ff82030, 0x00200030, 0x00000000, // ICON_MUTATE_FILL
+ 0x00000000, 0x0ff00000, 0x10081818, 0x11801008, 0x10001180, 0x18301020, 0x00300ff8, 0x00000020, // ICON_ROTATE_FILL
+ 0x00000000, 0x06000200, 0x26042ffc, 0x20042204, 0x20442004, 0x3ff42064, 0x00400060, 0x00000000, // ICON_REPEAT_FILL
+ 0x00000000, 0x30001000, 0x32107c0e, 0x00801120, 0x11200040, 0x7c0e3210, 0x10003000, 0x00000000, // ICON_SHUFFLE_FILL
+ 0x00000000, 0x30043ffc, 0x24042804, 0x21042204, 0x20442084, 0x20142024, 0x3ffc200c, 0x00000000, // ICON_EMPTYBOX_SMALL
+ 0x00000000, 0x20043ffc, 0x20042004, 0x20042004, 0x20042004, 0x20042004, 0x3ffc2004, 0x00000000, // ICON_BOX
+ 0x00000000, 0x23c43ffc, 0x23c423c4, 0x200423c4, 0x20042004, 0x20042004, 0x3ffc2004, 0x00000000, // ICON_BOX_TOP
+ 0x00000000, 0x3e043ffc, 0x3e043e04, 0x20043e04, 0x20042004, 0x20042004, 0x3ffc2004, 0x00000000, // ICON_BOX_TOP_RIGHT
+ 0x00000000, 0x20043ffc, 0x20042004, 0x3e043e04, 0x3e043e04, 0x20042004, 0x3ffc2004, 0x00000000, // ICON_BOX_RIGHT
+ 0x00000000, 0x20043ffc, 0x20042004, 0x20042004, 0x3e042004, 0x3e043e04, 0x3ffc3e04, 0x00000000, // ICON_BOX_BOTTOM_RIGHT
+ 0x00000000, 0x20043ffc, 0x20042004, 0x20042004, 0x23c42004, 0x23c423c4, 0x3ffc23c4, 0x00000000, // ICON_BOX_BOTTOM
+ 0x00000000, 0x20043ffc, 0x20042004, 0x20042004, 0x207c2004, 0x207c207c, 0x3ffc207c, 0x00000000, // ICON_BOX_BOTTOM_LEFT
+ 0x00000000, 0x20043ffc, 0x20042004, 0x207c207c, 0x207c207c, 0x20042004, 0x3ffc2004, 0x00000000, // ICON_BOX_LEFT
+ 0x00000000, 0x207c3ffc, 0x207c207c, 0x2004207c, 0x20042004, 0x20042004, 0x3ffc2004, 0x00000000, // ICON_BOX_TOP_LEFT
+ 0x00000000, 0x20043ffc, 0x20042004, 0x23c423c4, 0x23c423c4, 0x20042004, 0x3ffc2004, 0x00000000, // ICON_BOX_CENTER
+ 0x7ffe0000, 0x40024002, 0x47e24182, 0x4ff247e2, 0x47e24ff2, 0x418247e2, 0x40024002, 0x00007ffe, // ICON_BOX_CIRCLE_MASK
+ 0x7fff0000, 0x40014001, 0x40014001, 0x49555ddd, 0x4945495d, 0x400149c5, 0x40014001, 0x00007fff, // ICON_POT
+ 0x7ffe0000, 0x53327332, 0x44ce4cce, 0x41324332, 0x404e40ce, 0x48125432, 0x4006540e, 0x00007ffe, // ICON_ALPHA_MULTIPLY
+ 0x7ffe0000, 0x53327332, 0x44ce4cce, 0x41324332, 0x5c4e40ce, 0x44124432, 0x40065c0e, 0x00007ffe, // ICON_ALPHA_CLEAR
+ 0x7ffe0000, 0x42fe417e, 0x42fe417e, 0x42fe417e, 0x42fe417e, 0x42fe417e, 0x42fe417e, 0x00007ffe, // ICON_DITHERING
+ 0x07fe0000, 0x1ffa0002, 0x7fea000a, 0x402a402a, 0x5b2a512a, 0x5128552a, 0x40205128, 0x00007fe0, // ICON_MIPMAPS
+ 0x00000000, 0x1ff80000, 0x12481248, 0x12481ff8, 0x1ff81248, 0x12481248, 0x00001ff8, 0x00000000, // ICON_BOX_GRID
+ 0x12480000, 0x7ffe1248, 0x12481248, 0x12487ffe, 0x7ffe1248, 0x12481248, 0x12487ffe, 0x00001248, // ICON_GRID
+ 0x00000000, 0x1c380000, 0x1c3817e8, 0x08100810, 0x08100810, 0x17e81c38, 0x00001c38, 0x00000000, // ICON_BOX_CORNERS_SMALL
+ 0x700e0000, 0x700e5ffa, 0x20042004, 0x20042004, 0x20042004, 0x20042004, 0x5ffa700e, 0x0000700e, // ICON_BOX_CORNERS_BIG
+ 0x3f7e0000, 0x21422142, 0x21422142, 0x00003f7e, 0x21423f7e, 0x21422142, 0x3f7e2142, 0x00000000, // ICON_FOUR_BOXES
+ 0x00000000, 0x3bb80000, 0x3bb83bb8, 0x3bb80000, 0x3bb83bb8, 0x3bb80000, 0x3bb83bb8, 0x00000000, // ICON_GRID_FILL
+ 0x7ffe0000, 0x7ffe7ffe, 0x77fe7000, 0x77fe77fe, 0x777e7700, 0x777e777e, 0x777e777e, 0x0000777e, // ICON_BOX_MULTISIZE
+ 0x781e0000, 0x40024002, 0x00004002, 0x01800000, 0x00000180, 0x40020000, 0x40024002, 0x0000781e, // ICON_ZOOM_SMALL
+ 0x781e0000, 0x40024002, 0x00004002, 0x03c003c0, 0x03c003c0, 0x40020000, 0x40024002, 0x0000781e, // ICON_ZOOM_MEDIUM
+ 0x781e0000, 0x40024002, 0x07e04002, 0x07e007e0, 0x07e007e0, 0x400207e0, 0x40024002, 0x0000781e, // ICON_ZOOM_BIG
+ 0x781e0000, 0x5ffa4002, 0x1ff85ffa, 0x1ff81ff8, 0x1ff81ff8, 0x5ffa1ff8, 0x40025ffa, 0x0000781e, // ICON_ZOOM_ALL
+ 0x00000000, 0x2004381c, 0x00002004, 0x00000000, 0x00000000, 0x20040000, 0x381c2004, 0x00000000, // ICON_ZOOM_CENTER
+ 0x00000000, 0x1db80000, 0x10081008, 0x10080000, 0x00001008, 0x10081008, 0x00001db8, 0x00000000, // ICON_BOX_DOTS_SMALL
+ 0x35560000, 0x00002002, 0x00002002, 0x00002002, 0x00002002, 0x00002002, 0x35562002, 0x00000000, // ICON_BOX_DOTS_BIG
+ 0x7ffe0000, 0x40024002, 0x48124ff2, 0x49924812, 0x48124992, 0x4ff24812, 0x40024002, 0x00007ffe, // ICON_BOX_CONCENTRIC
+ 0x00000000, 0x10841ffc, 0x10841084, 0x1ffc1084, 0x10841084, 0x10841084, 0x00001ffc, 0x00000000, // ICON_BOX_GRID_BIG
+ 0x00000000, 0x00000000, 0x10000000, 0x04000800, 0x01040200, 0x00500088, 0x00000020, 0x00000000, // ICON_OK_TICK
+ 0x00000000, 0x10080000, 0x04200810, 0x01800240, 0x02400180, 0x08100420, 0x00001008, 0x00000000, // ICON_CROSS
+ 0x00000000, 0x02000000, 0x00800100, 0x00200040, 0x00200010, 0x00800040, 0x02000100, 0x00000000, // ICON_ARROW_LEFT
+ 0x00000000, 0x00400000, 0x01000080, 0x04000200, 0x04000800, 0x01000200, 0x00400080, 0x00000000, // ICON_ARROW_RIGHT
+ 0x00000000, 0x00000000, 0x00000000, 0x08081004, 0x02200410, 0x00800140, 0x00000000, 0x00000000, // ICON_ARROW_DOWN
+ 0x00000000, 0x00000000, 0x01400080, 0x04100220, 0x10040808, 0x00000000, 0x00000000, 0x00000000, // ICON_ARROW_UP
+ 0x00000000, 0x02000000, 0x03800300, 0x03e003c0, 0x03e003f0, 0x038003c0, 0x02000300, 0x00000000, // ICON_ARROW_LEFT_FILL
+ 0x00000000, 0x00400000, 0x01c000c0, 0x07c003c0, 0x07c00fc0, 0x01c003c0, 0x004000c0, 0x00000000, // ICON_ARROW_RIGHT_FILL
+ 0x00000000, 0x00000000, 0x00000000, 0x0ff81ffc, 0x03e007f0, 0x008001c0, 0x00000000, 0x00000000, // ICON_ARROW_DOWN_FILL
+ 0x00000000, 0x00000000, 0x01c00080, 0x07f003e0, 0x1ffc0ff8, 0x00000000, 0x00000000, 0x00000000, // ICON_ARROW_UP_FILL
+ 0x00000000, 0x18a008c0, 0x32881290, 0x24822686, 0x26862482, 0x12903288, 0x08c018a0, 0x00000000, // ICON_AUDIO
+ 0x00000000, 0x04800780, 0x004000c0, 0x662000f0, 0x08103c30, 0x130a0e18, 0x0000318e, 0x00000000, // ICON_FX
+ 0x00000000, 0x00800000, 0x08880888, 0x2aaa0a8a, 0x0a8a2aaa, 0x08880888, 0x00000080, 0x00000000, // ICON_WAVE
+ 0x00000000, 0x00600000, 0x01080090, 0x02040108, 0x42044204, 0x24022402, 0x00001800, 0x00000000, // ICON_WAVE_SINUS
+ 0x00000000, 0x07f80000, 0x04080408, 0x04080408, 0x04080408, 0x7c0e0408, 0x00000000, 0x00000000, // ICON_WAVE_SQUARE
+ 0x00000000, 0x00000000, 0x00a00040, 0x22084110, 0x08021404, 0x00000000, 0x00000000, 0x00000000, // ICON_WAVE_TRIANGULAR
+ 0x00000000, 0x00000000, 0x04200000, 0x01800240, 0x02400180, 0x00000420, 0x00000000, 0x00000000, // ICON_CROSS_SMALL
+ 0x00000000, 0x18380000, 0x12281428, 0x10a81128, 0x112810a8, 0x14281228, 0x00001838, 0x00000000, // ICON_PLAYER_PREVIOUS
+ 0x00000000, 0x18000000, 0x11801600, 0x10181060, 0x10601018, 0x16001180, 0x00001800, 0x00000000, // ICON_PLAYER_PLAY_BACK
+ 0x00000000, 0x00180000, 0x01880068, 0x18080608, 0x06081808, 0x00680188, 0x00000018, 0x00000000, // ICON_PLAYER_PLAY
+ 0x00000000, 0x1e780000, 0x12481248, 0x12481248, 0x12481248, 0x12481248, 0x00001e78, 0x00000000, // ICON_PLAYER_PAUSE
+ 0x00000000, 0x1ff80000, 0x10081008, 0x10081008, 0x10081008, 0x10081008, 0x00001ff8, 0x00000000, // ICON_PLAYER_STOP
+ 0x00000000, 0x1c180000, 0x14481428, 0x15081488, 0x14881508, 0x14281448, 0x00001c18, 0x00000000, // ICON_PLAYER_NEXT
+ 0x00000000, 0x03c00000, 0x08100420, 0x10081008, 0x10081008, 0x04200810, 0x000003c0, 0x00000000, // ICON_PLAYER_RECORD
+ 0x00000000, 0x0c3007e0, 0x13c81818, 0x14281668, 0x14281428, 0x1c381c38, 0x08102244, 0x00000000, // ICON_MAGNET
+ 0x07c00000, 0x08200820, 0x3ff80820, 0x23882008, 0x21082388, 0x20082108, 0x1ff02008, 0x00000000, // ICON_LOCK_CLOSE
+ 0x07c00000, 0x08000800, 0x3ff80800, 0x23882008, 0x21082388, 0x20082108, 0x1ff02008, 0x00000000, // ICON_LOCK_OPEN
+ 0x01c00000, 0x0c180770, 0x3086188c, 0x60832082, 0x60034781, 0x30062002, 0x0c18180c, 0x01c00770, // ICON_CLOCK
+ 0x0a200000, 0x1b201b20, 0x04200e20, 0x04200420, 0x04700420, 0x0e700e70, 0x0e700e70, 0x04200e70, // ICON_TOOLS
+ 0x01800000, 0x3bdc318c, 0x0ff01ff8, 0x7c3e1e78, 0x1e787c3e, 0x1ff80ff0, 0x318c3bdc, 0x00000180, // ICON_GEAR
+ 0x01800000, 0x3ffc318c, 0x1c381ff8, 0x781e1818, 0x1818781e, 0x1ff81c38, 0x318c3ffc, 0x00000180, // ICON_GEAR_BIG
+ 0x00000000, 0x08080ff8, 0x08081ffc, 0x0aa80aa8, 0x0aa80aa8, 0x0aa80aa8, 0x08080aa8, 0x00000ff8, // ICON_BIN
+ 0x00000000, 0x00000000, 0x20043ffc, 0x08043f84, 0x04040f84, 0x04040784, 0x000007fc, 0x00000000, // ICON_HAND_POINTER
+ 0x00000000, 0x24400400, 0x00001480, 0x6efe0e00, 0x00000e00, 0x24401480, 0x00000400, 0x00000000, // ICON_LASER
+ 0x00000000, 0x03c00000, 0x08300460, 0x11181118, 0x11181118, 0x04600830, 0x000003c0, 0x00000000, // ICON_COIN
+ 0x00000000, 0x10880080, 0x06c00810, 0x366c07e0, 0x07e00240, 0x00001768, 0x04200240, 0x00000000, // ICON_EXPLOSION
+ 0x00000000, 0x3d280000, 0x2528252c, 0x3d282528, 0x05280528, 0x05e80528, 0x00000000, 0x00000000, // ICON_1UP
+ 0x01800000, 0x03c003c0, 0x018003c0, 0x0ff007e0, 0x0bd00bd0, 0x0a500bd0, 0x02400240, 0x02400240, // ICON_PLAYER
+ 0x01800000, 0x03c003c0, 0x118013c0, 0x03c81ff8, 0x07c003c8, 0x04400440, 0x0c080478, 0x00000000, // ICON_PLAYER_JUMP
+ 0x3ff80000, 0x30183ff8, 0x30183018, 0x3ff83ff8, 0x03000300, 0x03c003c0, 0x03e00300, 0x000003e0, // ICON_KEY
+ 0x3ff80000, 0x3ff83ff8, 0x33983ff8, 0x3ff83398, 0x3ff83ff8, 0x00000540, 0x0fe00aa0, 0x00000fe0, // ICON_DEMON
+ 0x00000000, 0x0ff00000, 0x20041008, 0x25442004, 0x10082004, 0x06000bf0, 0x00000300, 0x00000000, // ICON_TEXT_POPUP
+ 0x00000000, 0x11440000, 0x07f00be8, 0x1c1c0e38, 0x1c1c0c18, 0x07f00e38, 0x11440be8, 0x00000000, // ICON_GEAR_EX
+ 0x00000000, 0x20080000, 0x0c601010, 0x07c00fe0, 0x07c007c0, 0x0c600fe0, 0x20081010, 0x00000000, // ICON_CRACK
+ 0x00000000, 0x20080000, 0x0c601010, 0x04400fe0, 0x04405554, 0x0c600fe0, 0x20081010, 0x00000000, // ICON_CRACK_POINTS
+ 0x00000000, 0x00800080, 0x01c001c0, 0x1ffc3ffe, 0x03e007f0, 0x07f003e0, 0x0c180770, 0x00000808, // ICON_STAR
+ 0x0ff00000, 0x08180810, 0x08100818, 0x0a100810, 0x08180810, 0x08100818, 0x08100810, 0x00001ff8, // ICON_DOOR
+ 0x0ff00000, 0x08100810, 0x08100810, 0x10100010, 0x4f902010, 0x10102010, 0x08100010, 0x00000ff0, // ICON_EXIT
+ 0x00040000, 0x001f000e, 0x0ef40004, 0x12f41284, 0x0ef41214, 0x10040004, 0x7ffc3004, 0x10003000, // ICON_MODE_2D
+ 0x78040000, 0x501f600e, 0x0ef44004, 0x12f41284, 0x0ef41284, 0x10140004, 0x7ffc300c, 0x10003000, // ICON_MODE_3D
+ 0x7fe00000, 0x50286030, 0x47fe4804, 0x44224402, 0x44224422, 0x241275e2, 0x0c06140a, 0x000007fe, // ICON_CUBE
+ 0x7fe00000, 0x5ff87ff0, 0x47fe4ffc, 0x44224402, 0x44224422, 0x241275e2, 0x0c06140a, 0x000007fe, // ICON_CUBE_FACE_TOP
+ 0x7fe00000, 0x50386030, 0x47c2483c, 0x443e443e, 0x443e443e, 0x241e75fe, 0x0c06140e, 0x000007fe, // ICON_CUBE_FACE_LEFT
+ 0x7fe00000, 0x50286030, 0x47fe4804, 0x47fe47fe, 0x47fe47fe, 0x27fe77fe, 0x0ffe17fe, 0x000007fe, // ICON_CUBE_FACE_FRONT
+ 0x7fe00000, 0x50286030, 0x47fe4804, 0x44224402, 0x44224422, 0x3bf27be2, 0x0bfe1bfa, 0x000007fe, // ICON_CUBE_FACE_BOTTOM
+ 0x7fe00000, 0x70286030, 0x7ffe7804, 0x7c227c02, 0x7c227c22, 0x3c127de2, 0x0c061c0a, 0x000007fe, // ICON_CUBE_FACE_RIGHT
+ 0x7fe00000, 0x6fe85ff0, 0x781e77e4, 0x7be27be2, 0x7be27be2, 0x24127be2, 0x0c06140a, 0x000007fe, // ICON_CUBE_FACE_BACK
+ 0x00000000, 0x2a0233fe, 0x22022602, 0x22022202, 0x2a022602, 0x00a033fe, 0x02080110, 0x00000000, // ICON_CAMERA
+ 0x00000000, 0x200c3ffc, 0x000c000c, 0x3ffc000c, 0x30003000, 0x30003000, 0x3ffc3004, 0x00000000, // ICON_SPECIAL
+ 0x00000000, 0x0022003e, 0x012201e2, 0x0100013e, 0x01000100, 0x79000100, 0x4f004900, 0x00007800, // ICON_LINK_NET
+ 0x00000000, 0x44007c00, 0x45004600, 0x00627cbe, 0x00620022, 0x45007cbe, 0x44004600, 0x00007c00, // ICON_LINK_BOXES
+ 0x00000000, 0x0044007c, 0x0010007c, 0x3f100010, 0x3f1021f0, 0x3f100010, 0x3f0021f0, 0x00000000, // ICON_LINK_MULTI
+ 0x00000000, 0x0044007c, 0x00440044, 0x0010007c, 0x00100010, 0x44107c10, 0x440047f0, 0x00007c00, // ICON_LINK
+ 0x00000000, 0x0044007c, 0x00440044, 0x0000007c, 0x00000010, 0x44007c10, 0x44004550, 0x00007c00, // ICON_LINK_BROKE
+ 0x02a00000, 0x22a43ffc, 0x20042004, 0x20042ff4, 0x20042ff4, 0x20042ff4, 0x20042004, 0x00003ffc, // ICON_TEXT_NOTES
+ 0x3ffc0000, 0x20042004, 0x245e27c4, 0x27c42444, 0x2004201e, 0x201e2004, 0x20042004, 0x00003ffc, // ICON_NOTEBOOK
+ 0x00000000, 0x07e00000, 0x04200420, 0x24243ffc, 0x24242424, 0x24242424, 0x3ffc2424, 0x00000000, // ICON_SUITCASE
+ 0x00000000, 0x0fe00000, 0x08200820, 0x40047ffc, 0x7ffc5554, 0x40045554, 0x7ffc4004, 0x00000000, // ICON_SUITCASE_ZIP
+ 0x00000000, 0x20043ffc, 0x3ffc2004, 0x13c81008, 0x100813c8, 0x10081008, 0x1ff81008, 0x00000000, // ICON_MAILBOX
+ 0x00000000, 0x40027ffe, 0x5ffa5ffa, 0x5ffa5ffa, 0x40025ffa, 0x03c07ffe, 0x1ff81ff8, 0x00000000, // ICON_MONITOR
+ 0x0ff00000, 0x6bfe7ffe, 0x7ffe7ffe, 0x68167ffe, 0x08106816, 0x08100810, 0x0ff00810, 0x00000000, // ICON_PRINTER
+ 0x3ff80000, 0xfffe2008, 0x870a8002, 0x904a888a, 0x904a904a, 0x870a888a, 0xfffe8002, 0x00000000, // ICON_PHOTO_CAMERA
+ 0x0fc00000, 0xfcfe0cd8, 0x8002fffe, 0x84428382, 0x84428442, 0x80028382, 0xfffe8002, 0x00000000, // ICON_PHOTO_CAMERA_FLASH
+ 0x00000000, 0x02400180, 0x08100420, 0x20041008, 0x23c42004, 0x22442244, 0x3ffc2244, 0x00000000, // ICON_HOUSE
+ 0x00000000, 0x1c700000, 0x3ff83ef8, 0x3ff83ff8, 0x0fe01ff0, 0x038007c0, 0x00000100, 0x00000000, // ICON_HEART
+ 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x80000000, 0xe000c000, // ICON_CORNER
+ 0x00000000, 0x14001c00, 0x15c01400, 0x15401540, 0x155c1540, 0x15541554, 0x1ddc1554, 0x00000000, // ICON_VERTICAL_BARS
+ 0x00000000, 0x03000300, 0x1b001b00, 0x1b601b60, 0x1b6c1b60, 0x1b6c1b6c, 0x1b6c1b6c, 0x00000000, // ICON_VERTICAL_BARS_FILL
+ 0x00000000, 0x00000000, 0x403e7ffe, 0x7ffe403e, 0x7ffe0000, 0x43fe43fe, 0x00007ffe, 0x00000000, // ICON_LIFE_BARS
+ 0x7ffc0000, 0x43844004, 0x43844284, 0x43844004, 0x42844284, 0x42844284, 0x40044384, 0x00007ffc, // ICON_INFO
+ 0x40008000, 0x10002000, 0x04000800, 0x01000200, 0x00400080, 0x00100020, 0x00040008, 0x00010002, // ICON_CROSSLINE
+ 0x00000000, 0x1ff01ff0, 0x18301830, 0x1f001830, 0x03001f00, 0x00000300, 0x03000300, 0x00000000, // ICON_HELP
+ 0x3ff00000, 0x2abc3550, 0x2aac3554, 0x2aac3554, 0x2aac3554, 0x2aac3554, 0x2aac3554, 0x00003ffc, // ICON_FILETYPE_ALPHA
+ 0x3ff00000, 0x201c2010, 0x22442184, 0x28142424, 0x29942814, 0x2ff42994, 0x20042004, 0x00003ffc, // ICON_FILETYPE_HOME
+ 0x07fe0000, 0x04020402, 0x7fe20402, 0x44224422, 0x44224422, 0x402047fe, 0x40204020, 0x00007fe0, // ICON_LAYERS_VISIBLE
+ 0x07fe0000, 0x04020402, 0x7c020402, 0x44024402, 0x44024402, 0x402047fe, 0x40204020, 0x00007fe0, // ICON_LAYERS
+ 0x00000000, 0x40027ffe, 0x7ffe4002, 0x40024002, 0x40024002, 0x40024002, 0x7ffe4002, 0x00000000, // ICON_WINDOW
+ 0x09100000, 0x09f00910, 0x09100910, 0x00000910, 0x24a2779e, 0x27a224a2, 0x709e20a2, 0x00000000, // ICON_HIDPI
+ 0x3ff00000, 0x201c2010, 0x2a842e84, 0x2e842a84, 0x2ba42004, 0x2aa42aa4, 0x20042ba4, 0x00003ffc, // ICON_FILETYPE_BINARY
+ 0x00000000, 0x00000000, 0x00120012, 0x4a5e4bd2, 0x485233d2, 0x00004bd2, 0x00000000, 0x00000000, // ICON_HEX
+ 0x01800000, 0x381c0660, 0x23c42004, 0x23c42044, 0x13c82204, 0x08101008, 0x02400420, 0x00000180, // ICON_SHIELD
+ 0x007e0000, 0x20023fc2, 0x40227fe2, 0x400a403a, 0x400a400a, 0x400a400a, 0x4008400e, 0x00007ff8, // ICON_FILE_NEW
+ 0x00000000, 0x0042007e, 0x40027fc2, 0x44024002, 0x5f024402, 0x44024402, 0x7ffe4002, 0x00000000, // ICON_FOLDER_ADD
+ 0x44220000, 0x12482244, 0xf3cf0000, 0x14280420, 0x48122424, 0x08100810, 0x1ff81008, 0x03c00420, // ICON_ALARM
+ 0x0aa00000, 0x1ff80aa0, 0x1068700e, 0x1008706e, 0x1008700e, 0x1008700e, 0x0aa01ff8, 0x00000aa0, // ICON_CPU
+ 0x07e00000, 0x04201db8, 0x04a01c38, 0x04a01d38, 0x04a01d38, 0x04a01d38, 0x04201d38, 0x000007e0, // ICON_ROM
+ 0x00000000, 0x03c00000, 0x3c382ff0, 0x3c04380c, 0x01800000, 0x03c003c0, 0x00000180, 0x00000000, // ICON_STEP_OVER
+ 0x01800000, 0x01800180, 0x01800180, 0x03c007e0, 0x00000180, 0x01800000, 0x03c003c0, 0x00000180, // ICON_STEP_INTO
+ 0x01800000, 0x07e003c0, 0x01800180, 0x01800180, 0x00000180, 0x01800000, 0x03c003c0, 0x00000180, // ICON_STEP_OUT
+ 0x00000000, 0x0ff003c0, 0x181c1c34, 0x303c301c, 0x30003000, 0x1c301800, 0x03c00ff0, 0x00000000, // ICON_RESTART
+ 0x00000000, 0x00000000, 0x07e003c0, 0x0ff00ff0, 0x0ff00ff0, 0x03c007e0, 0x00000000, 0x00000000, // ICON_BREAKPOINT_ON
+ 0x00000000, 0x00000000, 0x042003c0, 0x08100810, 0x08100810, 0x03c00420, 0x00000000, 0x00000000, // ICON_BREAKPOINT_OFF
+ 0x00000000, 0x00000000, 0x1ff81ff8, 0x1ff80000, 0x00001ff8, 0x1ff81ff8, 0x00000000, 0x00000000, // ICON_BURGER_MENU
+ 0x00000000, 0x00000000, 0x00880070, 0x0c880088, 0x1e8810f8, 0x3e881288, 0x00000000, 0x00000000, // ICON_CASE_SENSITIVE
+ 0x00000000, 0x02000000, 0x07000a80, 0x07001fc0, 0x02000a80, 0x00300030, 0x00000000, 0x00000000, // ICON_REG_EXP
+ 0x00000000, 0x0042007e, 0x40027fc2, 0x40024002, 0x40024002, 0x40024002, 0x7ffe4002, 0x00000000, // ICON_FOLDER
+ 0x3ff00000, 0x201c2010, 0x20042004, 0x20042004, 0x20042004, 0x20042004, 0x20042004, 0x00003ffc, // ICON_FILE
+ 0x1ff00000, 0x20082008, 0x17d02fe8, 0x05400ba0, 0x09200540, 0x23881010, 0x2fe827c8, 0x00001ff0, // ICON_SAND_TIMER
+ 0x01800000, 0x02400240, 0x05a00420, 0x09900990, 0x11881188, 0x21842004, 0x40024182, 0x00003ffc, // ICON_WARNING
+ 0x7ffe0000, 0x4ff24002, 0x4c324ff2, 0x4f824c02, 0x41824f82, 0x41824002, 0x40024182, 0x00007ffe, // ICON_HELP_BOX
+ 0x7ffe0000, 0x41824002, 0x40024182, 0x41824182, 0x41824182, 0x41824182, 0x40024182, 0x00007ffe, // ICON_INFO_BOX
+ 0x01800000, 0x04200240, 0x10080810, 0x7bde2004, 0x0a500a50, 0x08500bd0, 0x08100850, 0x00000ff0, // ICON_PRIORITY
+ 0x01800000, 0x18180660, 0x80016006, 0x98196006, 0x99996666, 0x19986666, 0x01800660, 0x00000000, // ICON_LAYERS_ISO
+ 0x07fe0000, 0x1c020402, 0x74021402, 0x54025402, 0x54025402, 0x500857fe, 0x40205ff8, 0x00007fe0, // ICON_LAYERS2
+ 0x0ffe0000, 0x3ffa0802, 0x7fea200a, 0x402a402a, 0x422a422a, 0x422e422a, 0x40384e28, 0x00007fe0, // ICON_MLAYERS
+ 0x0ffe0000, 0x3ffa0802, 0x7fea200a, 0x402a402a, 0x5b2a512a, 0x512e552a, 0x40385128, 0x00007fe0, // ICON_MAPS
+ 0x04200000, 0x1cf00c60, 0x11f019f0, 0x0f3807b8, 0x1e3c0f3c, 0x1c1c1e1c, 0x1e3c1c1c, 0x00000f70, // ICON_HOT
+ 0x00000000, 0x20803f00, 0x2a202e40, 0x20082e10, 0x08021004, 0x02040402, 0x00900108, 0x00000060, // ICON_LABEL
+ 0x00000000, 0x042007e0, 0x47e27c3e, 0x4ffa4002, 0x47fa4002, 0x4ffa4002, 0x7ffe4002, 0x00000000, // ICON_NAME_ID
+ 0x7fe00000, 0x402e4020, 0x43ce5e0a, 0x40504078, 0x438e4078, 0x402e5e0a, 0x7fe04020, 0x00000000, // ICON_SLICING
+ 0x00000000, 0x40027ffe, 0x47c24002, 0x55425d42, 0x55725542, 0x50125552, 0x10105016, 0x00001ff0, // ICON_MANUAL_CONTROL
+ 0x7ffe0000, 0x43c24002, 0x48124422, 0x500a500a, 0x500a500a, 0x44224812, 0x400243c2, 0x00007ffe, // ICON_COLLISION
+ 0x03c00000, 0x10080c30, 0x21842184, 0x4ff24182, 0x41824ff2, 0x21842184, 0x0c301008, 0x000003c0, // ICON_CIRCLE_ADD
+ 0x03c00000, 0x1ff80ff0, 0x3e7c3e7c, 0x700e7e7e, 0x7e7e700e, 0x3e7c3e7c, 0x0ff01ff8, 0x000003c0, // ICON_CIRCLE_ADD_FILL
+ 0x03c00000, 0x10080c30, 0x21842184, 0x41824182, 0x40024182, 0x21842184, 0x0c301008, 0x000003c0, // ICON_CIRCLE_WARNING
+ 0x03c00000, 0x1ff80ff0, 0x3e7c3e7c, 0x7e7e7e7e, 0x7ffe7e7e, 0x3e7c3e7c, 0x0ff01ff8, 0x000003c0, // ICON_CIRCLE_WARNING_FILL
+ 0x00000000, 0x10041ffc, 0x10841004, 0x13e41084, 0x10841084, 0x10041004, 0x00001ffc, 0x00000000, // ICON_BOX_MORE
+ 0x00000000, 0x1ffc1ffc, 0x1f7c1ffc, 0x1c1c1f7c, 0x1f7c1f7c, 0x1ffc1ffc, 0x00001ffc, 0x00000000, // ICON_BOX_MORE_FILL
+ 0x00000000, 0x1ffc1ffc, 0x1ffc1ffc, 0x1c1c1ffc, 0x1ffc1ffc, 0x1ffc1ffc, 0x00001ffc, 0x00000000, // ICON_BOX_MINUS
+ 0x00000000, 0x10041ffc, 0x10041004, 0x13e41004, 0x10041004, 0x10041004, 0x00001ffc, 0x00000000, // ICON_BOX_MINUS_FILL
+ 0x07fe0000, 0x055606aa, 0x7ff606aa, 0x55766eba, 0x55766eaa, 0x55606ffe, 0x55606aa0, 0x00007fe0, // ICON_UNION
+ 0x07fe0000, 0x04020402, 0x7fe20402, 0x456246a2, 0x456246a2, 0x402047fe, 0x40204020, 0x00007fe0, // ICON_INTERSECTION
+ 0x07fe0000, 0x055606aa, 0x7ff606aa, 0x4436442a, 0x4436442a, 0x402047fe, 0x40204020, 0x00007fe0, // ICON_DIFFERENCE
+ 0x03c00000, 0x10080c30, 0x20042004, 0x60064002, 0x47e2581a, 0x20042004, 0x0c301008, 0x000003c0, // ICON_SPHERE
+ 0x03e00000, 0x08080410, 0x0c180808, 0x08080be8, 0x08080808, 0x08080808, 0x04100808, 0x000003e0, // ICON_CYLINDER
+ 0x00800000, 0x01400140, 0x02200220, 0x04100410, 0x08080808, 0x1c1c13e4, 0x08081004, 0x000007f0, // ICON_CONE
+ 0x00000000, 0x07e00000, 0x20841918, 0x40824082, 0x40824082, 0x19182084, 0x000007e0, 0x00000000, // ICON_ELLIPSOID
+ 0x00000000, 0x00000000, 0x20041ff8, 0x40024002, 0x40024002, 0x1ff82004, 0x00000000, 0x00000000, // ICON_CAPSULE
+ 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, // ICON_250
+ 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, // ICON_251
+ 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, // ICON_252
+ 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, // ICON_253
+ 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, // ICON_254
+ 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, // ICON_255
+};
+
+// NOTE: A pointer to current icons array should be defined
+static unsigned int *guiIconsPtr = guiIcons;
+
+#endif // !RAYGUI_NO_ICONS && !RAYGUI_CUSTOM_ICONS
+
+#ifndef RAYGUI_ICON_SIZE
+ #define RAYGUI_ICON_SIZE 0
+#endif
+
+// WARNING: Those values define the total size of the style data array,
+// if changed, previous saved styles could become incompatible
+#define RAYGUI_MAX_CONTROLS 16 // Maximum number of controls
+#define RAYGUI_MAX_PROPS_BASE 16 // Maximum number of base properties
+#define RAYGUI_MAX_PROPS_EXTENDED 8 // Maximum number of extended properties
+
+//----------------------------------------------------------------------------------
+// Module Types and Structures Definition
+//----------------------------------------------------------------------------------
+// Gui control property style color element
+typedef enum { BORDER = 0, BASE, TEXT, OTHER } GuiPropertyElement;
+
+//----------------------------------------------------------------------------------
+// Global Variables Definition
+//----------------------------------------------------------------------------------
+static GuiState guiState = STATE_NORMAL; // Gui global state, if !STATE_NORMAL, forces defined state
+
+static Font guiFont = { 0 }; // Gui current font (WARNING: highly coupled to raylib)
+static bool guiLocked = false; // Gui lock state (no inputs processed)
+static float guiAlpha = 1.0f; // Gui controls transparency
+
+static unsigned int guiIconScale = 1; // Gui icon default scale (if icons enabled)
+
+static bool guiTooltip = false; // Tooltip enabled/disabled
+static const char *guiTooltipPtr = NULL; // Tooltip string pointer (string provided by user)
+
+static bool guiControlExclusiveMode = false; // Gui control exclusive mode (no inputs processed except current control)
+static Rectangle guiControlExclusiveRec = { 0 }; // Gui control exclusive bounds rectangle, used as an unique identifier
+
+static int textBoxCursorIndex = 0; // Cursor index, shared by all GuiTextBox*()
+//static int blinkCursorFrameCounter = 0; // Frame counter for cursor blinking
+static int autoCursorCounter = 0; // Frame counter for automatic repeated cursor movement on key-down (cooldown and delay)
+
+//----------------------------------------------------------------------------------
+// Style data array for all gui style properties (allocated on data segment by default)
+//
+// NOTE 1: First set of BASE properties are generic to all controls but could be individually
+// overwritten per control, first set of EXTENDED properties are generic to all controls and
+// can not be overwritten individually but custom EXTENDED properties can be used by control
+//
+// NOTE 2: A new style set could be loaded over this array using GuiLoadStyle(),
+// but default gui style could always be recovered with GuiLoadStyleDefault()
+//
+// guiStyle size is by default: 16*(16 + 8) = 384*4 = 1536 bytes = 1.5 KB
+//----------------------------------------------------------------------------------
+static unsigned int guiStyle[RAYGUI_MAX_CONTROLS*(RAYGUI_MAX_PROPS_BASE + RAYGUI_MAX_PROPS_EXTENDED)] = { 0 };
+
+static bool guiStyleLoaded = false; // Style loaded flag for lazy style initialization
+
+//----------------------------------------------------------------------------------
+// Standalone Mode Functions Declaration
+//
+// NOTE: raygui depend on some raylib input and drawing functions
+// To use raygui as standalone library, below functions must be defined by the user
+//----------------------------------------------------------------------------------
+#if defined(RAYGUI_STANDALONE)
+
+#define KEY_RIGHT 262
+#define KEY_LEFT 263
+#define KEY_DOWN 264
+#define KEY_UP 265
+#define KEY_BACKSPACE 259
+#define KEY_ENTER 257
+
+#define MOUSE_LEFT_BUTTON 0
+
+// Input required functions
+//-------------------------------------------------------------------------------
+static Vector2 GetMousePosition(void);
+static float GetMouseWheelMove(void);
+static bool IsMouseButtonDown(int button);
+static bool IsMouseButtonPressed(int button);
+static bool IsMouseButtonReleased(int button);
+
+static bool IsKeyDown(int key);
+static bool IsKeyPressed(int key);
+static int GetCharPressed(void); // -- GuiTextBox(), GuiValueBox()
+//-------------------------------------------------------------------------------
+
+// Drawing required functions
+//-------------------------------------------------------------------------------
+static void DrawRectangle(int x, int y, int width, int height, Color color); // -- GuiDrawRectangle()
+static void DrawRectangleGradientEx(Rectangle rec, Color col1, Color col2, Color col3, Color col4); // -- GuiColorPicker()
+//-------------------------------------------------------------------------------
+
+// Text required functions
+//-------------------------------------------------------------------------------
+static Font GetFontDefault(void); // -- GuiLoadStyleDefault()
+static Font LoadFontEx(const char *fileName, int fontSize, int *codepoints, int codepointCount); // -- GuiLoadStyle(), load font
+
+static Texture2D LoadTextureFromImage(Image image); // -- GuiLoadStyle(), required to load texture from embedded font atlas image
+static void SetShapesTexture(Texture2D tex, Rectangle rec); // -- GuiLoadStyle(), required to set shapes rec to font white rec (optimization)
+
+static char *LoadFileText(const char *fileName); // -- GuiLoadStyle(), required to load charset data
+static void UnloadFileText(char *text); // -- GuiLoadStyle(), required to unload charset data
+
+static const char *GetDirectoryPath(const char *filePath); // -- GuiLoadStyle(), required to find charset/font file from text .rgs
+
+static int *LoadCodepoints(const char *text, int *count); // -- GuiLoadStyle(), required to load required font codepoints list
+static void UnloadCodepoints(int *codepoints); // -- GuiLoadStyle(), required to unload codepoints list
+
+static unsigned char *DecompressData(const unsigned char *compData, int compDataSize, int *dataSize); // -- GuiLoadStyle()
+//-------------------------------------------------------------------------------
+
+// raylib functions already implemented in raygui
+//-------------------------------------------------------------------------------
+static Color GetColor(int hexValue); // Returns a Color struct from hexadecimal value
+static int ColorToInt(Color color); // Returns hexadecimal value for a Color
+static bool CheckCollisionPointRec(Vector2 point, Rectangle rec); // Check if point is inside rectangle
+static const char *TextFormat(const char *text, ...); // Formatting of text with variables to 'embed'
+static const char **TextSplit(const char *text, char delimiter, int *count); // Split text into multiple strings
+static int TextToInteger(const char *text); // Get integer value from text
+static float TextToFloat(const char *text); // Get float value from text
+
+static int GetCodepointNext(const char *text, int *codepointSize); // Get next codepoint in a UTF-8 encoded text
+static const char *CodepointToUTF8(int codepoint, int *byteSize); // Encode codepoint into UTF-8 text (char array size returned as parameter)
+
+static void DrawRectangleGradientV(int posX, int posY, int width, int height, Color color1, Color color2); // Draw rectangle vertical gradient
+//-------------------------------------------------------------------------------
+
+#endif // RAYGUI_STANDALONE
+
+//----------------------------------------------------------------------------------
+// Module Internal Functions Declaration
+//----------------------------------------------------------------------------------
+static void GuiLoadStyleFromMemory(const unsigned char *fileData, int dataSize); // Load style from memory (binary only)
+
+static Rectangle GetTextBounds(int control, Rectangle bounds); // Get text bounds considering control bounds
+static const char *GetTextIcon(const char *text, int *iconId); // Get text icon if provided and move text cursor
+
+static void GuiDrawText(const char *text, Rectangle textBounds, int alignment, Color tint); // Gui draw text using default font
+static void GuiDrawRectangle(Rectangle rec, int borderWidth, Color borderColor, Color color); // Gui draw rectangle using default raygui style
+
+static const char **GuiTextSplit(const char *text, char delimiter, int *count, int *textRow); // Split controls text into multiple strings
+static Vector3 ConvertHSVtoRGB(Vector3 hsv); // Convert color data from HSV to RGB
+static Vector3 ConvertRGBtoHSV(Vector3 rgb); // Convert color data from RGB to HSV
+
+static int GuiScrollBar(Rectangle bounds, int value, int minValue, int maxValue); // Scroll bar control, used by GuiScrollPanel()
+static void GuiTooltip(Rectangle controlRec); // Draw tooltip using control rec position
+
+static Color GuiFade(Color color, float alpha); // Fade color by an alpha factor
+
+//----------------------------------------------------------------------------------
+// Gui Setup Functions Definition
+//----------------------------------------------------------------------------------
+// Enable gui global state
+// NOTE: Checking for STATE_DISABLED to avoid messing custom global state setups
+void GuiEnable(void) { if (guiState == STATE_DISABLED) guiState = STATE_NORMAL; }
+
+// Disable gui global state
+// NOTE: Checking for STATE_NORMAL to avoid messing custom global state setups
+void GuiDisable(void) { if (guiState == STATE_NORMAL) guiState = STATE_DISABLED; }
+
+// Lock gui global state
+void GuiLock(void) { guiLocked = true; }
+
+// Unlock gui global state
+void GuiUnlock(void) { guiLocked = false; }
+
+// Check if gui is locked (global state)
+bool GuiIsLocked(void) { return guiLocked; }
+
+// Set gui controls alpha global state
+void GuiSetAlpha(float alpha)
+{
+ if (alpha < 0.0f) alpha = 0.0f;
+ else if (alpha > 1.0f) alpha = 1.0f;
+
+ guiAlpha = alpha;
+}
+
+// Set gui state (global state)
+void GuiSetState(int state) { guiState = (GuiState)state; }
+
+// Get gui state (global state)
+int GuiGetState(void) { return guiState; }
+
+// Set custom gui font
+// NOTE: Font loading/unloading is external to raygui
+void GuiSetFont(Font font)
+{
+ if (font.texture.id > 0)
+ {
+ // NOTE: If a font is tried to be set but default style has not been lazily loaded first,
+ // it will be overwritten, so default style loading needs to be forced first
+ if (!guiStyleLoaded) GuiLoadStyleDefault();
+
+ guiFont = font;
+ }
+}
+
+// Get custom gui font
+Font GuiGetFont(void)
+{
+ return guiFont;
+}
+
+// Set control style property value
+void GuiSetStyle(int control, int property, int value)
+{
+ if (!guiStyleLoaded) GuiLoadStyleDefault();
+ guiStyle[control*(RAYGUI_MAX_PROPS_BASE + RAYGUI_MAX_PROPS_EXTENDED) + property] = value;
+
+ // Default properties are propagated to all controls
+ if ((control == 0) && (property < RAYGUI_MAX_PROPS_BASE))
+ {
+ for (int i = 1; i < RAYGUI_MAX_CONTROLS; i++) guiStyle[i*(RAYGUI_MAX_PROPS_BASE + RAYGUI_MAX_PROPS_EXTENDED) + property] = value;
+ }
+}
+
+// Get control style property value
+int GuiGetStyle(int control, int property)
+{
+ if (!guiStyleLoaded) GuiLoadStyleDefault();
+ return guiStyle[control*(RAYGUI_MAX_PROPS_BASE + RAYGUI_MAX_PROPS_EXTENDED) + property];
+}
+
+//----------------------------------------------------------------------------------
+// Gui Controls Functions Definition
+//----------------------------------------------------------------------------------
+
+// Window Box control
+int GuiWindowBox(Rectangle bounds, const char *title)
+{
+ // Window title bar height (including borders)
+ // NOTE: This define is also used by GuiMessageBox() and GuiTextInputBox()
+ #if !defined(RAYGUI_WINDOWBOX_STATUSBAR_HEIGHT)
+ #define RAYGUI_WINDOWBOX_STATUSBAR_HEIGHT 24
+ #endif
+
+ #if !defined(RAYGUI_WINDOWBOX_CLOSEBUTTON_HEIGHT)
+ #define RAYGUI_WINDOWBOX_CLOSEBUTTON_HEIGHT 18
+ #endif
+
+ int result = 0;
+ //GuiState state = guiState;
+
+ int statusBarHeight = RAYGUI_WINDOWBOX_STATUSBAR_HEIGHT;
+ int statusBorderWidth = GuiGetStyle(STATUSBAR, BORDER_WIDTH);
+
+ Rectangle statusBar = { bounds.x, bounds.y, bounds.width, (float)statusBarHeight };
+ if (bounds.height < statusBarHeight*2.0f) bounds.height = statusBarHeight*2.0f;
+
+ const float vPadding = statusBarHeight/2.0f - RAYGUI_WINDOWBOX_CLOSEBUTTON_HEIGHT/2.0f;
+ Rectangle windowPanel = { bounds.x, bounds.y + (float)statusBarHeight - (float)statusBorderWidth, bounds.width, bounds.height - (float)statusBarHeight + (float)statusBorderWidth };
+ Rectangle closeButtonRec = { statusBar.x + statusBar.width - (float)statusBorderWidth - RAYGUI_WINDOWBOX_CLOSEBUTTON_HEIGHT - vPadding,
+ statusBar.y + vPadding, RAYGUI_WINDOWBOX_CLOSEBUTTON_HEIGHT, RAYGUI_WINDOWBOX_CLOSEBUTTON_HEIGHT };
+
+ // Update control
+ //--------------------------------------------------------------------
+ // NOTE: Logic is directly managed by button
+ //--------------------------------------------------------------------
+
+ // Draw control
+ //--------------------------------------------------------------------
+ GuiPanel(windowPanel, NULL); // Draw window base
+ GuiStatusBar(statusBar, title); // Draw window header as status bar
+
+ // Draw window close button
+ int tempBorderWidth = GuiGetStyle(BUTTON, BORDER_WIDTH);
+ int tempTextAlignment = GuiGetStyle(BUTTON, TEXT_ALIGNMENT);
+ GuiSetStyle(BUTTON, BORDER_WIDTH, 1);
+ GuiSetStyle(BUTTON, TEXT_ALIGNMENT, TEXT_ALIGN_CENTER);
+#if defined(RAYGUI_NO_ICONS)
+ result = GuiButton(closeButtonRec, "x");
+#else
+ result = GuiButton(closeButtonRec, GuiIconText(ICON_CROSS_SMALL, NULL));
+#endif
+ GuiSetStyle(BUTTON, BORDER_WIDTH, tempBorderWidth);
+ GuiSetStyle(BUTTON, TEXT_ALIGNMENT, tempTextAlignment);
+ //--------------------------------------------------------------------
+
+ return result; // Window close button clicked: result = 1
+}
+
+// Group Box control with text name
+int GuiGroupBox(Rectangle bounds, const char *text)
+{
+ #if !defined(RAYGUI_GROUPBOX_LINE_THICK)
+ #define RAYGUI_GROUPBOX_LINE_THICK 1
+ #endif
+
+ int result = 0;
+ GuiState state = guiState;
+
+ // Draw control
+ //--------------------------------------------------------------------
+ GuiDrawRectangle(RAYGUI_CLITERAL(Rectangle){ bounds.x, bounds.y, RAYGUI_GROUPBOX_LINE_THICK, bounds.height }, 0, BLANK, GetColor(GuiGetStyle(DEFAULT, (state == STATE_DISABLED)? (int)BORDER_COLOR_DISABLED : (int)LINE_COLOR)));
+ GuiDrawRectangle(RAYGUI_CLITERAL(Rectangle){ bounds.x, bounds.y + bounds.height - 1, bounds.width, RAYGUI_GROUPBOX_LINE_THICK }, 0, BLANK, GetColor(GuiGetStyle(DEFAULT, (state == STATE_DISABLED)? (int)BORDER_COLOR_DISABLED : (int)LINE_COLOR)));
+ GuiDrawRectangle(RAYGUI_CLITERAL(Rectangle){ bounds.x + bounds.width - 1, bounds.y, RAYGUI_GROUPBOX_LINE_THICK, bounds.height }, 0, BLANK, GetColor(GuiGetStyle(DEFAULT, (state == STATE_DISABLED)? (int)BORDER_COLOR_DISABLED : (int)LINE_COLOR)));
+
+ GuiLine(RAYGUI_CLITERAL(Rectangle){ bounds.x, bounds.y - GuiGetStyle(DEFAULT, TEXT_SIZE)/2, bounds.width, (float)GuiGetStyle(DEFAULT, TEXT_SIZE) }, text);
+ //--------------------------------------------------------------------
+
+ return result;
+}
+
+// Line control
+int GuiLine(Rectangle bounds, const char *text)
+{
+ #if !defined(RAYGUI_LINE_MARGIN_TEXT)
+ #define RAYGUI_LINE_MARGIN_TEXT 12
+ #endif
+ #if !defined(RAYGUI_LINE_TEXT_PADDING)
+ #define RAYGUI_LINE_TEXT_PADDING 4
+ #endif
+
+ int result = 0;
+ GuiState state = guiState;
+
+ Color color = GetColor(GuiGetStyle(DEFAULT, (state == STATE_DISABLED)? (int)BORDER_COLOR_DISABLED : (int)LINE_COLOR));
+
+ // Draw control
+ //--------------------------------------------------------------------
+ if (text == NULL) GuiDrawRectangle(RAYGUI_CLITERAL(Rectangle){ bounds.x, bounds.y + bounds.height/2, bounds.width, 1 }, 0, BLANK, color);
+ else
+ {
+ Rectangle textBounds = { 0 };
+ textBounds.width = (float)GuiGetTextWidth(text) + 2;
+ textBounds.height = bounds.height;
+ textBounds.x = bounds.x + RAYGUI_LINE_MARGIN_TEXT;
+ textBounds.y = bounds.y;
+
+ // Draw line with embedded text label: "--- text --------------"
+ GuiDrawRectangle(RAYGUI_CLITERAL(Rectangle){ bounds.x, bounds.y + bounds.height/2, RAYGUI_LINE_MARGIN_TEXT - RAYGUI_LINE_TEXT_PADDING, 1 }, 0, BLANK, color);
+ GuiDrawText(text, textBounds, TEXT_ALIGN_LEFT, color);
+ GuiDrawRectangle(RAYGUI_CLITERAL(Rectangle){ bounds.x + 12 + textBounds.width + 4, bounds.y + bounds.height/2, bounds.width - textBounds.width - RAYGUI_LINE_MARGIN_TEXT - RAYGUI_LINE_TEXT_PADDING, 1 }, 0, BLANK, color);
+ }
+ //--------------------------------------------------------------------
+
+ return result;
+}
+
+// Panel control
+int GuiPanel(Rectangle bounds, const char *text)
+{
+ #if !defined(RAYGUI_PANEL_BORDER_WIDTH)
+ #define RAYGUI_PANEL_BORDER_WIDTH 1
+ #endif
+
+ int result = 0;
+ GuiState state = guiState;
+
+ // Text will be drawn as a header bar (if provided)
+ Rectangle statusBar = { bounds.x, bounds.y, bounds.width, (float)RAYGUI_WINDOWBOX_STATUSBAR_HEIGHT };
+ if ((text != NULL) && (bounds.height < RAYGUI_WINDOWBOX_STATUSBAR_HEIGHT*2.0f)) bounds.height = RAYGUI_WINDOWBOX_STATUSBAR_HEIGHT*2.0f;
+
+ if (text != NULL)
+ {
+ // Move panel bounds after the header bar
+ bounds.y += (float)RAYGUI_WINDOWBOX_STATUSBAR_HEIGHT - 1;
+ bounds.height -= (float)RAYGUI_WINDOWBOX_STATUSBAR_HEIGHT - 1;
+ }
+
+ // Draw control
+ //--------------------------------------------------------------------
+ if (text != NULL) GuiStatusBar(statusBar, text); // Draw panel header as status bar
+
+ GuiDrawRectangle(bounds, RAYGUI_PANEL_BORDER_WIDTH, GetColor(GuiGetStyle(DEFAULT, (state == STATE_DISABLED)? (int)BORDER_COLOR_DISABLED : (int)LINE_COLOR)),
+ GetColor(GuiGetStyle(DEFAULT, (state == STATE_DISABLED)? (int)BASE_COLOR_DISABLED : (int)BACKGROUND_COLOR)));
+ //--------------------------------------------------------------------
+
+ return result;
+}
+
+// Tab Bar control
+// NOTE: Using GuiToggle() for the TABS
+int GuiTabBar(Rectangle bounds, const char **text, int count, int *active)
+{
+ #define RAYGUI_TABBAR_ITEM_WIDTH 148
+
+ int result = -1;
+ //GuiState state = guiState;
+
+ Rectangle tabBounds = { bounds.x, bounds.y, RAYGUI_TABBAR_ITEM_WIDTH, bounds.height };
+
+ if (*active < 0) *active = 0;
+ else if (*active > count - 1) *active = count - 1;
+
+ int offsetX = 0; // Required in case tabs go out of screen
+ offsetX = (*active + 2)*RAYGUI_TABBAR_ITEM_WIDTH - GetScreenWidth();
+ if (offsetX < 0) offsetX = 0;
+
+ bool toggle = false; // Required for individual toggles
+
+ // Draw control
+ //--------------------------------------------------------------------
+ for (int i = 0; i < count; i++)
+ {
+ tabBounds.x = bounds.x + (RAYGUI_TABBAR_ITEM_WIDTH + 4)*i - offsetX;
+
+ if (tabBounds.x < GetScreenWidth())
+ {
+ // Draw tabs as toggle controls
+ int textAlignment = GuiGetStyle(TOGGLE, TEXT_ALIGNMENT);
+ int textPadding = GuiGetStyle(TOGGLE, TEXT_PADDING);
+ GuiSetStyle(TOGGLE, TEXT_ALIGNMENT, TEXT_ALIGN_LEFT);
+ GuiSetStyle(TOGGLE, TEXT_PADDING, 8);
+
+ if (i == (*active))
+ {
+ toggle = true;
+ GuiToggle(tabBounds, text[i], &toggle);
+ }
+ else
+ {
+ toggle = false;
+ GuiToggle(tabBounds, text[i], &toggle);
+ if (toggle) *active = i;
+ }
+
+ // Close tab with middle mouse button pressed
+ if (CheckCollisionPointRec(GUI_POINTER_POSITION, tabBounds) && IsMouseButtonPressed(MOUSE_MIDDLE_BUTTON)) result = i;
+
+ GuiSetStyle(TOGGLE, TEXT_PADDING, textPadding);
+ GuiSetStyle(TOGGLE, TEXT_ALIGNMENT, textAlignment);
+
+ // Draw tab close button
+ // NOTE: Only draw close button for current tab: if (CheckCollisionPointRec(mousePosition, tabBounds))
+ int tempBorderWidth = GuiGetStyle(BUTTON, BORDER_WIDTH);
+ int tempTextAlignment = GuiGetStyle(BUTTON, TEXT_ALIGNMENT);
+ GuiSetStyle(BUTTON, BORDER_WIDTH, 1);
+ GuiSetStyle(BUTTON, TEXT_ALIGNMENT, TEXT_ALIGN_CENTER);
+#if defined(RAYGUI_NO_ICONS)
+ if (GuiButton(RAYGUI_CLITERAL(Rectangle){ tabBounds.x + tabBounds.width - 14 - 5, tabBounds.y + 5, 14, 14 }, "x")) result = i;
+#else
+ if (GuiButton(RAYGUI_CLITERAL(Rectangle){ tabBounds.x + tabBounds.width - 14 - 5, tabBounds.y + 5, 14, 14 }, GuiIconText(ICON_CROSS_SMALL, NULL))) result = i;
+#endif
+ GuiSetStyle(BUTTON, BORDER_WIDTH, tempBorderWidth);
+ GuiSetStyle(BUTTON, TEXT_ALIGNMENT, tempTextAlignment);
+ }
+ }
+
+ // Draw tab-bar bottom line
+ GuiDrawRectangle(RAYGUI_CLITERAL(Rectangle){ bounds.x, bounds.y + bounds.height - 1, bounds.width, 1 }, 0, BLANK, GetColor(GuiGetStyle(TOGGLE, BORDER_COLOR_NORMAL)));
+ //--------------------------------------------------------------------
+
+ return result; // Return as result the current TAB closing requested
+}
+
+// Scroll Panel control
+int GuiScrollPanel(Rectangle bounds, const char *text, Rectangle content, Vector2 *scroll, Rectangle *view)
+{
+ #define RAYGUI_MIN_SCROLLBAR_WIDTH 40
+ #define RAYGUI_MIN_SCROLLBAR_HEIGHT 40
+ #define RAYGUI_MIN_MOUSE_WHEEL_SPEED 20
+
+ int result = 0;
+ GuiState state = guiState;
+
+ Rectangle temp = { 0 };
+ if (view == NULL) view = &temp;
+
+ Vector2 scrollPos = { 0.0f, 0.0f };
+ if (scroll != NULL) scrollPos = *scroll;
+
+ // Text will be drawn as a header bar (if provided)
+ Rectangle statusBar = { bounds.x, bounds.y, bounds.width, (float)RAYGUI_WINDOWBOX_STATUSBAR_HEIGHT };
+ if (bounds.height < RAYGUI_WINDOWBOX_STATUSBAR_HEIGHT*2.0f) bounds.height = RAYGUI_WINDOWBOX_STATUSBAR_HEIGHT*2.0f;
+
+ if (text != NULL)
+ {
+ // Move panel bounds after the header bar
+ bounds.y += (float)RAYGUI_WINDOWBOX_STATUSBAR_HEIGHT - 1;
+ bounds.height -= (float)RAYGUI_WINDOWBOX_STATUSBAR_HEIGHT + 1;
+ }
+
+ bool hasHorizontalScrollBar = (content.width > bounds.width - 2*GuiGetStyle(DEFAULT, BORDER_WIDTH))? true : false;
+ bool hasVerticalScrollBar = (content.height > bounds.height - 2*GuiGetStyle(DEFAULT, BORDER_WIDTH))? true : false;
+
+ // Recheck to account for the other scrollbar being visible
+ if (!hasHorizontalScrollBar) hasHorizontalScrollBar = (hasVerticalScrollBar && (content.width > (bounds.width - 2*GuiGetStyle(DEFAULT, BORDER_WIDTH) - GuiGetStyle(LISTVIEW, SCROLLBAR_WIDTH))))? true : false;
+ if (!hasVerticalScrollBar) hasVerticalScrollBar = (hasHorizontalScrollBar && (content.height > (bounds.height - 2*GuiGetStyle(DEFAULT, BORDER_WIDTH) - GuiGetStyle(LISTVIEW, SCROLLBAR_WIDTH))))? true : false;
+
+ int horizontalScrollBarWidth = hasHorizontalScrollBar? GuiGetStyle(LISTVIEW, SCROLLBAR_WIDTH) : 0;
+ int verticalScrollBarWidth = hasVerticalScrollBar? GuiGetStyle(LISTVIEW, SCROLLBAR_WIDTH) : 0;
+ Rectangle horizontalScrollBar = {
+ (float)((GuiGetStyle(LISTVIEW, SCROLLBAR_SIDE) == SCROLLBAR_LEFT_SIDE)? (float)bounds.x + verticalScrollBarWidth : (float)bounds.x) + GuiGetStyle(DEFAULT, BORDER_WIDTH),
+ (float)bounds.y + bounds.height - horizontalScrollBarWidth - GuiGetStyle(DEFAULT, BORDER_WIDTH),
+ (float)bounds.width - verticalScrollBarWidth - 2*GuiGetStyle(DEFAULT, BORDER_WIDTH),
+ (float)horizontalScrollBarWidth
+ };
+ Rectangle verticalScrollBar = {
+ (float)((GuiGetStyle(LISTVIEW, SCROLLBAR_SIDE) == SCROLLBAR_LEFT_SIDE)? (float)bounds.x + GuiGetStyle(DEFAULT, BORDER_WIDTH) : (float)bounds.x + bounds.width - verticalScrollBarWidth - GuiGetStyle(DEFAULT, BORDER_WIDTH)),
+ (float)bounds.y + GuiGetStyle(DEFAULT, BORDER_WIDTH),
+ (float)verticalScrollBarWidth,
+ (float)bounds.height - horizontalScrollBarWidth - 2*GuiGetStyle(DEFAULT, BORDER_WIDTH)
+ };
+
+ // Make sure scroll bars have a minimum width/height
+ if (horizontalScrollBar.width < RAYGUI_MIN_SCROLLBAR_WIDTH) horizontalScrollBar.width = RAYGUI_MIN_SCROLLBAR_WIDTH;
+ if (verticalScrollBar.height < RAYGUI_MIN_SCROLLBAR_HEIGHT) verticalScrollBar.height = RAYGUI_MIN_SCROLLBAR_HEIGHT;
+
+ // Calculate view area (area without the scrollbars)
+ *view = (GuiGetStyle(LISTVIEW, SCROLLBAR_SIDE) == SCROLLBAR_LEFT_SIDE)?
+ RAYGUI_CLITERAL(Rectangle){ bounds.x + verticalScrollBarWidth + GuiGetStyle(DEFAULT, BORDER_WIDTH), bounds.y + GuiGetStyle(DEFAULT, BORDER_WIDTH), bounds.width - 2*GuiGetStyle(DEFAULT, BORDER_WIDTH) - verticalScrollBarWidth, bounds.height - 2*GuiGetStyle(DEFAULT, BORDER_WIDTH) - horizontalScrollBarWidth } :
+ RAYGUI_CLITERAL(Rectangle){ bounds.x + GuiGetStyle(DEFAULT, BORDER_WIDTH), bounds.y + GuiGetStyle(DEFAULT, BORDER_WIDTH), bounds.width - 2*GuiGetStyle(DEFAULT, BORDER_WIDTH) - verticalScrollBarWidth, bounds.height - 2*GuiGetStyle(DEFAULT, BORDER_WIDTH) - horizontalScrollBarWidth };
+
+ // Clip view area to the actual content size
+ if (view->width > content.width) view->width = content.width;
+ if (view->height > content.height) view->height = content.height;
+
+ float horizontalMin = hasHorizontalScrollBar? ((GuiGetStyle(LISTVIEW, SCROLLBAR_SIDE) == SCROLLBAR_LEFT_SIDE)? (float)-verticalScrollBarWidth : 0) - (float)GuiGetStyle(DEFAULT, BORDER_WIDTH) : (((float)GuiGetStyle(LISTVIEW, SCROLLBAR_SIDE) == SCROLLBAR_LEFT_SIDE)? (float)-verticalScrollBarWidth : 0) - (float)GuiGetStyle(DEFAULT, BORDER_WIDTH);
+ float horizontalMax = hasHorizontalScrollBar? content.width - bounds.width + (float)verticalScrollBarWidth + GuiGetStyle(DEFAULT, BORDER_WIDTH) - (((float)GuiGetStyle(LISTVIEW, SCROLLBAR_SIDE) == SCROLLBAR_LEFT_SIDE)? (float)verticalScrollBarWidth : 0) : (float)-GuiGetStyle(DEFAULT, BORDER_WIDTH);
+ float verticalMin = hasVerticalScrollBar? 0.0f : -1.0f;
+ float verticalMax = hasVerticalScrollBar? content.height - bounds.height + (float)horizontalScrollBarWidth + (float)GuiGetStyle(DEFAULT, BORDER_WIDTH) : (float)-GuiGetStyle(DEFAULT, BORDER_WIDTH);
+
+ // Update control
+ //--------------------------------------------------------------------
+ if ((state != STATE_DISABLED) && !guiLocked)
+ {
+ Vector2 mousePoint = GUI_POINTER_POSITION;
+
+ // Check button state
+ if (CheckCollisionPointRec(mousePoint, bounds))
+ {
+ if (GUI_BUTTON_DOWN) state = STATE_PRESSED;
+ else state = STATE_FOCUSED;
+
+#if defined(SUPPORT_SCROLLBAR_KEY_INPUT)
+ if (hasHorizontalScrollBar)
+ {
+ if (GUI_KEY_DOWN(KEY_RIGHT)) scrollPos.x -= GuiGetStyle(SCROLLBAR, SCROLL_SPEED);
+ if (GUI_KEY_DOWN(KEY_LEFT)) scrollPos.x += GuiGetStyle(SCROLLBAR, SCROLL_SPEED);
+ }
+
+ if (hasVerticalScrollBar)
+ {
+ if (GUI_KEY_DOWN(KEY_DOWN)) scrollPos.y -= GuiGetStyle(SCROLLBAR, SCROLL_SPEED);
+ if (GUI_KEY_DOWN(KEY_UP)) scrollPos.y += GuiGetStyle(SCROLLBAR, SCROLL_SPEED);
+ }
+#endif
+ float scrollDelta = GUI_SCROLL_DELTA;
+
+ // Set scrolling speed with mouse wheel based on ratio between bounds and content
+ Vector2 scrollSpeed = { content.width/bounds.width, content.height/bounds.height };
+ if (scrollSpeed.x < RAYGUI_MIN_MOUSE_WHEEL_SPEED) scrollSpeed.x = RAYGUI_MIN_MOUSE_WHEEL_SPEED;
+ if (scrollSpeed.y < RAYGUI_MIN_MOUSE_WHEEL_SPEED) scrollSpeed.y = RAYGUI_MIN_MOUSE_WHEEL_SPEED;
+
+ // Horizontal and vertical scrolling with mouse wheel
+ if (hasHorizontalScrollBar && (GUI_KEY_DOWN(KEY_LEFT_CONTROL) || GUI_KEY_DOWN(KEY_LEFT_SHIFT))) scrollPos.x += scrollDelta*scrollSpeed.x;
+ else scrollPos.y += scrollDelta*scrollSpeed.y; // Vertical scroll
+ }
+ }
+
+ // Normalize scroll values
+ if (scrollPos.x > -horizontalMin) scrollPos.x = -horizontalMin;
+ if (scrollPos.x < -horizontalMax) scrollPos.x = -horizontalMax;
+ if (scrollPos.y > -verticalMin) scrollPos.y = -verticalMin;
+ if (scrollPos.y < -verticalMax) scrollPos.y = -verticalMax;
+ //--------------------------------------------------------------------
+
+ // Draw control
+ //--------------------------------------------------------------------
+ if (text != NULL) GuiStatusBar(statusBar, text); // Draw panel header as status bar
+
+ GuiDrawRectangle(bounds, 0, BLANK, GetColor(GuiGetStyle(DEFAULT, BACKGROUND_COLOR))); // Draw background
+
+ // Save size of the scrollbar slider
+ const int slider = GuiGetStyle(SCROLLBAR, SCROLL_SLIDER_SIZE);
+
+ // Draw horizontal scrollbar if visible
+ if (hasHorizontalScrollBar)
+ {
+ // Change scrollbar slider size to show the diff in size between the content width and the widget width
+ GuiSetStyle(SCROLLBAR, SCROLL_SLIDER_SIZE, (int)(((bounds.width - 2*GuiGetStyle(DEFAULT, BORDER_WIDTH) - verticalScrollBarWidth)/(int)content.width)*((int)bounds.width - 2*GuiGetStyle(DEFAULT, BORDER_WIDTH) - verticalScrollBarWidth)));
+ scrollPos.x = (float)-GuiScrollBar(horizontalScrollBar, (int)-scrollPos.x, (int)horizontalMin, (int)horizontalMax);
+ }
+ else scrollPos.x = 0.0f;
+
+ // Draw vertical scrollbar if visible
+ if (hasVerticalScrollBar)
+ {
+ // Change scrollbar slider size to show the diff in size between the content height and the widget height
+ GuiSetStyle(SCROLLBAR, SCROLL_SLIDER_SIZE, (int)(((bounds.height - 2*GuiGetStyle(DEFAULT, BORDER_WIDTH) - horizontalScrollBarWidth)/(int)content.height)*((int)bounds.height - 2*GuiGetStyle(DEFAULT, BORDER_WIDTH) - horizontalScrollBarWidth)));
+ scrollPos.y = (float)-GuiScrollBar(verticalScrollBar, (int)-scrollPos.y, (int)verticalMin, (int)verticalMax);
+ }
+ else scrollPos.y = 0.0f;
+
+ // Draw detail corner rectangle if both scroll bars are visible
+ if (hasHorizontalScrollBar && hasVerticalScrollBar)
+ {
+ Rectangle corner = { (GuiGetStyle(LISTVIEW, SCROLLBAR_SIDE) == SCROLLBAR_LEFT_SIDE)? (bounds.x + GuiGetStyle(DEFAULT, BORDER_WIDTH) + 2) : (horizontalScrollBar.x + horizontalScrollBar.width + 2), verticalScrollBar.y + verticalScrollBar.height + 2, (float)horizontalScrollBarWidth - 4, (float)verticalScrollBarWidth - 4 };
+ GuiDrawRectangle(corner, 0, BLANK, GetColor(GuiGetStyle(LISTVIEW, TEXT + (state*3))));
+ }
+
+ // Draw scrollbar lines depending on current state
+ GuiDrawRectangle(bounds, GuiGetStyle(LISTVIEW, BORDER_WIDTH), GetColor(GuiGetStyle(LISTVIEW, BORDER + (state*3))), BLANK);
+
+ // Set scrollbar slider size back to the way it was before
+ GuiSetStyle(SCROLLBAR, SCROLL_SLIDER_SIZE, slider);
+ //--------------------------------------------------------------------
+
+ if (scroll != NULL) *scroll = scrollPos;
+
+ return result;
+}
+
+// Label control
+int GuiLabel(Rectangle bounds, const char *text)
+{
+ int result = 0;
+ GuiState state = guiState;
+
+ // Update control
+ //--------------------------------------------------------------------
+ //...
+ //--------------------------------------------------------------------
+
+ // Draw control
+ //--------------------------------------------------------------------
+ GuiDrawText(text, GetTextBounds(LABEL, bounds), GuiGetStyle(LABEL, TEXT_ALIGNMENT), GetColor(GuiGetStyle(LABEL, TEXT + (state*3))));
+ //--------------------------------------------------------------------
+
+ return result;
+}
+
+// Button control, returns true when clicked
+int GuiButton(Rectangle bounds, const char *text)
+{
+ int result = 0;
+ GuiState state = guiState;
+
+ // Update control
+ //--------------------------------------------------------------------
+ if ((state != STATE_DISABLED) && !guiLocked && !guiControlExclusiveMode)
+ {
+ Vector2 mousePoint = GUI_POINTER_POSITION;
+
+ // Check button state
+ if (CheckCollisionPointRec(mousePoint, bounds))
+ {
+ if (GUI_BUTTON_DOWN) state = STATE_PRESSED;
+ else state = STATE_FOCUSED;
+
+ if (GUI_BUTTON_RELEASED) result = 1;
+ }
+ }
+ //--------------------------------------------------------------------
+
+ // Draw control
+ //--------------------------------------------------------------------
+ GuiDrawRectangle(bounds, GuiGetStyle(BUTTON, BORDER_WIDTH), GetColor(GuiGetStyle(BUTTON, BORDER + (state*3))), GetColor(GuiGetStyle(BUTTON, BASE + (state*3))));
+ GuiDrawText(text, GetTextBounds(BUTTON, bounds), GuiGetStyle(BUTTON, TEXT_ALIGNMENT), GetColor(GuiGetStyle(BUTTON, TEXT + (state*3))));
+
+ if (state == STATE_FOCUSED) GuiTooltip(bounds);
+ //------------------------------------------------------------------
+
+ return result; // Button pressed: result = 1
+}
+
+// Label button control
+int GuiLabelButton(Rectangle bounds, const char *text)
+{
+ GuiState state = guiState;
+ bool pressed = false;
+
+ // NOTE: Force bounds.width to be all text
+ float textWidth = (float)GuiGetTextWidth(text);
+ if ((bounds.width - 2*GuiGetStyle(LABEL, BORDER_WIDTH) - 2*GuiGetStyle(LABEL, TEXT_PADDING)) < textWidth) bounds.width = textWidth + 2*GuiGetStyle(LABEL, BORDER_WIDTH) + 2*GuiGetStyle(LABEL, TEXT_PADDING) + 2;
+
+ // Update control
+ //--------------------------------------------------------------------
+ if ((state != STATE_DISABLED) && !guiLocked && !guiControlExclusiveMode)
+ {
+ Vector2 mousePoint = GUI_POINTER_POSITION;
+
+ // Check checkbox state
+ if (CheckCollisionPointRec(mousePoint, bounds))
+ {
+ if (GUI_BUTTON_DOWN) state = STATE_PRESSED;
+ else state = STATE_FOCUSED;
+
+ if (GUI_BUTTON_RELEASED) pressed = true;
+ }
+ }
+ //--------------------------------------------------------------------
+
+ // Draw control
+ //--------------------------------------------------------------------
+ GuiDrawText(text, GetTextBounds(LABEL, bounds), GuiGetStyle(LABEL, TEXT_ALIGNMENT), GetColor(GuiGetStyle(LABEL, TEXT + (state*3))));
+ //--------------------------------------------------------------------
+
+ return pressed;
+}
+
+// Toggle Button control
+int GuiToggle(Rectangle bounds, const char *text, bool *active)
+{
+ int result = 0;
+ GuiState state = guiState;
+
+ bool temp = false;
+ if (active == NULL) active = &temp;
+
+ // Update control
+ //--------------------------------------------------------------------
+ if ((state != STATE_DISABLED) && !guiLocked && !guiControlExclusiveMode)
+ {
+ Vector2 mousePoint = GUI_POINTER_POSITION;
+
+ // Check toggle button state
+ if (CheckCollisionPointRec(mousePoint, bounds))
+ {
+ if (GUI_BUTTON_DOWN) state = STATE_PRESSED;
+ else if (GUI_BUTTON_RELEASED)
+ {
+ state = STATE_NORMAL;
+ *active = !(*active);
+ }
+ else state = STATE_FOCUSED;
+ }
+ }
+ //--------------------------------------------------------------------
+
+ // Draw control
+ //--------------------------------------------------------------------
+ if (state == STATE_NORMAL)
+ {
+ GuiDrawRectangle(bounds, GuiGetStyle(TOGGLE, BORDER_WIDTH), GetColor(GuiGetStyle(TOGGLE, ((*active)? BORDER_COLOR_PRESSED : (BORDER + state*3)))), GetColor(GuiGetStyle(TOGGLE, ((*active)? BASE_COLOR_PRESSED : (BASE + state*3)))));
+ GuiDrawText(text, GetTextBounds(TOGGLE, bounds), GuiGetStyle(TOGGLE, TEXT_ALIGNMENT), GetColor(GuiGetStyle(TOGGLE, ((*active)? TEXT_COLOR_PRESSED : (TEXT + state*3)))));
+ }
+ else
+ {
+ GuiDrawRectangle(bounds, GuiGetStyle(TOGGLE, BORDER_WIDTH), GetColor(GuiGetStyle(TOGGLE, BORDER + state*3)), GetColor(GuiGetStyle(TOGGLE, BASE + state*3)));
+ GuiDrawText(text, GetTextBounds(TOGGLE, bounds), GuiGetStyle(TOGGLE, TEXT_ALIGNMENT), GetColor(GuiGetStyle(TOGGLE, TEXT + state*3)));
+ }
+
+ if (state == STATE_FOCUSED) GuiTooltip(bounds);
+ //--------------------------------------------------------------------
+
+ return result;
+}
+
+// Toggle Group control
+int GuiToggleGroup(Rectangle bounds, const char *text, int *active)
+{
+ #if !defined(RAYGUI_TOGGLEGROUP_MAX_ITEMS)
+ #define RAYGUI_TOGGLEGROUP_MAX_ITEMS 32
+ #endif
+
+ int result = 0;
+ float initBoundsX = bounds.x;
+
+ int temp = 0;
+ if (active == NULL) active = &temp;
+
+ bool toggle = false; // Required for individual toggles
+
+ // Get substrings items from text (items pointers)
+ int rows[RAYGUI_TOGGLEGROUP_MAX_ITEMS] = { 0 };
+ int itemCount = 0;
+ const char **items = GuiTextSplit(text, ';', &itemCount, rows);
+
+ int prevRow = rows[0];
+
+ for (int i = 0; i < itemCount; i++)
+ {
+ if (prevRow != rows[i])
+ {
+ bounds.x = initBoundsX;
+ bounds.y += (bounds.height + GuiGetStyle(TOGGLE, GROUP_PADDING));
+ prevRow = rows[i];
+ }
+
+ if (i == (*active))
+ {
+ toggle = true;
+ GuiToggle(bounds, items[i], &toggle);
+ }
+ else
+ {
+ toggle = false;
+ GuiToggle(bounds, items[i], &toggle);
+ if (toggle) *active = i;
+ }
+
+ bounds.x += (bounds.width + GuiGetStyle(TOGGLE, GROUP_PADDING));
+ }
+
+ return result;
+}
+
+// Toggle Slider control extended
+int GuiToggleSlider(Rectangle bounds, const char *text, int *active)
+{
+ int result = 0;
+ GuiState state = guiState;
+
+ int temp = 0;
+ if (active == NULL) active = &temp;
+
+ //bool toggle = false; // Required for individual toggles
+
+ // Get substrings items from text (items pointers)
+ int itemCount = 0;
+ const char **items = NULL;
+
+ if (text != NULL) items = GuiTextSplit(text, ';', &itemCount, NULL);
+
+ Rectangle slider = {
+ 0, // Calculated later depending on the active toggle
+ bounds.y + GuiGetStyle(SLIDER, BORDER_WIDTH) + GuiGetStyle(SLIDER, SLIDER_PADDING),
+ (bounds.width - 2*GuiGetStyle(SLIDER, BORDER_WIDTH) - (itemCount + 1)*GuiGetStyle(SLIDER, SLIDER_PADDING))/itemCount,
+ bounds.height - 2*GuiGetStyle(SLIDER, BORDER_WIDTH) - 2*GuiGetStyle(SLIDER, SLIDER_PADDING) };
+
+ // Update control
+ //--------------------------------------------------------------------
+ if ((state != STATE_DISABLED) && !guiLocked)
+ {
+ Vector2 mousePoint = GUI_POINTER_POSITION;
+
+ if (CheckCollisionPointRec(mousePoint, bounds))
+ {
+ if (GUI_BUTTON_DOWN) state = STATE_PRESSED;
+ else if (GUI_BUTTON_RELEASED)
+ {
+ state = STATE_PRESSED;
+ (*active)++;
+ result = 1;
+ }
+ else state = STATE_FOCUSED;
+ }
+
+ if ((*active) && (state != STATE_FOCUSED)) state = STATE_PRESSED;
+ }
+
+ if (*active >= itemCount) *active = 0;
+ slider.x = bounds.x + GuiGetStyle(SLIDER, BORDER_WIDTH) + (*active + 1)*GuiGetStyle(SLIDER, SLIDER_PADDING) + (*active)*slider.width;
+ //--------------------------------------------------------------------
+
+ // Draw control
+ //--------------------------------------------------------------------
+ GuiDrawRectangle(bounds, GuiGetStyle(SLIDER, BORDER_WIDTH), GetColor(GuiGetStyle(TOGGLE, BORDER + (state*3))),
+ GetColor(GuiGetStyle(TOGGLE, BASE_COLOR_NORMAL)));
+
+ // Draw internal slider
+ if (state == STATE_NORMAL) GuiDrawRectangle(slider, 0, BLANK, GetColor(GuiGetStyle(SLIDER, BASE_COLOR_PRESSED)));
+ else if (state == STATE_FOCUSED) GuiDrawRectangle(slider, 0, BLANK, GetColor(GuiGetStyle(SLIDER, BASE_COLOR_FOCUSED)));
+ else if (state == STATE_PRESSED) GuiDrawRectangle(slider, 0, BLANK, GetColor(GuiGetStyle(SLIDER, BASE_COLOR_PRESSED)));
+
+ // Draw text in slider
+ if (text != NULL)
+ {
+ Rectangle textBounds = { 0 };
+ textBounds.width = (float)GuiGetTextWidth(text);
+ textBounds.height = (float)GuiGetStyle(DEFAULT, TEXT_SIZE);
+ textBounds.x = slider.x + slider.width/2 - textBounds.width/2;
+ textBounds.y = bounds.y + bounds.height/2 - GuiGetStyle(DEFAULT, TEXT_SIZE)/2;
+
+ GuiDrawText(items[*active], textBounds, GuiGetStyle(TOGGLE, TEXT_ALIGNMENT), Fade(GetColor(GuiGetStyle(TOGGLE, TEXT + (state*3))), guiAlpha));
+ }
+ //--------------------------------------------------------------------
+
+ return result;
+}
+
+// Check Box control, returns 1 when state changed
+int GuiCheckBox(Rectangle bounds, const char *text, bool *checked)
+{
+ int result = 0;
+ GuiState state = guiState;
+
+ bool temp = false;
+ if (checked == NULL) checked = &temp;
+
+ Rectangle textBounds = { 0 };
+
+ if (text != NULL)
+ {
+ textBounds.width = (float)GuiGetTextWidth(text) + 2;
+ textBounds.height = (float)GuiGetStyle(DEFAULT, TEXT_SIZE);
+ textBounds.x = bounds.x + bounds.width + GuiGetStyle(CHECKBOX, TEXT_PADDING);
+ textBounds.y = bounds.y + bounds.height/2 - GuiGetStyle(DEFAULT, TEXT_SIZE)/2;
+ if (GuiGetStyle(CHECKBOX, TEXT_ALIGNMENT) == TEXT_ALIGN_LEFT) textBounds.x = bounds.x - textBounds.width - GuiGetStyle(CHECKBOX, TEXT_PADDING);
+ }
+
+ // Update control
+ //--------------------------------------------------------------------
+ if ((state != STATE_DISABLED) && !guiLocked && !guiControlExclusiveMode)
+ {
+ Vector2 mousePoint = GUI_POINTER_POSITION;
+
+ Rectangle totalBounds = {
+ (GuiGetStyle(CHECKBOX, TEXT_ALIGNMENT) == TEXT_ALIGN_LEFT)? textBounds.x : bounds.x,
+ bounds.y,
+ bounds.width + textBounds.width + GuiGetStyle(CHECKBOX, TEXT_PADDING),
+ bounds.height,
+ };
+
+ // Check checkbox state
+ if (CheckCollisionPointRec(mousePoint, totalBounds))
+ {
+ if (GUI_BUTTON_DOWN) state = STATE_PRESSED;
+ else state = STATE_FOCUSED;
+
+ if (GUI_BUTTON_RELEASED)
+ {
+ *checked = !(*checked);
+ result = 1;
+ }
+ }
+ }
+ //--------------------------------------------------------------------
+
+ // Draw control
+ //--------------------------------------------------------------------
+ GuiDrawRectangle(bounds, GuiGetStyle(CHECKBOX, BORDER_WIDTH), GetColor(GuiGetStyle(CHECKBOX, BORDER + (state*3))), BLANK);
+
+ if (*checked)
+ {
+ Rectangle check = { bounds.x + GuiGetStyle(CHECKBOX, BORDER_WIDTH) + GuiGetStyle(CHECKBOX, CHECK_PADDING),
+ bounds.y + GuiGetStyle(CHECKBOX, BORDER_WIDTH) + GuiGetStyle(CHECKBOX, CHECK_PADDING),
+ bounds.width - 2*(GuiGetStyle(CHECKBOX, BORDER_WIDTH) + GuiGetStyle(CHECKBOX, CHECK_PADDING)),
+ bounds.height - 2*(GuiGetStyle(CHECKBOX, BORDER_WIDTH) + GuiGetStyle(CHECKBOX, CHECK_PADDING)) };
+ GuiDrawRectangle(check, 0, BLANK, GetColor(GuiGetStyle(CHECKBOX, TEXT + state*3)));
+ }
+
+ GuiDrawText(text, textBounds, (GuiGetStyle(CHECKBOX, TEXT_ALIGNMENT) == TEXT_ALIGN_RIGHT)? TEXT_ALIGN_LEFT : TEXT_ALIGN_RIGHT, GetColor(GuiGetStyle(LABEL, TEXT + (state*3))));
+ //--------------------------------------------------------------------
+
+ return result;
+}
+
+// Combo Box control
+int GuiComboBox(Rectangle bounds, const char *text, int *active)
+{
+ int result = 0;
+ GuiState state = guiState;
+
+ int temp = 0;
+ if (active == NULL) active = &temp;
+
+ bounds.width -= (GuiGetStyle(COMBOBOX, COMBO_BUTTON_WIDTH) + GuiGetStyle(COMBOBOX, COMBO_BUTTON_SPACING));
+
+ Rectangle selector = { (float)bounds.x + bounds.width + GuiGetStyle(COMBOBOX, COMBO_BUTTON_SPACING),
+ (float)bounds.y, (float)GuiGetStyle(COMBOBOX, COMBO_BUTTON_WIDTH), (float)bounds.height };
+
+ // Get substrings items from text (items pointers, lengths and count)
+ int itemCount = 0;
+ const char **items = GuiTextSplit(text, ';', &itemCount, NULL);
+
+ if (*active < 0) *active = 0;
+ else if (*active > (itemCount - 1)) *active = itemCount - 1;
+
+ // Update control
+ //--------------------------------------------------------------------
+ if ((state != STATE_DISABLED) && !guiLocked && (itemCount > 1) && !guiControlExclusiveMode)
+ {
+ Vector2 mousePoint = GUI_POINTER_POSITION;
+
+ if (CheckCollisionPointRec(mousePoint, bounds) ||
+ CheckCollisionPointRec(mousePoint, selector))
+ {
+ if (GUI_BUTTON_PRESSED)
+ {
+ *active += 1;
+ if (*active >= itemCount) *active = 0; // Cyclic combobox
+ }
+
+ if (GUI_BUTTON_DOWN) state = STATE_PRESSED;
+ else state = STATE_FOCUSED;
+ }
+ }
+ //--------------------------------------------------------------------
+
+ // Draw control
+ //--------------------------------------------------------------------
+ // Draw combo box main
+ GuiDrawRectangle(bounds, GuiGetStyle(COMBOBOX, BORDER_WIDTH), GetColor(GuiGetStyle(COMBOBOX, BORDER + (state*3))), GetColor(GuiGetStyle(COMBOBOX, BASE + (state*3))));
+ GuiDrawText(items[*active], GetTextBounds(COMBOBOX, bounds), GuiGetStyle(COMBOBOX, TEXT_ALIGNMENT), GetColor(GuiGetStyle(COMBOBOX, TEXT + (state*3))));
+
+ // Draw selector using a custom button
+ // NOTE: BORDER_WIDTH and TEXT_ALIGNMENT forced values
+ int tempBorderWidth = GuiGetStyle(BUTTON, BORDER_WIDTH);
+ int tempTextAlign = GuiGetStyle(BUTTON, TEXT_ALIGNMENT);
+ GuiSetStyle(BUTTON, BORDER_WIDTH, 1);
+ GuiSetStyle(BUTTON, TEXT_ALIGNMENT, TEXT_ALIGN_CENTER);
+
+ GuiButton(selector, TextFormat("%i/%i", *active + 1, itemCount));
+
+ GuiSetStyle(BUTTON, TEXT_ALIGNMENT, tempTextAlign);
+ GuiSetStyle(BUTTON, BORDER_WIDTH, tempBorderWidth);
+ //--------------------------------------------------------------------
+
+ return result;
+}
+
+// Dropdown Box control
+// NOTE: Returns mouse click
+int GuiDropdownBox(Rectangle bounds, const char *text, int *active, bool editMode)
+{
+ int result = 0;
+ GuiState state = guiState;
+
+ int temp = 0;
+ if (active == NULL) active = &temp;
+
+ int itemSelected = *active;
+ int itemFocused = -1;
+
+ int direction = 0; // Dropdown box open direction: down (default)
+ if (GuiGetStyle(DROPDOWNBOX, DROPDOWN_ROLL_UP) == 1) direction = 1; // Up
+
+ // Get substrings items from text (items pointers, lengths and count)
+ int itemCount = 0;
+ const char **items = GuiTextSplit(text, ';', &itemCount, NULL);
+
+ Rectangle boundsOpen = bounds;
+ boundsOpen.height = (itemCount + 1)*(bounds.height + GuiGetStyle(DROPDOWNBOX, DROPDOWN_ITEMS_SPACING));
+ if (direction == 1) boundsOpen.y -= itemCount*(bounds.height + GuiGetStyle(DROPDOWNBOX, DROPDOWN_ITEMS_SPACING)) + GuiGetStyle(DROPDOWNBOX, DROPDOWN_ITEMS_SPACING);
+
+ Rectangle itemBounds = bounds;
+
+ // Update control
+ //--------------------------------------------------------------------
+ if ((state != STATE_DISABLED) && (editMode || !guiLocked) && (itemCount > 1) && !guiControlExclusiveMode)
+ {
+ Vector2 mousePoint = GUI_POINTER_POSITION;
+
+ if (editMode)
+ {
+ state = STATE_PRESSED;
+
+ // Check if mouse has been pressed or released outside limits
+ if (!CheckCollisionPointRec(mousePoint, boundsOpen))
+ {
+ if (GUI_BUTTON_PRESSED || GUI_BUTTON_RELEASED) result = 1;
+ }
+
+ // Check if already selected item has been pressed again
+ if (CheckCollisionPointRec(mousePoint, bounds) && GUI_BUTTON_PRESSED) result = 1;
+
+ // Check focused and selected item
+ for (int i = 0; i < itemCount; i++)
+ {
+ // Update item rectangle y position for next item
+ if (direction == 0) itemBounds.y += (bounds.height + GuiGetStyle(DROPDOWNBOX, DROPDOWN_ITEMS_SPACING));
+ else itemBounds.y -= (bounds.height + GuiGetStyle(DROPDOWNBOX, DROPDOWN_ITEMS_SPACING));
+
+ if (CheckCollisionPointRec(mousePoint, itemBounds))
+ {
+ itemFocused = i;
+ if (GUI_BUTTON_RELEASED)
+ {
+ itemSelected = i;
+ result = 1; // Item selected
+ }
+ break;
+ }
+ }
+
+ itemBounds = bounds;
+ }
+ else
+ {
+ if (CheckCollisionPointRec(mousePoint, bounds))
+ {
+ if (GUI_BUTTON_PRESSED)
+ {
+ result = 1;
+ state = STATE_PRESSED;
+ }
+ else state = STATE_FOCUSED;
+ }
+ }
+ }
+ //--------------------------------------------------------------------
+
+ // Draw control
+ //--------------------------------------------------------------------
+ if (editMode) GuiPanel(boundsOpen, NULL);
+
+ GuiDrawRectangle(bounds, GuiGetStyle(DROPDOWNBOX, BORDER_WIDTH), GetColor(GuiGetStyle(DROPDOWNBOX, BORDER + state*3)), GetColor(GuiGetStyle(DROPDOWNBOX, BASE + state*3)));
+ GuiDrawText(items[itemSelected], GetTextBounds(DROPDOWNBOX, bounds), GuiGetStyle(DROPDOWNBOX, TEXT_ALIGNMENT), GetColor(GuiGetStyle(DROPDOWNBOX, TEXT + state*3)));
+
+ if (editMode)
+ {
+ // Draw visible items
+ for (int i = 0; i < itemCount; i++)
+ {
+ // Update item rectangle y position for next item
+ if (direction == 0) itemBounds.y += (bounds.height + GuiGetStyle(DROPDOWNBOX, DROPDOWN_ITEMS_SPACING));
+ else itemBounds.y -= (bounds.height + GuiGetStyle(DROPDOWNBOX, DROPDOWN_ITEMS_SPACING));
+
+ if (i == itemSelected)
+ {
+ GuiDrawRectangle(itemBounds, GuiGetStyle(DROPDOWNBOX, BORDER_WIDTH), GetColor(GuiGetStyle(DROPDOWNBOX, BORDER_COLOR_PRESSED)), GetColor(GuiGetStyle(DROPDOWNBOX, BASE_COLOR_PRESSED)));
+ GuiDrawText(items[i], GetTextBounds(DROPDOWNBOX, itemBounds), GuiGetStyle(DROPDOWNBOX, TEXT_ALIGNMENT), GetColor(GuiGetStyle(DROPDOWNBOX, TEXT_COLOR_PRESSED)));
+ }
+ else if (i == itemFocused)
+ {
+ GuiDrawRectangle(itemBounds, GuiGetStyle(DROPDOWNBOX, BORDER_WIDTH), GetColor(GuiGetStyle(DROPDOWNBOX, BORDER_COLOR_FOCUSED)), GetColor(GuiGetStyle(DROPDOWNBOX, BASE_COLOR_FOCUSED)));
+ GuiDrawText(items[i], GetTextBounds(DROPDOWNBOX, itemBounds), GuiGetStyle(DROPDOWNBOX, TEXT_ALIGNMENT), GetColor(GuiGetStyle(DROPDOWNBOX, TEXT_COLOR_FOCUSED)));
+ }
+ else GuiDrawText(items[i], GetTextBounds(DROPDOWNBOX, itemBounds), GuiGetStyle(DROPDOWNBOX, TEXT_ALIGNMENT), GetColor(GuiGetStyle(DROPDOWNBOX, TEXT_COLOR_NORMAL)));
+ }
+ }
+
+ if (!GuiGetStyle(DROPDOWNBOX, DROPDOWN_ARROW_HIDDEN))
+ {
+ // Draw arrows (using icon if available)
+#if defined(RAYGUI_NO_ICONS)
+ GuiDrawText("v", RAYGUI_CLITERAL(Rectangle){ bounds.x + bounds.width - GuiGetStyle(DROPDOWNBOX, ARROW_PADDING), bounds.y + bounds.height/2 - 2, 10, 10 },
+ TEXT_ALIGN_CENTER, GetColor(GuiGetStyle(DROPDOWNBOX, TEXT + (state*3))));
+#else
+ GuiDrawText(direction? "#121#" : "#120#", RAYGUI_CLITERAL(Rectangle){ bounds.x + bounds.width - GuiGetStyle(DROPDOWNBOX, ARROW_PADDING), bounds.y + bounds.height/2 - 6, 10, 10 },
+ TEXT_ALIGN_CENTER, GetColor(GuiGetStyle(DROPDOWNBOX, TEXT + (state*3)))); // ICON_ARROW_DOWN_FILL
+#endif
+ }
+ //--------------------------------------------------------------------
+
+ *active = itemSelected;
+
+ // TODO: Use result to return more internal states: mouse-press out-of-bounds, mouse-press over selected-item...
+ return result; // Mouse click: result = 1
+}
+
+// Text Box control
+// NOTE: Returns true on ENTER pressed (useful for data validation)
+int GuiTextBox(Rectangle bounds, char *text, int textSize, bool editMode)
+{
+ #if !defined(RAYGUI_TEXTBOX_AUTO_CURSOR_COOLDOWN)
+ #define RAYGUI_TEXTBOX_AUTO_CURSOR_COOLDOWN 20 // Frames to wait for autocursor movement
+ #endif
+ #if !defined(RAYGUI_TEXTBOX_AUTO_CURSOR_DELAY)
+ #define RAYGUI_TEXTBOX_AUTO_CURSOR_DELAY 1 // Frames delay for autocursor movement
+ #endif
+
+ int result = 0;
+ GuiState state = guiState;
+
+ bool multiline = false; // TODO: Consider multiline text input
+ int wrapMode = GuiGetStyle(DEFAULT, TEXT_WRAP_MODE);
+
+ Rectangle textBounds = GetTextBounds(TEXTBOX, bounds);
+ int textLength = (text != NULL)? (int)strlen(text) : 0; // Get current text length
+ int thisCursorIndex = textBoxCursorIndex;
+ if (thisCursorIndex > textLength) thisCursorIndex = textLength;
+ int textWidth = GuiGetTextWidth(text) - GuiGetTextWidth(text + thisCursorIndex);
+ int textIndexOffset = 0; // Text index offset to start drawing in the box
+
+ // Cursor rectangle
+ // NOTE: Position X value should be updated
+ Rectangle cursor = {
+ textBounds.x + textWidth + GuiGetStyle(DEFAULT, TEXT_SPACING),
+ textBounds.y + textBounds.height/2 - GuiGetStyle(DEFAULT, TEXT_SIZE),
+ 2,
+ (float)GuiGetStyle(DEFAULT, TEXT_SIZE)*2
+ };
+
+ if (cursor.height >= bounds.height) cursor.height = bounds.height - GuiGetStyle(TEXTBOX, BORDER_WIDTH)*2;
+ if (cursor.y < (bounds.y + GuiGetStyle(TEXTBOX, BORDER_WIDTH))) cursor.y = bounds.y + GuiGetStyle(TEXTBOX, BORDER_WIDTH);
+
+ // Mouse cursor rectangle
+ // NOTE: Initialized outside of screen
+ Rectangle mouseCursor = cursor;
+ mouseCursor.x = -1;
+ mouseCursor.width = 1;
+
+ // Blink-cursor frame counter
+ //if (!autoCursorMode) blinkCursorFrameCounter++;
+ //else blinkCursorFrameCounter = 0;
+
+ // Update control
+ //--------------------------------------------------------------------
+ // WARNING: Text editing is only supported under certain conditions:
+ if ((state != STATE_DISABLED) && // Control not disabled
+ !GuiGetStyle(TEXTBOX, TEXT_READONLY) && // TextBox not on read-only mode
+ !guiLocked && // Gui not locked
+ !guiControlExclusiveMode && // No gui slider on dragging
+ (wrapMode == TEXT_WRAP_NONE)) // No wrap mode
+ {
+ Vector2 mousePosition = GUI_POINTER_POSITION;
+
+ if (editMode)
+ {
+ // GLOBAL: Auto-cursor movement logic
+ // NOTE: Keystrokes are handled repeatedly when button is held down for some time
+ if (GUI_KEY_DOWN(KEY_LEFT) || GUI_KEY_DOWN(KEY_RIGHT) || GUI_KEY_DOWN(KEY_UP) || GUI_KEY_DOWN(KEY_DOWN) || GUI_KEY_DOWN(KEY_BACKSPACE) || GUI_KEY_DOWN(KEY_DELETE)) autoCursorCounter++;
+ else autoCursorCounter = 0;
+
+ bool autoCursorShouldTrigger = (autoCursorCounter > RAYGUI_TEXTBOX_AUTO_CURSOR_COOLDOWN) && ((autoCursorCounter % RAYGUI_TEXTBOX_AUTO_CURSOR_DELAY) == 0);
+
+ state = STATE_PRESSED;
+
+ if (textBoxCursorIndex > textLength) textBoxCursorIndex = textLength;
+
+ // If text does not fit in the textbox and current cursor position is out of bounds,
+ // adding an index offset to text for drawing only what requires depending on cursor
+ while (textWidth >= textBounds.width)
+ {
+ int nextCodepointSize = 0;
+ GetCodepointNext(text + textIndexOffset, &nextCodepointSize);
+
+ textIndexOffset += nextCodepointSize;
+
+ textWidth = GuiGetTextWidth(text + textIndexOffset) - GuiGetTextWidth(text + textBoxCursorIndex);
+ }
+
+ int codepoint = GUI_INPUT_KEY; // Get Unicode codepoint
+ if (multiline && GUI_KEY_PRESSED(KEY_ENTER)) codepoint = (int)'\n';
+
+ // Encode codepoint as UTF-8
+ int codepointSize = 0;
+ const char *charEncoded = CodepointToUTF8(codepoint, &codepointSize);
+
+ // Handle text paste action
+ if (GUI_KEY_PRESSED(KEY_V) && (GUI_KEY_DOWN(KEY_LEFT_CONTROL) || GUI_KEY_DOWN(KEY_RIGHT_CONTROL)))
+ {
+ const char *pasteText = GetClipboardText();
+ if (pasteText != NULL)
+ {
+ int pasteLength = 0;
+ int pasteCodepoint;
+ int pasteCodepointSize;
+
+ // Count how many codepoints to copy, stopping at the first unwanted control character
+ while (true)
+ {
+ pasteCodepoint = GetCodepointNext(pasteText + pasteLength, &pasteCodepointSize);
+ if (textLength + pasteLength + pasteCodepointSize >= textSize) break;
+ if (!(multiline && (pasteCodepoint == (int)'\n')) && !(pasteCodepoint >= 32)) break;
+ pasteLength += pasteCodepointSize;
+ }
+
+ if (pasteLength > 0)
+ {
+ // Move forward data from cursor position
+ for (int i = textLength + pasteLength; i > textBoxCursorIndex; i--) text[i] = text[i - pasteLength];
+
+ // Paste data in at cursor
+ for (int i = 0; i < pasteLength; i++) text[textBoxCursorIndex + i] = pasteText[i];
+
+ textBoxCursorIndex += pasteLength;
+ textLength += pasteLength;
+ text[textLength] = '\0';
+ }
+ }
+ }
+ else if (((multiline && (codepoint == (int)'\n')) || (codepoint >= 32)) && ((textLength + codepointSize) < textSize))
+ {
+ // Adding codepoint to text, at current cursor position
+
+ // Move forward data from cursor position
+ for (int i = (textLength + codepointSize); i > textBoxCursorIndex; i--) text[i] = text[i - codepointSize];
+
+ // Add new codepoint in current cursor position
+ for (int i = 0; i < codepointSize; i++) text[textBoxCursorIndex + i] = charEncoded[i];
+
+ textBoxCursorIndex += codepointSize;
+ textLength += codepointSize;
+
+ // Make sure text last character is EOL
+ text[textLength] = '\0';
+ }
+
+ // Move cursor to start
+ if ((textLength > 0) && GUI_KEY_PRESSED(KEY_HOME)) textBoxCursorIndex = 0;
+
+ // Move cursor to end
+ if ((textLength > textBoxCursorIndex) && GUI_KEY_PRESSED(KEY_END)) textBoxCursorIndex = textLength;
+
+ // Delete related codepoints from text, after current cursor position
+ if ((textLength > textBoxCursorIndex) && GUI_KEY_PRESSED(KEY_DELETE) && (GUI_KEY_DOWN(KEY_LEFT_CONTROL) || GUI_KEY_DOWN(KEY_RIGHT_CONTROL)))
+ {
+ int offset = textBoxCursorIndex;
+ int accCodepointSize = 0;
+ int nextCodepointSize;
+ int nextCodepoint;
+
+ // Check characters of the same type to delete (either ASCII punctuation or anything non-whitespace)
+ // Not using isalnum() since it only works on ASCII characters
+ nextCodepoint = GetCodepointNext(text + offset, &nextCodepointSize);
+ bool puctuation = ispunct(nextCodepoint & 0xff);
+ while (offset < textLength)
+ {
+ if ((puctuation && !ispunct(nextCodepoint & 0xff)) || (!puctuation && (isspace(nextCodepoint & 0xff) || ispunct(nextCodepoint & 0xff))))
+ break;
+ offset += nextCodepointSize;
+ accCodepointSize += nextCodepointSize;
+ nextCodepoint = GetCodepointNext(text + offset, &nextCodepointSize);
+ }
+
+ // Check whitespace to delete (ASCII only)
+ while (offset < textLength)
+ {
+ if (!isspace(nextCodepoint & 0xff)) break;
+
+ offset += nextCodepointSize;
+ accCodepointSize += nextCodepointSize;
+ nextCodepoint = GetCodepointNext(text + offset, &nextCodepointSize);
+ }
+
+ // Move text after cursor forward (including final null terminator)
+ for (int i = offset; i <= textLength; i++) text[i - accCodepointSize] = text[i];
+
+ textLength -= accCodepointSize;
+ }
+
+ else if ((textLength > textBoxCursorIndex) && (GUI_KEY_PRESSED(KEY_DELETE) || (GUI_KEY_DOWN(KEY_DELETE) && autoCursorShouldTrigger)))
+ {
+ // Delete single codepoint from text, after current cursor position
+
+ int nextCodepointSize = 0;
+ GetCodepointNext(text + textBoxCursorIndex, &nextCodepointSize);
+
+ // Move text after cursor forward (including final null terminator)
+ for (int i = textBoxCursorIndex + nextCodepointSize; i <= textLength; i++) text[i - nextCodepointSize] = text[i];
+
+ textLength -= nextCodepointSize;
+ }
+
+ // Delete related codepoints from text, before current cursor position
+ if ((textBoxCursorIndex > 0) && GUI_KEY_PRESSED(KEY_BACKSPACE) && (GUI_KEY_DOWN(KEY_LEFT_CONTROL) || GUI_KEY_DOWN(KEY_RIGHT_CONTROL)))
+ {
+ int offset = textBoxCursorIndex;
+ int accCodepointSize = 0;
+ int prevCodepointSize = 0;
+ int prevCodepoint = 0;
+
+ // Check whitespace to delete (ASCII only)
+ while (offset > 0)
+ {
+ prevCodepoint = GetCodepointPrevious(text + offset, &prevCodepointSize);
+ if (!isspace(prevCodepoint & 0xff)) break;
+
+ offset -= prevCodepointSize;
+ accCodepointSize += prevCodepointSize;
+ }
+
+ // Check characters of the same type to delete (either ASCII punctuation or anything non-whitespace)
+ // Not using isalnum() since it only works on ASCII characters
+ bool puctuation = ispunct(prevCodepoint & 0xff);
+ while (offset > 0)
+ {
+ prevCodepoint = GetCodepointPrevious(text + offset, &prevCodepointSize);
+ if ((puctuation && !ispunct(prevCodepoint & 0xff)) || (!puctuation && (isspace(prevCodepoint & 0xff) || ispunct(prevCodepoint & 0xff)))) break;
+
+ offset -= prevCodepointSize;
+ accCodepointSize += prevCodepointSize;
+ }
+
+ // Move text after cursor forward (including final null terminator)
+ for (int i = textBoxCursorIndex; i <= textLength; i++) text[i - accCodepointSize] = text[i];
+
+ textLength -= accCodepointSize;
+ textBoxCursorIndex -= accCodepointSize;
+ }
+
+ else if ((textBoxCursorIndex > 0) && (GUI_KEY_PRESSED(KEY_BACKSPACE) || (GUI_KEY_DOWN(KEY_BACKSPACE) && autoCursorShouldTrigger)))
+ {
+ // Delete single codepoint from text, before current cursor position
+
+ int prevCodepointSize = 0;
+
+ GetCodepointPrevious(text + textBoxCursorIndex, &prevCodepointSize);
+
+ // Move text after cursor forward (including final null terminator)
+ for (int i = textBoxCursorIndex; i <= textLength; i++) text[i - prevCodepointSize] = text[i];
+
+ textLength -= prevCodepointSize;
+ textBoxCursorIndex -= prevCodepointSize;
+ }
+
+ // Move cursor position with keys
+ if ((textBoxCursorIndex > 0) && GUI_KEY_PRESSED(KEY_LEFT) && (GUI_KEY_DOWN(KEY_LEFT_CONTROL) || GUI_KEY_DOWN(KEY_RIGHT_CONTROL)))
+ {
+ int offset = textBoxCursorIndex;
+ //int accCodepointSize = 0;
+ int prevCodepointSize = 0;
+ int prevCodepoint = 0;
+
+ // Check whitespace to skip (ASCII only)
+ while (offset > 0)
+ {
+ prevCodepoint = GetCodepointPrevious(text + offset, &prevCodepointSize);
+ if (!isspace(prevCodepoint & 0xff)) break;
+
+ offset -= prevCodepointSize;
+ //accCodepointSize += prevCodepointSize;
+ }
+
+ // Check characters of the same type to skip (either ASCII punctuation or anything non-whitespace)
+ // Not using isalnum() since it only works on ASCII characters
+ bool puctuation = ispunct(prevCodepoint & 0xff);
+ while (offset > 0)
+ {
+ prevCodepoint = GetCodepointPrevious(text + offset, &prevCodepointSize);
+ if ((puctuation && !ispunct(prevCodepoint & 0xff)) || (!puctuation && (isspace(prevCodepoint & 0xff) || ispunct(prevCodepoint & 0xff)))) break;
+
+ offset -= prevCodepointSize;
+ //accCodepointSize += prevCodepointSize;
+ }
+
+ textBoxCursorIndex = offset;
+ }
+ else if ((textBoxCursorIndex > 0) && (GUI_KEY_PRESSED(KEY_LEFT) || (GUI_KEY_DOWN(KEY_LEFT) && autoCursorShouldTrigger)))
+ {
+ int prevCodepointSize = 0;
+ GetCodepointPrevious(text + textBoxCursorIndex, &prevCodepointSize);
+
+ textBoxCursorIndex -= prevCodepointSize;
+ }
+ else if ((textLength > textBoxCursorIndex) && GUI_KEY_PRESSED(KEY_RIGHT) && (GUI_KEY_DOWN(KEY_LEFT_CONTROL) || GUI_KEY_DOWN(KEY_RIGHT_CONTROL)))
+ {
+ int offset = textBoxCursorIndex;
+ //int accCodepointSize = 0;
+ int nextCodepointSize;
+ int nextCodepoint;
+
+ // Check characters of the same type to skip (either ASCII punctuation or anything non-whitespace)
+ // Not using isalnum() since it only works on ASCII characters
+ nextCodepoint = GetCodepointNext(text + offset, &nextCodepointSize);
+ bool puctuation = ispunct(nextCodepoint & 0xff);
+ while (offset < textLength)
+ {
+ if ((puctuation && !ispunct(nextCodepoint & 0xff)) || (!puctuation && (isspace(nextCodepoint & 0xff) || ispunct(nextCodepoint & 0xff)))) break;
+
+ offset += nextCodepointSize;
+ //accCodepointSize += nextCodepointSize;
+ nextCodepoint = GetCodepointNext(text + offset, &nextCodepointSize);
+ }
+
+ // Check whitespace to skip (ASCII only)
+ while (offset < textLength)
+ {
+ if (!isspace(nextCodepoint & 0xff)) break;
+
+ offset += nextCodepointSize;
+ //accCodepointSize += nextCodepointSize;
+ nextCodepoint = GetCodepointNext(text + offset, &nextCodepointSize);
+ }
+
+ textBoxCursorIndex = offset;
+ }
+ else if ((textLength > textBoxCursorIndex) && (GUI_KEY_PRESSED(KEY_RIGHT) || (GUI_KEY_DOWN(KEY_RIGHT) && autoCursorShouldTrigger)))
+ {
+ int nextCodepointSize = 0;
+ GetCodepointNext(text + textBoxCursorIndex, &nextCodepointSize);
+
+ textBoxCursorIndex += nextCodepointSize;
+ }
+
+ // Move cursor position with mouse
+ if (CheckCollisionPointRec(mousePosition, textBounds)) // Mouse hover text
+ {
+ float scaleFactor = (float)GuiGetStyle(DEFAULT, TEXT_SIZE)/(float)guiFont.baseSize;
+ int codepointIndex = 0;
+ float glyphWidth = 0.0f;
+ float widthToMouseX = 0;
+ int mouseCursorIndex = 0;
+
+ for (int i = textIndexOffset; i < textLength; i += codepointSize)
+ {
+ codepoint = GetCodepointNext(&text[i], &codepointSize);
+ codepointIndex = GetGlyphIndex(guiFont, codepoint);
+
+ if (guiFont.glyphs[codepointIndex].advanceX == 0) glyphWidth = ((float)guiFont.recs[codepointIndex].width*scaleFactor);
+ else glyphWidth = ((float)guiFont.glyphs[codepointIndex].advanceX*scaleFactor);
+
+ if (mousePosition.x <= (textBounds.x + (widthToMouseX + glyphWidth/2)))
+ {
+ mouseCursor.x = textBounds.x + widthToMouseX;
+ mouseCursorIndex = i;
+ break;
+ }
+
+ widthToMouseX += (glyphWidth + (float)GuiGetStyle(DEFAULT, TEXT_SPACING));
+ }
+
+ // Check if mouse cursor is at the last position
+ int textEndWidth = GuiGetTextWidth(text + textIndexOffset);
+ if (GUI_POINTER_POSITION.x >= (textBounds.x + textEndWidth - glyphWidth/2))
+ {
+ mouseCursor.x = textBounds.x + textEndWidth;
+ mouseCursorIndex = textLength;
+ }
+
+ // Place cursor at required index on mouse click
+ if ((mouseCursor.x >= 0) && GUI_BUTTON_PRESSED)
+ {
+ cursor.x = mouseCursor.x;
+ textBoxCursorIndex = mouseCursorIndex;
+ }
+ }
+ else mouseCursor.x = -1;
+
+ // Recalculate cursor position.y depending on textBoxCursorIndex
+ cursor.x = bounds.x + GuiGetStyle(TEXTBOX, TEXT_PADDING) + GuiGetTextWidth(text + textIndexOffset) - GuiGetTextWidth(text + textBoxCursorIndex) + GuiGetStyle(DEFAULT, TEXT_SPACING);
+ //if (multiline) cursor.y = GetTextLines()
+
+ // Finish text editing on ENTER or mouse click outside bounds
+ if ((!multiline && GUI_KEY_PRESSED(KEY_ENTER)) ||
+ (!CheckCollisionPointRec(mousePosition, bounds) && GUI_BUTTON_PRESSED))
+ {
+ textBoxCursorIndex = 0; // GLOBAL: Reset the shared cursor index
+ autoCursorCounter = 0; // GLOBAL: Reset counter for repeated keystrokes
+ result = 1;
+ }
+ }
+ else
+ {
+ if (CheckCollisionPointRec(mousePosition, bounds))
+ {
+ state = STATE_FOCUSED;
+
+ if (GUI_BUTTON_PRESSED)
+ {
+ textBoxCursorIndex = textLength; // GLOBAL: Place cursor index to the end of current text
+ autoCursorCounter = 0; // GLOBAL: Reset counter for repeated keystrokes
+ result = 1;
+ }
+ }
+ }
+ }
+ //--------------------------------------------------------------------
+
+ // Draw control
+ //--------------------------------------------------------------------
+ if (state == STATE_PRESSED)
+ {
+ GuiDrawRectangle(bounds, GuiGetStyle(TEXTBOX, BORDER_WIDTH), GetColor(GuiGetStyle(TEXTBOX, BORDER + (state*3))), GetColor(GuiGetStyle(TEXTBOX, BASE_COLOR_PRESSED)));
+ }
+ else if (state == STATE_DISABLED)
+ {
+ GuiDrawRectangle(bounds, GuiGetStyle(TEXTBOX, BORDER_WIDTH), GetColor(GuiGetStyle(TEXTBOX, BORDER + (state*3))), GetColor(GuiGetStyle(TEXTBOX, BASE_COLOR_DISABLED)));
+ }
+ else GuiDrawRectangle(bounds, GuiGetStyle(TEXTBOX, BORDER_WIDTH), GetColor(GuiGetStyle(TEXTBOX, BORDER + (state*3))), BLANK);
+
+ // Draw text considering index offset if required
+ // NOTE: Text index offset depends on cursor position
+ GuiDrawText(text + textIndexOffset, textBounds, GuiGetStyle(TEXTBOX, TEXT_ALIGNMENT), GetColor(GuiGetStyle(TEXTBOX, TEXT + (state*3))));
+
+ // Draw cursor
+ if (editMode && !GuiGetStyle(TEXTBOX, TEXT_READONLY))
+ {
+ //if (autoCursorMode || ((blinkCursorFrameCounter/40)%2 == 0))
+ GuiDrawRectangle(cursor, 0, BLANK, GetColor(GuiGetStyle(TEXTBOX, BORDER_COLOR_PRESSED)));
+
+ // Draw mouse position cursor (if required)
+ if (mouseCursor.x >= 0) GuiDrawRectangle(mouseCursor, 0, BLANK, GetColor(GuiGetStyle(TEXTBOX, BORDER_COLOR_PRESSED)));
+ }
+ else if (state == STATE_FOCUSED) GuiTooltip(bounds);
+ //--------------------------------------------------------------------
+
+ return result; // Mouse button pressed: result = 1
+}
+
+/*
+// Text Box control with multiple lines and word-wrap
+// NOTE: This text-box is readonly, no editing supported by default
+bool GuiTextBoxMulti(Rectangle bounds, char *text, int textSize, bool editMode)
+{
+ bool pressed = false;
+
+ GuiSetStyle(TEXTBOX, TEXT_READONLY, 1);
+ GuiSetStyle(DEFAULT, TEXT_WRAP_MODE, TEXT_WRAP_WORD); // WARNING: If wrap mode enabled, text editing is not supported
+ GuiSetStyle(DEFAULT, TEXT_ALIGNMENT_VERTICAL, TEXT_ALIGN_TOP);
+
+ // TODO: Implement methods to calculate cursor position properly
+ pressed = GuiTextBox(bounds, text, textSize, editMode);
+
+ GuiSetStyle(DEFAULT, TEXT_ALIGNMENT_VERTICAL, TEXT_ALIGN_MIDDLE);
+ GuiSetStyle(DEFAULT, TEXT_WRAP_MODE, TEXT_WRAP_NONE);
+ GuiSetStyle(TEXTBOX, TEXT_READONLY, 0);
+
+ return pressed;
+}
+*/
+
+// Spinner control, returns selected value
+int GuiSpinner(Rectangle bounds, const char *text, int *value, int minValue, int maxValue, bool editMode)
+{
+ int result = 1;
+ GuiState state = guiState;
+
+ int tempValue = *value;
+
+ Rectangle valueBoxBounds = {
+ bounds.x + GuiGetStyle(VALUEBOX, SPINNER_BUTTON_WIDTH) + GuiGetStyle(VALUEBOX, SPINNER_BUTTON_SPACING),
+ bounds.y,
+ bounds.width - 2*(GuiGetStyle(VALUEBOX, SPINNER_BUTTON_WIDTH) + GuiGetStyle(VALUEBOX, SPINNER_BUTTON_SPACING)), bounds.height };
+ Rectangle leftButtonBound = { (float)bounds.x, (float)bounds.y, (float)GuiGetStyle(VALUEBOX, SPINNER_BUTTON_WIDTH), (float)bounds.height };
+ Rectangle rightButtonBound = { (float)bounds.x + bounds.width - GuiGetStyle(VALUEBOX, SPINNER_BUTTON_WIDTH), (float)bounds.y,
+ (float)GuiGetStyle(VALUEBOX, SPINNER_BUTTON_WIDTH), (float)bounds.height };
+
+ Rectangle textBounds = { 0 };
+ if (text != NULL)
+ {
+ textBounds.width = (float)GuiGetTextWidth(text) + 2;
+ textBounds.height = (float)GuiGetStyle(DEFAULT, TEXT_SIZE);
+ textBounds.x = bounds.x + bounds.width + GuiGetStyle(VALUEBOX, TEXT_PADDING);
+ textBounds.y = bounds.y + bounds.height/2 - GuiGetStyle(DEFAULT, TEXT_SIZE)/2;
+ if (GuiGetStyle(VALUEBOX, TEXT_ALIGNMENT) == TEXT_ALIGN_LEFT) textBounds.x = bounds.x - textBounds.width - GuiGetStyle(VALUEBOX, TEXT_PADDING);
+ }
+
+ // Update control
+ //--------------------------------------------------------------------
+ if ((state != STATE_DISABLED) && !guiLocked && !guiControlExclusiveMode)
+ {
+ Vector2 mousePoint = GUI_POINTER_POSITION;
+
+ // Check spinner state
+ if (CheckCollisionPointRec(mousePoint, bounds))
+ {
+ if (GUI_BUTTON_DOWN) state = STATE_PRESSED;
+ else state = STATE_FOCUSED;
+ }
+ }
+
+#if defined(RAYGUI_NO_ICONS)
+ if (GuiButton(leftButtonBound, "<")) tempValue--;
+ if (GuiButton(rightButtonBound, ">")) tempValue++;
+#else
+ if (GuiButton(leftButtonBound, GuiIconText(ICON_ARROW_LEFT_FILL, NULL))) tempValue--;
+ if (GuiButton(rightButtonBound, GuiIconText(ICON_ARROW_RIGHT_FILL, NULL))) tempValue++;
+#endif
+
+ if (!editMode)
+ {
+ if (tempValue < minValue) tempValue = minValue;
+ if (tempValue > maxValue) tempValue = maxValue;
+ }
+ //--------------------------------------------------------------------
+
+ // Draw control
+ //--------------------------------------------------------------------
+ result = GuiValueBox(valueBoxBounds, NULL, &tempValue, minValue, maxValue, editMode);
+
+ // Draw value selector custom buttons
+ // NOTE: BORDER_WIDTH and TEXT_ALIGNMENT forced values
+ int tempBorderWidth = GuiGetStyle(BUTTON, BORDER_WIDTH);
+ int tempTextAlign = GuiGetStyle(BUTTON, TEXT_ALIGNMENT);
+ GuiSetStyle(BUTTON, BORDER_WIDTH, GuiGetStyle(VALUEBOX, BORDER_WIDTH));
+ GuiSetStyle(BUTTON, TEXT_ALIGNMENT, TEXT_ALIGN_CENTER);
+
+ GuiSetStyle(BUTTON, TEXT_ALIGNMENT, tempTextAlign);
+ GuiSetStyle(BUTTON, BORDER_WIDTH, tempBorderWidth);
+
+ // Draw text label if provided
+ GuiDrawText(text, textBounds, (GuiGetStyle(VALUEBOX, TEXT_ALIGNMENT) == TEXT_ALIGN_RIGHT)? TEXT_ALIGN_LEFT : TEXT_ALIGN_RIGHT, GetColor(GuiGetStyle(LABEL, TEXT + (state*3))));
+ //--------------------------------------------------------------------
+
+ *value = tempValue;
+ return result;
+}
+
+// Value Box control, updates input text with numbers
+// NOTE: Requires static variables: frameCounter
+int GuiValueBox(Rectangle bounds, const char *text, int *value, int minValue, int maxValue, bool editMode)
+{
+ #if !defined(RAYGUI_VALUEBOX_MAX_CHARS)
+ #define RAYGUI_VALUEBOX_MAX_CHARS 32
+ #endif
+
+ int result = 0;
+ GuiState state = guiState;
+
+ char textValue[RAYGUI_VALUEBOX_MAX_CHARS + 1] = { 0 };
+ snprintf(textValue, RAYGUI_VALUEBOX_MAX_CHARS + 1, "%i", *value);
+
+ Rectangle textBounds = { 0 };
+ if (text != NULL)
+ {
+ textBounds.width = (float)GuiGetTextWidth(text) + 2;
+ textBounds.height = (float)GuiGetStyle(DEFAULT, TEXT_SIZE);
+ textBounds.x = bounds.x + bounds.width + GuiGetStyle(VALUEBOX, TEXT_PADDING);
+ textBounds.y = bounds.y + bounds.height/2 - GuiGetStyle(DEFAULT, TEXT_SIZE)/2;
+ if (GuiGetStyle(VALUEBOX, TEXT_ALIGNMENT) == TEXT_ALIGN_LEFT) textBounds.x = bounds.x - textBounds.width - GuiGetStyle(VALUEBOX, TEXT_PADDING);
+ }
+
+ // Update control
+ //--------------------------------------------------------------------
+ if ((state != STATE_DISABLED) && !guiLocked && !guiControlExclusiveMode)
+ {
+ Vector2 mousePoint = GUI_POINTER_POSITION;
+ bool valueHasChanged = false;
+
+ if (editMode)
+ {
+ state = STATE_PRESSED;
+
+ int keyCount = (int)strlen(textValue);
+
+ // Add or remove minus symbol
+ if (GUI_KEY_PRESSED(KEY_MINUS))
+ {
+ if (textValue[0] == '-')
+ {
+ for (int i = 0 ; i < keyCount; i++) textValue[i] = textValue[i + 1];
+
+ keyCount--;
+ valueHasChanged = true;
+ }
+ else if (keyCount < RAYGUI_VALUEBOX_MAX_CHARS)
+ {
+ if (keyCount == 0)
+ {
+ textValue[0] = '0';
+ textValue[1] = '\0';
+ keyCount++;
+ }
+
+ for (int i = keyCount ; i > -1; i--) textValue[i + 1] = textValue[i];
+
+ textValue[0] = '-';
+ keyCount++;
+ valueHasChanged = true;
+ }
+ }
+
+ // Add new digit to text value
+ if ((keyCount >= 0) && (keyCount < RAYGUI_VALUEBOX_MAX_CHARS) && (GuiGetTextWidth(textValue) < bounds.width))
+ {
+ int key = GUI_INPUT_KEY;
+
+ // Only allow keys in range [48..57]
+ if ((key >= 48) && (key <= 57))
+ {
+ textValue[keyCount] = (char)key;
+ keyCount++;
+ valueHasChanged = true;
+ }
+ }
+
+ // Delete text
+ if ((keyCount > 0) && GUI_KEY_PRESSED(KEY_BACKSPACE))
+ {
+ keyCount--;
+ textValue[keyCount] = '\0';
+ valueHasChanged = true;
+ }
+
+ if (valueHasChanged) *value = TextToInteger(textValue);
+
+ // NOTE: Values are not clamped until user input finishes
+ //if (*value > maxValue) *value = maxValue;
+ //else if (*value < minValue) *value = minValue;
+
+ if ((GUI_KEY_PRESSED(KEY_ENTER) || GUI_KEY_PRESSED(KEY_KP_ENTER)) || (!CheckCollisionPointRec(mousePoint, bounds) && GUI_BUTTON_PRESSED))
+ {
+ if (*value > maxValue) *value = maxValue;
+ else if (*value < minValue) *value = minValue;
+
+ result = 1;
+ }
+ }
+ else
+ {
+ if (*value > maxValue) *value = maxValue;
+ else if (*value < minValue) *value = minValue;
+
+ if (CheckCollisionPointRec(mousePoint, bounds))
+ {
+ state = STATE_FOCUSED;
+ if (GUI_BUTTON_PRESSED) result = 1;
+ }
+ }
+ }
+ //--------------------------------------------------------------------
+
+ // Draw control
+ //--------------------------------------------------------------------
+ Color baseColor = BLANK;
+ if (state == STATE_PRESSED) baseColor = GetColor(GuiGetStyle(VALUEBOX, BASE_COLOR_PRESSED));
+ else if (state == STATE_DISABLED) baseColor = GetColor(GuiGetStyle(VALUEBOX, BASE_COLOR_DISABLED));
+
+ GuiDrawRectangle(bounds, GuiGetStyle(VALUEBOX, BORDER_WIDTH), GetColor(GuiGetStyle(VALUEBOX, BORDER + (state*3))), baseColor);
+ GuiDrawText(textValue, GetTextBounds(VALUEBOX, bounds), TEXT_ALIGN_CENTER, GetColor(GuiGetStyle(VALUEBOX, TEXT + (state*3))));
+
+ // Draw cursor rectangle
+ if (editMode)
+ {
+ // NOTE: ValueBox internal text is always centered
+ Rectangle cursor = { bounds.x + GuiGetTextWidth(textValue)/2 + bounds.width/2 + 1,
+ bounds.y + GuiGetStyle(TEXTBOX, BORDER_WIDTH) + 2,
+ 2, bounds.height - GuiGetStyle(TEXTBOX, BORDER_WIDTH)*2 - 4 };
+ if (cursor.height > bounds.height) cursor.height = bounds.height - GuiGetStyle(TEXTBOX, BORDER_WIDTH)*2;
+ GuiDrawRectangle(cursor, 0, BLANK, GetColor(GuiGetStyle(VALUEBOX, BORDER_COLOR_PRESSED)));
+ }
+
+ // Draw text label if provided
+ GuiDrawText(text, textBounds, (GuiGetStyle(VALUEBOX, TEXT_ALIGNMENT) == TEXT_ALIGN_RIGHT)? TEXT_ALIGN_LEFT : TEXT_ALIGN_RIGHT, GetColor(GuiGetStyle(LABEL, TEXT + (state*3))));
+ //--------------------------------------------------------------------
+
+ return result;
+}
+
+// Floating point Value Box control, updates input val_str with numbers
+// NOTE: Requires static variables: frameCounter
+int GuiValueBoxFloat(Rectangle bounds, const char *text, char *textValue, float *value, bool editMode)
+{
+ #if !defined(RAYGUI_VALUEBOX_MAX_CHARS)
+ #define RAYGUI_VALUEBOX_MAX_CHARS 32
+ #endif
+
+ int result = 0;
+ GuiState state = guiState;
+
+ //char textValue[RAYGUI_VALUEBOX_MAX_CHARS + 1] = "\0";
+ //snprintf(textValue, sizeof(textValue), "%2.2f", *value);
+
+ Rectangle textBounds = { 0 };
+ if (text != NULL)
+ {
+ textBounds.width = (float)GuiGetTextWidth(text) + 2;
+ textBounds.height = (float)GuiGetStyle(DEFAULT, TEXT_SIZE);
+ textBounds.x = bounds.x + bounds.width + GuiGetStyle(VALUEBOX, TEXT_PADDING);
+ textBounds.y = bounds.y + bounds.height/2 - GuiGetStyle(DEFAULT, TEXT_SIZE)/2;
+ if (GuiGetStyle(VALUEBOX, TEXT_ALIGNMENT) == TEXT_ALIGN_LEFT) textBounds.x = bounds.x - textBounds.width - GuiGetStyle(VALUEBOX, TEXT_PADDING);
+ }
+
+ // Update control
+ //--------------------------------------------------------------------
+ if ((state != STATE_DISABLED) && !guiLocked && !guiControlExclusiveMode)
+ {
+ Vector2 mousePoint = GUI_POINTER_POSITION;
+
+ bool valueHasChanged = false;
+
+ if (editMode)
+ {
+ state = STATE_PRESSED;
+
+ int keyCount = (int)strlen(textValue);
+
+ // Add or remove minus symbol
+ if (GUI_KEY_PRESSED(KEY_MINUS))
+ {
+ if (textValue[0] == '-')
+ {
+ for (int i = 0; i < keyCount; i++) textValue[i] = textValue[i + 1];
+
+ keyCount--;
+ valueHasChanged = true;
+ }
+ else if (keyCount < (RAYGUI_VALUEBOX_MAX_CHARS - 1))
+ {
+ if (keyCount == 0)
+ {
+ textValue[0] = '0';
+ textValue[1] = '\0';
+ keyCount++;
+ }
+
+ for (int i = keyCount; i > -1; i--) textValue[i + 1] = textValue[i];
+
+ textValue[0] = '-';
+ keyCount++;
+ valueHasChanged = true;
+ }
+ }
+
+ // Only allow keys in range [48..57]
+ if (keyCount < RAYGUI_VALUEBOX_MAX_CHARS)
+ {
+ if (GuiGetTextWidth(textValue) < bounds.width)
+ {
+ int key = GUI_INPUT_KEY;
+ if (((key >= 48) && (key <= 57)) ||
+ (key == '.') ||
+ ((keyCount == 0) && (key == '+')) || // NOTE: Sign can only be in first position
+ ((keyCount == 0) && (key == '-')))
+ {
+ textValue[keyCount] = (char)key;
+ keyCount++;
+
+ valueHasChanged = true;
+ }
+ }
+ }
+
+ // Pressed backspace
+ if (GUI_KEY_PRESSED(KEY_BACKSPACE))
+ {
+ if (keyCount > 0)
+ {
+ keyCount--;
+ textValue[keyCount] = '\0';
+ valueHasChanged = true;
+ }
+ }
+
+ if (valueHasChanged) *value = TextToFloat(textValue);
+
+ if ((GUI_KEY_PRESSED(KEY_ENTER) || GUI_KEY_PRESSED(KEY_KP_ENTER)) || (!CheckCollisionPointRec(mousePoint, bounds) && GUI_BUTTON_PRESSED)) result = 1;
+ }
+ else
+ {
+ if (CheckCollisionPointRec(mousePoint, bounds))
+ {
+ state = STATE_FOCUSED;
+ if (GUI_BUTTON_PRESSED) result = 1;
+ }
+ }
+ }
+ //--------------------------------------------------------------------
+
+ // Draw control
+ //--------------------------------------------------------------------
+ Color baseColor = BLANK;
+ if (state == STATE_PRESSED) baseColor = GetColor(GuiGetStyle(VALUEBOX, BASE_COLOR_PRESSED));
+ else if (state == STATE_DISABLED) baseColor = GetColor(GuiGetStyle(VALUEBOX, BASE_COLOR_DISABLED));
+
+ GuiDrawRectangle(bounds, GuiGetStyle(VALUEBOX, BORDER_WIDTH), GetColor(GuiGetStyle(VALUEBOX, BORDER + (state*3))), baseColor);
+ GuiDrawText(textValue, GetTextBounds(VALUEBOX, bounds), TEXT_ALIGN_CENTER, GetColor(GuiGetStyle(VALUEBOX, TEXT + (state*3))));
+
+ // Draw cursor
+ if (editMode)
+ {
+ // NOTE: ValueBox internal text is always centered
+ Rectangle cursor = {bounds.x + GuiGetTextWidth(textValue)/2 + bounds.width/2 + 1,
+ bounds.y + 2*GuiGetStyle(VALUEBOX, BORDER_WIDTH), 4,
+ bounds.height - 4*GuiGetStyle(VALUEBOX, BORDER_WIDTH)};
+ GuiDrawRectangle(cursor, 0, BLANK, GetColor(GuiGetStyle(VALUEBOX, BORDER_COLOR_PRESSED)));
+ }
+
+ // Draw text label if provided
+ GuiDrawText(text, textBounds,
+ (GuiGetStyle(VALUEBOX, TEXT_ALIGNMENT) == TEXT_ALIGN_RIGHT)? TEXT_ALIGN_LEFT : TEXT_ALIGN_RIGHT,
+ GetColor(GuiGetStyle(LABEL, TEXT + (state*3))));
+ //--------------------------------------------------------------------
+
+ return result;
+}
+
+// Slider control with pro parameters
+// NOTE: Other GuiSlider*() controls use this one
+int GuiSlider(Rectangle bounds, const char *textLeft, const char *textRight, float *value, float minValue, float maxValue)
+{
+ int result = 0;
+ GuiState state = guiState;
+
+ float temp = (maxValue - minValue)/2.0f;
+ if (value == NULL) value = &temp;
+ float oldValue = *value;
+
+ int sliderWidth = GuiGetStyle(SLIDER, SLIDER_WIDTH);
+
+ Rectangle slider = { bounds.x, bounds.y + GuiGetStyle(SLIDER, BORDER_WIDTH) + GuiGetStyle(SLIDER, SLIDER_PADDING),
+ 0, bounds.height - 2*GuiGetStyle(SLIDER, BORDER_WIDTH) - 2*GuiGetStyle(SLIDER, SLIDER_PADDING) };
+
+ // Update control
+ //--------------------------------------------------------------------
+ if ((state != STATE_DISABLED) && !guiLocked)
+ {
+ Vector2 mousePoint = GUI_POINTER_POSITION;
+
+ if (guiControlExclusiveMode) // Allows to keep dragging outside of bounds
+ {
+ if (GUI_BUTTON_DOWN)
+ {
+ if (CHECK_BOUNDS_ID(bounds, guiControlExclusiveRec))
+ {
+ state = STATE_PRESSED;
+ // Get equivalent value and slider position from mousePosition.x
+ *value = (maxValue - minValue)*((mousePoint.x - bounds.x - sliderWidth/2)/(bounds.width - sliderWidth)) + minValue;
+ }
+ }
+ else
+ {
+ guiControlExclusiveMode = false;
+ guiControlExclusiveRec = RAYGUI_CLITERAL(Rectangle){ 0, 0, 0, 0 };
+ }
+ }
+ else if (CheckCollisionPointRec(mousePoint, bounds))
+ {
+ if (GUI_BUTTON_DOWN)
+ {
+ state = STATE_PRESSED;
+ guiControlExclusiveMode = true;
+ guiControlExclusiveRec = bounds; // Store bounds as an identifier when dragging starts
+
+ if (!CheckCollisionPointRec(mousePoint, slider))
+ {
+ // Get equivalent value and slider position from mousePosition.x
+ *value = (maxValue - minValue)*((mousePoint.x - bounds.x - sliderWidth/2)/(bounds.width - sliderWidth)) + minValue;
+ }
+ }
+ else state = STATE_FOCUSED;
+ }
+
+ if (*value > maxValue) *value = maxValue;
+ else if (*value < minValue) *value = minValue;
+ }
+
+ // Control value change check
+ if (oldValue == *value) result = 0;
+ else result = 1;
+
+ // Slider bar limits check
+ float sliderValue = (((*value - minValue)/(maxValue - minValue))*(bounds.width - sliderWidth - 2*GuiGetStyle(SLIDER, BORDER_WIDTH)));
+ if (sliderWidth > 0) // Slider
+ {
+ slider.x += sliderValue;
+ slider.width = (float)sliderWidth;
+ if (slider.x <= (bounds.x + GuiGetStyle(SLIDER, BORDER_WIDTH))) slider.x = bounds.x + GuiGetStyle(SLIDER, BORDER_WIDTH);
+ else if ((slider.x + slider.width) >= (bounds.x + bounds.width)) slider.x = bounds.x + bounds.width - slider.width - GuiGetStyle(SLIDER, BORDER_WIDTH);
+ }
+ else if (sliderWidth == 0) // SliderBar
+ {
+ slider.x += GuiGetStyle(SLIDER, BORDER_WIDTH);
+ slider.width = sliderValue;
+ if (slider.width > bounds.width) slider.width = bounds.width - 2*GuiGetStyle(SLIDER, BORDER_WIDTH);
+ }
+ //--------------------------------------------------------------------
+
+ // Draw control
+ //--------------------------------------------------------------------
+ GuiDrawRectangle(bounds, GuiGetStyle(SLIDER, BORDER_WIDTH), GetColor(GuiGetStyle(SLIDER, BORDER + (state*3))), GetColor(GuiGetStyle(SLIDER, (state != STATE_DISABLED)? BASE_COLOR_NORMAL : BASE_COLOR_DISABLED)));
+
+ // Draw slider internal bar (depends on state)
+ if (state == STATE_NORMAL) GuiDrawRectangle(slider, 0, BLANK, GetColor(GuiGetStyle(SLIDER, BASE_COLOR_PRESSED)));
+ else if (state == STATE_FOCUSED) GuiDrawRectangle(slider, 0, BLANK, GetColor(GuiGetStyle(SLIDER, TEXT_COLOR_FOCUSED)));
+ else if (state == STATE_PRESSED) GuiDrawRectangle(slider, 0, BLANK, GetColor(GuiGetStyle(SLIDER, TEXT_COLOR_PRESSED)));
+ else if (state == STATE_DISABLED) GuiDrawRectangle(slider, 0, BLANK, GetColor(GuiGetStyle(SLIDER, TEXT_COLOR_DISABLED)));
+
+ // Draw left/right text if provided
+ if (textLeft != NULL)
+ {
+ Rectangle textBounds = { 0 };
+ textBounds.width = (float)GuiGetTextWidth(textLeft);
+ textBounds.height = (float)GuiGetStyle(DEFAULT, TEXT_SIZE);
+ textBounds.x = bounds.x - textBounds.width - GuiGetStyle(SLIDER, TEXT_PADDING);
+ textBounds.y = bounds.y + bounds.height/2 - GuiGetStyle(DEFAULT, TEXT_SIZE)/2;
+
+ GuiDrawText(textLeft, textBounds, TEXT_ALIGN_RIGHT, GetColor(GuiGetStyle(LABEL, TEXT + (state*3))));
+ }
+
+ if (textRight != NULL)
+ {
+ Rectangle textBounds = { 0 };
+ textBounds.width = (float)GuiGetTextWidth(textRight);
+ textBounds.height = (float)GuiGetStyle(DEFAULT, TEXT_SIZE);
+ textBounds.x = bounds.x + bounds.width + GuiGetStyle(SLIDER, TEXT_PADDING);
+ textBounds.y = bounds.y + bounds.height/2 - GuiGetStyle(DEFAULT, TEXT_SIZE)/2;
+
+ GuiDrawText(textRight, textBounds, TEXT_ALIGN_LEFT, GetColor(GuiGetStyle(LABEL, TEXT + (state*3))));
+ }
+ //--------------------------------------------------------------------
+
+ return result;
+}
+
+// Slider Bar control extended, returns selected value
+int GuiSliderBar(Rectangle bounds, const char *textLeft, const char *textRight, float *value, float minValue, float maxValue)
+{
+ int result = 0;
+ int preSliderWidth = GuiGetStyle(SLIDER, SLIDER_WIDTH);
+ GuiSetStyle(SLIDER, SLIDER_WIDTH, 0);
+ result = GuiSlider(bounds, textLeft, textRight, value, minValue, maxValue);
+ GuiSetStyle(SLIDER, SLIDER_WIDTH, preSliderWidth);
+
+ return result;
+}
+
+// Progress Bar control extended, shows current progress value
+int GuiProgressBar(Rectangle bounds, const char *textLeft, const char *textRight, float *value, float minValue, float maxValue)
+{
+ int result = 0;
+ GuiState state = guiState;
+
+ float temp = (maxValue - minValue)/2.0f;
+ if (value == NULL) value = &temp;
+
+ // Progress bar
+ Rectangle progress = { bounds.x + GuiGetStyle(PROGRESSBAR, BORDER_WIDTH),
+ bounds.y + GuiGetStyle(PROGRESSBAR, BORDER_WIDTH) + GuiGetStyle(PROGRESSBAR, PROGRESS_PADDING), 0,
+ bounds.height - GuiGetStyle(PROGRESSBAR, BORDER_WIDTH) - 2*GuiGetStyle(PROGRESSBAR, PROGRESS_PADDING) -1 };
+
+ // Update control
+ //--------------------------------------------------------------------
+ if (*value > maxValue) *value = maxValue;
+
+ // WARNING: Working with floats could lead to rounding issues
+ if ((state != STATE_DISABLED)) progress.width = ((float)*value/(maxValue - minValue))*(bounds.width - 2*GuiGetStyle(PROGRESSBAR, BORDER_WIDTH));
+ //--------------------------------------------------------------------
+
+ // Draw control
+ //--------------------------------------------------------------------
+ if (state == STATE_DISABLED)
+ {
+ GuiDrawRectangle(bounds, GuiGetStyle(PROGRESSBAR, BORDER_WIDTH), GetColor(GuiGetStyle(PROGRESSBAR, BORDER + (state*3))), BLANK);
+ }
+ else
+ {
+ if (*value > minValue)
+ {
+ // Draw progress bar with colored border, more visual
+ GuiDrawRectangle(RAYGUI_CLITERAL(Rectangle){ bounds.x, bounds.y, (int)progress.width + (float)GuiGetStyle(PROGRESSBAR, BORDER_WIDTH), (float)GuiGetStyle(PROGRESSBAR, BORDER_WIDTH) }, 0, BLANK, GetColor(GuiGetStyle(PROGRESSBAR, BORDER_COLOR_FOCUSED)));
+ GuiDrawRectangle(RAYGUI_CLITERAL(Rectangle){ bounds.x, bounds.y + 1, (float)GuiGetStyle(PROGRESSBAR, BORDER_WIDTH), bounds.height - 2 }, 0, BLANK, GetColor(GuiGetStyle(PROGRESSBAR, BORDER_COLOR_FOCUSED)));
+ GuiDrawRectangle(RAYGUI_CLITERAL(Rectangle){ bounds.x, bounds.y + bounds.height - 1, (int)progress.width + (float)GuiGetStyle(PROGRESSBAR, BORDER_WIDTH), (float)GuiGetStyle(PROGRESSBAR, BORDER_WIDTH) }, 0, BLANK, GetColor(GuiGetStyle(PROGRESSBAR, BORDER_COLOR_FOCUSED)));
+ }
+ else GuiDrawRectangle(RAYGUI_CLITERAL(Rectangle){ bounds.x, bounds.y, (float)GuiGetStyle(PROGRESSBAR, BORDER_WIDTH), bounds.height+GuiGetStyle(PROGRESSBAR, BORDER_WIDTH)-1 }, 0, BLANK, GetColor(GuiGetStyle(PROGRESSBAR, BORDER_COLOR_NORMAL)));
+
+ if (*value >= maxValue) GuiDrawRectangle(RAYGUI_CLITERAL(Rectangle){ bounds.x + progress.width + (float)GuiGetStyle(PROGRESSBAR, BORDER_WIDTH), bounds.y, (float)GuiGetStyle(PROGRESSBAR, BORDER_WIDTH), bounds.height+GuiGetStyle(PROGRESSBAR, BORDER_WIDTH)-1}, 0, BLANK, GetColor(GuiGetStyle(PROGRESSBAR, BORDER_COLOR_FOCUSED)));
+ else
+ {
+ // Draw borders not yet reached by value
+ GuiDrawRectangle(RAYGUI_CLITERAL(Rectangle){ bounds.x + (int)progress.width + (float)GuiGetStyle(PROGRESSBAR, BORDER_WIDTH), bounds.y, bounds.width - (float)GuiGetStyle(PROGRESSBAR, BORDER_WIDTH) - (int)progress.width - 1, (float)GuiGetStyle(PROGRESSBAR, BORDER_WIDTH) }, 0, BLANK, GetColor(GuiGetStyle(PROGRESSBAR, BORDER_COLOR_NORMAL)));
+ GuiDrawRectangle(RAYGUI_CLITERAL(Rectangle){ bounds.x + (int)progress.width + (float)GuiGetStyle(PROGRESSBAR, BORDER_WIDTH), bounds.y + bounds.height - 1, bounds.width - (float)GuiGetStyle(PROGRESSBAR, BORDER_WIDTH) - (int)progress.width - 1, (float)GuiGetStyle(PROGRESSBAR, BORDER_WIDTH) }, 0, BLANK, GetColor(GuiGetStyle(PROGRESSBAR, BORDER_COLOR_NORMAL)));
+ GuiDrawRectangle(RAYGUI_CLITERAL(Rectangle){ bounds.x + bounds.width - (float)GuiGetStyle(PROGRESSBAR, BORDER_WIDTH), bounds.y, (float)GuiGetStyle(PROGRESSBAR, BORDER_WIDTH), bounds.height+GuiGetStyle(PROGRESSBAR, BORDER_WIDTH)-1 }, 0, BLANK, GetColor(GuiGetStyle(PROGRESSBAR, BORDER_COLOR_NORMAL)));
+ }
+
+ // Draw slider internal progress bar (depends on state)
+ GuiDrawRectangle(progress, 0, BLANK, GetColor(GuiGetStyle(PROGRESSBAR, BASE_COLOR_PRESSED)));
+ }
+
+ // Draw left/right text if provided
+ if (textLeft != NULL)
+ {
+ Rectangle textBounds = { 0 };
+ textBounds.width = (float)GuiGetTextWidth(textLeft);
+ textBounds.height = (float)GuiGetStyle(DEFAULT, TEXT_SIZE);
+ textBounds.x = bounds.x - textBounds.width - GuiGetStyle(PROGRESSBAR, TEXT_PADDING);
+ textBounds.y = bounds.y + bounds.height/2 - GuiGetStyle(DEFAULT, TEXT_SIZE)/2;
+
+ GuiDrawText(textLeft, textBounds, TEXT_ALIGN_RIGHT, GetColor(GuiGetStyle(LABEL, TEXT + (state*3))));
+ }
+
+ if (textRight != NULL)
+ {
+ Rectangle textBounds = { 0 };
+ textBounds.width = (float)GuiGetTextWidth(textRight);
+ textBounds.height = (float)GuiGetStyle(DEFAULT, TEXT_SIZE);
+ textBounds.x = bounds.x + bounds.width + GuiGetStyle(PROGRESSBAR, TEXT_PADDING);
+ textBounds.y = bounds.y + bounds.height/2 - GuiGetStyle(DEFAULT, TEXT_SIZE)/2;
+
+ GuiDrawText(textRight, textBounds, TEXT_ALIGN_LEFT, GetColor(GuiGetStyle(LABEL, TEXT + (state*3))));
+ }
+ //--------------------------------------------------------------------
+
+ return result;
+}
+
+// Status Bar control
+int GuiStatusBar(Rectangle bounds, const char *text)
+{
+ int result = 0;
+ GuiState state = guiState;
+
+ // Draw control
+ //--------------------------------------------------------------------
+ GuiDrawRectangle(bounds, GuiGetStyle(STATUSBAR, BORDER_WIDTH), GetColor(GuiGetStyle(STATUSBAR, BORDER + (state*3))), GetColor(GuiGetStyle(STATUSBAR, BASE + (state*3))));
+ GuiDrawText(text, GetTextBounds(STATUSBAR, bounds), GuiGetStyle(STATUSBAR, TEXT_ALIGNMENT), GetColor(GuiGetStyle(STATUSBAR, TEXT + (state*3))));
+ //--------------------------------------------------------------------
+
+ return result;
+}
+
+// Dummy rectangle control, intended for placeholding
+int GuiDummyRec(Rectangle bounds, const char *text)
+{
+ int result = 0;
+ GuiState state = guiState;
+
+ // Update control
+ //--------------------------------------------------------------------
+ if ((state != STATE_DISABLED) && !guiLocked && !guiControlExclusiveMode)
+ {
+ Vector2 mousePoint = GUI_POINTER_POSITION;
+
+ // Check button state
+ if (CheckCollisionPointRec(mousePoint, bounds))
+ {
+ if (GUI_BUTTON_DOWN) state = STATE_PRESSED;
+ else state = STATE_FOCUSED;
+ }
+ }
+ //--------------------------------------------------------------------
+
+ // Draw control
+ //--------------------------------------------------------------------
+ GuiDrawRectangle(bounds, 0, BLANK, GetColor(GuiGetStyle(DEFAULT, (state != STATE_DISABLED)? BASE_COLOR_NORMAL : BASE_COLOR_DISABLED)));
+ GuiDrawText(text, GetTextBounds(DEFAULT, bounds), TEXT_ALIGN_CENTER, GetColor(GuiGetStyle(BUTTON, (state != STATE_DISABLED)? TEXT_COLOR_NORMAL : TEXT_COLOR_DISABLED)));
+ //------------------------------------------------------------------
+
+ return result;
+}
+
+// List View control
+int GuiListView(Rectangle bounds, const char *text, int *scrollIndex, int *active)
+{
+ int result = 0;
+ int itemCount = 0;
+ const char **items = NULL;
+
+ if (text != NULL) items = GuiTextSplit(text, ';', &itemCount, NULL);
+
+ result = GuiListViewEx(bounds, items, itemCount, scrollIndex, active, NULL);
+
+ return result;
+}
+
+// List View control with extended parameters
+int GuiListViewEx(Rectangle bounds, const char **text, int count, int *scrollIndex, int *active, int *focus)
+{
+ int result = 0;
+ GuiState state = guiState;
+
+ int itemFocused = (focus == NULL)? -1 : *focus;
+ int itemSelected = (active == NULL)? -1 : *active;
+
+ // Check if scroll bar is needed
+ bool useScrollBar = false;
+ if ((GuiGetStyle(LISTVIEW, LIST_ITEMS_HEIGHT) + GuiGetStyle(LISTVIEW, LIST_ITEMS_SPACING))*count > bounds.height) useScrollBar = true;
+
+ // Define base item rectangle [0]
+ Rectangle itemBounds = { 0 };
+ itemBounds.x = bounds.x + GuiGetStyle(LISTVIEW, LIST_ITEMS_SPACING);
+ itemBounds.y = bounds.y + GuiGetStyle(LISTVIEW, LIST_ITEMS_SPACING) + GuiGetStyle(DEFAULT, BORDER_WIDTH);
+ itemBounds.width = bounds.width - 2*GuiGetStyle(LISTVIEW, LIST_ITEMS_SPACING) - GuiGetStyle(DEFAULT, BORDER_WIDTH);
+ itemBounds.height = (float)GuiGetStyle(LISTVIEW, LIST_ITEMS_HEIGHT);
+ if (useScrollBar) itemBounds.width -= GuiGetStyle(LISTVIEW, SCROLLBAR_WIDTH);
+
+ // Get items on the list
+ int visibleItems = (int)bounds.height/(GuiGetStyle(LISTVIEW, LIST_ITEMS_HEIGHT) + GuiGetStyle(LISTVIEW, LIST_ITEMS_SPACING));
+ if (visibleItems > count) visibleItems = count;
+
+ int startIndex = (scrollIndex == NULL)? 0 : *scrollIndex;
+ if ((startIndex < 0) || (startIndex > (count - visibleItems))) startIndex = 0;
+ int endIndex = startIndex + visibleItems;
+
+ // Update control
+ //--------------------------------------------------------------------
+ if ((state != STATE_DISABLED) && !guiLocked && !guiControlExclusiveMode)
+ {
+ Vector2 mousePoint = GUI_POINTER_POSITION;
+
+ // Check mouse inside list view
+ if (CheckCollisionPointRec(mousePoint, bounds))
+ {
+ state = STATE_FOCUSED;
+
+ // Check focused and selected item
+ for (int i = 0; i < visibleItems; i++)
+ {
+ if (CheckCollisionPointRec(mousePoint, itemBounds))
+ {
+ itemFocused = startIndex + i;
+ if (GUI_BUTTON_PRESSED)
+ {
+ if (itemSelected == (startIndex + i)) itemSelected = -1;
+ else itemSelected = startIndex + i;
+ }
+ break;
+ }
+
+ // Update item rectangle y position for next item
+ itemBounds.y += (GuiGetStyle(LISTVIEW, LIST_ITEMS_HEIGHT) + GuiGetStyle(LISTVIEW, LIST_ITEMS_SPACING));
+ }
+
+ if (useScrollBar)
+ {
+ float scrollDelta = GUI_SCROLL_DELTA;
+ startIndex -= (int)scrollDelta;
+
+ if (startIndex < 0) startIndex = 0;
+ else if (startIndex > (count - visibleItems)) startIndex = count - visibleItems;
+
+ endIndex = startIndex + visibleItems;
+ if (endIndex > count) endIndex = count;
+ }
+ }
+ else itemFocused = -1;
+
+ // Reset item rectangle y to [0]
+ itemBounds.y = bounds.y + GuiGetStyle(LISTVIEW, LIST_ITEMS_SPACING) + GuiGetStyle(DEFAULT, BORDER_WIDTH);
+ }
+ //--------------------------------------------------------------------
+
+ // Draw control
+ //--------------------------------------------------------------------
+ GuiDrawRectangle(bounds, GuiGetStyle(LISTVIEW, BORDER_WIDTH), GetColor(GuiGetStyle(LISTVIEW, BORDER + state*3)), GetColor(GuiGetStyle(DEFAULT, BACKGROUND_COLOR))); // Draw background
+
+ // Draw visible items
+ for (int i = 0; ((i < visibleItems) && (text != NULL)); i++)
+ {
+ if (GuiGetStyle(LISTVIEW, LIST_ITEMS_BORDER_NORMAL)) GuiDrawRectangle(itemBounds, GuiGetStyle(LISTVIEW, LIST_ITEMS_BORDER_WIDTH), GetColor(GuiGetStyle(LISTVIEW, BORDER_COLOR_NORMAL)), BLANK);
+
+ if (state == STATE_DISABLED)
+ {
+ if ((startIndex + i) == itemSelected) GuiDrawRectangle(itemBounds, GuiGetStyle(LISTVIEW, LIST_ITEMS_BORDER_WIDTH), GetColor(GuiGetStyle(LISTVIEW, BORDER_COLOR_DISABLED)), GetColor(GuiGetStyle(LISTVIEW, BASE_COLOR_DISABLED)));
+
+ GuiDrawText(text[startIndex + i], GetTextBounds(LISTVIEW, itemBounds), GuiGetStyle(LISTVIEW, TEXT_ALIGNMENT), GetColor(GuiGetStyle(LISTVIEW, TEXT_COLOR_DISABLED)));
+ }
+ else
+ {
+ if (((startIndex + i) == itemSelected) && (active != NULL))
+ {
+ // Draw item selected
+ GuiDrawRectangle(itemBounds, GuiGetStyle(LISTVIEW, LIST_ITEMS_BORDER_WIDTH), GetColor(GuiGetStyle(LISTVIEW, BORDER_COLOR_PRESSED)), GetColor(GuiGetStyle(LISTVIEW, BASE_COLOR_PRESSED)));
+ GuiDrawText(text[startIndex + i], GetTextBounds(LISTVIEW, itemBounds), GuiGetStyle(LISTVIEW, TEXT_ALIGNMENT), GetColor(GuiGetStyle(LISTVIEW, TEXT_COLOR_PRESSED)));
+ }
+ else if (((startIndex + i) == itemFocused)) // && (focus != NULL)) // NOTE: Items focused, despite not returned
+ {
+ // Draw item focused
+ GuiDrawRectangle(itemBounds, GuiGetStyle(LISTVIEW, LIST_ITEMS_BORDER_WIDTH), GetColor(GuiGetStyle(LISTVIEW, BORDER_COLOR_FOCUSED)), GetColor(GuiGetStyle(LISTVIEW, BASE_COLOR_FOCUSED)));
+ GuiDrawText(text[startIndex + i], GetTextBounds(LISTVIEW, itemBounds), GuiGetStyle(LISTVIEW, TEXT_ALIGNMENT), GetColor(GuiGetStyle(LISTVIEW, TEXT_COLOR_FOCUSED)));
+ }
+ else
+ {
+ // Draw item normal (no rectangle)
+ GuiDrawText(text[startIndex + i], GetTextBounds(LISTVIEW, itemBounds), GuiGetStyle(LISTVIEW, TEXT_ALIGNMENT), GetColor(GuiGetStyle(LISTVIEW, TEXT_COLOR_NORMAL)));
+ }
+ }
+
+ // Update item rectangle y position for next item
+ itemBounds.y += (GuiGetStyle(LISTVIEW, LIST_ITEMS_HEIGHT) + GuiGetStyle(LISTVIEW, LIST_ITEMS_SPACING));
+ }
+
+ if (useScrollBar)
+ {
+ Rectangle scrollBarBounds = {
+ bounds.x + bounds.width - GuiGetStyle(LISTVIEW, BORDER_WIDTH) - GuiGetStyle(LISTVIEW, SCROLLBAR_WIDTH),
+ bounds.y + GuiGetStyle(LISTVIEW, BORDER_WIDTH), (float)GuiGetStyle(LISTVIEW, SCROLLBAR_WIDTH),
+ bounds.height - 2*GuiGetStyle(DEFAULT, BORDER_WIDTH)
+ };
+
+ // Calculate percentage of visible items and apply same percentage to scrollbar
+ float percentVisible = (float)(endIndex - startIndex)/count;
+ float sliderSize = bounds.height*percentVisible;
+
+ int prevSliderSize = GuiGetStyle(SCROLLBAR, SCROLL_SLIDER_SIZE); // Save default slider size
+ int prevScrollSpeed = GuiGetStyle(SCROLLBAR, SCROLL_SPEED); // Save default scroll speed
+ GuiSetStyle(SCROLLBAR, SCROLL_SLIDER_SIZE, (int)sliderSize); // Change slider size
+ GuiSetStyle(SCROLLBAR, SCROLL_SPEED, count - visibleItems); // Change scroll speed
+
+ startIndex = GuiScrollBar(scrollBarBounds, startIndex, 0, count - visibleItems);
+
+ GuiSetStyle(SCROLLBAR, SCROLL_SPEED, prevScrollSpeed); // Reset scroll speed to default
+ GuiSetStyle(SCROLLBAR, SCROLL_SLIDER_SIZE, prevSliderSize); // Reset slider size to default
+ }
+ //--------------------------------------------------------------------
+
+ if (active != NULL) *active = itemSelected;
+ if (focus != NULL) *focus = itemFocused;
+ if (scrollIndex != NULL) *scrollIndex = startIndex;
+
+ return result;
+}
+
+// Color Panel control - Color (RGBA) variant
+int GuiColorPanel(Rectangle bounds, const char *text, Color *color)
+{
+ int result = 0;
+
+ Vector3 vcolor = { (float)color->r/255.0f, (float)color->g/255.0f, (float)color->b/255.0f };
+ Vector3 hsv = ConvertRGBtoHSV(vcolor);
+ Vector3 prevHsv = hsv; // workaround to see if GuiColorPanelHSV modifies the hsv
+
+ GuiColorPanelHSV(bounds, text, &hsv);
+
+ // Check if the hsv was changed, only then change the color
+ // This is required, because the Color->HSV->Color conversion has precision errors
+ // Thus the assignment from HSV to Color should only be made, if the HSV has a new user-entered value
+ // Otherwise GuiColorPanel would often modify it's color without user input
+ // TODO: GuiColorPanelHSV could return 1 if the slider was dragged, to simplify this check
+ if (hsv.x != prevHsv.x || hsv.y != prevHsv.y || hsv.z != prevHsv.z)
+ {
+ Vector3 rgb = ConvertHSVtoRGB(hsv);
+
+ // NOTE: Vector3ToColor() only available on raylib 1.8.1
+ *color = RAYGUI_CLITERAL(Color){ (unsigned char)(255.0f*rgb.x),
+ (unsigned char)(255.0f*rgb.y),
+ (unsigned char)(255.0f*rgb.z),
+ color->a };
+ }
+ return result;
+}
+
+// Color Bar Alpha control
+// NOTE: Returns alpha value normalized [0..1]
+int GuiColorBarAlpha(Rectangle bounds, const char *text, float *alpha)
+{
+ #if !defined(RAYGUI_COLORBARALPHA_CHECKED_SIZE)
+ #define RAYGUI_COLORBARALPHA_CHECKED_SIZE 10
+ #endif
+
+ int result = 0;
+ GuiState state = guiState;
+ Rectangle selector = { (float)bounds.x + (*alpha)*bounds.width - GuiGetStyle(COLORPICKER, HUEBAR_SELECTOR_HEIGHT)/2,
+ (float)bounds.y - GuiGetStyle(COLORPICKER, HUEBAR_SELECTOR_OVERFLOW),
+ (float)GuiGetStyle(COLORPICKER, HUEBAR_SELECTOR_HEIGHT),
+ (float)bounds.height + GuiGetStyle(COLORPICKER, HUEBAR_SELECTOR_OVERFLOW)*2 };
+
+ // Update control
+ //--------------------------------------------------------------------
+ if ((state != STATE_DISABLED) && !guiLocked)
+ {
+ Vector2 mousePoint = GUI_POINTER_POSITION;
+
+ if (guiControlExclusiveMode) // Allows to keep dragging outside of bounds
+ {
+ if (GUI_BUTTON_DOWN)
+ {
+ if (CHECK_BOUNDS_ID(bounds, guiControlExclusiveRec))
+ {
+ state = STATE_PRESSED;
+
+ *alpha = (mousePoint.x - bounds.x)/bounds.width;
+ if (*alpha <= 0.0f) *alpha = 0.0f;
+ if (*alpha >= 1.0f) *alpha = 1.0f;
+ }
+ }
+ else
+ {
+ guiControlExclusiveMode = false;
+ guiControlExclusiveRec = RAYGUI_CLITERAL(Rectangle){ 0, 0, 0, 0 };
+ }
+ }
+ else if (CheckCollisionPointRec(mousePoint, bounds) || CheckCollisionPointRec(mousePoint, selector))
+ {
+ if (GUI_BUTTON_DOWN)
+ {
+ state = STATE_PRESSED;
+ guiControlExclusiveMode = true;
+ guiControlExclusiveRec = bounds; // Store bounds as an identifier when dragging starts
+
+ *alpha = (mousePoint.x - bounds.x)/bounds.width;
+ if (*alpha <= 0.0f) *alpha = 0.0f;
+ if (*alpha >= 1.0f) *alpha = 1.0f;
+ //selector.x = bounds.x + (int)(((alpha - 0)/(100 - 0))*(bounds.width - 2*GuiGetStyle(SLIDER, BORDER_WIDTH))) - selector.width/2;
+ }
+ else state = STATE_FOCUSED;
+ }
+ }
+ //--------------------------------------------------------------------
+
+ // Draw control
+ //--------------------------------------------------------------------
+ // Draw alpha bar: checked background
+ if (state != STATE_DISABLED)
+ {
+ int checksX = (int)bounds.width/RAYGUI_COLORBARALPHA_CHECKED_SIZE;
+ int checksY = (int)bounds.height/RAYGUI_COLORBARALPHA_CHECKED_SIZE;
+
+ for (int x = 0; x < checksX; x++)
+ {
+ for (int y = 0; y < checksY; y++)
+ {
+ Rectangle check = { bounds.x + x*RAYGUI_COLORBARALPHA_CHECKED_SIZE, bounds.y + y*RAYGUI_COLORBARALPHA_CHECKED_SIZE, RAYGUI_COLORBARALPHA_CHECKED_SIZE, RAYGUI_COLORBARALPHA_CHECKED_SIZE };
+ GuiDrawRectangle(check, 0, BLANK, ((x + y)%2)? Fade(GetColor(GuiGetStyle(COLORPICKER, BORDER_COLOR_DISABLED)), 0.4f) : Fade(GetColor(GuiGetStyle(COLORPICKER, BASE_COLOR_DISABLED)), 0.4f));
+ }
+ }
+
+ DrawRectangleGradientEx(bounds, RAYGUI_CLITERAL(Color){ 255, 255, 255, 0 }, RAYGUI_CLITERAL(Color){ 255, 255, 255, 0 }, Fade(RAYGUI_CLITERAL(Color){ 0, 0, 0, 255 }, guiAlpha), Fade(RAYGUI_CLITERAL(Color){ 0, 0, 0, 255 }, guiAlpha));
+ }
+ else DrawRectangleGradientEx(bounds, Fade(GetColor(GuiGetStyle(COLORPICKER, BASE_COLOR_DISABLED)), 0.1f), Fade(GetColor(GuiGetStyle(COLORPICKER, BASE_COLOR_DISABLED)), 0.1f), Fade(GetColor(GuiGetStyle(COLORPICKER, BORDER_COLOR_DISABLED)), guiAlpha), Fade(GetColor(GuiGetStyle(COLORPICKER, BORDER_COLOR_DISABLED)), guiAlpha));
+
+ GuiDrawRectangle(bounds, GuiGetStyle(COLORPICKER, BORDER_WIDTH), GetColor(GuiGetStyle(COLORPICKER, BORDER + state*3)), BLANK);
+
+ // Draw alpha bar: selector
+ GuiDrawRectangle(selector, 0, BLANK, GetColor(GuiGetStyle(COLORPICKER, BORDER + state*3)));
+ //--------------------------------------------------------------------
+
+ return result;
+}
+
+// Color Bar Hue control
+// Returns hue value normalized [0..1]
+// NOTE: Other similar bars (for reference):
+// Color GuiColorBarSat() [WHITE->color]
+// Color GuiColorBarValue() [BLACK->color], HSV/HSL
+// float GuiColorBarLuminance() [BLACK->WHITE]
+int GuiColorBarHue(Rectangle bounds, const char *text, float *hue)
+{
+ int result = 0;
+ GuiState state = guiState;
+ Rectangle selector = { (float)bounds.x - GuiGetStyle(COLORPICKER, HUEBAR_SELECTOR_OVERFLOW), (float)bounds.y + (*hue)/360.0f*bounds.height - GuiGetStyle(COLORPICKER, HUEBAR_SELECTOR_HEIGHT)/2, (float)bounds.width + GuiGetStyle(COLORPICKER, HUEBAR_SELECTOR_OVERFLOW)*2, (float)GuiGetStyle(COLORPICKER, HUEBAR_SELECTOR_HEIGHT) };
+
+ // Update control
+ //--------------------------------------------------------------------
+ if ((state != STATE_DISABLED) && !guiLocked)
+ {
+ Vector2 mousePoint = GUI_POINTER_POSITION;
+
+ if (guiControlExclusiveMode) // Allows to keep dragging outside of bounds
+ {
+ if (GUI_BUTTON_DOWN)
+ {
+ if (CHECK_BOUNDS_ID(bounds, guiControlExclusiveRec))
+ {
+ state = STATE_PRESSED;
+
+ *hue = (mousePoint.y - bounds.y)*360/bounds.height;
+ if (*hue <= 0.0f) *hue = 0.0f;
+ if (*hue >= 359.0f) *hue = 359.0f;
+ }
+ }
+ else
+ {
+ guiControlExclusiveMode = false;
+ guiControlExclusiveRec = RAYGUI_CLITERAL(Rectangle){ 0, 0, 0, 0 };
+ }
+ }
+ else if (CheckCollisionPointRec(mousePoint, bounds) || CheckCollisionPointRec(mousePoint, selector))
+ {
+ if (GUI_BUTTON_DOWN)
+ {
+ state = STATE_PRESSED;
+ guiControlExclusiveMode = true;
+ guiControlExclusiveRec = bounds; // Store bounds as an identifier when dragging starts
+
+ *hue = (mousePoint.y - bounds.y)*360/bounds.height;
+ if (*hue <= 0.0f) *hue = 0.0f;
+ if (*hue >= 359.0f) *hue = 359.0f;
+
+ }
+ else state = STATE_FOCUSED;
+
+ /*if (GUI_KEY_DOWN(KEY_UP))
+ {
+ hue -= 2.0f;
+ if (hue <= 0.0f) hue = 0.0f;
+ }
+ else if (GUI_KEY_DOWN(KEY_DOWN))
+ {
+ hue += 2.0f;
+ if (hue >= 360.0f) hue = 360.0f;
+ }*/
+ }
+ }
+ //--------------------------------------------------------------------
+
+ // Draw control
+ //--------------------------------------------------------------------
+ if (state != STATE_DISABLED)
+ {
+ // Draw hue bar:color bars
+ // TODO: Use directly DrawRectangleGradientEx(bounds, color1, color2, color2, color1);
+ DrawRectangleGradientV((int)bounds.x, (int)(bounds.y), (int)bounds.width, (int)ceilf(bounds.height/6), Fade(RAYGUI_CLITERAL(Color){ 255, 0, 0, 255 }, guiAlpha), Fade(RAYGUI_CLITERAL(Color){ 255, 255, 0, 255 }, guiAlpha));
+ DrawRectangleGradientV((int)bounds.x, (int)(bounds.y + bounds.height/6), (int)bounds.width, (int)ceilf(bounds.height/6), Fade(RAYGUI_CLITERAL(Color){ 255, 255, 0, 255 }, guiAlpha), Fade(RAYGUI_CLITERAL(Color){ 0, 255, 0, 255 }, guiAlpha));
+ DrawRectangleGradientV((int)bounds.x, (int)(bounds.y + 2*(bounds.height/6)), (int)bounds.width, (int)ceilf(bounds.height/6), Fade(RAYGUI_CLITERAL(Color){ 0, 255, 0, 255 }, guiAlpha), Fade(RAYGUI_CLITERAL(Color){ 0, 255, 255, 255 }, guiAlpha));
+ DrawRectangleGradientV((int)bounds.x, (int)(bounds.y + 3*(bounds.height/6)), (int)bounds.width, (int)ceilf(bounds.height/6), Fade(RAYGUI_CLITERAL(Color){ 0, 255, 255, 255 }, guiAlpha), Fade(RAYGUI_CLITERAL(Color){ 0, 0, 255, 255 }, guiAlpha));
+ DrawRectangleGradientV((int)bounds.x, (int)(bounds.y + 4*(bounds.height/6)), (int)bounds.width, (int)ceilf(bounds.height/6), Fade(RAYGUI_CLITERAL(Color){ 0, 0, 255, 255 }, guiAlpha), Fade(RAYGUI_CLITERAL(Color){ 255, 0, 255, 255 }, guiAlpha));
+ DrawRectangleGradientV((int)bounds.x, (int)(bounds.y + 5*(bounds.height/6)), (int)bounds.width, (int)(bounds.height/6), Fade(RAYGUI_CLITERAL(Color){ 255, 0, 255, 255 }, guiAlpha), Fade(RAYGUI_CLITERAL(Color){ 255, 0, 0, 255 }, guiAlpha));
+ }
+ else DrawRectangleGradientV((int)bounds.x, (int)bounds.y, (int)bounds.width, (int)bounds.height, Fade(Fade(GetColor(GuiGetStyle(COLORPICKER, BASE_COLOR_DISABLED)), 0.1f), guiAlpha), Fade(GetColor(GuiGetStyle(COLORPICKER, BORDER_COLOR_DISABLED)), guiAlpha));
+
+ GuiDrawRectangle(bounds, GuiGetStyle(COLORPICKER, BORDER_WIDTH), GetColor(GuiGetStyle(COLORPICKER, BORDER + state*3)), BLANK);
+
+ // Draw hue bar: selector
+ GuiDrawRectangle(selector, 0, BLANK, GetColor(GuiGetStyle(COLORPICKER, BORDER + state*3)));
+ //--------------------------------------------------------------------
+
+ return result;
+}
+
+// Color Picker control
+// NOTE: It's divided in multiple controls:
+// Color GuiColorPanel(Rectangle bounds, Color color)
+// float GuiColorBarAlpha(Rectangle bounds, float alpha)
+// float GuiColorBarHue(Rectangle bounds, float value)
+// NOTE: bounds define GuiColorPanel() size
+// NOTE: this picker converts RGB to HSV, which can cause the Hue control to jump. If you have this problem, consider using the HSV variant instead
+int GuiColorPicker(Rectangle bounds, const char *text, Color *color)
+{
+ int result = 0;
+
+ Color temp = { 200, 0, 0, 255 };
+ if (color == NULL) color = &temp;
+
+ GuiColorPanel(bounds, NULL, color);
+
+ Rectangle boundsHue = { (float)bounds.x + bounds.width + GuiGetStyle(COLORPICKER, HUEBAR_PADDING), (float)bounds.y, (float)GuiGetStyle(COLORPICKER, HUEBAR_WIDTH), (float)bounds.height };
+ //Rectangle boundsAlpha = { bounds.x, bounds.y + bounds.height + GuiGetStyle(COLORPICKER, BARS_PADDING), bounds.width, GuiGetStyle(COLORPICKER, BARS_THICK) };
+
+ // NOTE: this conversion can cause low hue-resolution, if the r, g and b value are very similar, which causes the hue bar to shift around when only the GuiColorPanel is used
+ Vector3 hsv = ConvertRGBtoHSV(RAYGUI_CLITERAL(Vector3){ (*color).r/255.0f, (*color).g/255.0f, (*color).b/255.0f });
+
+ GuiColorBarHue(boundsHue, NULL, &hsv.x);
+
+ //color.a = (unsigned char)(GuiColorBarAlpha(boundsAlpha, (float)color.a/255.0f)*255.0f);
+ Vector3 rgb = ConvertHSVtoRGB(hsv);
+
+ *color = RAYGUI_CLITERAL(Color){ (unsigned char)roundf(rgb.x*255.0f), (unsigned char)roundf(rgb.y*255.0f), (unsigned char)roundf(rgb.z*255.0f), (*color).a };
+
+ return result;
+}
+
+// Color Picker control that avoids conversion to RGB and back to HSV on each call, thus avoiding jittering
+// The user can call ConvertHSVtoRGB() to convert *colorHsv value to RGB
+// NOTE: It's divided in multiple controls:
+// int GuiColorPanelHSV(Rectangle bounds, const char *text, Vector3 *colorHsv)
+// int GuiColorBarAlpha(Rectangle bounds, const char *text, float *alpha)
+// float GuiColorBarHue(Rectangle bounds, float value)
+// NOTE: bounds define GuiColorPanelHSV() size
+int GuiColorPickerHSV(Rectangle bounds, const char *text, Vector3 *colorHsv)
+{
+ int result = 0;
+
+ Vector3 tempHsv = { 0 };
+
+ if (colorHsv == NULL)
+ {
+ const Vector3 tempColor = { 200.0f/255.0f, 0.0f, 0.0f };
+ tempHsv = ConvertRGBtoHSV(tempColor);
+ colorHsv = &tempHsv;
+ }
+
+ GuiColorPanelHSV(bounds, NULL, colorHsv);
+
+ const Rectangle boundsHue = { (float)bounds.x + bounds.width + GuiGetStyle(COLORPICKER, HUEBAR_PADDING), (float)bounds.y, (float)GuiGetStyle(COLORPICKER, HUEBAR_WIDTH), (float)bounds.height };
+
+ GuiColorBarHue(boundsHue, NULL, &colorHsv->x);
+
+ return result;
+}
+
+// Color Panel control - HSV variant
+int GuiColorPanelHSV(Rectangle bounds, const char *text, Vector3 *colorHsv)
+{
+ int result = 0;
+ GuiState state = guiState;
+ Vector2 pickerSelector = { 0 };
+
+ const Color colWhite = { 255, 255, 255, 255 };
+ const Color colBlack = { 0, 0, 0, 255 };
+
+ pickerSelector.x = bounds.x + (float)colorHsv->y*bounds.width; // HSV: Saturation
+ pickerSelector.y = bounds.y + (1.0f - (float)colorHsv->z)*bounds.height; // HSV: Value
+
+ Vector3 maxHue = { colorHsv->x, 1.0f, 1.0f };
+ Vector3 rgbHue = ConvertHSVtoRGB(maxHue);
+ Color maxHueCol = { (unsigned char)(255.0f*rgbHue.x),
+ (unsigned char)(255.0f*rgbHue.y),
+ (unsigned char)(255.0f*rgbHue.z), 255 };
+
+ // Update control
+ //--------------------------------------------------------------------
+ if ((state != STATE_DISABLED) && !guiLocked)
+ {
+ Vector2 mousePoint = GUI_POINTER_POSITION;
+
+ if (guiControlExclusiveMode) // Allows to keep dragging outside of bounds
+ {
+ if (GUI_BUTTON_DOWN)
+ {
+ if (CHECK_BOUNDS_ID(bounds, guiControlExclusiveRec))
+ {
+ pickerSelector = mousePoint;
+
+ if (pickerSelector.x < bounds.x) pickerSelector.x = bounds.x;
+ if (pickerSelector.x > bounds.x + bounds.width) pickerSelector.x = bounds.x + bounds.width;
+ if (pickerSelector.y < bounds.y) pickerSelector.y = bounds.y;
+ if (pickerSelector.y > bounds.y + bounds.height) pickerSelector.y = bounds.y + bounds.height;
+
+ // Calculate color from picker
+ Vector2 colorPick = { pickerSelector.x - bounds.x, pickerSelector.y - bounds.y };
+
+ colorPick.x /= (float)bounds.width; // Get normalized value on x
+ colorPick.y /= (float)bounds.height; // Get normalized value on y
+
+ colorHsv->y = colorPick.x;
+ colorHsv->z = 1.0f - colorPick.y;
+
+ }
+ }
+ else
+ {
+ guiControlExclusiveMode = false;
+ guiControlExclusiveRec = RAYGUI_CLITERAL(Rectangle){ 0, 0, 0, 0 };
+ }
+ }
+ else if (CheckCollisionPointRec(mousePoint, bounds))
+ {
+ if (GUI_BUTTON_DOWN)
+ {
+ state = STATE_PRESSED;
+ guiControlExclusiveMode = true;
+ guiControlExclusiveRec = bounds;
+ pickerSelector = mousePoint;
+
+ // Calculate color from picker
+ Vector2 colorPick = { pickerSelector.x - bounds.x, pickerSelector.y - bounds.y };
+
+ colorPick.x /= (float)bounds.width; // Get normalized value on x
+ colorPick.y /= (float)bounds.height; // Get normalized value on y
+
+ colorHsv->y = colorPick.x;
+ colorHsv->z = 1.0f - colorPick.y;
+ }
+ else state = STATE_FOCUSED;
+ }
+ }
+ //--------------------------------------------------------------------
+
+ // Draw control
+ //--------------------------------------------------------------------
+ if (state != STATE_DISABLED)
+ {
+ DrawRectangleGradientEx(bounds, Fade(colWhite, guiAlpha), Fade(colWhite, guiAlpha), Fade(maxHueCol, guiAlpha), Fade(maxHueCol, guiAlpha));
+ DrawRectangleGradientEx(bounds, Fade(colBlack, 0), Fade(colBlack, guiAlpha), Fade(colBlack, guiAlpha), Fade(colBlack, 0));
+
+ // Draw color picker: selector
+ Rectangle selector = { pickerSelector.x - GuiGetStyle(COLORPICKER, COLOR_SELECTOR_SIZE)/2, pickerSelector.y - GuiGetStyle(COLORPICKER, COLOR_SELECTOR_SIZE)/2, (float)GuiGetStyle(COLORPICKER, COLOR_SELECTOR_SIZE), (float)GuiGetStyle(COLORPICKER, COLOR_SELECTOR_SIZE) };
+ GuiDrawRectangle(selector, 0, BLANK, colWhite);
+ }
+ else
+ {
+ DrawRectangleGradientEx(bounds, Fade(Fade(GetColor(GuiGetStyle(COLORPICKER, BASE_COLOR_DISABLED)), 0.1f), guiAlpha), Fade(Fade(colBlack, 0.6f), guiAlpha), Fade(Fade(colBlack, 0.6f), guiAlpha), Fade(Fade(GetColor(GuiGetStyle(COLORPICKER, BORDER_COLOR_DISABLED)), 0.6f), guiAlpha));
+ }
+
+ GuiDrawRectangle(bounds, GuiGetStyle(COLORPICKER, BORDER_WIDTH), GetColor(GuiGetStyle(COLORPICKER, BORDER + state*3)), BLANK);
+ //--------------------------------------------------------------------
+
+ return result;
+}
+
+// Message Box control
+int GuiMessageBox(Rectangle bounds, const char *title, const char *message, const char *buttons)
+{
+ #if !defined(RAYGUI_MESSAGEBOX_BUTTON_HEIGHT)
+ #define RAYGUI_MESSAGEBOX_BUTTON_HEIGHT 24
+ #endif
+ #if !defined(RAYGUI_MESSAGEBOX_BUTTON_PADDING)
+ #define RAYGUI_MESSAGEBOX_BUTTON_PADDING 12
+ #endif
+
+ int result = -1; // Returns clicked button from buttons list, 0 refers to closed window button
+
+ int buttonCount = 0;
+ const char **buttonsText = GuiTextSplit(buttons, ';', &buttonCount, NULL);
+ Rectangle buttonBounds = { 0 };
+ buttonBounds.x = bounds.x + RAYGUI_MESSAGEBOX_BUTTON_PADDING;
+ buttonBounds.y = bounds.y + bounds.height - RAYGUI_MESSAGEBOX_BUTTON_HEIGHT - RAYGUI_MESSAGEBOX_BUTTON_PADDING;
+ buttonBounds.width = (bounds.width - RAYGUI_MESSAGEBOX_BUTTON_PADDING*(buttonCount + 1))/buttonCount;
+ buttonBounds.height = RAYGUI_MESSAGEBOX_BUTTON_HEIGHT;
+
+ //int textWidth = GuiGetTextWidth(message) + 2;
+
+ Rectangle textBounds = { 0 };
+ textBounds.x = bounds.x + RAYGUI_MESSAGEBOX_BUTTON_PADDING;
+ textBounds.y = bounds.y + RAYGUI_WINDOWBOX_STATUSBAR_HEIGHT + RAYGUI_MESSAGEBOX_BUTTON_PADDING;
+ textBounds.width = bounds.width - RAYGUI_MESSAGEBOX_BUTTON_PADDING*2;
+ textBounds.height = bounds.height - RAYGUI_WINDOWBOX_STATUSBAR_HEIGHT - 3*RAYGUI_MESSAGEBOX_BUTTON_PADDING - RAYGUI_MESSAGEBOX_BUTTON_HEIGHT;
+
+ // Draw control
+ //--------------------------------------------------------------------
+ if (GuiWindowBox(bounds, title)) result = 0;
+
+ int prevTextAlignment = GuiGetStyle(LABEL, TEXT_ALIGNMENT);
+ GuiSetStyle(LABEL, TEXT_ALIGNMENT, TEXT_ALIGN_CENTER);
+ GuiLabel(textBounds, message);
+ GuiSetStyle(LABEL, TEXT_ALIGNMENT, prevTextAlignment);
+
+ prevTextAlignment = GuiGetStyle(BUTTON, TEXT_ALIGNMENT);
+ GuiSetStyle(BUTTON, TEXT_ALIGNMENT, TEXT_ALIGN_CENTER);
+
+ for (int i = 0; i < buttonCount; i++)
+ {
+ if (GuiButton(buttonBounds, buttonsText[i])) result = i + 1;
+ buttonBounds.x += (buttonBounds.width + RAYGUI_MESSAGEBOX_BUTTON_PADDING);
+ }
+
+ GuiSetStyle(BUTTON, TEXT_ALIGNMENT, prevTextAlignment);
+ //--------------------------------------------------------------------
+
+ return result;
+}
+
+// Text Input Box control, ask for text
+int GuiTextInputBox(Rectangle bounds, const char *title, const char *message, const char *buttons, char *text, int textMaxSize, bool *secretViewActive)
+{
+ #if !defined(RAYGUI_TEXTINPUTBOX_BUTTON_HEIGHT)
+ #define RAYGUI_TEXTINPUTBOX_BUTTON_HEIGHT 24
+ #endif
+ #if !defined(RAYGUI_TEXTINPUTBOX_BUTTON_PADDING)
+ #define RAYGUI_TEXTINPUTBOX_BUTTON_PADDING 12
+ #endif
+ #if !defined(RAYGUI_TEXTINPUTBOX_HEIGHT)
+ #define RAYGUI_TEXTINPUTBOX_HEIGHT 26
+ #endif
+
+ // Used to enable text edit mode
+ // WARNING: No more than one GuiTextInputBox() should be open at the same time
+ static bool textEditMode = false;
+
+ int result = -1;
+
+ int buttonCount = 0;
+ const char **buttonsText = GuiTextSplit(buttons, ';', &buttonCount, NULL);
+ Rectangle buttonBounds = { 0 };
+ buttonBounds.x = bounds.x + RAYGUI_TEXTINPUTBOX_BUTTON_PADDING;
+ buttonBounds.y = bounds.y + bounds.height - RAYGUI_TEXTINPUTBOX_BUTTON_HEIGHT - RAYGUI_TEXTINPUTBOX_BUTTON_PADDING;
+ buttonBounds.width = (bounds.width - RAYGUI_TEXTINPUTBOX_BUTTON_PADDING*(buttonCount + 1))/buttonCount;
+ buttonBounds.height = RAYGUI_TEXTINPUTBOX_BUTTON_HEIGHT;
+
+ int messageInputHeight = (int)bounds.height - RAYGUI_WINDOWBOX_STATUSBAR_HEIGHT - GuiGetStyle(STATUSBAR, BORDER_WIDTH) - RAYGUI_TEXTINPUTBOX_BUTTON_HEIGHT - 2*RAYGUI_TEXTINPUTBOX_BUTTON_PADDING;
+
+ Rectangle textBounds = { 0 };
+ if (message != NULL)
+ {
+ int textSize = GuiGetTextWidth(message) + 2;
+
+ textBounds.x = bounds.x + bounds.width/2 - textSize/2;
+ textBounds.y = bounds.y + RAYGUI_WINDOWBOX_STATUSBAR_HEIGHT + messageInputHeight/4 - (float)GuiGetStyle(DEFAULT, TEXT_SIZE)/2;
+ textBounds.width = (float)textSize;
+ textBounds.height = (float)GuiGetStyle(DEFAULT, TEXT_SIZE);
+ }
+
+ Rectangle textBoxBounds = { 0 };
+ textBoxBounds.x = bounds.x + RAYGUI_TEXTINPUTBOX_BUTTON_PADDING;
+ textBoxBounds.y = bounds.y + RAYGUI_WINDOWBOX_STATUSBAR_HEIGHT - RAYGUI_TEXTINPUTBOX_HEIGHT/2;
+ if (message == NULL) textBoxBounds.y = bounds.y + 24 + RAYGUI_TEXTINPUTBOX_BUTTON_PADDING;
+ else textBoxBounds.y += (messageInputHeight/2 + messageInputHeight/4);
+ textBoxBounds.width = bounds.width - RAYGUI_TEXTINPUTBOX_BUTTON_PADDING*2;
+ textBoxBounds.height = RAYGUI_TEXTINPUTBOX_HEIGHT;
+
+ // Draw control
+ //--------------------------------------------------------------------
+ if (GuiWindowBox(bounds, title)) result = 0;
+
+ // Draw message if available
+ if (message != NULL)
+ {
+ int prevTextAlignment = GuiGetStyle(LABEL, TEXT_ALIGNMENT);
+ GuiSetStyle(LABEL, TEXT_ALIGNMENT, TEXT_ALIGN_CENTER);
+ GuiLabel(textBounds, message);
+ GuiSetStyle(LABEL, TEXT_ALIGNMENT, prevTextAlignment);
+ }
+
+ int prevTextBoxAlignment = GuiGetStyle(TEXTBOX, TEXT_ALIGNMENT);
+ GuiSetStyle(TEXTBOX, TEXT_ALIGNMENT, TEXT_ALIGN_LEFT);
+
+ if (secretViewActive != NULL)
+ {
+ static char stars[] = "****************";
+ if (GuiTextBox(RAYGUI_CLITERAL(Rectangle){ textBoxBounds.x, textBoxBounds.y, textBoxBounds.width - 4 - RAYGUI_TEXTINPUTBOX_HEIGHT, textBoxBounds.height },
+ ((*secretViewActive == 1) || textEditMode)? text : stars, textMaxSize, textEditMode)) textEditMode = !textEditMode;
+
+ GuiToggle(RAYGUI_CLITERAL(Rectangle){ textBoxBounds.x + textBoxBounds.width - RAYGUI_TEXTINPUTBOX_HEIGHT, textBoxBounds.y, RAYGUI_TEXTINPUTBOX_HEIGHT, RAYGUI_TEXTINPUTBOX_HEIGHT }, (*secretViewActive == 1)? "#44#" : "#45#", secretViewActive);
+ }
+ else
+ {
+ if (GuiTextBox(textBoxBounds, text, textMaxSize, textEditMode)) textEditMode = !textEditMode;
+ }
+
+ GuiSetStyle(TEXTBOX, TEXT_ALIGNMENT, prevTextBoxAlignment);
+
+ int prevBtnTextAlignment = GuiGetStyle(BUTTON, TEXT_ALIGNMENT);
+ GuiSetStyle(BUTTON, TEXT_ALIGNMENT, TEXT_ALIGN_CENTER);
+
+ for (int i = 0; i < buttonCount; i++)
+ {
+ if (GuiButton(buttonBounds, buttonsText[i])) result = i + 1;
+ buttonBounds.x += (buttonBounds.width + RAYGUI_MESSAGEBOX_BUTTON_PADDING);
+ }
+
+ if (result >= 0) textEditMode = false;
+
+ GuiSetStyle(BUTTON, TEXT_ALIGNMENT, prevBtnTextAlignment);
+ //--------------------------------------------------------------------
+
+ return result; // Result is the pressed button index
+}
+
+// Grid control
+// NOTE: Returns grid mouse-hover selected cell
+// About drawing lines at subpixel spacing, simple put, not easy solution:
+// REF: https://stackoverflow.com/questions/4435450/2d-opengl-drawing-lines-that-dont-exactly-fit-pixel-raster
+int GuiGrid(Rectangle bounds, const char *text, float spacing, int subdivs, Vector2 *mouseCell)
+{
+ // Grid lines alpha amount
+ #if !defined(RAYGUI_GRID_ALPHA)
+ #define RAYGUI_GRID_ALPHA 0.15f
+ #endif
+
+ int result = 0;
+ GuiState state = guiState;
+
+ Vector2 mousePoint = GUI_POINTER_POSITION;
+ Vector2 currentMouseCell = { -1, -1 };
+
+ float spaceWidth = spacing/(float)subdivs;
+ int linesV = (int)(bounds.width/spaceWidth) + 1;
+ int linesH = (int)(bounds.height/spaceWidth) + 1;
+
+ int color = GuiGetStyle(DEFAULT, LINE_COLOR);
+
+ // Update control
+ //--------------------------------------------------------------------
+ if ((state != STATE_DISABLED) && !guiLocked && !guiControlExclusiveMode)
+ {
+ if (CheckCollisionPointRec(mousePoint, bounds))
+ {
+ // NOTE: Cell values must be the upper left of the cell the mouse is in
+ currentMouseCell.x = floorf((mousePoint.x - bounds.x)/spacing);
+ currentMouseCell.y = floorf((mousePoint.y - bounds.y)/spacing);
+ }
+ }
+ //--------------------------------------------------------------------
+
+ // Draw control
+ //--------------------------------------------------------------------
+ if (state == STATE_DISABLED) color = GuiGetStyle(DEFAULT, BORDER_COLOR_DISABLED);
+
+ if (subdivs > 0)
+ {
+ // Draw vertical grid lines
+ for (int i = 0; i < linesV; i++)
+ {
+ Rectangle lineV = { bounds.x + spacing*i/subdivs, bounds.y, 1, bounds.height + 1 };
+ GuiDrawRectangle(lineV, 0, BLANK, ((i%subdivs) == 0)? GuiFade(GetColor(color), RAYGUI_GRID_ALPHA*4) : GuiFade(GetColor(color), RAYGUI_GRID_ALPHA));
+ }
+
+ // Draw horizontal grid lines
+ for (int i = 0; i < linesH; i++)
+ {
+ Rectangle lineH = { bounds.x, bounds.y + spacing*i/subdivs, bounds.width + 1, 1 };
+ GuiDrawRectangle(lineH, 0, BLANK, ((i%subdivs) == 0)? GuiFade(GetColor(color), RAYGUI_GRID_ALPHA*4) : GuiFade(GetColor(color), RAYGUI_GRID_ALPHA));
+ }
+ }
+
+ if (mouseCell != NULL) *mouseCell = currentMouseCell;
+ return result;
+}
+
+//----------------------------------------------------------------------------------
+// Tooltip management functions
+// NOTE: Tooltips requires some global variables: tooltipPtr
+//----------------------------------------------------------------------------------
+// Enable gui tooltips (global state)
+void GuiEnableTooltip(void) { guiTooltip = true; }
+
+// Disable gui tooltips (global state)
+void GuiDisableTooltip(void) { guiTooltip = false; }
+
+// Set tooltip string
+void GuiSetTooltip(const char *tooltip) { guiTooltipPtr = tooltip; }
+
+//----------------------------------------------------------------------------------
+// Styles loading functions
+//----------------------------------------------------------------------------------
+
+// Load raygui style file (.rgs)
+// NOTE: By default a binary file is expected, that file could contain a custom font,
+// in that case, custom font image atlas is GRAY+ALPHA and pixel data can be compressed (DEFLATE)
+void GuiLoadStyle(const char *fileName)
+{
+ #define MAX_LINE_BUFFER_SIZE 256
+
+ bool tryBinary = false;
+ if (!guiStyleLoaded) GuiLoadStyleDefault();
+
+ // Try reading the files as text file first
+ FILE *rgsFile = fopen(fileName, "rt");
+
+ if (rgsFile != NULL)
+ {
+ char buffer[MAX_LINE_BUFFER_SIZE] = { 0 };
+ fgets(buffer, MAX_LINE_BUFFER_SIZE, rgsFile);
+
+ if (buffer[0] == '#')
+ {
+ int controlId = 0;
+ int propertyId = 0;
+ unsigned int propertyValue = 0;
+
+ while (!feof(rgsFile))
+ {
+ switch (buffer[0])
+ {
+ case 'p':
+ {
+ // Style property: p
+
+ sscanf(buffer, "p %d %d 0x%x", &controlId, &propertyId, &propertyValue);
+ GuiSetStyle(controlId, propertyId, (int)propertyValue);
+
+ } break;
+ case 'f':
+ {
+ // Style font: f
+
+ int fontSize = 0;
+ char charmapFileName[256] = { 0 };
+ char fontFileName[256] = { 0 };
+ sscanf(buffer, "f %d %s %[^\r\n]s", &fontSize, charmapFileName, fontFileName);
+
+ Font font = { 0 };
+ int *codepoints = NULL;
+ int codepointCount = 0;
+
+ if (charmapFileName[0] != '0')
+ {
+ // Load text data from file
+ // NOTE: Expected an UTF-8 array of codepoints, no separation
+ char *textData = LoadFileText(TextFormat("%s/%s", GetDirectoryPath(fileName), charmapFileName));
+ codepoints = LoadCodepoints(textData, &codepointCount);
+ UnloadFileText(textData);
+ }
+
+ if (fontFileName[0] != '\0')
+ {
+ // In case a font is already loaded and it is not default internal font, unload it
+ if (font.texture.id != GetFontDefault().texture.id) UnloadTexture(font.texture);
+
+ if (codepointCount > 0) font = LoadFontEx(TextFormat("%s/%s", GetDirectoryPath(fileName), fontFileName), fontSize, codepoints, codepointCount);
+ else font = LoadFontEx(TextFormat("%s/%s", GetDirectoryPath(fileName), fontFileName), fontSize, NULL, 0); // Default to 95 standard codepoints
+ }
+
+ // If font texture not properly loaded, revert to default font and size/spacing
+ if (font.texture.id == 0)
+ {
+ font = GetFontDefault();
+ GuiSetStyle(DEFAULT, TEXT_SIZE, 10);
+ GuiSetStyle(DEFAULT, TEXT_SPACING, 1);
+ }
+
+ UnloadCodepoints(codepoints);
+
+ if ((font.texture.id > 0) && (font.glyphCount > 0)) GuiSetFont(font);
+
+ } break;
+ default: break;
+ }
+
+ fgets(buffer, MAX_LINE_BUFFER_SIZE, rgsFile);
+ }
+ }
+ else tryBinary = true;
+
+ fclose(rgsFile);
+ }
+
+ if (tryBinary)
+ {
+ rgsFile = fopen(fileName, "rb");
+
+ if (rgsFile != NULL)
+ {
+ fseek(rgsFile, 0, SEEK_END);
+ int fileDataSize = ftell(rgsFile);
+ fseek(rgsFile, 0, SEEK_SET);
+
+ if (fileDataSize > 0)
+ {
+ unsigned char *fileData = (unsigned char *)RAYGUI_CALLOC(fileDataSize, sizeof(unsigned char));
+ if (fileData != NULL)
+ {
+ fread(fileData, sizeof(unsigned char), fileDataSize, rgsFile);
+
+ GuiLoadStyleFromMemory(fileData, fileDataSize);
+
+ RAYGUI_FREE(fileData);
+ }
+ }
+
+ fclose(rgsFile);
+ }
+ }
+}
+
+// Load style default over global style
+void GuiLoadStyleDefault(void)
+{
+ // Setting this flag first to avoid cyclic function calls
+ // when calling GuiSetStyle() and GuiGetStyle()
+ guiStyleLoaded = true;
+
+ // Initialize default LIGHT style property values
+ // WARNING: Default value are applied to all controls on set but
+ // they can be overwritten later on for every custom control
+ GuiSetStyle(DEFAULT, BORDER_COLOR_NORMAL, 0x838383ff);
+ GuiSetStyle(DEFAULT, BASE_COLOR_NORMAL, 0xc9c9c9ff);
+ GuiSetStyle(DEFAULT, TEXT_COLOR_NORMAL, 0x686868ff);
+ GuiSetStyle(DEFAULT, BORDER_COLOR_FOCUSED, 0x5bb2d9ff);
+ GuiSetStyle(DEFAULT, BASE_COLOR_FOCUSED, 0xc9effeff);
+ GuiSetStyle(DEFAULT, TEXT_COLOR_FOCUSED, 0x6c9bbcff);
+ GuiSetStyle(DEFAULT, BORDER_COLOR_PRESSED, 0x0492c7ff);
+ GuiSetStyle(DEFAULT, BASE_COLOR_PRESSED, 0x97e8ffff);
+ GuiSetStyle(DEFAULT, TEXT_COLOR_PRESSED, 0x368bafff);
+ GuiSetStyle(DEFAULT, BORDER_COLOR_DISABLED, 0xb5c1c2ff);
+ GuiSetStyle(DEFAULT, BASE_COLOR_DISABLED, 0xe6e9e9ff);
+ GuiSetStyle(DEFAULT, TEXT_COLOR_DISABLED, 0xaeb7b8ff);
+ GuiSetStyle(DEFAULT, BORDER_WIDTH, 1);
+ GuiSetStyle(DEFAULT, TEXT_PADDING, 0);
+ GuiSetStyle(DEFAULT, TEXT_ALIGNMENT, TEXT_ALIGN_CENTER);
+
+ // Initialize default extended property values
+ // NOTE: By default, extended property values are initialized to 0
+ GuiSetStyle(DEFAULT, TEXT_SIZE, 10); // DEFAULT, shared by all controls
+ GuiSetStyle(DEFAULT, TEXT_SPACING, 1); // DEFAULT, shared by all controls
+ GuiSetStyle(DEFAULT, LINE_COLOR, 0x90abb5ff); // DEFAULT specific property
+ GuiSetStyle(DEFAULT, BACKGROUND_COLOR, 0xf5f5f5ff); // DEFAULT specific property
+ GuiSetStyle(DEFAULT, TEXT_LINE_SPACING, 5); // DEFAULT, pixels between lines, from bottom of first line to top of second
+ GuiSetStyle(DEFAULT, TEXT_ALIGNMENT_VERTICAL, TEXT_ALIGN_MIDDLE); // DEFAULT, text aligned vertically to middle of text-bounds
+
+ // Initialize control-specific property values
+ // NOTE: Those properties are in default list but require specific values by control type
+ GuiSetStyle(LABEL, TEXT_ALIGNMENT, TEXT_ALIGN_LEFT);
+ GuiSetStyle(BUTTON, BORDER_WIDTH, 2);
+ GuiSetStyle(SLIDER, TEXT_PADDING, 4);
+ GuiSetStyle(PROGRESSBAR, TEXT_PADDING, 4);
+ GuiSetStyle(CHECKBOX, TEXT_PADDING, 4);
+ GuiSetStyle(CHECKBOX, TEXT_ALIGNMENT, TEXT_ALIGN_RIGHT);
+ GuiSetStyle(DROPDOWNBOX, TEXT_PADDING, 0);
+ GuiSetStyle(DROPDOWNBOX, TEXT_ALIGNMENT, TEXT_ALIGN_CENTER);
+ GuiSetStyle(TEXTBOX, TEXT_PADDING, 4);
+ GuiSetStyle(TEXTBOX, TEXT_ALIGNMENT, TEXT_ALIGN_LEFT);
+ GuiSetStyle(VALUEBOX, TEXT_PADDING, 0);
+ GuiSetStyle(VALUEBOX, TEXT_ALIGNMENT, TEXT_ALIGN_LEFT);
+ GuiSetStyle(STATUSBAR, TEXT_PADDING, 8);
+ GuiSetStyle(STATUSBAR, TEXT_ALIGNMENT, TEXT_ALIGN_LEFT);
+
+ // Initialize extended property values
+ // NOTE: By default, extended property values are initialized to 0
+ GuiSetStyle(TOGGLE, GROUP_PADDING, 2);
+ GuiSetStyle(SLIDER, SLIDER_WIDTH, 16);
+ GuiSetStyle(SLIDER, SLIDER_PADDING, 1);
+ GuiSetStyle(PROGRESSBAR, PROGRESS_PADDING, 1);
+ GuiSetStyle(CHECKBOX, CHECK_PADDING, 1);
+ GuiSetStyle(COMBOBOX, COMBO_BUTTON_WIDTH, 32);
+ GuiSetStyle(COMBOBOX, COMBO_BUTTON_SPACING, 2);
+ GuiSetStyle(DROPDOWNBOX, ARROW_PADDING, 16);
+ GuiSetStyle(DROPDOWNBOX, DROPDOWN_ITEMS_SPACING, 2);
+ GuiSetStyle(VALUEBOX, SPINNER_BUTTON_WIDTH, 24);
+ GuiSetStyle(VALUEBOX, SPINNER_BUTTON_SPACING, 2);
+ GuiSetStyle(SCROLLBAR, BORDER_WIDTH, 0);
+ GuiSetStyle(SCROLLBAR, ARROWS_VISIBLE, 0);
+ GuiSetStyle(SCROLLBAR, ARROWS_SIZE, 6);
+ GuiSetStyle(SCROLLBAR, SCROLL_SLIDER_PADDING, 0);
+ GuiSetStyle(SCROLLBAR, SCROLL_SLIDER_SIZE, 16);
+ GuiSetStyle(SCROLLBAR, SCROLL_PADDING, 0);
+ GuiSetStyle(SCROLLBAR, SCROLL_SPEED, 12);
+ GuiSetStyle(LISTVIEW, LIST_ITEMS_HEIGHT, 28);
+ GuiSetStyle(LISTVIEW, LIST_ITEMS_SPACING, 2);
+ GuiSetStyle(LISTVIEW, LIST_ITEMS_BORDER_WIDTH, 1);
+ GuiSetStyle(LISTVIEW, SCROLLBAR_WIDTH, 12);
+ GuiSetStyle(LISTVIEW, SCROLLBAR_SIDE, SCROLLBAR_RIGHT_SIDE);
+ GuiSetStyle(COLORPICKER, COLOR_SELECTOR_SIZE, 8);
+ GuiSetStyle(COLORPICKER, HUEBAR_WIDTH, 16);
+ GuiSetStyle(COLORPICKER, HUEBAR_PADDING, 8);
+ GuiSetStyle(COLORPICKER, HUEBAR_SELECTOR_HEIGHT, 8);
+ GuiSetStyle(COLORPICKER, HUEBAR_SELECTOR_OVERFLOW, 2);
+
+ if (guiFont.texture.id != GetFontDefault().texture.id)
+ {
+ // Unload previous font texture
+ UnloadTexture(guiFont.texture);
+ RAYGUI_FREE(guiFont.recs);
+ RAYGUI_FREE(guiFont.glyphs);
+ guiFont.recs = NULL;
+ guiFont.glyphs = NULL;
+
+ // Setup default raylib font
+ guiFont = GetFontDefault();
+
+ // NOTE: Default raylib font character 95 is a white square
+ Rectangle whiteChar = guiFont.recs[95];
+
+ // NOTE: Setting up a 1px padding on char rectangle to avoid pixel bleeding on MSAA filtering
+ SetShapesTexture(guiFont.texture, RAYGUI_CLITERAL(Rectangle){ whiteChar.x + 1, whiteChar.y + 1, whiteChar.width - 2, whiteChar.height - 2 });
+ }
+}
+
+// Get text with icon id prepended
+// NOTE: Useful to add icons by name id (enum) instead of
+// a number that can change between ricon versions
+const char *GuiIconText(int iconId, const char *text)
+{
+#if defined(RAYGUI_NO_ICONS)
+ return NULL;
+#else
+ static char buffer[1024] = { 0 };
+ static char iconBuffer[16] = { 0 };
+
+ if (text != NULL)
+ {
+ memset(buffer, 0, 1024);
+ snprintf(buffer, 1024, "#%03i#", iconId);
+
+ for (int i = 5; i < 1024; i++)
+ {
+ buffer[i] = text[i - 5];
+ if (text[i - 5] == '\0') break;
+ }
+
+ return buffer;
+ }
+ else
+ {
+ snprintf(iconBuffer, 16, "#%03i#", iconId);
+
+ return iconBuffer;
+ }
+#endif
+}
+
+#if !defined(RAYGUI_NO_ICONS)
+// Get full icons data pointer
+unsigned int *GuiGetIcons(void) { return guiIconsPtr; }
+
+// Load raygui icons file (.rgi)
+// NOTE: In case nameIds are required, they can be requested with loadIconsName,
+// they are returned as a guiIconsName[iconCount][RAYGUI_ICON_MAX_NAME_LENGTH],
+// WARNING: guiIconsName[]][] memory should be manually freed!
+char **GuiLoadIcons(const char *fileName, bool loadIconsName)
+{
+ // Style File Structure (.rgi)
+ // ------------------------------------------------------
+ // Offset | Size | Type | Description
+ // ------------------------------------------------------
+ // 0 | 4 | char | Signature: "rGI "
+ // 4 | 2 | short | Version: 100
+ // 6 | 2 | short | reserved
+
+ // 8 | 2 | short | Num icons (N)
+ // 10 | 2 | short | Icons size (Options: 16, 32, 64) (S)
+
+ // Icons name id (32 bytes per name id)
+ // foreach (icon)
+ // {
+ // 12+32*i | 32 | char | Icon NameId
+ // }
+
+ // Icons data: One bit per pixel, stored as unsigned int array (depends on icon size)
+ // S*S pixels/32bit per unsigned int = K unsigned int per icon
+ // foreach (icon)
+ // {
+ // ... | K | unsigned int | Icon Data
+ // }
+
+ FILE *rgiFile = fopen(fileName, "rb");
+
+ char **guiIconsName = NULL;
+
+ if (rgiFile != NULL)
+ {
+ char signature[5] = { 0 };
+ short version = 0;
+ short reserved = 0;
+ short iconCount = 0;
+ short iconSize = 0;
+
+ fread(signature, 1, 4, rgiFile);
+ fread(&version, sizeof(short), 1, rgiFile);
+ fread(&reserved, sizeof(short), 1, rgiFile);
+ fread(&iconCount, sizeof(short), 1, rgiFile);
+ fread(&iconSize, sizeof(short), 1, rgiFile);
+
+ if ((signature[0] == 'r') &&
+ (signature[1] == 'G') &&
+ (signature[2] == 'I') &&
+ (signature[3] == ' '))
+ {
+ if (loadIconsName)
+ {
+ guiIconsName = (char **)RAYGUI_CALLOC(iconCount, sizeof(char *));
+ for (int i = 0; i < iconCount; i++)
+ {
+ guiIconsName[i] = (char *)RAYGUI_CALLOC(RAYGUI_ICON_MAX_NAME_LENGTH, sizeof(char));
+ fread(guiIconsName[i], 1, RAYGUI_ICON_MAX_NAME_LENGTH, rgiFile);
+ }
+ }
+ else fseek(rgiFile, iconCount*RAYGUI_ICON_MAX_NAME_LENGTH, SEEK_CUR);
+
+ // Read icons data directly over internal icons array
+ fread(guiIconsPtr, sizeof(unsigned int), (int)iconCount*((int)iconSize*(int)iconSize/32), rgiFile);
+ }
+
+ fclose(rgiFile);
+ }
+
+ return guiIconsName;
+}
+
+// Load icons from memory
+// WARNING: Binary files only
+char **GuiLoadIconsFromMemory(const unsigned char *fileData, int dataSize, bool loadIconsName)
+{
+ unsigned char *fileDataPtr = (unsigned char *)fileData;
+ char **guiIconsName = NULL;
+
+ char signature[5] = { 0 };
+ short version = 0;
+ short reserved = 0;
+ short iconCount = 0;
+ short iconSize = 0;
+
+ memcpy(signature, fileDataPtr, 4);
+ memcpy(&version, fileDataPtr + 4, sizeof(short));
+ memcpy(&reserved, fileDataPtr + 4 + 2, sizeof(short));
+ memcpy(&iconCount, fileDataPtr + 4 + 2 + 2, sizeof(short));
+ memcpy(&iconSize, fileDataPtr + 4 + 2 + 2 + 2, sizeof(short));
+ fileDataPtr += 12;
+
+ if ((signature[0] == 'r') &&
+ (signature[1] == 'G') &&
+ (signature[2] == 'I') &&
+ (signature[3] == ' '))
+ {
+ if (loadIconsName)
+ {
+ guiIconsName = (char **)RAYGUI_CALLOC(iconCount, sizeof(char *));
+ for (int i = 0; i < iconCount; i++)
+ {
+ guiIconsName[i] = (char *)RAYGUI_CALLOC(RAYGUI_ICON_MAX_NAME_LENGTH, sizeof(char));
+ memcpy(guiIconsName[i], fileDataPtr, RAYGUI_ICON_MAX_NAME_LENGTH);
+ fileDataPtr += RAYGUI_ICON_MAX_NAME_LENGTH;
+ }
+ }
+ else
+ {
+ // Skip icon name data if not required
+ fileDataPtr += iconCount*RAYGUI_ICON_MAX_NAME_LENGTH;
+ }
+
+ int iconDataSize = iconCount*((int)iconSize*(int)iconSize/32)*(int)sizeof(unsigned int);
+ guiIconsPtr = (unsigned int *)RAYGUI_CALLOC(iconDataSize, 1);
+
+ memcpy(guiIconsPtr, fileDataPtr, iconDataSize);
+ }
+
+ return guiIconsName;
+}
+
+// Draw selected icon using rectangles pixel-by-pixel
+void GuiDrawIcon(int iconId, int posX, int posY, int pixelSize, Color color)
+{
+ #define BIT_CHECK(a,b) ((a) & (1u<<(b)))
+
+ for (int i = 0, y = 0; i < RAYGUI_ICON_SIZE*RAYGUI_ICON_SIZE/32; i++)
+ {
+ for (int k = 0; k < 32; k++)
+ {
+ if (BIT_CHECK(guiIconsPtr[iconId*RAYGUI_ICON_DATA_ELEMENTS + i], k))
+ {
+ #if !defined(RAYGUI_STANDALONE)
+ GuiDrawRectangle(RAYGUI_CLITERAL(Rectangle){ (float)posX + (k%RAYGUI_ICON_SIZE)*pixelSize, (float)posY + y*pixelSize, (float)pixelSize, (float)pixelSize }, 0, BLANK, color);
+ #endif
+ }
+
+ if ((k == 15) || (k == 31)) y++;
+ }
+ }
+}
+
+// Set icon drawing size
+void GuiSetIconScale(int scale)
+{
+ if (scale >= 1) guiIconScale = scale;
+}
+
+// Get text width considering gui style and icon size (if required)
+int GuiGetTextWidth(const char *text)
+{
+ #if !defined(ICON_TEXT_PADDING)
+ #define ICON_TEXT_PADDING 4
+ #endif
+
+ Vector2 textSize = { 0 };
+ int textIconOffset = 0;
+
+ if ((text != NULL) && (text[0] != '\0'))
+ {
+ if (text[0] == '#')
+ {
+ for (int i = 1; (i < 5) && (text[i] != '\0'); i++)
+ {
+ if (text[i] == '#')
+ {
+ textIconOffset = i;
+ break;
+ }
+ }
+ }
+
+ text += textIconOffset;
+
+ // Make sure guiFont is set, GuiGetStyle() initializes it lazynessly
+ float fontSize = (float)GuiGetStyle(DEFAULT, TEXT_SIZE);
+
+ // Custom MeasureText() implementation
+ if ((guiFont.texture.id > 0) && (text != NULL))
+ {
+ // Get size in bytes of text, considering end of line and line break
+ int size = 0;
+ for (int i = 0; i < MAX_LINE_BUFFER_SIZE; i++)
+ {
+ if ((text[i] != '\0') && (text[i] != '\n')) size++;
+ else break;
+ }
+
+ float scaleFactor = fontSize/(float)guiFont.baseSize;
+ textSize.y = (float)guiFont.baseSize*scaleFactor;
+ float glyphWidth = 0.0f;
+
+ for (int i = 0, codepointSize = 0; i < size; i += codepointSize)
+ {
+ int codepoint = GetCodepointNext(&text[i], &codepointSize);
+ int codepointIndex = GetGlyphIndex(guiFont, codepoint);
+
+ if (guiFont.glyphs[codepointIndex].advanceX == 0) glyphWidth = ((float)guiFont.recs[codepointIndex].width*scaleFactor);
+ else glyphWidth = ((float)guiFont.glyphs[codepointIndex].advanceX*scaleFactor);
+
+ textSize.x += (glyphWidth + (float)GuiGetStyle(DEFAULT, TEXT_SPACING));
+ }
+ }
+
+ if (textIconOffset > 0) textSize.x += (RAYGUI_ICON_SIZE + ICON_TEXT_PADDING);
+ }
+
+ return (int)textSize.x;
+}
+
+#endif // !RAYGUI_NO_ICONS
+
+//----------------------------------------------------------------------------------
+// Module Internal Functions Definition
+//----------------------------------------------------------------------------------
+// Load style from memory
+// WARNING: Binary files only
+static void GuiLoadStyleFromMemory(const unsigned char *fileData, int dataSize)
+{
+ unsigned char *fileDataPtr = (unsigned char *)fileData;
+
+ char signature[5] = { 0 };
+ short version = 0;
+ short reserved = 0;
+ int propertyCount = 0;
+
+ memcpy(signature, fileDataPtr, 4);
+ memcpy(&version, fileDataPtr + 4, sizeof(short));
+ memcpy(&reserved, fileDataPtr + 4 + 2, sizeof(short));
+ memcpy(&propertyCount, fileDataPtr + 4 + 2 + 2, sizeof(int));
+ fileDataPtr += 12;
+
+ if ((signature[0] == 'r') &&
+ (signature[1] == 'G') &&
+ (signature[2] == 'S') &&
+ (signature[3] == ' '))
+ {
+ short controlId = 0;
+ short propertyId = 0;
+ unsigned int propertyValue = 0;
+
+ for (int i = 0; i < propertyCount; i++)
+ {
+ memcpy(&controlId, fileDataPtr, sizeof(short));
+ memcpy(&propertyId, fileDataPtr + 2, sizeof(short));
+ memcpy(&propertyValue, fileDataPtr + 2 + 2, sizeof(unsigned int));
+ fileDataPtr += 8;
+
+ if (controlId == 0) // DEFAULT control
+ {
+ // If a DEFAULT property is loaded, it is propagated to all controls
+ // NOTE: All DEFAULT properties should be defined first in the file
+ GuiSetStyle(0, (int)propertyId, propertyValue);
+
+ if (propertyId < RAYGUI_MAX_PROPS_BASE) for (int j = 1; j < RAYGUI_MAX_CONTROLS; j++) GuiSetStyle(j, (int)propertyId, propertyValue);
+ }
+ else GuiSetStyle((int)controlId, (int)propertyId, propertyValue);
+ }
+
+ // Font loading is highly dependant on raylib API to load font data and image
+
+#if !defined(RAYGUI_STANDALONE)
+ // Load custom font if available
+ int fontDataSize = 0;
+ memcpy(&fontDataSize, fileDataPtr, sizeof(int));
+ fileDataPtr += 4;
+
+ if (fontDataSize > 0)
+ {
+ Font font = { 0 };
+ int fontType = 0; // 0-Normal, 1-SDF
+
+ memcpy(&font.baseSize, fileDataPtr, sizeof(int));
+ memcpy(&font.glyphCount, fileDataPtr + 4, sizeof(int));
+ memcpy(&fontType, fileDataPtr + 4 + 4, sizeof(int));
+ fileDataPtr += 12;
+
+ // Load font white rectangle
+ Rectangle fontWhiteRec = { 0 };
+ memcpy(&fontWhiteRec, fileDataPtr, sizeof(Rectangle));
+ fileDataPtr += 16;
+
+ // Load font image parameters
+ int fontImageUncompSize = 0;
+ int fontImageCompSize = 0;
+ memcpy(&fontImageUncompSize, fileDataPtr, sizeof(int));
+ memcpy(&fontImageCompSize, fileDataPtr + 4, sizeof(int));
+ fileDataPtr += 8;
+
+ Image imFont = { 0 };
+ imFont.mipmaps = 1;
+ memcpy(&imFont.width, fileDataPtr, sizeof(int));
+ memcpy(&imFont.height, fileDataPtr + 4, sizeof(int));
+ memcpy(&imFont.format, fileDataPtr + 4 + 4, sizeof(int));
+ fileDataPtr += 12;
+
+ if ((fontImageCompSize > 0) && (fontImageCompSize != fontImageUncompSize))
+ {
+ // Compressed font atlas image data (DEFLATE), it requires DecompressData()
+ int dataUncompSize = 0;
+ unsigned char *compData = (unsigned char *)RAYGUI_CALLOC(fontImageCompSize, sizeof(unsigned char));
+ memcpy(compData, fileDataPtr, fontImageCompSize);
+ fileDataPtr += fontImageCompSize;
+
+ imFont.data = DecompressData(compData, fontImageCompSize, &dataUncompSize);
+
+ // Security check, dataUncompSize must match the provided fontImageUncompSize
+ if (dataUncompSize != fontImageUncompSize) RAYGUI_LOG("WARNING: Uncompressed font atlas image data could be corrupted");
+
+ RAYGUI_FREE(compData);
+ }
+ else
+ {
+ // Font atlas image data is not compressed
+ imFont.data = (unsigned char *)RAYGUI_CALLOC(fontImageUncompSize, sizeof(unsigned char));
+ memcpy(imFont.data, fileDataPtr, fontImageUncompSize);
+ fileDataPtr += fontImageUncompSize;
+ }
+
+ if (font.texture.id != GetFontDefault().texture.id) UnloadTexture(font.texture);
+ font.texture = LoadTextureFromImage(imFont);
+
+ RAYGUI_FREE(imFont.data);
+
+ // Validate font atlas texture was loaded correctly
+ if (font.texture.id != 0)
+ {
+ // Load font recs data
+ int recsDataSize = font.glyphCount*sizeof(Rectangle);
+ int recsDataCompressedSize = 0;
+
+ // WARNING: Version 400 adds the compression size parameter
+ if (version >= 400)
+ {
+ // RGS files version 400 support compressed recs data
+ memcpy(&recsDataCompressedSize, fileDataPtr, sizeof(int));
+ fileDataPtr += sizeof(int);
+ }
+
+ if ((recsDataCompressedSize > 0) && (recsDataCompressedSize != recsDataSize))
+ {
+ // Recs data is compressed, uncompress it
+ unsigned char *recsDataCompressed = (unsigned char *)RAYGUI_CALLOC(recsDataCompressedSize, sizeof(unsigned char));
+
+ memcpy(recsDataCompressed, fileDataPtr, recsDataCompressedSize);
+ fileDataPtr += recsDataCompressedSize;
+
+ int recsDataUncompSize = 0;
+ font.recs = (Rectangle *)DecompressData(recsDataCompressed, recsDataCompressedSize, &recsDataUncompSize);
+
+ // Security check, data uncompressed size must match the expected original data size
+ if (recsDataUncompSize != recsDataSize) RAYGUI_LOG("WARNING: Uncompressed font recs data could be corrupted");
+
+ RAYGUI_FREE(recsDataCompressed);
+ }
+ else
+ {
+ // Recs data is uncompressed
+ font.recs = (Rectangle *)RAYGUI_CALLOC(font.glyphCount, sizeof(Rectangle));
+ for (int i = 0; i < font.glyphCount; i++)
+ {
+ memcpy(&font.recs[i], fileDataPtr, sizeof(Rectangle));
+ fileDataPtr += sizeof(Rectangle);
+ }
+ }
+
+ // Load font glyphs info data
+ int glyphsDataSize = font.glyphCount*16; // 16 bytes data per glyph
+ int glyphsDataCompressedSize = 0;
+
+ // WARNING: Version 400 adds the compression size parameter
+ if (version >= 400)
+ {
+ // RGS files version 400 support compressed glyphs data
+ memcpy(&glyphsDataCompressedSize, fileDataPtr, sizeof(int));
+ fileDataPtr += sizeof(int);
+ }
+
+ // Allocate required glyphs space to fill with data
+ font.glyphs = (GlyphInfo *)RAYGUI_CALLOC(font.glyphCount, sizeof(GlyphInfo));
+
+ if ((glyphsDataCompressedSize > 0) && (glyphsDataCompressedSize != glyphsDataSize))
+ {
+ // Glyphs data is compressed, uncompress it
+ unsigned char *glypsDataCompressed = (unsigned char *)RAYGUI_CALLOC(glyphsDataCompressedSize, sizeof(unsigned char));
+
+ memcpy(glypsDataCompressed, fileDataPtr, glyphsDataCompressedSize);
+ fileDataPtr += glyphsDataCompressedSize;
+
+ int glyphsDataUncompSize = 0;
+ unsigned char *glyphsDataUncomp = DecompressData(glypsDataCompressed, glyphsDataCompressedSize, &glyphsDataUncompSize);
+
+ // Security check, data uncompressed size must match the expected original data size
+ if (glyphsDataUncompSize != glyphsDataSize) RAYGUI_LOG("WARNING: Uncompressed font glyphs data could be corrupted");
+
+ unsigned char *glyphsDataUncompPtr = glyphsDataUncomp;
+
+ for (int i = 0; i < font.glyphCount; i++)
+ {
+ memcpy(&font.glyphs[i].value, glyphsDataUncompPtr, sizeof(int));
+ memcpy(&font.glyphs[i].offsetX, glyphsDataUncompPtr + 4, sizeof(int));
+ memcpy(&font.glyphs[i].offsetY, glyphsDataUncompPtr + 8, sizeof(int));
+ memcpy(&font.glyphs[i].advanceX, glyphsDataUncompPtr + 12, sizeof(int));
+ glyphsDataUncompPtr += 16;
+ }
+
+ RAYGUI_FREE(glypsDataCompressed);
+ RAYGUI_FREE(glyphsDataUncomp);
+ }
+ else
+ {
+ // Glyphs data is uncompressed
+ for (int i = 0; i < font.glyphCount; i++)
+ {
+ memcpy(&font.glyphs[i].value, fileDataPtr, sizeof(int));
+ memcpy(&font.glyphs[i].offsetX, fileDataPtr + 4, sizeof(int));
+ memcpy(&font.glyphs[i].offsetY, fileDataPtr + 8, sizeof(int));
+ memcpy(&font.glyphs[i].advanceX, fileDataPtr + 12, sizeof(int));
+ fileDataPtr += 16;
+ }
+ }
+ }
+ else font = GetFontDefault(); // Fallback in case of errors loading font atlas texture
+
+ GuiSetFont(font);
+
+ // Set font texture source rectangle to be used as white texture to draw shapes
+ // NOTE: It makes possible to draw shapes and text (full UI) in a single draw call
+ if ((fontWhiteRec.x > 0) &&
+ (fontWhiteRec.y > 0) &&
+ (fontWhiteRec.width > 0) &&
+ (fontWhiteRec.height > 0)) SetShapesTexture(font.texture, fontWhiteRec);
+ }
+#endif
+ }
+}
+
+// Get text bounds considering control bounds
+static Rectangle GetTextBounds(int control, Rectangle bounds)
+{
+ Rectangle textBounds = bounds;
+
+ textBounds.x = bounds.x + GuiGetStyle(control, BORDER_WIDTH);
+ textBounds.y = bounds.y + GuiGetStyle(control, BORDER_WIDTH) + GuiGetStyle(control, TEXT_PADDING);
+ textBounds.width = bounds.width - 2*GuiGetStyle(control, BORDER_WIDTH) - 2*GuiGetStyle(control, TEXT_PADDING);
+ textBounds.height = bounds.height - 2*GuiGetStyle(control, BORDER_WIDTH) - 2*GuiGetStyle(control, TEXT_PADDING); // NOTE: Text is processed line per line!
+
+ // Depending on control, TEXT_PADDING and TEXT_ALIGNMENT properties could affect the text-bounds
+ switch (control)
+ {
+ case COMBOBOX:
+ case DROPDOWNBOX:
+ case LISTVIEW:
+ // TODO: Special cases (no label): COMBOBOX, DROPDOWNBOX, LISTVIEW
+ case SLIDER:
+ case CHECKBOX:
+ case VALUEBOX:
+ case CONTROL11:
+ // TODO: More special cases (label on side): SLIDER, CHECKBOX, VALUEBOX, SPINNER
+ default:
+ {
+ // TODO: WARNING: TEXT_ALIGNMENT is already considered in GuiDrawText()
+ if (GuiGetStyle(control, TEXT_ALIGNMENT) == TEXT_ALIGN_RIGHT) textBounds.x -= GuiGetStyle(control, TEXT_PADDING);
+ else textBounds.x += GuiGetStyle(control, TEXT_PADDING);
+ }
+ break;
+ }
+
+ return textBounds;
+}
+
+// Get text icon if provided and move text cursor
+// NOTE: Up to #999# values supported for iconId
+static const char *GetTextIcon(const char *text, int *iconId)
+{
+#if !defined(RAYGUI_NO_ICONS)
+ *iconId = -1;
+ if (text[0] == '#') // Maybe it is stars with an icon, ending # must be found
+ {
+ char iconValue[4] = { 0 }; // Maximum length for icon value: 3 digits + '\0'
+
+ int pos = 1;
+ while ((pos < 4) && (text[pos] >= '0') && (text[pos] <= '9'))
+ {
+ iconValue[pos - 1] = text[pos];
+ pos++;
+ }
+
+ if (text[pos] == '#')
+ {
+ *iconId = TextToInteger(iconValue);
+
+ // Move text pointer after icon
+ // WARNING: If only icon provided, it could point to EOL character: '\0'
+ if (*iconId >= 0) text += (pos + 1);
+ }
+ }
+#endif
+
+ return text;
+}
+
+// Get text divided into lines (by line-breaks '\n')
+// WARNING: It returns pointers to new lines but it does not add NULL ('\0') terminator!
+static const char **GetTextLines(const char *text, int *count)
+{
+ #define RAYGUI_MAX_TEXT_LINES 128
+
+ static const char *lines[RAYGUI_MAX_TEXT_LINES] = { 0 };
+ for (int i = 0; i < RAYGUI_MAX_TEXT_LINES; i++) lines[i] = NULL; // Init NULL pointers to substrings
+
+ int textLength = (int)strlen(text);
+
+ lines[0] = text;
+ *count = 1;
+
+ for (int i = 0, k = 0; (i < textLength) && (*count < RAYGUI_MAX_TEXT_LINES); i++)
+ {
+ if (text[i] == '\n')
+ {
+ k++;
+ lines[k] = &text[i + 1]; // WARNING: next value is valid?
+ *count += 1;
+ }
+ }
+
+ return lines;
+}
+
+// Get text width to next space for provided string
+static float GetNextSpaceWidth(const char *text, int *nextSpaceIndex)
+{
+ float width = 0;
+ int codepointByteCount = 0;
+ int codepoint = 0;
+ int index = 0;
+ float glyphWidth = 0;
+ float scaleFactor = (float)GuiGetStyle(DEFAULT, TEXT_SIZE)/guiFont.baseSize;
+
+ for (int i = 0; text[i] != '\0'; i++)
+ {
+ if (text[i] != ' ')
+ {
+ codepoint = GetCodepoint(&text[i], &codepointByteCount);
+ index = GetGlyphIndex(guiFont, codepoint);
+ glyphWidth = (guiFont.glyphs[index].advanceX == 0)? guiFont.recs[index].width*scaleFactor : guiFont.glyphs[index].advanceX*scaleFactor;
+ width += (glyphWidth + (float)GuiGetStyle(DEFAULT, TEXT_SPACING));
+ }
+ else
+ {
+ *nextSpaceIndex = i;
+ break;
+ }
+ }
+
+ return width;
+}
+
+// Gui draw text using default font
+static void GuiDrawText(const char *text, Rectangle textBounds, int alignment, Color tint)
+{
+ #define TEXT_VALIGN_PIXEL_OFFSET(h) ((int)h%2) // Vertical alignment for pixel perfect
+
+ #if !defined(ICON_TEXT_PADDING)
+ #define ICON_TEXT_PADDING 4
+ #endif
+
+ if ((text == NULL) || (text[0] == '\0')) return; // Security check
+
+ // PROCEDURE:
+ // - Text is processed line per line
+ // - For every line, horizontal alignment is defined
+ // - For all text, vertical alignment is defined (multiline text only)
+ // - For every line, wordwrap mode is checked (useful for GuitextBox(), read-only)
+
+ // Get text lines (using '\n' as delimiter) to be processed individually
+ // WARNING: GuiTextSplit() function can't be used now because it can have already been used
+ // before the GuiDrawText() call and its buffer is static, it would be overriden :(
+ int lineCount = 0;
+ const char **lines = GetTextLines(text, &lineCount);
+
+ // Text style variables
+ //int alignment = GuiGetStyle(DEFAULT, TEXT_ALIGNMENT);
+ int alignmentVertical = GuiGetStyle(DEFAULT, TEXT_ALIGNMENT_VERTICAL);
+ int wrapMode = GuiGetStyle(DEFAULT, TEXT_WRAP_MODE); // Wrap-mode only available in read-only mode, no for text editing
+
+ // TODO: WARNING: This totalHeight is not valid for vertical alignment in case of word-wrap
+ float totalHeight = (float)(lineCount*GuiGetStyle(DEFAULT, TEXT_SIZE) + (lineCount - 1)*GuiGetStyle(DEFAULT, TEXT_LINE_SPACING));
+ float posOffsetY = 0.0f;
+
+ for (int i = 0; i < lineCount; i++)
+ {
+ int iconId = 0;
+ lines[i] = GetTextIcon(lines[i], &iconId); // Check text for icon and move cursor
+
+ // Get text position depending on alignment and iconId
+ //---------------------------------------------------------------------------------
+ Vector2 textBoundsPosition = { textBounds.x, textBounds.y };
+ float textBoundsWidthOffset = 0.0f;
+
+ // NOTE: Get text size after icon has been processed
+ // WARNING: GuiGetTextWidth() also processes text icon to get width! -> Really needed?
+ int textSizeX = GuiGetTextWidth(lines[i]);
+
+ // If text requires an icon, add size to measure
+ if (iconId >= 0)
+ {
+ textSizeX += RAYGUI_ICON_SIZE*guiIconScale;
+
+ // WARNING: If only icon provided, text could be pointing to EOF character: '\0'
+#if !defined(RAYGUI_NO_ICONS)
+ if ((lines[i] != NULL) && (lines[i][0] != '\0')) textSizeX += ICON_TEXT_PADDING;
+#endif
+ }
+
+ // Check guiTextAlign global variables
+ switch (alignment)
+ {
+ case TEXT_ALIGN_LEFT: textBoundsPosition.x = textBounds.x; break;
+ case TEXT_ALIGN_CENTER: textBoundsPosition.x = textBounds.x + textBounds.width/2 - textSizeX/2; break;
+ case TEXT_ALIGN_RIGHT: textBoundsPosition.x = textBounds.x + textBounds.width - textSizeX; break;
+ default: break;
+ }
+
+ if (textSizeX > textBounds.width && (lines[i] != NULL) && (lines[i][0] != '\0')) textBoundsPosition.x = textBounds.x;
+
+ switch (alignmentVertical)
+ {
+ // Only valid in case of wordWrap = 0;
+ case TEXT_ALIGN_TOP: textBoundsPosition.y = textBounds.y + posOffsetY; break;
+ case TEXT_ALIGN_MIDDLE: textBoundsPosition.y = textBounds.y + posOffsetY + textBounds.height/2 - totalHeight/2 + TEXT_VALIGN_PIXEL_OFFSET(textBounds.height); break;
+ case TEXT_ALIGN_BOTTOM: textBoundsPosition.y = textBounds.y + posOffsetY + textBounds.height - totalHeight + TEXT_VALIGN_PIXEL_OFFSET(textBounds.height); break;
+ default: break;
+ }
+
+ // NOTE: Make sure getting pixel-perfect coordinates,
+ // In case of decimals, it could result in text positioning artifacts
+ textBoundsPosition.x = (float)((int)textBoundsPosition.x);
+ textBoundsPosition.y = (float)((int)textBoundsPosition.y);
+ //---------------------------------------------------------------------------------
+
+ // Draw text (with icon if available)
+ //---------------------------------------------------------------------------------
+#if !defined(RAYGUI_NO_ICONS)
+ if (iconId >= 0)
+ {
+ // NOTE: Considering icon height, probably different than text size
+ GuiDrawIcon(iconId, (int)textBoundsPosition.x, (int)(textBounds.y + textBounds.height/2 - RAYGUI_ICON_SIZE*guiIconScale/2 + TEXT_VALIGN_PIXEL_OFFSET(textBounds.height)), guiIconScale, tint);
+ textBoundsPosition.x += (float)(RAYGUI_ICON_SIZE*guiIconScale + ICON_TEXT_PADDING);
+ textBoundsWidthOffset = (float)(RAYGUI_ICON_SIZE*guiIconScale + ICON_TEXT_PADDING);
+ }
+#endif
+ // Get size in bytes of text,
+ // considering end of line and line break
+ int lineSize = 0;
+ for (int c = 0; (lines[i][c] != '\0') && (lines[i][c] != '\n') && (lines[i][c] != '\r'); c++, lineSize++){ }
+ float scaleFactor = (float)GuiGetStyle(DEFAULT, TEXT_SIZE)/guiFont.baseSize;
+
+ int lastSpaceIndex = 0;
+ bool tempWrapCharMode = false;
+
+ int textOffsetY = 0;
+ float textOffsetX = 0.0f;
+ float glyphWidth = 0;
+
+ int ellipsisWidth = GuiGetTextWidth("...");
+ bool textOverflow = false;
+ for (int c = 0, codepointSize = 0; c < lineSize; c += codepointSize)
+ {
+ int codepoint = GetCodepointNext(&lines[i][c], &codepointSize);
+ int index = GetGlyphIndex(guiFont, codepoint);
+
+ // NOTE: Normally, exiting the decoding sequence as soon as a bad byte is found (and return 0x3f)
+ // but all of the bad bytes need to be drawn using the '?' symbol, moving one byte
+ if (codepoint == 0x3f) codepointSize = 1; // TODO: Review not recognized codepoints size
+
+ // Get glyph width to check if it goes out of bounds
+ if (guiFont.glyphs[index].advanceX == 0) glyphWidth = ((float)guiFont.recs[index].width*scaleFactor);
+ else glyphWidth = (float)guiFont.glyphs[index].advanceX*scaleFactor;
+
+ // Wrap mode text measuring, to validate if
+ // it can be drawn or a new line is required
+ if (wrapMode == TEXT_WRAP_CHAR)
+ {
+ // Jump to next line if current character reach end of the box limits
+ if ((textOffsetX + glyphWidth) > textBounds.width - textBoundsWidthOffset)
+ {
+ textOffsetX = 0.0f;
+ textOffsetY += (GuiGetStyle(DEFAULT, TEXT_SIZE) + GuiGetStyle(DEFAULT, TEXT_LINE_SPACING));
+
+ if (tempWrapCharMode) // Wrap at char level when too long words
+ {
+ wrapMode = TEXT_WRAP_WORD;
+ tempWrapCharMode = false;
+ }
+ }
+ }
+ else if (wrapMode == TEXT_WRAP_WORD)
+ {
+ if (codepoint == 32) lastSpaceIndex = c;
+
+ // Get width to next space in line
+ int nextSpaceIndex = 0;
+ float nextSpaceWidth = GetNextSpaceWidth(lines[i] + c, &nextSpaceIndex);
+
+ int nextSpaceIndex2 = 0;
+ float nextWordSize = GetNextSpaceWidth(lines[i] + lastSpaceIndex + 1, &nextSpaceIndex2);
+
+ if (nextWordSize > textBounds.width - textBoundsWidthOffset)
+ {
+ // Considering the case the next word is longer than bounds
+ tempWrapCharMode = true;
+ wrapMode = TEXT_WRAP_CHAR;
+ }
+ else if ((textOffsetX + nextSpaceWidth) > textBounds.width - textBoundsWidthOffset)
+ {
+ textOffsetX = 0.0f;
+ textOffsetY += (GuiGetStyle(DEFAULT, TEXT_SIZE) + GuiGetStyle(DEFAULT, TEXT_LINE_SPACING));
+ }
+ }
+
+ if (codepoint == '\n') break; // WARNING: Lines are already processed manually, no need to keep drawing after this codepoint
+ else
+ {
+ // TODO: There are multiple types of spaces in Unicode,
+ // maybe it's a good idea to add support for more: http://jkorpela.fi/chars/spaces.html
+ if ((codepoint != ' ') && (codepoint != '\t')) // Do not draw codepoints with no glyph
+ {
+ if (wrapMode == TEXT_WRAP_NONE)
+ {
+ // Draw only required text glyphs fitting the textBounds.width
+ if (textSizeX > textBounds.width)
+ {
+ if (textOffsetX <= (textBounds.width - glyphWidth - textBoundsWidthOffset - ellipsisWidth))
+ {
+ DrawTextCodepoint(guiFont, codepoint, RAYGUI_CLITERAL(Vector2){ textBoundsPosition.x + textOffsetX, textBoundsPosition.y + textOffsetY }, (float)GuiGetStyle(DEFAULT, TEXT_SIZE), GuiFade(tint, guiAlpha));
+ }
+ else if (!textOverflow)
+ {
+ textOverflow = true;
+
+ for (int j = 0; j < ellipsisWidth; j += ellipsisWidth/3)
+ {
+ DrawTextCodepoint(guiFont, '.', RAYGUI_CLITERAL(Vector2){ textBoundsPosition.x + textOffsetX + j, textBoundsPosition.y + textOffsetY }, (float)GuiGetStyle(DEFAULT, TEXT_SIZE), GuiFade(tint, guiAlpha));
+ }
+ }
+ }
+ else
+ {
+ DrawTextCodepoint(guiFont, codepoint, RAYGUI_CLITERAL(Vector2){ textBoundsPosition.x + textOffsetX, textBoundsPosition.y + textOffsetY }, (float)GuiGetStyle(DEFAULT, TEXT_SIZE), GuiFade(tint, guiAlpha));
+ }
+ }
+ else if ((wrapMode == TEXT_WRAP_CHAR) || (wrapMode == TEXT_WRAP_WORD))
+ {
+ // Draw only glyphs inside the bounds
+ if ((textBoundsPosition.y + textOffsetY) <= (textBounds.y + textBounds.height - GuiGetStyle(DEFAULT, TEXT_SIZE)))
+ {
+ DrawTextCodepoint(guiFont, codepoint, RAYGUI_CLITERAL(Vector2){ textBoundsPosition.x + textOffsetX, textBoundsPosition.y + textOffsetY }, (float)GuiGetStyle(DEFAULT, TEXT_SIZE), GuiFade(tint, guiAlpha));
+ }
+ }
+ }
+
+ if (guiFont.glyphs[index].advanceX == 0) textOffsetX += ((float)guiFont.recs[index].width*scaleFactor + (float)GuiGetStyle(DEFAULT, TEXT_SPACING));
+ else textOffsetX += ((float)guiFont.glyphs[index].advanceX*scaleFactor + (float)GuiGetStyle(DEFAULT, TEXT_SPACING));
+ }
+ }
+
+ if (wrapMode == TEXT_WRAP_NONE) posOffsetY += (float)(GuiGetStyle(DEFAULT, TEXT_SIZE) + GuiGetStyle(DEFAULT, TEXT_LINE_SPACING));
+ else if ((wrapMode == TEXT_WRAP_CHAR) || (wrapMode == TEXT_WRAP_WORD)) posOffsetY += (textOffsetY + (float)GuiGetStyle(DEFAULT, TEXT_LINE_SPACING));
+ //---------------------------------------------------------------------------------
+ }
+
+#if defined(RAYGUI_DEBUG_TEXT_BOUNDS)
+ GuiDrawRectangle(textBounds, 0, WHITE, Fade(BLUE, 0.4f));
+#endif
+}
+
+// Gui draw rectangle using default raygui plain style with borders
+static void GuiDrawRectangle(Rectangle rec, int borderWidth, Color borderColor, Color color)
+{
+ if (color.a > 0)
+ {
+ // Draw rectangle filled with color
+ DrawRectangle((int)rec.x, (int)rec.y, (int)rec.width, (int)rec.height, GuiFade(color, guiAlpha));
+ }
+
+ if (borderWidth > 0)
+ {
+ // Draw rectangle border lines with color
+ DrawRectangle((int)rec.x, (int)rec.y, (int)rec.width, borderWidth, GuiFade(borderColor, guiAlpha));
+ DrawRectangle((int)rec.x, (int)rec.y + borderWidth, borderWidth, (int)rec.height - 2*borderWidth, GuiFade(borderColor, guiAlpha));
+ DrawRectangle((int)rec.x + (int)rec.width - borderWidth, (int)rec.y + borderWidth, borderWidth, (int)rec.height - 2*borderWidth, GuiFade(borderColor, guiAlpha));
+ DrawRectangle((int)rec.x, (int)rec.y + (int)rec.height - borderWidth, (int)rec.width, borderWidth, GuiFade(borderColor, guiAlpha));
+ }
+
+#if defined(RAYGUI_DEBUG_RECS_BOUNDS)
+ DrawRectangle((int)rec.x, (int)rec.y, (int)rec.width, (int)rec.height, Fade(RED, 0.4f));
+#endif
+}
+
+// Draw tooltip using control bounds
+static void GuiTooltip(Rectangle controlRec)
+{
+ if (!guiLocked && guiTooltip && (guiTooltipPtr != NULL) && !guiControlExclusiveMode)
+ {
+ Vector2 textSize = MeasureTextEx(GuiGetFont(), guiTooltipPtr, (float)GuiGetStyle(DEFAULT, TEXT_SIZE), (float)GuiGetStyle(DEFAULT, TEXT_SPACING));
+
+ if ((controlRec.x + textSize.x + 16) > GetScreenWidth()) controlRec.x -= (textSize.x + 16 - controlRec.width);
+
+ int lineCount = 0;
+ GetTextLines(guiTooltipPtr, &lineCount); // Only using the line count
+ if ((controlRec.y + controlRec.height + textSize.y + 4 + 8*lineCount) > GetScreenHeight())
+ controlRec.y -= (controlRec.height + textSize.y + 4 + 8*lineCount);
+
+ // TODO: Probably TEXT_LINE_SPACING should be considered on panel size instead of hardcoding 8.0f
+ GuiPanel(RAYGUI_CLITERAL(Rectangle){ controlRec.x, controlRec.y + controlRec.height + 4, textSize.x + 16, textSize.y + 8.0f*lineCount }, NULL);
+
+ int textPadding = GuiGetStyle(LABEL, TEXT_PADDING);
+ int textAlignment = GuiGetStyle(LABEL, TEXT_ALIGNMENT);
+ GuiSetStyle(LABEL, TEXT_PADDING, 0);
+ GuiSetStyle(LABEL, TEXT_ALIGNMENT, TEXT_ALIGN_CENTER);
+ GuiLabel(RAYGUI_CLITERAL(Rectangle){ controlRec.x, controlRec.y + controlRec.height + 4, textSize.x + 16, textSize.y + 8.0f*lineCount }, guiTooltipPtr);
+ GuiSetStyle(LABEL, TEXT_ALIGNMENT, textAlignment);
+ GuiSetStyle(LABEL, TEXT_PADDING, textPadding);
+ }
+}
+
+// Split controls text into multiple strings
+// Also check for multiple columns (required by GuiToggleGroup())
+static const char **GuiTextSplit(const char *text, char delimiter, int *count, int *textRow)
+{
+ // NOTE: Current implementation returns a copy of the provided string with '\0' (string end delimiter)
+ // inserted between strings defined by "delimiter" parameter. No memory is dynamically allocated,
+ // all used memory is static... it has some limitations:
+ // 1. Maximum number of possible split strings is set by RAYGUI_TEXTSPLIT_MAX_ITEMS
+ // 2. Maximum size of text to split is RAYGUI_TEXTSPLIT_MAX_TEXT_SIZE
+ // NOTE: Those definitions could be externally provided if required
+
+ // TODO: HACK: GuiTextSplit() - Review how textRows are returned to user
+ // textRow is an externally provided array of integers that stores row number for every splitted string
+
+ #if !defined(RAYGUI_TEXTSPLIT_MAX_ITEMS)
+ #define RAYGUI_TEXTSPLIT_MAX_ITEMS 128
+ #endif
+ #if !defined(RAYGUI_TEXTSPLIT_MAX_TEXT_SIZE)
+ #define RAYGUI_TEXTSPLIT_MAX_TEXT_SIZE 1024
+ #endif
+
+ static const char *result[RAYGUI_TEXTSPLIT_MAX_ITEMS] = { NULL }; // String pointers array (points to buffer data)
+ static char buffer[RAYGUI_TEXTSPLIT_MAX_TEXT_SIZE] = { 0 }; // Buffer data (text input copy with '\0' added)
+ memset(buffer, 0, RAYGUI_TEXTSPLIT_MAX_TEXT_SIZE);
+
+ result[0] = buffer;
+ int counter = 1;
+
+ if (textRow != NULL) textRow[0] = 0;
+
+ // Count how many substrings text contains and point to every one of them
+ for (int i = 0; i < RAYGUI_TEXTSPLIT_MAX_TEXT_SIZE; i++)
+ {
+ buffer[i] = text[i];
+ if (buffer[i] == '\0') break;
+ else if ((buffer[i] == delimiter) || (buffer[i] == '\n'))
+ {
+ result[counter] = buffer + i + 1;
+
+ if (textRow != NULL)
+ {
+ if (buffer[i] == '\n') textRow[counter] = textRow[counter - 1] + 1;
+ else textRow[counter] = textRow[counter - 1];
+ }
+
+ buffer[i] = '\0'; // Set an end of string at this point
+
+ counter++;
+ if (counter >= RAYGUI_TEXTSPLIT_MAX_ITEMS) break;
+ }
+ }
+
+ *count = counter;
+
+ return result;
+}
+
+// Convert color data from RGB to HSV
+// NOTE: Color data should be passed normalized
+static Vector3 ConvertRGBtoHSV(Vector3 rgb)
+{
+ Vector3 hsv = { 0 };
+ float min = 0.0f;
+ float max = 0.0f;
+ float delta = 0.0f;
+
+ min = (rgb.x < rgb.y)? rgb.x : rgb.y;
+ min = (min < rgb.z)? min : rgb.z;
+
+ max = (rgb.x > rgb.y)? rgb.x : rgb.y;
+ max = (max > rgb.z)? max : rgb.z;
+
+ hsv.z = max; // Value
+ delta = max - min;
+
+ if (delta < 0.00001f)
+ {
+ hsv.y = 0.0f;
+ hsv.x = 0.0f; // Undefined, maybe NAN?
+ return hsv;
+ }
+
+ if (max > 0.0f)
+ {
+ // NOTE: If max is 0, this divide would cause a crash
+ hsv.y = (delta/max); // Saturation
+ }
+ else
+ {
+ // NOTE: If max is 0, then r = g = b = 0, s = 0, h is undefined
+ hsv.y = 0.0f;
+ hsv.x = 0.0f; // Undefined, maybe NAN?
+ return hsv;
+ }
+
+ // NOTE: Comparing float values could not work properly
+ if (rgb.x >= max) hsv.x = (rgb.y - rgb.z)/delta; // Between yellow & magenta
+ else
+ {
+ if (rgb.y >= max) hsv.x = 2.0f + (rgb.z - rgb.x)/delta; // Between cyan & yellow
+ else hsv.x = 4.0f + (rgb.x - rgb.y)/delta; // Between magenta & cyan
+ }
+
+ hsv.x *= 60.0f; // Convert to degrees
+
+ if (hsv.x < 0.0f) hsv.x += 360.0f;
+
+ return hsv;
+}
+
+// Convert color data from HSV to RGB
+// NOTE: Color data should be passed normalized
+static Vector3 ConvertHSVtoRGB(Vector3 hsv)
+{
+ Vector3 rgb = { 0 };
+ float hh = 0.0f, p = 0.0f, q = 0.0f, t = 0.0f, ff = 0.0f;
+ long i = 0;
+
+ // NOTE: Comparing float values could not work properly
+ if (hsv.y <= 0.0f)
+ {
+ rgb.x = hsv.z;
+ rgb.y = hsv.z;
+ rgb.z = hsv.z;
+ return rgb;
+ }
+
+ hh = hsv.x;
+ if (hh >= 360.0f) hh = 0.0f;
+ hh /= 60.0f;
+
+ i = (long)hh;
+ ff = hh - i;
+ p = hsv.z*(1.0f - hsv.y);
+ q = hsv.z*(1.0f - (hsv.y*ff));
+ t = hsv.z*(1.0f - (hsv.y*(1.0f - ff)));
+
+ switch (i)
+ {
+ case 0:
+ {
+ rgb.x = hsv.z;
+ rgb.y = t;
+ rgb.z = p;
+ } break;
+ case 1:
+ {
+ rgb.x = q;
+ rgb.y = hsv.z;
+ rgb.z = p;
+ } break;
+ case 2:
+ {
+ rgb.x = p;
+ rgb.y = hsv.z;
+ rgb.z = t;
+ } break;
+ case 3:
+ {
+ rgb.x = p;
+ rgb.y = q;
+ rgb.z = hsv.z;
+ } break;
+ case 4:
+ {
+ rgb.x = t;
+ rgb.y = p;
+ rgb.z = hsv.z;
+ } break;
+ case 5:
+ default:
+ {
+ rgb.x = hsv.z;
+ rgb.y = p;
+ rgb.z = q;
+ } break;
+ }
+
+ return rgb;
+}
+
+// Scroll bar control (used by GuiScrollPanel())
+static int GuiScrollBar(Rectangle bounds, int value, int minValue, int maxValue)
+{
+ GuiState state = guiState;
+
+ // Is the scrollbar horizontal or vertical?
+ bool isVertical = (bounds.width > bounds.height)? false : true;
+
+ // The size (width or height depending on scrollbar type) of the spinner buttons
+ const int spinnerSize = GuiGetStyle(SCROLLBAR, ARROWS_VISIBLE)?
+ (isVertical? (int)bounds.width - 2*GuiGetStyle(SCROLLBAR, BORDER_WIDTH) :
+ (int)bounds.height - 2*GuiGetStyle(SCROLLBAR, BORDER_WIDTH)) : 0;
+
+ // Arrow buttons [<] [>] [∧] [∨]
+ Rectangle arrowUpLeft = { 0 };
+ Rectangle arrowDownRight = { 0 };
+
+ // Actual area of the scrollbar excluding the arrow buttons
+ Rectangle scrollbar = { 0 };
+
+ // Slider bar that moves --[///]-----
+ Rectangle slider = { 0 };
+
+ // Normalize value
+ if (value > maxValue) value = maxValue;
+ if (value < minValue) value = minValue;
+
+ int valueRange = maxValue - minValue;
+ if (valueRange <= 0) valueRange = 1;
+
+ int sliderSize = GuiGetStyle(SCROLLBAR, SCROLL_SLIDER_SIZE);
+ if (sliderSize < 1) sliderSize = 1; // TODO: Consider a minimum slider size
+
+ // Calculate rectangles for all of the components
+ arrowUpLeft = RAYGUI_CLITERAL(Rectangle){
+ (float)bounds.x + GuiGetStyle(SCROLLBAR, BORDER_WIDTH),
+ (float)bounds.y + GuiGetStyle(SCROLLBAR, BORDER_WIDTH),
+ (float)spinnerSize, (float)spinnerSize };
+
+ if (isVertical)
+ {
+ arrowDownRight = RAYGUI_CLITERAL(Rectangle){ (float)bounds.x + GuiGetStyle(SCROLLBAR, BORDER_WIDTH), (float)bounds.y + bounds.height - spinnerSize - GuiGetStyle(SCROLLBAR, BORDER_WIDTH), (float)spinnerSize, (float)spinnerSize };
+ scrollbar = RAYGUI_CLITERAL(Rectangle){ bounds.x + GuiGetStyle(SCROLLBAR, BORDER_WIDTH) + GuiGetStyle(SCROLLBAR, SCROLL_PADDING), arrowUpLeft.y + arrowUpLeft.height, bounds.width - 2*(GuiGetStyle(SCROLLBAR, BORDER_WIDTH) + GuiGetStyle(SCROLLBAR, SCROLL_PADDING)), bounds.height - arrowUpLeft.height - arrowDownRight.height - 2*GuiGetStyle(SCROLLBAR, BORDER_WIDTH) };
+
+ // Make sure the slider won't get outside of the scrollbar
+ sliderSize = (sliderSize >= scrollbar.height)? ((int)scrollbar.height - 2) : sliderSize;
+ slider = RAYGUI_CLITERAL(Rectangle){
+ bounds.x + GuiGetStyle(SCROLLBAR, BORDER_WIDTH) + GuiGetStyle(SCROLLBAR, SCROLL_SLIDER_PADDING),
+ scrollbar.y + (int)(((float)(value - minValue)/valueRange)*(scrollbar.height - sliderSize)),
+ bounds.width - 2*(GuiGetStyle(SCROLLBAR, BORDER_WIDTH) + GuiGetStyle(SCROLLBAR, SCROLL_SLIDER_PADDING)),
+ (float)sliderSize };
+ }
+ else // horizontal
+ {
+ arrowDownRight = RAYGUI_CLITERAL(Rectangle){ (float)bounds.x + bounds.width - spinnerSize - GuiGetStyle(SCROLLBAR, BORDER_WIDTH), (float)bounds.y + GuiGetStyle(SCROLLBAR, BORDER_WIDTH), (float)spinnerSize, (float)spinnerSize };
+ scrollbar = RAYGUI_CLITERAL(Rectangle){ arrowUpLeft.x + arrowUpLeft.width, bounds.y + GuiGetStyle(SCROLLBAR, BORDER_WIDTH) + GuiGetStyle(SCROLLBAR, SCROLL_PADDING), bounds.width - arrowUpLeft.width - arrowDownRight.width - 2*GuiGetStyle(SCROLLBAR, BORDER_WIDTH), bounds.height - 2*(GuiGetStyle(SCROLLBAR, BORDER_WIDTH) + GuiGetStyle(SCROLLBAR, SCROLL_PADDING)) };
+
+ // Make sure the slider won't get outside of the scrollbar
+ sliderSize = (sliderSize >= scrollbar.width)? ((int)scrollbar.width - 2) : sliderSize;
+ slider = RAYGUI_CLITERAL(Rectangle){
+ scrollbar.x + (int)(((float)(value - minValue)/valueRange)*(scrollbar.width - sliderSize)),
+ bounds.y + GuiGetStyle(SCROLLBAR, BORDER_WIDTH) + GuiGetStyle(SCROLLBAR, SCROLL_SLIDER_PADDING),
+ (float)sliderSize,
+ bounds.height - 2*(GuiGetStyle(SCROLLBAR, BORDER_WIDTH) + GuiGetStyle(SCROLLBAR, SCROLL_SLIDER_PADDING)) };
+ }
+
+ // Update control
+ //--------------------------------------------------------------------
+ if ((state != STATE_DISABLED) && !guiLocked)
+ {
+ Vector2 mousePoint = GUI_POINTER_POSITION;
+
+ if (guiControlExclusiveMode) // Allows to keep dragging outside of bounds
+ {
+ if (GUI_BUTTON_DOWN &&
+ !CheckCollisionPointRec(mousePoint, arrowUpLeft) &&
+ !CheckCollisionPointRec(mousePoint, arrowDownRight))
+ {
+ if (CHECK_BOUNDS_ID(bounds, guiControlExclusiveRec))
+ {
+ state = STATE_PRESSED;
+
+ if (isVertical) value = (int)(((float)(mousePoint.y - scrollbar.y - slider.height/2)*valueRange)/(scrollbar.height - slider.height) + minValue);
+ else value = (int)(((float)(mousePoint.x - scrollbar.x - slider.width/2)*valueRange)/(scrollbar.width - slider.width) + minValue);
+ }
+ }
+ else
+ {
+ guiControlExclusiveMode = false;
+ guiControlExclusiveRec = RAYGUI_CLITERAL(Rectangle){ 0, 0, 0, 0 };
+ }
+ }
+ else if (CheckCollisionPointRec(mousePoint, bounds))
+ {
+ state = STATE_FOCUSED;
+
+ // Handle mouse wheel
+ float scrollDelta = GUI_SCROLL_DELTA;
+ if (scrollDelta != 0) value += (int)scrollDelta;
+
+ // Handle mouse button down
+ if (GUI_BUTTON_PRESSED)
+ {
+ guiControlExclusiveMode = true;
+ guiControlExclusiveRec = bounds; // Store bounds as an identifier when dragging starts
+
+ // Check arrows click
+ if (CheckCollisionPointRec(mousePoint, arrowUpLeft)) value -= valueRange/GuiGetStyle(SCROLLBAR, SCROLL_SPEED);
+ else if (CheckCollisionPointRec(mousePoint, arrowDownRight)) value += valueRange/GuiGetStyle(SCROLLBAR, SCROLL_SPEED);
+ else if (!CheckCollisionPointRec(mousePoint, slider))
+ {
+ // If click on scrollbar position but not on slider, place slider directly on that position
+ if (isVertical) value = (int)(((float)(mousePoint.y - scrollbar.y - slider.height/2)*valueRange)/(scrollbar.height - slider.height) + minValue);
+ else value = (int)(((float)(mousePoint.x - scrollbar.x - slider.width/2)*valueRange)/(scrollbar.width - slider.width) + minValue);
+ }
+
+ state = STATE_PRESSED;
+ }
+
+ // Keyboard control on mouse hover scrollbar
+ /*
+ if (isVertical)
+ {
+ if (GUI_KEY_DOWN(KEY_DOWN)) value += 5;
+ else if (GUI_KEY_DOWN(KEY_UP)) value -= 5;
+ }
+ else
+ {
+ if (GUI_KEY_DOWN(KEY_RIGHT)) value += 5;
+ else if (GUI_KEY_DOWN(KEY_LEFT)) value -= 5;
+ }
+ */
+ }
+
+ // Normalize value
+ if (value > maxValue) value = maxValue;
+ if (value < minValue) value = minValue;
+ }
+ //--------------------------------------------------------------------
+
+ // Draw control
+ //--------------------------------------------------------------------
+ GuiDrawRectangle(bounds, GuiGetStyle(SCROLLBAR, BORDER_WIDTH), GetColor(GuiGetStyle(LISTVIEW, BORDER + state*3)), GetColor(GuiGetStyle(DEFAULT, BORDER_COLOR_DISABLED))); // Draw the background
+
+ GuiDrawRectangle(scrollbar, 0, BLANK, GetColor(GuiGetStyle(BUTTON, BASE_COLOR_NORMAL))); // Draw the scrollbar active area background
+ GuiDrawRectangle(slider, 0, BLANK, GetColor(GuiGetStyle(SLIDER, BORDER + state*3))); // Draw the slider bar
+
+ // Draw arrows (using icon if available)
+ if (GuiGetStyle(SCROLLBAR, ARROWS_VISIBLE))
+ {
+#if defined(RAYGUI_NO_ICONS)
+ GuiDrawText(isVertical? "^" : "<",
+ RAYGUI_CLITERAL(Rectangle){ arrowUpLeft.x, arrowUpLeft.y, isVertical? bounds.width : bounds.height, isVertical? bounds.width : bounds.height },
+ TEXT_ALIGN_CENTER, GetColor(GuiGetStyle(DROPDOWNBOX, TEXT + (state*3))));
+ GuiDrawText(isVertical? "v" : ">",
+ RAYGUI_CLITERAL(Rectangle){ arrowDownRight.x, arrowDownRight.y, isVertical? bounds.width : bounds.height, isVertical? bounds.width : bounds.height },
+ TEXT_ALIGN_CENTER, GetColor(GuiGetStyle(DROPDOWNBOX, TEXT + (state*3))));
+#else
+ GuiDrawText(isVertical? "#121#" : "#118#",
+ RAYGUI_CLITERAL(Rectangle){ arrowUpLeft.x, arrowUpLeft.y, isVertical? bounds.width : bounds.height, isVertical? bounds.width : bounds.height },
+ TEXT_ALIGN_CENTER, GetColor(GuiGetStyle(SCROLLBAR, TEXT + state*3))); // ICON_ARROW_UP_FILL / ICON_ARROW_LEFT_FILL
+ GuiDrawText(isVertical? "#120#" : "#119#",
+ RAYGUI_CLITERAL(Rectangle){ arrowDownRight.x, arrowDownRight.y, isVertical? bounds.width : bounds.height, isVertical? bounds.width : bounds.height },
+ TEXT_ALIGN_CENTER, GetColor(GuiGetStyle(SCROLLBAR, TEXT + state*3))); // ICON_ARROW_DOWN_FILL / ICON_ARROW_RIGHT_FILL
+#endif
+ }
+ //--------------------------------------------------------------------
+
+ return value;
+}
+
+// Color fade-in or fade-out, alpha goes from 0.0f to 1.0f
+// WARNING: It multiplies current alpha by alpha scale factor
+static Color GuiFade(Color color, float alpha)
+{
+ if (alpha < 0.0f) alpha = 0.0f;
+ else if (alpha > 1.0f) alpha = 1.0f;
+
+ Color result = { color.r, color.g, color.b, (unsigned char)(color.a*alpha) };
+
+ return result;
+}
+
+#if defined(RAYGUI_STANDALONE)
+// Returns a Color struct from hexadecimal value
+static Color GetColor(int hexValue)
+{
+ Color color;
+
+ color.r = (unsigned char)(hexValue >> 24) & 0xff;
+ color.g = (unsigned char)(hexValue >> 16) & 0xff;
+ color.b = (unsigned char)(hexValue >> 8) & 0xff;
+ color.a = (unsigned char)hexValue & 0xff;
+
+ return color;
+}
+
+// Returns hexadecimal value for a Color
+static int ColorToInt(Color color)
+{
+ return (((int)color.r << 24) | ((int)color.g << 16) | ((int)color.b << 8) | (int)color.a);
+}
+
+// Check if point is inside rectangle
+static bool CheckCollisionPointRec(Vector2 point, Rectangle rec)
+{
+ bool collision = false;
+
+ if ((point.x >= rec.x) && (point.x <= (rec.x + rec.width)) &&
+ (point.y >= rec.y) && (point.y <= (rec.y + rec.height))) collision = true;
+
+ return collision;
+}
+
+// Formatting of text with variables to 'embed'
+static const char *TextFormat(const char *text, ...)
+{
+ #if !defined(RAYGUI_TEXTFORMAT_MAX_SIZE)
+ #define RAYGUI_TEXTFORMAT_MAX_SIZE 256
+ #endif
+
+ static char buffer[RAYGUI_TEXTFORMAT_MAX_SIZE];
+
+ va_list args;
+ va_start(args, text);
+ vsnprintf(buffer, RAYGUI_TEXTFORMAT_MAX_SIZE, text, args);
+ va_end(args);
+
+ return buffer;
+}
+
+// Draw rectangle with vertical gradient fill color
+// NOTE: This function is only used by GuiColorPicker()
+static void DrawRectangleGradientV(int posX, int posY, int width, int height, Color color1, Color color2)
+{
+ Rectangle bounds = { (float)posX, (float)posY, (float)width, (float)height };
+ DrawRectangleGradientEx(bounds, color1, color2, color2, color1);
+}
+
+// Split string into multiple strings
+const char **TextSplit(const char *text, char delimiter, int *count)
+{
+ // NOTE: Current implementation returns a copy of the provided string with '\0' (string end delimiter)
+ // inserted between strings defined by "delimiter" parameter. No memory is dynamically allocated,
+ // all used memory is static... it has some limitations:
+ // 1. Maximum number of possible split strings is set by RAYGUI_TEXTSPLIT_MAX_ITEMS
+ // 2. Maximum size of text to split is RAYGUI_TEXTSPLIT_MAX_TEXT_SIZE
+
+ #if !defined(RAYGUI_TEXTSPLIT_MAX_ITEMS)
+ #define RAYGUI_TEXTSPLIT_MAX_ITEMS 128
+ #endif
+ #if !defined(RAYGUI_TEXTSPLIT_MAX_TEXT_SIZE)
+ #define RAYGUI_TEXTSPLIT_MAX_TEXT_SIZE 1024
+ #endif
+
+ static const char *result[RAYGUI_TEXTSPLIT_MAX_ITEMS] = { NULL };
+ static char buffer[RAYGUI_TEXTSPLIT_MAX_TEXT_SIZE] = { 0 };
+ memset(buffer, 0, RAYGUI_TEXTSPLIT_MAX_TEXT_SIZE);
+
+ result[0] = buffer;
+ int counter = 0;
+
+ if (text != NULL)
+ {
+ counter = 1;
+
+ // Count how many substrings text contains and point to every one of them
+ for (int i = 0; i < RAYGUI_TEXTSPLIT_MAX_TEXT_SIZE; i++)
+ {
+ buffer[i] = text[i];
+ if (buffer[i] == '\0') break;
+ else if (buffer[i] == delimiter)
+ {
+ buffer[i] = '\0'; // Set an end of string at this point
+ result[counter] = buffer + i + 1;
+ counter++;
+
+ if (counter == RAYGUI_TEXTSPLIT_MAX_ITEMS) break;
+ }
+ }
+ }
+
+ *count = counter;
+ return result;
+}
+
+// Get integer value from text
+// NOTE: This function replaces atoi() [stdlib.h]
+static int TextToInteger(const char *text)
+{
+ int value = 0;
+ int sign = 1;
+
+ if ((text[0] == '+') || (text[0] == '-'))
+ {
+ if (text[0] == '-') sign = -1;
+ text++;
+ }
+
+ for (int i = 0; ((text[i] >= '0') && (text[i] <= '9')); i++) value = value*10 + (int)(text[i] - '0');
+
+ return value*sign;
+}
+
+// Get float value from text
+// NOTE: This function replaces atof() [stdlib.h]
+// WARNING: Only '.' character is understood as decimal point
+static float TextToFloat(const char *text)
+{
+ float value = 0.0f;
+ float sign = 1.0f;
+
+ if ((text[0] == '+') || (text[0] == '-'))
+ {
+ if (text[0] == '-') sign = -1.0f;
+ text++;
+ }
+
+ int i = 0;
+ for (; ((text[i] >= '0') && (text[i] <= '9')); i++) value = value*10.0f + (float)(text[i] - '0');
+
+ if (text[i++] != '.') value *= sign;
+ else
+ {
+ float divisor = 10.0f;
+ for (; ((text[i] >= '0') && (text[i] <= '9')); i++)
+ {
+ value += ((float)(text[i] - '0'))/divisor;
+ divisor = divisor*10.0f;
+ }
+ }
+
+ return value;
+}
+
+// Encode codepoint into UTF-8 text (char array size returned as parameter)
+static const char *CodepointToUTF8(int codepoint, int *byteSize)
+{
+ static char utf8[6] = { 0 };
+ int size = 0;
+
+ if (codepoint <= 0x7f)
+ {
+ utf8[0] = (char)codepoint;
+ size = 1;
+ }
+ else if (codepoint <= 0x7ff)
+ {
+ utf8[0] = (char)(((codepoint >> 6) & 0x1f) | 0xc0);
+ utf8[1] = (char)((codepoint & 0x3f) | 0x80);
+ size = 2;
+ }
+ else if (codepoint <= 0xffff)
+ {
+ utf8[0] = (char)(((codepoint >> 12) & 0x0f) | 0xe0);
+ utf8[1] = (char)(((codepoint >> 6) & 0x3f) | 0x80);
+ utf8[2] = (char)((codepoint & 0x3f) | 0x80);
+ size = 3;
+ }
+ else if (codepoint <= 0x10ffff)
+ {
+ utf8[0] = (char)(((codepoint >> 18) & 0x07) | 0xf0);
+ utf8[1] = (char)(((codepoint >> 12) & 0x3f) | 0x80);
+ utf8[2] = (char)(((codepoint >> 6) & 0x3f) | 0x80);
+ utf8[3] = (char)((codepoint & 0x3f) | 0x80);
+ size = 4;
+ }
+
+ *byteSize = size;
+
+ return utf8;
+}
+
+// Get next codepoint in a UTF-8 encoded text, scanning until '\0' is found
+// When a invalid UTF-8 byte is encountered, exiting as soon as possible and returning a '?'(0x3f) codepoint
+// Total number of bytes processed are returned as a parameter
+// NOTE: The standard says U+FFFD should be returned in case of errors
+// but that character is not supported by the default font in raylib
+static int GetCodepointNext(const char *text, int *codepointSize)
+{
+ const char *ptr = text;
+ int codepoint = 0x3f; // Codepoint (defaults to '?')
+ *codepointSize = 1;
+
+ // Get current codepoint and bytes processed
+ if (0xf0 == (0xf8 & ptr[0]))
+ {
+ // 4 byte UTF-8 codepoint
+ if (((ptr[1] & 0xC0) ^ 0x80) || ((ptr[2] & 0xC0) ^ 0x80) || ((ptr[3] & 0xC0) ^ 0x80)) { return codepoint; } //10xxxxxx checks
+ codepoint = ((0x07 & ptr[0]) << 18) | ((0x3f & ptr[1]) << 12) | ((0x3f & ptr[2]) << 6) | (0x3f & ptr[3]);
+ *codepointSize = 4;
+ }
+ else if (0xe0 == (0xf0 & ptr[0]))
+ {
+ // 3 byte UTF-8 codepoint
+ if (((ptr[1] & 0xC0) ^ 0x80) || ((ptr[2] & 0xC0) ^ 0x80)) { return codepoint; } //10xxxxxx checks
+ codepoint = ((0x0f & ptr[0]) << 12) | ((0x3f & ptr[1]) << 6) | (0x3f & ptr[2]);
+ *codepointSize = 3;
+ }
+ else if (0xc0 == (0xe0 & ptr[0]))
+ {
+ // 2 byte UTF-8 codepoint
+ if ((ptr[1] & 0xC0) ^ 0x80) { return codepoint; } //10xxxxxx checks
+ codepoint = ((0x1f & ptr[0]) << 6) | (0x3f & ptr[1]);
+ *codepointSize = 2;
+ }
+ else if (0x00 == (0x80 & ptr[0]))
+ {
+ // 1 byte UTF-8 codepoint
+ codepoint = ptr[0];
+ *codepointSize = 1;
+ }
+
+ return codepoint;
+}
+#endif // RAYGUI_STANDALONE
+
+#endif // RAYGUI_IMPLEMENTATION
diff --git a/examples/others/reasings.h b/examples/others/reasings.h
deleted file mode 100644
index c3ee1169f..000000000
--- a/examples/others/reasings.h
+++ /dev/null
@@ -1,263 +0,0 @@
-/*******************************************************************************************
-*
-* reasings - raylib easings library, based on Robert Penner library
-*
-* Useful easing functions for values animation
-*
-* This header uses:
-* #define REASINGS_STATIC_INLINE // Inlines all functions code, so it runs faster.
-* // This requires lots of memory on system.
-* How to use:
-* The four inputs t,b,c,d are defined as follows:
-* t = current time (in any unit measure, but same unit as duration)
-* b = starting value to interpolate
-* c = the total change in value of b that needs to occur
-* d = total time it should take to complete (duration)
-*
-* Example:
-*
-* int currentTime = 0;
-* int duration = 100;
-* float startPositionX = 0.0f;
-* float finalPositionX = 30.0f;
-* float currentPositionX = startPositionX;
-*
-* while (currentPositionX < finalPositionX)
-* {
-* currentPositionX = EaseSineIn(currentTime, startPositionX, finalPositionX - startPositionX, duration);
-* currentTime++;
-* }
-*
-* A port of Robert Penner's easing equations to C (http://robertpenner.com/easing/)
-*
-* Robert Penner License
-* ---------------------------------------------------------------------------------
-* Open source under the BSD License.
-*
-* Copyright (c) 2001 Robert Penner. All rights reserved.
-*
-* Redistribution and use in source and binary forms, with or without modification,
-* are permitted provided that the following conditions are met:
-*
-* - Redistributions of source code must retain the above copyright notice,
-* this list of conditions and the following disclaimer.
-* - Redistributions in binary form must reproduce the above copyright notice,
-* this list of conditions and the following disclaimer in the documentation
-* and/or other materials provided with the distribution.
-* - Neither the name of the author nor the names of contributors may be used
-* to endorse or promote products derived from this software without specific
-* prior written permission.
-*
-* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
-* ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
-* WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
-* IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT,
-* INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
-* BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
-* DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
-* LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE
-* OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED
-* OF THE POSSIBILITY OF SUCH DAMAGE.
-* ---------------------------------------------------------------------------------
-*
-* Copyright (c) 2015-2024 Ramon Santamaria (@raysan5)
-*
-* This software is provided "as-is", without any express or implied warranty. In no event
-* will the authors be held liable for any damages arising from the use of this software.
-*
-* Permission is granted to anyone to use this software for any purpose, including commercial
-* applications, and to alter it and redistribute it freely, subject to the following restrictions:
-*
-* 1. The origin of this software must not be misrepresented; you must not claim that you
-* wrote the original software. If you use this software in a product, an acknowledgment
-* in the product documentation would be appreciated but is not required.
-*
-* 2. Altered source versions must be plainly marked as such, and must not be misrepresented
-* as being the original software.
-*
-* 3. This notice may not be removed or altered from any source distribution.
-*
-**********************************************************************************************/
-
-#ifndef REASINGS_H
-#define REASINGS_H
-
-#define REASINGS_STATIC_INLINE // NOTE: By default, compile functions as static inline
-
-#if defined(REASINGS_STATIC_INLINE)
- #define EASEDEF static inline
-#else
- #define EASEDEF extern
-#endif
-
-#include // Required for: sinf(), cosf(), sqrtf(), powf()
-
-#ifndef PI
- #define PI 3.14159265358979323846f //Required as PI is not always defined in math.h
-#endif
-
-#if defined(__cplusplus)
-extern "C" { // Prevents name mangling of functions
-#endif
-
-// Linear Easing functions
-EASEDEF float EaseLinearNone(float t, float b, float c, float d) { return (c*t/d + b); } // Ease: Linear
-EASEDEF float EaseLinearIn(float t, float b, float c, float d) { return (c*t/d + b); } // Ease: Linear In
-EASEDEF float EaseLinearOut(float t, float b, float c, float d) { return (c*t/d + b); } // Ease: Linear Out
-EASEDEF float EaseLinearInOut(float t, float b, float c, float d) { return (c*t/d + b); } // Ease: Linear In Out
-
-// Sine Easing functions
-EASEDEF float EaseSineIn(float t, float b, float c, float d) { return (-c*cosf(t/d*(PI/2.0f)) + c + b); } // Ease: Sine In
-EASEDEF float EaseSineOut(float t, float b, float c, float d) { return (c*sinf(t/d*(PI/2.0f)) + b); } // Ease: Sine Out
-EASEDEF float EaseSineInOut(float t, float b, float c, float d) { return (-c/2.0f*(cosf(PI*t/d) - 1.0f) + b); } // Ease: Sine In Out
-
-// Circular Easing functions
-EASEDEF float EaseCircIn(float t, float b, float c, float d) { t /= d; return (-c*(sqrtf(1.0f - t*t) - 1.0f) + b); } // Ease: Circular In
-EASEDEF float EaseCircOut(float t, float b, float c, float d) { t = t/d - 1.0f; return (c*sqrtf(1.0f - t*t) + b); } // Ease: Circular Out
-EASEDEF float EaseCircInOut(float t, float b, float c, float d) // Ease: Circular In Out
-{
- if ((t/=d/2.0f) < 1.0f) return (-c/2.0f*(sqrtf(1.0f - t*t) - 1.0f) + b);
- t -= 2.0f; return (c/2.0f*(sqrtf(1.0f - t*t) + 1.0f) + b);
-}
-
-// Cubic Easing functions
-EASEDEF float EaseCubicIn(float t, float b, float c, float d) { t /= d; return (c*t*t*t + b); } // Ease: Cubic In
-EASEDEF float EaseCubicOut(float t, float b, float c, float d) { t = t/d - 1.0f; return (c*(t*t*t + 1.0f) + b); } // Ease: Cubic Out
-EASEDEF float EaseCubicInOut(float t, float b, float c, float d) // Ease: Cubic In Out
-{
- if ((t/=d/2.0f) < 1.0f) return (c/2.0f*t*t*t + b);
- t -= 2.0f; return (c/2.0f*(t*t*t + 2.0f) + b);
-}
-
-// Quadratic Easing functions
-EASEDEF float EaseQuadIn(float t, float b, float c, float d) { t /= d; return (c*t*t + b); } // Ease: Quadratic In
-EASEDEF float EaseQuadOut(float t, float b, float c, float d) { t /= d; return (-c*t*(t - 2.0f) + b); } // Ease: Quadratic Out
-EASEDEF float EaseQuadInOut(float t, float b, float c, float d) // Ease: Quadratic In Out
-{
- if ((t/=d/2) < 1) return (((c/2)*(t*t)) + b);
- return (-c/2.0f*(((t - 1.0f)*(t - 3.0f)) - 1.0f) + b);
-}
-
-// Exponential Easing functions
-EASEDEF float EaseExpoIn(float t, float b, float c, float d) { return (t == 0.0f) ? b : (c*powf(2.0f, 10.0f*(t/d - 1.0f)) + b); } // Ease: Exponential In
-EASEDEF float EaseExpoOut(float t, float b, float c, float d) { return (t == d) ? (b + c) : (c*(-powf(2.0f, -10.0f*t/d) + 1.0f) + b); } // Ease: Exponential Out
-EASEDEF float EaseExpoInOut(float t, float b, float c, float d) // Ease: Exponential In Out
-{
- if (t == 0.0f) return b;
- if (t == d) return (b + c);
- if ((t/=d/2.0f) < 1.0f) return (c/2.0f*powf(2.0f, 10.0f*(t - 1.0f)) + b);
-
- return (c/2.0f*(-powf(2.0f, -10.0f*(t - 1.0f)) + 2.0f) + b);
-}
-
-// Back Easing functions
-EASEDEF float EaseBackIn(float t, float b, float c, float d) // Ease: Back In
-{
- float s = 1.70158f;
- float postFix = t/=d;
- return (c*(postFix)*t*((s + 1.0f)*t - s) + b);
-}
-
-EASEDEF float EaseBackOut(float t, float b, float c, float d) // Ease: Back Out
-{
- float s = 1.70158f;
- t = t/d - 1.0f;
- return (c*(t*t*((s + 1.0f)*t + s) + 1.0f) + b);
-}
-
-EASEDEF float EaseBackInOut(float t, float b, float c, float d) // Ease: Back In Out
-{
- float s = 1.70158f;
- if ((t/=d/2.0f) < 1.0f)
- {
- s *= 1.525f;
- return (c/2.0f*(t*t*((s + 1.0f)*t - s)) + b);
- }
-
- float postFix = t-=2.0f;
- s *= 1.525f;
- return (c/2.0f*((postFix)*t*((s + 1.0f)*t + s) + 2.0f) + b);
-}
-
-// Bounce Easing functions
-EASEDEF float EaseBounceOut(float t, float b, float c, float d) // Ease: Bounce Out
-{
- if ((t/=d) < (1.0f/2.75f))
- {
- return (c*(7.5625f*t*t) + b);
- }
- else if (t < (2.0f/2.75f))
- {
- float postFix = t-=(1.5f/2.75f);
- return (c*(7.5625f*(postFix)*t + 0.75f) + b);
- }
- else if (t < (2.5/2.75))
- {
- float postFix = t-=(2.25f/2.75f);
- return (c*(7.5625f*(postFix)*t + 0.9375f) + b);
- }
- else
- {
- float postFix = t-=(2.625f/2.75f);
- return (c*(7.5625f*(postFix)*t + 0.984375f) + b);
- }
-}
-
-EASEDEF float EaseBounceIn(float t, float b, float c, float d) { return (c - EaseBounceOut(d - t, 0.0f, c, d) + b); } // Ease: Bounce In
-EASEDEF float EaseBounceInOut(float t, float b, float c, float d) // Ease: Bounce In Out
-{
- if (t < d/2.0f) return (EaseBounceIn(t*2.0f, 0.0f, c, d)*0.5f + b);
- else return (EaseBounceOut(t*2.0f - d, 0.0f, c, d)*0.5f + c*0.5f + b);
-}
-
-// Elastic Easing functions
-EASEDEF float EaseElasticIn(float t, float b, float c, float d) // Ease: Elastic In
-{
- if (t == 0.0f) return b;
- if ((t/=d) == 1.0f) return (b + c);
-
- float p = d*0.3f;
- float a = c;
- float s = p/4.0f;
- float postFix = a*powf(2.0f, 10.0f*(t-=1.0f));
-
- return (-(postFix*sinf((t*d-s)*(2.0f*PI)/p )) + b);
-}
-
-EASEDEF float EaseElasticOut(float t, float b, float c, float d) // Ease: Elastic Out
-{
- if (t == 0.0f) return b;
- if ((t/=d) == 1.0f) return (b + c);
-
- float p = d*0.3f;
- float a = c;
- float s = p/4.0f;
-
- return (a*powf(2.0f,-10.0f*t)*sinf((t*d-s)*(2.0f*PI)/p) + c + b);
-}
-
-EASEDEF float EaseElasticInOut(float t, float b, float c, float d) // Ease: Elastic In Out
-{
- if (t == 0.0f) return b;
- if ((t/=d/2.0f) == 2.0f) return (b + c);
-
- float p = d*(0.3f*1.5f);
- float a = c;
- float s = p/4.0f;
-
- if (t < 1.0f)
- {
- float postFix = a*powf(2.0f, 10.0f*(t-=1.0f));
- return -0.5f*(postFix*sinf((t*d-s)*(2.0f*PI)/p)) + b;
- }
-
- float postFix = a*powf(2.0f, -10.0f*(t-=1.0f));
-
- return (postFix*sinf((t*d-s)*(2.0f*PI)/p)*0.5f + c + b);
-}
-
-#if defined(__cplusplus)
-}
-#endif
-
-#endif // REASINGS_H
diff --git a/examples/others/web_basic_window.png b/examples/others/web_basic_window.png
deleted file mode 100644
index 346184417..000000000
Binary files a/examples/others/web_basic_window.png and /dev/null differ
diff --git a/examples/shaders/raygui.h b/examples/shaders/raygui.h
index 88fe5cc5b..67c16be45 100644
--- a/examples/shaders/raygui.h
+++ b/examples/shaders/raygui.h
@@ -1,6 +1,6 @@
/*******************************************************************************************
*
-* raygui v4.5-dev - A simple and easy-to-use immediate-mode gui library
+* raygui v5.0-dev - A simple and easy-to-use immediate-mode gui library
*
* DESCRIPTION:
* raygui is a tools-dev-focused immediate-mode-gui library based on raylib but also
@@ -83,8 +83,8 @@
* used for all controls, when any of those base values is set, it is automatically populated to all
* controls, so, specific control values overwriting generic style should be set after base values
*
-* After the first BASE set we have the EXTENDED properties (by default guiStyle[16..23]), those
-* properties are actually common to all controls and can not be overwritten individually (like BASE ones)
+* After the first BASE properties set, the EXTENDED properties set is defined (by default guiStyle[16..23]),
+* those properties are actually common to all controls and can not be overwritten individually (like BASE ones)
* Some of those properties are: TEXT_SIZE, TEXT_SPACING, LINE_COLOR, BACKGROUND_COLOR
*
* Custom control properties can be defined using the EXTENDED properties for each independent control.
@@ -141,13 +141,14 @@
* Draw text bounds rectangles for debug
*
* VERSIONS HISTORY:
-* 5.0 (xx-Nov-2025) ADDED: Support up to 32 controls (v500)
+* 5.0 (xx-Mar-2026) ADDED: Support up to 32 controls (v500)
* ADDED: guiControlExclusiveMode and guiControlExclusiveRec for exclusive modes
* ADDED: GuiValueBoxFloat()
* ADDED: GuiDropdonwBox() properties: DROPDOWN_ARROW_HIDDEN, DROPDOWN_ROLL_UP
* ADDED: GuiListView() property: LIST_ITEMS_BORDER_WIDTH
* ADDED: GuiLoadIconsFromMemory()
* ADDED: Multiple new icons
+* ADDED: Macros for inputs customization, raylib decoupling
* REMOVED: GuiSpinner() from controls list, using BUTTON + VALUEBOX properties
* REMOVED: GuiSliderPro(), functionality was redundant
* REVIEWED: Controls using text labels to use LABEL properties
@@ -165,6 +166,7 @@
* REVIEWED: GuiTextBox(), multiple improvements: autocursor and more
* REVIEWED: Functions descriptions, removed wrong return value reference
* REDESIGNED: GuiColorPanel(), improved HSV <-> RGBA convertion
+* REDESIGNED: WARNING: TEXT_LINE_SPACING does not consider text height, only lines spacing
*
* 4.0 (12-Sep-2023) ADDED: GuiToggleSlider()
* ADDED: GuiColorPickerHSV() and GuiColorPanelHSV()
@@ -316,7 +318,7 @@
*
* LICENSE: zlib/libpng
*
-* Copyright (c) 2014-2025 Ramon Santamaria (@raysan5)
+* Copyright (c) 2014-2026 Ramon Santamaria (@raysan5)
*
* This software is provided "as-is", without any express or implied warranty. In no event
* will the authors be held liable for any damages arising from the use of this software.
@@ -351,10 +353,11 @@
// NOTE: Microsoft specifiers to tell compiler that symbols are imported/exported from a .dll
#if defined(_WIN32)
#if defined(BUILD_LIBTYPE_SHARED)
- #define RAYGUIAPI __declspec(dllexport) // We are building the library as a Win32 shared library (.dll)
+ #define RAYGUIAPI __declspec(dllexport) // Building the library as a Win32 shared library (.dll)
#elif defined(USE_LIBTYPE_SHARED)
- #define RAYGUIAPI __declspec(dllimport) // We are using the library as a Win32 shared library (.dll)
+ #define RAYGUIAPI __declspec(dllimport) // Using the library as a Win32 shared library (.dll)
#endif
+ #define _CRT_SECURE_NO_WARNINGS // Disable unsafe warnings on scanf() functions in MSVC
#endif
// Function specifiers definition
@@ -369,9 +372,48 @@
// NOTE: Avoiding those calls, also avoids const strings memory usage
#define RAYGUI_SUPPORT_LOG_INFO
#if defined(RAYGUI_SUPPORT_LOG_INFO)
- #define RAYGUI_LOG(...) printf(__VA_ARGS__)
+ #define RAYGUI_LOG(...) printf(__VA_ARGS__)
#else
- #define RAYGUI_LOG(...)
+ #define RAYGUI_LOG(...)
+#endif
+
+// Macros to define required UI inputs, including mapping to gamepad controls
+// TODO: Define additionally required macros for missing inputs
+#if !defined(GUI_BUTTON_DOWN)
+ #define GUI_BUTTON_DOWN (IsMouseButtonDown(MOUSE_LEFT_BUTTON) || IsGamepadButtonDown(0, GAMEPAD_BUTTON_RIGHT_FACE_DOWN))
+#endif
+#if !defined(GUI_BUTTON_DOWN_ALT)
+ // Mapping to alternative button down pressed
+ #define GUI_BUTTON_DOWN_ALT (IsMouseButtonDown(MOUSE_RIGHT_BUTTON) || IsGamepadButtonDown(0, GAMEPAD_BUTTON_RIGHT_FACE_RIGHT))
+#endif
+#if !defined(GUI_BUTTON_PRESSED)
+ #define GUI_BUTTON_PRESSED (IsMouseButtonPressed(MOUSE_LEFT_BUTTON) || IsGamepadButtonPressed(0, GAMEPAD_BUTTON_RIGHT_FACE_DOWN))
+#endif
+// TODO: WARNING: GuiTabBar() still requires IsMouseButtonPressed(MOUSE_MIDDLE_BUTTON)
+#if !defined(GUI_BUTTON_RELEASED)
+ #define GUI_BUTTON_RELEASED (IsMouseButtonReleased(MOUSE_LEFT_BUTTON) || IsGamepadButtonReleased(0, GAMEPAD_BUTTON_RIGHT_FACE_DOWN))
+#endif
+#if !defined(GUI_SCROLL_DELTA)
+ // Mapping to scroll delta changes
+ // TODO: Review inconsistencies between platforms
+ #if defined(PLATFORM_WEB)
+ // NOTE: Gamepad axis triggers not detected on web platform
+ #define GUI_SCROLL_DELTA ((float)IsGamepadButtonDown(0, GAMEPAD_BUTTON_RIGHT_TRIGGER_2) - (float)IsGamepadButtonDown(0, GAMEPAD_BUTTON_LEFT_TRIGGER_2))
+ #else
+ #define GUI_SCROLL_DELTA (GetMouseWheelMove() + (GetGamepadAxisMovement(0, GAMEPAD_AXIS_RIGHT_TRIGGER) + 1) - (GetGamepadAxisMovement(0, GAMEPAD_AXIS_LEFT_TRIGGER) + 1))
+ #endif
+#endif
+#if !defined(GUI_POINTER_POSITION)
+ #define GUI_POINTER_POSITION GetMousePosition()
+#endif
+#if !defined(GUI_KEY_DOWN)
+ #define GUI_KEY_DOWN(key) IsKeyDown(key)
+#endif
+#if !defined(GUI_KEY_PRESSED)
+ #define GUI_KEY_PRESSED(key) IsKeyPressed(key)
+#endif
+#if !defined(GUI_INPUT_KEY)
+ #define GUI_INPUT_KEY GetCharPressed()
#endif
//----------------------------------------------------------------------------------
@@ -567,7 +609,7 @@ typedef enum {
//----------------------------------------------------------------------------------
// DEFAULT extended properties
// NOTE: Those properties are common to all controls or global
-// WARNING: We only have 8 slots for those properties by default!!! -> New global control: TEXT?
+// WARNING: Only 8 slots vailable for those properties by default
typedef enum {
TEXT_SIZE = 16, // Text size (glyphs max height)
TEXT_SPACING, // Text spacing between glyphs
@@ -1091,7 +1133,7 @@ typedef enum {
// Icons data is defined by bit array (every bit represents one pixel)
// Those arrays are stored as unsigned int data arrays, so,
// every array element defines 32 pixels (bits) of information
-// One icon is defined by 8 int, (8 int * 32 bit = 256 bit = 16*16 pixels)
+// One icon is defined by 8 int, (8 int*32 bit = 256 bit = 16*16 pixels)
// NOTE: Number of elemens depend on RAYGUI_ICON_SIZE (by default 16x16 pixels)
#define RAYGUI_ICON_DATA_ELEMENTS (RAYGUI_ICON_SIZE*RAYGUI_ICON_SIZE/32)
@@ -1450,12 +1492,12 @@ static bool IsMouseButtonReleased(int button);
static bool IsKeyDown(int key);
static bool IsKeyPressed(int key);
-static int GetCharPressed(void); // -- GuiTextBox(), GuiValueBox()
+static int GetCharPressed(void); // -- GuiTextBox(), GuiValueBox()
//-------------------------------------------------------------------------------
// Drawing required functions
//-------------------------------------------------------------------------------
-static void DrawRectangle(int x, int y, int width, int height, Color color); // -- GuiDrawRectangle()
+static void DrawRectangle(int x, int y, int width, int height, Color color); // -- GuiDrawRectangle()
static void DrawRectangleGradientEx(Rectangle rec, Color col1, Color col2, Color col3, Color col4); // -- GuiColorPicker()
//-------------------------------------------------------------------------------
@@ -1520,11 +1562,11 @@ static Color GuiFade(Color color, float alpha); // Fade color by an alph
// Gui Setup Functions Definition
//----------------------------------------------------------------------------------
// Enable gui global state
-// NOTE: We check for STATE_DISABLED to avoid messing custom global state setups
+// NOTE: Checking for STATE_DISABLED to avoid messing custom global state setups
void GuiEnable(void) { if (guiState == STATE_DISABLED) guiState = STATE_NORMAL; }
// Disable gui global state
-// NOTE: We check for STATE_NORMAL to avoid messing custom global state setups
+// NOTE: Checking for STATE_NORMAL to avoid messing custom global state setups
void GuiDisable(void) { if (guiState == STATE_NORMAL) guiState = STATE_DISABLED; }
// Lock gui global state
@@ -1557,9 +1599,8 @@ void GuiSetFont(Font font)
{
if (font.texture.id > 0)
{
- // NOTE: If we try to setup a font but default style has not been
- // lazily loaded before, it will be overwritten, so we need to force
- // default style loading first
+ // NOTE: If a font is tried to be set but default style has not been lazily loaded first,
+ // it will be overwritten, so default style loading needs to be forced first
if (!guiStyleLoaded) GuiLoadStyleDefault();
guiFont = font;
@@ -1613,13 +1654,14 @@ int GuiWindowBox(Rectangle bounds, const char *title)
//GuiState state = guiState;
int statusBarHeight = RAYGUI_WINDOWBOX_STATUSBAR_HEIGHT;
+ int statusBorderWidth = GuiGetStyle(STATUSBAR, BORDER_WIDTH);
Rectangle statusBar = { bounds.x, bounds.y, bounds.width, (float)statusBarHeight };
if (bounds.height < statusBarHeight*2.0f) bounds.height = statusBarHeight*2.0f;
const float vPadding = statusBarHeight/2.0f - RAYGUI_WINDOWBOX_CLOSEBUTTON_HEIGHT/2.0f;
- Rectangle windowPanel = { bounds.x, bounds.y + (float)statusBarHeight - 1, bounds.width, bounds.height - (float)statusBarHeight + 1 };
- Rectangle closeButtonRec = { statusBar.x + statusBar.width - GuiGetStyle(STATUSBAR, BORDER_WIDTH) - RAYGUI_WINDOWBOX_CLOSEBUTTON_HEIGHT - vPadding,
+ Rectangle windowPanel = { bounds.x, bounds.y + (float)statusBarHeight - (float)statusBorderWidth, bounds.width, bounds.height - (float)statusBarHeight + (float)statusBorderWidth };
+ Rectangle closeButtonRec = { statusBar.x + statusBar.width - (float)statusBorderWidth - RAYGUI_WINDOWBOX_CLOSEBUTTON_HEIGHT - vPadding,
statusBar.y + vPadding, RAYGUI_WINDOWBOX_CLOSEBUTTON_HEIGHT, RAYGUI_WINDOWBOX_CLOSEBUTTON_HEIGHT };
// Update control
@@ -1629,8 +1671,8 @@ int GuiWindowBox(Rectangle bounds, const char *title)
// Draw control
//--------------------------------------------------------------------
- GuiStatusBar(statusBar, title); // Draw window header as status bar
GuiPanel(windowPanel, NULL); // Draw window base
+ GuiStatusBar(statusBar, title); // Draw window header as status bar
// Draw window close button
int tempBorderWidth = GuiGetStyle(BUTTON, BORDER_WIDTH);
@@ -1786,7 +1828,7 @@ int GuiTabBar(Rectangle bounds, const char **text, int count, int *active)
}
// Close tab with middle mouse button pressed
- if (CheckCollisionPointRec(GetMousePosition(), tabBounds) && IsMouseButtonPressed(MOUSE_MIDDLE_BUTTON)) result = i;
+ if (CheckCollisionPointRec(GUI_POINTER_POSITION, tabBounds) && IsMouseButtonPressed(MOUSE_MIDDLE_BUTTON)) result = i;
GuiSetStyle(TOGGLE, TEXT_PADDING, textPadding);
GuiSetStyle(TOGGLE, TEXT_ALIGNMENT, textAlignment);
@@ -1885,37 +1927,37 @@ int GuiScrollPanel(Rectangle bounds, const char *text, Rectangle content, Vector
//--------------------------------------------------------------------
if ((state != STATE_DISABLED) && !guiLocked)
{
- Vector2 mousePoint = GetMousePosition();
+ Vector2 mousePoint = GUI_POINTER_POSITION;
// Check button state
if (CheckCollisionPointRec(mousePoint, bounds))
{
- if (IsMouseButtonDown(MOUSE_LEFT_BUTTON)) state = STATE_PRESSED;
+ if (GUI_BUTTON_DOWN) state = STATE_PRESSED;
else state = STATE_FOCUSED;
#if defined(SUPPORT_SCROLLBAR_KEY_INPUT)
if (hasHorizontalScrollBar)
{
- if (IsKeyDown(KEY_RIGHT)) scrollPos.x -= GuiGetStyle(SCROLLBAR, SCROLL_SPEED);
- if (IsKeyDown(KEY_LEFT)) scrollPos.x += GuiGetStyle(SCROLLBAR, SCROLL_SPEED);
+ if (GUI_KEY_DOWN(KEY_RIGHT)) scrollPos.x -= GuiGetStyle(SCROLLBAR, SCROLL_SPEED);
+ if (GUI_KEY_DOWN(KEY_LEFT)) scrollPos.x += GuiGetStyle(SCROLLBAR, SCROLL_SPEED);
}
if (hasVerticalScrollBar)
{
- if (IsKeyDown(KEY_DOWN)) scrollPos.y -= GuiGetStyle(SCROLLBAR, SCROLL_SPEED);
- if (IsKeyDown(KEY_UP)) scrollPos.y += GuiGetStyle(SCROLLBAR, SCROLL_SPEED);
+ if (GUI_KEY_DOWN(KEY_DOWN)) scrollPos.y -= GuiGetStyle(SCROLLBAR, SCROLL_SPEED);
+ if (GUI_KEY_DOWN(KEY_UP)) scrollPos.y += GuiGetStyle(SCROLLBAR, SCROLL_SPEED);
}
#endif
- float wheelMove = GetMouseWheelMove();
+ float scrollDelta = GUI_SCROLL_DELTA;
// Set scrolling speed with mouse wheel based on ratio between bounds and content
- Vector2 mouseWheelSpeed = { content.width/bounds.width, content.height/bounds.height };
- if (mouseWheelSpeed.x < RAYGUI_MIN_MOUSE_WHEEL_SPEED) mouseWheelSpeed.x = RAYGUI_MIN_MOUSE_WHEEL_SPEED;
- if (mouseWheelSpeed.y < RAYGUI_MIN_MOUSE_WHEEL_SPEED) mouseWheelSpeed.y = RAYGUI_MIN_MOUSE_WHEEL_SPEED;
+ Vector2 scrollSpeed = { content.width/bounds.width, content.height/bounds.height };
+ if (scrollSpeed.x < RAYGUI_MIN_MOUSE_WHEEL_SPEED) scrollSpeed.x = RAYGUI_MIN_MOUSE_WHEEL_SPEED;
+ if (scrollSpeed.y < RAYGUI_MIN_MOUSE_WHEEL_SPEED) scrollSpeed.y = RAYGUI_MIN_MOUSE_WHEEL_SPEED;
// Horizontal and vertical scrolling with mouse wheel
- if (hasHorizontalScrollBar && (IsKeyDown(KEY_LEFT_CONTROL) || IsKeyDown(KEY_LEFT_SHIFT))) scrollPos.x += wheelMove*mouseWheelSpeed.x;
- else scrollPos.y += wheelMove*mouseWheelSpeed.y; // Vertical scroll
+ if (hasHorizontalScrollBar && (GUI_KEY_DOWN(KEY_LEFT_CONTROL) || GUI_KEY_DOWN(KEY_LEFT_SHIFT))) scrollPos.x += scrollDelta*scrollSpeed.x;
+ else scrollPos.y += scrollDelta*scrollSpeed.y; // Vertical scroll
}
}
@@ -2001,15 +2043,15 @@ int GuiButton(Rectangle bounds, const char *text)
//--------------------------------------------------------------------
if ((state != STATE_DISABLED) && !guiLocked && !guiControlExclusiveMode)
{
- Vector2 mousePoint = GetMousePosition();
+ Vector2 mousePoint = GUI_POINTER_POSITION;
// Check button state
if (CheckCollisionPointRec(mousePoint, bounds))
{
- if (IsMouseButtonDown(MOUSE_LEFT_BUTTON)) state = STATE_PRESSED;
+ if (GUI_BUTTON_DOWN) state = STATE_PRESSED;
else state = STATE_FOCUSED;
- if (IsMouseButtonReleased(MOUSE_LEFT_BUTTON)) result = 1;
+ if (GUI_BUTTON_RELEASED) result = 1;
}
}
//--------------------------------------------------------------------
@@ -2031,7 +2073,7 @@ int GuiLabelButton(Rectangle bounds, const char *text)
GuiState state = guiState;
bool pressed = false;
- // NOTE: We force bounds.width to be all text
+ // NOTE: Force bounds.width to be all text
float textWidth = (float)GuiGetTextWidth(text);
if ((bounds.width - 2*GuiGetStyle(LABEL, BORDER_WIDTH) - 2*GuiGetStyle(LABEL, TEXT_PADDING)) < textWidth) bounds.width = textWidth + 2*GuiGetStyle(LABEL, BORDER_WIDTH) + 2*GuiGetStyle(LABEL, TEXT_PADDING) + 2;
@@ -2039,15 +2081,15 @@ int GuiLabelButton(Rectangle bounds, const char *text)
//--------------------------------------------------------------------
if ((state != STATE_DISABLED) && !guiLocked && !guiControlExclusiveMode)
{
- Vector2 mousePoint = GetMousePosition();
+ Vector2 mousePoint = GUI_POINTER_POSITION;
// Check checkbox state
if (CheckCollisionPointRec(mousePoint, bounds))
{
- if (IsMouseButtonDown(MOUSE_LEFT_BUTTON)) state = STATE_PRESSED;
+ if (GUI_BUTTON_DOWN) state = STATE_PRESSED;
else state = STATE_FOCUSED;
- if (IsMouseButtonReleased(MOUSE_LEFT_BUTTON)) pressed = true;
+ if (GUI_BUTTON_RELEASED) pressed = true;
}
}
//--------------------------------------------------------------------
@@ -2073,13 +2115,13 @@ int GuiToggle(Rectangle bounds, const char *text, bool *active)
//--------------------------------------------------------------------
if ((state != STATE_DISABLED) && !guiLocked && !guiControlExclusiveMode)
{
- Vector2 mousePoint = GetMousePosition();
+ Vector2 mousePoint = GUI_POINTER_POSITION;
// Check toggle button state
if (CheckCollisionPointRec(mousePoint, bounds))
{
- if (IsMouseButtonDown(MOUSE_LEFT_BUTTON)) state = STATE_PRESSED;
- else if (IsMouseButtonReleased(MOUSE_LEFT_BUTTON))
+ if (GUI_BUTTON_DOWN) state = STATE_PRESSED;
+ else if (GUI_BUTTON_RELEASED)
{
state = STATE_NORMAL;
*active = !(*active);
@@ -2184,12 +2226,12 @@ int GuiToggleSlider(Rectangle bounds, const char *text, int *active)
//--------------------------------------------------------------------
if ((state != STATE_DISABLED) && !guiLocked)
{
- Vector2 mousePoint = GetMousePosition();
+ Vector2 mousePoint = GUI_POINTER_POSITION;
if (CheckCollisionPointRec(mousePoint, bounds))
{
- if (IsMouseButtonDown(MOUSE_LEFT_BUTTON)) state = STATE_PRESSED;
- else if (IsMouseButtonReleased(MOUSE_LEFT_BUTTON))
+ if (GUI_BUTTON_DOWN) state = STATE_PRESSED;
+ else if (GUI_BUTTON_RELEASED)
{
state = STATE_PRESSED;
(*active)++;
@@ -2255,7 +2297,7 @@ int GuiCheckBox(Rectangle bounds, const char *text, bool *checked)
//--------------------------------------------------------------------
if ((state != STATE_DISABLED) && !guiLocked && !guiControlExclusiveMode)
{
- Vector2 mousePoint = GetMousePosition();
+ Vector2 mousePoint = GUI_POINTER_POSITION;
Rectangle totalBounds = {
(GuiGetStyle(CHECKBOX, TEXT_ALIGNMENT) == TEXT_ALIGN_LEFT)? textBounds.x : bounds.x,
@@ -2267,10 +2309,10 @@ int GuiCheckBox(Rectangle bounds, const char *text, bool *checked)
// Check checkbox state
if (CheckCollisionPointRec(mousePoint, totalBounds))
{
- if (IsMouseButtonDown(MOUSE_LEFT_BUTTON)) state = STATE_PRESSED;
+ if (GUI_BUTTON_DOWN) state = STATE_PRESSED;
else state = STATE_FOCUSED;
- if (IsMouseButtonReleased(MOUSE_LEFT_BUTTON))
+ if (GUI_BUTTON_RELEASED)
{
*checked = !(*checked);
result = 1;
@@ -2323,18 +2365,18 @@ int GuiComboBox(Rectangle bounds, const char *text, int *active)
//--------------------------------------------------------------------
if ((state != STATE_DISABLED) && !guiLocked && (itemCount > 1) && !guiControlExclusiveMode)
{
- Vector2 mousePoint = GetMousePosition();
+ Vector2 mousePoint = GUI_POINTER_POSITION;
if (CheckCollisionPointRec(mousePoint, bounds) ||
CheckCollisionPointRec(mousePoint, selector))
{
- if (IsMouseButtonPressed(MOUSE_LEFT_BUTTON))
+ if (GUI_BUTTON_PRESSED)
{
*active += 1;
if (*active >= itemCount) *active = 0; // Cyclic combobox
}
- if (IsMouseButtonDown(MOUSE_LEFT_BUTTON)) state = STATE_PRESSED;
+ if (GUI_BUTTON_DOWN) state = STATE_PRESSED;
else state = STATE_FOCUSED;
}
}
@@ -2392,7 +2434,7 @@ int GuiDropdownBox(Rectangle bounds, const char *text, int *active, bool editMod
//--------------------------------------------------------------------
if ((state != STATE_DISABLED) && (editMode || !guiLocked) && (itemCount > 1) && !guiControlExclusiveMode)
{
- Vector2 mousePoint = GetMousePosition();
+ Vector2 mousePoint = GUI_POINTER_POSITION;
if (editMode)
{
@@ -2401,11 +2443,11 @@ int GuiDropdownBox(Rectangle bounds, const char *text, int *active, bool editMod
// Check if mouse has been pressed or released outside limits
if (!CheckCollisionPointRec(mousePoint, boundsOpen))
{
- if (IsMouseButtonPressed(MOUSE_LEFT_BUTTON) || IsMouseButtonReleased(MOUSE_LEFT_BUTTON)) result = 1;
+ if (GUI_BUTTON_PRESSED || GUI_BUTTON_RELEASED) result = 1;
}
// Check if already selected item has been pressed again
- if (CheckCollisionPointRec(mousePoint, bounds) && IsMouseButtonPressed(MOUSE_LEFT_BUTTON)) result = 1;
+ if (CheckCollisionPointRec(mousePoint, bounds) && GUI_BUTTON_PRESSED) result = 1;
// Check focused and selected item
for (int i = 0; i < itemCount; i++)
@@ -2417,7 +2459,7 @@ int GuiDropdownBox(Rectangle bounds, const char *text, int *active, bool editMod
if (CheckCollisionPointRec(mousePoint, itemBounds))
{
itemFocused = i;
- if (IsMouseButtonReleased(MOUSE_LEFT_BUTTON))
+ if (GUI_BUTTON_RELEASED)
{
itemSelected = i;
result = 1; // Item selected
@@ -2432,7 +2474,7 @@ int GuiDropdownBox(Rectangle bounds, const char *text, int *active, bool editMod
{
if (CheckCollisionPointRec(mousePoint, bounds))
{
- if (IsMouseButtonPressed(MOUSE_LEFT_BUTTON))
+ if (GUI_BUTTON_PRESSED)
{
result = 1;
state = STATE_PRESSED;
@@ -2506,7 +2548,7 @@ int GuiTextBox(Rectangle bounds, char *text, int textSize, bool editMode)
int result = 0;
GuiState state = guiState;
- bool multiline = false; // TODO: Consider multiline text input
+ bool multiline = false; // TODO: Consider multiline text input
int wrapMode = GuiGetStyle(DEFAULT, TEXT_WRAP_MODE);
Rectangle textBounds = GetTextBounds(TEXTBOX, bounds);
@@ -2514,7 +2556,7 @@ int GuiTextBox(Rectangle bounds, char *text, int textSize, bool editMode)
int thisCursorIndex = textBoxCursorIndex;
if (thisCursorIndex > textLength) thisCursorIndex = textLength;
int textWidth = GuiGetTextWidth(text) - GuiGetTextWidth(text + thisCursorIndex);
- int textIndexOffset = 0; // Text index offset to start drawing in the box
+ int textIndexOffset = 0; // Text index offset to start drawing in the box
// Cursor rectangle
// NOTE: Position X value should be updated
@@ -2547,13 +2589,13 @@ int GuiTextBox(Rectangle bounds, char *text, int textSize, bool editMode)
!guiControlExclusiveMode && // No gui slider on dragging
(wrapMode == TEXT_WRAP_NONE)) // No wrap mode
{
- Vector2 mousePosition = GetMousePosition();
+ Vector2 mousePosition = GUI_POINTER_POSITION;
if (editMode)
{
// GLOBAL: Auto-cursor movement logic
// NOTE: Keystrokes are handled repeatedly when button is held down for some time
- if (IsKeyDown(KEY_LEFT) || IsKeyDown(KEY_RIGHT) || IsKeyDown(KEY_UP) || IsKeyDown(KEY_DOWN) || IsKeyDown(KEY_BACKSPACE) || IsKeyDown(KEY_DELETE)) autoCursorCounter++;
+ if (GUI_KEY_DOWN(KEY_LEFT) || GUI_KEY_DOWN(KEY_RIGHT) || GUI_KEY_DOWN(KEY_UP) || GUI_KEY_DOWN(KEY_DOWN) || GUI_KEY_DOWN(KEY_BACKSPACE) || GUI_KEY_DOWN(KEY_DELETE)) autoCursorCounter++;
else autoCursorCounter = 0;
bool autoCursorShouldTrigger = (autoCursorCounter > RAYGUI_TEXTBOX_AUTO_CURSOR_COOLDOWN) && ((autoCursorCounter % RAYGUI_TEXTBOX_AUTO_CURSOR_DELAY) == 0);
@@ -2563,7 +2605,7 @@ int GuiTextBox(Rectangle bounds, char *text, int textSize, bool editMode)
if (textBoxCursorIndex > textLength) textBoxCursorIndex = textLength;
// If text does not fit in the textbox and current cursor position is out of bounds,
- // we add an index offset to text for drawing only what requires depending on cursor
+ // adding an index offset to text for drawing only what requires depending on cursor
while (textWidth >= textBounds.width)
{
int nextCodepointSize = 0;
@@ -2574,15 +2616,15 @@ int GuiTextBox(Rectangle bounds, char *text, int textSize, bool editMode)
textWidth = GuiGetTextWidth(text + textIndexOffset) - GuiGetTextWidth(text + textBoxCursorIndex);
}
- int codepoint = GetCharPressed(); // Get Unicode codepoint
- if (multiline && IsKeyPressed(KEY_ENTER)) codepoint = (int)'\n';
+ int codepoint = GUI_INPUT_KEY; // Get Unicode codepoint
+ if (multiline && GUI_KEY_PRESSED(KEY_ENTER)) codepoint = (int)'\n';
// Encode codepoint as UTF-8
int codepointSize = 0;
const char *charEncoded = CodepointToUTF8(codepoint, &codepointSize);
// Handle text paste action
- if (IsKeyPressed(KEY_V) && (IsKeyDown(KEY_LEFT_CONTROL) || IsKeyDown(KEY_RIGHT_CONTROL)))
+ if (GUI_KEY_PRESSED(KEY_V) && (GUI_KEY_DOWN(KEY_LEFT_CONTROL) || GUI_KEY_DOWN(KEY_RIGHT_CONTROL)))
{
const char *pasteText = GetClipboardText();
if (pasteText != NULL)
@@ -2632,13 +2674,13 @@ int GuiTextBox(Rectangle bounds, char *text, int textSize, bool editMode)
}
// Move cursor to start
- if ((textLength > 0) && IsKeyPressed(KEY_HOME)) textBoxCursorIndex = 0;
+ if ((textLength > 0) && GUI_KEY_PRESSED(KEY_HOME)) textBoxCursorIndex = 0;
// Move cursor to end
- if ((textLength > textBoxCursorIndex) && IsKeyPressed(KEY_END)) textBoxCursorIndex = textLength;
+ if ((textLength > textBoxCursorIndex) && GUI_KEY_PRESSED(KEY_END)) textBoxCursorIndex = textLength;
// Delete related codepoints from text, after current cursor position
- if ((textLength > textBoxCursorIndex) && IsKeyPressed(KEY_DELETE) && (IsKeyDown(KEY_LEFT_CONTROL) || IsKeyDown(KEY_RIGHT_CONTROL)))
+ if ((textLength > textBoxCursorIndex) && GUI_KEY_PRESSED(KEY_DELETE) && (GUI_KEY_DOWN(KEY_LEFT_CONTROL) || GUI_KEY_DOWN(KEY_RIGHT_CONTROL)))
{
int offset = textBoxCursorIndex;
int accCodepointSize = 0;
@@ -2674,7 +2716,7 @@ int GuiTextBox(Rectangle bounds, char *text, int textSize, bool editMode)
textLength -= accCodepointSize;
}
- else if ((textLength > textBoxCursorIndex) && (IsKeyPressed(KEY_DELETE) || (IsKeyDown(KEY_DELETE) && autoCursorShouldTrigger)))
+ else if ((textLength > textBoxCursorIndex) && (GUI_KEY_PRESSED(KEY_DELETE) || (GUI_KEY_DOWN(KEY_DELETE) && autoCursorShouldTrigger)))
{
// Delete single codepoint from text, after current cursor position
@@ -2688,12 +2730,12 @@ int GuiTextBox(Rectangle bounds, char *text, int textSize, bool editMode)
}
// Delete related codepoints from text, before current cursor position
- if ((textBoxCursorIndex > 0) && IsKeyPressed(KEY_BACKSPACE) && (IsKeyDown(KEY_LEFT_CONTROL) || IsKeyDown(KEY_RIGHT_CONTROL)))
+ if ((textBoxCursorIndex > 0) && GUI_KEY_PRESSED(KEY_BACKSPACE) && (GUI_KEY_DOWN(KEY_LEFT_CONTROL) || GUI_KEY_DOWN(KEY_RIGHT_CONTROL)))
{
int offset = textBoxCursorIndex;
int accCodepointSize = 0;
- int prevCodepointSize;
- int prevCodepoint;
+ int prevCodepointSize = 0;
+ int prevCodepoint = 0;
// Check whitespace to delete (ASCII only)
while (offset > 0)
@@ -2724,7 +2766,7 @@ int GuiTextBox(Rectangle bounds, char *text, int textSize, bool editMode)
textBoxCursorIndex -= accCodepointSize;
}
- else if ((textBoxCursorIndex > 0) && (IsKeyPressed(KEY_BACKSPACE) || (IsKeyDown(KEY_BACKSPACE) && autoCursorShouldTrigger)))
+ else if ((textBoxCursorIndex > 0) && (GUI_KEY_PRESSED(KEY_BACKSPACE) || (GUI_KEY_DOWN(KEY_BACKSPACE) && autoCursorShouldTrigger)))
{
// Delete single codepoint from text, before current cursor position
@@ -2740,12 +2782,12 @@ int GuiTextBox(Rectangle bounds, char *text, int textSize, bool editMode)
}
// Move cursor position with keys
- if ((textBoxCursorIndex > 0) && IsKeyPressed(KEY_LEFT) && (IsKeyDown(KEY_LEFT_CONTROL) || IsKeyDown(KEY_RIGHT_CONTROL)))
+ if ((textBoxCursorIndex > 0) && GUI_KEY_PRESSED(KEY_LEFT) && (GUI_KEY_DOWN(KEY_LEFT_CONTROL) || GUI_KEY_DOWN(KEY_RIGHT_CONTROL)))
{
int offset = textBoxCursorIndex;
//int accCodepointSize = 0;
- int prevCodepointSize;
- int prevCodepoint;
+ int prevCodepointSize = 0;
+ int prevCodepoint = 0;
// Check whitespace to skip (ASCII only)
while (offset > 0)
@@ -2771,14 +2813,14 @@ int GuiTextBox(Rectangle bounds, char *text, int textSize, bool editMode)
textBoxCursorIndex = offset;
}
- else if ((textBoxCursorIndex > 0) && (IsKeyPressed(KEY_LEFT) || (IsKeyDown(KEY_LEFT) && autoCursorShouldTrigger)))
+ else if ((textBoxCursorIndex > 0) && (GUI_KEY_PRESSED(KEY_LEFT) || (GUI_KEY_DOWN(KEY_LEFT) && autoCursorShouldTrigger)))
{
int prevCodepointSize = 0;
GetCodepointPrevious(text + textBoxCursorIndex, &prevCodepointSize);
textBoxCursorIndex -= prevCodepointSize;
}
- else if ((textLength > textBoxCursorIndex) && IsKeyPressed(KEY_RIGHT) && (IsKeyDown(KEY_LEFT_CONTROL) || IsKeyDown(KEY_RIGHT_CONTROL)))
+ else if ((textLength > textBoxCursorIndex) && GUI_KEY_PRESSED(KEY_RIGHT) && (GUI_KEY_DOWN(KEY_LEFT_CONTROL) || GUI_KEY_DOWN(KEY_RIGHT_CONTROL)))
{
int offset = textBoxCursorIndex;
//int accCodepointSize = 0;
@@ -2810,7 +2852,7 @@ int GuiTextBox(Rectangle bounds, char *text, int textSize, bool editMode)
textBoxCursorIndex = offset;
}
- else if ((textLength > textBoxCursorIndex) && (IsKeyPressed(KEY_RIGHT) || (IsKeyDown(KEY_RIGHT) && autoCursorShouldTrigger)))
+ else if ((textLength > textBoxCursorIndex) && (GUI_KEY_PRESSED(KEY_RIGHT) || (GUI_KEY_DOWN(KEY_RIGHT) && autoCursorShouldTrigger)))
{
int nextCodepointSize = 0;
GetCodepointNext(text + textBoxCursorIndex, &nextCodepointSize);
@@ -2847,14 +2889,14 @@ int GuiTextBox(Rectangle bounds, char *text, int textSize, bool editMode)
// Check if mouse cursor is at the last position
int textEndWidth = GuiGetTextWidth(text + textIndexOffset);
- if (GetMousePosition().x >= (textBounds.x + textEndWidth - glyphWidth/2))
+ if (GUI_POINTER_POSITION.x >= (textBounds.x + textEndWidth - glyphWidth/2))
{
mouseCursor.x = textBounds.x + textEndWidth;
mouseCursorIndex = textLength;
}
// Place cursor at required index on mouse click
- if ((mouseCursor.x >= 0) && IsMouseButtonPressed(MOUSE_LEFT_BUTTON))
+ if ((mouseCursor.x >= 0) && GUI_BUTTON_PRESSED)
{
cursor.x = mouseCursor.x;
textBoxCursorIndex = mouseCursorIndex;
@@ -2867,8 +2909,8 @@ int GuiTextBox(Rectangle bounds, char *text, int textSize, bool editMode)
//if (multiline) cursor.y = GetTextLines()
// Finish text editing on ENTER or mouse click outside bounds
- if ((!multiline && IsKeyPressed(KEY_ENTER)) ||
- (!CheckCollisionPointRec(mousePosition, bounds) && IsMouseButtonPressed(MOUSE_LEFT_BUTTON)))
+ if ((!multiline && GUI_KEY_PRESSED(KEY_ENTER)) ||
+ (!CheckCollisionPointRec(mousePosition, bounds) && GUI_BUTTON_PRESSED))
{
textBoxCursorIndex = 0; // GLOBAL: Reset the shared cursor index
autoCursorCounter = 0; // GLOBAL: Reset counter for repeated keystrokes
@@ -2881,7 +2923,7 @@ int GuiTextBox(Rectangle bounds, char *text, int textSize, bool editMode)
{
state = STATE_FOCUSED;
- if (IsMouseButtonPressed(MOUSE_LEFT_BUTTON))
+ if (GUI_BUTTON_PRESSED)
{
textBoxCursorIndex = textLength; // GLOBAL: Place cursor index to the end of current text
autoCursorCounter = 0; // GLOBAL: Reset counter for repeated keystrokes
@@ -2975,12 +3017,12 @@ int GuiSpinner(Rectangle bounds, const char *text, int *value, int minValue, int
//--------------------------------------------------------------------
if ((state != STATE_DISABLED) && !guiLocked && !guiControlExclusiveMode)
{
- Vector2 mousePoint = GetMousePosition();
+ Vector2 mousePoint = GUI_POINTER_POSITION;
// Check spinner state
if (CheckCollisionPointRec(mousePoint, bounds))
{
- if (IsMouseButtonDown(MOUSE_LEFT_BUTTON)) state = STATE_PRESSED;
+ if (GUI_BUTTON_DOWN) state = STATE_PRESSED;
else state = STATE_FOCUSED;
}
}
@@ -3050,7 +3092,7 @@ int GuiValueBox(Rectangle bounds, const char *text, int *value, int minValue, in
//--------------------------------------------------------------------
if ((state != STATE_DISABLED) && !guiLocked && !guiControlExclusiveMode)
{
- Vector2 mousePoint = GetMousePosition();
+ Vector2 mousePoint = GUI_POINTER_POSITION;
bool valueHasChanged = false;
if (editMode)
@@ -3060,7 +3102,7 @@ int GuiValueBox(Rectangle bounds, const char *text, int *value, int minValue, in
int keyCount = (int)strlen(textValue);
// Add or remove minus symbol
- if (IsKeyPressed(KEY_MINUS))
+ if (GUI_KEY_PRESSED(KEY_MINUS))
{
if (textValue[0] == '-')
{
@@ -3089,8 +3131,8 @@ int GuiValueBox(Rectangle bounds, const char *text, int *value, int minValue, in
// Add new digit to text value
if ((keyCount >= 0) && (keyCount < RAYGUI_VALUEBOX_MAX_CHARS) && (GuiGetTextWidth(textValue) < bounds.width))
{
- int key = GetCharPressed();
-
+ int key = GUI_INPUT_KEY;
+
// Only allow keys in range [48..57]
if ((key >= 48) && (key <= 57))
{
@@ -3101,7 +3143,7 @@ int GuiValueBox(Rectangle bounds, const char *text, int *value, int minValue, in
}
// Delete text
- if ((keyCount > 0) && IsKeyPressed(KEY_BACKSPACE))
+ if ((keyCount > 0) && GUI_KEY_PRESSED(KEY_BACKSPACE))
{
keyCount--;
textValue[keyCount] = '\0';
@@ -3110,11 +3152,11 @@ int GuiValueBox(Rectangle bounds, const char *text, int *value, int minValue, in
if (valueHasChanged) *value = TextToInteger(textValue);
- // NOTE: We are not clamp values until user input finishes
+ // NOTE: Values are not clamped until user input finishes
//if (*value > maxValue) *value = maxValue;
//else if (*value < minValue) *value = minValue;
- if ((IsKeyPressed(KEY_ENTER) || IsKeyPressed(KEY_KP_ENTER)) || (!CheckCollisionPointRec(mousePoint, bounds) && IsMouseButtonPressed(MOUSE_LEFT_BUTTON)))
+ if ((GUI_KEY_PRESSED(KEY_ENTER) || GUI_KEY_PRESSED(KEY_KP_ENTER)) || (!CheckCollisionPointRec(mousePoint, bounds) && GUI_BUTTON_PRESSED))
{
if (*value > maxValue) *value = maxValue;
else if (*value < minValue) *value = minValue;
@@ -3130,7 +3172,7 @@ int GuiValueBox(Rectangle bounds, const char *text, int *value, int minValue, in
if (CheckCollisionPointRec(mousePoint, bounds))
{
state = STATE_FOCUSED;
- if (IsMouseButtonPressed(MOUSE_LEFT_BUTTON)) result = 1;
+ if (GUI_BUTTON_PRESSED) result = 1;
}
}
}
@@ -3191,7 +3233,7 @@ int GuiValueBoxFloat(Rectangle bounds, const char *text, char *textValue, float
//--------------------------------------------------------------------
if ((state != STATE_DISABLED) && !guiLocked && !guiControlExclusiveMode)
{
- Vector2 mousePoint = GetMousePosition();
+ Vector2 mousePoint = GUI_POINTER_POSITION;
bool valueHasChanged = false;
@@ -3202,7 +3244,7 @@ int GuiValueBoxFloat(Rectangle bounds, const char *text, char *textValue, float
int keyCount = (int)strlen(textValue);
// Add or remove minus symbol
- if (IsKeyPressed(KEY_MINUS))
+ if (GUI_KEY_PRESSED(KEY_MINUS))
{
if (textValue[0] == '-')
{
@@ -3233,7 +3275,7 @@ int GuiValueBoxFloat(Rectangle bounds, const char *text, char *textValue, float
{
if (GuiGetTextWidth(textValue) < bounds.width)
{
- int key = GetCharPressed();
+ int key = GUI_INPUT_KEY;
if (((key >= 48) && (key <= 57)) ||
(key == '.') ||
((keyCount == 0) && (key == '+')) || // NOTE: Sign can only be in first position
@@ -3248,7 +3290,7 @@ int GuiValueBoxFloat(Rectangle bounds, const char *text, char *textValue, float
}
// Pressed backspace
- if (IsKeyPressed(KEY_BACKSPACE))
+ if (GUI_KEY_PRESSED(KEY_BACKSPACE))
{
if (keyCount > 0)
{
@@ -3260,14 +3302,14 @@ int GuiValueBoxFloat(Rectangle bounds, const char *text, char *textValue, float
if (valueHasChanged) *value = TextToFloat(textValue);
- if ((IsKeyPressed(KEY_ENTER) || IsKeyPressed(KEY_KP_ENTER)) || (!CheckCollisionPointRec(mousePoint, bounds) && IsMouseButtonPressed(MOUSE_LEFT_BUTTON))) result = 1;
+ if ((GUI_KEY_PRESSED(KEY_ENTER) || GUI_KEY_PRESSED(KEY_KP_ENTER)) || (!CheckCollisionPointRec(mousePoint, bounds) && GUI_BUTTON_PRESSED)) result = 1;
}
else
{
if (CheckCollisionPointRec(mousePoint, bounds))
{
state = STATE_FOCUSED;
- if (IsMouseButtonPressed(MOUSE_LEFT_BUTTON)) result = 1;
+ if (GUI_BUTTON_PRESSED) result = 1;
}
}
}
@@ -3321,11 +3363,11 @@ int GuiSlider(Rectangle bounds, const char *textLeft, const char *textRight, flo
//--------------------------------------------------------------------
if ((state != STATE_DISABLED) && !guiLocked)
{
- Vector2 mousePoint = GetMousePosition();
+ Vector2 mousePoint = GUI_POINTER_POSITION;
if (guiControlExclusiveMode) // Allows to keep dragging outside of bounds
{
- if (IsMouseButtonDown(MOUSE_LEFT_BUTTON))
+ if (GUI_BUTTON_DOWN)
{
if (CHECK_BOUNDS_ID(bounds, guiControlExclusiveRec))
{
@@ -3342,7 +3384,7 @@ int GuiSlider(Rectangle bounds, const char *textLeft, const char *textRight, flo
}
else if (CheckCollisionPointRec(mousePoint, bounds))
{
- if (IsMouseButtonDown(MOUSE_LEFT_BUTTON))
+ if (GUI_BUTTON_DOWN)
{
state = STATE_PRESSED;
guiControlExclusiveMode = true;
@@ -3535,12 +3577,12 @@ int GuiDummyRec(Rectangle bounds, const char *text)
//--------------------------------------------------------------------
if ((state != STATE_DISABLED) && !guiLocked && !guiControlExclusiveMode)
{
- Vector2 mousePoint = GetMousePosition();
+ Vector2 mousePoint = GUI_POINTER_POSITION;
// Check button state
if (CheckCollisionPointRec(mousePoint, bounds))
{
- if (IsMouseButtonDown(MOUSE_LEFT_BUTTON)) state = STATE_PRESSED;
+ if (GUI_BUTTON_DOWN) state = STATE_PRESSED;
else state = STATE_FOCUSED;
}
}
@@ -3578,7 +3620,7 @@ int GuiListViewEx(Rectangle bounds, const char **text, int count, int *scrollInd
int itemFocused = (focus == NULL)? -1 : *focus;
int itemSelected = (active == NULL)? -1 : *active;
- // Check if we need a scroll bar
+ // Check if scroll bar is needed
bool useScrollBar = false;
if ((GuiGetStyle(LISTVIEW, LIST_ITEMS_HEIGHT) + GuiGetStyle(LISTVIEW, LIST_ITEMS_SPACING))*count > bounds.height) useScrollBar = true;
@@ -3602,7 +3644,7 @@ int GuiListViewEx(Rectangle bounds, const char **text, int count, int *scrollInd
//--------------------------------------------------------------------
if ((state != STATE_DISABLED) && !guiLocked && !guiControlExclusiveMode)
{
- Vector2 mousePoint = GetMousePosition();
+ Vector2 mousePoint = GUI_POINTER_POSITION;
// Check mouse inside list view
if (CheckCollisionPointRec(mousePoint, bounds))
@@ -3615,7 +3657,7 @@ int GuiListViewEx(Rectangle bounds, const char **text, int count, int *scrollInd
if (CheckCollisionPointRec(mousePoint, itemBounds))
{
itemFocused = startIndex + i;
- if (IsMouseButtonPressed(MOUSE_LEFT_BUTTON))
+ if (GUI_BUTTON_PRESSED)
{
if (itemSelected == (startIndex + i)) itemSelected = -1;
else itemSelected = startIndex + i;
@@ -3629,8 +3671,8 @@ int GuiListViewEx(Rectangle bounds, const char **text, int count, int *scrollInd
if (useScrollBar)
{
- int wheelMove = (int)GetMouseWheelMove();
- startIndex -= wheelMove;
+ float scrollDelta = GUI_SCROLL_DELTA;
+ startIndex -= (int)scrollDelta;
if (startIndex < 0) startIndex = 0;
else if (startIndex > (count - visibleItems)) startIndex = count - visibleItems;
@@ -3659,7 +3701,7 @@ int GuiListViewEx(Rectangle bounds, const char **text, int count, int *scrollInd
{
if ((startIndex + i) == itemSelected) GuiDrawRectangle(itemBounds, GuiGetStyle(LISTVIEW, LIST_ITEMS_BORDER_WIDTH), GetColor(GuiGetStyle(LISTVIEW, BORDER_COLOR_DISABLED)), GetColor(GuiGetStyle(LISTVIEW, BASE_COLOR_DISABLED)));
- GuiDrawText(text[startIndex + i], GetTextBounds(DEFAULT, itemBounds), GuiGetStyle(LISTVIEW, TEXT_ALIGNMENT), GetColor(GuiGetStyle(LISTVIEW, TEXT_COLOR_DISABLED)));
+ GuiDrawText(text[startIndex + i], GetTextBounds(LISTVIEW, itemBounds), GuiGetStyle(LISTVIEW, TEXT_ALIGNMENT), GetColor(GuiGetStyle(LISTVIEW, TEXT_COLOR_DISABLED)));
}
else
{
@@ -3667,18 +3709,18 @@ int GuiListViewEx(Rectangle bounds, const char **text, int count, int *scrollInd
{
// Draw item selected
GuiDrawRectangle(itemBounds, GuiGetStyle(LISTVIEW, LIST_ITEMS_BORDER_WIDTH), GetColor(GuiGetStyle(LISTVIEW, BORDER_COLOR_PRESSED)), GetColor(GuiGetStyle(LISTVIEW, BASE_COLOR_PRESSED)));
- GuiDrawText(text[startIndex + i], GetTextBounds(DEFAULT, itemBounds), GuiGetStyle(LISTVIEW, TEXT_ALIGNMENT), GetColor(GuiGetStyle(LISTVIEW, TEXT_COLOR_PRESSED)));
+ GuiDrawText(text[startIndex + i], GetTextBounds(LISTVIEW, itemBounds), GuiGetStyle(LISTVIEW, TEXT_ALIGNMENT), GetColor(GuiGetStyle(LISTVIEW, TEXT_COLOR_PRESSED)));
}
- else if (((startIndex + i) == itemFocused)) // && (focus != NULL)) // NOTE: We want items focused, despite not returned!
+ else if (((startIndex + i) == itemFocused)) // && (focus != NULL)) // NOTE: Items focused, despite not returned
{
// Draw item focused
GuiDrawRectangle(itemBounds, GuiGetStyle(LISTVIEW, LIST_ITEMS_BORDER_WIDTH), GetColor(GuiGetStyle(LISTVIEW, BORDER_COLOR_FOCUSED)), GetColor(GuiGetStyle(LISTVIEW, BASE_COLOR_FOCUSED)));
- GuiDrawText(text[startIndex + i], GetTextBounds(DEFAULT, itemBounds), GuiGetStyle(LISTVIEW, TEXT_ALIGNMENT), GetColor(GuiGetStyle(LISTVIEW, TEXT_COLOR_FOCUSED)));
+ GuiDrawText(text[startIndex + i], GetTextBounds(LISTVIEW, itemBounds), GuiGetStyle(LISTVIEW, TEXT_ALIGNMENT), GetColor(GuiGetStyle(LISTVIEW, TEXT_COLOR_FOCUSED)));
}
else
{
// Draw item normal (no rectangle)
- GuiDrawText(text[startIndex + i], GetTextBounds(DEFAULT, itemBounds), GuiGetStyle(LISTVIEW, TEXT_ALIGNMENT), GetColor(GuiGetStyle(LISTVIEW, TEXT_COLOR_NORMAL)));
+ GuiDrawText(text[startIndex + i], GetTextBounds(LISTVIEW, itemBounds), GuiGetStyle(LISTVIEW, TEXT_ALIGNMENT), GetColor(GuiGetStyle(LISTVIEW, TEXT_COLOR_NORMAL)));
}
}
@@ -3765,11 +3807,11 @@ int GuiColorBarAlpha(Rectangle bounds, const char *text, float *alpha)
//--------------------------------------------------------------------
if ((state != STATE_DISABLED) && !guiLocked)
{
- Vector2 mousePoint = GetMousePosition();
+ Vector2 mousePoint = GUI_POINTER_POSITION;
if (guiControlExclusiveMode) // Allows to keep dragging outside of bounds
{
- if (IsMouseButtonDown(MOUSE_LEFT_BUTTON))
+ if (GUI_BUTTON_DOWN)
{
if (CHECK_BOUNDS_ID(bounds, guiControlExclusiveRec))
{
@@ -3788,7 +3830,7 @@ int GuiColorBarAlpha(Rectangle bounds, const char *text, float *alpha)
}
else if (CheckCollisionPointRec(mousePoint, bounds) || CheckCollisionPointRec(mousePoint, selector))
{
- if (IsMouseButtonDown(MOUSE_LEFT_BUTTON))
+ if (GUI_BUTTON_DOWN)
{
state = STATE_PRESSED;
guiControlExclusiveMode = true;
@@ -3850,11 +3892,11 @@ int GuiColorBarHue(Rectangle bounds, const char *text, float *hue)
//--------------------------------------------------------------------
if ((state != STATE_DISABLED) && !guiLocked)
{
- Vector2 mousePoint = GetMousePosition();
+ Vector2 mousePoint = GUI_POINTER_POSITION;
if (guiControlExclusiveMode) // Allows to keep dragging outside of bounds
{
- if (IsMouseButtonDown(MOUSE_LEFT_BUTTON))
+ if (GUI_BUTTON_DOWN)
{
if (CHECK_BOUNDS_ID(bounds, guiControlExclusiveRec))
{
@@ -3873,7 +3915,7 @@ int GuiColorBarHue(Rectangle bounds, const char *text, float *hue)
}
else if (CheckCollisionPointRec(mousePoint, bounds) || CheckCollisionPointRec(mousePoint, selector))
{
- if (IsMouseButtonDown(MOUSE_LEFT_BUTTON))
+ if (GUI_BUTTON_DOWN)
{
state = STATE_PRESSED;
guiControlExclusiveMode = true;
@@ -3886,12 +3928,12 @@ int GuiColorBarHue(Rectangle bounds, const char *text, float *hue)
}
else state = STATE_FOCUSED;
- /*if (IsKeyDown(KEY_UP))
+ /*if (GUI_KEY_DOWN(KEY_UP))
{
hue -= 2.0f;
if (hue <= 0.0f) hue = 0.0f;
}
- else if (IsKeyDown(KEY_DOWN))
+ else if (GUI_KEY_DOWN(KEY_DOWN))
{
hue += 2.0f;
if (hue >= 360.0f) hue = 360.0f;
@@ -4008,11 +4050,11 @@ int GuiColorPanelHSV(Rectangle bounds, const char *text, Vector3 *colorHsv)
//--------------------------------------------------------------------
if ((state != STATE_DISABLED) && !guiLocked)
{
- Vector2 mousePoint = GetMousePosition();
+ Vector2 mousePoint = GUI_POINTER_POSITION;
if (guiControlExclusiveMode) // Allows to keep dragging outside of bounds
{
- if (IsMouseButtonDown(MOUSE_LEFT_BUTTON))
+ if (GUI_BUTTON_DOWN)
{
if (CHECK_BOUNDS_ID(bounds, guiControlExclusiveRec))
{
@@ -4042,7 +4084,7 @@ int GuiColorPanelHSV(Rectangle bounds, const char *text, Vector3 *colorHsv)
}
else if (CheckCollisionPointRec(mousePoint, bounds))
{
- if (IsMouseButtonDown(MOUSE_LEFT_BUTTON))
+ if (GUI_BUTTON_DOWN)
{
state = STATE_PRESSED;
guiControlExclusiveMode = true;
@@ -4198,6 +4240,9 @@ int GuiTextInputBox(Rectangle bounds, const char *title, const char *message, co
GuiSetStyle(LABEL, TEXT_ALIGNMENT, prevTextAlignment);
}
+ int prevTextBoxAlignment = GuiGetStyle(TEXTBOX, TEXT_ALIGNMENT);
+ GuiSetStyle(TEXTBOX, TEXT_ALIGNMENT, TEXT_ALIGN_LEFT);
+
if (secretViewActive != NULL)
{
static char stars[] = "****************";
@@ -4211,6 +4256,8 @@ int GuiTextInputBox(Rectangle bounds, const char *title, const char *message, co
if (GuiTextBox(textBoxBounds, text, textMaxSize, textEditMode)) textEditMode = !textEditMode;
}
+ GuiSetStyle(TEXTBOX, TEXT_ALIGNMENT, prevTextBoxAlignment);
+
int prevBtnTextAlignment = GuiGetStyle(BUTTON, TEXT_ALIGNMENT);
GuiSetStyle(BUTTON, TEXT_ALIGNMENT, TEXT_ALIGN_CENTER);
@@ -4231,7 +4278,7 @@ int GuiTextInputBox(Rectangle bounds, const char *title, const char *message, co
// Grid control
// NOTE: Returns grid mouse-hover selected cell
// About drawing lines at subpixel spacing, simple put, not easy solution:
-// https://stackoverflow.com/questions/4435450/2d-opengl-drawing-lines-that-dont-exactly-fit-pixel-raster
+// REF: https://stackoverflow.com/questions/4435450/2d-opengl-drawing-lines-that-dont-exactly-fit-pixel-raster
int GuiGrid(Rectangle bounds, const char *text, float spacing, int subdivs, Vector2 *mouseCell)
{
// Grid lines alpha amount
@@ -4242,7 +4289,7 @@ int GuiGrid(Rectangle bounds, const char *text, float spacing, int subdivs, Vect
int result = 0;
GuiState state = guiState;
- Vector2 mousePoint = GetMousePosition();
+ Vector2 mousePoint = GUI_POINTER_POSITION;
Vector2 currentMouseCell = { -1, -1 };
float spaceWidth = spacing/(float)subdivs;
@@ -4410,11 +4457,14 @@ void GuiLoadStyle(const char *fileName)
if (fileDataSize > 0)
{
unsigned char *fileData = (unsigned char *)RAYGUI_CALLOC(fileDataSize, sizeof(unsigned char));
- fread(fileData, sizeof(unsigned char), fileDataSize, rgsFile);
+ if (fileData != NULL)
+ {
+ fread(fileData, sizeof(unsigned char), fileDataSize, rgsFile);
- GuiLoadStyleFromMemory(fileData, fileDataSize);
+ GuiLoadStyleFromMemory(fileData, fileDataSize);
- RAYGUI_FREE(fileData);
+ RAYGUI_FREE(fileData);
+ }
}
fclose(rgsFile);
@@ -4425,7 +4475,7 @@ void GuiLoadStyle(const char *fileName)
// Load style default over global style
void GuiLoadStyleDefault(void)
{
- // We set this variable first to avoid cyclic function calls
+ // Setting this flag first to avoid cyclic function calls
// when calling GuiSetStyle() and GuiGetStyle()
guiStyleLoaded = true;
@@ -4454,7 +4504,7 @@ void GuiLoadStyleDefault(void)
GuiSetStyle(DEFAULT, TEXT_SPACING, 1); // DEFAULT, shared by all controls
GuiSetStyle(DEFAULT, LINE_COLOR, 0x90abb5ff); // DEFAULT specific property
GuiSetStyle(DEFAULT, BACKGROUND_COLOR, 0xf5f5f5ff); // DEFAULT specific property
- GuiSetStyle(DEFAULT, TEXT_LINE_SPACING, 15); // DEFAULT, 15 pixels between lines
+ GuiSetStyle(DEFAULT, TEXT_LINE_SPACING, 5); // DEFAULT, pixels between lines, from bottom of first line to top of second
GuiSetStyle(DEFAULT, TEXT_ALIGNMENT_VERTICAL, TEXT_ALIGN_MIDDLE); // DEFAULT, text aligned vertically to middle of text-bounds
// Initialize control-specific property values
@@ -4520,7 +4570,7 @@ void GuiLoadStyleDefault(void)
// NOTE: Default raylib font character 95 is a white square
Rectangle whiteChar = guiFont.recs[95];
- // NOTE: We set up a 1px padding on char rectangle to avoid pixel bleeding on MSAA filtering
+ // NOTE: Setting up a 1px padding on char rectangle to avoid pixel bleeding on MSAA filtering
SetShapesTexture(guiFont.texture, RAYGUI_CLITERAL(Rectangle){ whiteChar.x + 1, whiteChar.y + 1, whiteChar.width - 2, whiteChar.height - 2 });
}
}
@@ -5037,14 +5087,14 @@ static Rectangle GetTextBounds(int control, Rectangle bounds)
}
// Get text icon if provided and move text cursor
-// NOTE: We support up to 999 values for iconId
+// NOTE: Up to #999# values supported for iconId
static const char *GetTextIcon(const char *text, int *iconId)
{
#if !defined(RAYGUI_NO_ICONS)
*iconId = -1;
- if (text[0] == '#') // Maybe we have an icon!
+ if (text[0] == '#') // Maybe it is stars with an icon, ending # must be found
{
- char iconValue[4] = { 0 }; // Maximum length for icon value: 3 digits + '\0'
+ char iconValue[4] = { 0 }; // Maximum length for icon value: 3 digits + '\0'
int pos = 1;
while ((pos < 4) && (text[pos] >= '0') && (text[pos] <= '9'))
@@ -5076,12 +5126,12 @@ static const char **GetTextLines(const char *text, int *count)
static const char *lines[RAYGUI_MAX_TEXT_LINES] = { 0 };
for (int i = 0; i < RAYGUI_MAX_TEXT_LINES; i++) lines[i] = NULL; // Init NULL pointers to substrings
- int textSize = (int)strlen(text);
+ int textLength = (int)strlen(text);
lines[0] = text;
*count = 1;
- for (int i = 0, k = 0; (i < textSize) && (*count < RAYGUI_MAX_TEXT_LINES); i++)
+ for (int i = 0, k = 0; (i < textLength) && (*count < RAYGUI_MAX_TEXT_LINES); i++)
{
if (text[i] == '\n')
{
@@ -5141,7 +5191,7 @@ static void GuiDrawText(const char *text, Rectangle textBounds, int alignment, C
// - For every line, wordwrap mode is checked (useful for GuitextBox(), read-only)
// Get text lines (using '\n' as delimiter) to be processed individually
- // WARNING: We can't use GuiTextSplit() function because it can be already used
+ // WARNING: GuiTextSplit() function can't be used now because it can have already been used
// before the GuiDrawText() call and its buffer is static, it would be overriden :(
int lineCount = 0;
const char **lines = GetTextLines(text, &lineCount);
@@ -5152,7 +5202,7 @@ static void GuiDrawText(const char *text, Rectangle textBounds, int alignment, C
int wrapMode = GuiGetStyle(DEFAULT, TEXT_WRAP_MODE); // Wrap-mode only available in read-only mode, no for text editing
// TODO: WARNING: This totalHeight is not valid for vertical alignment in case of word-wrap
- float totalHeight = (float)(lineCount*GuiGetStyle(DEFAULT, TEXT_SIZE) + (lineCount - 1)*GuiGetStyle(DEFAULT, TEXT_SIZE)/2);
+ float totalHeight = (float)(lineCount*GuiGetStyle(DEFAULT, TEXT_SIZE) + (lineCount - 1)*GuiGetStyle(DEFAULT, TEXT_LINE_SPACING));
float posOffsetY = 0.0f;
for (int i = 0; i < lineCount; i++)
@@ -5165,7 +5215,7 @@ static void GuiDrawText(const char *text, Rectangle textBounds, int alignment, C
Vector2 textBoundsPosition = { textBounds.x, textBounds.y };
float textBoundsWidthOffset = 0.0f;
- // NOTE: We get text size after icon has been processed
+ // NOTE: Get text size after icon has been processed
// WARNING: GuiGetTextWidth() also processes text icon to get width! -> Really needed?
int textSizeX = GuiGetTextWidth(lines[i]);
@@ -5200,8 +5250,8 @@ static void GuiDrawText(const char *text, Rectangle textBounds, int alignment, C
default: break;
}
- // NOTE: Make sure we get pixel-perfect coordinates,
- // In case of decimals we got weird text positioning
+ // NOTE: Make sure getting pixel-perfect coordinates,
+ // In case of decimals, it could result in text positioning artifacts
textBoundsPosition.x = (float)((int)textBoundsPosition.x);
textBoundsPosition.y = (float)((int)textBoundsPosition.y);
//---------------------------------------------------------------------------------
@@ -5211,7 +5261,7 @@ static void GuiDrawText(const char *text, Rectangle textBounds, int alignment, C
#if !defined(RAYGUI_NO_ICONS)
if (iconId >= 0)
{
- // NOTE: We consider icon height, probably different than text size
+ // NOTE: Considering icon height, probably different than text size
GuiDrawIcon(iconId, (int)textBoundsPosition.x, (int)(textBounds.y + textBounds.height/2 - RAYGUI_ICON_SIZE*guiIconScale/2 + TEXT_VALIGN_PIXEL_OFFSET(textBounds.height)), guiIconScale, tint);
textBoundsPosition.x += (float)(RAYGUI_ICON_SIZE*guiIconScale + ICON_TEXT_PADDING);
textBoundsWidthOffset = (float)(RAYGUI_ICON_SIZE*guiIconScale + ICON_TEXT_PADDING);
@@ -5237,8 +5287,8 @@ static void GuiDrawText(const char *text, Rectangle textBounds, int alignment, C
int codepoint = GetCodepointNext(&lines[i][c], &codepointSize);
int index = GetGlyphIndex(guiFont, codepoint);
- // NOTE: Normally we exit the decoding sequence as soon as a bad byte is found (and return 0x3f)
- // but we need to draw all of the bad bytes using the '?' symbol moving one byte
+ // NOTE: Normally, exiting the decoding sequence as soon as a bad byte is found (and return 0x3f)
+ // but all of the bad bytes need to be drawn using the '?' symbol, moving one byte
if (codepoint == 0x3f) codepointSize = 1; // TODO: Review not recognized codepoints size
// Get glyph width to check if it goes out of bounds
@@ -5253,7 +5303,7 @@ static void GuiDrawText(const char *text, Rectangle textBounds, int alignment, C
if ((textOffsetX + glyphWidth) > textBounds.width - textBoundsWidthOffset)
{
textOffsetX = 0.0f;
- textOffsetY += GuiGetStyle(DEFAULT, TEXT_LINE_SPACING);
+ textOffsetY += (GuiGetStyle(DEFAULT, TEXT_SIZE) + GuiGetStyle(DEFAULT, TEXT_LINE_SPACING));
if (tempWrapCharMode) // Wrap at char level when too long words
{
@@ -5282,7 +5332,7 @@ static void GuiDrawText(const char *text, Rectangle textBounds, int alignment, C
else if ((textOffsetX + nextSpaceWidth) > textBounds.width - textBoundsWidthOffset)
{
textOffsetX = 0.0f;
- textOffsetY += GuiGetStyle(DEFAULT, TEXT_LINE_SPACING);
+ textOffsetY += (GuiGetStyle(DEFAULT, TEXT_SIZE) + GuiGetStyle(DEFAULT, TEXT_LINE_SPACING));
}
}
@@ -5332,7 +5382,7 @@ static void GuiDrawText(const char *text, Rectangle textBounds, int alignment, C
}
}
- if (wrapMode == TEXT_WRAP_NONE) posOffsetY += (float)GuiGetStyle(DEFAULT, TEXT_LINE_SPACING);
+ if (wrapMode == TEXT_WRAP_NONE) posOffsetY += (float)(GuiGetStyle(DEFAULT, TEXT_SIZE) + GuiGetStyle(DEFAULT, TEXT_LINE_SPACING));
else if ((wrapMode == TEXT_WRAP_CHAR) || (wrapMode == TEXT_WRAP_WORD)) posOffsetY += (textOffsetY + (float)GuiGetStyle(DEFAULT, TEXT_LINE_SPACING));
//---------------------------------------------------------------------------------
}
@@ -5374,13 +5424,19 @@ static void GuiTooltip(Rectangle controlRec)
if ((controlRec.x + textSize.x + 16) > GetScreenWidth()) controlRec.x -= (textSize.x + 16 - controlRec.width);
- GuiPanel(RAYGUI_CLITERAL(Rectangle){ controlRec.x, controlRec.y + controlRec.height + 4, textSize.x + 16, GuiGetStyle(DEFAULT, TEXT_SIZE) + 8.0f }, NULL);
+ int lineCount = 0;
+ GetTextLines(guiTooltipPtr, &lineCount); // Only using the line count
+ if ((controlRec.y + controlRec.height + textSize.y + 4 + 8*lineCount) > GetScreenHeight())
+ controlRec.y -= (controlRec.height + textSize.y + 4 + 8*lineCount);
+
+ // TODO: Probably TEXT_LINE_SPACING should be considered on panel size instead of hardcoding 8.0f
+ GuiPanel(RAYGUI_CLITERAL(Rectangle){ controlRec.x, controlRec.y + controlRec.height + 4, textSize.x + 16, textSize.y + 8.0f*lineCount }, NULL);
int textPadding = GuiGetStyle(LABEL, TEXT_PADDING);
int textAlignment = GuiGetStyle(LABEL, TEXT_ALIGNMENT);
GuiSetStyle(LABEL, TEXT_PADDING, 0);
GuiSetStyle(LABEL, TEXT_ALIGNMENT, TEXT_ALIGN_CENTER);
- GuiLabel(RAYGUI_CLITERAL(Rectangle){ controlRec.x, controlRec.y + controlRec.height + 4, textSize.x + 16, GuiGetStyle(DEFAULT, TEXT_SIZE) + 8.0f }, guiTooltipPtr);
+ GuiLabel(RAYGUI_CLITERAL(Rectangle){ controlRec.x, controlRec.y + controlRec.height + 4, textSize.x + 16, textSize.y + 8.0f*lineCount }, guiTooltipPtr);
GuiSetStyle(LABEL, TEXT_ALIGNMENT, textAlignment);
GuiSetStyle(LABEL, TEXT_PADDING, textPadding);
}
@@ -5416,7 +5472,7 @@ static const char **GuiTextSplit(const char *text, char delimiter, int *count, i
if (textRow != NULL) textRow[0] = 0;
- // Count how many substrings we have on text and point to every one
+ // Count how many substrings text contains and point to every one of them
for (int i = 0; i < RAYGUI_TEXTSPLIT_MAX_TEXT_SIZE; i++)
{
buffer[i] = text[i];
@@ -5637,11 +5693,11 @@ static int GuiScrollBar(Rectangle bounds, int value, int minValue, int maxValue)
//--------------------------------------------------------------------
if ((state != STATE_DISABLED) && !guiLocked)
{
- Vector2 mousePoint = GetMousePosition();
+ Vector2 mousePoint = GUI_POINTER_POSITION;
if (guiControlExclusiveMode) // Allows to keep dragging outside of bounds
{
- if (IsMouseButtonDown(MOUSE_LEFT_BUTTON) &&
+ if (GUI_BUTTON_DOWN &&
!CheckCollisionPointRec(mousePoint, arrowUpLeft) &&
!CheckCollisionPointRec(mousePoint, arrowDownRight))
{
@@ -5664,11 +5720,11 @@ static int GuiScrollBar(Rectangle bounds, int value, int minValue, int maxValue)
state = STATE_FOCUSED;
// Handle mouse wheel
- int wheel = (int)GetMouseWheelMove();
- if (wheel != 0) value += wheel;
+ float scrollDelta = GUI_SCROLL_DELTA;
+ if (scrollDelta != 0) value += (int)scrollDelta;
// Handle mouse button down
- if (IsMouseButtonPressed(MOUSE_LEFT_BUTTON))
+ if (GUI_BUTTON_PRESSED)
{
guiControlExclusiveMode = true;
guiControlExclusiveRec = bounds; // Store bounds as an identifier when dragging starts
@@ -5690,13 +5746,13 @@ static int GuiScrollBar(Rectangle bounds, int value, int minValue, int maxValue)
/*
if (isVertical)
{
- if (IsKeyDown(KEY_DOWN)) value += 5;
- else if (IsKeyDown(KEY_UP)) value -= 5;
+ if (GUI_KEY_DOWN(KEY_DOWN)) value += 5;
+ else if (GUI_KEY_DOWN(KEY_UP)) value -= 5;
}
else
{
- if (IsKeyDown(KEY_RIGHT)) value += 5;
- else if (IsKeyDown(KEY_LEFT)) value -= 5;
+ if (GUI_KEY_DOWN(KEY_RIGHT)) value += 5;
+ else if (GUI_KEY_DOWN(KEY_LEFT)) value -= 5;
}
*/
}
@@ -5833,7 +5889,7 @@ const char **TextSplit(const char *text, char delimiter, int *count)
{
counter = 1;
- // Count how many substrings we have on text and point to every one
+ // Count how many substrings text contains and point to every one of them
for (int i = 0; i < RAYGUI_TEXTSPLIT_MAX_TEXT_SIZE; i++)
{
buffer[i] = text[i];
@@ -5866,7 +5922,7 @@ static int TextToInteger(const char *text)
text++;
}
- for (int i = 0; ((text[i] >= '0') && (text[i] <= '9')); ++i) value = value*10 + (int)(text[i] - '0');
+ for (int i = 0; ((text[i] >= '0') && (text[i] <= '9')); i++) value = value*10 + (int)(text[i] - '0');
return value*sign;
}
@@ -5941,9 +5997,9 @@ static const char *CodepointToUTF8(int codepoint, int *byteSize)
}
// Get next codepoint in a UTF-8 encoded text, scanning until '\0' is found
-// When a invalid UTF-8 byte is encountered we exit as soon as possible and a '?'(0x3f) codepoint is returned
+// When a invalid UTF-8 byte is encountered, exiting as soon as possible and returning a '?'(0x3f) codepoint
// Total number of bytes processed are returned as a parameter
-// NOTE: the standard says U+FFFD should be returned in case of errors
+// NOTE: The standard says U+FFFD should be returned in case of errors
// but that character is not supported by the default font in raylib
static int GetCodepointNext(const char *text, int *codepointSize)
{
diff --git a/examples/others/resources/shaders/glsl430/gol.glsl b/examples/shaders/resources/shaders/glsl430/gol.glsl
similarity index 100%
rename from examples/others/resources/shaders/glsl430/gol.glsl
rename to examples/shaders/resources/shaders/glsl430/gol.glsl
diff --git a/examples/others/resources/shaders/glsl430/gol_render.glsl b/examples/shaders/resources/shaders/glsl430/gol_render.glsl
similarity index 100%
rename from examples/others/resources/shaders/glsl430/gol_render.glsl
rename to examples/shaders/resources/shaders/glsl430/gol_render.glsl
diff --git a/examples/others/resources/shaders/glsl430/gol_transfert.glsl b/examples/shaders/resources/shaders/glsl430/gol_transfert.glsl
similarity index 100%
rename from examples/others/resources/shaders/glsl430/gol_transfert.glsl
rename to examples/shaders/resources/shaders/glsl430/gol_transfert.glsl
diff --git a/examples/others/rlgl_compute_shader.c b/examples/shaders/shaders_rlgl_compute.c
similarity index 95%
rename from examples/others/rlgl_compute_shader.c
rename to examples/shaders/shaders_rlgl_compute.c
index 14a2b32cd..af3bb6fe4 100644
--- a/examples/others/rlgl_compute_shader.c
+++ b/examples/shaders/shaders_rlgl_compute.c
@@ -1,9 +1,9 @@
/*******************************************************************************************
*
-* raylib [others] example - compute shader
+* raylib [shaders] example - rlgl compute
*
-* NOTE: This example requires raylib OpenGL 4.3 versions for compute shaders support,
-* shaders used in this example are #version 430 (OpenGL 4.3)
+* WARNING: This example requires raylib compiled with OpenGL 4.3 version for
+* compute shaders support, shaders used in this example are #version 430
*
* Example complexity rating: [★★★★] 4/4
*
@@ -19,9 +19,10 @@
********************************************************************************************/
#include "raylib.h"
+
#include "rlgl.h"
-#include
+#include // Required for: NULL
// IMPORTANT: This must match gol*.glsl GOL_WIDTH constant
// This must be a multiple of 16 (check golLogic compute dispatch)
@@ -57,7 +58,7 @@ int main(void)
const int screenWidth = GOL_WIDTH;
const int screenHeight = GOL_WIDTH;
- InitWindow(screenWidth, screenHeight, "raylib [others] example - compute shader");
+ InitWindow(screenWidth, screenHeight, "raylib [shaders] example - rlgl compute");
const Vector2 resolution = { (float)screenWidth, (float)screenHeight };
unsigned int brushSize = 8;
diff --git a/examples/others/rlgl_compute_shader.png b/examples/shaders/shaders_rlgl_compute.png
similarity index 100%
rename from examples/others/rlgl_compute_shader.png
rename to examples/shaders/shaders_rlgl_compute.png
diff --git a/examples/shapes/raygui.h b/examples/shapes/raygui.h
index 88fe5cc5b..67c16be45 100644
--- a/examples/shapes/raygui.h
+++ b/examples/shapes/raygui.h
@@ -1,6 +1,6 @@
/*******************************************************************************************
*
-* raygui v4.5-dev - A simple and easy-to-use immediate-mode gui library
+* raygui v5.0-dev - A simple and easy-to-use immediate-mode gui library
*
* DESCRIPTION:
* raygui is a tools-dev-focused immediate-mode-gui library based on raylib but also
@@ -83,8 +83,8 @@
* used for all controls, when any of those base values is set, it is automatically populated to all
* controls, so, specific control values overwriting generic style should be set after base values
*
-* After the first BASE set we have the EXTENDED properties (by default guiStyle[16..23]), those
-* properties are actually common to all controls and can not be overwritten individually (like BASE ones)
+* After the first BASE properties set, the EXTENDED properties set is defined (by default guiStyle[16..23]),
+* those properties are actually common to all controls and can not be overwritten individually (like BASE ones)
* Some of those properties are: TEXT_SIZE, TEXT_SPACING, LINE_COLOR, BACKGROUND_COLOR
*
* Custom control properties can be defined using the EXTENDED properties for each independent control.
@@ -141,13 +141,14 @@
* Draw text bounds rectangles for debug
*
* VERSIONS HISTORY:
-* 5.0 (xx-Nov-2025) ADDED: Support up to 32 controls (v500)
+* 5.0 (xx-Mar-2026) ADDED: Support up to 32 controls (v500)
* ADDED: guiControlExclusiveMode and guiControlExclusiveRec for exclusive modes
* ADDED: GuiValueBoxFloat()
* ADDED: GuiDropdonwBox() properties: DROPDOWN_ARROW_HIDDEN, DROPDOWN_ROLL_UP
* ADDED: GuiListView() property: LIST_ITEMS_BORDER_WIDTH
* ADDED: GuiLoadIconsFromMemory()
* ADDED: Multiple new icons
+* ADDED: Macros for inputs customization, raylib decoupling
* REMOVED: GuiSpinner() from controls list, using BUTTON + VALUEBOX properties
* REMOVED: GuiSliderPro(), functionality was redundant
* REVIEWED: Controls using text labels to use LABEL properties
@@ -165,6 +166,7 @@
* REVIEWED: GuiTextBox(), multiple improvements: autocursor and more
* REVIEWED: Functions descriptions, removed wrong return value reference
* REDESIGNED: GuiColorPanel(), improved HSV <-> RGBA convertion
+* REDESIGNED: WARNING: TEXT_LINE_SPACING does not consider text height, only lines spacing
*
* 4.0 (12-Sep-2023) ADDED: GuiToggleSlider()
* ADDED: GuiColorPickerHSV() and GuiColorPanelHSV()
@@ -316,7 +318,7 @@
*
* LICENSE: zlib/libpng
*
-* Copyright (c) 2014-2025 Ramon Santamaria (@raysan5)
+* Copyright (c) 2014-2026 Ramon Santamaria (@raysan5)
*
* This software is provided "as-is", without any express or implied warranty. In no event
* will the authors be held liable for any damages arising from the use of this software.
@@ -351,10 +353,11 @@
// NOTE: Microsoft specifiers to tell compiler that symbols are imported/exported from a .dll
#if defined(_WIN32)
#if defined(BUILD_LIBTYPE_SHARED)
- #define RAYGUIAPI __declspec(dllexport) // We are building the library as a Win32 shared library (.dll)
+ #define RAYGUIAPI __declspec(dllexport) // Building the library as a Win32 shared library (.dll)
#elif defined(USE_LIBTYPE_SHARED)
- #define RAYGUIAPI __declspec(dllimport) // We are using the library as a Win32 shared library (.dll)
+ #define RAYGUIAPI __declspec(dllimport) // Using the library as a Win32 shared library (.dll)
#endif
+ #define _CRT_SECURE_NO_WARNINGS // Disable unsafe warnings on scanf() functions in MSVC
#endif
// Function specifiers definition
@@ -369,9 +372,48 @@
// NOTE: Avoiding those calls, also avoids const strings memory usage
#define RAYGUI_SUPPORT_LOG_INFO
#if defined(RAYGUI_SUPPORT_LOG_INFO)
- #define RAYGUI_LOG(...) printf(__VA_ARGS__)
+ #define RAYGUI_LOG(...) printf(__VA_ARGS__)
#else
- #define RAYGUI_LOG(...)
+ #define RAYGUI_LOG(...)
+#endif
+
+// Macros to define required UI inputs, including mapping to gamepad controls
+// TODO: Define additionally required macros for missing inputs
+#if !defined(GUI_BUTTON_DOWN)
+ #define GUI_BUTTON_DOWN (IsMouseButtonDown(MOUSE_LEFT_BUTTON) || IsGamepadButtonDown(0, GAMEPAD_BUTTON_RIGHT_FACE_DOWN))
+#endif
+#if !defined(GUI_BUTTON_DOWN_ALT)
+ // Mapping to alternative button down pressed
+ #define GUI_BUTTON_DOWN_ALT (IsMouseButtonDown(MOUSE_RIGHT_BUTTON) || IsGamepadButtonDown(0, GAMEPAD_BUTTON_RIGHT_FACE_RIGHT))
+#endif
+#if !defined(GUI_BUTTON_PRESSED)
+ #define GUI_BUTTON_PRESSED (IsMouseButtonPressed(MOUSE_LEFT_BUTTON) || IsGamepadButtonPressed(0, GAMEPAD_BUTTON_RIGHT_FACE_DOWN))
+#endif
+// TODO: WARNING: GuiTabBar() still requires IsMouseButtonPressed(MOUSE_MIDDLE_BUTTON)
+#if !defined(GUI_BUTTON_RELEASED)
+ #define GUI_BUTTON_RELEASED (IsMouseButtonReleased(MOUSE_LEFT_BUTTON) || IsGamepadButtonReleased(0, GAMEPAD_BUTTON_RIGHT_FACE_DOWN))
+#endif
+#if !defined(GUI_SCROLL_DELTA)
+ // Mapping to scroll delta changes
+ // TODO: Review inconsistencies between platforms
+ #if defined(PLATFORM_WEB)
+ // NOTE: Gamepad axis triggers not detected on web platform
+ #define GUI_SCROLL_DELTA ((float)IsGamepadButtonDown(0, GAMEPAD_BUTTON_RIGHT_TRIGGER_2) - (float)IsGamepadButtonDown(0, GAMEPAD_BUTTON_LEFT_TRIGGER_2))
+ #else
+ #define GUI_SCROLL_DELTA (GetMouseWheelMove() + (GetGamepadAxisMovement(0, GAMEPAD_AXIS_RIGHT_TRIGGER) + 1) - (GetGamepadAxisMovement(0, GAMEPAD_AXIS_LEFT_TRIGGER) + 1))
+ #endif
+#endif
+#if !defined(GUI_POINTER_POSITION)
+ #define GUI_POINTER_POSITION GetMousePosition()
+#endif
+#if !defined(GUI_KEY_DOWN)
+ #define GUI_KEY_DOWN(key) IsKeyDown(key)
+#endif
+#if !defined(GUI_KEY_PRESSED)
+ #define GUI_KEY_PRESSED(key) IsKeyPressed(key)
+#endif
+#if !defined(GUI_INPUT_KEY)
+ #define GUI_INPUT_KEY GetCharPressed()
#endif
//----------------------------------------------------------------------------------
@@ -567,7 +609,7 @@ typedef enum {
//----------------------------------------------------------------------------------
// DEFAULT extended properties
// NOTE: Those properties are common to all controls or global
-// WARNING: We only have 8 slots for those properties by default!!! -> New global control: TEXT?
+// WARNING: Only 8 slots vailable for those properties by default
typedef enum {
TEXT_SIZE = 16, // Text size (glyphs max height)
TEXT_SPACING, // Text spacing between glyphs
@@ -1091,7 +1133,7 @@ typedef enum {
// Icons data is defined by bit array (every bit represents one pixel)
// Those arrays are stored as unsigned int data arrays, so,
// every array element defines 32 pixels (bits) of information
-// One icon is defined by 8 int, (8 int * 32 bit = 256 bit = 16*16 pixels)
+// One icon is defined by 8 int, (8 int*32 bit = 256 bit = 16*16 pixels)
// NOTE: Number of elemens depend on RAYGUI_ICON_SIZE (by default 16x16 pixels)
#define RAYGUI_ICON_DATA_ELEMENTS (RAYGUI_ICON_SIZE*RAYGUI_ICON_SIZE/32)
@@ -1450,12 +1492,12 @@ static bool IsMouseButtonReleased(int button);
static bool IsKeyDown(int key);
static bool IsKeyPressed(int key);
-static int GetCharPressed(void); // -- GuiTextBox(), GuiValueBox()
+static int GetCharPressed(void); // -- GuiTextBox(), GuiValueBox()
//-------------------------------------------------------------------------------
// Drawing required functions
//-------------------------------------------------------------------------------
-static void DrawRectangle(int x, int y, int width, int height, Color color); // -- GuiDrawRectangle()
+static void DrawRectangle(int x, int y, int width, int height, Color color); // -- GuiDrawRectangle()
static void DrawRectangleGradientEx(Rectangle rec, Color col1, Color col2, Color col3, Color col4); // -- GuiColorPicker()
//-------------------------------------------------------------------------------
@@ -1520,11 +1562,11 @@ static Color GuiFade(Color color, float alpha); // Fade color by an alph
// Gui Setup Functions Definition
//----------------------------------------------------------------------------------
// Enable gui global state
-// NOTE: We check for STATE_DISABLED to avoid messing custom global state setups
+// NOTE: Checking for STATE_DISABLED to avoid messing custom global state setups
void GuiEnable(void) { if (guiState == STATE_DISABLED) guiState = STATE_NORMAL; }
// Disable gui global state
-// NOTE: We check for STATE_NORMAL to avoid messing custom global state setups
+// NOTE: Checking for STATE_NORMAL to avoid messing custom global state setups
void GuiDisable(void) { if (guiState == STATE_NORMAL) guiState = STATE_DISABLED; }
// Lock gui global state
@@ -1557,9 +1599,8 @@ void GuiSetFont(Font font)
{
if (font.texture.id > 0)
{
- // NOTE: If we try to setup a font but default style has not been
- // lazily loaded before, it will be overwritten, so we need to force
- // default style loading first
+ // NOTE: If a font is tried to be set but default style has not been lazily loaded first,
+ // it will be overwritten, so default style loading needs to be forced first
if (!guiStyleLoaded) GuiLoadStyleDefault();
guiFont = font;
@@ -1613,13 +1654,14 @@ int GuiWindowBox(Rectangle bounds, const char *title)
//GuiState state = guiState;
int statusBarHeight = RAYGUI_WINDOWBOX_STATUSBAR_HEIGHT;
+ int statusBorderWidth = GuiGetStyle(STATUSBAR, BORDER_WIDTH);
Rectangle statusBar = { bounds.x, bounds.y, bounds.width, (float)statusBarHeight };
if (bounds.height < statusBarHeight*2.0f) bounds.height = statusBarHeight*2.0f;
const float vPadding = statusBarHeight/2.0f - RAYGUI_WINDOWBOX_CLOSEBUTTON_HEIGHT/2.0f;
- Rectangle windowPanel = { bounds.x, bounds.y + (float)statusBarHeight - 1, bounds.width, bounds.height - (float)statusBarHeight + 1 };
- Rectangle closeButtonRec = { statusBar.x + statusBar.width - GuiGetStyle(STATUSBAR, BORDER_WIDTH) - RAYGUI_WINDOWBOX_CLOSEBUTTON_HEIGHT - vPadding,
+ Rectangle windowPanel = { bounds.x, bounds.y + (float)statusBarHeight - (float)statusBorderWidth, bounds.width, bounds.height - (float)statusBarHeight + (float)statusBorderWidth };
+ Rectangle closeButtonRec = { statusBar.x + statusBar.width - (float)statusBorderWidth - RAYGUI_WINDOWBOX_CLOSEBUTTON_HEIGHT - vPadding,
statusBar.y + vPadding, RAYGUI_WINDOWBOX_CLOSEBUTTON_HEIGHT, RAYGUI_WINDOWBOX_CLOSEBUTTON_HEIGHT };
// Update control
@@ -1629,8 +1671,8 @@ int GuiWindowBox(Rectangle bounds, const char *title)
// Draw control
//--------------------------------------------------------------------
- GuiStatusBar(statusBar, title); // Draw window header as status bar
GuiPanel(windowPanel, NULL); // Draw window base
+ GuiStatusBar(statusBar, title); // Draw window header as status bar
// Draw window close button
int tempBorderWidth = GuiGetStyle(BUTTON, BORDER_WIDTH);
@@ -1786,7 +1828,7 @@ int GuiTabBar(Rectangle bounds, const char **text, int count, int *active)
}
// Close tab with middle mouse button pressed
- if (CheckCollisionPointRec(GetMousePosition(), tabBounds) && IsMouseButtonPressed(MOUSE_MIDDLE_BUTTON)) result = i;
+ if (CheckCollisionPointRec(GUI_POINTER_POSITION, tabBounds) && IsMouseButtonPressed(MOUSE_MIDDLE_BUTTON)) result = i;
GuiSetStyle(TOGGLE, TEXT_PADDING, textPadding);
GuiSetStyle(TOGGLE, TEXT_ALIGNMENT, textAlignment);
@@ -1885,37 +1927,37 @@ int GuiScrollPanel(Rectangle bounds, const char *text, Rectangle content, Vector
//--------------------------------------------------------------------
if ((state != STATE_DISABLED) && !guiLocked)
{
- Vector2 mousePoint = GetMousePosition();
+ Vector2 mousePoint = GUI_POINTER_POSITION;
// Check button state
if (CheckCollisionPointRec(mousePoint, bounds))
{
- if (IsMouseButtonDown(MOUSE_LEFT_BUTTON)) state = STATE_PRESSED;
+ if (GUI_BUTTON_DOWN) state = STATE_PRESSED;
else state = STATE_FOCUSED;
#if defined(SUPPORT_SCROLLBAR_KEY_INPUT)
if (hasHorizontalScrollBar)
{
- if (IsKeyDown(KEY_RIGHT)) scrollPos.x -= GuiGetStyle(SCROLLBAR, SCROLL_SPEED);
- if (IsKeyDown(KEY_LEFT)) scrollPos.x += GuiGetStyle(SCROLLBAR, SCROLL_SPEED);
+ if (GUI_KEY_DOWN(KEY_RIGHT)) scrollPos.x -= GuiGetStyle(SCROLLBAR, SCROLL_SPEED);
+ if (GUI_KEY_DOWN(KEY_LEFT)) scrollPos.x += GuiGetStyle(SCROLLBAR, SCROLL_SPEED);
}
if (hasVerticalScrollBar)
{
- if (IsKeyDown(KEY_DOWN)) scrollPos.y -= GuiGetStyle(SCROLLBAR, SCROLL_SPEED);
- if (IsKeyDown(KEY_UP)) scrollPos.y += GuiGetStyle(SCROLLBAR, SCROLL_SPEED);
+ if (GUI_KEY_DOWN(KEY_DOWN)) scrollPos.y -= GuiGetStyle(SCROLLBAR, SCROLL_SPEED);
+ if (GUI_KEY_DOWN(KEY_UP)) scrollPos.y += GuiGetStyle(SCROLLBAR, SCROLL_SPEED);
}
#endif
- float wheelMove = GetMouseWheelMove();
+ float scrollDelta = GUI_SCROLL_DELTA;
// Set scrolling speed with mouse wheel based on ratio between bounds and content
- Vector2 mouseWheelSpeed = { content.width/bounds.width, content.height/bounds.height };
- if (mouseWheelSpeed.x < RAYGUI_MIN_MOUSE_WHEEL_SPEED) mouseWheelSpeed.x = RAYGUI_MIN_MOUSE_WHEEL_SPEED;
- if (mouseWheelSpeed.y < RAYGUI_MIN_MOUSE_WHEEL_SPEED) mouseWheelSpeed.y = RAYGUI_MIN_MOUSE_WHEEL_SPEED;
+ Vector2 scrollSpeed = { content.width/bounds.width, content.height/bounds.height };
+ if (scrollSpeed.x < RAYGUI_MIN_MOUSE_WHEEL_SPEED) scrollSpeed.x = RAYGUI_MIN_MOUSE_WHEEL_SPEED;
+ if (scrollSpeed.y < RAYGUI_MIN_MOUSE_WHEEL_SPEED) scrollSpeed.y = RAYGUI_MIN_MOUSE_WHEEL_SPEED;
// Horizontal and vertical scrolling with mouse wheel
- if (hasHorizontalScrollBar && (IsKeyDown(KEY_LEFT_CONTROL) || IsKeyDown(KEY_LEFT_SHIFT))) scrollPos.x += wheelMove*mouseWheelSpeed.x;
- else scrollPos.y += wheelMove*mouseWheelSpeed.y; // Vertical scroll
+ if (hasHorizontalScrollBar && (GUI_KEY_DOWN(KEY_LEFT_CONTROL) || GUI_KEY_DOWN(KEY_LEFT_SHIFT))) scrollPos.x += scrollDelta*scrollSpeed.x;
+ else scrollPos.y += scrollDelta*scrollSpeed.y; // Vertical scroll
}
}
@@ -2001,15 +2043,15 @@ int GuiButton(Rectangle bounds, const char *text)
//--------------------------------------------------------------------
if ((state != STATE_DISABLED) && !guiLocked && !guiControlExclusiveMode)
{
- Vector2 mousePoint = GetMousePosition();
+ Vector2 mousePoint = GUI_POINTER_POSITION;
// Check button state
if (CheckCollisionPointRec(mousePoint, bounds))
{
- if (IsMouseButtonDown(MOUSE_LEFT_BUTTON)) state = STATE_PRESSED;
+ if (GUI_BUTTON_DOWN) state = STATE_PRESSED;
else state = STATE_FOCUSED;
- if (IsMouseButtonReleased(MOUSE_LEFT_BUTTON)) result = 1;
+ if (GUI_BUTTON_RELEASED) result = 1;
}
}
//--------------------------------------------------------------------
@@ -2031,7 +2073,7 @@ int GuiLabelButton(Rectangle bounds, const char *text)
GuiState state = guiState;
bool pressed = false;
- // NOTE: We force bounds.width to be all text
+ // NOTE: Force bounds.width to be all text
float textWidth = (float)GuiGetTextWidth(text);
if ((bounds.width - 2*GuiGetStyle(LABEL, BORDER_WIDTH) - 2*GuiGetStyle(LABEL, TEXT_PADDING)) < textWidth) bounds.width = textWidth + 2*GuiGetStyle(LABEL, BORDER_WIDTH) + 2*GuiGetStyle(LABEL, TEXT_PADDING) + 2;
@@ -2039,15 +2081,15 @@ int GuiLabelButton(Rectangle bounds, const char *text)
//--------------------------------------------------------------------
if ((state != STATE_DISABLED) && !guiLocked && !guiControlExclusiveMode)
{
- Vector2 mousePoint = GetMousePosition();
+ Vector2 mousePoint = GUI_POINTER_POSITION;
// Check checkbox state
if (CheckCollisionPointRec(mousePoint, bounds))
{
- if (IsMouseButtonDown(MOUSE_LEFT_BUTTON)) state = STATE_PRESSED;
+ if (GUI_BUTTON_DOWN) state = STATE_PRESSED;
else state = STATE_FOCUSED;
- if (IsMouseButtonReleased(MOUSE_LEFT_BUTTON)) pressed = true;
+ if (GUI_BUTTON_RELEASED) pressed = true;
}
}
//--------------------------------------------------------------------
@@ -2073,13 +2115,13 @@ int GuiToggle(Rectangle bounds, const char *text, bool *active)
//--------------------------------------------------------------------
if ((state != STATE_DISABLED) && !guiLocked && !guiControlExclusiveMode)
{
- Vector2 mousePoint = GetMousePosition();
+ Vector2 mousePoint = GUI_POINTER_POSITION;
// Check toggle button state
if (CheckCollisionPointRec(mousePoint, bounds))
{
- if (IsMouseButtonDown(MOUSE_LEFT_BUTTON)) state = STATE_PRESSED;
- else if (IsMouseButtonReleased(MOUSE_LEFT_BUTTON))
+ if (GUI_BUTTON_DOWN) state = STATE_PRESSED;
+ else if (GUI_BUTTON_RELEASED)
{
state = STATE_NORMAL;
*active = !(*active);
@@ -2184,12 +2226,12 @@ int GuiToggleSlider(Rectangle bounds, const char *text, int *active)
//--------------------------------------------------------------------
if ((state != STATE_DISABLED) && !guiLocked)
{
- Vector2 mousePoint = GetMousePosition();
+ Vector2 mousePoint = GUI_POINTER_POSITION;
if (CheckCollisionPointRec(mousePoint, bounds))
{
- if (IsMouseButtonDown(MOUSE_LEFT_BUTTON)) state = STATE_PRESSED;
- else if (IsMouseButtonReleased(MOUSE_LEFT_BUTTON))
+ if (GUI_BUTTON_DOWN) state = STATE_PRESSED;
+ else if (GUI_BUTTON_RELEASED)
{
state = STATE_PRESSED;
(*active)++;
@@ -2255,7 +2297,7 @@ int GuiCheckBox(Rectangle bounds, const char *text, bool *checked)
//--------------------------------------------------------------------
if ((state != STATE_DISABLED) && !guiLocked && !guiControlExclusiveMode)
{
- Vector2 mousePoint = GetMousePosition();
+ Vector2 mousePoint = GUI_POINTER_POSITION;
Rectangle totalBounds = {
(GuiGetStyle(CHECKBOX, TEXT_ALIGNMENT) == TEXT_ALIGN_LEFT)? textBounds.x : bounds.x,
@@ -2267,10 +2309,10 @@ int GuiCheckBox(Rectangle bounds, const char *text, bool *checked)
// Check checkbox state
if (CheckCollisionPointRec(mousePoint, totalBounds))
{
- if (IsMouseButtonDown(MOUSE_LEFT_BUTTON)) state = STATE_PRESSED;
+ if (GUI_BUTTON_DOWN) state = STATE_PRESSED;
else state = STATE_FOCUSED;
- if (IsMouseButtonReleased(MOUSE_LEFT_BUTTON))
+ if (GUI_BUTTON_RELEASED)
{
*checked = !(*checked);
result = 1;
@@ -2323,18 +2365,18 @@ int GuiComboBox(Rectangle bounds, const char *text, int *active)
//--------------------------------------------------------------------
if ((state != STATE_DISABLED) && !guiLocked && (itemCount > 1) && !guiControlExclusiveMode)
{
- Vector2 mousePoint = GetMousePosition();
+ Vector2 mousePoint = GUI_POINTER_POSITION;
if (CheckCollisionPointRec(mousePoint, bounds) ||
CheckCollisionPointRec(mousePoint, selector))
{
- if (IsMouseButtonPressed(MOUSE_LEFT_BUTTON))
+ if (GUI_BUTTON_PRESSED)
{
*active += 1;
if (*active >= itemCount) *active = 0; // Cyclic combobox
}
- if (IsMouseButtonDown(MOUSE_LEFT_BUTTON)) state = STATE_PRESSED;
+ if (GUI_BUTTON_DOWN) state = STATE_PRESSED;
else state = STATE_FOCUSED;
}
}
@@ -2392,7 +2434,7 @@ int GuiDropdownBox(Rectangle bounds, const char *text, int *active, bool editMod
//--------------------------------------------------------------------
if ((state != STATE_DISABLED) && (editMode || !guiLocked) && (itemCount > 1) && !guiControlExclusiveMode)
{
- Vector2 mousePoint = GetMousePosition();
+ Vector2 mousePoint = GUI_POINTER_POSITION;
if (editMode)
{
@@ -2401,11 +2443,11 @@ int GuiDropdownBox(Rectangle bounds, const char *text, int *active, bool editMod
// Check if mouse has been pressed or released outside limits
if (!CheckCollisionPointRec(mousePoint, boundsOpen))
{
- if (IsMouseButtonPressed(MOUSE_LEFT_BUTTON) || IsMouseButtonReleased(MOUSE_LEFT_BUTTON)) result = 1;
+ if (GUI_BUTTON_PRESSED || GUI_BUTTON_RELEASED) result = 1;
}
// Check if already selected item has been pressed again
- if (CheckCollisionPointRec(mousePoint, bounds) && IsMouseButtonPressed(MOUSE_LEFT_BUTTON)) result = 1;
+ if (CheckCollisionPointRec(mousePoint, bounds) && GUI_BUTTON_PRESSED) result = 1;
// Check focused and selected item
for (int i = 0; i < itemCount; i++)
@@ -2417,7 +2459,7 @@ int GuiDropdownBox(Rectangle bounds, const char *text, int *active, bool editMod
if (CheckCollisionPointRec(mousePoint, itemBounds))
{
itemFocused = i;
- if (IsMouseButtonReleased(MOUSE_LEFT_BUTTON))
+ if (GUI_BUTTON_RELEASED)
{
itemSelected = i;
result = 1; // Item selected
@@ -2432,7 +2474,7 @@ int GuiDropdownBox(Rectangle bounds, const char *text, int *active, bool editMod
{
if (CheckCollisionPointRec(mousePoint, bounds))
{
- if (IsMouseButtonPressed(MOUSE_LEFT_BUTTON))
+ if (GUI_BUTTON_PRESSED)
{
result = 1;
state = STATE_PRESSED;
@@ -2506,7 +2548,7 @@ int GuiTextBox(Rectangle bounds, char *text, int textSize, bool editMode)
int result = 0;
GuiState state = guiState;
- bool multiline = false; // TODO: Consider multiline text input
+ bool multiline = false; // TODO: Consider multiline text input
int wrapMode = GuiGetStyle(DEFAULT, TEXT_WRAP_MODE);
Rectangle textBounds = GetTextBounds(TEXTBOX, bounds);
@@ -2514,7 +2556,7 @@ int GuiTextBox(Rectangle bounds, char *text, int textSize, bool editMode)
int thisCursorIndex = textBoxCursorIndex;
if (thisCursorIndex > textLength) thisCursorIndex = textLength;
int textWidth = GuiGetTextWidth(text) - GuiGetTextWidth(text + thisCursorIndex);
- int textIndexOffset = 0; // Text index offset to start drawing in the box
+ int textIndexOffset = 0; // Text index offset to start drawing in the box
// Cursor rectangle
// NOTE: Position X value should be updated
@@ -2547,13 +2589,13 @@ int GuiTextBox(Rectangle bounds, char *text, int textSize, bool editMode)
!guiControlExclusiveMode && // No gui slider on dragging
(wrapMode == TEXT_WRAP_NONE)) // No wrap mode
{
- Vector2 mousePosition = GetMousePosition();
+ Vector2 mousePosition = GUI_POINTER_POSITION;
if (editMode)
{
// GLOBAL: Auto-cursor movement logic
// NOTE: Keystrokes are handled repeatedly when button is held down for some time
- if (IsKeyDown(KEY_LEFT) || IsKeyDown(KEY_RIGHT) || IsKeyDown(KEY_UP) || IsKeyDown(KEY_DOWN) || IsKeyDown(KEY_BACKSPACE) || IsKeyDown(KEY_DELETE)) autoCursorCounter++;
+ if (GUI_KEY_DOWN(KEY_LEFT) || GUI_KEY_DOWN(KEY_RIGHT) || GUI_KEY_DOWN(KEY_UP) || GUI_KEY_DOWN(KEY_DOWN) || GUI_KEY_DOWN(KEY_BACKSPACE) || GUI_KEY_DOWN(KEY_DELETE)) autoCursorCounter++;
else autoCursorCounter = 0;
bool autoCursorShouldTrigger = (autoCursorCounter > RAYGUI_TEXTBOX_AUTO_CURSOR_COOLDOWN) && ((autoCursorCounter % RAYGUI_TEXTBOX_AUTO_CURSOR_DELAY) == 0);
@@ -2563,7 +2605,7 @@ int GuiTextBox(Rectangle bounds, char *text, int textSize, bool editMode)
if (textBoxCursorIndex > textLength) textBoxCursorIndex = textLength;
// If text does not fit in the textbox and current cursor position is out of bounds,
- // we add an index offset to text for drawing only what requires depending on cursor
+ // adding an index offset to text for drawing only what requires depending on cursor
while (textWidth >= textBounds.width)
{
int nextCodepointSize = 0;
@@ -2574,15 +2616,15 @@ int GuiTextBox(Rectangle bounds, char *text, int textSize, bool editMode)
textWidth = GuiGetTextWidth(text + textIndexOffset) - GuiGetTextWidth(text + textBoxCursorIndex);
}
- int codepoint = GetCharPressed(); // Get Unicode codepoint
- if (multiline && IsKeyPressed(KEY_ENTER)) codepoint = (int)'\n';
+ int codepoint = GUI_INPUT_KEY; // Get Unicode codepoint
+ if (multiline && GUI_KEY_PRESSED(KEY_ENTER)) codepoint = (int)'\n';
// Encode codepoint as UTF-8
int codepointSize = 0;
const char *charEncoded = CodepointToUTF8(codepoint, &codepointSize);
// Handle text paste action
- if (IsKeyPressed(KEY_V) && (IsKeyDown(KEY_LEFT_CONTROL) || IsKeyDown(KEY_RIGHT_CONTROL)))
+ if (GUI_KEY_PRESSED(KEY_V) && (GUI_KEY_DOWN(KEY_LEFT_CONTROL) || GUI_KEY_DOWN(KEY_RIGHT_CONTROL)))
{
const char *pasteText = GetClipboardText();
if (pasteText != NULL)
@@ -2632,13 +2674,13 @@ int GuiTextBox(Rectangle bounds, char *text, int textSize, bool editMode)
}
// Move cursor to start
- if ((textLength > 0) && IsKeyPressed(KEY_HOME)) textBoxCursorIndex = 0;
+ if ((textLength > 0) && GUI_KEY_PRESSED(KEY_HOME)) textBoxCursorIndex = 0;
// Move cursor to end
- if ((textLength > textBoxCursorIndex) && IsKeyPressed(KEY_END)) textBoxCursorIndex = textLength;
+ if ((textLength > textBoxCursorIndex) && GUI_KEY_PRESSED(KEY_END)) textBoxCursorIndex = textLength;
// Delete related codepoints from text, after current cursor position
- if ((textLength > textBoxCursorIndex) && IsKeyPressed(KEY_DELETE) && (IsKeyDown(KEY_LEFT_CONTROL) || IsKeyDown(KEY_RIGHT_CONTROL)))
+ if ((textLength > textBoxCursorIndex) && GUI_KEY_PRESSED(KEY_DELETE) && (GUI_KEY_DOWN(KEY_LEFT_CONTROL) || GUI_KEY_DOWN(KEY_RIGHT_CONTROL)))
{
int offset = textBoxCursorIndex;
int accCodepointSize = 0;
@@ -2674,7 +2716,7 @@ int GuiTextBox(Rectangle bounds, char *text, int textSize, bool editMode)
textLength -= accCodepointSize;
}
- else if ((textLength > textBoxCursorIndex) && (IsKeyPressed(KEY_DELETE) || (IsKeyDown(KEY_DELETE) && autoCursorShouldTrigger)))
+ else if ((textLength > textBoxCursorIndex) && (GUI_KEY_PRESSED(KEY_DELETE) || (GUI_KEY_DOWN(KEY_DELETE) && autoCursorShouldTrigger)))
{
// Delete single codepoint from text, after current cursor position
@@ -2688,12 +2730,12 @@ int GuiTextBox(Rectangle bounds, char *text, int textSize, bool editMode)
}
// Delete related codepoints from text, before current cursor position
- if ((textBoxCursorIndex > 0) && IsKeyPressed(KEY_BACKSPACE) && (IsKeyDown(KEY_LEFT_CONTROL) || IsKeyDown(KEY_RIGHT_CONTROL)))
+ if ((textBoxCursorIndex > 0) && GUI_KEY_PRESSED(KEY_BACKSPACE) && (GUI_KEY_DOWN(KEY_LEFT_CONTROL) || GUI_KEY_DOWN(KEY_RIGHT_CONTROL)))
{
int offset = textBoxCursorIndex;
int accCodepointSize = 0;
- int prevCodepointSize;
- int prevCodepoint;
+ int prevCodepointSize = 0;
+ int prevCodepoint = 0;
// Check whitespace to delete (ASCII only)
while (offset > 0)
@@ -2724,7 +2766,7 @@ int GuiTextBox(Rectangle bounds, char *text, int textSize, bool editMode)
textBoxCursorIndex -= accCodepointSize;
}
- else if ((textBoxCursorIndex > 0) && (IsKeyPressed(KEY_BACKSPACE) || (IsKeyDown(KEY_BACKSPACE) && autoCursorShouldTrigger)))
+ else if ((textBoxCursorIndex > 0) && (GUI_KEY_PRESSED(KEY_BACKSPACE) || (GUI_KEY_DOWN(KEY_BACKSPACE) && autoCursorShouldTrigger)))
{
// Delete single codepoint from text, before current cursor position
@@ -2740,12 +2782,12 @@ int GuiTextBox(Rectangle bounds, char *text, int textSize, bool editMode)
}
// Move cursor position with keys
- if ((textBoxCursorIndex > 0) && IsKeyPressed(KEY_LEFT) && (IsKeyDown(KEY_LEFT_CONTROL) || IsKeyDown(KEY_RIGHT_CONTROL)))
+ if ((textBoxCursorIndex > 0) && GUI_KEY_PRESSED(KEY_LEFT) && (GUI_KEY_DOWN(KEY_LEFT_CONTROL) || GUI_KEY_DOWN(KEY_RIGHT_CONTROL)))
{
int offset = textBoxCursorIndex;
//int accCodepointSize = 0;
- int prevCodepointSize;
- int prevCodepoint;
+ int prevCodepointSize = 0;
+ int prevCodepoint = 0;
// Check whitespace to skip (ASCII only)
while (offset > 0)
@@ -2771,14 +2813,14 @@ int GuiTextBox(Rectangle bounds, char *text, int textSize, bool editMode)
textBoxCursorIndex = offset;
}
- else if ((textBoxCursorIndex > 0) && (IsKeyPressed(KEY_LEFT) || (IsKeyDown(KEY_LEFT) && autoCursorShouldTrigger)))
+ else if ((textBoxCursorIndex > 0) && (GUI_KEY_PRESSED(KEY_LEFT) || (GUI_KEY_DOWN(KEY_LEFT) && autoCursorShouldTrigger)))
{
int prevCodepointSize = 0;
GetCodepointPrevious(text + textBoxCursorIndex, &prevCodepointSize);
textBoxCursorIndex -= prevCodepointSize;
}
- else if ((textLength > textBoxCursorIndex) && IsKeyPressed(KEY_RIGHT) && (IsKeyDown(KEY_LEFT_CONTROL) || IsKeyDown(KEY_RIGHT_CONTROL)))
+ else if ((textLength > textBoxCursorIndex) && GUI_KEY_PRESSED(KEY_RIGHT) && (GUI_KEY_DOWN(KEY_LEFT_CONTROL) || GUI_KEY_DOWN(KEY_RIGHT_CONTROL)))
{
int offset = textBoxCursorIndex;
//int accCodepointSize = 0;
@@ -2810,7 +2852,7 @@ int GuiTextBox(Rectangle bounds, char *text, int textSize, bool editMode)
textBoxCursorIndex = offset;
}
- else if ((textLength > textBoxCursorIndex) && (IsKeyPressed(KEY_RIGHT) || (IsKeyDown(KEY_RIGHT) && autoCursorShouldTrigger)))
+ else if ((textLength > textBoxCursorIndex) && (GUI_KEY_PRESSED(KEY_RIGHT) || (GUI_KEY_DOWN(KEY_RIGHT) && autoCursorShouldTrigger)))
{
int nextCodepointSize = 0;
GetCodepointNext(text + textBoxCursorIndex, &nextCodepointSize);
@@ -2847,14 +2889,14 @@ int GuiTextBox(Rectangle bounds, char *text, int textSize, bool editMode)
// Check if mouse cursor is at the last position
int textEndWidth = GuiGetTextWidth(text + textIndexOffset);
- if (GetMousePosition().x >= (textBounds.x + textEndWidth - glyphWidth/2))
+ if (GUI_POINTER_POSITION.x >= (textBounds.x + textEndWidth - glyphWidth/2))
{
mouseCursor.x = textBounds.x + textEndWidth;
mouseCursorIndex = textLength;
}
// Place cursor at required index on mouse click
- if ((mouseCursor.x >= 0) && IsMouseButtonPressed(MOUSE_LEFT_BUTTON))
+ if ((mouseCursor.x >= 0) && GUI_BUTTON_PRESSED)
{
cursor.x = mouseCursor.x;
textBoxCursorIndex = mouseCursorIndex;
@@ -2867,8 +2909,8 @@ int GuiTextBox(Rectangle bounds, char *text, int textSize, bool editMode)
//if (multiline) cursor.y = GetTextLines()
// Finish text editing on ENTER or mouse click outside bounds
- if ((!multiline && IsKeyPressed(KEY_ENTER)) ||
- (!CheckCollisionPointRec(mousePosition, bounds) && IsMouseButtonPressed(MOUSE_LEFT_BUTTON)))
+ if ((!multiline && GUI_KEY_PRESSED(KEY_ENTER)) ||
+ (!CheckCollisionPointRec(mousePosition, bounds) && GUI_BUTTON_PRESSED))
{
textBoxCursorIndex = 0; // GLOBAL: Reset the shared cursor index
autoCursorCounter = 0; // GLOBAL: Reset counter for repeated keystrokes
@@ -2881,7 +2923,7 @@ int GuiTextBox(Rectangle bounds, char *text, int textSize, bool editMode)
{
state = STATE_FOCUSED;
- if (IsMouseButtonPressed(MOUSE_LEFT_BUTTON))
+ if (GUI_BUTTON_PRESSED)
{
textBoxCursorIndex = textLength; // GLOBAL: Place cursor index to the end of current text
autoCursorCounter = 0; // GLOBAL: Reset counter for repeated keystrokes
@@ -2975,12 +3017,12 @@ int GuiSpinner(Rectangle bounds, const char *text, int *value, int minValue, int
//--------------------------------------------------------------------
if ((state != STATE_DISABLED) && !guiLocked && !guiControlExclusiveMode)
{
- Vector2 mousePoint = GetMousePosition();
+ Vector2 mousePoint = GUI_POINTER_POSITION;
// Check spinner state
if (CheckCollisionPointRec(mousePoint, bounds))
{
- if (IsMouseButtonDown(MOUSE_LEFT_BUTTON)) state = STATE_PRESSED;
+ if (GUI_BUTTON_DOWN) state = STATE_PRESSED;
else state = STATE_FOCUSED;
}
}
@@ -3050,7 +3092,7 @@ int GuiValueBox(Rectangle bounds, const char *text, int *value, int minValue, in
//--------------------------------------------------------------------
if ((state != STATE_DISABLED) && !guiLocked && !guiControlExclusiveMode)
{
- Vector2 mousePoint = GetMousePosition();
+ Vector2 mousePoint = GUI_POINTER_POSITION;
bool valueHasChanged = false;
if (editMode)
@@ -3060,7 +3102,7 @@ int GuiValueBox(Rectangle bounds, const char *text, int *value, int minValue, in
int keyCount = (int)strlen(textValue);
// Add or remove minus symbol
- if (IsKeyPressed(KEY_MINUS))
+ if (GUI_KEY_PRESSED(KEY_MINUS))
{
if (textValue[0] == '-')
{
@@ -3089,8 +3131,8 @@ int GuiValueBox(Rectangle bounds, const char *text, int *value, int minValue, in
// Add new digit to text value
if ((keyCount >= 0) && (keyCount < RAYGUI_VALUEBOX_MAX_CHARS) && (GuiGetTextWidth(textValue) < bounds.width))
{
- int key = GetCharPressed();
-
+ int key = GUI_INPUT_KEY;
+
// Only allow keys in range [48..57]
if ((key >= 48) && (key <= 57))
{
@@ -3101,7 +3143,7 @@ int GuiValueBox(Rectangle bounds, const char *text, int *value, int minValue, in
}
// Delete text
- if ((keyCount > 0) && IsKeyPressed(KEY_BACKSPACE))
+ if ((keyCount > 0) && GUI_KEY_PRESSED(KEY_BACKSPACE))
{
keyCount--;
textValue[keyCount] = '\0';
@@ -3110,11 +3152,11 @@ int GuiValueBox(Rectangle bounds, const char *text, int *value, int minValue, in
if (valueHasChanged) *value = TextToInteger(textValue);
- // NOTE: We are not clamp values until user input finishes
+ // NOTE: Values are not clamped until user input finishes
//if (*value > maxValue) *value = maxValue;
//else if (*value < minValue) *value = minValue;
- if ((IsKeyPressed(KEY_ENTER) || IsKeyPressed(KEY_KP_ENTER)) || (!CheckCollisionPointRec(mousePoint, bounds) && IsMouseButtonPressed(MOUSE_LEFT_BUTTON)))
+ if ((GUI_KEY_PRESSED(KEY_ENTER) || GUI_KEY_PRESSED(KEY_KP_ENTER)) || (!CheckCollisionPointRec(mousePoint, bounds) && GUI_BUTTON_PRESSED))
{
if (*value > maxValue) *value = maxValue;
else if (*value < minValue) *value = minValue;
@@ -3130,7 +3172,7 @@ int GuiValueBox(Rectangle bounds, const char *text, int *value, int minValue, in
if (CheckCollisionPointRec(mousePoint, bounds))
{
state = STATE_FOCUSED;
- if (IsMouseButtonPressed(MOUSE_LEFT_BUTTON)) result = 1;
+ if (GUI_BUTTON_PRESSED) result = 1;
}
}
}
@@ -3191,7 +3233,7 @@ int GuiValueBoxFloat(Rectangle bounds, const char *text, char *textValue, float
//--------------------------------------------------------------------
if ((state != STATE_DISABLED) && !guiLocked && !guiControlExclusiveMode)
{
- Vector2 mousePoint = GetMousePosition();
+ Vector2 mousePoint = GUI_POINTER_POSITION;
bool valueHasChanged = false;
@@ -3202,7 +3244,7 @@ int GuiValueBoxFloat(Rectangle bounds, const char *text, char *textValue, float
int keyCount = (int)strlen(textValue);
// Add or remove minus symbol
- if (IsKeyPressed(KEY_MINUS))
+ if (GUI_KEY_PRESSED(KEY_MINUS))
{
if (textValue[0] == '-')
{
@@ -3233,7 +3275,7 @@ int GuiValueBoxFloat(Rectangle bounds, const char *text, char *textValue, float
{
if (GuiGetTextWidth(textValue) < bounds.width)
{
- int key = GetCharPressed();
+ int key = GUI_INPUT_KEY;
if (((key >= 48) && (key <= 57)) ||
(key == '.') ||
((keyCount == 0) && (key == '+')) || // NOTE: Sign can only be in first position
@@ -3248,7 +3290,7 @@ int GuiValueBoxFloat(Rectangle bounds, const char *text, char *textValue, float
}
// Pressed backspace
- if (IsKeyPressed(KEY_BACKSPACE))
+ if (GUI_KEY_PRESSED(KEY_BACKSPACE))
{
if (keyCount > 0)
{
@@ -3260,14 +3302,14 @@ int GuiValueBoxFloat(Rectangle bounds, const char *text, char *textValue, float
if (valueHasChanged) *value = TextToFloat(textValue);
- if ((IsKeyPressed(KEY_ENTER) || IsKeyPressed(KEY_KP_ENTER)) || (!CheckCollisionPointRec(mousePoint, bounds) && IsMouseButtonPressed(MOUSE_LEFT_BUTTON))) result = 1;
+ if ((GUI_KEY_PRESSED(KEY_ENTER) || GUI_KEY_PRESSED(KEY_KP_ENTER)) || (!CheckCollisionPointRec(mousePoint, bounds) && GUI_BUTTON_PRESSED)) result = 1;
}
else
{
if (CheckCollisionPointRec(mousePoint, bounds))
{
state = STATE_FOCUSED;
- if (IsMouseButtonPressed(MOUSE_LEFT_BUTTON)) result = 1;
+ if (GUI_BUTTON_PRESSED) result = 1;
}
}
}
@@ -3321,11 +3363,11 @@ int GuiSlider(Rectangle bounds, const char *textLeft, const char *textRight, flo
//--------------------------------------------------------------------
if ((state != STATE_DISABLED) && !guiLocked)
{
- Vector2 mousePoint = GetMousePosition();
+ Vector2 mousePoint = GUI_POINTER_POSITION;
if (guiControlExclusiveMode) // Allows to keep dragging outside of bounds
{
- if (IsMouseButtonDown(MOUSE_LEFT_BUTTON))
+ if (GUI_BUTTON_DOWN)
{
if (CHECK_BOUNDS_ID(bounds, guiControlExclusiveRec))
{
@@ -3342,7 +3384,7 @@ int GuiSlider(Rectangle bounds, const char *textLeft, const char *textRight, flo
}
else if (CheckCollisionPointRec(mousePoint, bounds))
{
- if (IsMouseButtonDown(MOUSE_LEFT_BUTTON))
+ if (GUI_BUTTON_DOWN)
{
state = STATE_PRESSED;
guiControlExclusiveMode = true;
@@ -3535,12 +3577,12 @@ int GuiDummyRec(Rectangle bounds, const char *text)
//--------------------------------------------------------------------
if ((state != STATE_DISABLED) && !guiLocked && !guiControlExclusiveMode)
{
- Vector2 mousePoint = GetMousePosition();
+ Vector2 mousePoint = GUI_POINTER_POSITION;
// Check button state
if (CheckCollisionPointRec(mousePoint, bounds))
{
- if (IsMouseButtonDown(MOUSE_LEFT_BUTTON)) state = STATE_PRESSED;
+ if (GUI_BUTTON_DOWN) state = STATE_PRESSED;
else state = STATE_FOCUSED;
}
}
@@ -3578,7 +3620,7 @@ int GuiListViewEx(Rectangle bounds, const char **text, int count, int *scrollInd
int itemFocused = (focus == NULL)? -1 : *focus;
int itemSelected = (active == NULL)? -1 : *active;
- // Check if we need a scroll bar
+ // Check if scroll bar is needed
bool useScrollBar = false;
if ((GuiGetStyle(LISTVIEW, LIST_ITEMS_HEIGHT) + GuiGetStyle(LISTVIEW, LIST_ITEMS_SPACING))*count > bounds.height) useScrollBar = true;
@@ -3602,7 +3644,7 @@ int GuiListViewEx(Rectangle bounds, const char **text, int count, int *scrollInd
//--------------------------------------------------------------------
if ((state != STATE_DISABLED) && !guiLocked && !guiControlExclusiveMode)
{
- Vector2 mousePoint = GetMousePosition();
+ Vector2 mousePoint = GUI_POINTER_POSITION;
// Check mouse inside list view
if (CheckCollisionPointRec(mousePoint, bounds))
@@ -3615,7 +3657,7 @@ int GuiListViewEx(Rectangle bounds, const char **text, int count, int *scrollInd
if (CheckCollisionPointRec(mousePoint, itemBounds))
{
itemFocused = startIndex + i;
- if (IsMouseButtonPressed(MOUSE_LEFT_BUTTON))
+ if (GUI_BUTTON_PRESSED)
{
if (itemSelected == (startIndex + i)) itemSelected = -1;
else itemSelected = startIndex + i;
@@ -3629,8 +3671,8 @@ int GuiListViewEx(Rectangle bounds, const char **text, int count, int *scrollInd
if (useScrollBar)
{
- int wheelMove = (int)GetMouseWheelMove();
- startIndex -= wheelMove;
+ float scrollDelta = GUI_SCROLL_DELTA;
+ startIndex -= (int)scrollDelta;
if (startIndex < 0) startIndex = 0;
else if (startIndex > (count - visibleItems)) startIndex = count - visibleItems;
@@ -3659,7 +3701,7 @@ int GuiListViewEx(Rectangle bounds, const char **text, int count, int *scrollInd
{
if ((startIndex + i) == itemSelected) GuiDrawRectangle(itemBounds, GuiGetStyle(LISTVIEW, LIST_ITEMS_BORDER_WIDTH), GetColor(GuiGetStyle(LISTVIEW, BORDER_COLOR_DISABLED)), GetColor(GuiGetStyle(LISTVIEW, BASE_COLOR_DISABLED)));
- GuiDrawText(text[startIndex + i], GetTextBounds(DEFAULT, itemBounds), GuiGetStyle(LISTVIEW, TEXT_ALIGNMENT), GetColor(GuiGetStyle(LISTVIEW, TEXT_COLOR_DISABLED)));
+ GuiDrawText(text[startIndex + i], GetTextBounds(LISTVIEW, itemBounds), GuiGetStyle(LISTVIEW, TEXT_ALIGNMENT), GetColor(GuiGetStyle(LISTVIEW, TEXT_COLOR_DISABLED)));
}
else
{
@@ -3667,18 +3709,18 @@ int GuiListViewEx(Rectangle bounds, const char **text, int count, int *scrollInd
{
// Draw item selected
GuiDrawRectangle(itemBounds, GuiGetStyle(LISTVIEW, LIST_ITEMS_BORDER_WIDTH), GetColor(GuiGetStyle(LISTVIEW, BORDER_COLOR_PRESSED)), GetColor(GuiGetStyle(LISTVIEW, BASE_COLOR_PRESSED)));
- GuiDrawText(text[startIndex + i], GetTextBounds(DEFAULT, itemBounds), GuiGetStyle(LISTVIEW, TEXT_ALIGNMENT), GetColor(GuiGetStyle(LISTVIEW, TEXT_COLOR_PRESSED)));
+ GuiDrawText(text[startIndex + i], GetTextBounds(LISTVIEW, itemBounds), GuiGetStyle(LISTVIEW, TEXT_ALIGNMENT), GetColor(GuiGetStyle(LISTVIEW, TEXT_COLOR_PRESSED)));
}
- else if (((startIndex + i) == itemFocused)) // && (focus != NULL)) // NOTE: We want items focused, despite not returned!
+ else if (((startIndex + i) == itemFocused)) // && (focus != NULL)) // NOTE: Items focused, despite not returned
{
// Draw item focused
GuiDrawRectangle(itemBounds, GuiGetStyle(LISTVIEW, LIST_ITEMS_BORDER_WIDTH), GetColor(GuiGetStyle(LISTVIEW, BORDER_COLOR_FOCUSED)), GetColor(GuiGetStyle(LISTVIEW, BASE_COLOR_FOCUSED)));
- GuiDrawText(text[startIndex + i], GetTextBounds(DEFAULT, itemBounds), GuiGetStyle(LISTVIEW, TEXT_ALIGNMENT), GetColor(GuiGetStyle(LISTVIEW, TEXT_COLOR_FOCUSED)));
+ GuiDrawText(text[startIndex + i], GetTextBounds(LISTVIEW, itemBounds), GuiGetStyle(LISTVIEW, TEXT_ALIGNMENT), GetColor(GuiGetStyle(LISTVIEW, TEXT_COLOR_FOCUSED)));
}
else
{
// Draw item normal (no rectangle)
- GuiDrawText(text[startIndex + i], GetTextBounds(DEFAULT, itemBounds), GuiGetStyle(LISTVIEW, TEXT_ALIGNMENT), GetColor(GuiGetStyle(LISTVIEW, TEXT_COLOR_NORMAL)));
+ GuiDrawText(text[startIndex + i], GetTextBounds(LISTVIEW, itemBounds), GuiGetStyle(LISTVIEW, TEXT_ALIGNMENT), GetColor(GuiGetStyle(LISTVIEW, TEXT_COLOR_NORMAL)));
}
}
@@ -3765,11 +3807,11 @@ int GuiColorBarAlpha(Rectangle bounds, const char *text, float *alpha)
//--------------------------------------------------------------------
if ((state != STATE_DISABLED) && !guiLocked)
{
- Vector2 mousePoint = GetMousePosition();
+ Vector2 mousePoint = GUI_POINTER_POSITION;
if (guiControlExclusiveMode) // Allows to keep dragging outside of bounds
{
- if (IsMouseButtonDown(MOUSE_LEFT_BUTTON))
+ if (GUI_BUTTON_DOWN)
{
if (CHECK_BOUNDS_ID(bounds, guiControlExclusiveRec))
{
@@ -3788,7 +3830,7 @@ int GuiColorBarAlpha(Rectangle bounds, const char *text, float *alpha)
}
else if (CheckCollisionPointRec(mousePoint, bounds) || CheckCollisionPointRec(mousePoint, selector))
{
- if (IsMouseButtonDown(MOUSE_LEFT_BUTTON))
+ if (GUI_BUTTON_DOWN)
{
state = STATE_PRESSED;
guiControlExclusiveMode = true;
@@ -3850,11 +3892,11 @@ int GuiColorBarHue(Rectangle bounds, const char *text, float *hue)
//--------------------------------------------------------------------
if ((state != STATE_DISABLED) && !guiLocked)
{
- Vector2 mousePoint = GetMousePosition();
+ Vector2 mousePoint = GUI_POINTER_POSITION;
if (guiControlExclusiveMode) // Allows to keep dragging outside of bounds
{
- if (IsMouseButtonDown(MOUSE_LEFT_BUTTON))
+ if (GUI_BUTTON_DOWN)
{
if (CHECK_BOUNDS_ID(bounds, guiControlExclusiveRec))
{
@@ -3873,7 +3915,7 @@ int GuiColorBarHue(Rectangle bounds, const char *text, float *hue)
}
else if (CheckCollisionPointRec(mousePoint, bounds) || CheckCollisionPointRec(mousePoint, selector))
{
- if (IsMouseButtonDown(MOUSE_LEFT_BUTTON))
+ if (GUI_BUTTON_DOWN)
{
state = STATE_PRESSED;
guiControlExclusiveMode = true;
@@ -3886,12 +3928,12 @@ int GuiColorBarHue(Rectangle bounds, const char *text, float *hue)
}
else state = STATE_FOCUSED;
- /*if (IsKeyDown(KEY_UP))
+ /*if (GUI_KEY_DOWN(KEY_UP))
{
hue -= 2.0f;
if (hue <= 0.0f) hue = 0.0f;
}
- else if (IsKeyDown(KEY_DOWN))
+ else if (GUI_KEY_DOWN(KEY_DOWN))
{
hue += 2.0f;
if (hue >= 360.0f) hue = 360.0f;
@@ -4008,11 +4050,11 @@ int GuiColorPanelHSV(Rectangle bounds, const char *text, Vector3 *colorHsv)
//--------------------------------------------------------------------
if ((state != STATE_DISABLED) && !guiLocked)
{
- Vector2 mousePoint = GetMousePosition();
+ Vector2 mousePoint = GUI_POINTER_POSITION;
if (guiControlExclusiveMode) // Allows to keep dragging outside of bounds
{
- if (IsMouseButtonDown(MOUSE_LEFT_BUTTON))
+ if (GUI_BUTTON_DOWN)
{
if (CHECK_BOUNDS_ID(bounds, guiControlExclusiveRec))
{
@@ -4042,7 +4084,7 @@ int GuiColorPanelHSV(Rectangle bounds, const char *text, Vector3 *colorHsv)
}
else if (CheckCollisionPointRec(mousePoint, bounds))
{
- if (IsMouseButtonDown(MOUSE_LEFT_BUTTON))
+ if (GUI_BUTTON_DOWN)
{
state = STATE_PRESSED;
guiControlExclusiveMode = true;
@@ -4198,6 +4240,9 @@ int GuiTextInputBox(Rectangle bounds, const char *title, const char *message, co
GuiSetStyle(LABEL, TEXT_ALIGNMENT, prevTextAlignment);
}
+ int prevTextBoxAlignment = GuiGetStyle(TEXTBOX, TEXT_ALIGNMENT);
+ GuiSetStyle(TEXTBOX, TEXT_ALIGNMENT, TEXT_ALIGN_LEFT);
+
if (secretViewActive != NULL)
{
static char stars[] = "****************";
@@ -4211,6 +4256,8 @@ int GuiTextInputBox(Rectangle bounds, const char *title, const char *message, co
if (GuiTextBox(textBoxBounds, text, textMaxSize, textEditMode)) textEditMode = !textEditMode;
}
+ GuiSetStyle(TEXTBOX, TEXT_ALIGNMENT, prevTextBoxAlignment);
+
int prevBtnTextAlignment = GuiGetStyle(BUTTON, TEXT_ALIGNMENT);
GuiSetStyle(BUTTON, TEXT_ALIGNMENT, TEXT_ALIGN_CENTER);
@@ -4231,7 +4278,7 @@ int GuiTextInputBox(Rectangle bounds, const char *title, const char *message, co
// Grid control
// NOTE: Returns grid mouse-hover selected cell
// About drawing lines at subpixel spacing, simple put, not easy solution:
-// https://stackoverflow.com/questions/4435450/2d-opengl-drawing-lines-that-dont-exactly-fit-pixel-raster
+// REF: https://stackoverflow.com/questions/4435450/2d-opengl-drawing-lines-that-dont-exactly-fit-pixel-raster
int GuiGrid(Rectangle bounds, const char *text, float spacing, int subdivs, Vector2 *mouseCell)
{
// Grid lines alpha amount
@@ -4242,7 +4289,7 @@ int GuiGrid(Rectangle bounds, const char *text, float spacing, int subdivs, Vect
int result = 0;
GuiState state = guiState;
- Vector2 mousePoint = GetMousePosition();
+ Vector2 mousePoint = GUI_POINTER_POSITION;
Vector2 currentMouseCell = { -1, -1 };
float spaceWidth = spacing/(float)subdivs;
@@ -4410,11 +4457,14 @@ void GuiLoadStyle(const char *fileName)
if (fileDataSize > 0)
{
unsigned char *fileData = (unsigned char *)RAYGUI_CALLOC(fileDataSize, sizeof(unsigned char));
- fread(fileData, sizeof(unsigned char), fileDataSize, rgsFile);
+ if (fileData != NULL)
+ {
+ fread(fileData, sizeof(unsigned char), fileDataSize, rgsFile);
- GuiLoadStyleFromMemory(fileData, fileDataSize);
+ GuiLoadStyleFromMemory(fileData, fileDataSize);
- RAYGUI_FREE(fileData);
+ RAYGUI_FREE(fileData);
+ }
}
fclose(rgsFile);
@@ -4425,7 +4475,7 @@ void GuiLoadStyle(const char *fileName)
// Load style default over global style
void GuiLoadStyleDefault(void)
{
- // We set this variable first to avoid cyclic function calls
+ // Setting this flag first to avoid cyclic function calls
// when calling GuiSetStyle() and GuiGetStyle()
guiStyleLoaded = true;
@@ -4454,7 +4504,7 @@ void GuiLoadStyleDefault(void)
GuiSetStyle(DEFAULT, TEXT_SPACING, 1); // DEFAULT, shared by all controls
GuiSetStyle(DEFAULT, LINE_COLOR, 0x90abb5ff); // DEFAULT specific property
GuiSetStyle(DEFAULT, BACKGROUND_COLOR, 0xf5f5f5ff); // DEFAULT specific property
- GuiSetStyle(DEFAULT, TEXT_LINE_SPACING, 15); // DEFAULT, 15 pixels between lines
+ GuiSetStyle(DEFAULT, TEXT_LINE_SPACING, 5); // DEFAULT, pixels between lines, from bottom of first line to top of second
GuiSetStyle(DEFAULT, TEXT_ALIGNMENT_VERTICAL, TEXT_ALIGN_MIDDLE); // DEFAULT, text aligned vertically to middle of text-bounds
// Initialize control-specific property values
@@ -4520,7 +4570,7 @@ void GuiLoadStyleDefault(void)
// NOTE: Default raylib font character 95 is a white square
Rectangle whiteChar = guiFont.recs[95];
- // NOTE: We set up a 1px padding on char rectangle to avoid pixel bleeding on MSAA filtering
+ // NOTE: Setting up a 1px padding on char rectangle to avoid pixel bleeding on MSAA filtering
SetShapesTexture(guiFont.texture, RAYGUI_CLITERAL(Rectangle){ whiteChar.x + 1, whiteChar.y + 1, whiteChar.width - 2, whiteChar.height - 2 });
}
}
@@ -5037,14 +5087,14 @@ static Rectangle GetTextBounds(int control, Rectangle bounds)
}
// Get text icon if provided and move text cursor
-// NOTE: We support up to 999 values for iconId
+// NOTE: Up to #999# values supported for iconId
static const char *GetTextIcon(const char *text, int *iconId)
{
#if !defined(RAYGUI_NO_ICONS)
*iconId = -1;
- if (text[0] == '#') // Maybe we have an icon!
+ if (text[0] == '#') // Maybe it is stars with an icon, ending # must be found
{
- char iconValue[4] = { 0 }; // Maximum length for icon value: 3 digits + '\0'
+ char iconValue[4] = { 0 }; // Maximum length for icon value: 3 digits + '\0'
int pos = 1;
while ((pos < 4) && (text[pos] >= '0') && (text[pos] <= '9'))
@@ -5076,12 +5126,12 @@ static const char **GetTextLines(const char *text, int *count)
static const char *lines[RAYGUI_MAX_TEXT_LINES] = { 0 };
for (int i = 0; i < RAYGUI_MAX_TEXT_LINES; i++) lines[i] = NULL; // Init NULL pointers to substrings
- int textSize = (int)strlen(text);
+ int textLength = (int)strlen(text);
lines[0] = text;
*count = 1;
- for (int i = 0, k = 0; (i < textSize) && (*count < RAYGUI_MAX_TEXT_LINES); i++)
+ for (int i = 0, k = 0; (i < textLength) && (*count < RAYGUI_MAX_TEXT_LINES); i++)
{
if (text[i] == '\n')
{
@@ -5141,7 +5191,7 @@ static void GuiDrawText(const char *text, Rectangle textBounds, int alignment, C
// - For every line, wordwrap mode is checked (useful for GuitextBox(), read-only)
// Get text lines (using '\n' as delimiter) to be processed individually
- // WARNING: We can't use GuiTextSplit() function because it can be already used
+ // WARNING: GuiTextSplit() function can't be used now because it can have already been used
// before the GuiDrawText() call and its buffer is static, it would be overriden :(
int lineCount = 0;
const char **lines = GetTextLines(text, &lineCount);
@@ -5152,7 +5202,7 @@ static void GuiDrawText(const char *text, Rectangle textBounds, int alignment, C
int wrapMode = GuiGetStyle(DEFAULT, TEXT_WRAP_MODE); // Wrap-mode only available in read-only mode, no for text editing
// TODO: WARNING: This totalHeight is not valid for vertical alignment in case of word-wrap
- float totalHeight = (float)(lineCount*GuiGetStyle(DEFAULT, TEXT_SIZE) + (lineCount - 1)*GuiGetStyle(DEFAULT, TEXT_SIZE)/2);
+ float totalHeight = (float)(lineCount*GuiGetStyle(DEFAULT, TEXT_SIZE) + (lineCount - 1)*GuiGetStyle(DEFAULT, TEXT_LINE_SPACING));
float posOffsetY = 0.0f;
for (int i = 0; i < lineCount; i++)
@@ -5165,7 +5215,7 @@ static void GuiDrawText(const char *text, Rectangle textBounds, int alignment, C
Vector2 textBoundsPosition = { textBounds.x, textBounds.y };
float textBoundsWidthOffset = 0.0f;
- // NOTE: We get text size after icon has been processed
+ // NOTE: Get text size after icon has been processed
// WARNING: GuiGetTextWidth() also processes text icon to get width! -> Really needed?
int textSizeX = GuiGetTextWidth(lines[i]);
@@ -5200,8 +5250,8 @@ static void GuiDrawText(const char *text, Rectangle textBounds, int alignment, C
default: break;
}
- // NOTE: Make sure we get pixel-perfect coordinates,
- // In case of decimals we got weird text positioning
+ // NOTE: Make sure getting pixel-perfect coordinates,
+ // In case of decimals, it could result in text positioning artifacts
textBoundsPosition.x = (float)((int)textBoundsPosition.x);
textBoundsPosition.y = (float)((int)textBoundsPosition.y);
//---------------------------------------------------------------------------------
@@ -5211,7 +5261,7 @@ static void GuiDrawText(const char *text, Rectangle textBounds, int alignment, C
#if !defined(RAYGUI_NO_ICONS)
if (iconId >= 0)
{
- // NOTE: We consider icon height, probably different than text size
+ // NOTE: Considering icon height, probably different than text size
GuiDrawIcon(iconId, (int)textBoundsPosition.x, (int)(textBounds.y + textBounds.height/2 - RAYGUI_ICON_SIZE*guiIconScale/2 + TEXT_VALIGN_PIXEL_OFFSET(textBounds.height)), guiIconScale, tint);
textBoundsPosition.x += (float)(RAYGUI_ICON_SIZE*guiIconScale + ICON_TEXT_PADDING);
textBoundsWidthOffset = (float)(RAYGUI_ICON_SIZE*guiIconScale + ICON_TEXT_PADDING);
@@ -5237,8 +5287,8 @@ static void GuiDrawText(const char *text, Rectangle textBounds, int alignment, C
int codepoint = GetCodepointNext(&lines[i][c], &codepointSize);
int index = GetGlyphIndex(guiFont, codepoint);
- // NOTE: Normally we exit the decoding sequence as soon as a bad byte is found (and return 0x3f)
- // but we need to draw all of the bad bytes using the '?' symbol moving one byte
+ // NOTE: Normally, exiting the decoding sequence as soon as a bad byte is found (and return 0x3f)
+ // but all of the bad bytes need to be drawn using the '?' symbol, moving one byte
if (codepoint == 0x3f) codepointSize = 1; // TODO: Review not recognized codepoints size
// Get glyph width to check if it goes out of bounds
@@ -5253,7 +5303,7 @@ static void GuiDrawText(const char *text, Rectangle textBounds, int alignment, C
if ((textOffsetX + glyphWidth) > textBounds.width - textBoundsWidthOffset)
{
textOffsetX = 0.0f;
- textOffsetY += GuiGetStyle(DEFAULT, TEXT_LINE_SPACING);
+ textOffsetY += (GuiGetStyle(DEFAULT, TEXT_SIZE) + GuiGetStyle(DEFAULT, TEXT_LINE_SPACING));
if (tempWrapCharMode) // Wrap at char level when too long words
{
@@ -5282,7 +5332,7 @@ static void GuiDrawText(const char *text, Rectangle textBounds, int alignment, C
else if ((textOffsetX + nextSpaceWidth) > textBounds.width - textBoundsWidthOffset)
{
textOffsetX = 0.0f;
- textOffsetY += GuiGetStyle(DEFAULT, TEXT_LINE_SPACING);
+ textOffsetY += (GuiGetStyle(DEFAULT, TEXT_SIZE) + GuiGetStyle(DEFAULT, TEXT_LINE_SPACING));
}
}
@@ -5332,7 +5382,7 @@ static void GuiDrawText(const char *text, Rectangle textBounds, int alignment, C
}
}
- if (wrapMode == TEXT_WRAP_NONE) posOffsetY += (float)GuiGetStyle(DEFAULT, TEXT_LINE_SPACING);
+ if (wrapMode == TEXT_WRAP_NONE) posOffsetY += (float)(GuiGetStyle(DEFAULT, TEXT_SIZE) + GuiGetStyle(DEFAULT, TEXT_LINE_SPACING));
else if ((wrapMode == TEXT_WRAP_CHAR) || (wrapMode == TEXT_WRAP_WORD)) posOffsetY += (textOffsetY + (float)GuiGetStyle(DEFAULT, TEXT_LINE_SPACING));
//---------------------------------------------------------------------------------
}
@@ -5374,13 +5424,19 @@ static void GuiTooltip(Rectangle controlRec)
if ((controlRec.x + textSize.x + 16) > GetScreenWidth()) controlRec.x -= (textSize.x + 16 - controlRec.width);
- GuiPanel(RAYGUI_CLITERAL(Rectangle){ controlRec.x, controlRec.y + controlRec.height + 4, textSize.x + 16, GuiGetStyle(DEFAULT, TEXT_SIZE) + 8.0f }, NULL);
+ int lineCount = 0;
+ GetTextLines(guiTooltipPtr, &lineCount); // Only using the line count
+ if ((controlRec.y + controlRec.height + textSize.y + 4 + 8*lineCount) > GetScreenHeight())
+ controlRec.y -= (controlRec.height + textSize.y + 4 + 8*lineCount);
+
+ // TODO: Probably TEXT_LINE_SPACING should be considered on panel size instead of hardcoding 8.0f
+ GuiPanel(RAYGUI_CLITERAL(Rectangle){ controlRec.x, controlRec.y + controlRec.height + 4, textSize.x + 16, textSize.y + 8.0f*lineCount }, NULL);
int textPadding = GuiGetStyle(LABEL, TEXT_PADDING);
int textAlignment = GuiGetStyle(LABEL, TEXT_ALIGNMENT);
GuiSetStyle(LABEL, TEXT_PADDING, 0);
GuiSetStyle(LABEL, TEXT_ALIGNMENT, TEXT_ALIGN_CENTER);
- GuiLabel(RAYGUI_CLITERAL(Rectangle){ controlRec.x, controlRec.y + controlRec.height + 4, textSize.x + 16, GuiGetStyle(DEFAULT, TEXT_SIZE) + 8.0f }, guiTooltipPtr);
+ GuiLabel(RAYGUI_CLITERAL(Rectangle){ controlRec.x, controlRec.y + controlRec.height + 4, textSize.x + 16, textSize.y + 8.0f*lineCount }, guiTooltipPtr);
GuiSetStyle(LABEL, TEXT_ALIGNMENT, textAlignment);
GuiSetStyle(LABEL, TEXT_PADDING, textPadding);
}
@@ -5416,7 +5472,7 @@ static const char **GuiTextSplit(const char *text, char delimiter, int *count, i
if (textRow != NULL) textRow[0] = 0;
- // Count how many substrings we have on text and point to every one
+ // Count how many substrings text contains and point to every one of them
for (int i = 0; i < RAYGUI_TEXTSPLIT_MAX_TEXT_SIZE; i++)
{
buffer[i] = text[i];
@@ -5637,11 +5693,11 @@ static int GuiScrollBar(Rectangle bounds, int value, int minValue, int maxValue)
//--------------------------------------------------------------------
if ((state != STATE_DISABLED) && !guiLocked)
{
- Vector2 mousePoint = GetMousePosition();
+ Vector2 mousePoint = GUI_POINTER_POSITION;
if (guiControlExclusiveMode) // Allows to keep dragging outside of bounds
{
- if (IsMouseButtonDown(MOUSE_LEFT_BUTTON) &&
+ if (GUI_BUTTON_DOWN &&
!CheckCollisionPointRec(mousePoint, arrowUpLeft) &&
!CheckCollisionPointRec(mousePoint, arrowDownRight))
{
@@ -5664,11 +5720,11 @@ static int GuiScrollBar(Rectangle bounds, int value, int minValue, int maxValue)
state = STATE_FOCUSED;
// Handle mouse wheel
- int wheel = (int)GetMouseWheelMove();
- if (wheel != 0) value += wheel;
+ float scrollDelta = GUI_SCROLL_DELTA;
+ if (scrollDelta != 0) value += (int)scrollDelta;
// Handle mouse button down
- if (IsMouseButtonPressed(MOUSE_LEFT_BUTTON))
+ if (GUI_BUTTON_PRESSED)
{
guiControlExclusiveMode = true;
guiControlExclusiveRec = bounds; // Store bounds as an identifier when dragging starts
@@ -5690,13 +5746,13 @@ static int GuiScrollBar(Rectangle bounds, int value, int minValue, int maxValue)
/*
if (isVertical)
{
- if (IsKeyDown(KEY_DOWN)) value += 5;
- else if (IsKeyDown(KEY_UP)) value -= 5;
+ if (GUI_KEY_DOWN(KEY_DOWN)) value += 5;
+ else if (GUI_KEY_DOWN(KEY_UP)) value -= 5;
}
else
{
- if (IsKeyDown(KEY_RIGHT)) value += 5;
- else if (IsKeyDown(KEY_LEFT)) value -= 5;
+ if (GUI_KEY_DOWN(KEY_RIGHT)) value += 5;
+ else if (GUI_KEY_DOWN(KEY_LEFT)) value -= 5;
}
*/
}
@@ -5833,7 +5889,7 @@ const char **TextSplit(const char *text, char delimiter, int *count)
{
counter = 1;
- // Count how many substrings we have on text and point to every one
+ // Count how many substrings text contains and point to every one of them
for (int i = 0; i < RAYGUI_TEXTSPLIT_MAX_TEXT_SIZE; i++)
{
buffer[i] = text[i];
@@ -5866,7 +5922,7 @@ static int TextToInteger(const char *text)
text++;
}
- for (int i = 0; ((text[i] >= '0') && (text[i] <= '9')); ++i) value = value*10 + (int)(text[i] - '0');
+ for (int i = 0; ((text[i] >= '0') && (text[i] <= '9')); i++) value = value*10 + (int)(text[i] - '0');
return value*sign;
}
@@ -5941,9 +5997,9 @@ static const char *CodepointToUTF8(int codepoint, int *byteSize)
}
// Get next codepoint in a UTF-8 encoded text, scanning until '\0' is found
-// When a invalid UTF-8 byte is encountered we exit as soon as possible and a '?'(0x3f) codepoint is returned
+// When a invalid UTF-8 byte is encountered, exiting as soon as possible and returning a '?'(0x3f) codepoint
// Total number of bytes processed are returned as a parameter
-// NOTE: the standard says U+FFFD should be returned in case of errors
+// NOTE: The standard says U+FFFD should be returned in case of errors
// but that character is not supported by the default font in raylib
static int GetCodepointNext(const char *text, int *codepointSize)
{
diff --git a/examples/others/easings_testbed.c b/examples/shapes/shapes_easings_testbed.c
similarity index 83%
rename from examples/others/easings_testbed.c
rename to examples/shapes/shapes_easings_testbed.c
index fa4a599ee..ce9b7d485 100644
--- a/examples/others/easings_testbed.c
+++ b/examples/shapes/shapes_easings_testbed.c
@@ -1,11 +1,11 @@
/*******************************************************************************************
*
-* raylib [others] example - easings testbed
-*
-* Example originally created with raylib 2.5, last time updated with raylib 2.5
+* raylib [shapes] example - easings testbed
*
* Example complexity rating: [★★★☆] 3/4
*
+* Example originally created with raylib 2.5, last time updated with raylib 2.5
+*
* Example contributed by Juan Miguel López (@flashback-fx) and reviewed by Ramon Santamaria (@raysan5)
*
* Example licensed under an unmodified zlib/libpng license, which is an OSI-certified,
@@ -26,6 +26,9 @@
#define D_MIN 1.0f
#define D_MAX 10000.0f
+//----------------------------------------------------------------------------------
+// Types and Structures Definition
+//----------------------------------------------------------------------------------
// Easing types
enum EasingTypes {
EASE_LINEAR_NONE = 0,
@@ -60,13 +63,22 @@ enum EasingTypes {
EASING_NONE = NUM_EASING_TYPES
};
-static float NoEase(float t, float b, float c, float d); // NoEase function declaration, function used when "no easing" is selected for any axis
-
-// Easing functions reference data
-static const struct {
+typedef struct EasingFuncs {
const char *name;
float (*func)(float, float, float, float);
-} Easings[] = {
+} EasingFuncs;
+
+//------------------------------------------------------------------------------------
+// Module Functions Declaration
+//------------------------------------------------------------------------------------
+// Function used when "no easing" is selected for any axis
+static float NoEase(float t, float b, float c, float d);
+
+//------------------------------------------------------------------------------------
+// Global Variables Definition
+//------------------------------------------------------------------------------------
+// Easing functions reference data
+static const EasingFuncs easings[] = {
[EASE_LINEAR_NONE] = { .name = "EaseLinearNone", .func = EaseLinearNone },
[EASE_LINEAR_IN] = { .name = "EaseLinearIn", .func = EaseLinearIn },
[EASE_LINEAR_OUT] = { .name = "EaseLinearOut", .func = EaseLinearOut },
@@ -108,7 +120,7 @@ int main(void)
const int screenWidth = 800;
const int screenHeight = 450;
- InitWindow(screenWidth, screenHeight, "raylib [others] example - easings testbed");
+ InitWindow(screenWidth, screenHeight, "raylib [shapes] example - easings testbed");
Vector2 ballPosition = { 100.0f, 100.0f };
@@ -157,11 +169,11 @@ int main(void)
}
// Change d (duration) value
- if (IsKeyPressed(KEY_W) && d < D_MAX - D_STEP) d += D_STEP;
- else if (IsKeyPressed(KEY_Q) && d > D_MIN + D_STEP) d -= D_STEP;
+ if (IsKeyPressed(KEY_W) && (d < D_MAX - D_STEP)) d += D_STEP;
+ else if (IsKeyPressed(KEY_Q) && (d > D_MIN + D_STEP)) d -= D_STEP;
- if (IsKeyDown(KEY_S) && d < D_MAX - D_STEP_FINE) d += D_STEP_FINE;
- else if (IsKeyDown(KEY_A) && d > D_MIN + D_STEP_FINE) d -= D_STEP_FINE;
+ if (IsKeyDown(KEY_S) && (d < D_MAX - D_STEP_FINE)) d += D_STEP_FINE;
+ else if (IsKeyDown(KEY_A) && (d > D_MIN + D_STEP_FINE)) d -= D_STEP_FINE;
// Play, pause and restart controls
if (IsKeyPressed(KEY_SPACE) || IsKeyPressed(KEY_T) ||
@@ -182,8 +194,8 @@ int main(void)
// Movement computation
if (!paused && ((boundedT && t < d) || !boundedT))
{
- ballPosition.x = Easings[easingX].func(t, 100.0f, 700.0f - 170.0f, d);
- ballPosition.y = Easings[easingY].func(t, 100.0f, 400.0f - 170.0f, d);
+ ballPosition.x = easings[easingX].func(t, 100.0f, 700.0f - 170.0f, d);
+ ballPosition.y = easings[easingY].func(t, 100.0f, 400.0f - 170.0f, d);
t += 1.0f;
}
//----------------------------------------------------------------------------------
@@ -195,8 +207,8 @@ int main(void)
ClearBackground(RAYWHITE);
// Draw information text
- DrawText(TextFormat("Easing x: %s", Easings[easingX].name), 20, FONT_SIZE, FONT_SIZE, LIGHTGRAY);
- DrawText(TextFormat("Easing y: %s", Easings[easingY].name), 20, FONT_SIZE*2, FONT_SIZE, LIGHTGRAY);
+ DrawText(TextFormat("Easing x: %s", easings[easingX].name), 20, FONT_SIZE, FONT_SIZE, LIGHTGRAY);
+ DrawText(TextFormat("Easing y: %s", easings[easingY].name), 20, FONT_SIZE*2, FONT_SIZE, LIGHTGRAY);
DrawText(TextFormat("t (%c) = %.2f d = %.2f", (boundedT == true)? 'b' : 'u', t, d), 20, FONT_SIZE*3, FONT_SIZE, LIGHTGRAY);
// Draw instructions text
@@ -220,7 +232,9 @@ int main(void)
return 0;
}
-
+//------------------------------------------------------------------------------------
+// Module Functions Declaration
+//------------------------------------------------------------------------------------
// NoEase function, used when "no easing" is selected for any axis
// It just ignores all parameters besides b
static float NoEase(float t, float b, float c, float d)
diff --git a/examples/others/easings_testbed.png b/examples/shapes/shapes_easings_testbed.png
similarity index 100%
rename from examples/others/easings_testbed.png
rename to examples/shapes/shapes_easings_testbed.png
diff --git a/projects/VS2022/examples/core_window_web.vcxproj b/projects/VS2022/examples/core_window_web.vcxproj
new file mode 100644
index 000000000..d26befac0
--- /dev/null
+++ b/projects/VS2022/examples/core_window_web.vcxproj
@@ -0,0 +1,569 @@
+
+
+
+
+ Debug.DLL
+ ARM64
+
+
+ Debug.DLL
+ Win32
+
+
+ Debug.DLL
+ x64
+
+
+ Debug
+ ARM64
+
+
+ Debug
+ Win32
+
+
+ Debug
+ x64
+
+
+ Release.DLL
+ ARM64
+
+
+ Release.DLL
+ Win32
+
+
+ Release.DLL
+ x64
+
+
+ Release
+ ARM64
+
+
+ Release
+ Win32
+
+
+ Release
+ x64
+
+
+
+ {4E7157E0-6CDB-47AE-A19A-FEC3876FA8A3}
+ Win32Proj
+ core_window_web
+ 10.0
+ core_window_web
+
+
+
+ Application
+ true
+ $(DefaultPlatformToolset)
+ Unicode
+
+
+ Application
+ true
+ $(DefaultPlatformToolset)
+ Unicode
+
+
+ Application
+ true
+ $(DefaultPlatformToolset)
+ Unicode
+
+
+ Application
+ true
+ $(DefaultPlatformToolset)
+ Unicode
+
+
+ Application
+ true
+ $(DefaultPlatformToolset)
+ Unicode
+
+
+ Application
+ true
+ $(DefaultPlatformToolset)
+ Unicode
+
+
+ Application
+ false
+ $(DefaultPlatformToolset)
+ true
+ Unicode
+
+
+ Application
+ false
+ $(DefaultPlatformToolset)
+ true
+ Unicode
+
+
+ Application
+ false
+ $(DefaultPlatformToolset)
+ true
+ Unicode
+
+
+ Application
+ false
+ $(DefaultPlatformToolset)
+ true
+ Unicode
+
+
+ Application
+ false
+ $(DefaultPlatformToolset)
+ true
+ Unicode
+
+
+ Application
+ false
+ $(DefaultPlatformToolset)
+ true
+ Unicode
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ true
+ $(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)\
+ $(SolutionDir)\build\$(ProjectName)\obj\$(Platform)\$(Configuration)\
+
+
+ true
+ $(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)\
+ $(SolutionDir)\build\$(ProjectName)\obj\$(Platform)\$(Configuration)\
+
+
+ true
+ $(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)\
+ $(SolutionDir)\build\$(ProjectName)\obj\$(Platform)\$(Configuration)\
+
+
+ true
+ $(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)\
+ $(SolutionDir)\build\$(ProjectName)\obj\$(Platform)\$(Configuration)\
+
+
+ true
+ $(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)\
+ $(SolutionDir)\build\$(ProjectName)\obj\$(Platform)\$(Configuration)\
+
+
+ true
+ $(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)\
+ $(SolutionDir)\build\$(ProjectName)\obj\$(Platform)\$(Configuration)\
+
+
+ false
+ $(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)\
+ $(SolutionDir)\build\$(ProjectName)\obj\$(Platform)\$(Configuration)\
+
+
+ false
+ $(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)\
+ $(SolutionDir)\build\$(ProjectName)\obj\$(Platform)\$(Configuration)\
+
+
+ false
+ $(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)\
+ $(SolutionDir)\build\$(ProjectName)\obj\$(Platform)\$(Configuration)\
+
+
+ false
+ $(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)\
+ $(SolutionDir)\build\$(ProjectName)\obj\$(Platform)\$(Configuration)\
+
+
+ false
+ $(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)\
+ $(SolutionDir)\build\$(ProjectName)\obj\$(Platform)\$(Configuration)\
+
+
+ false
+ $(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)\
+ $(SolutionDir)\build\$(ProjectName)\obj\$(Platform)\$(Configuration)\
+
+
+ $(SolutionDir)..\..\examples\core
+ WindowsLocalDebugger
+
+
+ $(SolutionDir)..\..\examples\core
+ WindowsLocalDebugger
+
+
+ $(SolutionDir)..\..\examples\core
+ WindowsLocalDebugger
+
+
+ $(SolutionDir)..\..\examples\core
+ WindowsLocalDebugger
+
+
+ $(SolutionDir)..\..\examples\core
+ WindowsLocalDebugger
+
+
+ $(SolutionDir)..\..\examples\core
+ WindowsLocalDebugger
+
+
+ $(SolutionDir)..\..\examples\core
+ WindowsLocalDebugger
+
+
+ $(SolutionDir)..\..\examples\core
+ WindowsLocalDebugger
+
+
+ $(SolutionDir)..\..\examples\core
+ WindowsLocalDebugger
+
+
+ $(SolutionDir)..\..\examples\core
+ WindowsLocalDebugger
+
+
+ $(SolutionDir)..\..\examples\core
+ WindowsLocalDebugger
+
+
+ $(SolutionDir)..\..\examples\core
+ WindowsLocalDebugger
+
+
+
+
+
+ Level3
+ Disabled
+ WIN32;_DEBUG;_CONSOLE;PLATFORM_DESKTOP;%(PreprocessorDefinitions)
+ CompileAsC
+ $(SolutionDir)..\..\src;%(AdditionalIncludeDirectories)
+
+
+ Console
+ true
+ $(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\
+ raylib.lib;opengl32.lib;kernel32.lib;user32.lib;gdi32.lib;winmm.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;%(AdditionalDependencies)
+
+
+
+
+
+
+ Level3
+ Disabled
+ WIN32;_DEBUG;_CONSOLE;PLATFORM_DESKTOP;%(PreprocessorDefinitions)
+ CompileAsC
+ $(SolutionDir)..\..\src;%(AdditionalIncludeDirectories)
+ /FS %(AdditionalOptions)
+
+
+ Console
+ true
+ $(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\
+ raylib.lib;opengl32.lib;kernel32.lib;user32.lib;gdi32.lib;winmm.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;%(AdditionalDependencies)
+
+
+
+
+
+
+ Level3
+ Disabled
+ WIN32;_DEBUG;_CONSOLE;PLATFORM_DESKTOP;%(PreprocessorDefinitions)
+ CompileAsC
+ $(SolutionDir)..\..\src;%(AdditionalIncludeDirectories)
+ /FS %(AdditionalOptions)
+
+
+ Console
+ true
+ $(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\
+ raylib.lib;opengl32.lib;kernel32.lib;user32.lib;gdi32.lib;winmm.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;%(AdditionalDependencies)
+
+
+
+
+
+
+ Level3
+ Disabled
+ WIN32;_DEBUG;_CONSOLE;PLATFORM_DESKTOP;%(PreprocessorDefinitions)
+ CompileAsC
+ $(SolutionDir)..\..\src;%(AdditionalIncludeDirectories)
+
+
+ Console
+ true
+ $(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\
+ raylib.lib;opengl32.lib;kernel32.lib;user32.lib;gdi32.lib;winmm.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;%(AdditionalDependencies)
+
+
+ xcopy /y /d "$(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\raylib.dll" "$(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)"
+ Copy Debug DLL to output directory
+
+
+
+
+
+
+ Level3
+ Disabled
+ WIN32;_DEBUG;_CONSOLE;PLATFORM_DESKTOP;%(PreprocessorDefinitions)
+ CompileAsC
+ $(SolutionDir)..\..\src;%(AdditionalIncludeDirectories)
+
+
+ Console
+ true
+ $(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\
+ raylib.lib;opengl32.lib;kernel32.lib;user32.lib;gdi32.lib;winmm.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;%(AdditionalDependencies)
+
+
+ xcopy /y /d "$(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\raylib.dll" "$(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)"
+ Copy Debug DLL to output directory
+
+
+
+
+
+
+ Level3
+ Disabled
+ WIN32;_DEBUG;_CONSOLE;PLATFORM_DESKTOP;%(PreprocessorDefinitions)
+ CompileAsC
+ $(SolutionDir)..\..\src;%(AdditionalIncludeDirectories)
+
+
+ Console
+ true
+ $(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\
+ raylib.lib;opengl32.lib;kernel32.lib;user32.lib;gdi32.lib;winmm.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;%(AdditionalDependencies)
+
+
+ xcopy /y /d "$(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\raylib.dll" "$(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)"
+ Copy Debug DLL to output directory
+
+
+
+
+ Level3
+
+
+ MaxSpeed
+ true
+ true
+ WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions);PLATFORM_DESKTOP
+ $(SolutionDir)..\..\src;%(AdditionalIncludeDirectories)
+ CompileAsC
+ true
+
+
+ Console
+ true
+ true
+ true
+ raylib.lib;opengl32.lib;kernel32.lib;user32.lib;gdi32.lib;winmm.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;%(AdditionalDependencies)
+ $(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\
+
+
+
+
+ Level3
+
+
+ MaxSpeed
+ true
+ true
+ WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions);PLATFORM_DESKTOP
+ $(SolutionDir)..\..\src;%(AdditionalIncludeDirectories)
+ CompileAsC
+ true
+
+
+ Console
+ true
+ true
+ true
+ raylib.lib;opengl32.lib;kernel32.lib;user32.lib;gdi32.lib;winmm.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;%(AdditionalDependencies)
+ $(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\
+
+
+
+
+ Level3
+
+
+ MaxSpeed
+ true
+ true
+ WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions);PLATFORM_DESKTOP
+ $(SolutionDir)..\..\src;%(AdditionalIncludeDirectories)
+ CompileAsC
+ true
+
+
+ Console
+ true
+ true
+ true
+ raylib.lib;opengl32.lib;kernel32.lib;user32.lib;gdi32.lib;winmm.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;%(AdditionalDependencies)
+ $(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\
+
+
+
+
+ Level3
+
+
+ MaxSpeed
+ true
+ true
+ WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions);PLATFORM_DESKTOP
+ $(SolutionDir)..\..\src;%(AdditionalIncludeDirectories)
+ CompileAsC
+ true
+
+
+ Console
+ true
+ true
+ true
+ raylib.lib;opengl32.lib;kernel32.lib;user32.lib;gdi32.lib;winmm.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;%(AdditionalDependencies)
+ $(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\
+
+
+ xcopy /y /d "$(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\raylib.dll" "$(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)"
+
+
+ Copy Release DLL to output directory
+
+
+
+
+ Level3
+
+
+ MaxSpeed
+ true
+ true
+ WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions);PLATFORM_DESKTOP
+ $(SolutionDir)..\..\src;%(AdditionalIncludeDirectories)
+ CompileAsC
+ true
+
+
+ Console
+ true
+ true
+ true
+ raylib.lib;opengl32.lib;kernel32.lib;user32.lib;gdi32.lib;winmm.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;%(AdditionalDependencies)
+ $(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\
+
+
+ xcopy /y /d "$(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\raylib.dll" "$(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)"
+
+
+ Copy Release DLL to output directory
+
+
+
+
+ Level3
+
+
+ MaxSpeed
+ true
+ true
+ WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions);PLATFORM_DESKTOP
+ $(SolutionDir)..\..\src;%(AdditionalIncludeDirectories)
+ CompileAsC
+ true
+
+
+ Console
+ true
+ true
+ true
+ raylib.lib;opengl32.lib;kernel32.lib;user32.lib;gdi32.lib;winmm.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;%(AdditionalDependencies)
+ $(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\
+
+
+ xcopy /y /d "$(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\raylib.dll" "$(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)"
+
+
+ Copy Release DLL to output directory
+
+
+
+
+
+
+
+
+
+
+ {e89d61ac-55de-4482-afd4-df7242ebc859}
+
+
+
+
+
+
\ No newline at end of file
diff --git a/projects/VS2022/examples/models_animation_blending.vcxproj b/projects/VS2022/examples/models_animation_blending.vcxproj
new file mode 100644
index 000000000..3eca7a6f2
--- /dev/null
+++ b/projects/VS2022/examples/models_animation_blending.vcxproj
@@ -0,0 +1,387 @@
+
+
+
+
+ Debug.DLL
+ Win32
+
+
+ Debug.DLL
+ x64
+
+
+ Debug
+ Win32
+
+
+ Debug
+ x64
+
+
+ Release.DLL
+ Win32
+
+
+ Release.DLL
+ x64
+
+
+ Release
+ Win32
+
+
+ Release
+ x64
+
+
+
+ {BB9C957D-34F1-46AE-B64A-9E0499C1746D}
+ Win32Proj
+ models_animation_blending
+ 10.0
+ models_animation_blending
+
+
+
+ Application
+ true
+ $(DefaultPlatformToolset)
+ Unicode
+
+
+ Application
+ true
+ $(DefaultPlatformToolset)
+ Unicode
+
+
+ Application
+ true
+ $(DefaultPlatformToolset)
+ Unicode
+
+
+ Application
+ true
+ $(DefaultPlatformToolset)
+ Unicode
+
+
+ Application
+ false
+ $(DefaultPlatformToolset)
+ true
+ Unicode
+
+
+ Application
+ false
+ $(DefaultPlatformToolset)
+ true
+ Unicode
+
+
+ Application
+ false
+ $(DefaultPlatformToolset)
+ true
+ Unicode
+
+
+ Application
+ false
+ $(DefaultPlatformToolset)
+ true
+ Unicode
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ true
+ $(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)\
+ $(SolutionDir)\build\$(ProjectName)\obj\$(Platform)\$(Configuration)\
+
+
+ true
+ $(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)\
+ $(SolutionDir)\build\$(ProjectName)\obj\$(Platform)\$(Configuration)\
+
+
+ true
+ $(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)\
+ $(SolutionDir)\build\$(ProjectName)\obj\$(Platform)\$(Configuration)\
+
+
+ true
+ $(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)\
+ $(SolutionDir)\build\$(ProjectName)\obj\$(Platform)\$(Configuration)\
+
+
+ false
+ $(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)\
+ $(SolutionDir)\build\$(ProjectName)\obj\$(Platform)\$(Configuration)\
+
+
+ false
+ $(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)\
+ $(SolutionDir)\build\$(ProjectName)\obj\$(Platform)\$(Configuration)\
+
+
+ false
+ $(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)\
+ $(SolutionDir)\build\$(ProjectName)\obj\$(Platform)\$(Configuration)\
+
+
+ false
+ $(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)\
+ $(SolutionDir)\build\$(ProjectName)\obj\$(Platform)\$(Configuration)\
+
+
+ $(SolutionDir)..\..\examples\models
+ WindowsLocalDebugger
+
+
+ $(SolutionDir)..\..\examples\models
+ WindowsLocalDebugger
+
+
+ $(SolutionDir)..\..\examples\models
+ WindowsLocalDebugger
+
+
+ $(SolutionDir)..\..\examples\models
+ WindowsLocalDebugger
+
+
+ $(SolutionDir)..\..\examples\models
+ WindowsLocalDebugger
+
+
+ $(SolutionDir)..\..\examples\models
+ WindowsLocalDebugger
+
+
+ $(SolutionDir)..\..\examples\models
+ WindowsLocalDebugger
+
+
+ $(SolutionDir)..\..\examples\models
+ WindowsLocalDebugger
+
+
+
+
+
+ Level3
+ Disabled
+ WIN32;_DEBUG;_CONSOLE;PLATFORM_DESKTOP;%(PreprocessorDefinitions)
+ CompileAsC
+ $(SolutionDir)..\..\src;%(AdditionalIncludeDirectories)
+
+
+ Console
+ true
+ $(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\
+ raylib.lib;opengl32.lib;kernel32.lib;user32.lib;gdi32.lib;winmm.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;%(AdditionalDependencies)
+
+
+
+
+
+
+ Level3
+ Disabled
+ WIN32;_DEBUG;_CONSOLE;PLATFORM_DESKTOP;%(PreprocessorDefinitions)
+ CompileAsC
+ $(SolutionDir)..\..\src;%(AdditionalIncludeDirectories)
+ /FS %(AdditionalOptions)
+
+
+ Console
+ true
+ $(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\
+ raylib.lib;opengl32.lib;kernel32.lib;user32.lib;gdi32.lib;winmm.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;%(AdditionalDependencies)
+
+
+
+
+
+
+ Level3
+ Disabled
+ WIN32;_DEBUG;_CONSOLE;PLATFORM_DESKTOP;%(PreprocessorDefinitions)
+ CompileAsC
+ $(SolutionDir)..\..\src;%(AdditionalIncludeDirectories)
+
+
+ Console
+ true
+ $(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\
+ raylib.lib;opengl32.lib;kernel32.lib;user32.lib;gdi32.lib;winmm.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;%(AdditionalDependencies)
+
+
+ xcopy /y /d "$(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\raylib.dll" "$(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)"
+ Copy Debug DLL to output directory
+
+
+
+
+
+
+ Level3
+ Disabled
+ WIN32;_DEBUG;_CONSOLE;PLATFORM_DESKTOP;%(PreprocessorDefinitions)
+ CompileAsC
+ $(SolutionDir)..\..\src;%(AdditionalIncludeDirectories)
+
+
+ Console
+ true
+ $(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\
+ raylib.lib;opengl32.lib;kernel32.lib;user32.lib;gdi32.lib;winmm.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;%(AdditionalDependencies)
+
+
+ xcopy /y /d "$(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\raylib.dll" "$(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)"
+ Copy Debug DLL to output directory
+
+
+
+
+ Level3
+
+
+ MaxSpeed
+ true
+ true
+ WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions);PLATFORM_DESKTOP
+ $(SolutionDir)..\..\src;%(AdditionalIncludeDirectories)
+ CompileAsC
+ true
+
+
+ Console
+ true
+ true
+ true
+ raylib.lib;opengl32.lib;kernel32.lib;user32.lib;gdi32.lib;winmm.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;%(AdditionalDependencies)
+ $(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\
+
+
+
+
+ Level3
+
+
+ MaxSpeed
+ true
+ true
+ WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions);PLATFORM_DESKTOP
+ $(SolutionDir)..\..\src;%(AdditionalIncludeDirectories)
+ CompileAsC
+ true
+
+
+ Console
+ true
+ true
+ true
+ raylib.lib;opengl32.lib;kernel32.lib;user32.lib;gdi32.lib;winmm.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;%(AdditionalDependencies)
+ $(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\
+
+
+
+
+ Level3
+
+
+ MaxSpeed
+ true
+ true
+ WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions);PLATFORM_DESKTOP
+ $(SolutionDir)..\..\src;%(AdditionalIncludeDirectories)
+ CompileAsC
+ true
+
+
+ Console
+ true
+ true
+ true
+ raylib.lib;opengl32.lib;kernel32.lib;user32.lib;gdi32.lib;winmm.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;%(AdditionalDependencies)
+ $(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\
+
+
+ xcopy /y /d "$(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\raylib.dll" "$(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)"
+
+
+ Copy Release DLL to output directory
+
+
+
+
+ Level3
+
+
+ MaxSpeed
+ true
+ true
+ WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions);PLATFORM_DESKTOP
+ $(SolutionDir)..\..\src;%(AdditionalIncludeDirectories)
+ CompileAsC
+ true
+
+
+ Console
+ true
+ true
+ true
+ raylib.lib;opengl32.lib;kernel32.lib;user32.lib;gdi32.lib;winmm.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;%(AdditionalDependencies)
+ $(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\
+
+
+ xcopy /y /d "$(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\raylib.dll" "$(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)"
+
+
+ Copy Release DLL to output directory
+
+
+
+
+
+
+
+ {e89d61ac-55de-4482-afd4-df7242ebc859}
+
+
+
+
+
+
\ No newline at end of file
diff --git a/projects/VS2022/examples/models_animation_bone_blending.vcxproj b/projects/VS2022/examples/models_animation_bone_blending.vcxproj
new file mode 100644
index 000000000..475ad47f0
--- /dev/null
+++ b/projects/VS2022/examples/models_animation_bone_blending.vcxproj
@@ -0,0 +1,569 @@
+
+
+
+
+ Debug.DLL
+ ARM64
+
+
+ Debug.DLL
+ Win32
+
+
+ Debug.DLL
+ x64
+
+
+ Debug
+ ARM64
+
+
+ Debug
+ Win32
+
+
+ Debug
+ x64
+
+
+ Release.DLL
+ ARM64
+
+
+ Release.DLL
+ Win32
+
+
+ Release.DLL
+ x64
+
+
+ Release
+ ARM64
+
+
+ Release
+ Win32
+
+
+ Release
+ x64
+
+
+
+ {AC751FE1-C986-4B6A-92A8-28ED89DEE671}
+ Win32Proj
+ models_animation_bone_blending
+ 10.0
+ models_animation_bone_blending
+
+
+
+ Application
+ true
+ $(DefaultPlatformToolset)
+ Unicode
+
+
+ Application
+ true
+ $(DefaultPlatformToolset)
+ Unicode
+
+
+ Application
+ true
+ $(DefaultPlatformToolset)
+ Unicode
+
+
+ Application
+ true
+ $(DefaultPlatformToolset)
+ Unicode
+
+
+ Application
+ true
+ $(DefaultPlatformToolset)
+ Unicode
+
+
+ Application
+ true
+ $(DefaultPlatformToolset)
+ Unicode
+
+
+ Application
+ false
+ $(DefaultPlatformToolset)
+ true
+ Unicode
+
+
+ Application
+ false
+ $(DefaultPlatformToolset)
+ true
+ Unicode
+
+
+ Application
+ false
+ $(DefaultPlatformToolset)
+ true
+ Unicode
+
+
+ Application
+ false
+ $(DefaultPlatformToolset)
+ true
+ Unicode
+
+
+ Application
+ false
+ $(DefaultPlatformToolset)
+ true
+ Unicode
+
+
+ Application
+ false
+ $(DefaultPlatformToolset)
+ true
+ Unicode
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ true
+ $(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)\
+ $(SolutionDir)\build\$(ProjectName)\obj\$(Platform)\$(Configuration)\
+
+
+ true
+ $(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)\
+ $(SolutionDir)\build\$(ProjectName)\obj\$(Platform)\$(Configuration)\
+
+
+ true
+ $(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)\
+ $(SolutionDir)\build\$(ProjectName)\obj\$(Platform)\$(Configuration)\
+
+
+ true
+ $(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)\
+ $(SolutionDir)\build\$(ProjectName)\obj\$(Platform)\$(Configuration)\
+
+
+ true
+ $(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)\
+ $(SolutionDir)\build\$(ProjectName)\obj\$(Platform)\$(Configuration)\
+
+
+ true
+ $(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)\
+ $(SolutionDir)\build\$(ProjectName)\obj\$(Platform)\$(Configuration)\
+
+
+ false
+ $(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)\
+ $(SolutionDir)\build\$(ProjectName)\obj\$(Platform)\$(Configuration)\
+
+
+ false
+ $(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)\
+ $(SolutionDir)\build\$(ProjectName)\obj\$(Platform)\$(Configuration)\
+
+
+ false
+ $(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)\
+ $(SolutionDir)\build\$(ProjectName)\obj\$(Platform)\$(Configuration)\
+
+
+ false
+ $(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)\
+ $(SolutionDir)\build\$(ProjectName)\obj\$(Platform)\$(Configuration)\
+
+
+ false
+ $(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)\
+ $(SolutionDir)\build\$(ProjectName)\obj\$(Platform)\$(Configuration)\
+
+
+ false
+ $(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)\
+ $(SolutionDir)\build\$(ProjectName)\obj\$(Platform)\$(Configuration)\
+
+
+ $(SolutionDir)..\..\examples\models
+ WindowsLocalDebugger
+
+
+ $(SolutionDir)..\..\examples\models
+ WindowsLocalDebugger
+
+
+ $(SolutionDir)..\..\examples\models
+ WindowsLocalDebugger
+
+
+ $(SolutionDir)..\..\examples\models
+ WindowsLocalDebugger
+
+
+ $(SolutionDir)..\..\examples\models
+ WindowsLocalDebugger
+
+
+ $(SolutionDir)..\..\examples\models
+ WindowsLocalDebugger
+
+
+ $(SolutionDir)..\..\examples\models
+ WindowsLocalDebugger
+
+
+ $(SolutionDir)..\..\examples\models
+ WindowsLocalDebugger
+
+
+ $(SolutionDir)..\..\examples\models
+ WindowsLocalDebugger
+
+
+ $(SolutionDir)..\..\examples\models
+ WindowsLocalDebugger
+
+
+ $(SolutionDir)..\..\examples\models
+ WindowsLocalDebugger
+
+
+ $(SolutionDir)..\..\examples\models
+ WindowsLocalDebugger
+
+
+
+
+
+ Level3
+ Disabled
+ WIN32;_DEBUG;_CONSOLE;PLATFORM_DESKTOP;%(PreprocessorDefinitions)
+ CompileAsC
+ $(SolutionDir)..\..\src;%(AdditionalIncludeDirectories)
+
+
+ Console
+ true
+ $(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\
+ raylib.lib;opengl32.lib;kernel32.lib;user32.lib;gdi32.lib;winmm.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;%(AdditionalDependencies)
+
+
+
+
+
+
+ Level3
+ Disabled
+ WIN32;_DEBUG;_CONSOLE;PLATFORM_DESKTOP;%(PreprocessorDefinitions)
+ CompileAsC
+ $(SolutionDir)..\..\src;%(AdditionalIncludeDirectories)
+ /FS %(AdditionalOptions)
+
+
+ Console
+ true
+ $(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\
+ raylib.lib;opengl32.lib;kernel32.lib;user32.lib;gdi32.lib;winmm.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;%(AdditionalDependencies)
+
+
+
+
+
+
+ Level3
+ Disabled
+ WIN32;_DEBUG;_CONSOLE;PLATFORM_DESKTOP;%(PreprocessorDefinitions)
+ CompileAsC
+ $(SolutionDir)..\..\src;%(AdditionalIncludeDirectories)
+ /FS %(AdditionalOptions)
+
+
+ Console
+ true
+ $(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\
+ raylib.lib;opengl32.lib;kernel32.lib;user32.lib;gdi32.lib;winmm.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;%(AdditionalDependencies)
+
+
+
+
+
+
+ Level3
+ Disabled
+ WIN32;_DEBUG;_CONSOLE;PLATFORM_DESKTOP;%(PreprocessorDefinitions)
+ CompileAsC
+ $(SolutionDir)..\..\src;%(AdditionalIncludeDirectories)
+
+
+ Console
+ true
+ $(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\
+ raylib.lib;opengl32.lib;kernel32.lib;user32.lib;gdi32.lib;winmm.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;%(AdditionalDependencies)
+
+
+ xcopy /y /d "$(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\raylib.dll" "$(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)"
+ Copy Debug DLL to output directory
+
+
+
+
+
+
+ Level3
+ Disabled
+ WIN32;_DEBUG;_CONSOLE;PLATFORM_DESKTOP;%(PreprocessorDefinitions)
+ CompileAsC
+ $(SolutionDir)..\..\src;%(AdditionalIncludeDirectories)
+
+
+ Console
+ true
+ $(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\
+ raylib.lib;opengl32.lib;kernel32.lib;user32.lib;gdi32.lib;winmm.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;%(AdditionalDependencies)
+
+
+ xcopy /y /d "$(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\raylib.dll" "$(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)"
+ Copy Debug DLL to output directory
+
+
+
+
+
+
+ Level3
+ Disabled
+ WIN32;_DEBUG;_CONSOLE;PLATFORM_DESKTOP;%(PreprocessorDefinitions)
+ CompileAsC
+ $(SolutionDir)..\..\src;%(AdditionalIncludeDirectories)
+
+
+ Console
+ true
+ $(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\
+ raylib.lib;opengl32.lib;kernel32.lib;user32.lib;gdi32.lib;winmm.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;%(AdditionalDependencies)
+
+
+ xcopy /y /d "$(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\raylib.dll" "$(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)"
+ Copy Debug DLL to output directory
+
+
+
+
+ Level3
+
+
+ MaxSpeed
+ true
+ true
+ WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions);PLATFORM_DESKTOP
+ $(SolutionDir)..\..\src;%(AdditionalIncludeDirectories)
+ CompileAsC
+ true
+
+
+ Console
+ true
+ true
+ true
+ raylib.lib;opengl32.lib;kernel32.lib;user32.lib;gdi32.lib;winmm.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;%(AdditionalDependencies)
+ $(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\
+
+
+
+
+ Level3
+
+
+ MaxSpeed
+ true
+ true
+ WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions);PLATFORM_DESKTOP
+ $(SolutionDir)..\..\src;%(AdditionalIncludeDirectories)
+ CompileAsC
+ true
+
+
+ Console
+ true
+ true
+ true
+ raylib.lib;opengl32.lib;kernel32.lib;user32.lib;gdi32.lib;winmm.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;%(AdditionalDependencies)
+ $(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\
+
+
+
+
+ Level3
+
+
+ MaxSpeed
+ true
+ true
+ WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions);PLATFORM_DESKTOP
+ $(SolutionDir)..\..\src;%(AdditionalIncludeDirectories)
+ CompileAsC
+ true
+
+
+ Console
+ true
+ true
+ true
+ raylib.lib;opengl32.lib;kernel32.lib;user32.lib;gdi32.lib;winmm.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;%(AdditionalDependencies)
+ $(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\
+
+
+
+
+ Level3
+
+
+ MaxSpeed
+ true
+ true
+ WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions);PLATFORM_DESKTOP
+ $(SolutionDir)..\..\src;%(AdditionalIncludeDirectories)
+ CompileAsC
+ true
+
+
+ Console
+ true
+ true
+ true
+ raylib.lib;opengl32.lib;kernel32.lib;user32.lib;gdi32.lib;winmm.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;%(AdditionalDependencies)
+ $(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\
+
+
+ xcopy /y /d "$(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\raylib.dll" "$(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)"
+
+
+ Copy Release DLL to output directory
+
+
+
+
+ Level3
+
+
+ MaxSpeed
+ true
+ true
+ WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions);PLATFORM_DESKTOP
+ $(SolutionDir)..\..\src;%(AdditionalIncludeDirectories)
+ CompileAsC
+ true
+
+
+ Console
+ true
+ true
+ true
+ raylib.lib;opengl32.lib;kernel32.lib;user32.lib;gdi32.lib;winmm.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;%(AdditionalDependencies)
+ $(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\
+
+
+ xcopy /y /d "$(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\raylib.dll" "$(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)"
+
+
+ Copy Release DLL to output directory
+
+
+
+
+ Level3
+
+
+ MaxSpeed
+ true
+ true
+ WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions);PLATFORM_DESKTOP
+ $(SolutionDir)..\..\src;%(AdditionalIncludeDirectories)
+ CompileAsC
+ true
+
+
+ Console
+ true
+ true
+ true
+ raylib.lib;opengl32.lib;kernel32.lib;user32.lib;gdi32.lib;winmm.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;%(AdditionalDependencies)
+ $(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\
+
+
+ xcopy /y /d "$(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\raylib.dll" "$(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)"
+
+
+ Copy Release DLL to output directory
+
+
+
+
+
+
+
+
+
+
+ {e89d61ac-55de-4482-afd4-df7242ebc859}
+
+
+
+
+
+
\ No newline at end of file
diff --git a/projects/VS2022/examples/shaders_rlgl_compute.vcxproj b/projects/VS2022/examples/shaders_rlgl_compute.vcxproj
new file mode 100644
index 000000000..d10553409
--- /dev/null
+++ b/projects/VS2022/examples/shaders_rlgl_compute.vcxproj
@@ -0,0 +1,569 @@
+
+
+
+
+ Debug.DLL
+ ARM64
+
+
+ Debug.DLL
+ Win32
+
+
+ Debug.DLL
+ x64
+
+
+ Debug
+ ARM64
+
+
+ Debug
+ Win32
+
+
+ Debug
+ x64
+
+
+ Release.DLL
+ ARM64
+
+
+ Release.DLL
+ Win32
+
+
+ Release.DLL
+ x64
+
+
+ Release
+ ARM64
+
+
+ Release
+ Win32
+
+
+ Release
+ x64
+
+
+
+ {AEA9D0D4-B810-4624-BC75-10A291584ED6}
+ Win32Proj
+ shaders_rlgl_compute
+ 10.0
+ shaders_rlgl_compute
+
+
+
+ Application
+ true
+ $(DefaultPlatformToolset)
+ Unicode
+
+
+ Application
+ true
+ $(DefaultPlatformToolset)
+ Unicode
+
+
+ Application
+ true
+ $(DefaultPlatformToolset)
+ Unicode
+
+
+ Application
+ true
+ $(DefaultPlatformToolset)
+ Unicode
+
+
+ Application
+ true
+ $(DefaultPlatformToolset)
+ Unicode
+
+
+ Application
+ true
+ $(DefaultPlatformToolset)
+ Unicode
+
+
+ Application
+ false
+ $(DefaultPlatformToolset)
+ true
+ Unicode
+
+
+ Application
+ false
+ $(DefaultPlatformToolset)
+ true
+ Unicode
+
+
+ Application
+ false
+ $(DefaultPlatformToolset)
+ true
+ Unicode
+
+
+ Application
+ false
+ $(DefaultPlatformToolset)
+ true
+ Unicode
+
+
+ Application
+ false
+ $(DefaultPlatformToolset)
+ true
+ Unicode
+
+
+ Application
+ false
+ $(DefaultPlatformToolset)
+ true
+ Unicode
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ true
+ $(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)\
+ $(SolutionDir)\build\$(ProjectName)\obj\$(Platform)\$(Configuration)\
+
+
+ true
+ $(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)\
+ $(SolutionDir)\build\$(ProjectName)\obj\$(Platform)\$(Configuration)\
+
+
+ true
+ $(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)\
+ $(SolutionDir)\build\$(ProjectName)\obj\$(Platform)\$(Configuration)\
+
+
+ true
+ $(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)\
+ $(SolutionDir)\build\$(ProjectName)\obj\$(Platform)\$(Configuration)\
+
+
+ true
+ $(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)\
+ $(SolutionDir)\build\$(ProjectName)\obj\$(Platform)\$(Configuration)\
+
+
+ true
+ $(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)\
+ $(SolutionDir)\build\$(ProjectName)\obj\$(Platform)\$(Configuration)\
+
+
+ false
+ $(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)\
+ $(SolutionDir)\build\$(ProjectName)\obj\$(Platform)\$(Configuration)\
+
+
+ false
+ $(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)\
+ $(SolutionDir)\build\$(ProjectName)\obj\$(Platform)\$(Configuration)\
+
+
+ false
+ $(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)\
+ $(SolutionDir)\build\$(ProjectName)\obj\$(Platform)\$(Configuration)\
+
+
+ false
+ $(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)\
+ $(SolutionDir)\build\$(ProjectName)\obj\$(Platform)\$(Configuration)\
+
+
+ false
+ $(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)\
+ $(SolutionDir)\build\$(ProjectName)\obj\$(Platform)\$(Configuration)\
+
+
+ false
+ $(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)\
+ $(SolutionDir)\build\$(ProjectName)\obj\$(Platform)\$(Configuration)\
+
+
+ $(SolutionDir)..\..\examples\shaders
+ WindowsLocalDebugger
+
+
+ $(SolutionDir)..\..\examples\shaders
+ WindowsLocalDebugger
+
+
+ $(SolutionDir)..\..\examples\shaders
+ WindowsLocalDebugger
+
+
+ $(SolutionDir)..\..\examples\shaders
+ WindowsLocalDebugger
+
+
+ $(SolutionDir)..\..\examples\shaders
+ WindowsLocalDebugger
+
+
+ $(SolutionDir)..\..\examples\shaders
+ WindowsLocalDebugger
+
+
+ $(SolutionDir)..\..\examples\shaders
+ WindowsLocalDebugger
+
+
+ $(SolutionDir)..\..\examples\shaders
+ WindowsLocalDebugger
+
+
+ $(SolutionDir)..\..\examples\shaders
+ WindowsLocalDebugger
+
+
+ $(SolutionDir)..\..\examples\shaders
+ WindowsLocalDebugger
+
+
+ $(SolutionDir)..\..\examples\shaders
+ WindowsLocalDebugger
+
+
+ $(SolutionDir)..\..\examples\shaders
+ WindowsLocalDebugger
+
+
+
+
+
+ Level3
+ Disabled
+ WIN32;_DEBUG;_CONSOLE;PLATFORM_DESKTOP;%(PreprocessorDefinitions)
+ CompileAsC
+ $(SolutionDir)..\..\src;%(AdditionalIncludeDirectories)
+
+
+ Console
+ true
+ $(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\
+ raylib.lib;opengl32.lib;kernel32.lib;user32.lib;gdi32.lib;winmm.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;%(AdditionalDependencies)
+
+
+
+
+
+
+ Level3
+ Disabled
+ WIN32;_DEBUG;_CONSOLE;PLATFORM_DESKTOP;%(PreprocessorDefinitions)
+ CompileAsC
+ $(SolutionDir)..\..\src;%(AdditionalIncludeDirectories)
+ /FS %(AdditionalOptions)
+
+
+ Console
+ true
+ $(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\
+ raylib.lib;opengl32.lib;kernel32.lib;user32.lib;gdi32.lib;winmm.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;%(AdditionalDependencies)
+
+
+
+
+
+
+ Level3
+ Disabled
+ WIN32;_DEBUG;_CONSOLE;PLATFORM_DESKTOP;%(PreprocessorDefinitions)
+ CompileAsC
+ $(SolutionDir)..\..\src;%(AdditionalIncludeDirectories)
+ /FS %(AdditionalOptions)
+
+
+ Console
+ true
+ $(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\
+ raylib.lib;opengl32.lib;kernel32.lib;user32.lib;gdi32.lib;winmm.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;%(AdditionalDependencies)
+
+
+
+
+
+
+ Level3
+ Disabled
+ WIN32;_DEBUG;_CONSOLE;PLATFORM_DESKTOP;%(PreprocessorDefinitions)
+ CompileAsC
+ $(SolutionDir)..\..\src;%(AdditionalIncludeDirectories)
+
+
+ Console
+ true
+ $(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\
+ raylib.lib;opengl32.lib;kernel32.lib;user32.lib;gdi32.lib;winmm.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;%(AdditionalDependencies)
+
+
+ xcopy /y /d "$(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\raylib.dll" "$(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)"
+ Copy Debug DLL to output directory
+
+
+
+
+
+
+ Level3
+ Disabled
+ WIN32;_DEBUG;_CONSOLE;PLATFORM_DESKTOP;%(PreprocessorDefinitions)
+ CompileAsC
+ $(SolutionDir)..\..\src;%(AdditionalIncludeDirectories)
+
+
+ Console
+ true
+ $(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\
+ raylib.lib;opengl32.lib;kernel32.lib;user32.lib;gdi32.lib;winmm.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;%(AdditionalDependencies)
+
+
+ xcopy /y /d "$(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\raylib.dll" "$(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)"
+ Copy Debug DLL to output directory
+
+
+
+
+
+
+ Level3
+ Disabled
+ WIN32;_DEBUG;_CONSOLE;PLATFORM_DESKTOP;%(PreprocessorDefinitions)
+ CompileAsC
+ $(SolutionDir)..\..\src;%(AdditionalIncludeDirectories)
+
+
+ Console
+ true
+ $(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\
+ raylib.lib;opengl32.lib;kernel32.lib;user32.lib;gdi32.lib;winmm.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;%(AdditionalDependencies)
+
+
+ xcopy /y /d "$(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\raylib.dll" "$(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)"
+ Copy Debug DLL to output directory
+
+
+
+
+ Level3
+
+
+ MaxSpeed
+ true
+ true
+ WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions);PLATFORM_DESKTOP
+ $(SolutionDir)..\..\src;%(AdditionalIncludeDirectories)
+ CompileAsC
+ true
+
+
+ Console
+ true
+ true
+ true
+ raylib.lib;opengl32.lib;kernel32.lib;user32.lib;gdi32.lib;winmm.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;%(AdditionalDependencies)
+ $(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\
+
+
+
+
+ Level3
+
+
+ MaxSpeed
+ true
+ true
+ WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions);PLATFORM_DESKTOP
+ $(SolutionDir)..\..\src;%(AdditionalIncludeDirectories)
+ CompileAsC
+ true
+
+
+ Console
+ true
+ true
+ true
+ raylib.lib;opengl32.lib;kernel32.lib;user32.lib;gdi32.lib;winmm.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;%(AdditionalDependencies)
+ $(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\
+
+
+
+
+ Level3
+
+
+ MaxSpeed
+ true
+ true
+ WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions);PLATFORM_DESKTOP
+ $(SolutionDir)..\..\src;%(AdditionalIncludeDirectories)
+ CompileAsC
+ true
+
+
+ Console
+ true
+ true
+ true
+ raylib.lib;opengl32.lib;kernel32.lib;user32.lib;gdi32.lib;winmm.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;%(AdditionalDependencies)
+ $(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\
+
+
+
+
+ Level3
+
+
+ MaxSpeed
+ true
+ true
+ WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions);PLATFORM_DESKTOP
+ $(SolutionDir)..\..\src;%(AdditionalIncludeDirectories)
+ CompileAsC
+ true
+
+
+ Console
+ true
+ true
+ true
+ raylib.lib;opengl32.lib;kernel32.lib;user32.lib;gdi32.lib;winmm.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;%(AdditionalDependencies)
+ $(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\
+
+
+ xcopy /y /d "$(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\raylib.dll" "$(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)"
+
+
+ Copy Release DLL to output directory
+
+
+
+
+ Level3
+
+
+ MaxSpeed
+ true
+ true
+ WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions);PLATFORM_DESKTOP
+ $(SolutionDir)..\..\src;%(AdditionalIncludeDirectories)
+ CompileAsC
+ true
+
+
+ Console
+ true
+ true
+ true
+ raylib.lib;opengl32.lib;kernel32.lib;user32.lib;gdi32.lib;winmm.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;%(AdditionalDependencies)
+ $(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\
+
+
+ xcopy /y /d "$(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\raylib.dll" "$(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)"
+
+
+ Copy Release DLL to output directory
+
+
+
+
+ Level3
+
+
+ MaxSpeed
+ true
+ true
+ WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions);PLATFORM_DESKTOP
+ $(SolutionDir)..\..\src;%(AdditionalIncludeDirectories)
+ CompileAsC
+ true
+
+
+ Console
+ true
+ true
+ true
+ raylib.lib;opengl32.lib;kernel32.lib;user32.lib;gdi32.lib;winmm.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;%(AdditionalDependencies)
+ $(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\
+
+
+ xcopy /y /d "$(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\raylib.dll" "$(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)"
+
+
+ Copy Release DLL to output directory
+
+
+
+
+
+
+
+
+
+
+ {e89d61ac-55de-4482-afd4-df7242ebc859}
+
+
+
+
+
+
\ No newline at end of file
diff --git a/projects/VS2022/examples/shapes_easings_testbed.vcxproj b/projects/VS2022/examples/shapes_easings_testbed.vcxproj
new file mode 100644
index 000000000..b2d63b10c
--- /dev/null
+++ b/projects/VS2022/examples/shapes_easings_testbed.vcxproj
@@ -0,0 +1,569 @@
+
+
+
+
+ Debug.DLL
+ ARM64
+
+
+ Debug.DLL
+ Win32
+
+
+ Debug.DLL
+ x64
+
+
+ Debug
+ ARM64
+
+
+ Debug
+ Win32
+
+
+ Debug
+ x64
+
+
+ Release.DLL
+ ARM64
+
+
+ Release.DLL
+ Win32
+
+
+ Release.DLL
+ x64
+
+
+ Release
+ ARM64
+
+
+ Release
+ Win32
+
+
+ Release
+ x64
+
+
+
+ {4250CE87-9AA0-43BB-AB47-0636548922B5}
+ Win32Proj
+ shapes_easings_testbed
+ 10.0
+ shapes_easings_testbed
+
+
+
+ Application
+ true
+ $(DefaultPlatformToolset)
+ Unicode
+
+
+ Application
+ true
+ $(DefaultPlatformToolset)
+ Unicode
+
+
+ Application
+ true
+ $(DefaultPlatformToolset)
+ Unicode
+
+
+ Application
+ true
+ $(DefaultPlatformToolset)
+ Unicode
+
+
+ Application
+ true
+ $(DefaultPlatformToolset)
+ Unicode
+
+
+ Application
+ true
+ $(DefaultPlatformToolset)
+ Unicode
+
+
+ Application
+ false
+ $(DefaultPlatformToolset)
+ true
+ Unicode
+
+
+ Application
+ false
+ $(DefaultPlatformToolset)
+ true
+ Unicode
+
+
+ Application
+ false
+ $(DefaultPlatformToolset)
+ true
+ Unicode
+
+
+ Application
+ false
+ $(DefaultPlatformToolset)
+ true
+ Unicode
+
+
+ Application
+ false
+ $(DefaultPlatformToolset)
+ true
+ Unicode
+
+
+ Application
+ false
+ $(DefaultPlatformToolset)
+ true
+ Unicode
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ true
+ $(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)\
+ $(SolutionDir)\build\$(ProjectName)\obj\$(Platform)\$(Configuration)\
+
+
+ true
+ $(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)\
+ $(SolutionDir)\build\$(ProjectName)\obj\$(Platform)\$(Configuration)\
+
+
+ true
+ $(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)\
+ $(SolutionDir)\build\$(ProjectName)\obj\$(Platform)\$(Configuration)\
+
+
+ true
+ $(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)\
+ $(SolutionDir)\build\$(ProjectName)\obj\$(Platform)\$(Configuration)\
+
+
+ true
+ $(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)\
+ $(SolutionDir)\build\$(ProjectName)\obj\$(Platform)\$(Configuration)\
+
+
+ true
+ $(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)\
+ $(SolutionDir)\build\$(ProjectName)\obj\$(Platform)\$(Configuration)\
+
+
+ false
+ $(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)\
+ $(SolutionDir)\build\$(ProjectName)\obj\$(Platform)\$(Configuration)\
+
+
+ false
+ $(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)\
+ $(SolutionDir)\build\$(ProjectName)\obj\$(Platform)\$(Configuration)\
+
+
+ false
+ $(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)\
+ $(SolutionDir)\build\$(ProjectName)\obj\$(Platform)\$(Configuration)\
+
+
+ false
+ $(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)\
+ $(SolutionDir)\build\$(ProjectName)\obj\$(Platform)\$(Configuration)\
+
+
+ false
+ $(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)\
+ $(SolutionDir)\build\$(ProjectName)\obj\$(Platform)\$(Configuration)\
+
+
+ false
+ $(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)\
+ $(SolutionDir)\build\$(ProjectName)\obj\$(Platform)\$(Configuration)\
+
+
+ $(SolutionDir)..\..\examples\shapes
+ WindowsLocalDebugger
+
+
+ $(SolutionDir)..\..\examples\shapes
+ WindowsLocalDebugger
+
+
+ $(SolutionDir)..\..\examples\shapes
+ WindowsLocalDebugger
+
+
+ $(SolutionDir)..\..\examples\shapes
+ WindowsLocalDebugger
+
+
+ $(SolutionDir)..\..\examples\shapes
+ WindowsLocalDebugger
+
+
+ $(SolutionDir)..\..\examples\shapes
+ WindowsLocalDebugger
+
+
+ $(SolutionDir)..\..\examples\shapes
+ WindowsLocalDebugger
+
+
+ $(SolutionDir)..\..\examples\shapes
+ WindowsLocalDebugger
+
+
+ $(SolutionDir)..\..\examples\shapes
+ WindowsLocalDebugger
+
+
+ $(SolutionDir)..\..\examples\shapes
+ WindowsLocalDebugger
+
+
+ $(SolutionDir)..\..\examples\shapes
+ WindowsLocalDebugger
+
+
+ $(SolutionDir)..\..\examples\shapes
+ WindowsLocalDebugger
+
+
+
+
+
+ Level3
+ Disabled
+ WIN32;_DEBUG;_CONSOLE;PLATFORM_DESKTOP;%(PreprocessorDefinitions)
+ CompileAsC
+ $(SolutionDir)..\..\src;%(AdditionalIncludeDirectories)
+
+
+ Console
+ true
+ $(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\
+ raylib.lib;opengl32.lib;kernel32.lib;user32.lib;gdi32.lib;winmm.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;%(AdditionalDependencies)
+
+
+
+
+
+
+ Level3
+ Disabled
+ WIN32;_DEBUG;_CONSOLE;PLATFORM_DESKTOP;%(PreprocessorDefinitions)
+ CompileAsC
+ $(SolutionDir)..\..\src;%(AdditionalIncludeDirectories)
+ /FS %(AdditionalOptions)
+
+
+ Console
+ true
+ $(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\
+ raylib.lib;opengl32.lib;kernel32.lib;user32.lib;gdi32.lib;winmm.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;%(AdditionalDependencies)
+
+
+
+
+
+
+ Level3
+ Disabled
+ WIN32;_DEBUG;_CONSOLE;PLATFORM_DESKTOP;%(PreprocessorDefinitions)
+ CompileAsC
+ $(SolutionDir)..\..\src;%(AdditionalIncludeDirectories)
+ /FS %(AdditionalOptions)
+
+
+ Console
+ true
+ $(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\
+ raylib.lib;opengl32.lib;kernel32.lib;user32.lib;gdi32.lib;winmm.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;%(AdditionalDependencies)
+
+
+
+
+
+
+ Level3
+ Disabled
+ WIN32;_DEBUG;_CONSOLE;PLATFORM_DESKTOP;%(PreprocessorDefinitions)
+ CompileAsC
+ $(SolutionDir)..\..\src;%(AdditionalIncludeDirectories)
+
+
+ Console
+ true
+ $(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\
+ raylib.lib;opengl32.lib;kernel32.lib;user32.lib;gdi32.lib;winmm.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;%(AdditionalDependencies)
+
+
+ xcopy /y /d "$(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\raylib.dll" "$(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)"
+ Copy Debug DLL to output directory
+
+
+
+
+
+
+ Level3
+ Disabled
+ WIN32;_DEBUG;_CONSOLE;PLATFORM_DESKTOP;%(PreprocessorDefinitions)
+ CompileAsC
+ $(SolutionDir)..\..\src;%(AdditionalIncludeDirectories)
+
+
+ Console
+ true
+ $(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\
+ raylib.lib;opengl32.lib;kernel32.lib;user32.lib;gdi32.lib;winmm.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;%(AdditionalDependencies)
+
+
+ xcopy /y /d "$(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\raylib.dll" "$(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)"
+ Copy Debug DLL to output directory
+
+
+
+
+
+
+ Level3
+ Disabled
+ WIN32;_DEBUG;_CONSOLE;PLATFORM_DESKTOP;%(PreprocessorDefinitions)
+ CompileAsC
+ $(SolutionDir)..\..\src;%(AdditionalIncludeDirectories)
+
+
+ Console
+ true
+ $(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\
+ raylib.lib;opengl32.lib;kernel32.lib;user32.lib;gdi32.lib;winmm.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;%(AdditionalDependencies)
+
+
+ xcopy /y /d "$(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\raylib.dll" "$(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)"
+ Copy Debug DLL to output directory
+
+
+
+
+ Level3
+
+
+ MaxSpeed
+ true
+ true
+ WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions);PLATFORM_DESKTOP
+ $(SolutionDir)..\..\src;%(AdditionalIncludeDirectories)
+ CompileAsC
+ true
+
+
+ Console
+ true
+ true
+ true
+ raylib.lib;opengl32.lib;kernel32.lib;user32.lib;gdi32.lib;winmm.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;%(AdditionalDependencies)
+ $(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\
+
+
+
+
+ Level3
+
+
+ MaxSpeed
+ true
+ true
+ WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions);PLATFORM_DESKTOP
+ $(SolutionDir)..\..\src;%(AdditionalIncludeDirectories)
+ CompileAsC
+ true
+
+
+ Console
+ true
+ true
+ true
+ raylib.lib;opengl32.lib;kernel32.lib;user32.lib;gdi32.lib;winmm.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;%(AdditionalDependencies)
+ $(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\
+
+
+
+
+ Level3
+
+
+ MaxSpeed
+ true
+ true
+ WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions);PLATFORM_DESKTOP
+ $(SolutionDir)..\..\src;%(AdditionalIncludeDirectories)
+ CompileAsC
+ true
+
+
+ Console
+ true
+ true
+ true
+ raylib.lib;opengl32.lib;kernel32.lib;user32.lib;gdi32.lib;winmm.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;%(AdditionalDependencies)
+ $(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\
+
+
+
+
+ Level3
+
+
+ MaxSpeed
+ true
+ true
+ WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions);PLATFORM_DESKTOP
+ $(SolutionDir)..\..\src;%(AdditionalIncludeDirectories)
+ CompileAsC
+ true
+
+
+ Console
+ true
+ true
+ true
+ raylib.lib;opengl32.lib;kernel32.lib;user32.lib;gdi32.lib;winmm.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;%(AdditionalDependencies)
+ $(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\
+
+
+ xcopy /y /d "$(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\raylib.dll" "$(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)"
+
+
+ Copy Release DLL to output directory
+
+
+
+
+ Level3
+
+
+ MaxSpeed
+ true
+ true
+ WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions);PLATFORM_DESKTOP
+ $(SolutionDir)..\..\src;%(AdditionalIncludeDirectories)
+ CompileAsC
+ true
+
+
+ Console
+ true
+ true
+ true
+ raylib.lib;opengl32.lib;kernel32.lib;user32.lib;gdi32.lib;winmm.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;%(AdditionalDependencies)
+ $(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\
+
+
+ xcopy /y /d "$(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\raylib.dll" "$(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)"
+
+
+ Copy Release DLL to output directory
+
+
+
+
+ Level3
+
+
+ MaxSpeed
+ true
+ true
+ WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions);PLATFORM_DESKTOP
+ $(SolutionDir)..\..\src;%(AdditionalIncludeDirectories)
+ CompileAsC
+ true
+
+
+ Console
+ true
+ true
+ true
+ raylib.lib;opengl32.lib;kernel32.lib;user32.lib;gdi32.lib;winmm.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;%(AdditionalDependencies)
+ $(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\
+
+
+ xcopy /y /d "$(SolutionDir)\build\raylib\bin\$(Platform)\$(Configuration)\raylib.dll" "$(SolutionDir)\build\$(ProjectName)\bin\$(Platform)\$(Configuration)"
+
+
+ Copy Release DLL to output directory
+
+
+
+
+
+
+
+
+
+
+ {e89d61ac-55de-4482-afd4-df7242ebc859}
+
+
+
+
+
+
\ No newline at end of file
diff --git a/projects/VS2022/raylib.sln b/projects/VS2022/raylib.sln
index 47e83ef4c..873db235b 100644
--- a/projects/VS2022/raylib.sln
+++ b/projects/VS2022/raylib.sln
@@ -1,5670 +1,5669 @@
-
-Microsoft Visual Studio Solution File, Format Version 12.00
-# Visual Studio Version 17
-VisualStudioVersion = 17.0.31912.275
-MinimumVisualStudioVersion = 10.0.40219.1
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "raylib", "raylib\raylib.vcxproj", "{E89D61AC-55DE-4482-AFD4-DF7242EBC859}"
-EndProject
-Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "examples", "examples", "{8716DC0F-4FDE-4F57-8E25-5F78DFB80FE1}"
-EndProject
-Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "core", "core", "{6C82BAAE-BDDF-457D-8FA8-7E2490B07035}"
-EndProject
-Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "shapes", "shapes", "{278D8859-20B1-428F-8448-064F46E1F021}"
-EndProject
-Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "textures", "textures", "{DA049009-21FF-4AC0-84E4-830DD1BCD0CE}"
-EndProject
-Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "text", "text", "{8D3C83B7-F1E0-4C2E-9E34-EE5F6AB2502A}"
-EndProject
-Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "models", "models", "{AF5BEC5C-1F2B-4DA8-B12D-D09FE569237C}"
-EndProject
-Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "shaders", "shaders", "{5317807F-61D4-4E0F-B6DC-2D9F12621ED9}"
-EndProject
-Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "audio", "audio", "{CC132A4D-D081-4C26-BFB9-AB11984054F8}"
-EndProject
-Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "others", "others", "{E9D708A5-9C1F-4B84-A795-C5F191801762}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "core_basic_window", "examples\core_basic_window.vcxproj", "{0981CA98-E4A5-4DF1-987F-A41D09131EFC}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "textures_sprite_animation", "examples\textures_sprite_animation.vcxproj", "{C25D2CC6-80CA-4C8A-BE3B-2E0F4EA5D0CC}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "textures_srcrec_dstrec", "examples\textures_srcrec_dstrec.vcxproj", "{103B292B-049B-4B15-85A1-9F902840DB2C}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "textures_image_drawing", "examples\textures_image_drawing.vcxproj", "{0C2D2F82-AE67-400C-B19C-8C9B957B132A}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "audio_module_playing", "examples\audio_module_playing.vcxproj", "{E6784F91-4E4E-4956-A079-73FAB1AC7BE6}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "audio_music_stream", "examples\audio_music_stream.vcxproj", "{BFB22AB2-041B-4A1B-80C0-1D4BE410C8A9}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "audio_raw_stream", "examples\audio_raw_stream.vcxproj", "{93A1F656-0D29-4C5E-B140-11F23FF5D6AB}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "audio_sound_loading", "examples\audio_sound_loading.vcxproj", "{F81C5819-85B6-4D2E-B6DC-104A7634461B}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "core_2d_camera", "examples\core_2d_camera.vcxproj", "{66CC5B13-881A-412F-8C51-746622A91C5A}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "core_2d_camera_platformer", "examples\core_2d_camera_platformer.vcxproj", "{CB75B7C9-4E00-43B8-B2A9-9ACB4FC40F9B}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "core_3d_camera_first_person", "examples\core_3d_camera_first_person.vcxproj", "{557138B0-7BE2-4392-B2E2-B45734031A62}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "core_3d_camera_free", "examples\core_3d_camera_free.vcxproj", "{9EED87BB-527F-4D05-9384-6D16CFD627A8}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "core_3d_camera_mode", "examples\core_3d_camera_mode.vcxproj", "{6D1CA2F1-7FCA-4249-9220-075C2DF4F965}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "core_3d_camera_split_screen", "examples\core_3d_camera_split_screen.vcxproj", "{946A1700-C7AA-46F0-AEF2-67C98B5722AC}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "core_3d_picking", "examples\core_3d_picking.vcxproj", "{FD193822-3D5C-4161-A147-884C2ABDE483}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "core_custom_logging", "examples\core_custom_logging.vcxproj", "{20AD0AC9-9159-4744-99CC-6AC5779D6B87}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "core_drop_files", "examples\core_drop_files.vcxproj", "{0199E349-0701-40BC-8A7F-06A54FFA3E7C}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "core_highdpi_demo", "examples\core_highdpi_demo.vcxproj", "{BCB71111-8505-4B35-8CEF-EC6115DC9D4D}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "core_input_gamepad", "examples\core_input_gamepad.vcxproj", "{8F19E3DA-8929-4000-87B5-3CA6929636CC}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "core_input_gestures", "examples\core_input_gestures.vcxproj", "{51A00565-5787-4911-9CC0-28403AA4909D}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "core_input_keys", "examples\core_input_keys.vcxproj", "{92B64AE7-D773-4F05-89F1-CE59BBF4F053}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "core_input_mouse", "examples\core_input_mouse.vcxproj", "{A2BA5E5C-FDB9-4939-B0B5-2B753A5E33D3}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "core_input_multitouch", "examples\core_input_multitouch.vcxproj", "{A643BB06-735D-47F3-BFE7-B6D3C36F7097}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "core_random_sequence", "examples\core_random_sequence.vcxproj", "{6B8BAAF1-75C7-4C68-80B8-0E2A9EABBD9A}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "core_random_values", "examples\core_random_values.vcxproj", "{B332DCA8-3599-4A99-917A-82261BDC27AC}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "core_scissor_test", "examples\core_scissor_test.vcxproj", "{59089B0C-AAB4-4532-B294-44DEAE7178B7}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "core_storage_values", "examples\core_storage_values.vcxproj", "{C298876B-6C12-4EA4-903B-33450BCD9884}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "core_vr_simulator", "examples\core_vr_simulator.vcxproj", "{83F586FA-C801-4979-ACCA-006BD628CC88}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "core_window_flags", "examples\core_window_flags.vcxproj", "{86CBE96B-F5FE-483C-BA4A-DC9B1D43AF22}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "core_window_letterbox", "examples\core_window_letterbox.vcxproj", "{FF2970AE-E2E9-405F-B321-D523A1BD44A0}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "core_world_screen", "examples\core_world_screen.vcxproj", "{79417CE2-FEEB-42F0-BC53-62D5267B19B1}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "models_animation_playing", "examples\models_animation_playing.vcxproj", "{AFDDE100-2D36-4749-817D-12E54C56312F}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "models_billboard_rendering", "examples\models_billboard_rendering.vcxproj", "{B7812167-50FB-4934-996F-DF6FE4CBBFDF}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "models_box_collisions", "examples\models_box_collisions.vcxproj", "{39DB56C7-05F8-492C-A8D4-F19E40FECB59}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "models_cubicmap_rendering", "examples\models_cubicmap_rendering.vcxproj", "{82F3D34B-8DB2-4C6A-98B1-132245DD9D99}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "models_first_person_maze", "examples\models_first_person_maze.vcxproj", "{CBD6C0F8-8200-4E9A-9D7C-6505A2AA4A62}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "models_geometric_shapes", "examples\models_geometric_shapes.vcxproj", "{14BA7F98-02CC-4648-9236-676BFF9458AF}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "models_heightmap_rendering", "examples\models_heightmap_rendering.vcxproj", "{0859A973-E4FE-4688-8D16-0253163FDE24}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "models_loading", "examples\models_loading.vcxproj", "{F3412853-2B6A-4334-8CF2-B796CDAE0850}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "models_mesh_generation", "examples\models_mesh_generation.vcxproj", "{BE097E8F-B6F3-45DC-8A27-E0EBC31AB912}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "models_mesh_picking", "examples\models_mesh_picking.vcxproj", "{D03F2C82-9553-4AFA-8F49-9234009122B6}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "models_orthographic_projection", "examples\models_orthographic_projection.vcxproj", "{FE232CA5-6C0D-4ADF-9A21-775D4DC048D3}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "models_rlgl_solar_system", "examples\models_rlgl_solar_system.vcxproj", "{A53CCF42-A972-478F-9336-0F618B3EC06A}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "models_skybox_rendering", "examples\models_skybox_rendering.vcxproj", "{0037A3CD-4F50-48B2-9AC3-5A0D1D16D2CA}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "models_waving_cubes", "examples\models_waving_cubes.vcxproj", "{870723DD-945A-4136-B65B-4AF3BF85369C}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "models_yaw_pitch_roll", "examples\models_yaw_pitch_roll.vcxproj", "{EA6488AD-445B-4835-87FB-EBC9E2EDAF97}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "textures_to_image", "examples\textures_to_image.vcxproj", "{E07B6DBE-3358-4BA0-AABF-CDD8F96AECF0}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "textures_sprite_explosion", "examples\textures_sprite_explosion.vcxproj", "{472BCBDC-62E0-441D-B2FD-0EE0FC6CEEB4}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "textures_sprite_button", "examples\textures_sprite_button.vcxproj", "{589C8E9B-0BB3-4D6D-A70C-0A28E469F20E}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "textures_raw_data", "examples\textures_raw_data.vcxproj", "{3AD868E6-8355-4F29-B5ED-7DE94AD786E7}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "textures_particles_blending", "examples\textures_particles_blending.vcxproj", "{2B78CF0A-5403-45E2-99BD-493F1679BCDB}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "textures_npatch_drawing", "examples\textures_npatch_drawing.vcxproj", "{0AB968E0-E993-45CE-8875-7453C96DF583}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "textures_mouse_painting", "examples\textures_mouse_painting.vcxproj", "{25923141-9859-4AFE-8168-0DF78322FC63}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "textures_logo_raylib", "examples\textures_logo_raylib.vcxproj", "{7E855020-7FA4-482D-B510-2E709354FE8B}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "textures_image_text", "examples\textures_image_text.vcxproj", "{9782E0C8-2BD3-4F67-B420-21CF19CA2435}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "textures_image_processing", "examples\textures_image_processing.vcxproj", "{9F4135E3-9814-452C-9B35-0EFBCD792B49}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "textures_image_loading", "examples\textures_image_loading.vcxproj", "{C45343E6-DAB6-4F3A-A00A-8BED71A098BE}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "textures_image_generation", "examples\textures_image_generation.vcxproj", "{B19DD336-538E-4091-A559-EAA717FEC899}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "textures_tiled_drawing", "examples\textures_tiled_drawing.vcxproj", "{0BF60202-43F7-48E9-8717-D31E56FA5BE0}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "textures_bunnymark", "examples\textures_bunnymark.vcxproj", "{4E863E5B-0B95-43BE-8D4F-B9EB6C394FEC}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "textures_blend_modes", "examples\textures_blend_modes.vcxproj", "{6D75CD88-1A03-4955-B8C7-ACFC3742154F}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "textures_background_scrolling", "examples\textures_background_scrolling.vcxproj", "{8DD0EB7E-668E-452D-91D7-906C64A9C8AC}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "text_writing_anim", "examples\text_writing_anim.vcxproj", "{F6FD9C75-AAA7-48C9-B19D-FD37C8FB9B7E}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "text_unicode_emojis", "examples\text_unicode_emojis.vcxproj", "{1FE8758D-7E8A-41F3-9B6D-FD50E9A2A03D}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "text_rectangle_bounds", "examples\text_rectangle_bounds.vcxproj", "{25BCB876-B60A-499B-9046-E9801CFD7780}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "text_sprite_fonts", "examples\text_sprite_fonts.vcxproj", "{56FB0A45-145F-4EAE-B2C8-E5833E682D8F}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "text_input_box", "examples\text_input_box.vcxproj", "{2BB0C1D4-9298-45AC-B244-67A99769A292}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "text_format_text", "examples\text_format_text.vcxproj", "{99A40FC5-9DB0-4B80-8D97-867EF00FA2CB}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "text_font_spritefont", "examples\text_font_spritefont.vcxproj", "{81064BCE-EEC1-43B0-9912-F05F2B54B11A}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "text_font_sdf", "examples\text_font_sdf.vcxproj", "{31B41997-3890-45E3-93FE-C57B363E9C0D}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "text_font_loading", "examples\text_font_loading.vcxproj", "{D550AB93-DF31-4B76-873F-F075018352F4}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "text_font_filters", "examples\text_font_filters.vcxproj", "{8CF3F7BA-4C99-43EB-B4F1-7CA346817D0A}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "shapes_rectangle_scaling", "examples\shapes_rectangle_scaling.vcxproj", "{F90FCDC5-EE14-4B89-96DB-4392E28F34AF}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "shapes_logo_raylib_anim", "examples\shapes_logo_raylib_anim.vcxproj", "{93A864C9-93B7-4E5C-ACE7-E8FC5F9EFF79}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "shapes_logo_raylib", "examples\shapes_logo_raylib.vcxproj", "{56E68E37-B3FC-4799-91AF-0CA10B6D55A5}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "shapes_lines_bezier", "examples\shapes_lines_bezier.vcxproj", "{03E7018C-44A2-4C46-9CE7-F2A135A2692B}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "shapes_following_eyes", "examples\shapes_following_eyes.vcxproj", "{F3F6FE4D-9D9E-451A-B0BA-81456104B672}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "shapes_basic_shapes", "examples\shapes_basic_shapes.vcxproj", "{C27794B5-1293-4EA7-BC0E-0F18E6325539}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "shapes_bouncing_ball", "examples\shapes_bouncing_ball.vcxproj", "{02F41059-12A2-4A96-8D77-07EFE4B108FD}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "shapes_collision_area", "examples\shapes_collision_area.vcxproj", "{B774E0B9-9514-4E88-975F-4EB6C3B8D519}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "shapes_colors_palette", "examples\shapes_colors_palette.vcxproj", "{D91367C2-2189-4859-A7FE-D2CAB84FA15C}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "shapes_circle_sector_drawing", "examples\shapes_circle_sector_drawing.vcxproj", "{33459B4E-1839-4856-BF6B-22480D11FE31}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "shapes_rounded_rectangle_drawing", "examples\shapes_rounded_rectangle_drawing.vcxproj", "{48871156-181A-475A-BD8D-200086A09675}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "shapes_ring_drawing", "examples\shapes_ring_drawing.vcxproj", "{C4416DA1-9E62-46BA-9CD3-F8963C79E1A1}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "shapes_easings_ball", "examples\shapes_easings_ball.vcxproj", "{1C49E35A-2838-49D9-9D5F-4B8134960EF6}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "shapes_easings_box", "examples\shapes_easings_box.vcxproj", "{F91142E2-A999-47F0-9E74-38C1E2930EBE}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "shapes_easings_rectangles", "examples\shapes_easings_rectangles.vcxproj", "{1EDD4BCF-345C-4065-8CBD-7285224293C3}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "shaders_basic_lighting", "examples\shaders_basic_lighting.vcxproj", "{A6B2A11B-0669-4AF5-A025-8DD02DBBE5EA}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "shaders_custom_uniform", "examples\shaders_custom_uniform.vcxproj", "{B176BB4A-CA31-4E2A-B790-3EA0ED2EE870}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "shaders_eratosthenes_sieve", "examples\shaders_eratosthenes_sieve.vcxproj", "{D08AA2A0-2F94-4BF5-B42D-E92450F03FD1}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "shaders_fog_rendering", "examples\shaders_fog_rendering.vcxproj", "{4A7D0ECA-D7CC-4E66-B741-C92E9C1B42FF}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "shaders_hot_reloading", "examples\shaders_hot_reloading.vcxproj", "{CF3755C4-937D-4ABF-B7B3-95140808717F}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "shaders_julia_set", "examples\shaders_julia_set.vcxproj", "{D34939FE-8873-4C53-8D6C-74DED78EA3C4}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "shaders_model_shader", "examples\shaders_model_shader.vcxproj", "{D408A730-363A-4ABF-BCEF-5D63DCC66042}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "shaders_multi_sample2d", "examples\shaders_multi_sample2d.vcxproj", "{F532AFBC-9E62-4A89-BB99-1044E4B2D8ED}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "shaders_palette_switch", "examples\shaders_palette_switch.vcxproj", "{52FB7463-C128-42AF-A02F-78F48473EA9A}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "shaders_postprocessing", "examples\shaders_postprocessing.vcxproj", "{7381D91E-5C72-48F0-AAB4-95C9B10D7484}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "shaders_raymarching_rendering", "examples\shaders_raymarching_rendering.vcxproj", "{D36EC43E-B31F-4CF4-8285-93A7A9D90189}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "shaders_mesh_instancing", "examples\shaders_mesh_instancing.vcxproj", "{274C0319-7E1E-4188-936B-8DF3331230B3}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "shaders_shapes_textures", "examples\shaders_shapes_textures.vcxproj", "{41BBCC10-CFDE-48A1-B2E0-A0EC6A668629}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "shaders_simple_mask", "examples\shaders_simple_mask.vcxproj", "{600C3D4F-0670-4DB4-B30F-520A729053B5}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "shaders_spotlight_rendering", "examples\shaders_spotlight_rendering.vcxproj", "{11F33A39-74B7-4018-B5F9-CC285A673A8F}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "shaders_texture_rendering", "examples\shaders_texture_rendering.vcxproj", "{A6F5E35E-B4A7-41B3-853A-75558E6E0715}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "shaders_texture_waves", "examples\shaders_texture_waves.vcxproj", "{291B4975-8EFF-4C7C-8AF3-44A77B8491B8}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "embedded_files_loading", "examples\embedded_files_loading.vcxproj", "{FDE6080B-E203-4066-910D-AD0302566008}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "easings_testbed", "examples\easings_testbed.vcxproj", "{E1B6D565-9D7C-46B7-9202-ECF54974DE50}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "rlgl_standalone", "examples\rlgl_standalone.vcxproj", "{C8765523-58F8-4C8E-9914-693396F6F0FF}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "models_loading_vox", "examples\models_loading_vox.vcxproj", "{2F1B955B-275E-4D8E-8864-06FEC44D7912}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "models_loading_gltf", "examples\models_loading_gltf.vcxproj", "{F5FC9279-DE63-4EF3-B31F-CFCEF9B11F71}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "text_codepoints_loading", "examples\text_codepoints_loading.vcxproj", "{F2DB2E59-76BF-4D81-859A-AFC289C046C0}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "core_window_should_close", "examples\core_window_should_close.vcxproj", "{3FE7E9B6-49AC-4246-A789-28DB4644567B}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "textures_fog_of_war", "examples\textures_fog_of_war.vcxproj", "{EBBBF4A0-2DA2-4DE6-B4FE-C6654A2417A0}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "textures_gif_player", "examples\textures_gif_player.vcxproj", "{191A5289-BA65-4638-A215-C521F0187313}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "core_2d_camera_mouse_zoom", "examples\core_2d_camera_mouse_zoom.vcxproj", "{3CFF7AB8-32CB-4D6D-9FED-53DBEF277359}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "core_basic_screen_manager", "examples\core_basic_screen_manager.vcxproj", "{8B1AF423-00F1-4924-AC54-F77D402D2AC9}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "core_custom_frame_control", "examples\core_custom_frame_control.vcxproj", "{658A1B85-554E-4A5D-973A-FFE592CDD5F2}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "rlgl_compute_shader", "examples\rlgl_compute_shader.vcxproj", "{07CA51AD-72AE-46A2-AAED-DC3E3F807976}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "text_3d_drawing", "examples\text_3d_drawing.vcxproj", "{27B110CC-43C0-400A-89D9-245E681647D7}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "textures_polygon_drawing", "examples\textures_polygon_drawing.vcxproj", "{1DE84812-E143-4C4B-A61D-9267AAD55401}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "audio_stream_effects", "examples\audio_stream_effects.vcxproj", "{4A87569C-4BD3-4113-B4B9-573D65B3D3F8}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "textures_textured_curve", "examples\textures_textured_curve.vcxproj", "{769FF0C1-4424-4FA3-BC44-D7A7DA312A06}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "models_loading_m3d", "examples\models_loading_m3d.vcxproj", "{6D9E00D8-2893-45E4-9363-3F7F61D416BD}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "shaders_depth_writing", "examples\shaders_depth_writing.vcxproj", "{70B35F59-AFC2-4D8F-8833-5314D2047A81}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "shaders_depth_rendering", "examples\shaders_depth_rendering.vcxproj", "{DFDE29A7-4F54-455D-B20B-D2BF79D3B3F7}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "shaders_hybrid_rendering", "examples\shaders_hybrid_rendering.vcxproj", "{3755E9F4-CB48-4EC3-B561-3B85964EBDEF}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "audio_sound_multi", "examples\audio_sound_multi.vcxproj", "{F81C5819-85B4-4D2E-B6DC-104A7634461B}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "core_2d_camera_split_screen", "examples\core_2d_camera_split_screen.vcxproj", "{CC62F7DB-D089-4677-8575-CAB7A7815C43}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "core_automation_events", "examples\core_automation_events.vcxproj", "{7AF97D44-707E-48DC-81CB-C9D8D7C9ED26}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "audio_mixed_processor", "examples\audio_mixed_processor.vcxproj", "{A4B0D971-3CD6-41C9-8AB2-055D25A33373}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "core_input_mouse_wheel", "examples\core_input_mouse_wheel.vcxproj", "{15CDD310-6980-42A6-8082-3A6B7730D13F}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "core_smooth_pixelperfect", "examples\core_smooth_pixelperfect.vcxproj", "{71DB4284-5B1C-4E86-9AF5-B91542D44A6F}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "models_textured_cube", "examples\models_textured_cube.vcxproj", "{4B39E5FC-0A96-4057-9AA5-8D5A52880DA7}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "shaders_deferred_rendering", "examples\shaders_deferred_rendering.vcxproj", "{88DE5AD6-0074-4A5A-BE22-C840153E35D5}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "shaders_texture_outline", "examples\shaders_texture_outline.vcxproj", "{A546E75A-5242-46E6-9A9E-6C91554EAB84}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "shaders_texture_tiling", "examples\shaders_texture_tiling.vcxproj", "{EFA150D4-F93B-4D7D-A69C-9E8B4663BECD}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "shapes_splines_drawing", "examples\shapes_splines_drawing.vcxproj", "{DF25E545-00FF-4E64-844C-7DF98991F901}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "shapes_top_down_lights", "examples\shapes_top_down_lights.vcxproj", "{703BE7BA-5B99-4F70-806D-3A259F6A991E}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "shapes_rectangle_advanced", "examples\shapes_rectangle_advanced.vcxproj", "{FAFEE2F9-24B0-4AF1-B512-433E9590033F}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "models_animation_gpu_skinning", "examples\models_animation_gpu_skinning.vcxproj", "{8245DAD9-D402-4D5C-8F45-32229CD3B263}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "shaders_shadowmap_rendering", "examples\shaders_shadowmap_rendering.vcxproj", "{41BBCC10-6FDE-48A1-B2E0-A0EC6A668629}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "models_bone_socket", "examples\models_bone_socket.vcxproj", "{3A7FE53D-35F7-49DC-9C9A-A5204A53523F}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "shaders_vertex_displacement", "examples\shaders_vertex_displacement.vcxproj", "{CCA63A76-D9FC-4130-9F67-4D97F9770D53}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "shaders_rounded_rectangle", "examples\shaders_rounded_rectangle.vcxproj", "{D3493FFE-8873-4C53-8F6C-74DEF78EA3C4}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "shapes_digital_clock", "examples\shapes_digital_clock.vcxproj", "{3384C257-3CFE-4A8F-838C-19DAC5C955DA}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "shapes_double_pendulum", "examples\shapes_double_pendulum.vcxproj", "{2B140378-125F-4DE9-AC37-2CC1B73D7254}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "textures_image_kernel", "examples\textures_image_kernel.vcxproj", "{F4C55B99-E1C5-496A-8AC2-40188C38F4F6}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "textures_image_rotate", "examples\textures_image_rotate.vcxproj", "{2AA91EED-2D32-4B09-84A3-53D41EED1005}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "textures_image_channel", "examples\textures_image_channel.vcxproj", "{EC0910F6-8D66-4509-BF57-A5EE7AE9485F}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "models_point_rendering", "examples\models_point_rendering.vcxproj", "{921391C6-7626-4212-9928-BC82BC785461}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "models_tesseract_view", "examples\models_tesseract_view.vcxproj", "{6B8C5711-6AB4-4023-9FDD-E9D976E8D18F}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "shaders_basic_pbr", "examples\shaders_basic_pbr.vcxproj", "{4DF6D5E4-6796-4257-B466-BCD62DEBBCF8}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "shaders_lightmap_rendering", "examples\shaders_lightmap_rendering.vcxproj", "{C54703BF-D68A-480D-BE27-49B62E45D582}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "audio_sound_positioning", "examples\audio_sound_positioning.vcxproj", "{9CD8BCAD-F212-4BCC-BA98-899743CE3279}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "core_input_virtual_controls", "examples\core_input_virtual_controls.vcxproj", "{0981CA28-E4A5-4DF1-987F-A41D09131EFC}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "core_3d_camera_fps", "examples\core_3d_camera_fps.vcxproj", "{6B1A933E-71B8-4C1F-9E79-02D98830E671}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "shaders_normalmap_rendering", "examples\shaders_normalmap_rendering.vcxproj", "{6BFF72EA-7362-4A3B-B6E5-9A3655BBBDA3}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "text_unicode_ranges", "examples\text_unicode_ranges.vcxproj", "{6777EC3C-077C-42FC-B4AD-B799CE55CCE4}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "core_input_gestures_testbed", "examples\core_input_gestures_testbed.vcxproj", "{A61DAD9C-271C-4E95-81AA-DB4CD58564D4}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "core_render_texture", "examples\core_render_texture.vcxproj", "{49C67F03-1A56-4F96-B278-39B66EC93678}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "text_inline_styling", "examples\text_inline_styling.vcxproj", "{D496308F-3C3C-40B3-A3ED-EA327D244B3E}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "core_undo_redo", "examples\core_undo_redo.vcxproj", "{3B27F358-2679-4F38-B297-17B536F580BB}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "core_input_actions", "examples\core_input_actions.vcxproj", "{718FCBD0-591D-448C-B7D5-9F1CA8544E7B}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "core_delta_time", "examples\core_delta_time.vcxproj", "{19CA0070-B4B2-4394-90B7-D0C259AA35BA}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "shapes_bullet_hell", "examples\shapes_bullet_hell.vcxproj", "{2CCCD9E4-9058-4291-BD89-39C979F0CA1E}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "shapes_vector_angle", "examples\shapes_vector_angle.vcxproj", "{9DB1F875-6E65-4195-B23F-ED8095C0B99C}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "models_basic_voxel", "examples\models_basic_voxel.vcxproj", "{52BA9067-A5FC-4CE8-82AD-7204ECFDEF9F}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "shapes_dashed_line", "examples\shapes_dashed_line.vcxproj", "{8E132D5A-2C00-48D0-8747-97E41356F26F}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "models_rotating_cube", "examples\models_rotating_cube.vcxproj", "{A4662163-83E7-4309-8CAA-B0BF13655FE6}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "shaders_ascii_rendering", "examples\shaders_ascii_rendering.vcxproj", "{5F4B766F-DD52-4B53-B6C3-BC7611E17F20}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "core_monitor_detector", "examples\core_monitor_detector.vcxproj", "{FF5F9EE9-29C5-40EE-BBCF-AE51B001FEC3}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "web_basic_window", "examples\web_basic_window.vcxproj", "{A9C422E7-0F03-4DBC-AC93-5C3EF4942DEC}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "shapes_kaleidoscope", "examples\shapes_kaleidoscope.vcxproj", "{0C442799-B09C-4CD1-9538-711B6E85E9BF}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "shapes_recursive_tree", "examples\shapes_recursive_tree.vcxproj", "{DFB40A10-F8B7-412A-BCC3-5EE49294D816}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "shapes_triangle_strip", "examples\shapes_triangle_strip.vcxproj", "{BB58A5FB-1A35-4471-86D0-A5189EC541B3}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "shapes_pie_chart", "examples\shapes_pie_chart.vcxproj", "{61997220-5383-4AE5-ABD4-5F45AE1B0F2A}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "core_directory_files", "examples\core_directory_files.vcxproj", "{7467E9AE-844F-444D-8A3F-17397544BA21}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "shapes_simple_particles", "examples\shapes_simple_particles.vcxproj", "{497FDF54-9762-4048-A833-61CC3980A0FB}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "text_words_alignment", "examples\text_words_alignment.vcxproj", "{29B00F47-BE91-4A1F-B87D-B1302F038316}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "core_clipboard_text", "examples\core_clipboard_text.vcxproj", "{124935CC-73BB-489E-92E8-4F922A85DB5D}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "shapes_clock_of_clocks", "examples\shapes_clock_of_clocks.vcxproj", "{AC215730-2B5F-4498-B7F5-5DB80AEFCA5F}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "shapes_mouse_trail", "examples\shapes_mouse_trail.vcxproj", "{0835E6BF-0170-4E99-A55C-E06E1EF4C3B2}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "shapes_starfield_effect", "examples\shapes_starfield_effect.vcxproj", "{EA4AD5A7-DB95-43C0-9A67-2D94146BCF91}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "core_highdpi_testbed", "examples\core_highdpi_testbed.vcxproj", "{1ACC8236-EF4E-44B0-BD0C-AB1D95D5890F}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "core_screen_recording", "examples\core_screen_recording.vcxproj", "{9DE2FC01-A839-4F89-8319-9071D4C54821}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "core_text_file_loading", "examples\core_text_file_loading.vcxproj", "{2F578155-D51F-4C03-AB7F-5C5122CA46CC}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "shaders_mandelbrot_set", "examples\shaders_mandelbrot_set.vcxproj", "{1C829D1A-892C-451C-AF0B-AC65C85F5CC6}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "shapes_math_angle_rotation", "examples\shapes_math_angle_rotation.vcxproj", "{84DE22BB-C25F-425C-A7FE-0120CF107B83}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "shaders_color_correction", "examples\shaders_color_correction.vcxproj", "{98152EDD-7E28-4FA3-89D8-B636ED5D5F65}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "shapes_math_sine_cosine", "examples\shapes_math_sine_cosine.vcxproj", "{B7FDD40F-DDA4-468E-9C40-EEB175964A26}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "models_decals", "examples\models_decals.vcxproj", "{028F0967-B253-45DA-B1C4-FACCE45D0D8D}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "shapes_lines_drawing", "examples\shapes_lines_drawing.vcxproj", "{666346D7-C84B-498D-AE17-53B20C62DB1A}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "core_viewport_scaling", "examples\core_viewport_scaling.vcxproj", "{AD66AA6A-1E36-4FF0-8670-4F9834BCDB91}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "core_compute_hash", "examples\core_compute_hash.vcxproj", "{6C897101-BE52-4387-8AA2-062123A76BA1}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "textures_screen_buffer", "examples\textures_screen_buffer.vcxproj", "{4E9D2828-EE83-40C8-97E0-137EEDFBAAAD}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "audio_spectrum_visualizer", "examples\audio_spectrum_visualizer.vcxproj", "{2B3CED91-973F-4936-9DD4-CC8B1C8ACC68}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "models_directional_billboard", "examples\models_directional_billboard.vcxproj", "{30011884-25EE-42C9-BB15-888CAFB1AA6E}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "shapes_rlgl_color_wheel", "examples\shapes_rlgl_color_wheel.vcxproj", "{32FE2658-1D70-442E-8672-0AC5C6F0BD7B}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "shapes_rlgl_triangle", "examples\shapes_rlgl_triangle.vcxproj", "{842B6472-4AA6-4C2B-A5E5-A62F80DE2C4F}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "textures_sprite_stacking", "examples\textures_sprite_stacking.vcxproj", "{FC4DEBD2-4B17-4534-8EEA-BB24A2DBEB5F}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "shapes_ball_physics", "examples\shapes_ball_physics.vcxproj", "{0653AFAF-5578-4C02-AF29-0C873E7634AE}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "shaders_game_of_life", "examples\shaders_game_of_life.vcxproj", "{071E64F3-1396-4A97-97CA-98CAC059B168}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "shapes_penrose_tile", "examples\shapes_penrose_tile.vcxproj", "{7883D076-CA8F-4FF7-8B5D-0DFF41CEF8FC}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "text_strings_management", "examples\text_strings_management.vcxproj", "{1F4722E7-F78E-413F-A106-D3490211EA57}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "textures_cellular_automata", "examples\textures_cellular_automata.vcxproj", "{0A0FC982-6E31-401F-BA77-3C5E8AB02C68}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "shapes_hilbert_curve", "examples\shapes_hilbert_curve.vcxproj", "{DC163251-16C3-4B72-B965-ACDBA0F02BD1}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "core_keyboard_testbed", "examples\core_keyboard_testbed.vcxproj", "{D35D2FDA-B53F-4F70-81CA-24D95812B89C}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "textures_framebuffer_rendering", "examples\textures_framebuffer_rendering.vcxproj", "{F8DC77C0-556C-4672-B5B3-D2FA4ADC505C}"
-EndProject
-Global
- GlobalSection(SolutionConfigurationPlatforms) = preSolution
- Debug.DLL|ARM64 = Debug.DLL|ARM64
- Debug.DLL|x64 = Debug.DLL|x64
- Debug.DLL|x86 = Debug.DLL|x86
- Debug|ARM64 = Debug|ARM64
- Debug|x64 = Debug|x64
- Debug|x86 = Debug|x86
- Release.DLL|ARM64 = Release.DLL|ARM64
- Release.DLL|x64 = Release.DLL|x64
- Release.DLL|x86 = Release.DLL|x86
- Release|ARM64 = Release|ARM64
- Release|x64 = Release|x64
- Release|x86 = Release|x86
- EndGlobalSection
- GlobalSection(ProjectConfigurationPlatforms) = postSolution
- {E89D61AC-55DE-4482-AFD4-DF7242EBC859}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
- {E89D61AC-55DE-4482-AFD4-DF7242EBC859}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
- {E89D61AC-55DE-4482-AFD4-DF7242EBC859}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
- {E89D61AC-55DE-4482-AFD4-DF7242EBC859}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
- {E89D61AC-55DE-4482-AFD4-DF7242EBC859}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
- {E89D61AC-55DE-4482-AFD4-DF7242EBC859}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
- {E89D61AC-55DE-4482-AFD4-DF7242EBC859}.Debug|ARM64.ActiveCfg = Debug|ARM64
- {E89D61AC-55DE-4482-AFD4-DF7242EBC859}.Debug|ARM64.Build.0 = Debug|ARM64
- {E89D61AC-55DE-4482-AFD4-DF7242EBC859}.Debug|x64.ActiveCfg = Debug|x64
- {E89D61AC-55DE-4482-AFD4-DF7242EBC859}.Debug|x64.Build.0 = Debug|x64
- {E89D61AC-55DE-4482-AFD4-DF7242EBC859}.Debug|x86.ActiveCfg = Debug|Win32
- {E89D61AC-55DE-4482-AFD4-DF7242EBC859}.Debug|x86.Build.0 = Debug|Win32
- {E89D61AC-55DE-4482-AFD4-DF7242EBC859}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
- {E89D61AC-55DE-4482-AFD4-DF7242EBC859}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
- {E89D61AC-55DE-4482-AFD4-DF7242EBC859}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
- {E89D61AC-55DE-4482-AFD4-DF7242EBC859}.Release.DLL|x64.Build.0 = Release.DLL|x64
- {E89D61AC-55DE-4482-AFD4-DF7242EBC859}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
- {E89D61AC-55DE-4482-AFD4-DF7242EBC859}.Release.DLL|x86.Build.0 = Release.DLL|Win32
- {E89D61AC-55DE-4482-AFD4-DF7242EBC859}.Release|ARM64.ActiveCfg = Release|ARM64
- {E89D61AC-55DE-4482-AFD4-DF7242EBC859}.Release|ARM64.Build.0 = Release|ARM64
- {E89D61AC-55DE-4482-AFD4-DF7242EBC859}.Release|x64.ActiveCfg = Release|x64
- {E89D61AC-55DE-4482-AFD4-DF7242EBC859}.Release|x64.Build.0 = Release|x64
- {E89D61AC-55DE-4482-AFD4-DF7242EBC859}.Release|x86.ActiveCfg = Release|Win32
- {E89D61AC-55DE-4482-AFD4-DF7242EBC859}.Release|x86.Build.0 = Release|Win32
- {0981CA98-E4A5-4DF1-987F-A41D09131EFC}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
- {0981CA98-E4A5-4DF1-987F-A41D09131EFC}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
- {0981CA98-E4A5-4DF1-987F-A41D09131EFC}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
- {0981CA98-E4A5-4DF1-987F-A41D09131EFC}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
- {0981CA98-E4A5-4DF1-987F-A41D09131EFC}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
- {0981CA98-E4A5-4DF1-987F-A41D09131EFC}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
- {0981CA98-E4A5-4DF1-987F-A41D09131EFC}.Debug|ARM64.ActiveCfg = Debug|ARM64
- {0981CA98-E4A5-4DF1-987F-A41D09131EFC}.Debug|ARM64.Build.0 = Debug|ARM64
- {0981CA98-E4A5-4DF1-987F-A41D09131EFC}.Debug|x64.ActiveCfg = Debug|x64
- {0981CA98-E4A5-4DF1-987F-A41D09131EFC}.Debug|x64.Build.0 = Debug|x64
- {0981CA98-E4A5-4DF1-987F-A41D09131EFC}.Debug|x86.ActiveCfg = Debug|Win32
- {0981CA98-E4A5-4DF1-987F-A41D09131EFC}.Debug|x86.Build.0 = Debug|Win32
- {0981CA98-E4A5-4DF1-987F-A41D09131EFC}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
- {0981CA98-E4A5-4DF1-987F-A41D09131EFC}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
- {0981CA98-E4A5-4DF1-987F-A41D09131EFC}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
- {0981CA98-E4A5-4DF1-987F-A41D09131EFC}.Release.DLL|x64.Build.0 = Release.DLL|x64
- {0981CA98-E4A5-4DF1-987F-A41D09131EFC}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
- {0981CA98-E4A5-4DF1-987F-A41D09131EFC}.Release.DLL|x86.Build.0 = Release.DLL|Win32
- {0981CA98-E4A5-4DF1-987F-A41D09131EFC}.Release|ARM64.ActiveCfg = Release|ARM64
- {0981CA98-E4A5-4DF1-987F-A41D09131EFC}.Release|ARM64.Build.0 = Release|ARM64
- {0981CA98-E4A5-4DF1-987F-A41D09131EFC}.Release|x64.ActiveCfg = Release|x64
- {0981CA98-E4A5-4DF1-987F-A41D09131EFC}.Release|x64.Build.0 = Release|x64
- {0981CA98-E4A5-4DF1-987F-A41D09131EFC}.Release|x86.ActiveCfg = Release|Win32
- {0981CA98-E4A5-4DF1-987F-A41D09131EFC}.Release|x86.Build.0 = Release|Win32
- {C25D2CC6-80CA-4C8A-BE3B-2E0F4EA5D0CC}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
- {C25D2CC6-80CA-4C8A-BE3B-2E0F4EA5D0CC}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
- {C25D2CC6-80CA-4C8A-BE3B-2E0F4EA5D0CC}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
- {C25D2CC6-80CA-4C8A-BE3B-2E0F4EA5D0CC}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
- {C25D2CC6-80CA-4C8A-BE3B-2E0F4EA5D0CC}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
- {C25D2CC6-80CA-4C8A-BE3B-2E0F4EA5D0CC}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
- {C25D2CC6-80CA-4C8A-BE3B-2E0F4EA5D0CC}.Debug|ARM64.ActiveCfg = Debug|ARM64
- {C25D2CC6-80CA-4C8A-BE3B-2E0F4EA5D0CC}.Debug|ARM64.Build.0 = Debug|ARM64
- {C25D2CC6-80CA-4C8A-BE3B-2E0F4EA5D0CC}.Debug|x64.ActiveCfg = Debug|x64
- {C25D2CC6-80CA-4C8A-BE3B-2E0F4EA5D0CC}.Debug|x64.Build.0 = Debug|x64
- {C25D2CC6-80CA-4C8A-BE3B-2E0F4EA5D0CC}.Debug|x86.ActiveCfg = Debug|Win32
- {C25D2CC6-80CA-4C8A-BE3B-2E0F4EA5D0CC}.Debug|x86.Build.0 = Debug|Win32
- {C25D2CC6-80CA-4C8A-BE3B-2E0F4EA5D0CC}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
- {C25D2CC6-80CA-4C8A-BE3B-2E0F4EA5D0CC}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
- {C25D2CC6-80CA-4C8A-BE3B-2E0F4EA5D0CC}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
- {C25D2CC6-80CA-4C8A-BE3B-2E0F4EA5D0CC}.Release.DLL|x64.Build.0 = Release.DLL|x64
- {C25D2CC6-80CA-4C8A-BE3B-2E0F4EA5D0CC}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
- {C25D2CC6-80CA-4C8A-BE3B-2E0F4EA5D0CC}.Release.DLL|x86.Build.0 = Release.DLL|Win32
- {C25D2CC6-80CA-4C8A-BE3B-2E0F4EA5D0CC}.Release|ARM64.ActiveCfg = Release|ARM64
- {C25D2CC6-80CA-4C8A-BE3B-2E0F4EA5D0CC}.Release|ARM64.Build.0 = Release|ARM64
- {C25D2CC6-80CA-4C8A-BE3B-2E0F4EA5D0CC}.Release|x64.ActiveCfg = Release|x64
- {C25D2CC6-80CA-4C8A-BE3B-2E0F4EA5D0CC}.Release|x64.Build.0 = Release|x64
- {C25D2CC6-80CA-4C8A-BE3B-2E0F4EA5D0CC}.Release|x86.ActiveCfg = Release|Win32
- {C25D2CC6-80CA-4C8A-BE3B-2E0F4EA5D0CC}.Release|x86.Build.0 = Release|Win32
- {103B292B-049B-4B15-85A1-9F902840DB2C}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
- {103B292B-049B-4B15-85A1-9F902840DB2C}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
- {103B292B-049B-4B15-85A1-9F902840DB2C}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
- {103B292B-049B-4B15-85A1-9F902840DB2C}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
- {103B292B-049B-4B15-85A1-9F902840DB2C}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
- {103B292B-049B-4B15-85A1-9F902840DB2C}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
- {103B292B-049B-4B15-85A1-9F902840DB2C}.Debug|ARM64.ActiveCfg = Debug|ARM64
- {103B292B-049B-4B15-85A1-9F902840DB2C}.Debug|ARM64.Build.0 = Debug|ARM64
- {103B292B-049B-4B15-85A1-9F902840DB2C}.Debug|x64.ActiveCfg = Debug|x64
- {103B292B-049B-4B15-85A1-9F902840DB2C}.Debug|x64.Build.0 = Debug|x64
- {103B292B-049B-4B15-85A1-9F902840DB2C}.Debug|x86.ActiveCfg = Debug|Win32
- {103B292B-049B-4B15-85A1-9F902840DB2C}.Debug|x86.Build.0 = Debug|Win32
- {103B292B-049B-4B15-85A1-9F902840DB2C}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
- {103B292B-049B-4B15-85A1-9F902840DB2C}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
- {103B292B-049B-4B15-85A1-9F902840DB2C}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
- {103B292B-049B-4B15-85A1-9F902840DB2C}.Release.DLL|x64.Build.0 = Release.DLL|x64
- {103B292B-049B-4B15-85A1-9F902840DB2C}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
- {103B292B-049B-4B15-85A1-9F902840DB2C}.Release.DLL|x86.Build.0 = Release.DLL|Win32
- {103B292B-049B-4B15-85A1-9F902840DB2C}.Release|ARM64.ActiveCfg = Release|ARM64
- {103B292B-049B-4B15-85A1-9F902840DB2C}.Release|ARM64.Build.0 = Release|ARM64
- {103B292B-049B-4B15-85A1-9F902840DB2C}.Release|x64.ActiveCfg = Release|x64
- {103B292B-049B-4B15-85A1-9F902840DB2C}.Release|x64.Build.0 = Release|x64
- {103B292B-049B-4B15-85A1-9F902840DB2C}.Release|x86.ActiveCfg = Release|Win32
- {103B292B-049B-4B15-85A1-9F902840DB2C}.Release|x86.Build.0 = Release|Win32
- {0C2D2F82-AE67-400C-B19C-8C9B957B132A}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
- {0C2D2F82-AE67-400C-B19C-8C9B957B132A}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
- {0C2D2F82-AE67-400C-B19C-8C9B957B132A}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
- {0C2D2F82-AE67-400C-B19C-8C9B957B132A}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
- {0C2D2F82-AE67-400C-B19C-8C9B957B132A}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
- {0C2D2F82-AE67-400C-B19C-8C9B957B132A}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
- {0C2D2F82-AE67-400C-B19C-8C9B957B132A}.Debug|ARM64.ActiveCfg = Debug|ARM64
- {0C2D2F82-AE67-400C-B19C-8C9B957B132A}.Debug|ARM64.Build.0 = Debug|ARM64
- {0C2D2F82-AE67-400C-B19C-8C9B957B132A}.Debug|x64.ActiveCfg = Debug|x64
- {0C2D2F82-AE67-400C-B19C-8C9B957B132A}.Debug|x64.Build.0 = Debug|x64
- {0C2D2F82-AE67-400C-B19C-8C9B957B132A}.Debug|x86.ActiveCfg = Debug|Win32
- {0C2D2F82-AE67-400C-B19C-8C9B957B132A}.Debug|x86.Build.0 = Debug|Win32
- {0C2D2F82-AE67-400C-B19C-8C9B957B132A}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
- {0C2D2F82-AE67-400C-B19C-8C9B957B132A}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
- {0C2D2F82-AE67-400C-B19C-8C9B957B132A}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
- {0C2D2F82-AE67-400C-B19C-8C9B957B132A}.Release.DLL|x64.Build.0 = Release.DLL|x64
- {0C2D2F82-AE67-400C-B19C-8C9B957B132A}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
- {0C2D2F82-AE67-400C-B19C-8C9B957B132A}.Release.DLL|x86.Build.0 = Release.DLL|Win32
- {0C2D2F82-AE67-400C-B19C-8C9B957B132A}.Release|ARM64.ActiveCfg = Release|ARM64
- {0C2D2F82-AE67-400C-B19C-8C9B957B132A}.Release|ARM64.Build.0 = Release|ARM64
- {0C2D2F82-AE67-400C-B19C-8C9B957B132A}.Release|x64.ActiveCfg = Release|x64
- {0C2D2F82-AE67-400C-B19C-8C9B957B132A}.Release|x64.Build.0 = Release|x64
- {0C2D2F82-AE67-400C-B19C-8C9B957B132A}.Release|x86.ActiveCfg = Release|Win32
- {0C2D2F82-AE67-400C-B19C-8C9B957B132A}.Release|x86.Build.0 = Release|Win32
- {E6784F91-4E4E-4956-A079-73FAB1AC7BE6}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
- {E6784F91-4E4E-4956-A079-73FAB1AC7BE6}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
- {E6784F91-4E4E-4956-A079-73FAB1AC7BE6}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
- {E6784F91-4E4E-4956-A079-73FAB1AC7BE6}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
- {E6784F91-4E4E-4956-A079-73FAB1AC7BE6}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
- {E6784F91-4E4E-4956-A079-73FAB1AC7BE6}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
- {E6784F91-4E4E-4956-A079-73FAB1AC7BE6}.Debug|ARM64.ActiveCfg = Debug|ARM64
- {E6784F91-4E4E-4956-A079-73FAB1AC7BE6}.Debug|ARM64.Build.0 = Debug|ARM64
- {E6784F91-4E4E-4956-A079-73FAB1AC7BE6}.Debug|x64.ActiveCfg = Debug|x64
- {E6784F91-4E4E-4956-A079-73FAB1AC7BE6}.Debug|x64.Build.0 = Debug|x64
- {E6784F91-4E4E-4956-A079-73FAB1AC7BE6}.Debug|x86.ActiveCfg = Debug|Win32
- {E6784F91-4E4E-4956-A079-73FAB1AC7BE6}.Debug|x86.Build.0 = Debug|Win32
- {E6784F91-4E4E-4956-A079-73FAB1AC7BE6}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
- {E6784F91-4E4E-4956-A079-73FAB1AC7BE6}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
- {E6784F91-4E4E-4956-A079-73FAB1AC7BE6}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
- {E6784F91-4E4E-4956-A079-73FAB1AC7BE6}.Release.DLL|x64.Build.0 = Release.DLL|x64
- {E6784F91-4E4E-4956-A079-73FAB1AC7BE6}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
- {E6784F91-4E4E-4956-A079-73FAB1AC7BE6}.Release.DLL|x86.Build.0 = Release.DLL|Win32
- {E6784F91-4E4E-4956-A079-73FAB1AC7BE6}.Release|ARM64.ActiveCfg = Release|ARM64
- {E6784F91-4E4E-4956-A079-73FAB1AC7BE6}.Release|ARM64.Build.0 = Release|ARM64
- {E6784F91-4E4E-4956-A079-73FAB1AC7BE6}.Release|x64.ActiveCfg = Release|x64
- {E6784F91-4E4E-4956-A079-73FAB1AC7BE6}.Release|x64.Build.0 = Release|x64
- {E6784F91-4E4E-4956-A079-73FAB1AC7BE6}.Release|x86.ActiveCfg = Release|Win32
- {E6784F91-4E4E-4956-A079-73FAB1AC7BE6}.Release|x86.Build.0 = Release|Win32
- {BFB22AB2-041B-4A1B-80C0-1D4BE410C8A9}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
- {BFB22AB2-041B-4A1B-80C0-1D4BE410C8A9}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
- {BFB22AB2-041B-4A1B-80C0-1D4BE410C8A9}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
- {BFB22AB2-041B-4A1B-80C0-1D4BE410C8A9}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
- {BFB22AB2-041B-4A1B-80C0-1D4BE410C8A9}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
- {BFB22AB2-041B-4A1B-80C0-1D4BE410C8A9}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
- {BFB22AB2-041B-4A1B-80C0-1D4BE410C8A9}.Debug|ARM64.ActiveCfg = Debug|ARM64
- {BFB22AB2-041B-4A1B-80C0-1D4BE410C8A9}.Debug|ARM64.Build.0 = Debug|ARM64
- {BFB22AB2-041B-4A1B-80C0-1D4BE410C8A9}.Debug|x64.ActiveCfg = Debug|x64
- {BFB22AB2-041B-4A1B-80C0-1D4BE410C8A9}.Debug|x64.Build.0 = Debug|x64
- {BFB22AB2-041B-4A1B-80C0-1D4BE410C8A9}.Debug|x86.ActiveCfg = Debug|Win32
- {BFB22AB2-041B-4A1B-80C0-1D4BE410C8A9}.Debug|x86.Build.0 = Debug|Win32
- {BFB22AB2-041B-4A1B-80C0-1D4BE410C8A9}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
- {BFB22AB2-041B-4A1B-80C0-1D4BE410C8A9}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
- {BFB22AB2-041B-4A1B-80C0-1D4BE410C8A9}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
- {BFB22AB2-041B-4A1B-80C0-1D4BE410C8A9}.Release.DLL|x64.Build.0 = Release.DLL|x64
- {BFB22AB2-041B-4A1B-80C0-1D4BE410C8A9}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
- {BFB22AB2-041B-4A1B-80C0-1D4BE410C8A9}.Release.DLL|x86.Build.0 = Release.DLL|Win32
- {BFB22AB2-041B-4A1B-80C0-1D4BE410C8A9}.Release|ARM64.ActiveCfg = Release|ARM64
- {BFB22AB2-041B-4A1B-80C0-1D4BE410C8A9}.Release|ARM64.Build.0 = Release|ARM64
- {BFB22AB2-041B-4A1B-80C0-1D4BE410C8A9}.Release|x64.ActiveCfg = Release|x64
- {BFB22AB2-041B-4A1B-80C0-1D4BE410C8A9}.Release|x64.Build.0 = Release|x64
- {BFB22AB2-041B-4A1B-80C0-1D4BE410C8A9}.Release|x86.ActiveCfg = Release|Win32
- {BFB22AB2-041B-4A1B-80C0-1D4BE410C8A9}.Release|x86.Build.0 = Release|Win32
- {93A1F656-0D29-4C5E-B140-11F23FF5D6AB}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
- {93A1F656-0D29-4C5E-B140-11F23FF5D6AB}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
- {93A1F656-0D29-4C5E-B140-11F23FF5D6AB}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
- {93A1F656-0D29-4C5E-B140-11F23FF5D6AB}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
- {93A1F656-0D29-4C5E-B140-11F23FF5D6AB}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
- {93A1F656-0D29-4C5E-B140-11F23FF5D6AB}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
- {93A1F656-0D29-4C5E-B140-11F23FF5D6AB}.Debug|ARM64.ActiveCfg = Debug|ARM64
- {93A1F656-0D29-4C5E-B140-11F23FF5D6AB}.Debug|ARM64.Build.0 = Debug|ARM64
- {93A1F656-0D29-4C5E-B140-11F23FF5D6AB}.Debug|x64.ActiveCfg = Debug|x64
- {93A1F656-0D29-4C5E-B140-11F23FF5D6AB}.Debug|x64.Build.0 = Debug|x64
- {93A1F656-0D29-4C5E-B140-11F23FF5D6AB}.Debug|x86.ActiveCfg = Debug|Win32
- {93A1F656-0D29-4C5E-B140-11F23FF5D6AB}.Debug|x86.Build.0 = Debug|Win32
- {93A1F656-0D29-4C5E-B140-11F23FF5D6AB}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
- {93A1F656-0D29-4C5E-B140-11F23FF5D6AB}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
- {93A1F656-0D29-4C5E-B140-11F23FF5D6AB}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
- {93A1F656-0D29-4C5E-B140-11F23FF5D6AB}.Release.DLL|x64.Build.0 = Release.DLL|x64
- {93A1F656-0D29-4C5E-B140-11F23FF5D6AB}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
- {93A1F656-0D29-4C5E-B140-11F23FF5D6AB}.Release.DLL|x86.Build.0 = Release.DLL|Win32
- {93A1F656-0D29-4C5E-B140-11F23FF5D6AB}.Release|ARM64.ActiveCfg = Release|ARM64
- {93A1F656-0D29-4C5E-B140-11F23FF5D6AB}.Release|ARM64.Build.0 = Release|ARM64
- {93A1F656-0D29-4C5E-B140-11F23FF5D6AB}.Release|x64.ActiveCfg = Release|x64
- {93A1F656-0D29-4C5E-B140-11F23FF5D6AB}.Release|x64.Build.0 = Release|x64
- {93A1F656-0D29-4C5E-B140-11F23FF5D6AB}.Release|x86.ActiveCfg = Release|Win32
- {93A1F656-0D29-4C5E-B140-11F23FF5D6AB}.Release|x86.Build.0 = Release|Win32
- {F81C5819-85B6-4D2E-B6DC-104A7634461B}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
- {F81C5819-85B6-4D2E-B6DC-104A7634461B}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
- {F81C5819-85B6-4D2E-B6DC-104A7634461B}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
- {F81C5819-85B6-4D2E-B6DC-104A7634461B}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
- {F81C5819-85B6-4D2E-B6DC-104A7634461B}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
- {F81C5819-85B6-4D2E-B6DC-104A7634461B}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
- {F81C5819-85B6-4D2E-B6DC-104A7634461B}.Debug|ARM64.ActiveCfg = Debug|ARM64
- {F81C5819-85B6-4D2E-B6DC-104A7634461B}.Debug|ARM64.Build.0 = Debug|ARM64
- {F81C5819-85B6-4D2E-B6DC-104A7634461B}.Debug|x64.ActiveCfg = Debug|x64
- {F81C5819-85B6-4D2E-B6DC-104A7634461B}.Debug|x64.Build.0 = Debug|x64
- {F81C5819-85B6-4D2E-B6DC-104A7634461B}.Debug|x86.ActiveCfg = Debug|Win32
- {F81C5819-85B6-4D2E-B6DC-104A7634461B}.Debug|x86.Build.0 = Debug|Win32
- {F81C5819-85B6-4D2E-B6DC-104A7634461B}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
- {F81C5819-85B6-4D2E-B6DC-104A7634461B}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
- {F81C5819-85B6-4D2E-B6DC-104A7634461B}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
- {F81C5819-85B6-4D2E-B6DC-104A7634461B}.Release.DLL|x64.Build.0 = Release.DLL|x64
- {F81C5819-85B6-4D2E-B6DC-104A7634461B}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
- {F81C5819-85B6-4D2E-B6DC-104A7634461B}.Release.DLL|x86.Build.0 = Release.DLL|Win32
- {F81C5819-85B6-4D2E-B6DC-104A7634461B}.Release|ARM64.ActiveCfg = Release|ARM64
- {F81C5819-85B6-4D2E-B6DC-104A7634461B}.Release|ARM64.Build.0 = Release|ARM64
- {F81C5819-85B6-4D2E-B6DC-104A7634461B}.Release|x64.ActiveCfg = Release|x64
- {F81C5819-85B6-4D2E-B6DC-104A7634461B}.Release|x64.Build.0 = Release|x64
- {F81C5819-85B6-4D2E-B6DC-104A7634461B}.Release|x86.ActiveCfg = Release|Win32
- {F81C5819-85B6-4D2E-B6DC-104A7634461B}.Release|x86.Build.0 = Release|Win32
- {66CC5B13-881A-412F-8C51-746622A91C5A}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
- {66CC5B13-881A-412F-8C51-746622A91C5A}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
- {66CC5B13-881A-412F-8C51-746622A91C5A}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
- {66CC5B13-881A-412F-8C51-746622A91C5A}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
- {66CC5B13-881A-412F-8C51-746622A91C5A}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
- {66CC5B13-881A-412F-8C51-746622A91C5A}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
- {66CC5B13-881A-412F-8C51-746622A91C5A}.Debug|ARM64.ActiveCfg = Debug|ARM64
- {66CC5B13-881A-412F-8C51-746622A91C5A}.Debug|ARM64.Build.0 = Debug|ARM64
- {66CC5B13-881A-412F-8C51-746622A91C5A}.Debug|x64.ActiveCfg = Debug|x64
- {66CC5B13-881A-412F-8C51-746622A91C5A}.Debug|x64.Build.0 = Debug|x64
- {66CC5B13-881A-412F-8C51-746622A91C5A}.Debug|x86.ActiveCfg = Debug|Win32
- {66CC5B13-881A-412F-8C51-746622A91C5A}.Debug|x86.Build.0 = Debug|Win32
- {66CC5B13-881A-412F-8C51-746622A91C5A}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
- {66CC5B13-881A-412F-8C51-746622A91C5A}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
- {66CC5B13-881A-412F-8C51-746622A91C5A}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
- {66CC5B13-881A-412F-8C51-746622A91C5A}.Release.DLL|x64.Build.0 = Release.DLL|x64
- {66CC5B13-881A-412F-8C51-746622A91C5A}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
- {66CC5B13-881A-412F-8C51-746622A91C5A}.Release.DLL|x86.Build.0 = Release.DLL|Win32
- {66CC5B13-881A-412F-8C51-746622A91C5A}.Release|ARM64.ActiveCfg = Release|ARM64
- {66CC5B13-881A-412F-8C51-746622A91C5A}.Release|ARM64.Build.0 = Release|ARM64
- {66CC5B13-881A-412F-8C51-746622A91C5A}.Release|x64.ActiveCfg = Release|x64
- {66CC5B13-881A-412F-8C51-746622A91C5A}.Release|x64.Build.0 = Release|x64
- {66CC5B13-881A-412F-8C51-746622A91C5A}.Release|x86.ActiveCfg = Release|Win32
- {66CC5B13-881A-412F-8C51-746622A91C5A}.Release|x86.Build.0 = Release|Win32
- {CB75B7C9-4E00-43B8-B2A9-9ACB4FC40F9B}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
- {CB75B7C9-4E00-43B8-B2A9-9ACB4FC40F9B}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
- {CB75B7C9-4E00-43B8-B2A9-9ACB4FC40F9B}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
- {CB75B7C9-4E00-43B8-B2A9-9ACB4FC40F9B}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
- {CB75B7C9-4E00-43B8-B2A9-9ACB4FC40F9B}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
- {CB75B7C9-4E00-43B8-B2A9-9ACB4FC40F9B}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
- {CB75B7C9-4E00-43B8-B2A9-9ACB4FC40F9B}.Debug|ARM64.ActiveCfg = Debug|ARM64
- {CB75B7C9-4E00-43B8-B2A9-9ACB4FC40F9B}.Debug|ARM64.Build.0 = Debug|ARM64
- {CB75B7C9-4E00-43B8-B2A9-9ACB4FC40F9B}.Debug|x64.ActiveCfg = Debug|x64
- {CB75B7C9-4E00-43B8-B2A9-9ACB4FC40F9B}.Debug|x64.Build.0 = Debug|x64
- {CB75B7C9-4E00-43B8-B2A9-9ACB4FC40F9B}.Debug|x86.ActiveCfg = Debug|Win32
- {CB75B7C9-4E00-43B8-B2A9-9ACB4FC40F9B}.Debug|x86.Build.0 = Debug|Win32
- {CB75B7C9-4E00-43B8-B2A9-9ACB4FC40F9B}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
- {CB75B7C9-4E00-43B8-B2A9-9ACB4FC40F9B}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
- {CB75B7C9-4E00-43B8-B2A9-9ACB4FC40F9B}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
- {CB75B7C9-4E00-43B8-B2A9-9ACB4FC40F9B}.Release.DLL|x64.Build.0 = Release.DLL|x64
- {CB75B7C9-4E00-43B8-B2A9-9ACB4FC40F9B}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
- {CB75B7C9-4E00-43B8-B2A9-9ACB4FC40F9B}.Release.DLL|x86.Build.0 = Release.DLL|Win32
- {CB75B7C9-4E00-43B8-B2A9-9ACB4FC40F9B}.Release|ARM64.ActiveCfg = Release|ARM64
- {CB75B7C9-4E00-43B8-B2A9-9ACB4FC40F9B}.Release|ARM64.Build.0 = Release|ARM64
- {CB75B7C9-4E00-43B8-B2A9-9ACB4FC40F9B}.Release|x64.ActiveCfg = Release|x64
- {CB75B7C9-4E00-43B8-B2A9-9ACB4FC40F9B}.Release|x64.Build.0 = Release|x64
- {CB75B7C9-4E00-43B8-B2A9-9ACB4FC40F9B}.Release|x86.ActiveCfg = Release|Win32
- {CB75B7C9-4E00-43B8-B2A9-9ACB4FC40F9B}.Release|x86.Build.0 = Release|Win32
- {557138B0-7BE2-4392-B2E2-B45734031A62}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
- {557138B0-7BE2-4392-B2E2-B45734031A62}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
- {557138B0-7BE2-4392-B2E2-B45734031A62}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
- {557138B0-7BE2-4392-B2E2-B45734031A62}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
- {557138B0-7BE2-4392-B2E2-B45734031A62}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
- {557138B0-7BE2-4392-B2E2-B45734031A62}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
- {557138B0-7BE2-4392-B2E2-B45734031A62}.Debug|ARM64.ActiveCfg = Debug|ARM64
- {557138B0-7BE2-4392-B2E2-B45734031A62}.Debug|ARM64.Build.0 = Debug|ARM64
- {557138B0-7BE2-4392-B2E2-B45734031A62}.Debug|x64.ActiveCfg = Debug|x64
- {557138B0-7BE2-4392-B2E2-B45734031A62}.Debug|x64.Build.0 = Debug|x64
- {557138B0-7BE2-4392-B2E2-B45734031A62}.Debug|x86.ActiveCfg = Debug|Win32
- {557138B0-7BE2-4392-B2E2-B45734031A62}.Debug|x86.Build.0 = Debug|Win32
- {557138B0-7BE2-4392-B2E2-B45734031A62}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
- {557138B0-7BE2-4392-B2E2-B45734031A62}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
- {557138B0-7BE2-4392-B2E2-B45734031A62}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
- {557138B0-7BE2-4392-B2E2-B45734031A62}.Release.DLL|x64.Build.0 = Release.DLL|x64
- {557138B0-7BE2-4392-B2E2-B45734031A62}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
- {557138B0-7BE2-4392-B2E2-B45734031A62}.Release.DLL|x86.Build.0 = Release.DLL|Win32
- {557138B0-7BE2-4392-B2E2-B45734031A62}.Release|ARM64.ActiveCfg = Release|ARM64
- {557138B0-7BE2-4392-B2E2-B45734031A62}.Release|ARM64.Build.0 = Release|ARM64
- {557138B0-7BE2-4392-B2E2-B45734031A62}.Release|x64.ActiveCfg = Release|x64
- {557138B0-7BE2-4392-B2E2-B45734031A62}.Release|x64.Build.0 = Release|x64
- {557138B0-7BE2-4392-B2E2-B45734031A62}.Release|x86.ActiveCfg = Release|Win32
- {557138B0-7BE2-4392-B2E2-B45734031A62}.Release|x86.Build.0 = Release|Win32
- {9EED87BB-527F-4D05-9384-6D16CFD627A8}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
- {9EED87BB-527F-4D05-9384-6D16CFD627A8}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
- {9EED87BB-527F-4D05-9384-6D16CFD627A8}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
- {9EED87BB-527F-4D05-9384-6D16CFD627A8}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
- {9EED87BB-527F-4D05-9384-6D16CFD627A8}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
- {9EED87BB-527F-4D05-9384-6D16CFD627A8}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
- {9EED87BB-527F-4D05-9384-6D16CFD627A8}.Debug|ARM64.ActiveCfg = Debug|ARM64
- {9EED87BB-527F-4D05-9384-6D16CFD627A8}.Debug|ARM64.Build.0 = Debug|ARM64
- {9EED87BB-527F-4D05-9384-6D16CFD627A8}.Debug|x64.ActiveCfg = Debug|x64
- {9EED87BB-527F-4D05-9384-6D16CFD627A8}.Debug|x64.Build.0 = Debug|x64
- {9EED87BB-527F-4D05-9384-6D16CFD627A8}.Debug|x86.ActiveCfg = Debug|Win32
- {9EED87BB-527F-4D05-9384-6D16CFD627A8}.Debug|x86.Build.0 = Debug|Win32
- {9EED87BB-527F-4D05-9384-6D16CFD627A8}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
- {9EED87BB-527F-4D05-9384-6D16CFD627A8}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
- {9EED87BB-527F-4D05-9384-6D16CFD627A8}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
- {9EED87BB-527F-4D05-9384-6D16CFD627A8}.Release.DLL|x64.Build.0 = Release.DLL|x64
- {9EED87BB-527F-4D05-9384-6D16CFD627A8}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
- {9EED87BB-527F-4D05-9384-6D16CFD627A8}.Release.DLL|x86.Build.0 = Release.DLL|Win32
- {9EED87BB-527F-4D05-9384-6D16CFD627A8}.Release|ARM64.ActiveCfg = Release|ARM64
- {9EED87BB-527F-4D05-9384-6D16CFD627A8}.Release|ARM64.Build.0 = Release|ARM64
- {9EED87BB-527F-4D05-9384-6D16CFD627A8}.Release|x64.ActiveCfg = Release|x64
- {9EED87BB-527F-4D05-9384-6D16CFD627A8}.Release|x64.Build.0 = Release|x64
- {9EED87BB-527F-4D05-9384-6D16CFD627A8}.Release|x86.ActiveCfg = Release|Win32
- {9EED87BB-527F-4D05-9384-6D16CFD627A8}.Release|x86.Build.0 = Release|Win32
- {6D1CA2F1-7FCA-4249-9220-075C2DF4F965}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
- {6D1CA2F1-7FCA-4249-9220-075C2DF4F965}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
- {6D1CA2F1-7FCA-4249-9220-075C2DF4F965}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
- {6D1CA2F1-7FCA-4249-9220-075C2DF4F965}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
- {6D1CA2F1-7FCA-4249-9220-075C2DF4F965}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
- {6D1CA2F1-7FCA-4249-9220-075C2DF4F965}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
- {6D1CA2F1-7FCA-4249-9220-075C2DF4F965}.Debug|ARM64.ActiveCfg = Debug|ARM64
- {6D1CA2F1-7FCA-4249-9220-075C2DF4F965}.Debug|ARM64.Build.0 = Debug|ARM64
- {6D1CA2F1-7FCA-4249-9220-075C2DF4F965}.Debug|x64.ActiveCfg = Debug|x64
- {6D1CA2F1-7FCA-4249-9220-075C2DF4F965}.Debug|x64.Build.0 = Debug|x64
- {6D1CA2F1-7FCA-4249-9220-075C2DF4F965}.Debug|x86.ActiveCfg = Debug|Win32
- {6D1CA2F1-7FCA-4249-9220-075C2DF4F965}.Debug|x86.Build.0 = Debug|Win32
- {6D1CA2F1-7FCA-4249-9220-075C2DF4F965}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
- {6D1CA2F1-7FCA-4249-9220-075C2DF4F965}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
- {6D1CA2F1-7FCA-4249-9220-075C2DF4F965}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
- {6D1CA2F1-7FCA-4249-9220-075C2DF4F965}.Release.DLL|x64.Build.0 = Release.DLL|x64
- {6D1CA2F1-7FCA-4249-9220-075C2DF4F965}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
- {6D1CA2F1-7FCA-4249-9220-075C2DF4F965}.Release.DLL|x86.Build.0 = Release.DLL|Win32
- {6D1CA2F1-7FCA-4249-9220-075C2DF4F965}.Release|ARM64.ActiveCfg = Release|ARM64
- {6D1CA2F1-7FCA-4249-9220-075C2DF4F965}.Release|ARM64.Build.0 = Release|ARM64
- {6D1CA2F1-7FCA-4249-9220-075C2DF4F965}.Release|x64.ActiveCfg = Release|x64
- {6D1CA2F1-7FCA-4249-9220-075C2DF4F965}.Release|x64.Build.0 = Release|x64
- {6D1CA2F1-7FCA-4249-9220-075C2DF4F965}.Release|x86.ActiveCfg = Release|Win32
- {6D1CA2F1-7FCA-4249-9220-075C2DF4F965}.Release|x86.Build.0 = Release|Win32
- {946A1700-C7AA-46F0-AEF2-67C98B5722AC}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
- {946A1700-C7AA-46F0-AEF2-67C98B5722AC}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
- {946A1700-C7AA-46F0-AEF2-67C98B5722AC}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
- {946A1700-C7AA-46F0-AEF2-67C98B5722AC}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
- {946A1700-C7AA-46F0-AEF2-67C98B5722AC}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
- {946A1700-C7AA-46F0-AEF2-67C98B5722AC}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
- {946A1700-C7AA-46F0-AEF2-67C98B5722AC}.Debug|ARM64.ActiveCfg = Debug|ARM64
- {946A1700-C7AA-46F0-AEF2-67C98B5722AC}.Debug|ARM64.Build.0 = Debug|ARM64
- {946A1700-C7AA-46F0-AEF2-67C98B5722AC}.Debug|x64.ActiveCfg = Debug|x64
- {946A1700-C7AA-46F0-AEF2-67C98B5722AC}.Debug|x64.Build.0 = Debug|x64
- {946A1700-C7AA-46F0-AEF2-67C98B5722AC}.Debug|x86.ActiveCfg = Debug|Win32
- {946A1700-C7AA-46F0-AEF2-67C98B5722AC}.Debug|x86.Build.0 = Debug|Win32
- {946A1700-C7AA-46F0-AEF2-67C98B5722AC}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
- {946A1700-C7AA-46F0-AEF2-67C98B5722AC}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
- {946A1700-C7AA-46F0-AEF2-67C98B5722AC}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
- {946A1700-C7AA-46F0-AEF2-67C98B5722AC}.Release.DLL|x64.Build.0 = Release.DLL|x64
- {946A1700-C7AA-46F0-AEF2-67C98B5722AC}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
- {946A1700-C7AA-46F0-AEF2-67C98B5722AC}.Release.DLL|x86.Build.0 = Release.DLL|Win32
- {946A1700-C7AA-46F0-AEF2-67C98B5722AC}.Release|ARM64.ActiveCfg = Release|ARM64
- {946A1700-C7AA-46F0-AEF2-67C98B5722AC}.Release|ARM64.Build.0 = Release|ARM64
- {946A1700-C7AA-46F0-AEF2-67C98B5722AC}.Release|x64.ActiveCfg = Release|x64
- {946A1700-C7AA-46F0-AEF2-67C98B5722AC}.Release|x64.Build.0 = Release|x64
- {946A1700-C7AA-46F0-AEF2-67C98B5722AC}.Release|x86.ActiveCfg = Release|Win32
- {946A1700-C7AA-46F0-AEF2-67C98B5722AC}.Release|x86.Build.0 = Release|Win32
- {FD193822-3D5C-4161-A147-884C2ABDE483}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
- {FD193822-3D5C-4161-A147-884C2ABDE483}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
- {FD193822-3D5C-4161-A147-884C2ABDE483}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
- {FD193822-3D5C-4161-A147-884C2ABDE483}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
- {FD193822-3D5C-4161-A147-884C2ABDE483}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
- {FD193822-3D5C-4161-A147-884C2ABDE483}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
- {FD193822-3D5C-4161-A147-884C2ABDE483}.Debug|ARM64.ActiveCfg = Debug|ARM64
- {FD193822-3D5C-4161-A147-884C2ABDE483}.Debug|ARM64.Build.0 = Debug|ARM64
- {FD193822-3D5C-4161-A147-884C2ABDE483}.Debug|x64.ActiveCfg = Debug|x64
- {FD193822-3D5C-4161-A147-884C2ABDE483}.Debug|x64.Build.0 = Debug|x64
- {FD193822-3D5C-4161-A147-884C2ABDE483}.Debug|x86.ActiveCfg = Debug|Win32
- {FD193822-3D5C-4161-A147-884C2ABDE483}.Debug|x86.Build.0 = Debug|Win32
- {FD193822-3D5C-4161-A147-884C2ABDE483}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
- {FD193822-3D5C-4161-A147-884C2ABDE483}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
- {FD193822-3D5C-4161-A147-884C2ABDE483}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
- {FD193822-3D5C-4161-A147-884C2ABDE483}.Release.DLL|x64.Build.0 = Release.DLL|x64
- {FD193822-3D5C-4161-A147-884C2ABDE483}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
- {FD193822-3D5C-4161-A147-884C2ABDE483}.Release.DLL|x86.Build.0 = Release.DLL|Win32
- {FD193822-3D5C-4161-A147-884C2ABDE483}.Release|ARM64.ActiveCfg = Release|ARM64
- {FD193822-3D5C-4161-A147-884C2ABDE483}.Release|ARM64.Build.0 = Release|ARM64
- {FD193822-3D5C-4161-A147-884C2ABDE483}.Release|x64.ActiveCfg = Release|x64
- {FD193822-3D5C-4161-A147-884C2ABDE483}.Release|x64.Build.0 = Release|x64
- {FD193822-3D5C-4161-A147-884C2ABDE483}.Release|x86.ActiveCfg = Release|Win32
- {FD193822-3D5C-4161-A147-884C2ABDE483}.Release|x86.Build.0 = Release|Win32
- {20AD0AC9-9159-4744-99CC-6AC5779D6B87}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
- {20AD0AC9-9159-4744-99CC-6AC5779D6B87}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
- {20AD0AC9-9159-4744-99CC-6AC5779D6B87}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
- {20AD0AC9-9159-4744-99CC-6AC5779D6B87}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
- {20AD0AC9-9159-4744-99CC-6AC5779D6B87}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
- {20AD0AC9-9159-4744-99CC-6AC5779D6B87}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
- {20AD0AC9-9159-4744-99CC-6AC5779D6B87}.Debug|ARM64.ActiveCfg = Debug|ARM64
- {20AD0AC9-9159-4744-99CC-6AC5779D6B87}.Debug|ARM64.Build.0 = Debug|ARM64
- {20AD0AC9-9159-4744-99CC-6AC5779D6B87}.Debug|x64.ActiveCfg = Debug|x64
- {20AD0AC9-9159-4744-99CC-6AC5779D6B87}.Debug|x64.Build.0 = Debug|x64
- {20AD0AC9-9159-4744-99CC-6AC5779D6B87}.Debug|x86.ActiveCfg = Debug|Win32
- {20AD0AC9-9159-4744-99CC-6AC5779D6B87}.Debug|x86.Build.0 = Debug|Win32
- {20AD0AC9-9159-4744-99CC-6AC5779D6B87}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
- {20AD0AC9-9159-4744-99CC-6AC5779D6B87}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
- {20AD0AC9-9159-4744-99CC-6AC5779D6B87}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
- {20AD0AC9-9159-4744-99CC-6AC5779D6B87}.Release.DLL|x64.Build.0 = Release.DLL|x64
- {20AD0AC9-9159-4744-99CC-6AC5779D6B87}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
- {20AD0AC9-9159-4744-99CC-6AC5779D6B87}.Release.DLL|x86.Build.0 = Release.DLL|Win32
- {20AD0AC9-9159-4744-99CC-6AC5779D6B87}.Release|ARM64.ActiveCfg = Release|ARM64
- {20AD0AC9-9159-4744-99CC-6AC5779D6B87}.Release|ARM64.Build.0 = Release|ARM64
- {20AD0AC9-9159-4744-99CC-6AC5779D6B87}.Release|x64.ActiveCfg = Release|x64
- {20AD0AC9-9159-4744-99CC-6AC5779D6B87}.Release|x64.Build.0 = Release|x64
- {20AD0AC9-9159-4744-99CC-6AC5779D6B87}.Release|x86.ActiveCfg = Release|Win32
- {20AD0AC9-9159-4744-99CC-6AC5779D6B87}.Release|x86.Build.0 = Release|Win32
- {0199E349-0701-40BC-8A7F-06A54FFA3E7C}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
- {0199E349-0701-40BC-8A7F-06A54FFA3E7C}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
- {0199E349-0701-40BC-8A7F-06A54FFA3E7C}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
- {0199E349-0701-40BC-8A7F-06A54FFA3E7C}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
- {0199E349-0701-40BC-8A7F-06A54FFA3E7C}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
- {0199E349-0701-40BC-8A7F-06A54FFA3E7C}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
- {0199E349-0701-40BC-8A7F-06A54FFA3E7C}.Debug|ARM64.ActiveCfg = Debug|ARM64
- {0199E349-0701-40BC-8A7F-06A54FFA3E7C}.Debug|ARM64.Build.0 = Debug|ARM64
- {0199E349-0701-40BC-8A7F-06A54FFA3E7C}.Debug|x64.ActiveCfg = Debug|x64
- {0199E349-0701-40BC-8A7F-06A54FFA3E7C}.Debug|x64.Build.0 = Debug|x64
- {0199E349-0701-40BC-8A7F-06A54FFA3E7C}.Debug|x86.ActiveCfg = Debug|Win32
- {0199E349-0701-40BC-8A7F-06A54FFA3E7C}.Debug|x86.Build.0 = Debug|Win32
- {0199E349-0701-40BC-8A7F-06A54FFA3E7C}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
- {0199E349-0701-40BC-8A7F-06A54FFA3E7C}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
- {0199E349-0701-40BC-8A7F-06A54FFA3E7C}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
- {0199E349-0701-40BC-8A7F-06A54FFA3E7C}.Release.DLL|x64.Build.0 = Release.DLL|x64
- {0199E349-0701-40BC-8A7F-06A54FFA3E7C}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
- {0199E349-0701-40BC-8A7F-06A54FFA3E7C}.Release.DLL|x86.Build.0 = Release.DLL|Win32
- {0199E349-0701-40BC-8A7F-06A54FFA3E7C}.Release|ARM64.ActiveCfg = Release|ARM64
- {0199E349-0701-40BC-8A7F-06A54FFA3E7C}.Release|ARM64.Build.0 = Release|ARM64
- {0199E349-0701-40BC-8A7F-06A54FFA3E7C}.Release|x64.ActiveCfg = Release|x64
- {0199E349-0701-40BC-8A7F-06A54FFA3E7C}.Release|x64.Build.0 = Release|x64
- {0199E349-0701-40BC-8A7F-06A54FFA3E7C}.Release|x86.ActiveCfg = Release|Win32
- {0199E349-0701-40BC-8A7F-06A54FFA3E7C}.Release|x86.Build.0 = Release|Win32
- {BCB71111-8505-4B35-8CEF-EC6115DC9D4D}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
- {BCB71111-8505-4B35-8CEF-EC6115DC9D4D}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
- {BCB71111-8505-4B35-8CEF-EC6115DC9D4D}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
- {BCB71111-8505-4B35-8CEF-EC6115DC9D4D}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
- {BCB71111-8505-4B35-8CEF-EC6115DC9D4D}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
- {BCB71111-8505-4B35-8CEF-EC6115DC9D4D}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
- {BCB71111-8505-4B35-8CEF-EC6115DC9D4D}.Debug|ARM64.ActiveCfg = Debug|ARM64
- {BCB71111-8505-4B35-8CEF-EC6115DC9D4D}.Debug|ARM64.Build.0 = Debug|ARM64
- {BCB71111-8505-4B35-8CEF-EC6115DC9D4D}.Debug|x64.ActiveCfg = Debug|x64
- {BCB71111-8505-4B35-8CEF-EC6115DC9D4D}.Debug|x64.Build.0 = Debug|x64
- {BCB71111-8505-4B35-8CEF-EC6115DC9D4D}.Debug|x86.ActiveCfg = Debug|Win32
- {BCB71111-8505-4B35-8CEF-EC6115DC9D4D}.Debug|x86.Build.0 = Debug|Win32
- {BCB71111-8505-4B35-8CEF-EC6115DC9D4D}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
- {BCB71111-8505-4B35-8CEF-EC6115DC9D4D}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
- {BCB71111-8505-4B35-8CEF-EC6115DC9D4D}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
- {BCB71111-8505-4B35-8CEF-EC6115DC9D4D}.Release.DLL|x64.Build.0 = Release.DLL|x64
- {BCB71111-8505-4B35-8CEF-EC6115DC9D4D}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
- {BCB71111-8505-4B35-8CEF-EC6115DC9D4D}.Release.DLL|x86.Build.0 = Release.DLL|Win32
- {BCB71111-8505-4B35-8CEF-EC6115DC9D4D}.Release|ARM64.ActiveCfg = Release|ARM64
- {BCB71111-8505-4B35-8CEF-EC6115DC9D4D}.Release|ARM64.Build.0 = Release|ARM64
- {BCB71111-8505-4B35-8CEF-EC6115DC9D4D}.Release|x64.ActiveCfg = Release|x64
- {BCB71111-8505-4B35-8CEF-EC6115DC9D4D}.Release|x64.Build.0 = Release|x64
- {BCB71111-8505-4B35-8CEF-EC6115DC9D4D}.Release|x86.ActiveCfg = Release|Win32
- {BCB71111-8505-4B35-8CEF-EC6115DC9D4D}.Release|x86.Build.0 = Release|Win32
- {8F19E3DA-8929-4000-87B5-3CA6929636CC}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
- {8F19E3DA-8929-4000-87B5-3CA6929636CC}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
- {8F19E3DA-8929-4000-87B5-3CA6929636CC}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
- {8F19E3DA-8929-4000-87B5-3CA6929636CC}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
- {8F19E3DA-8929-4000-87B5-3CA6929636CC}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
- {8F19E3DA-8929-4000-87B5-3CA6929636CC}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
- {8F19E3DA-8929-4000-87B5-3CA6929636CC}.Debug|ARM64.ActiveCfg = Debug|ARM64
- {8F19E3DA-8929-4000-87B5-3CA6929636CC}.Debug|ARM64.Build.0 = Debug|ARM64
- {8F19E3DA-8929-4000-87B5-3CA6929636CC}.Debug|x64.ActiveCfg = Debug|x64
- {8F19E3DA-8929-4000-87B5-3CA6929636CC}.Debug|x64.Build.0 = Debug|x64
- {8F19E3DA-8929-4000-87B5-3CA6929636CC}.Debug|x86.ActiveCfg = Debug|Win32
- {8F19E3DA-8929-4000-87B5-3CA6929636CC}.Debug|x86.Build.0 = Debug|Win32
- {8F19E3DA-8929-4000-87B5-3CA6929636CC}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
- {8F19E3DA-8929-4000-87B5-3CA6929636CC}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
- {8F19E3DA-8929-4000-87B5-3CA6929636CC}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
- {8F19E3DA-8929-4000-87B5-3CA6929636CC}.Release.DLL|x64.Build.0 = Release.DLL|x64
- {8F19E3DA-8929-4000-87B5-3CA6929636CC}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
- {8F19E3DA-8929-4000-87B5-3CA6929636CC}.Release.DLL|x86.Build.0 = Release.DLL|Win32
- {8F19E3DA-8929-4000-87B5-3CA6929636CC}.Release|ARM64.ActiveCfg = Release|ARM64
- {8F19E3DA-8929-4000-87B5-3CA6929636CC}.Release|ARM64.Build.0 = Release|ARM64
- {8F19E3DA-8929-4000-87B5-3CA6929636CC}.Release|x64.ActiveCfg = Release|x64
- {8F19E3DA-8929-4000-87B5-3CA6929636CC}.Release|x64.Build.0 = Release|x64
- {8F19E3DA-8929-4000-87B5-3CA6929636CC}.Release|x86.ActiveCfg = Release|Win32
- {8F19E3DA-8929-4000-87B5-3CA6929636CC}.Release|x86.Build.0 = Release|Win32
- {51A00565-5787-4911-9CC0-28403AA4909D}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
- {51A00565-5787-4911-9CC0-28403AA4909D}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
- {51A00565-5787-4911-9CC0-28403AA4909D}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
- {51A00565-5787-4911-9CC0-28403AA4909D}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
- {51A00565-5787-4911-9CC0-28403AA4909D}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
- {51A00565-5787-4911-9CC0-28403AA4909D}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
- {51A00565-5787-4911-9CC0-28403AA4909D}.Debug|ARM64.ActiveCfg = Debug|ARM64
- {51A00565-5787-4911-9CC0-28403AA4909D}.Debug|ARM64.Build.0 = Debug|ARM64
- {51A00565-5787-4911-9CC0-28403AA4909D}.Debug|x64.ActiveCfg = Debug|x64
- {51A00565-5787-4911-9CC0-28403AA4909D}.Debug|x64.Build.0 = Debug|x64
- {51A00565-5787-4911-9CC0-28403AA4909D}.Debug|x86.ActiveCfg = Debug|Win32
- {51A00565-5787-4911-9CC0-28403AA4909D}.Debug|x86.Build.0 = Debug|Win32
- {51A00565-5787-4911-9CC0-28403AA4909D}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
- {51A00565-5787-4911-9CC0-28403AA4909D}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
- {51A00565-5787-4911-9CC0-28403AA4909D}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
- {51A00565-5787-4911-9CC0-28403AA4909D}.Release.DLL|x64.Build.0 = Release.DLL|x64
- {51A00565-5787-4911-9CC0-28403AA4909D}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
- {51A00565-5787-4911-9CC0-28403AA4909D}.Release.DLL|x86.Build.0 = Release.DLL|Win32
- {51A00565-5787-4911-9CC0-28403AA4909D}.Release|ARM64.ActiveCfg = Release|ARM64
- {51A00565-5787-4911-9CC0-28403AA4909D}.Release|ARM64.Build.0 = Release|ARM64
- {51A00565-5787-4911-9CC0-28403AA4909D}.Release|x64.ActiveCfg = Release|x64
- {51A00565-5787-4911-9CC0-28403AA4909D}.Release|x64.Build.0 = Release|x64
- {51A00565-5787-4911-9CC0-28403AA4909D}.Release|x86.ActiveCfg = Release|Win32
- {51A00565-5787-4911-9CC0-28403AA4909D}.Release|x86.Build.0 = Release|Win32
- {92B64AE7-D773-4F05-89F1-CE59BBF4F053}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
- {92B64AE7-D773-4F05-89F1-CE59BBF4F053}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
- {92B64AE7-D773-4F05-89F1-CE59BBF4F053}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
- {92B64AE7-D773-4F05-89F1-CE59BBF4F053}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
- {92B64AE7-D773-4F05-89F1-CE59BBF4F053}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
- {92B64AE7-D773-4F05-89F1-CE59BBF4F053}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
- {92B64AE7-D773-4F05-89F1-CE59BBF4F053}.Debug|ARM64.ActiveCfg = Debug|ARM64
- {92B64AE7-D773-4F05-89F1-CE59BBF4F053}.Debug|ARM64.Build.0 = Debug|ARM64
- {92B64AE7-D773-4F05-89F1-CE59BBF4F053}.Debug|x64.ActiveCfg = Debug|x64
- {92B64AE7-D773-4F05-89F1-CE59BBF4F053}.Debug|x64.Build.0 = Debug|x64
- {92B64AE7-D773-4F05-89F1-CE59BBF4F053}.Debug|x86.ActiveCfg = Debug|Win32
- {92B64AE7-D773-4F05-89F1-CE59BBF4F053}.Debug|x86.Build.0 = Debug|Win32
- {92B64AE7-D773-4F05-89F1-CE59BBF4F053}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
- {92B64AE7-D773-4F05-89F1-CE59BBF4F053}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
- {92B64AE7-D773-4F05-89F1-CE59BBF4F053}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
- {92B64AE7-D773-4F05-89F1-CE59BBF4F053}.Release.DLL|x64.Build.0 = Release.DLL|x64
- {92B64AE7-D773-4F05-89F1-CE59BBF4F053}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
- {92B64AE7-D773-4F05-89F1-CE59BBF4F053}.Release.DLL|x86.Build.0 = Release.DLL|Win32
- {92B64AE7-D773-4F05-89F1-CE59BBF4F053}.Release|ARM64.ActiveCfg = Release|ARM64
- {92B64AE7-D773-4F05-89F1-CE59BBF4F053}.Release|ARM64.Build.0 = Release|ARM64
- {92B64AE7-D773-4F05-89F1-CE59BBF4F053}.Release|x64.ActiveCfg = Release|x64
- {92B64AE7-D773-4F05-89F1-CE59BBF4F053}.Release|x64.Build.0 = Release|x64
- {92B64AE7-D773-4F05-89F1-CE59BBF4F053}.Release|x86.ActiveCfg = Release|Win32
- {92B64AE7-D773-4F05-89F1-CE59BBF4F053}.Release|x86.Build.0 = Release|Win32
- {A2BA5E5C-FDB9-4939-B0B5-2B753A5E33D3}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
- {A2BA5E5C-FDB9-4939-B0B5-2B753A5E33D3}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
- {A2BA5E5C-FDB9-4939-B0B5-2B753A5E33D3}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
- {A2BA5E5C-FDB9-4939-B0B5-2B753A5E33D3}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
- {A2BA5E5C-FDB9-4939-B0B5-2B753A5E33D3}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
- {A2BA5E5C-FDB9-4939-B0B5-2B753A5E33D3}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
- {A2BA5E5C-FDB9-4939-B0B5-2B753A5E33D3}.Debug|ARM64.ActiveCfg = Debug|ARM64
- {A2BA5E5C-FDB9-4939-B0B5-2B753A5E33D3}.Debug|ARM64.Build.0 = Debug|ARM64
- {A2BA5E5C-FDB9-4939-B0B5-2B753A5E33D3}.Debug|x64.ActiveCfg = Debug|x64
- {A2BA5E5C-FDB9-4939-B0B5-2B753A5E33D3}.Debug|x64.Build.0 = Debug|x64
- {A2BA5E5C-FDB9-4939-B0B5-2B753A5E33D3}.Debug|x86.ActiveCfg = Debug|Win32
- {A2BA5E5C-FDB9-4939-B0B5-2B753A5E33D3}.Debug|x86.Build.0 = Debug|Win32
- {A2BA5E5C-FDB9-4939-B0B5-2B753A5E33D3}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
- {A2BA5E5C-FDB9-4939-B0B5-2B753A5E33D3}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
- {A2BA5E5C-FDB9-4939-B0B5-2B753A5E33D3}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
- {A2BA5E5C-FDB9-4939-B0B5-2B753A5E33D3}.Release.DLL|x64.Build.0 = Release.DLL|x64
- {A2BA5E5C-FDB9-4939-B0B5-2B753A5E33D3}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
- {A2BA5E5C-FDB9-4939-B0B5-2B753A5E33D3}.Release.DLL|x86.Build.0 = Release.DLL|Win32
- {A2BA5E5C-FDB9-4939-B0B5-2B753A5E33D3}.Release|ARM64.ActiveCfg = Release|ARM64
- {A2BA5E5C-FDB9-4939-B0B5-2B753A5E33D3}.Release|ARM64.Build.0 = Release|ARM64
- {A2BA5E5C-FDB9-4939-B0B5-2B753A5E33D3}.Release|x64.ActiveCfg = Release|x64
- {A2BA5E5C-FDB9-4939-B0B5-2B753A5E33D3}.Release|x64.Build.0 = Release|x64
- {A2BA5E5C-FDB9-4939-B0B5-2B753A5E33D3}.Release|x86.ActiveCfg = Release|Win32
- {A2BA5E5C-FDB9-4939-B0B5-2B753A5E33D3}.Release|x86.Build.0 = Release|Win32
- {A643BB06-735D-47F3-BFE7-B6D3C36F7097}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
- {A643BB06-735D-47F3-BFE7-B6D3C36F7097}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
- {A643BB06-735D-47F3-BFE7-B6D3C36F7097}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
- {A643BB06-735D-47F3-BFE7-B6D3C36F7097}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
- {A643BB06-735D-47F3-BFE7-B6D3C36F7097}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
- {A643BB06-735D-47F3-BFE7-B6D3C36F7097}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
- {A643BB06-735D-47F3-BFE7-B6D3C36F7097}.Debug|ARM64.ActiveCfg = Debug|ARM64
- {A643BB06-735D-47F3-BFE7-B6D3C36F7097}.Debug|ARM64.Build.0 = Debug|ARM64
- {A643BB06-735D-47F3-BFE7-B6D3C36F7097}.Debug|x64.ActiveCfg = Debug|x64
- {A643BB06-735D-47F3-BFE7-B6D3C36F7097}.Debug|x64.Build.0 = Debug|x64
- {A643BB06-735D-47F3-BFE7-B6D3C36F7097}.Debug|x86.ActiveCfg = Debug|Win32
- {A643BB06-735D-47F3-BFE7-B6D3C36F7097}.Debug|x86.Build.0 = Debug|Win32
- {A643BB06-735D-47F3-BFE7-B6D3C36F7097}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
- {A643BB06-735D-47F3-BFE7-B6D3C36F7097}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
- {A643BB06-735D-47F3-BFE7-B6D3C36F7097}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
- {A643BB06-735D-47F3-BFE7-B6D3C36F7097}.Release.DLL|x64.Build.0 = Release.DLL|x64
- {A643BB06-735D-47F3-BFE7-B6D3C36F7097}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
- {A643BB06-735D-47F3-BFE7-B6D3C36F7097}.Release.DLL|x86.Build.0 = Release.DLL|Win32
- {A643BB06-735D-47F3-BFE7-B6D3C36F7097}.Release|ARM64.ActiveCfg = Release|ARM64
- {A643BB06-735D-47F3-BFE7-B6D3C36F7097}.Release|ARM64.Build.0 = Release|ARM64
- {A643BB06-735D-47F3-BFE7-B6D3C36F7097}.Release|x64.ActiveCfg = Release|x64
- {A643BB06-735D-47F3-BFE7-B6D3C36F7097}.Release|x64.Build.0 = Release|x64
- {A643BB06-735D-47F3-BFE7-B6D3C36F7097}.Release|x86.ActiveCfg = Release|Win32
- {A643BB06-735D-47F3-BFE7-B6D3C36F7097}.Release|x86.Build.0 = Release|Win32
- {6B8BAAF1-75C7-4C68-80B8-0E2A9EABBD9A}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
- {6B8BAAF1-75C7-4C68-80B8-0E2A9EABBD9A}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
- {6B8BAAF1-75C7-4C68-80B8-0E2A9EABBD9A}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
- {6B8BAAF1-75C7-4C68-80B8-0E2A9EABBD9A}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
- {6B8BAAF1-75C7-4C68-80B8-0E2A9EABBD9A}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
- {6B8BAAF1-75C7-4C68-80B8-0E2A9EABBD9A}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
- {6B8BAAF1-75C7-4C68-80B8-0E2A9EABBD9A}.Debug|ARM64.ActiveCfg = Debug|ARM64
- {6B8BAAF1-75C7-4C68-80B8-0E2A9EABBD9A}.Debug|ARM64.Build.0 = Debug|ARM64
- {6B8BAAF1-75C7-4C68-80B8-0E2A9EABBD9A}.Debug|x64.ActiveCfg = Debug|x64
- {6B8BAAF1-75C7-4C68-80B8-0E2A9EABBD9A}.Debug|x64.Build.0 = Debug|x64
- {6B8BAAF1-75C7-4C68-80B8-0E2A9EABBD9A}.Debug|x86.ActiveCfg = Debug|Win32
- {6B8BAAF1-75C7-4C68-80B8-0E2A9EABBD9A}.Debug|x86.Build.0 = Debug|Win32
- {6B8BAAF1-75C7-4C68-80B8-0E2A9EABBD9A}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
- {6B8BAAF1-75C7-4C68-80B8-0E2A9EABBD9A}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
- {6B8BAAF1-75C7-4C68-80B8-0E2A9EABBD9A}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
- {6B8BAAF1-75C7-4C68-80B8-0E2A9EABBD9A}.Release.DLL|x64.Build.0 = Release.DLL|x64
- {6B8BAAF1-75C7-4C68-80B8-0E2A9EABBD9A}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
- {6B8BAAF1-75C7-4C68-80B8-0E2A9EABBD9A}.Release.DLL|x86.Build.0 = Release.DLL|Win32
- {6B8BAAF1-75C7-4C68-80B8-0E2A9EABBD9A}.Release|ARM64.ActiveCfg = Release|ARM64
- {6B8BAAF1-75C7-4C68-80B8-0E2A9EABBD9A}.Release|ARM64.Build.0 = Release|ARM64
- {6B8BAAF1-75C7-4C68-80B8-0E2A9EABBD9A}.Release|x64.ActiveCfg = Release|x64
- {6B8BAAF1-75C7-4C68-80B8-0E2A9EABBD9A}.Release|x64.Build.0 = Release|x64
- {6B8BAAF1-75C7-4C68-80B8-0E2A9EABBD9A}.Release|x86.ActiveCfg = Release|Win32
- {6B8BAAF1-75C7-4C68-80B8-0E2A9EABBD9A}.Release|x86.Build.0 = Release|Win32
- {B332DCA8-3599-4A99-917A-82261BDC27AC}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
- {B332DCA8-3599-4A99-917A-82261BDC27AC}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
- {B332DCA8-3599-4A99-917A-82261BDC27AC}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
- {B332DCA8-3599-4A99-917A-82261BDC27AC}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
- {B332DCA8-3599-4A99-917A-82261BDC27AC}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
- {B332DCA8-3599-4A99-917A-82261BDC27AC}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
- {B332DCA8-3599-4A99-917A-82261BDC27AC}.Debug|ARM64.ActiveCfg = Debug|ARM64
- {B332DCA8-3599-4A99-917A-82261BDC27AC}.Debug|ARM64.Build.0 = Debug|ARM64
- {B332DCA8-3599-4A99-917A-82261BDC27AC}.Debug|x64.ActiveCfg = Debug|x64
- {B332DCA8-3599-4A99-917A-82261BDC27AC}.Debug|x64.Build.0 = Debug|x64
- {B332DCA8-3599-4A99-917A-82261BDC27AC}.Debug|x86.ActiveCfg = Debug|Win32
- {B332DCA8-3599-4A99-917A-82261BDC27AC}.Debug|x86.Build.0 = Debug|Win32
- {B332DCA8-3599-4A99-917A-82261BDC27AC}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
- {B332DCA8-3599-4A99-917A-82261BDC27AC}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
- {B332DCA8-3599-4A99-917A-82261BDC27AC}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
- {B332DCA8-3599-4A99-917A-82261BDC27AC}.Release.DLL|x64.Build.0 = Release.DLL|x64
- {B332DCA8-3599-4A99-917A-82261BDC27AC}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
- {B332DCA8-3599-4A99-917A-82261BDC27AC}.Release.DLL|x86.Build.0 = Release.DLL|Win32
- {B332DCA8-3599-4A99-917A-82261BDC27AC}.Release|ARM64.ActiveCfg = Release|ARM64
- {B332DCA8-3599-4A99-917A-82261BDC27AC}.Release|ARM64.Build.0 = Release|ARM64
- {B332DCA8-3599-4A99-917A-82261BDC27AC}.Release|x64.ActiveCfg = Release|x64
- {B332DCA8-3599-4A99-917A-82261BDC27AC}.Release|x64.Build.0 = Release|x64
- {B332DCA8-3599-4A99-917A-82261BDC27AC}.Release|x86.ActiveCfg = Release|Win32
- {B332DCA8-3599-4A99-917A-82261BDC27AC}.Release|x86.Build.0 = Release|Win32
- {59089B0C-AAB4-4532-B294-44DEAE7178B7}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
- {59089B0C-AAB4-4532-B294-44DEAE7178B7}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
- {59089B0C-AAB4-4532-B294-44DEAE7178B7}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
- {59089B0C-AAB4-4532-B294-44DEAE7178B7}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
- {59089B0C-AAB4-4532-B294-44DEAE7178B7}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
- {59089B0C-AAB4-4532-B294-44DEAE7178B7}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
- {59089B0C-AAB4-4532-B294-44DEAE7178B7}.Debug|ARM64.ActiveCfg = Debug|ARM64
- {59089B0C-AAB4-4532-B294-44DEAE7178B7}.Debug|ARM64.Build.0 = Debug|ARM64
- {59089B0C-AAB4-4532-B294-44DEAE7178B7}.Debug|x64.ActiveCfg = Debug|x64
- {59089B0C-AAB4-4532-B294-44DEAE7178B7}.Debug|x64.Build.0 = Debug|x64
- {59089B0C-AAB4-4532-B294-44DEAE7178B7}.Debug|x86.ActiveCfg = Debug|Win32
- {59089B0C-AAB4-4532-B294-44DEAE7178B7}.Debug|x86.Build.0 = Debug|Win32
- {59089B0C-AAB4-4532-B294-44DEAE7178B7}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
- {59089B0C-AAB4-4532-B294-44DEAE7178B7}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
- {59089B0C-AAB4-4532-B294-44DEAE7178B7}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
- {59089B0C-AAB4-4532-B294-44DEAE7178B7}.Release.DLL|x64.Build.0 = Release.DLL|x64
- {59089B0C-AAB4-4532-B294-44DEAE7178B7}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
- {59089B0C-AAB4-4532-B294-44DEAE7178B7}.Release.DLL|x86.Build.0 = Release.DLL|Win32
- {59089B0C-AAB4-4532-B294-44DEAE7178B7}.Release|ARM64.ActiveCfg = Release|ARM64
- {59089B0C-AAB4-4532-B294-44DEAE7178B7}.Release|ARM64.Build.0 = Release|ARM64
- {59089B0C-AAB4-4532-B294-44DEAE7178B7}.Release|x64.ActiveCfg = Release|x64
- {59089B0C-AAB4-4532-B294-44DEAE7178B7}.Release|x64.Build.0 = Release|x64
- {59089B0C-AAB4-4532-B294-44DEAE7178B7}.Release|x86.ActiveCfg = Release|Win32
- {59089B0C-AAB4-4532-B294-44DEAE7178B7}.Release|x86.Build.0 = Release|Win32
- {C298876B-6C12-4EA4-903B-33450BCD9884}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
- {C298876B-6C12-4EA4-903B-33450BCD9884}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
- {C298876B-6C12-4EA4-903B-33450BCD9884}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
- {C298876B-6C12-4EA4-903B-33450BCD9884}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
- {C298876B-6C12-4EA4-903B-33450BCD9884}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
- {C298876B-6C12-4EA4-903B-33450BCD9884}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
- {C298876B-6C12-4EA4-903B-33450BCD9884}.Debug|ARM64.ActiveCfg = Debug|ARM64
- {C298876B-6C12-4EA4-903B-33450BCD9884}.Debug|ARM64.Build.0 = Debug|ARM64
- {C298876B-6C12-4EA4-903B-33450BCD9884}.Debug|x64.ActiveCfg = Debug|x64
- {C298876B-6C12-4EA4-903B-33450BCD9884}.Debug|x64.Build.0 = Debug|x64
- {C298876B-6C12-4EA4-903B-33450BCD9884}.Debug|x86.ActiveCfg = Debug|Win32
- {C298876B-6C12-4EA4-903B-33450BCD9884}.Debug|x86.Build.0 = Debug|Win32
- {C298876B-6C12-4EA4-903B-33450BCD9884}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
- {C298876B-6C12-4EA4-903B-33450BCD9884}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
- {C298876B-6C12-4EA4-903B-33450BCD9884}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
- {C298876B-6C12-4EA4-903B-33450BCD9884}.Release.DLL|x64.Build.0 = Release.DLL|x64
- {C298876B-6C12-4EA4-903B-33450BCD9884}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
- {C298876B-6C12-4EA4-903B-33450BCD9884}.Release.DLL|x86.Build.0 = Release.DLL|Win32
- {C298876B-6C12-4EA4-903B-33450BCD9884}.Release|ARM64.ActiveCfg = Release|ARM64
- {C298876B-6C12-4EA4-903B-33450BCD9884}.Release|ARM64.Build.0 = Release|ARM64
- {C298876B-6C12-4EA4-903B-33450BCD9884}.Release|x64.ActiveCfg = Release|x64
- {C298876B-6C12-4EA4-903B-33450BCD9884}.Release|x64.Build.0 = Release|x64
- {C298876B-6C12-4EA4-903B-33450BCD9884}.Release|x86.ActiveCfg = Release|Win32
- {C298876B-6C12-4EA4-903B-33450BCD9884}.Release|x86.Build.0 = Release|Win32
- {83F586FA-C801-4979-ACCA-006BD628CC88}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
- {83F586FA-C801-4979-ACCA-006BD628CC88}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
- {83F586FA-C801-4979-ACCA-006BD628CC88}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
- {83F586FA-C801-4979-ACCA-006BD628CC88}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
- {83F586FA-C801-4979-ACCA-006BD628CC88}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
- {83F586FA-C801-4979-ACCA-006BD628CC88}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
- {83F586FA-C801-4979-ACCA-006BD628CC88}.Debug|ARM64.ActiveCfg = Debug|ARM64
- {83F586FA-C801-4979-ACCA-006BD628CC88}.Debug|ARM64.Build.0 = Debug|ARM64
- {83F586FA-C801-4979-ACCA-006BD628CC88}.Debug|x64.ActiveCfg = Debug|x64
- {83F586FA-C801-4979-ACCA-006BD628CC88}.Debug|x64.Build.0 = Debug|x64
- {83F586FA-C801-4979-ACCA-006BD628CC88}.Debug|x86.ActiveCfg = Debug|Win32
- {83F586FA-C801-4979-ACCA-006BD628CC88}.Debug|x86.Build.0 = Debug|Win32
- {83F586FA-C801-4979-ACCA-006BD628CC88}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
- {83F586FA-C801-4979-ACCA-006BD628CC88}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
- {83F586FA-C801-4979-ACCA-006BD628CC88}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
- {83F586FA-C801-4979-ACCA-006BD628CC88}.Release.DLL|x64.Build.0 = Release.DLL|x64
- {83F586FA-C801-4979-ACCA-006BD628CC88}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
- {83F586FA-C801-4979-ACCA-006BD628CC88}.Release.DLL|x86.Build.0 = Release.DLL|Win32
- {83F586FA-C801-4979-ACCA-006BD628CC88}.Release|ARM64.ActiveCfg = Release|ARM64
- {83F586FA-C801-4979-ACCA-006BD628CC88}.Release|ARM64.Build.0 = Release|ARM64
- {83F586FA-C801-4979-ACCA-006BD628CC88}.Release|x64.ActiveCfg = Release|x64
- {83F586FA-C801-4979-ACCA-006BD628CC88}.Release|x64.Build.0 = Release|x64
- {83F586FA-C801-4979-ACCA-006BD628CC88}.Release|x86.ActiveCfg = Release|Win32
- {83F586FA-C801-4979-ACCA-006BD628CC88}.Release|x86.Build.0 = Release|Win32
- {86CBE96B-F5FE-483C-BA4A-DC9B1D43AF22}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
- {86CBE96B-F5FE-483C-BA4A-DC9B1D43AF22}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
- {86CBE96B-F5FE-483C-BA4A-DC9B1D43AF22}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
- {86CBE96B-F5FE-483C-BA4A-DC9B1D43AF22}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
- {86CBE96B-F5FE-483C-BA4A-DC9B1D43AF22}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
- {86CBE96B-F5FE-483C-BA4A-DC9B1D43AF22}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
- {86CBE96B-F5FE-483C-BA4A-DC9B1D43AF22}.Debug|ARM64.ActiveCfg = Debug|ARM64
- {86CBE96B-F5FE-483C-BA4A-DC9B1D43AF22}.Debug|ARM64.Build.0 = Debug|ARM64
- {86CBE96B-F5FE-483C-BA4A-DC9B1D43AF22}.Debug|x64.ActiveCfg = Debug|x64
- {86CBE96B-F5FE-483C-BA4A-DC9B1D43AF22}.Debug|x64.Build.0 = Debug|x64
- {86CBE96B-F5FE-483C-BA4A-DC9B1D43AF22}.Debug|x86.ActiveCfg = Debug|Win32
- {86CBE96B-F5FE-483C-BA4A-DC9B1D43AF22}.Debug|x86.Build.0 = Debug|Win32
- {86CBE96B-F5FE-483C-BA4A-DC9B1D43AF22}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
- {86CBE96B-F5FE-483C-BA4A-DC9B1D43AF22}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
- {86CBE96B-F5FE-483C-BA4A-DC9B1D43AF22}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
- {86CBE96B-F5FE-483C-BA4A-DC9B1D43AF22}.Release.DLL|x64.Build.0 = Release.DLL|x64
- {86CBE96B-F5FE-483C-BA4A-DC9B1D43AF22}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
- {86CBE96B-F5FE-483C-BA4A-DC9B1D43AF22}.Release.DLL|x86.Build.0 = Release.DLL|Win32
- {86CBE96B-F5FE-483C-BA4A-DC9B1D43AF22}.Release|ARM64.ActiveCfg = Release|ARM64
- {86CBE96B-F5FE-483C-BA4A-DC9B1D43AF22}.Release|ARM64.Build.0 = Release|ARM64
- {86CBE96B-F5FE-483C-BA4A-DC9B1D43AF22}.Release|x64.ActiveCfg = Release|x64
- {86CBE96B-F5FE-483C-BA4A-DC9B1D43AF22}.Release|x64.Build.0 = Release|x64
- {86CBE96B-F5FE-483C-BA4A-DC9B1D43AF22}.Release|x86.ActiveCfg = Release|Win32
- {86CBE96B-F5FE-483C-BA4A-DC9B1D43AF22}.Release|x86.Build.0 = Release|Win32
- {FF2970AE-E2E9-405F-B321-D523A1BD44A0}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
- {FF2970AE-E2E9-405F-B321-D523A1BD44A0}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
- {FF2970AE-E2E9-405F-B321-D523A1BD44A0}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
- {FF2970AE-E2E9-405F-B321-D523A1BD44A0}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
- {FF2970AE-E2E9-405F-B321-D523A1BD44A0}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
- {FF2970AE-E2E9-405F-B321-D523A1BD44A0}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
- {FF2970AE-E2E9-405F-B321-D523A1BD44A0}.Debug|ARM64.ActiveCfg = Debug|ARM64
- {FF2970AE-E2E9-405F-B321-D523A1BD44A0}.Debug|ARM64.Build.0 = Debug|ARM64
- {FF2970AE-E2E9-405F-B321-D523A1BD44A0}.Debug|x64.ActiveCfg = Debug|x64
- {FF2970AE-E2E9-405F-B321-D523A1BD44A0}.Debug|x64.Build.0 = Debug|x64
- {FF2970AE-E2E9-405F-B321-D523A1BD44A0}.Debug|x86.ActiveCfg = Debug|Win32
- {FF2970AE-E2E9-405F-B321-D523A1BD44A0}.Debug|x86.Build.0 = Debug|Win32
- {FF2970AE-E2E9-405F-B321-D523A1BD44A0}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
- {FF2970AE-E2E9-405F-B321-D523A1BD44A0}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
- {FF2970AE-E2E9-405F-B321-D523A1BD44A0}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
- {FF2970AE-E2E9-405F-B321-D523A1BD44A0}.Release.DLL|x64.Build.0 = Release.DLL|x64
- {FF2970AE-E2E9-405F-B321-D523A1BD44A0}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
- {FF2970AE-E2E9-405F-B321-D523A1BD44A0}.Release.DLL|x86.Build.0 = Release.DLL|Win32
- {FF2970AE-E2E9-405F-B321-D523A1BD44A0}.Release|ARM64.ActiveCfg = Release|ARM64
- {FF2970AE-E2E9-405F-B321-D523A1BD44A0}.Release|ARM64.Build.0 = Release|ARM64
- {FF2970AE-E2E9-405F-B321-D523A1BD44A0}.Release|x64.ActiveCfg = Release|x64
- {FF2970AE-E2E9-405F-B321-D523A1BD44A0}.Release|x64.Build.0 = Release|x64
- {FF2970AE-E2E9-405F-B321-D523A1BD44A0}.Release|x86.ActiveCfg = Release|Win32
- {FF2970AE-E2E9-405F-B321-D523A1BD44A0}.Release|x86.Build.0 = Release|Win32
- {79417CE2-FEEB-42F0-BC53-62D5267B19B1}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
- {79417CE2-FEEB-42F0-BC53-62D5267B19B1}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
- {79417CE2-FEEB-42F0-BC53-62D5267B19B1}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
- {79417CE2-FEEB-42F0-BC53-62D5267B19B1}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
- {79417CE2-FEEB-42F0-BC53-62D5267B19B1}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
- {79417CE2-FEEB-42F0-BC53-62D5267B19B1}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
- {79417CE2-FEEB-42F0-BC53-62D5267B19B1}.Debug|ARM64.ActiveCfg = Debug|ARM64
- {79417CE2-FEEB-42F0-BC53-62D5267B19B1}.Debug|ARM64.Build.0 = Debug|ARM64
- {79417CE2-FEEB-42F0-BC53-62D5267B19B1}.Debug|x64.ActiveCfg = Debug|x64
- {79417CE2-FEEB-42F0-BC53-62D5267B19B1}.Debug|x64.Build.0 = Debug|x64
- {79417CE2-FEEB-42F0-BC53-62D5267B19B1}.Debug|x86.ActiveCfg = Debug|Win32
- {79417CE2-FEEB-42F0-BC53-62D5267B19B1}.Debug|x86.Build.0 = Debug|Win32
- {79417CE2-FEEB-42F0-BC53-62D5267B19B1}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
- {79417CE2-FEEB-42F0-BC53-62D5267B19B1}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
- {79417CE2-FEEB-42F0-BC53-62D5267B19B1}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
- {79417CE2-FEEB-42F0-BC53-62D5267B19B1}.Release.DLL|x64.Build.0 = Release.DLL|x64
- {79417CE2-FEEB-42F0-BC53-62D5267B19B1}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
- {79417CE2-FEEB-42F0-BC53-62D5267B19B1}.Release.DLL|x86.Build.0 = Release.DLL|Win32
- {79417CE2-FEEB-42F0-BC53-62D5267B19B1}.Release|ARM64.ActiveCfg = Release|ARM64
- {79417CE2-FEEB-42F0-BC53-62D5267B19B1}.Release|ARM64.Build.0 = Release|ARM64
- {79417CE2-FEEB-42F0-BC53-62D5267B19B1}.Release|x64.ActiveCfg = Release|x64
- {79417CE2-FEEB-42F0-BC53-62D5267B19B1}.Release|x64.Build.0 = Release|x64
- {79417CE2-FEEB-42F0-BC53-62D5267B19B1}.Release|x86.ActiveCfg = Release|Win32
- {79417CE2-FEEB-42F0-BC53-62D5267B19B1}.Release|x86.Build.0 = Release|Win32
- {AFDDE100-2D36-4749-817D-12E54C56312F}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
- {AFDDE100-2D36-4749-817D-12E54C56312F}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
- {AFDDE100-2D36-4749-817D-12E54C56312F}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
- {AFDDE100-2D36-4749-817D-12E54C56312F}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
- {AFDDE100-2D36-4749-817D-12E54C56312F}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
- {AFDDE100-2D36-4749-817D-12E54C56312F}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
- {AFDDE100-2D36-4749-817D-12E54C56312F}.Debug|ARM64.ActiveCfg = Debug|ARM64
- {AFDDE100-2D36-4749-817D-12E54C56312F}.Debug|ARM64.Build.0 = Debug|ARM64
- {AFDDE100-2D36-4749-817D-12E54C56312F}.Debug|x64.ActiveCfg = Debug|x64
- {AFDDE100-2D36-4749-817D-12E54C56312F}.Debug|x64.Build.0 = Debug|x64
- {AFDDE100-2D36-4749-817D-12E54C56312F}.Debug|x86.ActiveCfg = Debug|Win32
- {AFDDE100-2D36-4749-817D-12E54C56312F}.Debug|x86.Build.0 = Debug|Win32
- {AFDDE100-2D36-4749-817D-12E54C56312F}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
- {AFDDE100-2D36-4749-817D-12E54C56312F}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
- {AFDDE100-2D36-4749-817D-12E54C56312F}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
- {AFDDE100-2D36-4749-817D-12E54C56312F}.Release.DLL|x64.Build.0 = Release.DLL|x64
- {AFDDE100-2D36-4749-817D-12E54C56312F}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
- {AFDDE100-2D36-4749-817D-12E54C56312F}.Release.DLL|x86.Build.0 = Release.DLL|Win32
- {AFDDE100-2D36-4749-817D-12E54C56312F}.Release|ARM64.ActiveCfg = Release|ARM64
- {AFDDE100-2D36-4749-817D-12E54C56312F}.Release|ARM64.Build.0 = Release|ARM64
- {AFDDE100-2D36-4749-817D-12E54C56312F}.Release|x64.ActiveCfg = Release|x64
- {AFDDE100-2D36-4749-817D-12E54C56312F}.Release|x64.Build.0 = Release|x64
- {AFDDE100-2D36-4749-817D-12E54C56312F}.Release|x86.ActiveCfg = Release|Win32
- {AFDDE100-2D36-4749-817D-12E54C56312F}.Release|x86.Build.0 = Release|Win32
- {B7812167-50FB-4934-996F-DF6FE4CBBFDF}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
- {B7812167-50FB-4934-996F-DF6FE4CBBFDF}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
- {B7812167-50FB-4934-996F-DF6FE4CBBFDF}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
- {B7812167-50FB-4934-996F-DF6FE4CBBFDF}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
- {B7812167-50FB-4934-996F-DF6FE4CBBFDF}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
- {B7812167-50FB-4934-996F-DF6FE4CBBFDF}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
- {B7812167-50FB-4934-996F-DF6FE4CBBFDF}.Debug|ARM64.ActiveCfg = Debug|ARM64
- {B7812167-50FB-4934-996F-DF6FE4CBBFDF}.Debug|ARM64.Build.0 = Debug|ARM64
- {B7812167-50FB-4934-996F-DF6FE4CBBFDF}.Debug|x64.ActiveCfg = Debug|x64
- {B7812167-50FB-4934-996F-DF6FE4CBBFDF}.Debug|x64.Build.0 = Debug|x64
- {B7812167-50FB-4934-996F-DF6FE4CBBFDF}.Debug|x86.ActiveCfg = Debug|Win32
- {B7812167-50FB-4934-996F-DF6FE4CBBFDF}.Debug|x86.Build.0 = Debug|Win32
- {B7812167-50FB-4934-996F-DF6FE4CBBFDF}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
- {B7812167-50FB-4934-996F-DF6FE4CBBFDF}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
- {B7812167-50FB-4934-996F-DF6FE4CBBFDF}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
- {B7812167-50FB-4934-996F-DF6FE4CBBFDF}.Release.DLL|x64.Build.0 = Release.DLL|x64
- {B7812167-50FB-4934-996F-DF6FE4CBBFDF}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
- {B7812167-50FB-4934-996F-DF6FE4CBBFDF}.Release.DLL|x86.Build.0 = Release.DLL|Win32
- {B7812167-50FB-4934-996F-DF6FE4CBBFDF}.Release|ARM64.ActiveCfg = Release|ARM64
- {B7812167-50FB-4934-996F-DF6FE4CBBFDF}.Release|ARM64.Build.0 = Release|ARM64
- {B7812167-50FB-4934-996F-DF6FE4CBBFDF}.Release|x64.ActiveCfg = Release|x64
- {B7812167-50FB-4934-996F-DF6FE4CBBFDF}.Release|x64.Build.0 = Release|x64
- {B7812167-50FB-4934-996F-DF6FE4CBBFDF}.Release|x86.ActiveCfg = Release|Win32
- {B7812167-50FB-4934-996F-DF6FE4CBBFDF}.Release|x86.Build.0 = Release|Win32
- {39DB56C7-05F8-492C-A8D4-F19E40FECB59}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
- {39DB56C7-05F8-492C-A8D4-F19E40FECB59}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
- {39DB56C7-05F8-492C-A8D4-F19E40FECB59}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
- {39DB56C7-05F8-492C-A8D4-F19E40FECB59}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
- {39DB56C7-05F8-492C-A8D4-F19E40FECB59}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
- {39DB56C7-05F8-492C-A8D4-F19E40FECB59}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
- {39DB56C7-05F8-492C-A8D4-F19E40FECB59}.Debug|ARM64.ActiveCfg = Debug|ARM64
- {39DB56C7-05F8-492C-A8D4-F19E40FECB59}.Debug|ARM64.Build.0 = Debug|ARM64
- {39DB56C7-05F8-492C-A8D4-F19E40FECB59}.Debug|x64.ActiveCfg = Debug|x64
- {39DB56C7-05F8-492C-A8D4-F19E40FECB59}.Debug|x64.Build.0 = Debug|x64
- {39DB56C7-05F8-492C-A8D4-F19E40FECB59}.Debug|x86.ActiveCfg = Debug|Win32
- {39DB56C7-05F8-492C-A8D4-F19E40FECB59}.Debug|x86.Build.0 = Debug|Win32
- {39DB56C7-05F8-492C-A8D4-F19E40FECB59}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
- {39DB56C7-05F8-492C-A8D4-F19E40FECB59}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
- {39DB56C7-05F8-492C-A8D4-F19E40FECB59}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
- {39DB56C7-05F8-492C-A8D4-F19E40FECB59}.Release.DLL|x64.Build.0 = Release.DLL|x64
- {39DB56C7-05F8-492C-A8D4-F19E40FECB59}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
- {39DB56C7-05F8-492C-A8D4-F19E40FECB59}.Release.DLL|x86.Build.0 = Release.DLL|Win32
- {39DB56C7-05F8-492C-A8D4-F19E40FECB59}.Release|ARM64.ActiveCfg = Release|ARM64
- {39DB56C7-05F8-492C-A8D4-F19E40FECB59}.Release|ARM64.Build.0 = Release|ARM64
- {39DB56C7-05F8-492C-A8D4-F19E40FECB59}.Release|x64.ActiveCfg = Release|x64
- {39DB56C7-05F8-492C-A8D4-F19E40FECB59}.Release|x64.Build.0 = Release|x64
- {39DB56C7-05F8-492C-A8D4-F19E40FECB59}.Release|x86.ActiveCfg = Release|Win32
- {39DB56C7-05F8-492C-A8D4-F19E40FECB59}.Release|x86.Build.0 = Release|Win32
- {82F3D34B-8DB2-4C6A-98B1-132245DD9D99}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
- {82F3D34B-8DB2-4C6A-98B1-132245DD9D99}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
- {82F3D34B-8DB2-4C6A-98B1-132245DD9D99}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
- {82F3D34B-8DB2-4C6A-98B1-132245DD9D99}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
- {82F3D34B-8DB2-4C6A-98B1-132245DD9D99}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
- {82F3D34B-8DB2-4C6A-98B1-132245DD9D99}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
- {82F3D34B-8DB2-4C6A-98B1-132245DD9D99}.Debug|ARM64.ActiveCfg = Debug|ARM64
- {82F3D34B-8DB2-4C6A-98B1-132245DD9D99}.Debug|ARM64.Build.0 = Debug|ARM64
- {82F3D34B-8DB2-4C6A-98B1-132245DD9D99}.Debug|x64.ActiveCfg = Debug|x64
- {82F3D34B-8DB2-4C6A-98B1-132245DD9D99}.Debug|x64.Build.0 = Debug|x64
- {82F3D34B-8DB2-4C6A-98B1-132245DD9D99}.Debug|x86.ActiveCfg = Debug|Win32
- {82F3D34B-8DB2-4C6A-98B1-132245DD9D99}.Debug|x86.Build.0 = Debug|Win32
- {82F3D34B-8DB2-4C6A-98B1-132245DD9D99}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
- {82F3D34B-8DB2-4C6A-98B1-132245DD9D99}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
- {82F3D34B-8DB2-4C6A-98B1-132245DD9D99}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
- {82F3D34B-8DB2-4C6A-98B1-132245DD9D99}.Release.DLL|x64.Build.0 = Release.DLL|x64
- {82F3D34B-8DB2-4C6A-98B1-132245DD9D99}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
- {82F3D34B-8DB2-4C6A-98B1-132245DD9D99}.Release.DLL|x86.Build.0 = Release.DLL|Win32
- {82F3D34B-8DB2-4C6A-98B1-132245DD9D99}.Release|ARM64.ActiveCfg = Release|ARM64
- {82F3D34B-8DB2-4C6A-98B1-132245DD9D99}.Release|ARM64.Build.0 = Release|ARM64
- {82F3D34B-8DB2-4C6A-98B1-132245DD9D99}.Release|x64.ActiveCfg = Release|x64
- {82F3D34B-8DB2-4C6A-98B1-132245DD9D99}.Release|x64.Build.0 = Release|x64
- {82F3D34B-8DB2-4C6A-98B1-132245DD9D99}.Release|x86.ActiveCfg = Release|Win32
- {82F3D34B-8DB2-4C6A-98B1-132245DD9D99}.Release|x86.Build.0 = Release|Win32
- {CBD6C0F8-8200-4E9A-9D7C-6505A2AA4A62}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
- {CBD6C0F8-8200-4E9A-9D7C-6505A2AA4A62}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
- {CBD6C0F8-8200-4E9A-9D7C-6505A2AA4A62}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
- {CBD6C0F8-8200-4E9A-9D7C-6505A2AA4A62}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
- {CBD6C0F8-8200-4E9A-9D7C-6505A2AA4A62}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
- {CBD6C0F8-8200-4E9A-9D7C-6505A2AA4A62}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
- {CBD6C0F8-8200-4E9A-9D7C-6505A2AA4A62}.Debug|ARM64.ActiveCfg = Debug|ARM64
- {CBD6C0F8-8200-4E9A-9D7C-6505A2AA4A62}.Debug|ARM64.Build.0 = Debug|ARM64
- {CBD6C0F8-8200-4E9A-9D7C-6505A2AA4A62}.Debug|x64.ActiveCfg = Debug|x64
- {CBD6C0F8-8200-4E9A-9D7C-6505A2AA4A62}.Debug|x64.Build.0 = Debug|x64
- {CBD6C0F8-8200-4E9A-9D7C-6505A2AA4A62}.Debug|x86.ActiveCfg = Debug|Win32
- {CBD6C0F8-8200-4E9A-9D7C-6505A2AA4A62}.Debug|x86.Build.0 = Debug|Win32
- {CBD6C0F8-8200-4E9A-9D7C-6505A2AA4A62}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
- {CBD6C0F8-8200-4E9A-9D7C-6505A2AA4A62}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
- {CBD6C0F8-8200-4E9A-9D7C-6505A2AA4A62}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
- {CBD6C0F8-8200-4E9A-9D7C-6505A2AA4A62}.Release.DLL|x64.Build.0 = Release.DLL|x64
- {CBD6C0F8-8200-4E9A-9D7C-6505A2AA4A62}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
- {CBD6C0F8-8200-4E9A-9D7C-6505A2AA4A62}.Release.DLL|x86.Build.0 = Release.DLL|Win32
- {CBD6C0F8-8200-4E9A-9D7C-6505A2AA4A62}.Release|ARM64.ActiveCfg = Release|ARM64
- {CBD6C0F8-8200-4E9A-9D7C-6505A2AA4A62}.Release|ARM64.Build.0 = Release|ARM64
- {CBD6C0F8-8200-4E9A-9D7C-6505A2AA4A62}.Release|x64.ActiveCfg = Release|x64
- {CBD6C0F8-8200-4E9A-9D7C-6505A2AA4A62}.Release|x64.Build.0 = Release|x64
- {CBD6C0F8-8200-4E9A-9D7C-6505A2AA4A62}.Release|x86.ActiveCfg = Release|Win32
- {CBD6C0F8-8200-4E9A-9D7C-6505A2AA4A62}.Release|x86.Build.0 = Release|Win32
- {14BA7F98-02CC-4648-9236-676BFF9458AF}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
- {14BA7F98-02CC-4648-9236-676BFF9458AF}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
- {14BA7F98-02CC-4648-9236-676BFF9458AF}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
- {14BA7F98-02CC-4648-9236-676BFF9458AF}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
- {14BA7F98-02CC-4648-9236-676BFF9458AF}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
- {14BA7F98-02CC-4648-9236-676BFF9458AF}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
- {14BA7F98-02CC-4648-9236-676BFF9458AF}.Debug|ARM64.ActiveCfg = Debug|ARM64
- {14BA7F98-02CC-4648-9236-676BFF9458AF}.Debug|ARM64.Build.0 = Debug|ARM64
- {14BA7F98-02CC-4648-9236-676BFF9458AF}.Debug|x64.ActiveCfg = Debug|x64
- {14BA7F98-02CC-4648-9236-676BFF9458AF}.Debug|x64.Build.0 = Debug|x64
- {14BA7F98-02CC-4648-9236-676BFF9458AF}.Debug|x86.ActiveCfg = Debug|Win32
- {14BA7F98-02CC-4648-9236-676BFF9458AF}.Debug|x86.Build.0 = Debug|Win32
- {14BA7F98-02CC-4648-9236-676BFF9458AF}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
- {14BA7F98-02CC-4648-9236-676BFF9458AF}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
- {14BA7F98-02CC-4648-9236-676BFF9458AF}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
- {14BA7F98-02CC-4648-9236-676BFF9458AF}.Release.DLL|x64.Build.0 = Release.DLL|x64
- {14BA7F98-02CC-4648-9236-676BFF9458AF}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
- {14BA7F98-02CC-4648-9236-676BFF9458AF}.Release.DLL|x86.Build.0 = Release.DLL|Win32
- {14BA7F98-02CC-4648-9236-676BFF9458AF}.Release|ARM64.ActiveCfg = Release|ARM64
- {14BA7F98-02CC-4648-9236-676BFF9458AF}.Release|ARM64.Build.0 = Release|ARM64
- {14BA7F98-02CC-4648-9236-676BFF9458AF}.Release|x64.ActiveCfg = Release|x64
- {14BA7F98-02CC-4648-9236-676BFF9458AF}.Release|x64.Build.0 = Release|x64
- {14BA7F98-02CC-4648-9236-676BFF9458AF}.Release|x86.ActiveCfg = Release|Win32
- {14BA7F98-02CC-4648-9236-676BFF9458AF}.Release|x86.Build.0 = Release|Win32
- {0859A973-E4FE-4688-8D16-0253163FDE24}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
- {0859A973-E4FE-4688-8D16-0253163FDE24}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
- {0859A973-E4FE-4688-8D16-0253163FDE24}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
- {0859A973-E4FE-4688-8D16-0253163FDE24}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
- {0859A973-E4FE-4688-8D16-0253163FDE24}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
- {0859A973-E4FE-4688-8D16-0253163FDE24}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
- {0859A973-E4FE-4688-8D16-0253163FDE24}.Debug|ARM64.ActiveCfg = Debug|ARM64
- {0859A973-E4FE-4688-8D16-0253163FDE24}.Debug|ARM64.Build.0 = Debug|ARM64
- {0859A973-E4FE-4688-8D16-0253163FDE24}.Debug|x64.ActiveCfg = Debug|x64
- {0859A973-E4FE-4688-8D16-0253163FDE24}.Debug|x64.Build.0 = Debug|x64
- {0859A973-E4FE-4688-8D16-0253163FDE24}.Debug|x86.ActiveCfg = Debug|Win32
- {0859A973-E4FE-4688-8D16-0253163FDE24}.Debug|x86.Build.0 = Debug|Win32
- {0859A973-E4FE-4688-8D16-0253163FDE24}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
- {0859A973-E4FE-4688-8D16-0253163FDE24}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
- {0859A973-E4FE-4688-8D16-0253163FDE24}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
- {0859A973-E4FE-4688-8D16-0253163FDE24}.Release.DLL|x64.Build.0 = Release.DLL|x64
- {0859A973-E4FE-4688-8D16-0253163FDE24}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
- {0859A973-E4FE-4688-8D16-0253163FDE24}.Release.DLL|x86.Build.0 = Release.DLL|Win32
- {0859A973-E4FE-4688-8D16-0253163FDE24}.Release|ARM64.ActiveCfg = Release|ARM64
- {0859A973-E4FE-4688-8D16-0253163FDE24}.Release|ARM64.Build.0 = Release|ARM64
- {0859A973-E4FE-4688-8D16-0253163FDE24}.Release|x64.ActiveCfg = Release|x64
- {0859A973-E4FE-4688-8D16-0253163FDE24}.Release|x64.Build.0 = Release|x64
- {0859A973-E4FE-4688-8D16-0253163FDE24}.Release|x86.ActiveCfg = Release|Win32
- {0859A973-E4FE-4688-8D16-0253163FDE24}.Release|x86.Build.0 = Release|Win32
- {F3412853-2B6A-4334-8CF2-B796CDAE0850}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
- {F3412853-2B6A-4334-8CF2-B796CDAE0850}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
- {F3412853-2B6A-4334-8CF2-B796CDAE0850}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
- {F3412853-2B6A-4334-8CF2-B796CDAE0850}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
- {F3412853-2B6A-4334-8CF2-B796CDAE0850}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
- {F3412853-2B6A-4334-8CF2-B796CDAE0850}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
- {F3412853-2B6A-4334-8CF2-B796CDAE0850}.Debug|ARM64.ActiveCfg = Debug|ARM64
- {F3412853-2B6A-4334-8CF2-B796CDAE0850}.Debug|ARM64.Build.0 = Debug|ARM64
- {F3412853-2B6A-4334-8CF2-B796CDAE0850}.Debug|x64.ActiveCfg = Debug|x64
- {F3412853-2B6A-4334-8CF2-B796CDAE0850}.Debug|x64.Build.0 = Debug|x64
- {F3412853-2B6A-4334-8CF2-B796CDAE0850}.Debug|x86.ActiveCfg = Debug|Win32
- {F3412853-2B6A-4334-8CF2-B796CDAE0850}.Debug|x86.Build.0 = Debug|Win32
- {F3412853-2B6A-4334-8CF2-B796CDAE0850}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
- {F3412853-2B6A-4334-8CF2-B796CDAE0850}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
- {F3412853-2B6A-4334-8CF2-B796CDAE0850}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
- {F3412853-2B6A-4334-8CF2-B796CDAE0850}.Release.DLL|x64.Build.0 = Release.DLL|x64
- {F3412853-2B6A-4334-8CF2-B796CDAE0850}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
- {F3412853-2B6A-4334-8CF2-B796CDAE0850}.Release.DLL|x86.Build.0 = Release.DLL|Win32
- {F3412853-2B6A-4334-8CF2-B796CDAE0850}.Release|ARM64.ActiveCfg = Release|ARM64
- {F3412853-2B6A-4334-8CF2-B796CDAE0850}.Release|ARM64.Build.0 = Release|ARM64
- {F3412853-2B6A-4334-8CF2-B796CDAE0850}.Release|x64.ActiveCfg = Release|x64
- {F3412853-2B6A-4334-8CF2-B796CDAE0850}.Release|x64.Build.0 = Release|x64
- {F3412853-2B6A-4334-8CF2-B796CDAE0850}.Release|x86.ActiveCfg = Release|Win32
- {F3412853-2B6A-4334-8CF2-B796CDAE0850}.Release|x86.Build.0 = Release|Win32
- {BE097E8F-B6F3-45DC-8A27-E0EBC31AB912}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
- {BE097E8F-B6F3-45DC-8A27-E0EBC31AB912}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
- {BE097E8F-B6F3-45DC-8A27-E0EBC31AB912}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
- {BE097E8F-B6F3-45DC-8A27-E0EBC31AB912}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
- {BE097E8F-B6F3-45DC-8A27-E0EBC31AB912}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
- {BE097E8F-B6F3-45DC-8A27-E0EBC31AB912}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
- {BE097E8F-B6F3-45DC-8A27-E0EBC31AB912}.Debug|ARM64.ActiveCfg = Debug|ARM64
- {BE097E8F-B6F3-45DC-8A27-E0EBC31AB912}.Debug|ARM64.Build.0 = Debug|ARM64
- {BE097E8F-B6F3-45DC-8A27-E0EBC31AB912}.Debug|x64.ActiveCfg = Debug|x64
- {BE097E8F-B6F3-45DC-8A27-E0EBC31AB912}.Debug|x64.Build.0 = Debug|x64
- {BE097E8F-B6F3-45DC-8A27-E0EBC31AB912}.Debug|x86.ActiveCfg = Debug|Win32
- {BE097E8F-B6F3-45DC-8A27-E0EBC31AB912}.Debug|x86.Build.0 = Debug|Win32
- {BE097E8F-B6F3-45DC-8A27-E0EBC31AB912}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
- {BE097E8F-B6F3-45DC-8A27-E0EBC31AB912}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
- {BE097E8F-B6F3-45DC-8A27-E0EBC31AB912}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
- {BE097E8F-B6F3-45DC-8A27-E0EBC31AB912}.Release.DLL|x64.Build.0 = Release.DLL|x64
- {BE097E8F-B6F3-45DC-8A27-E0EBC31AB912}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
- {BE097E8F-B6F3-45DC-8A27-E0EBC31AB912}.Release.DLL|x86.Build.0 = Release.DLL|Win32
- {BE097E8F-B6F3-45DC-8A27-E0EBC31AB912}.Release|ARM64.ActiveCfg = Release|ARM64
- {BE097E8F-B6F3-45DC-8A27-E0EBC31AB912}.Release|ARM64.Build.0 = Release|ARM64
- {BE097E8F-B6F3-45DC-8A27-E0EBC31AB912}.Release|x64.ActiveCfg = Release|x64
- {BE097E8F-B6F3-45DC-8A27-E0EBC31AB912}.Release|x64.Build.0 = Release|x64
- {BE097E8F-B6F3-45DC-8A27-E0EBC31AB912}.Release|x86.ActiveCfg = Release|Win32
- {BE097E8F-B6F3-45DC-8A27-E0EBC31AB912}.Release|x86.Build.0 = Release|Win32
- {D03F2C82-9553-4AFA-8F49-9234009122B6}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
- {D03F2C82-9553-4AFA-8F49-9234009122B6}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
- {D03F2C82-9553-4AFA-8F49-9234009122B6}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
- {D03F2C82-9553-4AFA-8F49-9234009122B6}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
- {D03F2C82-9553-4AFA-8F49-9234009122B6}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
- {D03F2C82-9553-4AFA-8F49-9234009122B6}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
- {D03F2C82-9553-4AFA-8F49-9234009122B6}.Debug|ARM64.ActiveCfg = Debug|ARM64
- {D03F2C82-9553-4AFA-8F49-9234009122B6}.Debug|ARM64.Build.0 = Debug|ARM64
- {D03F2C82-9553-4AFA-8F49-9234009122B6}.Debug|x64.ActiveCfg = Debug|x64
- {D03F2C82-9553-4AFA-8F49-9234009122B6}.Debug|x64.Build.0 = Debug|x64
- {D03F2C82-9553-4AFA-8F49-9234009122B6}.Debug|x86.ActiveCfg = Debug|Win32
- {D03F2C82-9553-4AFA-8F49-9234009122B6}.Debug|x86.Build.0 = Debug|Win32
- {D03F2C82-9553-4AFA-8F49-9234009122B6}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
- {D03F2C82-9553-4AFA-8F49-9234009122B6}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
- {D03F2C82-9553-4AFA-8F49-9234009122B6}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
- {D03F2C82-9553-4AFA-8F49-9234009122B6}.Release.DLL|x64.Build.0 = Release.DLL|x64
- {D03F2C82-9553-4AFA-8F49-9234009122B6}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
- {D03F2C82-9553-4AFA-8F49-9234009122B6}.Release.DLL|x86.Build.0 = Release.DLL|Win32
- {D03F2C82-9553-4AFA-8F49-9234009122B6}.Release|ARM64.ActiveCfg = Release|ARM64
- {D03F2C82-9553-4AFA-8F49-9234009122B6}.Release|ARM64.Build.0 = Release|ARM64
- {D03F2C82-9553-4AFA-8F49-9234009122B6}.Release|x64.ActiveCfg = Release|x64
- {D03F2C82-9553-4AFA-8F49-9234009122B6}.Release|x64.Build.0 = Release|x64
- {D03F2C82-9553-4AFA-8F49-9234009122B6}.Release|x86.ActiveCfg = Release|Win32
- {D03F2C82-9553-4AFA-8F49-9234009122B6}.Release|x86.Build.0 = Release|Win32
- {FE232CA5-6C0D-4ADF-9A21-775D4DC048D3}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
- {FE232CA5-6C0D-4ADF-9A21-775D4DC048D3}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
- {FE232CA5-6C0D-4ADF-9A21-775D4DC048D3}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
- {FE232CA5-6C0D-4ADF-9A21-775D4DC048D3}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
- {FE232CA5-6C0D-4ADF-9A21-775D4DC048D3}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
- {FE232CA5-6C0D-4ADF-9A21-775D4DC048D3}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
- {FE232CA5-6C0D-4ADF-9A21-775D4DC048D3}.Debug|ARM64.ActiveCfg = Debug|ARM64
- {FE232CA5-6C0D-4ADF-9A21-775D4DC048D3}.Debug|ARM64.Build.0 = Debug|ARM64
- {FE232CA5-6C0D-4ADF-9A21-775D4DC048D3}.Debug|x64.ActiveCfg = Debug|x64
- {FE232CA5-6C0D-4ADF-9A21-775D4DC048D3}.Debug|x64.Build.0 = Debug|x64
- {FE232CA5-6C0D-4ADF-9A21-775D4DC048D3}.Debug|x86.ActiveCfg = Debug|Win32
- {FE232CA5-6C0D-4ADF-9A21-775D4DC048D3}.Debug|x86.Build.0 = Debug|Win32
- {FE232CA5-6C0D-4ADF-9A21-775D4DC048D3}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
- {FE232CA5-6C0D-4ADF-9A21-775D4DC048D3}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
- {FE232CA5-6C0D-4ADF-9A21-775D4DC048D3}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
- {FE232CA5-6C0D-4ADF-9A21-775D4DC048D3}.Release.DLL|x64.Build.0 = Release.DLL|x64
- {FE232CA5-6C0D-4ADF-9A21-775D4DC048D3}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
- {FE232CA5-6C0D-4ADF-9A21-775D4DC048D3}.Release.DLL|x86.Build.0 = Release.DLL|Win32
- {FE232CA5-6C0D-4ADF-9A21-775D4DC048D3}.Release|ARM64.ActiveCfg = Release|ARM64
- {FE232CA5-6C0D-4ADF-9A21-775D4DC048D3}.Release|ARM64.Build.0 = Release|ARM64
- {FE232CA5-6C0D-4ADF-9A21-775D4DC048D3}.Release|x64.ActiveCfg = Release|x64
- {FE232CA5-6C0D-4ADF-9A21-775D4DC048D3}.Release|x64.Build.0 = Release|x64
- {FE232CA5-6C0D-4ADF-9A21-775D4DC048D3}.Release|x86.ActiveCfg = Release|Win32
- {FE232CA5-6C0D-4ADF-9A21-775D4DC048D3}.Release|x86.Build.0 = Release|Win32
- {A53CCF42-A972-478F-9336-0F618B3EC06A}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
- {A53CCF42-A972-478F-9336-0F618B3EC06A}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
- {A53CCF42-A972-478F-9336-0F618B3EC06A}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
- {A53CCF42-A972-478F-9336-0F618B3EC06A}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
- {A53CCF42-A972-478F-9336-0F618B3EC06A}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
- {A53CCF42-A972-478F-9336-0F618B3EC06A}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
- {A53CCF42-A972-478F-9336-0F618B3EC06A}.Debug|ARM64.ActiveCfg = Debug|ARM64
- {A53CCF42-A972-478F-9336-0F618B3EC06A}.Debug|ARM64.Build.0 = Debug|ARM64
- {A53CCF42-A972-478F-9336-0F618B3EC06A}.Debug|x64.ActiveCfg = Debug|x64
- {A53CCF42-A972-478F-9336-0F618B3EC06A}.Debug|x64.Build.0 = Debug|x64
- {A53CCF42-A972-478F-9336-0F618B3EC06A}.Debug|x86.ActiveCfg = Debug|Win32
- {A53CCF42-A972-478F-9336-0F618B3EC06A}.Debug|x86.Build.0 = Debug|Win32
- {A53CCF42-A972-478F-9336-0F618B3EC06A}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
- {A53CCF42-A972-478F-9336-0F618B3EC06A}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
- {A53CCF42-A972-478F-9336-0F618B3EC06A}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
- {A53CCF42-A972-478F-9336-0F618B3EC06A}.Release.DLL|x64.Build.0 = Release.DLL|x64
- {A53CCF42-A972-478F-9336-0F618B3EC06A}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
- {A53CCF42-A972-478F-9336-0F618B3EC06A}.Release.DLL|x86.Build.0 = Release.DLL|Win32
- {A53CCF42-A972-478F-9336-0F618B3EC06A}.Release|ARM64.ActiveCfg = Release|ARM64
- {A53CCF42-A972-478F-9336-0F618B3EC06A}.Release|ARM64.Build.0 = Release|ARM64
- {A53CCF42-A972-478F-9336-0F618B3EC06A}.Release|x64.ActiveCfg = Release|x64
- {A53CCF42-A972-478F-9336-0F618B3EC06A}.Release|x64.Build.0 = Release|x64
- {A53CCF42-A972-478F-9336-0F618B3EC06A}.Release|x86.ActiveCfg = Release|Win32
- {A53CCF42-A972-478F-9336-0F618B3EC06A}.Release|x86.Build.0 = Release|Win32
- {0037A3CD-4F50-48B2-9AC3-5A0D1D16D2CA}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
- {0037A3CD-4F50-48B2-9AC3-5A0D1D16D2CA}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
- {0037A3CD-4F50-48B2-9AC3-5A0D1D16D2CA}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
- {0037A3CD-4F50-48B2-9AC3-5A0D1D16D2CA}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
- {0037A3CD-4F50-48B2-9AC3-5A0D1D16D2CA}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
- {0037A3CD-4F50-48B2-9AC3-5A0D1D16D2CA}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
- {0037A3CD-4F50-48B2-9AC3-5A0D1D16D2CA}.Debug|ARM64.ActiveCfg = Debug|ARM64
- {0037A3CD-4F50-48B2-9AC3-5A0D1D16D2CA}.Debug|ARM64.Build.0 = Debug|ARM64
- {0037A3CD-4F50-48B2-9AC3-5A0D1D16D2CA}.Debug|x64.ActiveCfg = Debug|x64
- {0037A3CD-4F50-48B2-9AC3-5A0D1D16D2CA}.Debug|x64.Build.0 = Debug|x64
- {0037A3CD-4F50-48B2-9AC3-5A0D1D16D2CA}.Debug|x86.ActiveCfg = Debug|Win32
- {0037A3CD-4F50-48B2-9AC3-5A0D1D16D2CA}.Debug|x86.Build.0 = Debug|Win32
- {0037A3CD-4F50-48B2-9AC3-5A0D1D16D2CA}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
- {0037A3CD-4F50-48B2-9AC3-5A0D1D16D2CA}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
- {0037A3CD-4F50-48B2-9AC3-5A0D1D16D2CA}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
- {0037A3CD-4F50-48B2-9AC3-5A0D1D16D2CA}.Release.DLL|x64.Build.0 = Release.DLL|x64
- {0037A3CD-4F50-48B2-9AC3-5A0D1D16D2CA}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
- {0037A3CD-4F50-48B2-9AC3-5A0D1D16D2CA}.Release.DLL|x86.Build.0 = Release.DLL|Win32
- {0037A3CD-4F50-48B2-9AC3-5A0D1D16D2CA}.Release|ARM64.ActiveCfg = Release|ARM64
- {0037A3CD-4F50-48B2-9AC3-5A0D1D16D2CA}.Release|ARM64.Build.0 = Release|ARM64
- {0037A3CD-4F50-48B2-9AC3-5A0D1D16D2CA}.Release|x64.ActiveCfg = Release|x64
- {0037A3CD-4F50-48B2-9AC3-5A0D1D16D2CA}.Release|x64.Build.0 = Release|x64
- {0037A3CD-4F50-48B2-9AC3-5A0D1D16D2CA}.Release|x86.ActiveCfg = Release|Win32
- {0037A3CD-4F50-48B2-9AC3-5A0D1D16D2CA}.Release|x86.Build.0 = Release|Win32
- {870723DD-945A-4136-B65B-4AF3BF85369C}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
- {870723DD-945A-4136-B65B-4AF3BF85369C}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
- {870723DD-945A-4136-B65B-4AF3BF85369C}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
- {870723DD-945A-4136-B65B-4AF3BF85369C}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
- {870723DD-945A-4136-B65B-4AF3BF85369C}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
- {870723DD-945A-4136-B65B-4AF3BF85369C}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
- {870723DD-945A-4136-B65B-4AF3BF85369C}.Debug|ARM64.ActiveCfg = Debug|ARM64
- {870723DD-945A-4136-B65B-4AF3BF85369C}.Debug|ARM64.Build.0 = Debug|ARM64
- {870723DD-945A-4136-B65B-4AF3BF85369C}.Debug|x64.ActiveCfg = Debug|x64
- {870723DD-945A-4136-B65B-4AF3BF85369C}.Debug|x64.Build.0 = Debug|x64
- {870723DD-945A-4136-B65B-4AF3BF85369C}.Debug|x86.ActiveCfg = Debug|Win32
- {870723DD-945A-4136-B65B-4AF3BF85369C}.Debug|x86.Build.0 = Debug|Win32
- {870723DD-945A-4136-B65B-4AF3BF85369C}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
- {870723DD-945A-4136-B65B-4AF3BF85369C}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
- {870723DD-945A-4136-B65B-4AF3BF85369C}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
- {870723DD-945A-4136-B65B-4AF3BF85369C}.Release.DLL|x64.Build.0 = Release.DLL|x64
- {870723DD-945A-4136-B65B-4AF3BF85369C}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
- {870723DD-945A-4136-B65B-4AF3BF85369C}.Release.DLL|x86.Build.0 = Release.DLL|Win32
- {870723DD-945A-4136-B65B-4AF3BF85369C}.Release|ARM64.ActiveCfg = Release|ARM64
- {870723DD-945A-4136-B65B-4AF3BF85369C}.Release|ARM64.Build.0 = Release|ARM64
- {870723DD-945A-4136-B65B-4AF3BF85369C}.Release|x64.ActiveCfg = Release|x64
- {870723DD-945A-4136-B65B-4AF3BF85369C}.Release|x64.Build.0 = Release|x64
- {870723DD-945A-4136-B65B-4AF3BF85369C}.Release|x86.ActiveCfg = Release|Win32
- {870723DD-945A-4136-B65B-4AF3BF85369C}.Release|x86.Build.0 = Release|Win32
- {EA6488AD-445B-4835-87FB-EBC9E2EDAF97}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
- {EA6488AD-445B-4835-87FB-EBC9E2EDAF97}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
- {EA6488AD-445B-4835-87FB-EBC9E2EDAF97}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
- {EA6488AD-445B-4835-87FB-EBC9E2EDAF97}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
- {EA6488AD-445B-4835-87FB-EBC9E2EDAF97}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
- {EA6488AD-445B-4835-87FB-EBC9E2EDAF97}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
- {EA6488AD-445B-4835-87FB-EBC9E2EDAF97}.Debug|ARM64.ActiveCfg = Debug|ARM64
- {EA6488AD-445B-4835-87FB-EBC9E2EDAF97}.Debug|ARM64.Build.0 = Debug|ARM64
- {EA6488AD-445B-4835-87FB-EBC9E2EDAF97}.Debug|x64.ActiveCfg = Debug|x64
- {EA6488AD-445B-4835-87FB-EBC9E2EDAF97}.Debug|x64.Build.0 = Debug|x64
- {EA6488AD-445B-4835-87FB-EBC9E2EDAF97}.Debug|x86.ActiveCfg = Debug|Win32
- {EA6488AD-445B-4835-87FB-EBC9E2EDAF97}.Debug|x86.Build.0 = Debug|Win32
- {EA6488AD-445B-4835-87FB-EBC9E2EDAF97}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
- {EA6488AD-445B-4835-87FB-EBC9E2EDAF97}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
- {EA6488AD-445B-4835-87FB-EBC9E2EDAF97}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
- {EA6488AD-445B-4835-87FB-EBC9E2EDAF97}.Release.DLL|x64.Build.0 = Release.DLL|x64
- {EA6488AD-445B-4835-87FB-EBC9E2EDAF97}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
- {EA6488AD-445B-4835-87FB-EBC9E2EDAF97}.Release.DLL|x86.Build.0 = Release.DLL|Win32
- {EA6488AD-445B-4835-87FB-EBC9E2EDAF97}.Release|ARM64.ActiveCfg = Release|ARM64
- {EA6488AD-445B-4835-87FB-EBC9E2EDAF97}.Release|ARM64.Build.0 = Release|ARM64
- {EA6488AD-445B-4835-87FB-EBC9E2EDAF97}.Release|x64.ActiveCfg = Release|x64
- {EA6488AD-445B-4835-87FB-EBC9E2EDAF97}.Release|x64.Build.0 = Release|x64
- {EA6488AD-445B-4835-87FB-EBC9E2EDAF97}.Release|x86.ActiveCfg = Release|Win32
- {EA6488AD-445B-4835-87FB-EBC9E2EDAF97}.Release|x86.Build.0 = Release|Win32
- {E07B6DBE-3358-4BA0-AABF-CDD8F96AECF0}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
- {E07B6DBE-3358-4BA0-AABF-CDD8F96AECF0}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
- {E07B6DBE-3358-4BA0-AABF-CDD8F96AECF0}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
- {E07B6DBE-3358-4BA0-AABF-CDD8F96AECF0}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
- {E07B6DBE-3358-4BA0-AABF-CDD8F96AECF0}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
- {E07B6DBE-3358-4BA0-AABF-CDD8F96AECF0}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
- {E07B6DBE-3358-4BA0-AABF-CDD8F96AECF0}.Debug|ARM64.ActiveCfg = Debug|ARM64
- {E07B6DBE-3358-4BA0-AABF-CDD8F96AECF0}.Debug|ARM64.Build.0 = Debug|ARM64
- {E07B6DBE-3358-4BA0-AABF-CDD8F96AECF0}.Debug|x64.ActiveCfg = Debug|x64
- {E07B6DBE-3358-4BA0-AABF-CDD8F96AECF0}.Debug|x64.Build.0 = Debug|x64
- {E07B6DBE-3358-4BA0-AABF-CDD8F96AECF0}.Debug|x86.ActiveCfg = Debug|Win32
- {E07B6DBE-3358-4BA0-AABF-CDD8F96AECF0}.Debug|x86.Build.0 = Debug|Win32
- {E07B6DBE-3358-4BA0-AABF-CDD8F96AECF0}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
- {E07B6DBE-3358-4BA0-AABF-CDD8F96AECF0}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
- {E07B6DBE-3358-4BA0-AABF-CDD8F96AECF0}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
- {E07B6DBE-3358-4BA0-AABF-CDD8F96AECF0}.Release.DLL|x64.Build.0 = Release.DLL|x64
- {E07B6DBE-3358-4BA0-AABF-CDD8F96AECF0}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
- {E07B6DBE-3358-4BA0-AABF-CDD8F96AECF0}.Release.DLL|x86.Build.0 = Release.DLL|Win32
- {E07B6DBE-3358-4BA0-AABF-CDD8F96AECF0}.Release|ARM64.ActiveCfg = Release|ARM64
- {E07B6DBE-3358-4BA0-AABF-CDD8F96AECF0}.Release|ARM64.Build.0 = Release|ARM64
- {E07B6DBE-3358-4BA0-AABF-CDD8F96AECF0}.Release|x64.ActiveCfg = Release|x64
- {E07B6DBE-3358-4BA0-AABF-CDD8F96AECF0}.Release|x64.Build.0 = Release|x64
- {E07B6DBE-3358-4BA0-AABF-CDD8F96AECF0}.Release|x86.ActiveCfg = Release|Win32
- {E07B6DBE-3358-4BA0-AABF-CDD8F96AECF0}.Release|x86.Build.0 = Release|Win32
- {472BCBDC-62E0-441D-B2FD-0EE0FC6CEEB4}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
- {472BCBDC-62E0-441D-B2FD-0EE0FC6CEEB4}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
- {472BCBDC-62E0-441D-B2FD-0EE0FC6CEEB4}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
- {472BCBDC-62E0-441D-B2FD-0EE0FC6CEEB4}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
- {472BCBDC-62E0-441D-B2FD-0EE0FC6CEEB4}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
- {472BCBDC-62E0-441D-B2FD-0EE0FC6CEEB4}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
- {472BCBDC-62E0-441D-B2FD-0EE0FC6CEEB4}.Debug|ARM64.ActiveCfg = Debug|ARM64
- {472BCBDC-62E0-441D-B2FD-0EE0FC6CEEB4}.Debug|ARM64.Build.0 = Debug|ARM64
- {472BCBDC-62E0-441D-B2FD-0EE0FC6CEEB4}.Debug|x64.ActiveCfg = Debug|x64
- {472BCBDC-62E0-441D-B2FD-0EE0FC6CEEB4}.Debug|x64.Build.0 = Debug|x64
- {472BCBDC-62E0-441D-B2FD-0EE0FC6CEEB4}.Debug|x86.ActiveCfg = Debug|Win32
- {472BCBDC-62E0-441D-B2FD-0EE0FC6CEEB4}.Debug|x86.Build.0 = Debug|Win32
- {472BCBDC-62E0-441D-B2FD-0EE0FC6CEEB4}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
- {472BCBDC-62E0-441D-B2FD-0EE0FC6CEEB4}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
- {472BCBDC-62E0-441D-B2FD-0EE0FC6CEEB4}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
- {472BCBDC-62E0-441D-B2FD-0EE0FC6CEEB4}.Release.DLL|x64.Build.0 = Release.DLL|x64
- {472BCBDC-62E0-441D-B2FD-0EE0FC6CEEB4}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
- {472BCBDC-62E0-441D-B2FD-0EE0FC6CEEB4}.Release.DLL|x86.Build.0 = Release.DLL|Win32
- {472BCBDC-62E0-441D-B2FD-0EE0FC6CEEB4}.Release|ARM64.ActiveCfg = Release|ARM64
- {472BCBDC-62E0-441D-B2FD-0EE0FC6CEEB4}.Release|ARM64.Build.0 = Release|ARM64
- {472BCBDC-62E0-441D-B2FD-0EE0FC6CEEB4}.Release|x64.ActiveCfg = Release|x64
- {472BCBDC-62E0-441D-B2FD-0EE0FC6CEEB4}.Release|x64.Build.0 = Release|x64
- {472BCBDC-62E0-441D-B2FD-0EE0FC6CEEB4}.Release|x86.ActiveCfg = Release|Win32
- {472BCBDC-62E0-441D-B2FD-0EE0FC6CEEB4}.Release|x86.Build.0 = Release|Win32
- {589C8E9B-0BB3-4D6D-A70C-0A28E469F20E}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
- {589C8E9B-0BB3-4D6D-A70C-0A28E469F20E}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
- {589C8E9B-0BB3-4D6D-A70C-0A28E469F20E}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
- {589C8E9B-0BB3-4D6D-A70C-0A28E469F20E}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
- {589C8E9B-0BB3-4D6D-A70C-0A28E469F20E}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
- {589C8E9B-0BB3-4D6D-A70C-0A28E469F20E}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
- {589C8E9B-0BB3-4D6D-A70C-0A28E469F20E}.Debug|ARM64.ActiveCfg = Debug|ARM64
- {589C8E9B-0BB3-4D6D-A70C-0A28E469F20E}.Debug|ARM64.Build.0 = Debug|ARM64
- {589C8E9B-0BB3-4D6D-A70C-0A28E469F20E}.Debug|x64.ActiveCfg = Debug|x64
- {589C8E9B-0BB3-4D6D-A70C-0A28E469F20E}.Debug|x64.Build.0 = Debug|x64
- {589C8E9B-0BB3-4D6D-A70C-0A28E469F20E}.Debug|x86.ActiveCfg = Debug|Win32
- {589C8E9B-0BB3-4D6D-A70C-0A28E469F20E}.Debug|x86.Build.0 = Debug|Win32
- {589C8E9B-0BB3-4D6D-A70C-0A28E469F20E}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
- {589C8E9B-0BB3-4D6D-A70C-0A28E469F20E}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
- {589C8E9B-0BB3-4D6D-A70C-0A28E469F20E}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
- {589C8E9B-0BB3-4D6D-A70C-0A28E469F20E}.Release.DLL|x64.Build.0 = Release.DLL|x64
- {589C8E9B-0BB3-4D6D-A70C-0A28E469F20E}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
- {589C8E9B-0BB3-4D6D-A70C-0A28E469F20E}.Release.DLL|x86.Build.0 = Release.DLL|Win32
- {589C8E9B-0BB3-4D6D-A70C-0A28E469F20E}.Release|ARM64.ActiveCfg = Release|ARM64
- {589C8E9B-0BB3-4D6D-A70C-0A28E469F20E}.Release|ARM64.Build.0 = Release|ARM64
- {589C8E9B-0BB3-4D6D-A70C-0A28E469F20E}.Release|x64.ActiveCfg = Release|x64
- {589C8E9B-0BB3-4D6D-A70C-0A28E469F20E}.Release|x64.Build.0 = Release|x64
- {589C8E9B-0BB3-4D6D-A70C-0A28E469F20E}.Release|x86.ActiveCfg = Release|Win32
- {589C8E9B-0BB3-4D6D-A70C-0A28E469F20E}.Release|x86.Build.0 = Release|Win32
- {3AD868E6-8355-4F29-B5ED-7DE94AD786E7}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
- {3AD868E6-8355-4F29-B5ED-7DE94AD786E7}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
- {3AD868E6-8355-4F29-B5ED-7DE94AD786E7}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
- {3AD868E6-8355-4F29-B5ED-7DE94AD786E7}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
- {3AD868E6-8355-4F29-B5ED-7DE94AD786E7}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
- {3AD868E6-8355-4F29-B5ED-7DE94AD786E7}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
- {3AD868E6-8355-4F29-B5ED-7DE94AD786E7}.Debug|ARM64.ActiveCfg = Debug|ARM64
- {3AD868E6-8355-4F29-B5ED-7DE94AD786E7}.Debug|ARM64.Build.0 = Debug|ARM64
- {3AD868E6-8355-4F29-B5ED-7DE94AD786E7}.Debug|x64.ActiveCfg = Debug|x64
- {3AD868E6-8355-4F29-B5ED-7DE94AD786E7}.Debug|x64.Build.0 = Debug|x64
- {3AD868E6-8355-4F29-B5ED-7DE94AD786E7}.Debug|x86.ActiveCfg = Debug|Win32
- {3AD868E6-8355-4F29-B5ED-7DE94AD786E7}.Debug|x86.Build.0 = Debug|Win32
- {3AD868E6-8355-4F29-B5ED-7DE94AD786E7}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
- {3AD868E6-8355-4F29-B5ED-7DE94AD786E7}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
- {3AD868E6-8355-4F29-B5ED-7DE94AD786E7}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
- {3AD868E6-8355-4F29-B5ED-7DE94AD786E7}.Release.DLL|x64.Build.0 = Release.DLL|x64
- {3AD868E6-8355-4F29-B5ED-7DE94AD786E7}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
- {3AD868E6-8355-4F29-B5ED-7DE94AD786E7}.Release.DLL|x86.Build.0 = Release.DLL|Win32
- {3AD868E6-8355-4F29-B5ED-7DE94AD786E7}.Release|ARM64.ActiveCfg = Release|ARM64
- {3AD868E6-8355-4F29-B5ED-7DE94AD786E7}.Release|ARM64.Build.0 = Release|ARM64
- {3AD868E6-8355-4F29-B5ED-7DE94AD786E7}.Release|x64.ActiveCfg = Release|x64
- {3AD868E6-8355-4F29-B5ED-7DE94AD786E7}.Release|x64.Build.0 = Release|x64
- {3AD868E6-8355-4F29-B5ED-7DE94AD786E7}.Release|x86.ActiveCfg = Release|Win32
- {3AD868E6-8355-4F29-B5ED-7DE94AD786E7}.Release|x86.Build.0 = Release|Win32
- {2B78CF0A-5403-45E2-99BD-493F1679BCDB}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
- {2B78CF0A-5403-45E2-99BD-493F1679BCDB}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
- {2B78CF0A-5403-45E2-99BD-493F1679BCDB}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
- {2B78CF0A-5403-45E2-99BD-493F1679BCDB}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
- {2B78CF0A-5403-45E2-99BD-493F1679BCDB}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
- {2B78CF0A-5403-45E2-99BD-493F1679BCDB}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
- {2B78CF0A-5403-45E2-99BD-493F1679BCDB}.Debug|ARM64.ActiveCfg = Debug|ARM64
- {2B78CF0A-5403-45E2-99BD-493F1679BCDB}.Debug|ARM64.Build.0 = Debug|ARM64
- {2B78CF0A-5403-45E2-99BD-493F1679BCDB}.Debug|x64.ActiveCfg = Debug|x64
- {2B78CF0A-5403-45E2-99BD-493F1679BCDB}.Debug|x64.Build.0 = Debug|x64
- {2B78CF0A-5403-45E2-99BD-493F1679BCDB}.Debug|x86.ActiveCfg = Debug|Win32
- {2B78CF0A-5403-45E2-99BD-493F1679BCDB}.Debug|x86.Build.0 = Debug|Win32
- {2B78CF0A-5403-45E2-99BD-493F1679BCDB}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
- {2B78CF0A-5403-45E2-99BD-493F1679BCDB}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
- {2B78CF0A-5403-45E2-99BD-493F1679BCDB}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
- {2B78CF0A-5403-45E2-99BD-493F1679BCDB}.Release.DLL|x64.Build.0 = Release.DLL|x64
- {2B78CF0A-5403-45E2-99BD-493F1679BCDB}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
- {2B78CF0A-5403-45E2-99BD-493F1679BCDB}.Release.DLL|x86.Build.0 = Release.DLL|Win32
- {2B78CF0A-5403-45E2-99BD-493F1679BCDB}.Release|ARM64.ActiveCfg = Release|ARM64
- {2B78CF0A-5403-45E2-99BD-493F1679BCDB}.Release|ARM64.Build.0 = Release|ARM64
- {2B78CF0A-5403-45E2-99BD-493F1679BCDB}.Release|x64.ActiveCfg = Release|x64
- {2B78CF0A-5403-45E2-99BD-493F1679BCDB}.Release|x64.Build.0 = Release|x64
- {2B78CF0A-5403-45E2-99BD-493F1679BCDB}.Release|x86.ActiveCfg = Release|Win32
- {2B78CF0A-5403-45E2-99BD-493F1679BCDB}.Release|x86.Build.0 = Release|Win32
- {0AB968E0-E993-45CE-8875-7453C96DF583}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
- {0AB968E0-E993-45CE-8875-7453C96DF583}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
- {0AB968E0-E993-45CE-8875-7453C96DF583}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
- {0AB968E0-E993-45CE-8875-7453C96DF583}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
- {0AB968E0-E993-45CE-8875-7453C96DF583}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
- {0AB968E0-E993-45CE-8875-7453C96DF583}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
- {0AB968E0-E993-45CE-8875-7453C96DF583}.Debug|ARM64.ActiveCfg = Debug|ARM64
- {0AB968E0-E993-45CE-8875-7453C96DF583}.Debug|ARM64.Build.0 = Debug|ARM64
- {0AB968E0-E993-45CE-8875-7453C96DF583}.Debug|x64.ActiveCfg = Debug|x64
- {0AB968E0-E993-45CE-8875-7453C96DF583}.Debug|x64.Build.0 = Debug|x64
- {0AB968E0-E993-45CE-8875-7453C96DF583}.Debug|x86.ActiveCfg = Debug|Win32
- {0AB968E0-E993-45CE-8875-7453C96DF583}.Debug|x86.Build.0 = Debug|Win32
- {0AB968E0-E993-45CE-8875-7453C96DF583}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
- {0AB968E0-E993-45CE-8875-7453C96DF583}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
- {0AB968E0-E993-45CE-8875-7453C96DF583}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
- {0AB968E0-E993-45CE-8875-7453C96DF583}.Release.DLL|x64.Build.0 = Release.DLL|x64
- {0AB968E0-E993-45CE-8875-7453C96DF583}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
- {0AB968E0-E993-45CE-8875-7453C96DF583}.Release.DLL|x86.Build.0 = Release.DLL|Win32
- {0AB968E0-E993-45CE-8875-7453C96DF583}.Release|ARM64.ActiveCfg = Release|ARM64
- {0AB968E0-E993-45CE-8875-7453C96DF583}.Release|ARM64.Build.0 = Release|ARM64
- {0AB968E0-E993-45CE-8875-7453C96DF583}.Release|x64.ActiveCfg = Release|x64
- {0AB968E0-E993-45CE-8875-7453C96DF583}.Release|x64.Build.0 = Release|x64
- {0AB968E0-E993-45CE-8875-7453C96DF583}.Release|x86.ActiveCfg = Release|Win32
- {0AB968E0-E993-45CE-8875-7453C96DF583}.Release|x86.Build.0 = Release|Win32
- {25923141-9859-4AFE-8168-0DF78322FC63}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
- {25923141-9859-4AFE-8168-0DF78322FC63}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
- {25923141-9859-4AFE-8168-0DF78322FC63}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
- {25923141-9859-4AFE-8168-0DF78322FC63}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
- {25923141-9859-4AFE-8168-0DF78322FC63}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
- {25923141-9859-4AFE-8168-0DF78322FC63}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
- {25923141-9859-4AFE-8168-0DF78322FC63}.Debug|ARM64.ActiveCfg = Debug|ARM64
- {25923141-9859-4AFE-8168-0DF78322FC63}.Debug|ARM64.Build.0 = Debug|ARM64
- {25923141-9859-4AFE-8168-0DF78322FC63}.Debug|x64.ActiveCfg = Debug|x64
- {25923141-9859-4AFE-8168-0DF78322FC63}.Debug|x64.Build.0 = Debug|x64
- {25923141-9859-4AFE-8168-0DF78322FC63}.Debug|x86.ActiveCfg = Debug|Win32
- {25923141-9859-4AFE-8168-0DF78322FC63}.Debug|x86.Build.0 = Debug|Win32
- {25923141-9859-4AFE-8168-0DF78322FC63}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
- {25923141-9859-4AFE-8168-0DF78322FC63}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
- {25923141-9859-4AFE-8168-0DF78322FC63}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
- {25923141-9859-4AFE-8168-0DF78322FC63}.Release.DLL|x64.Build.0 = Release.DLL|x64
- {25923141-9859-4AFE-8168-0DF78322FC63}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
- {25923141-9859-4AFE-8168-0DF78322FC63}.Release.DLL|x86.Build.0 = Release.DLL|Win32
- {25923141-9859-4AFE-8168-0DF78322FC63}.Release|ARM64.ActiveCfg = Release|ARM64
- {25923141-9859-4AFE-8168-0DF78322FC63}.Release|ARM64.Build.0 = Release|ARM64
- {25923141-9859-4AFE-8168-0DF78322FC63}.Release|x64.ActiveCfg = Release|x64
- {25923141-9859-4AFE-8168-0DF78322FC63}.Release|x64.Build.0 = Release|x64
- {25923141-9859-4AFE-8168-0DF78322FC63}.Release|x86.ActiveCfg = Release|Win32
- {25923141-9859-4AFE-8168-0DF78322FC63}.Release|x86.Build.0 = Release|Win32
- {7E855020-7FA4-482D-B510-2E709354FE8B}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
- {7E855020-7FA4-482D-B510-2E709354FE8B}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
- {7E855020-7FA4-482D-B510-2E709354FE8B}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
- {7E855020-7FA4-482D-B510-2E709354FE8B}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
- {7E855020-7FA4-482D-B510-2E709354FE8B}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
- {7E855020-7FA4-482D-B510-2E709354FE8B}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
- {7E855020-7FA4-482D-B510-2E709354FE8B}.Debug|ARM64.ActiveCfg = Debug|ARM64
- {7E855020-7FA4-482D-B510-2E709354FE8B}.Debug|ARM64.Build.0 = Debug|ARM64
- {7E855020-7FA4-482D-B510-2E709354FE8B}.Debug|x64.ActiveCfg = Debug|x64
- {7E855020-7FA4-482D-B510-2E709354FE8B}.Debug|x64.Build.0 = Debug|x64
- {7E855020-7FA4-482D-B510-2E709354FE8B}.Debug|x86.ActiveCfg = Debug|Win32
- {7E855020-7FA4-482D-B510-2E709354FE8B}.Debug|x86.Build.0 = Debug|Win32
- {7E855020-7FA4-482D-B510-2E709354FE8B}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
- {7E855020-7FA4-482D-B510-2E709354FE8B}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
- {7E855020-7FA4-482D-B510-2E709354FE8B}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
- {7E855020-7FA4-482D-B510-2E709354FE8B}.Release.DLL|x64.Build.0 = Release.DLL|x64
- {7E855020-7FA4-482D-B510-2E709354FE8B}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
- {7E855020-7FA4-482D-B510-2E709354FE8B}.Release.DLL|x86.Build.0 = Release.DLL|Win32
- {7E855020-7FA4-482D-B510-2E709354FE8B}.Release|ARM64.ActiveCfg = Release|ARM64
- {7E855020-7FA4-482D-B510-2E709354FE8B}.Release|ARM64.Build.0 = Release|ARM64
- {7E855020-7FA4-482D-B510-2E709354FE8B}.Release|x64.ActiveCfg = Release|x64
- {7E855020-7FA4-482D-B510-2E709354FE8B}.Release|x64.Build.0 = Release|x64
- {7E855020-7FA4-482D-B510-2E709354FE8B}.Release|x86.ActiveCfg = Release|Win32
- {7E855020-7FA4-482D-B510-2E709354FE8B}.Release|x86.Build.0 = Release|Win32
- {9782E0C8-2BD3-4F67-B420-21CF19CA2435}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
- {9782E0C8-2BD3-4F67-B420-21CF19CA2435}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
- {9782E0C8-2BD3-4F67-B420-21CF19CA2435}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
- {9782E0C8-2BD3-4F67-B420-21CF19CA2435}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
- {9782E0C8-2BD3-4F67-B420-21CF19CA2435}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
- {9782E0C8-2BD3-4F67-B420-21CF19CA2435}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
- {9782E0C8-2BD3-4F67-B420-21CF19CA2435}.Debug|ARM64.ActiveCfg = Debug|ARM64
- {9782E0C8-2BD3-4F67-B420-21CF19CA2435}.Debug|ARM64.Build.0 = Debug|ARM64
- {9782E0C8-2BD3-4F67-B420-21CF19CA2435}.Debug|x64.ActiveCfg = Debug|x64
- {9782E0C8-2BD3-4F67-B420-21CF19CA2435}.Debug|x64.Build.0 = Debug|x64
- {9782E0C8-2BD3-4F67-B420-21CF19CA2435}.Debug|x86.ActiveCfg = Debug|Win32
- {9782E0C8-2BD3-4F67-B420-21CF19CA2435}.Debug|x86.Build.0 = Debug|Win32
- {9782E0C8-2BD3-4F67-B420-21CF19CA2435}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
- {9782E0C8-2BD3-4F67-B420-21CF19CA2435}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
- {9782E0C8-2BD3-4F67-B420-21CF19CA2435}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
- {9782E0C8-2BD3-4F67-B420-21CF19CA2435}.Release.DLL|x64.Build.0 = Release.DLL|x64
- {9782E0C8-2BD3-4F67-B420-21CF19CA2435}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
- {9782E0C8-2BD3-4F67-B420-21CF19CA2435}.Release.DLL|x86.Build.0 = Release.DLL|Win32
- {9782E0C8-2BD3-4F67-B420-21CF19CA2435}.Release|ARM64.ActiveCfg = Release|ARM64
- {9782E0C8-2BD3-4F67-B420-21CF19CA2435}.Release|ARM64.Build.0 = Release|ARM64
- {9782E0C8-2BD3-4F67-B420-21CF19CA2435}.Release|x64.ActiveCfg = Release|x64
- {9782E0C8-2BD3-4F67-B420-21CF19CA2435}.Release|x64.Build.0 = Release|x64
- {9782E0C8-2BD3-4F67-B420-21CF19CA2435}.Release|x86.ActiveCfg = Release|Win32
- {9782E0C8-2BD3-4F67-B420-21CF19CA2435}.Release|x86.Build.0 = Release|Win32
- {9F4135E3-9814-452C-9B35-0EFBCD792B49}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
- {9F4135E3-9814-452C-9B35-0EFBCD792B49}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
- {9F4135E3-9814-452C-9B35-0EFBCD792B49}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
- {9F4135E3-9814-452C-9B35-0EFBCD792B49}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
- {9F4135E3-9814-452C-9B35-0EFBCD792B49}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
- {9F4135E3-9814-452C-9B35-0EFBCD792B49}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
- {9F4135E3-9814-452C-9B35-0EFBCD792B49}.Debug|ARM64.ActiveCfg = Debug|ARM64
- {9F4135E3-9814-452C-9B35-0EFBCD792B49}.Debug|ARM64.Build.0 = Debug|ARM64
- {9F4135E3-9814-452C-9B35-0EFBCD792B49}.Debug|x64.ActiveCfg = Debug|x64
- {9F4135E3-9814-452C-9B35-0EFBCD792B49}.Debug|x64.Build.0 = Debug|x64
- {9F4135E3-9814-452C-9B35-0EFBCD792B49}.Debug|x86.ActiveCfg = Debug|Win32
- {9F4135E3-9814-452C-9B35-0EFBCD792B49}.Debug|x86.Build.0 = Debug|Win32
- {9F4135E3-9814-452C-9B35-0EFBCD792B49}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
- {9F4135E3-9814-452C-9B35-0EFBCD792B49}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
- {9F4135E3-9814-452C-9B35-0EFBCD792B49}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
- {9F4135E3-9814-452C-9B35-0EFBCD792B49}.Release.DLL|x64.Build.0 = Release.DLL|x64
- {9F4135E3-9814-452C-9B35-0EFBCD792B49}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
- {9F4135E3-9814-452C-9B35-0EFBCD792B49}.Release.DLL|x86.Build.0 = Release.DLL|Win32
- {9F4135E3-9814-452C-9B35-0EFBCD792B49}.Release|ARM64.ActiveCfg = Release|ARM64
- {9F4135E3-9814-452C-9B35-0EFBCD792B49}.Release|ARM64.Build.0 = Release|ARM64
- {9F4135E3-9814-452C-9B35-0EFBCD792B49}.Release|x64.ActiveCfg = Release|x64
- {9F4135E3-9814-452C-9B35-0EFBCD792B49}.Release|x64.Build.0 = Release|x64
- {9F4135E3-9814-452C-9B35-0EFBCD792B49}.Release|x86.ActiveCfg = Release|Win32
- {9F4135E3-9814-452C-9B35-0EFBCD792B49}.Release|x86.Build.0 = Release|Win32
- {C45343E6-DAB6-4F3A-A00A-8BED71A098BE}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
- {C45343E6-DAB6-4F3A-A00A-8BED71A098BE}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
- {C45343E6-DAB6-4F3A-A00A-8BED71A098BE}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
- {C45343E6-DAB6-4F3A-A00A-8BED71A098BE}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
- {C45343E6-DAB6-4F3A-A00A-8BED71A098BE}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
- {C45343E6-DAB6-4F3A-A00A-8BED71A098BE}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
- {C45343E6-DAB6-4F3A-A00A-8BED71A098BE}.Debug|ARM64.ActiveCfg = Debug|ARM64
- {C45343E6-DAB6-4F3A-A00A-8BED71A098BE}.Debug|ARM64.Build.0 = Debug|ARM64
- {C45343E6-DAB6-4F3A-A00A-8BED71A098BE}.Debug|x64.ActiveCfg = Debug|x64
- {C45343E6-DAB6-4F3A-A00A-8BED71A098BE}.Debug|x64.Build.0 = Debug|x64
- {C45343E6-DAB6-4F3A-A00A-8BED71A098BE}.Debug|x86.ActiveCfg = Debug|Win32
- {C45343E6-DAB6-4F3A-A00A-8BED71A098BE}.Debug|x86.Build.0 = Debug|Win32
- {C45343E6-DAB6-4F3A-A00A-8BED71A098BE}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
- {C45343E6-DAB6-4F3A-A00A-8BED71A098BE}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
- {C45343E6-DAB6-4F3A-A00A-8BED71A098BE}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
- {C45343E6-DAB6-4F3A-A00A-8BED71A098BE}.Release.DLL|x64.Build.0 = Release.DLL|x64
- {C45343E6-DAB6-4F3A-A00A-8BED71A098BE}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
- {C45343E6-DAB6-4F3A-A00A-8BED71A098BE}.Release.DLL|x86.Build.0 = Release.DLL|Win32
- {C45343E6-DAB6-4F3A-A00A-8BED71A098BE}.Release|ARM64.ActiveCfg = Release|ARM64
- {C45343E6-DAB6-4F3A-A00A-8BED71A098BE}.Release|ARM64.Build.0 = Release|ARM64
- {C45343E6-DAB6-4F3A-A00A-8BED71A098BE}.Release|x64.ActiveCfg = Release|x64
- {C45343E6-DAB6-4F3A-A00A-8BED71A098BE}.Release|x64.Build.0 = Release|x64
- {C45343E6-DAB6-4F3A-A00A-8BED71A098BE}.Release|x86.ActiveCfg = Release|Win32
- {C45343E6-DAB6-4F3A-A00A-8BED71A098BE}.Release|x86.Build.0 = Release|Win32
- {B19DD336-538E-4091-A559-EAA717FEC899}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
- {B19DD336-538E-4091-A559-EAA717FEC899}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
- {B19DD336-538E-4091-A559-EAA717FEC899}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
- {B19DD336-538E-4091-A559-EAA717FEC899}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
- {B19DD336-538E-4091-A559-EAA717FEC899}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
- {B19DD336-538E-4091-A559-EAA717FEC899}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
- {B19DD336-538E-4091-A559-EAA717FEC899}.Debug|ARM64.ActiveCfg = Debug|ARM64
- {B19DD336-538E-4091-A559-EAA717FEC899}.Debug|ARM64.Build.0 = Debug|ARM64
- {B19DD336-538E-4091-A559-EAA717FEC899}.Debug|x64.ActiveCfg = Debug|x64
- {B19DD336-538E-4091-A559-EAA717FEC899}.Debug|x64.Build.0 = Debug|x64
- {B19DD336-538E-4091-A559-EAA717FEC899}.Debug|x86.ActiveCfg = Debug|Win32
- {B19DD336-538E-4091-A559-EAA717FEC899}.Debug|x86.Build.0 = Debug|Win32
- {B19DD336-538E-4091-A559-EAA717FEC899}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
- {B19DD336-538E-4091-A559-EAA717FEC899}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
- {B19DD336-538E-4091-A559-EAA717FEC899}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
- {B19DD336-538E-4091-A559-EAA717FEC899}.Release.DLL|x64.Build.0 = Release.DLL|x64
- {B19DD336-538E-4091-A559-EAA717FEC899}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
- {B19DD336-538E-4091-A559-EAA717FEC899}.Release.DLL|x86.Build.0 = Release.DLL|Win32
- {B19DD336-538E-4091-A559-EAA717FEC899}.Release|ARM64.ActiveCfg = Release|ARM64
- {B19DD336-538E-4091-A559-EAA717FEC899}.Release|ARM64.Build.0 = Release|ARM64
- {B19DD336-538E-4091-A559-EAA717FEC899}.Release|x64.ActiveCfg = Release|x64
- {B19DD336-538E-4091-A559-EAA717FEC899}.Release|x64.Build.0 = Release|x64
- {B19DD336-538E-4091-A559-EAA717FEC899}.Release|x86.ActiveCfg = Release|Win32
- {B19DD336-538E-4091-A559-EAA717FEC899}.Release|x86.Build.0 = Release|Win32
- {0BF60202-43F7-48E9-8717-D31E56FA5BE0}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
- {0BF60202-43F7-48E9-8717-D31E56FA5BE0}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
- {0BF60202-43F7-48E9-8717-D31E56FA5BE0}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
- {0BF60202-43F7-48E9-8717-D31E56FA5BE0}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
- {0BF60202-43F7-48E9-8717-D31E56FA5BE0}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
- {0BF60202-43F7-48E9-8717-D31E56FA5BE0}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
- {0BF60202-43F7-48E9-8717-D31E56FA5BE0}.Debug|ARM64.ActiveCfg = Debug|ARM64
- {0BF60202-43F7-48E9-8717-D31E56FA5BE0}.Debug|ARM64.Build.0 = Debug|ARM64
- {0BF60202-43F7-48E9-8717-D31E56FA5BE0}.Debug|x64.ActiveCfg = Debug|x64
- {0BF60202-43F7-48E9-8717-D31E56FA5BE0}.Debug|x64.Build.0 = Debug|x64
- {0BF60202-43F7-48E9-8717-D31E56FA5BE0}.Debug|x86.ActiveCfg = Debug|Win32
- {0BF60202-43F7-48E9-8717-D31E56FA5BE0}.Debug|x86.Build.0 = Debug|Win32
- {0BF60202-43F7-48E9-8717-D31E56FA5BE0}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
- {0BF60202-43F7-48E9-8717-D31E56FA5BE0}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
- {0BF60202-43F7-48E9-8717-D31E56FA5BE0}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
- {0BF60202-43F7-48E9-8717-D31E56FA5BE0}.Release.DLL|x64.Build.0 = Release.DLL|x64
- {0BF60202-43F7-48E9-8717-D31E56FA5BE0}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
- {0BF60202-43F7-48E9-8717-D31E56FA5BE0}.Release.DLL|x86.Build.0 = Release.DLL|Win32
- {0BF60202-43F7-48E9-8717-D31E56FA5BE0}.Release|ARM64.ActiveCfg = Release|ARM64
- {0BF60202-43F7-48E9-8717-D31E56FA5BE0}.Release|ARM64.Build.0 = Release|ARM64
- {0BF60202-43F7-48E9-8717-D31E56FA5BE0}.Release|x64.ActiveCfg = Release|x64
- {0BF60202-43F7-48E9-8717-D31E56FA5BE0}.Release|x64.Build.0 = Release|x64
- {0BF60202-43F7-48E9-8717-D31E56FA5BE0}.Release|x86.ActiveCfg = Release|Win32
- {0BF60202-43F7-48E9-8717-D31E56FA5BE0}.Release|x86.Build.0 = Release|Win32
- {4E863E5B-0B95-43BE-8D4F-B9EB6C394FEC}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
- {4E863E5B-0B95-43BE-8D4F-B9EB6C394FEC}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
- {4E863E5B-0B95-43BE-8D4F-B9EB6C394FEC}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
- {4E863E5B-0B95-43BE-8D4F-B9EB6C394FEC}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
- {4E863E5B-0B95-43BE-8D4F-B9EB6C394FEC}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
- {4E863E5B-0B95-43BE-8D4F-B9EB6C394FEC}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
- {4E863E5B-0B95-43BE-8D4F-B9EB6C394FEC}.Debug|ARM64.ActiveCfg = Debug|ARM64
- {4E863E5B-0B95-43BE-8D4F-B9EB6C394FEC}.Debug|ARM64.Build.0 = Debug|ARM64
- {4E863E5B-0B95-43BE-8D4F-B9EB6C394FEC}.Debug|x64.ActiveCfg = Debug|x64
- {4E863E5B-0B95-43BE-8D4F-B9EB6C394FEC}.Debug|x64.Build.0 = Debug|x64
- {4E863E5B-0B95-43BE-8D4F-B9EB6C394FEC}.Debug|x86.ActiveCfg = Debug|Win32
- {4E863E5B-0B95-43BE-8D4F-B9EB6C394FEC}.Debug|x86.Build.0 = Debug|Win32
- {4E863E5B-0B95-43BE-8D4F-B9EB6C394FEC}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
- {4E863E5B-0B95-43BE-8D4F-B9EB6C394FEC}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
- {4E863E5B-0B95-43BE-8D4F-B9EB6C394FEC}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
- {4E863E5B-0B95-43BE-8D4F-B9EB6C394FEC}.Release.DLL|x64.Build.0 = Release.DLL|x64
- {4E863E5B-0B95-43BE-8D4F-B9EB6C394FEC}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
- {4E863E5B-0B95-43BE-8D4F-B9EB6C394FEC}.Release.DLL|x86.Build.0 = Release.DLL|Win32
- {4E863E5B-0B95-43BE-8D4F-B9EB6C394FEC}.Release|ARM64.ActiveCfg = Release|ARM64
- {4E863E5B-0B95-43BE-8D4F-B9EB6C394FEC}.Release|ARM64.Build.0 = Release|ARM64
- {4E863E5B-0B95-43BE-8D4F-B9EB6C394FEC}.Release|x64.ActiveCfg = Release|x64
- {4E863E5B-0B95-43BE-8D4F-B9EB6C394FEC}.Release|x64.Build.0 = Release|x64
- {4E863E5B-0B95-43BE-8D4F-B9EB6C394FEC}.Release|x86.ActiveCfg = Release|Win32
- {4E863E5B-0B95-43BE-8D4F-B9EB6C394FEC}.Release|x86.Build.0 = Release|Win32
- {6D75CD88-1A03-4955-B8C7-ACFC3742154F}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
- {6D75CD88-1A03-4955-B8C7-ACFC3742154F}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
- {6D75CD88-1A03-4955-B8C7-ACFC3742154F}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
- {6D75CD88-1A03-4955-B8C7-ACFC3742154F}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
- {6D75CD88-1A03-4955-B8C7-ACFC3742154F}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
- {6D75CD88-1A03-4955-B8C7-ACFC3742154F}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
- {6D75CD88-1A03-4955-B8C7-ACFC3742154F}.Debug|ARM64.ActiveCfg = Debug|ARM64
- {6D75CD88-1A03-4955-B8C7-ACFC3742154F}.Debug|ARM64.Build.0 = Debug|ARM64
- {6D75CD88-1A03-4955-B8C7-ACFC3742154F}.Debug|x64.ActiveCfg = Debug|x64
- {6D75CD88-1A03-4955-B8C7-ACFC3742154F}.Debug|x64.Build.0 = Debug|x64
- {6D75CD88-1A03-4955-B8C7-ACFC3742154F}.Debug|x86.ActiveCfg = Debug|Win32
- {6D75CD88-1A03-4955-B8C7-ACFC3742154F}.Debug|x86.Build.0 = Debug|Win32
- {6D75CD88-1A03-4955-B8C7-ACFC3742154F}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
- {6D75CD88-1A03-4955-B8C7-ACFC3742154F}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
- {6D75CD88-1A03-4955-B8C7-ACFC3742154F}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
- {6D75CD88-1A03-4955-B8C7-ACFC3742154F}.Release.DLL|x64.Build.0 = Release.DLL|x64
- {6D75CD88-1A03-4955-B8C7-ACFC3742154F}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
- {6D75CD88-1A03-4955-B8C7-ACFC3742154F}.Release.DLL|x86.Build.0 = Release.DLL|Win32
- {6D75CD88-1A03-4955-B8C7-ACFC3742154F}.Release|ARM64.ActiveCfg = Release|ARM64
- {6D75CD88-1A03-4955-B8C7-ACFC3742154F}.Release|ARM64.Build.0 = Release|ARM64
- {6D75CD88-1A03-4955-B8C7-ACFC3742154F}.Release|x64.ActiveCfg = Release|x64
- {6D75CD88-1A03-4955-B8C7-ACFC3742154F}.Release|x64.Build.0 = Release|x64
- {6D75CD88-1A03-4955-B8C7-ACFC3742154F}.Release|x86.ActiveCfg = Release|Win32
- {6D75CD88-1A03-4955-B8C7-ACFC3742154F}.Release|x86.Build.0 = Release|Win32
- {8DD0EB7E-668E-452D-91D7-906C64A9C8AC}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
- {8DD0EB7E-668E-452D-91D7-906C64A9C8AC}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
- {8DD0EB7E-668E-452D-91D7-906C64A9C8AC}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
- {8DD0EB7E-668E-452D-91D7-906C64A9C8AC}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
- {8DD0EB7E-668E-452D-91D7-906C64A9C8AC}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
- {8DD0EB7E-668E-452D-91D7-906C64A9C8AC}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
- {8DD0EB7E-668E-452D-91D7-906C64A9C8AC}.Debug|ARM64.ActiveCfg = Debug|ARM64
- {8DD0EB7E-668E-452D-91D7-906C64A9C8AC}.Debug|ARM64.Build.0 = Debug|ARM64
- {8DD0EB7E-668E-452D-91D7-906C64A9C8AC}.Debug|x64.ActiveCfg = Debug|x64
- {8DD0EB7E-668E-452D-91D7-906C64A9C8AC}.Debug|x64.Build.0 = Debug|x64
- {8DD0EB7E-668E-452D-91D7-906C64A9C8AC}.Debug|x86.ActiveCfg = Debug|Win32
- {8DD0EB7E-668E-452D-91D7-906C64A9C8AC}.Debug|x86.Build.0 = Debug|Win32
- {8DD0EB7E-668E-452D-91D7-906C64A9C8AC}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
- {8DD0EB7E-668E-452D-91D7-906C64A9C8AC}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
- {8DD0EB7E-668E-452D-91D7-906C64A9C8AC}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
- {8DD0EB7E-668E-452D-91D7-906C64A9C8AC}.Release.DLL|x64.Build.0 = Release.DLL|x64
- {8DD0EB7E-668E-452D-91D7-906C64A9C8AC}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
- {8DD0EB7E-668E-452D-91D7-906C64A9C8AC}.Release.DLL|x86.Build.0 = Release.DLL|Win32
- {8DD0EB7E-668E-452D-91D7-906C64A9C8AC}.Release|ARM64.ActiveCfg = Release|ARM64
- {8DD0EB7E-668E-452D-91D7-906C64A9C8AC}.Release|ARM64.Build.0 = Release|ARM64
- {8DD0EB7E-668E-452D-91D7-906C64A9C8AC}.Release|x64.ActiveCfg = Release|x64
- {8DD0EB7E-668E-452D-91D7-906C64A9C8AC}.Release|x64.Build.0 = Release|x64
- {8DD0EB7E-668E-452D-91D7-906C64A9C8AC}.Release|x86.ActiveCfg = Release|Win32
- {8DD0EB7E-668E-452D-91D7-906C64A9C8AC}.Release|x86.Build.0 = Release|Win32
- {F6FD9C75-AAA7-48C9-B19D-FD37C8FB9B7E}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
- {F6FD9C75-AAA7-48C9-B19D-FD37C8FB9B7E}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
- {F6FD9C75-AAA7-48C9-B19D-FD37C8FB9B7E}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
- {F6FD9C75-AAA7-48C9-B19D-FD37C8FB9B7E}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
- {F6FD9C75-AAA7-48C9-B19D-FD37C8FB9B7E}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
- {F6FD9C75-AAA7-48C9-B19D-FD37C8FB9B7E}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
- {F6FD9C75-AAA7-48C9-B19D-FD37C8FB9B7E}.Debug|ARM64.ActiveCfg = Debug|ARM64
- {F6FD9C75-AAA7-48C9-B19D-FD37C8FB9B7E}.Debug|ARM64.Build.0 = Debug|ARM64
- {F6FD9C75-AAA7-48C9-B19D-FD37C8FB9B7E}.Debug|x64.ActiveCfg = Debug|x64
- {F6FD9C75-AAA7-48C9-B19D-FD37C8FB9B7E}.Debug|x64.Build.0 = Debug|x64
- {F6FD9C75-AAA7-48C9-B19D-FD37C8FB9B7E}.Debug|x86.ActiveCfg = Debug|Win32
- {F6FD9C75-AAA7-48C9-B19D-FD37C8FB9B7E}.Debug|x86.Build.0 = Debug|Win32
- {F6FD9C75-AAA7-48C9-B19D-FD37C8FB9B7E}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
- {F6FD9C75-AAA7-48C9-B19D-FD37C8FB9B7E}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
- {F6FD9C75-AAA7-48C9-B19D-FD37C8FB9B7E}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
- {F6FD9C75-AAA7-48C9-B19D-FD37C8FB9B7E}.Release.DLL|x64.Build.0 = Release.DLL|x64
- {F6FD9C75-AAA7-48C9-B19D-FD37C8FB9B7E}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
- {F6FD9C75-AAA7-48C9-B19D-FD37C8FB9B7E}.Release.DLL|x86.Build.0 = Release.DLL|Win32
- {F6FD9C75-AAA7-48C9-B19D-FD37C8FB9B7E}.Release|ARM64.ActiveCfg = Release|ARM64
- {F6FD9C75-AAA7-48C9-B19D-FD37C8FB9B7E}.Release|ARM64.Build.0 = Release|ARM64
- {F6FD9C75-AAA7-48C9-B19D-FD37C8FB9B7E}.Release|x64.ActiveCfg = Release|x64
- {F6FD9C75-AAA7-48C9-B19D-FD37C8FB9B7E}.Release|x64.Build.0 = Release|x64
- {F6FD9C75-AAA7-48C9-B19D-FD37C8FB9B7E}.Release|x86.ActiveCfg = Release|Win32
- {F6FD9C75-AAA7-48C9-B19D-FD37C8FB9B7E}.Release|x86.Build.0 = Release|Win32
- {1FE8758D-7E8A-41F3-9B6D-FD50E9A2A03D}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
- {1FE8758D-7E8A-41F3-9B6D-FD50E9A2A03D}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
- {1FE8758D-7E8A-41F3-9B6D-FD50E9A2A03D}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
- {1FE8758D-7E8A-41F3-9B6D-FD50E9A2A03D}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
- {1FE8758D-7E8A-41F3-9B6D-FD50E9A2A03D}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
- {1FE8758D-7E8A-41F3-9B6D-FD50E9A2A03D}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
- {1FE8758D-7E8A-41F3-9B6D-FD50E9A2A03D}.Debug|ARM64.ActiveCfg = Debug|ARM64
- {1FE8758D-7E8A-41F3-9B6D-FD50E9A2A03D}.Debug|ARM64.Build.0 = Debug|ARM64
- {1FE8758D-7E8A-41F3-9B6D-FD50E9A2A03D}.Debug|x64.ActiveCfg = Debug|x64
- {1FE8758D-7E8A-41F3-9B6D-FD50E9A2A03D}.Debug|x64.Build.0 = Debug|x64
- {1FE8758D-7E8A-41F3-9B6D-FD50E9A2A03D}.Debug|x86.ActiveCfg = Debug|Win32
- {1FE8758D-7E8A-41F3-9B6D-FD50E9A2A03D}.Debug|x86.Build.0 = Debug|Win32
- {1FE8758D-7E8A-41F3-9B6D-FD50E9A2A03D}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
- {1FE8758D-7E8A-41F3-9B6D-FD50E9A2A03D}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
- {1FE8758D-7E8A-41F3-9B6D-FD50E9A2A03D}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
- {1FE8758D-7E8A-41F3-9B6D-FD50E9A2A03D}.Release.DLL|x64.Build.0 = Release.DLL|x64
- {1FE8758D-7E8A-41F3-9B6D-FD50E9A2A03D}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
- {1FE8758D-7E8A-41F3-9B6D-FD50E9A2A03D}.Release.DLL|x86.Build.0 = Release.DLL|Win32
- {1FE8758D-7E8A-41F3-9B6D-FD50E9A2A03D}.Release|ARM64.ActiveCfg = Release|ARM64
- {1FE8758D-7E8A-41F3-9B6D-FD50E9A2A03D}.Release|ARM64.Build.0 = Release|ARM64
- {1FE8758D-7E8A-41F3-9B6D-FD50E9A2A03D}.Release|x64.ActiveCfg = Release|x64
- {1FE8758D-7E8A-41F3-9B6D-FD50E9A2A03D}.Release|x64.Build.0 = Release|x64
- {1FE8758D-7E8A-41F3-9B6D-FD50E9A2A03D}.Release|x86.ActiveCfg = Release|Win32
- {1FE8758D-7E8A-41F3-9B6D-FD50E9A2A03D}.Release|x86.Build.0 = Release|Win32
- {25BCB876-B60A-499B-9046-E9801CFD7780}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
- {25BCB876-B60A-499B-9046-E9801CFD7780}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
- {25BCB876-B60A-499B-9046-E9801CFD7780}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
- {25BCB876-B60A-499B-9046-E9801CFD7780}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
- {25BCB876-B60A-499B-9046-E9801CFD7780}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
- {25BCB876-B60A-499B-9046-E9801CFD7780}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
- {25BCB876-B60A-499B-9046-E9801CFD7780}.Debug|ARM64.ActiveCfg = Debug|ARM64
- {25BCB876-B60A-499B-9046-E9801CFD7780}.Debug|ARM64.Build.0 = Debug|ARM64
- {25BCB876-B60A-499B-9046-E9801CFD7780}.Debug|x64.ActiveCfg = Debug|x64
- {25BCB876-B60A-499B-9046-E9801CFD7780}.Debug|x64.Build.0 = Debug|x64
- {25BCB876-B60A-499B-9046-E9801CFD7780}.Debug|x86.ActiveCfg = Debug|Win32
- {25BCB876-B60A-499B-9046-E9801CFD7780}.Debug|x86.Build.0 = Debug|Win32
- {25BCB876-B60A-499B-9046-E9801CFD7780}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
- {25BCB876-B60A-499B-9046-E9801CFD7780}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
- {25BCB876-B60A-499B-9046-E9801CFD7780}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
- {25BCB876-B60A-499B-9046-E9801CFD7780}.Release.DLL|x64.Build.0 = Release.DLL|x64
- {25BCB876-B60A-499B-9046-E9801CFD7780}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
- {25BCB876-B60A-499B-9046-E9801CFD7780}.Release.DLL|x86.Build.0 = Release.DLL|Win32
- {25BCB876-B60A-499B-9046-E9801CFD7780}.Release|ARM64.ActiveCfg = Release|ARM64
- {25BCB876-B60A-499B-9046-E9801CFD7780}.Release|ARM64.Build.0 = Release|ARM64
- {25BCB876-B60A-499B-9046-E9801CFD7780}.Release|x64.ActiveCfg = Release|x64
- {25BCB876-B60A-499B-9046-E9801CFD7780}.Release|x64.Build.0 = Release|x64
- {25BCB876-B60A-499B-9046-E9801CFD7780}.Release|x86.ActiveCfg = Release|Win32
- {25BCB876-B60A-499B-9046-E9801CFD7780}.Release|x86.Build.0 = Release|Win32
- {56FB0A45-145F-4EAE-B2C8-E5833E682D8F}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
- {56FB0A45-145F-4EAE-B2C8-E5833E682D8F}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
- {56FB0A45-145F-4EAE-B2C8-E5833E682D8F}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
- {56FB0A45-145F-4EAE-B2C8-E5833E682D8F}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
- {56FB0A45-145F-4EAE-B2C8-E5833E682D8F}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
- {56FB0A45-145F-4EAE-B2C8-E5833E682D8F}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
- {56FB0A45-145F-4EAE-B2C8-E5833E682D8F}.Debug|ARM64.ActiveCfg = Debug|ARM64
- {56FB0A45-145F-4EAE-B2C8-E5833E682D8F}.Debug|ARM64.Build.0 = Debug|ARM64
- {56FB0A45-145F-4EAE-B2C8-E5833E682D8F}.Debug|x64.ActiveCfg = Debug|x64
- {56FB0A45-145F-4EAE-B2C8-E5833E682D8F}.Debug|x64.Build.0 = Debug|x64
- {56FB0A45-145F-4EAE-B2C8-E5833E682D8F}.Debug|x86.ActiveCfg = Debug|Win32
- {56FB0A45-145F-4EAE-B2C8-E5833E682D8F}.Debug|x86.Build.0 = Debug|Win32
- {56FB0A45-145F-4EAE-B2C8-E5833E682D8F}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
- {56FB0A45-145F-4EAE-B2C8-E5833E682D8F}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
- {56FB0A45-145F-4EAE-B2C8-E5833E682D8F}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
- {56FB0A45-145F-4EAE-B2C8-E5833E682D8F}.Release.DLL|x64.Build.0 = Release.DLL|x64
- {56FB0A45-145F-4EAE-B2C8-E5833E682D8F}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
- {56FB0A45-145F-4EAE-B2C8-E5833E682D8F}.Release.DLL|x86.Build.0 = Release.DLL|Win32
- {56FB0A45-145F-4EAE-B2C8-E5833E682D8F}.Release|ARM64.ActiveCfg = Release|ARM64
- {56FB0A45-145F-4EAE-B2C8-E5833E682D8F}.Release|ARM64.Build.0 = Release|ARM64
- {56FB0A45-145F-4EAE-B2C8-E5833E682D8F}.Release|x64.ActiveCfg = Release|x64
- {56FB0A45-145F-4EAE-B2C8-E5833E682D8F}.Release|x64.Build.0 = Release|x64
- {56FB0A45-145F-4EAE-B2C8-E5833E682D8F}.Release|x86.ActiveCfg = Release|Win32
- {56FB0A45-145F-4EAE-B2C8-E5833E682D8F}.Release|x86.Build.0 = Release|Win32
- {2BB0C1D4-9298-45AC-B244-67A99769A292}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
- {2BB0C1D4-9298-45AC-B244-67A99769A292}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
- {2BB0C1D4-9298-45AC-B244-67A99769A292}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
- {2BB0C1D4-9298-45AC-B244-67A99769A292}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
- {2BB0C1D4-9298-45AC-B244-67A99769A292}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
- {2BB0C1D4-9298-45AC-B244-67A99769A292}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
- {2BB0C1D4-9298-45AC-B244-67A99769A292}.Debug|ARM64.ActiveCfg = Debug|ARM64
- {2BB0C1D4-9298-45AC-B244-67A99769A292}.Debug|ARM64.Build.0 = Debug|ARM64
- {2BB0C1D4-9298-45AC-B244-67A99769A292}.Debug|x64.ActiveCfg = Debug|x64
- {2BB0C1D4-9298-45AC-B244-67A99769A292}.Debug|x64.Build.0 = Debug|x64
- {2BB0C1D4-9298-45AC-B244-67A99769A292}.Debug|x86.ActiveCfg = Debug|Win32
- {2BB0C1D4-9298-45AC-B244-67A99769A292}.Debug|x86.Build.0 = Debug|Win32
- {2BB0C1D4-9298-45AC-B244-67A99769A292}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
- {2BB0C1D4-9298-45AC-B244-67A99769A292}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
- {2BB0C1D4-9298-45AC-B244-67A99769A292}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
- {2BB0C1D4-9298-45AC-B244-67A99769A292}.Release.DLL|x64.Build.0 = Release.DLL|x64
- {2BB0C1D4-9298-45AC-B244-67A99769A292}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
- {2BB0C1D4-9298-45AC-B244-67A99769A292}.Release.DLL|x86.Build.0 = Release.DLL|Win32
- {2BB0C1D4-9298-45AC-B244-67A99769A292}.Release|ARM64.ActiveCfg = Release|ARM64
- {2BB0C1D4-9298-45AC-B244-67A99769A292}.Release|ARM64.Build.0 = Release|ARM64
- {2BB0C1D4-9298-45AC-B244-67A99769A292}.Release|x64.ActiveCfg = Release|x64
- {2BB0C1D4-9298-45AC-B244-67A99769A292}.Release|x64.Build.0 = Release|x64
- {2BB0C1D4-9298-45AC-B244-67A99769A292}.Release|x86.ActiveCfg = Release|Win32
- {2BB0C1D4-9298-45AC-B244-67A99769A292}.Release|x86.Build.0 = Release|Win32
- {99A40FC5-9DB0-4B80-8D97-867EF00FA2CB}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
- {99A40FC5-9DB0-4B80-8D97-867EF00FA2CB}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
- {99A40FC5-9DB0-4B80-8D97-867EF00FA2CB}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
- {99A40FC5-9DB0-4B80-8D97-867EF00FA2CB}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
- {99A40FC5-9DB0-4B80-8D97-867EF00FA2CB}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
- {99A40FC5-9DB0-4B80-8D97-867EF00FA2CB}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
- {99A40FC5-9DB0-4B80-8D97-867EF00FA2CB}.Debug|ARM64.ActiveCfg = Debug|ARM64
- {99A40FC5-9DB0-4B80-8D97-867EF00FA2CB}.Debug|ARM64.Build.0 = Debug|ARM64
- {99A40FC5-9DB0-4B80-8D97-867EF00FA2CB}.Debug|x64.ActiveCfg = Debug|x64
- {99A40FC5-9DB0-4B80-8D97-867EF00FA2CB}.Debug|x64.Build.0 = Debug|x64
- {99A40FC5-9DB0-4B80-8D97-867EF00FA2CB}.Debug|x86.ActiveCfg = Debug|Win32
- {99A40FC5-9DB0-4B80-8D97-867EF00FA2CB}.Debug|x86.Build.0 = Debug|Win32
- {99A40FC5-9DB0-4B80-8D97-867EF00FA2CB}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
- {99A40FC5-9DB0-4B80-8D97-867EF00FA2CB}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
- {99A40FC5-9DB0-4B80-8D97-867EF00FA2CB}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
- {99A40FC5-9DB0-4B80-8D97-867EF00FA2CB}.Release.DLL|x64.Build.0 = Release.DLL|x64
- {99A40FC5-9DB0-4B80-8D97-867EF00FA2CB}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
- {99A40FC5-9DB0-4B80-8D97-867EF00FA2CB}.Release.DLL|x86.Build.0 = Release.DLL|Win32
- {99A40FC5-9DB0-4B80-8D97-867EF00FA2CB}.Release|ARM64.ActiveCfg = Release|ARM64
- {99A40FC5-9DB0-4B80-8D97-867EF00FA2CB}.Release|ARM64.Build.0 = Release|ARM64
- {99A40FC5-9DB0-4B80-8D97-867EF00FA2CB}.Release|x64.ActiveCfg = Release|x64
- {99A40FC5-9DB0-4B80-8D97-867EF00FA2CB}.Release|x64.Build.0 = Release|x64
- {99A40FC5-9DB0-4B80-8D97-867EF00FA2CB}.Release|x86.ActiveCfg = Release|Win32
- {99A40FC5-9DB0-4B80-8D97-867EF00FA2CB}.Release|x86.Build.0 = Release|Win32
- {81064BCE-EEC1-43B0-9912-F05F2B54B11A}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
- {81064BCE-EEC1-43B0-9912-F05F2B54B11A}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
- {81064BCE-EEC1-43B0-9912-F05F2B54B11A}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
- {81064BCE-EEC1-43B0-9912-F05F2B54B11A}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
- {81064BCE-EEC1-43B0-9912-F05F2B54B11A}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
- {81064BCE-EEC1-43B0-9912-F05F2B54B11A}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
- {81064BCE-EEC1-43B0-9912-F05F2B54B11A}.Debug|ARM64.ActiveCfg = Debug|ARM64
- {81064BCE-EEC1-43B0-9912-F05F2B54B11A}.Debug|ARM64.Build.0 = Debug|ARM64
- {81064BCE-EEC1-43B0-9912-F05F2B54B11A}.Debug|x64.ActiveCfg = Debug|x64
- {81064BCE-EEC1-43B0-9912-F05F2B54B11A}.Debug|x64.Build.0 = Debug|x64
- {81064BCE-EEC1-43B0-9912-F05F2B54B11A}.Debug|x86.ActiveCfg = Debug|Win32
- {81064BCE-EEC1-43B0-9912-F05F2B54B11A}.Debug|x86.Build.0 = Debug|Win32
- {81064BCE-EEC1-43B0-9912-F05F2B54B11A}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
- {81064BCE-EEC1-43B0-9912-F05F2B54B11A}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
- {81064BCE-EEC1-43B0-9912-F05F2B54B11A}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
- {81064BCE-EEC1-43B0-9912-F05F2B54B11A}.Release.DLL|x64.Build.0 = Release.DLL|x64
- {81064BCE-EEC1-43B0-9912-F05F2B54B11A}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
- {81064BCE-EEC1-43B0-9912-F05F2B54B11A}.Release.DLL|x86.Build.0 = Release.DLL|Win32
- {81064BCE-EEC1-43B0-9912-F05F2B54B11A}.Release|ARM64.ActiveCfg = Release|ARM64
- {81064BCE-EEC1-43B0-9912-F05F2B54B11A}.Release|ARM64.Build.0 = Release|ARM64
- {81064BCE-EEC1-43B0-9912-F05F2B54B11A}.Release|x64.ActiveCfg = Release|x64
- {81064BCE-EEC1-43B0-9912-F05F2B54B11A}.Release|x64.Build.0 = Release|x64
- {81064BCE-EEC1-43B0-9912-F05F2B54B11A}.Release|x86.ActiveCfg = Release|Win32
- {81064BCE-EEC1-43B0-9912-F05F2B54B11A}.Release|x86.Build.0 = Release|Win32
- {31B41997-3890-45E3-93FE-C57B363E9C0D}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
- {31B41997-3890-45E3-93FE-C57B363E9C0D}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
- {31B41997-3890-45E3-93FE-C57B363E9C0D}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
- {31B41997-3890-45E3-93FE-C57B363E9C0D}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
- {31B41997-3890-45E3-93FE-C57B363E9C0D}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
- {31B41997-3890-45E3-93FE-C57B363E9C0D}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
- {31B41997-3890-45E3-93FE-C57B363E9C0D}.Debug|ARM64.ActiveCfg = Debug|ARM64
- {31B41997-3890-45E3-93FE-C57B363E9C0D}.Debug|ARM64.Build.0 = Debug|ARM64
- {31B41997-3890-45E3-93FE-C57B363E9C0D}.Debug|x64.ActiveCfg = Debug|x64
- {31B41997-3890-45E3-93FE-C57B363E9C0D}.Debug|x64.Build.0 = Debug|x64
- {31B41997-3890-45E3-93FE-C57B363E9C0D}.Debug|x86.ActiveCfg = Debug|Win32
- {31B41997-3890-45E3-93FE-C57B363E9C0D}.Debug|x86.Build.0 = Debug|Win32
- {31B41997-3890-45E3-93FE-C57B363E9C0D}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
- {31B41997-3890-45E3-93FE-C57B363E9C0D}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
- {31B41997-3890-45E3-93FE-C57B363E9C0D}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
- {31B41997-3890-45E3-93FE-C57B363E9C0D}.Release.DLL|x64.Build.0 = Release.DLL|x64
- {31B41997-3890-45E3-93FE-C57B363E9C0D}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
- {31B41997-3890-45E3-93FE-C57B363E9C0D}.Release.DLL|x86.Build.0 = Release.DLL|Win32
- {31B41997-3890-45E3-93FE-C57B363E9C0D}.Release|ARM64.ActiveCfg = Release|ARM64
- {31B41997-3890-45E3-93FE-C57B363E9C0D}.Release|ARM64.Build.0 = Release|ARM64
- {31B41997-3890-45E3-93FE-C57B363E9C0D}.Release|x64.ActiveCfg = Release|x64
- {31B41997-3890-45E3-93FE-C57B363E9C0D}.Release|x64.Build.0 = Release|x64
- {31B41997-3890-45E3-93FE-C57B363E9C0D}.Release|x86.ActiveCfg = Release|Win32
- {31B41997-3890-45E3-93FE-C57B363E9C0D}.Release|x86.Build.0 = Release|Win32
- {D550AB93-DF31-4B76-873F-F075018352F4}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
- {D550AB93-DF31-4B76-873F-F075018352F4}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
- {D550AB93-DF31-4B76-873F-F075018352F4}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
- {D550AB93-DF31-4B76-873F-F075018352F4}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
- {D550AB93-DF31-4B76-873F-F075018352F4}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
- {D550AB93-DF31-4B76-873F-F075018352F4}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
- {D550AB93-DF31-4B76-873F-F075018352F4}.Debug|ARM64.ActiveCfg = Debug|ARM64
- {D550AB93-DF31-4B76-873F-F075018352F4}.Debug|ARM64.Build.0 = Debug|ARM64
- {D550AB93-DF31-4B76-873F-F075018352F4}.Debug|x64.ActiveCfg = Debug|x64
- {D550AB93-DF31-4B76-873F-F075018352F4}.Debug|x64.Build.0 = Debug|x64
- {D550AB93-DF31-4B76-873F-F075018352F4}.Debug|x86.ActiveCfg = Debug|Win32
- {D550AB93-DF31-4B76-873F-F075018352F4}.Debug|x86.Build.0 = Debug|Win32
- {D550AB93-DF31-4B76-873F-F075018352F4}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
- {D550AB93-DF31-4B76-873F-F075018352F4}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
- {D550AB93-DF31-4B76-873F-F075018352F4}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
- {D550AB93-DF31-4B76-873F-F075018352F4}.Release.DLL|x64.Build.0 = Release.DLL|x64
- {D550AB93-DF31-4B76-873F-F075018352F4}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
- {D550AB93-DF31-4B76-873F-F075018352F4}.Release.DLL|x86.Build.0 = Release.DLL|Win32
- {D550AB93-DF31-4B76-873F-F075018352F4}.Release|ARM64.ActiveCfg = Release|ARM64
- {D550AB93-DF31-4B76-873F-F075018352F4}.Release|ARM64.Build.0 = Release|ARM64
- {D550AB93-DF31-4B76-873F-F075018352F4}.Release|x64.ActiveCfg = Release|x64
- {D550AB93-DF31-4B76-873F-F075018352F4}.Release|x64.Build.0 = Release|x64
- {D550AB93-DF31-4B76-873F-F075018352F4}.Release|x86.ActiveCfg = Release|Win32
- {D550AB93-DF31-4B76-873F-F075018352F4}.Release|x86.Build.0 = Release|Win32
- {8CF3F7BA-4C99-43EB-B4F1-7CA346817D0A}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
- {8CF3F7BA-4C99-43EB-B4F1-7CA346817D0A}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
- {8CF3F7BA-4C99-43EB-B4F1-7CA346817D0A}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
- {8CF3F7BA-4C99-43EB-B4F1-7CA346817D0A}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
- {8CF3F7BA-4C99-43EB-B4F1-7CA346817D0A}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
- {8CF3F7BA-4C99-43EB-B4F1-7CA346817D0A}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
- {8CF3F7BA-4C99-43EB-B4F1-7CA346817D0A}.Debug|ARM64.ActiveCfg = Debug|ARM64
- {8CF3F7BA-4C99-43EB-B4F1-7CA346817D0A}.Debug|ARM64.Build.0 = Debug|ARM64
- {8CF3F7BA-4C99-43EB-B4F1-7CA346817D0A}.Debug|x64.ActiveCfg = Debug|x64
- {8CF3F7BA-4C99-43EB-B4F1-7CA346817D0A}.Debug|x64.Build.0 = Debug|x64
- {8CF3F7BA-4C99-43EB-B4F1-7CA346817D0A}.Debug|x86.ActiveCfg = Debug|Win32
- {8CF3F7BA-4C99-43EB-B4F1-7CA346817D0A}.Debug|x86.Build.0 = Debug|Win32
- {8CF3F7BA-4C99-43EB-B4F1-7CA346817D0A}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
- {8CF3F7BA-4C99-43EB-B4F1-7CA346817D0A}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
- {8CF3F7BA-4C99-43EB-B4F1-7CA346817D0A}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
- {8CF3F7BA-4C99-43EB-B4F1-7CA346817D0A}.Release.DLL|x64.Build.0 = Release.DLL|x64
- {8CF3F7BA-4C99-43EB-B4F1-7CA346817D0A}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
- {8CF3F7BA-4C99-43EB-B4F1-7CA346817D0A}.Release.DLL|x86.Build.0 = Release.DLL|Win32
- {8CF3F7BA-4C99-43EB-B4F1-7CA346817D0A}.Release|ARM64.ActiveCfg = Release|ARM64
- {8CF3F7BA-4C99-43EB-B4F1-7CA346817D0A}.Release|ARM64.Build.0 = Release|ARM64
- {8CF3F7BA-4C99-43EB-B4F1-7CA346817D0A}.Release|x64.ActiveCfg = Release|x64
- {8CF3F7BA-4C99-43EB-B4F1-7CA346817D0A}.Release|x64.Build.0 = Release|x64
- {8CF3F7BA-4C99-43EB-B4F1-7CA346817D0A}.Release|x86.ActiveCfg = Release|Win32
- {8CF3F7BA-4C99-43EB-B4F1-7CA346817D0A}.Release|x86.Build.0 = Release|Win32
- {F90FCDC5-EE14-4B89-96DB-4392E28F34AF}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
- {F90FCDC5-EE14-4B89-96DB-4392E28F34AF}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
- {F90FCDC5-EE14-4B89-96DB-4392E28F34AF}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
- {F90FCDC5-EE14-4B89-96DB-4392E28F34AF}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
- {F90FCDC5-EE14-4B89-96DB-4392E28F34AF}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
- {F90FCDC5-EE14-4B89-96DB-4392E28F34AF}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
- {F90FCDC5-EE14-4B89-96DB-4392E28F34AF}.Debug|ARM64.ActiveCfg = Debug|ARM64
- {F90FCDC5-EE14-4B89-96DB-4392E28F34AF}.Debug|ARM64.Build.0 = Debug|ARM64
- {F90FCDC5-EE14-4B89-96DB-4392E28F34AF}.Debug|x64.ActiveCfg = Debug|x64
- {F90FCDC5-EE14-4B89-96DB-4392E28F34AF}.Debug|x64.Build.0 = Debug|x64
- {F90FCDC5-EE14-4B89-96DB-4392E28F34AF}.Debug|x86.ActiveCfg = Debug|Win32
- {F90FCDC5-EE14-4B89-96DB-4392E28F34AF}.Debug|x86.Build.0 = Debug|Win32
- {F90FCDC5-EE14-4B89-96DB-4392E28F34AF}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
- {F90FCDC5-EE14-4B89-96DB-4392E28F34AF}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
- {F90FCDC5-EE14-4B89-96DB-4392E28F34AF}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
- {F90FCDC5-EE14-4B89-96DB-4392E28F34AF}.Release.DLL|x64.Build.0 = Release.DLL|x64
- {F90FCDC5-EE14-4B89-96DB-4392E28F34AF}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
- {F90FCDC5-EE14-4B89-96DB-4392E28F34AF}.Release.DLL|x86.Build.0 = Release.DLL|Win32
- {F90FCDC5-EE14-4B89-96DB-4392E28F34AF}.Release|ARM64.ActiveCfg = Release|ARM64
- {F90FCDC5-EE14-4B89-96DB-4392E28F34AF}.Release|ARM64.Build.0 = Release|ARM64
- {F90FCDC5-EE14-4B89-96DB-4392E28F34AF}.Release|x64.ActiveCfg = Release|x64
- {F90FCDC5-EE14-4B89-96DB-4392E28F34AF}.Release|x64.Build.0 = Release|x64
- {F90FCDC5-EE14-4B89-96DB-4392E28F34AF}.Release|x86.ActiveCfg = Release|Win32
- {F90FCDC5-EE14-4B89-96DB-4392E28F34AF}.Release|x86.Build.0 = Release|Win32
- {93A864C9-93B7-4E5C-ACE7-E8FC5F9EFF79}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
- {93A864C9-93B7-4E5C-ACE7-E8FC5F9EFF79}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
- {93A864C9-93B7-4E5C-ACE7-E8FC5F9EFF79}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
- {93A864C9-93B7-4E5C-ACE7-E8FC5F9EFF79}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
- {93A864C9-93B7-4E5C-ACE7-E8FC5F9EFF79}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
- {93A864C9-93B7-4E5C-ACE7-E8FC5F9EFF79}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
- {93A864C9-93B7-4E5C-ACE7-E8FC5F9EFF79}.Debug|ARM64.ActiveCfg = Debug|ARM64
- {93A864C9-93B7-4E5C-ACE7-E8FC5F9EFF79}.Debug|ARM64.Build.0 = Debug|ARM64
- {93A864C9-93B7-4E5C-ACE7-E8FC5F9EFF79}.Debug|x64.ActiveCfg = Debug|x64
- {93A864C9-93B7-4E5C-ACE7-E8FC5F9EFF79}.Debug|x64.Build.0 = Debug|x64
- {93A864C9-93B7-4E5C-ACE7-E8FC5F9EFF79}.Debug|x86.ActiveCfg = Debug|Win32
- {93A864C9-93B7-4E5C-ACE7-E8FC5F9EFF79}.Debug|x86.Build.0 = Debug|Win32
- {93A864C9-93B7-4E5C-ACE7-E8FC5F9EFF79}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
- {93A864C9-93B7-4E5C-ACE7-E8FC5F9EFF79}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
- {93A864C9-93B7-4E5C-ACE7-E8FC5F9EFF79}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
- {93A864C9-93B7-4E5C-ACE7-E8FC5F9EFF79}.Release.DLL|x64.Build.0 = Release.DLL|x64
- {93A864C9-93B7-4E5C-ACE7-E8FC5F9EFF79}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
- {93A864C9-93B7-4E5C-ACE7-E8FC5F9EFF79}.Release.DLL|x86.Build.0 = Release.DLL|Win32
- {93A864C9-93B7-4E5C-ACE7-E8FC5F9EFF79}.Release|ARM64.ActiveCfg = Release|ARM64
- {93A864C9-93B7-4E5C-ACE7-E8FC5F9EFF79}.Release|ARM64.Build.0 = Release|ARM64
- {93A864C9-93B7-4E5C-ACE7-E8FC5F9EFF79}.Release|x64.ActiveCfg = Release|x64
- {93A864C9-93B7-4E5C-ACE7-E8FC5F9EFF79}.Release|x64.Build.0 = Release|x64
- {93A864C9-93B7-4E5C-ACE7-E8FC5F9EFF79}.Release|x86.ActiveCfg = Release|Win32
- {93A864C9-93B7-4E5C-ACE7-E8FC5F9EFF79}.Release|x86.Build.0 = Release|Win32
- {56E68E37-B3FC-4799-91AF-0CA10B6D55A5}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
- {56E68E37-B3FC-4799-91AF-0CA10B6D55A5}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
- {56E68E37-B3FC-4799-91AF-0CA10B6D55A5}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
- {56E68E37-B3FC-4799-91AF-0CA10B6D55A5}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
- {56E68E37-B3FC-4799-91AF-0CA10B6D55A5}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
- {56E68E37-B3FC-4799-91AF-0CA10B6D55A5}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
- {56E68E37-B3FC-4799-91AF-0CA10B6D55A5}.Debug|ARM64.ActiveCfg = Debug|ARM64
- {56E68E37-B3FC-4799-91AF-0CA10B6D55A5}.Debug|ARM64.Build.0 = Debug|ARM64
- {56E68E37-B3FC-4799-91AF-0CA10B6D55A5}.Debug|x64.ActiveCfg = Debug|x64
- {56E68E37-B3FC-4799-91AF-0CA10B6D55A5}.Debug|x64.Build.0 = Debug|x64
- {56E68E37-B3FC-4799-91AF-0CA10B6D55A5}.Debug|x86.ActiveCfg = Debug|Win32
- {56E68E37-B3FC-4799-91AF-0CA10B6D55A5}.Debug|x86.Build.0 = Debug|Win32
- {56E68E37-B3FC-4799-91AF-0CA10B6D55A5}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
- {56E68E37-B3FC-4799-91AF-0CA10B6D55A5}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
- {56E68E37-B3FC-4799-91AF-0CA10B6D55A5}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
- {56E68E37-B3FC-4799-91AF-0CA10B6D55A5}.Release.DLL|x64.Build.0 = Release.DLL|x64
- {56E68E37-B3FC-4799-91AF-0CA10B6D55A5}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
- {56E68E37-B3FC-4799-91AF-0CA10B6D55A5}.Release.DLL|x86.Build.0 = Release.DLL|Win32
- {56E68E37-B3FC-4799-91AF-0CA10B6D55A5}.Release|ARM64.ActiveCfg = Release|ARM64
- {56E68E37-B3FC-4799-91AF-0CA10B6D55A5}.Release|ARM64.Build.0 = Release|ARM64
- {56E68E37-B3FC-4799-91AF-0CA10B6D55A5}.Release|x64.ActiveCfg = Release|x64
- {56E68E37-B3FC-4799-91AF-0CA10B6D55A5}.Release|x64.Build.0 = Release|x64
- {56E68E37-B3FC-4799-91AF-0CA10B6D55A5}.Release|x86.ActiveCfg = Release|Win32
- {56E68E37-B3FC-4799-91AF-0CA10B6D55A5}.Release|x86.Build.0 = Release|Win32
- {03E7018C-44A2-4C46-9CE7-F2A135A2692B}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
- {03E7018C-44A2-4C46-9CE7-F2A135A2692B}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
- {03E7018C-44A2-4C46-9CE7-F2A135A2692B}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
- {03E7018C-44A2-4C46-9CE7-F2A135A2692B}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
- {03E7018C-44A2-4C46-9CE7-F2A135A2692B}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
- {03E7018C-44A2-4C46-9CE7-F2A135A2692B}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
- {03E7018C-44A2-4C46-9CE7-F2A135A2692B}.Debug|ARM64.ActiveCfg = Debug|ARM64
- {03E7018C-44A2-4C46-9CE7-F2A135A2692B}.Debug|ARM64.Build.0 = Debug|ARM64
- {03E7018C-44A2-4C46-9CE7-F2A135A2692B}.Debug|x64.ActiveCfg = Debug|x64
- {03E7018C-44A2-4C46-9CE7-F2A135A2692B}.Debug|x64.Build.0 = Debug|x64
- {03E7018C-44A2-4C46-9CE7-F2A135A2692B}.Debug|x86.ActiveCfg = Debug|Win32
- {03E7018C-44A2-4C46-9CE7-F2A135A2692B}.Debug|x86.Build.0 = Debug|Win32
- {03E7018C-44A2-4C46-9CE7-F2A135A2692B}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
- {03E7018C-44A2-4C46-9CE7-F2A135A2692B}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
- {03E7018C-44A2-4C46-9CE7-F2A135A2692B}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
- {03E7018C-44A2-4C46-9CE7-F2A135A2692B}.Release.DLL|x64.Build.0 = Release.DLL|x64
- {03E7018C-44A2-4C46-9CE7-F2A135A2692B}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
- {03E7018C-44A2-4C46-9CE7-F2A135A2692B}.Release.DLL|x86.Build.0 = Release.DLL|Win32
- {03E7018C-44A2-4C46-9CE7-F2A135A2692B}.Release|ARM64.ActiveCfg = Release|ARM64
- {03E7018C-44A2-4C46-9CE7-F2A135A2692B}.Release|ARM64.Build.0 = Release|ARM64
- {03E7018C-44A2-4C46-9CE7-F2A135A2692B}.Release|x64.ActiveCfg = Release|x64
- {03E7018C-44A2-4C46-9CE7-F2A135A2692B}.Release|x64.Build.0 = Release|x64
- {03E7018C-44A2-4C46-9CE7-F2A135A2692B}.Release|x86.ActiveCfg = Release|Win32
- {03E7018C-44A2-4C46-9CE7-F2A135A2692B}.Release|x86.Build.0 = Release|Win32
- {F3F6FE4D-9D9E-451A-B0BA-81456104B672}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
- {F3F6FE4D-9D9E-451A-B0BA-81456104B672}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
- {F3F6FE4D-9D9E-451A-B0BA-81456104B672}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
- {F3F6FE4D-9D9E-451A-B0BA-81456104B672}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
- {F3F6FE4D-9D9E-451A-B0BA-81456104B672}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
- {F3F6FE4D-9D9E-451A-B0BA-81456104B672}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
- {F3F6FE4D-9D9E-451A-B0BA-81456104B672}.Debug|ARM64.ActiveCfg = Debug|ARM64
- {F3F6FE4D-9D9E-451A-B0BA-81456104B672}.Debug|ARM64.Build.0 = Debug|ARM64
- {F3F6FE4D-9D9E-451A-B0BA-81456104B672}.Debug|x64.ActiveCfg = Debug|x64
- {F3F6FE4D-9D9E-451A-B0BA-81456104B672}.Debug|x64.Build.0 = Debug|x64
- {F3F6FE4D-9D9E-451A-B0BA-81456104B672}.Debug|x86.ActiveCfg = Debug|Win32
- {F3F6FE4D-9D9E-451A-B0BA-81456104B672}.Debug|x86.Build.0 = Debug|Win32
- {F3F6FE4D-9D9E-451A-B0BA-81456104B672}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
- {F3F6FE4D-9D9E-451A-B0BA-81456104B672}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
- {F3F6FE4D-9D9E-451A-B0BA-81456104B672}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
- {F3F6FE4D-9D9E-451A-B0BA-81456104B672}.Release.DLL|x64.Build.0 = Release.DLL|x64
- {F3F6FE4D-9D9E-451A-B0BA-81456104B672}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
- {F3F6FE4D-9D9E-451A-B0BA-81456104B672}.Release.DLL|x86.Build.0 = Release.DLL|Win32
- {F3F6FE4D-9D9E-451A-B0BA-81456104B672}.Release|ARM64.ActiveCfg = Release|ARM64
- {F3F6FE4D-9D9E-451A-B0BA-81456104B672}.Release|ARM64.Build.0 = Release|ARM64
- {F3F6FE4D-9D9E-451A-B0BA-81456104B672}.Release|x64.ActiveCfg = Release|x64
- {F3F6FE4D-9D9E-451A-B0BA-81456104B672}.Release|x64.Build.0 = Release|x64
- {F3F6FE4D-9D9E-451A-B0BA-81456104B672}.Release|x86.ActiveCfg = Release|Win32
- {F3F6FE4D-9D9E-451A-B0BA-81456104B672}.Release|x86.Build.0 = Release|Win32
- {C27794B5-1293-4EA7-BC0E-0F18E6325539}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
- {C27794B5-1293-4EA7-BC0E-0F18E6325539}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
- {C27794B5-1293-4EA7-BC0E-0F18E6325539}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
- {C27794B5-1293-4EA7-BC0E-0F18E6325539}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
- {C27794B5-1293-4EA7-BC0E-0F18E6325539}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
- {C27794B5-1293-4EA7-BC0E-0F18E6325539}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
- {C27794B5-1293-4EA7-BC0E-0F18E6325539}.Debug|ARM64.ActiveCfg = Debug|ARM64
- {C27794B5-1293-4EA7-BC0E-0F18E6325539}.Debug|ARM64.Build.0 = Debug|ARM64
- {C27794B5-1293-4EA7-BC0E-0F18E6325539}.Debug|x64.ActiveCfg = Debug|x64
- {C27794B5-1293-4EA7-BC0E-0F18E6325539}.Debug|x64.Build.0 = Debug|x64
- {C27794B5-1293-4EA7-BC0E-0F18E6325539}.Debug|x86.ActiveCfg = Debug|Win32
- {C27794B5-1293-4EA7-BC0E-0F18E6325539}.Debug|x86.Build.0 = Debug|Win32
- {C27794B5-1293-4EA7-BC0E-0F18E6325539}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
- {C27794B5-1293-4EA7-BC0E-0F18E6325539}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
- {C27794B5-1293-4EA7-BC0E-0F18E6325539}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
- {C27794B5-1293-4EA7-BC0E-0F18E6325539}.Release.DLL|x64.Build.0 = Release.DLL|x64
- {C27794B5-1293-4EA7-BC0E-0F18E6325539}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
- {C27794B5-1293-4EA7-BC0E-0F18E6325539}.Release.DLL|x86.Build.0 = Release.DLL|Win32
- {C27794B5-1293-4EA7-BC0E-0F18E6325539}.Release|ARM64.ActiveCfg = Release|ARM64
- {C27794B5-1293-4EA7-BC0E-0F18E6325539}.Release|ARM64.Build.0 = Release|ARM64
- {C27794B5-1293-4EA7-BC0E-0F18E6325539}.Release|x64.ActiveCfg = Release|x64
- {C27794B5-1293-4EA7-BC0E-0F18E6325539}.Release|x64.Build.0 = Release|x64
- {C27794B5-1293-4EA7-BC0E-0F18E6325539}.Release|x86.ActiveCfg = Release|Win32
- {C27794B5-1293-4EA7-BC0E-0F18E6325539}.Release|x86.Build.0 = Release|Win32
- {02F41059-12A2-4A96-8D77-07EFE4B108FD}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
- {02F41059-12A2-4A96-8D77-07EFE4B108FD}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
- {02F41059-12A2-4A96-8D77-07EFE4B108FD}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
- {02F41059-12A2-4A96-8D77-07EFE4B108FD}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
- {02F41059-12A2-4A96-8D77-07EFE4B108FD}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
- {02F41059-12A2-4A96-8D77-07EFE4B108FD}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
- {02F41059-12A2-4A96-8D77-07EFE4B108FD}.Debug|ARM64.ActiveCfg = Debug|ARM64
- {02F41059-12A2-4A96-8D77-07EFE4B108FD}.Debug|ARM64.Build.0 = Debug|ARM64
- {02F41059-12A2-4A96-8D77-07EFE4B108FD}.Debug|x64.ActiveCfg = Debug|x64
- {02F41059-12A2-4A96-8D77-07EFE4B108FD}.Debug|x64.Build.0 = Debug|x64
- {02F41059-12A2-4A96-8D77-07EFE4B108FD}.Debug|x86.ActiveCfg = Debug|Win32
- {02F41059-12A2-4A96-8D77-07EFE4B108FD}.Debug|x86.Build.0 = Debug|Win32
- {02F41059-12A2-4A96-8D77-07EFE4B108FD}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
- {02F41059-12A2-4A96-8D77-07EFE4B108FD}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
- {02F41059-12A2-4A96-8D77-07EFE4B108FD}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
- {02F41059-12A2-4A96-8D77-07EFE4B108FD}.Release.DLL|x64.Build.0 = Release.DLL|x64
- {02F41059-12A2-4A96-8D77-07EFE4B108FD}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
- {02F41059-12A2-4A96-8D77-07EFE4B108FD}.Release.DLL|x86.Build.0 = Release.DLL|Win32
- {02F41059-12A2-4A96-8D77-07EFE4B108FD}.Release|ARM64.ActiveCfg = Release|ARM64
- {02F41059-12A2-4A96-8D77-07EFE4B108FD}.Release|ARM64.Build.0 = Release|ARM64
- {02F41059-12A2-4A96-8D77-07EFE4B108FD}.Release|x64.ActiveCfg = Release|x64
- {02F41059-12A2-4A96-8D77-07EFE4B108FD}.Release|x64.Build.0 = Release|x64
- {02F41059-12A2-4A96-8D77-07EFE4B108FD}.Release|x86.ActiveCfg = Release|Win32
- {02F41059-12A2-4A96-8D77-07EFE4B108FD}.Release|x86.Build.0 = Release|Win32
- {B774E0B9-9514-4E88-975F-4EB6C3B8D519}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
- {B774E0B9-9514-4E88-975F-4EB6C3B8D519}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
- {B774E0B9-9514-4E88-975F-4EB6C3B8D519}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
- {B774E0B9-9514-4E88-975F-4EB6C3B8D519}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
- {B774E0B9-9514-4E88-975F-4EB6C3B8D519}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
- {B774E0B9-9514-4E88-975F-4EB6C3B8D519}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
- {B774E0B9-9514-4E88-975F-4EB6C3B8D519}.Debug|ARM64.ActiveCfg = Debug|ARM64
- {B774E0B9-9514-4E88-975F-4EB6C3B8D519}.Debug|ARM64.Build.0 = Debug|ARM64
- {B774E0B9-9514-4E88-975F-4EB6C3B8D519}.Debug|x64.ActiveCfg = Debug|x64
- {B774E0B9-9514-4E88-975F-4EB6C3B8D519}.Debug|x64.Build.0 = Debug|x64
- {B774E0B9-9514-4E88-975F-4EB6C3B8D519}.Debug|x86.ActiveCfg = Debug|Win32
- {B774E0B9-9514-4E88-975F-4EB6C3B8D519}.Debug|x86.Build.0 = Debug|Win32
- {B774E0B9-9514-4E88-975F-4EB6C3B8D519}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
- {B774E0B9-9514-4E88-975F-4EB6C3B8D519}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
- {B774E0B9-9514-4E88-975F-4EB6C3B8D519}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
- {B774E0B9-9514-4E88-975F-4EB6C3B8D519}.Release.DLL|x64.Build.0 = Release.DLL|x64
- {B774E0B9-9514-4E88-975F-4EB6C3B8D519}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
- {B774E0B9-9514-4E88-975F-4EB6C3B8D519}.Release.DLL|x86.Build.0 = Release.DLL|Win32
- {B774E0B9-9514-4E88-975F-4EB6C3B8D519}.Release|ARM64.ActiveCfg = Release|ARM64
- {B774E0B9-9514-4E88-975F-4EB6C3B8D519}.Release|ARM64.Build.0 = Release|ARM64
- {B774E0B9-9514-4E88-975F-4EB6C3B8D519}.Release|x64.ActiveCfg = Release|x64
- {B774E0B9-9514-4E88-975F-4EB6C3B8D519}.Release|x64.Build.0 = Release|x64
- {B774E0B9-9514-4E88-975F-4EB6C3B8D519}.Release|x86.ActiveCfg = Release|Win32
- {B774E0B9-9514-4E88-975F-4EB6C3B8D519}.Release|x86.Build.0 = Release|Win32
- {D91367C2-2189-4859-A7FE-D2CAB84FA15C}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
- {D91367C2-2189-4859-A7FE-D2CAB84FA15C}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
- {D91367C2-2189-4859-A7FE-D2CAB84FA15C}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
- {D91367C2-2189-4859-A7FE-D2CAB84FA15C}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
- {D91367C2-2189-4859-A7FE-D2CAB84FA15C}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
- {D91367C2-2189-4859-A7FE-D2CAB84FA15C}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
- {D91367C2-2189-4859-A7FE-D2CAB84FA15C}.Debug|ARM64.ActiveCfg = Debug|ARM64
- {D91367C2-2189-4859-A7FE-D2CAB84FA15C}.Debug|ARM64.Build.0 = Debug|ARM64
- {D91367C2-2189-4859-A7FE-D2CAB84FA15C}.Debug|x64.ActiveCfg = Debug|x64
- {D91367C2-2189-4859-A7FE-D2CAB84FA15C}.Debug|x64.Build.0 = Debug|x64
- {D91367C2-2189-4859-A7FE-D2CAB84FA15C}.Debug|x86.ActiveCfg = Debug|Win32
- {D91367C2-2189-4859-A7FE-D2CAB84FA15C}.Debug|x86.Build.0 = Debug|Win32
- {D91367C2-2189-4859-A7FE-D2CAB84FA15C}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
- {D91367C2-2189-4859-A7FE-D2CAB84FA15C}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
- {D91367C2-2189-4859-A7FE-D2CAB84FA15C}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
- {D91367C2-2189-4859-A7FE-D2CAB84FA15C}.Release.DLL|x64.Build.0 = Release.DLL|x64
- {D91367C2-2189-4859-A7FE-D2CAB84FA15C}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
- {D91367C2-2189-4859-A7FE-D2CAB84FA15C}.Release.DLL|x86.Build.0 = Release.DLL|Win32
- {D91367C2-2189-4859-A7FE-D2CAB84FA15C}.Release|ARM64.ActiveCfg = Release|ARM64
- {D91367C2-2189-4859-A7FE-D2CAB84FA15C}.Release|ARM64.Build.0 = Release|ARM64
- {D91367C2-2189-4859-A7FE-D2CAB84FA15C}.Release|x64.ActiveCfg = Release|x64
- {D91367C2-2189-4859-A7FE-D2CAB84FA15C}.Release|x64.Build.0 = Release|x64
- {D91367C2-2189-4859-A7FE-D2CAB84FA15C}.Release|x86.ActiveCfg = Release|Win32
- {D91367C2-2189-4859-A7FE-D2CAB84FA15C}.Release|x86.Build.0 = Release|Win32
- {33459B4E-1839-4856-BF6B-22480D11FE31}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
- {33459B4E-1839-4856-BF6B-22480D11FE31}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
- {33459B4E-1839-4856-BF6B-22480D11FE31}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
- {33459B4E-1839-4856-BF6B-22480D11FE31}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
- {33459B4E-1839-4856-BF6B-22480D11FE31}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
- {33459B4E-1839-4856-BF6B-22480D11FE31}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
- {33459B4E-1839-4856-BF6B-22480D11FE31}.Debug|ARM64.ActiveCfg = Debug|ARM64
- {33459B4E-1839-4856-BF6B-22480D11FE31}.Debug|ARM64.Build.0 = Debug|ARM64
- {33459B4E-1839-4856-BF6B-22480D11FE31}.Debug|x64.ActiveCfg = Debug|x64
- {33459B4E-1839-4856-BF6B-22480D11FE31}.Debug|x64.Build.0 = Debug|x64
- {33459B4E-1839-4856-BF6B-22480D11FE31}.Debug|x86.ActiveCfg = Debug|Win32
- {33459B4E-1839-4856-BF6B-22480D11FE31}.Debug|x86.Build.0 = Debug|Win32
- {33459B4E-1839-4856-BF6B-22480D11FE31}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
- {33459B4E-1839-4856-BF6B-22480D11FE31}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
- {33459B4E-1839-4856-BF6B-22480D11FE31}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
- {33459B4E-1839-4856-BF6B-22480D11FE31}.Release.DLL|x64.Build.0 = Release.DLL|x64
- {33459B4E-1839-4856-BF6B-22480D11FE31}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
- {33459B4E-1839-4856-BF6B-22480D11FE31}.Release.DLL|x86.Build.0 = Release.DLL|Win32
- {33459B4E-1839-4856-BF6B-22480D11FE31}.Release|ARM64.ActiveCfg = Release|ARM64
- {33459B4E-1839-4856-BF6B-22480D11FE31}.Release|ARM64.Build.0 = Release|ARM64
- {33459B4E-1839-4856-BF6B-22480D11FE31}.Release|x64.ActiveCfg = Release|x64
- {33459B4E-1839-4856-BF6B-22480D11FE31}.Release|x64.Build.0 = Release|x64
- {33459B4E-1839-4856-BF6B-22480D11FE31}.Release|x86.ActiveCfg = Release|Win32
- {33459B4E-1839-4856-BF6B-22480D11FE31}.Release|x86.Build.0 = Release|Win32
- {48871156-181A-475A-BD8D-200086A09675}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
- {48871156-181A-475A-BD8D-200086A09675}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
- {48871156-181A-475A-BD8D-200086A09675}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
- {48871156-181A-475A-BD8D-200086A09675}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
- {48871156-181A-475A-BD8D-200086A09675}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
- {48871156-181A-475A-BD8D-200086A09675}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
- {48871156-181A-475A-BD8D-200086A09675}.Debug|ARM64.ActiveCfg = Debug|ARM64
- {48871156-181A-475A-BD8D-200086A09675}.Debug|ARM64.Build.0 = Debug|ARM64
- {48871156-181A-475A-BD8D-200086A09675}.Debug|x64.ActiveCfg = Debug|x64
- {48871156-181A-475A-BD8D-200086A09675}.Debug|x64.Build.0 = Debug|x64
- {48871156-181A-475A-BD8D-200086A09675}.Debug|x86.ActiveCfg = Debug|Win32
- {48871156-181A-475A-BD8D-200086A09675}.Debug|x86.Build.0 = Debug|Win32
- {48871156-181A-475A-BD8D-200086A09675}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
- {48871156-181A-475A-BD8D-200086A09675}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
- {48871156-181A-475A-BD8D-200086A09675}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
- {48871156-181A-475A-BD8D-200086A09675}.Release.DLL|x64.Build.0 = Release.DLL|x64
- {48871156-181A-475A-BD8D-200086A09675}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
- {48871156-181A-475A-BD8D-200086A09675}.Release.DLL|x86.Build.0 = Release.DLL|Win32
- {48871156-181A-475A-BD8D-200086A09675}.Release|ARM64.ActiveCfg = Release|ARM64
- {48871156-181A-475A-BD8D-200086A09675}.Release|ARM64.Build.0 = Release|ARM64
- {48871156-181A-475A-BD8D-200086A09675}.Release|x64.ActiveCfg = Release|x64
- {48871156-181A-475A-BD8D-200086A09675}.Release|x64.Build.0 = Release|x64
- {48871156-181A-475A-BD8D-200086A09675}.Release|x86.ActiveCfg = Release|Win32
- {48871156-181A-475A-BD8D-200086A09675}.Release|x86.Build.0 = Release|Win32
- {C4416DA1-9E62-46BA-9CD3-F8963C79E1A1}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
- {C4416DA1-9E62-46BA-9CD3-F8963C79E1A1}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
- {C4416DA1-9E62-46BA-9CD3-F8963C79E1A1}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
- {C4416DA1-9E62-46BA-9CD3-F8963C79E1A1}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
- {C4416DA1-9E62-46BA-9CD3-F8963C79E1A1}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
- {C4416DA1-9E62-46BA-9CD3-F8963C79E1A1}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
- {C4416DA1-9E62-46BA-9CD3-F8963C79E1A1}.Debug|ARM64.ActiveCfg = Debug|ARM64
- {C4416DA1-9E62-46BA-9CD3-F8963C79E1A1}.Debug|ARM64.Build.0 = Debug|ARM64
- {C4416DA1-9E62-46BA-9CD3-F8963C79E1A1}.Debug|x64.ActiveCfg = Debug|x64
- {C4416DA1-9E62-46BA-9CD3-F8963C79E1A1}.Debug|x64.Build.0 = Debug|x64
- {C4416DA1-9E62-46BA-9CD3-F8963C79E1A1}.Debug|x86.ActiveCfg = Debug|Win32
- {C4416DA1-9E62-46BA-9CD3-F8963C79E1A1}.Debug|x86.Build.0 = Debug|Win32
- {C4416DA1-9E62-46BA-9CD3-F8963C79E1A1}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
- {C4416DA1-9E62-46BA-9CD3-F8963C79E1A1}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
- {C4416DA1-9E62-46BA-9CD3-F8963C79E1A1}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
- {C4416DA1-9E62-46BA-9CD3-F8963C79E1A1}.Release.DLL|x64.Build.0 = Release.DLL|x64
- {C4416DA1-9E62-46BA-9CD3-F8963C79E1A1}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
- {C4416DA1-9E62-46BA-9CD3-F8963C79E1A1}.Release.DLL|x86.Build.0 = Release.DLL|Win32
- {C4416DA1-9E62-46BA-9CD3-F8963C79E1A1}.Release|ARM64.ActiveCfg = Release|ARM64
- {C4416DA1-9E62-46BA-9CD3-F8963C79E1A1}.Release|ARM64.Build.0 = Release|ARM64
- {C4416DA1-9E62-46BA-9CD3-F8963C79E1A1}.Release|x64.ActiveCfg = Release|x64
- {C4416DA1-9E62-46BA-9CD3-F8963C79E1A1}.Release|x64.Build.0 = Release|x64
- {C4416DA1-9E62-46BA-9CD3-F8963C79E1A1}.Release|x86.ActiveCfg = Release|Win32
- {C4416DA1-9E62-46BA-9CD3-F8963C79E1A1}.Release|x86.Build.0 = Release|Win32
- {1C49E35A-2838-49D9-9D5F-4B8134960EF6}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
- {1C49E35A-2838-49D9-9D5F-4B8134960EF6}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
- {1C49E35A-2838-49D9-9D5F-4B8134960EF6}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
- {1C49E35A-2838-49D9-9D5F-4B8134960EF6}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
- {1C49E35A-2838-49D9-9D5F-4B8134960EF6}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
- {1C49E35A-2838-49D9-9D5F-4B8134960EF6}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
- {1C49E35A-2838-49D9-9D5F-4B8134960EF6}.Debug|ARM64.ActiveCfg = Debug|ARM64
- {1C49E35A-2838-49D9-9D5F-4B8134960EF6}.Debug|ARM64.Build.0 = Debug|ARM64
- {1C49E35A-2838-49D9-9D5F-4B8134960EF6}.Debug|x64.ActiveCfg = Debug|x64
- {1C49E35A-2838-49D9-9D5F-4B8134960EF6}.Debug|x64.Build.0 = Debug|x64
- {1C49E35A-2838-49D9-9D5F-4B8134960EF6}.Debug|x86.ActiveCfg = Debug|Win32
- {1C49E35A-2838-49D9-9D5F-4B8134960EF6}.Debug|x86.Build.0 = Debug|Win32
- {1C49E35A-2838-49D9-9D5F-4B8134960EF6}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
- {1C49E35A-2838-49D9-9D5F-4B8134960EF6}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
- {1C49E35A-2838-49D9-9D5F-4B8134960EF6}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
- {1C49E35A-2838-49D9-9D5F-4B8134960EF6}.Release.DLL|x64.Build.0 = Release.DLL|x64
- {1C49E35A-2838-49D9-9D5F-4B8134960EF6}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
- {1C49E35A-2838-49D9-9D5F-4B8134960EF6}.Release.DLL|x86.Build.0 = Release.DLL|Win32
- {1C49E35A-2838-49D9-9D5F-4B8134960EF6}.Release|ARM64.ActiveCfg = Release|ARM64
- {1C49E35A-2838-49D9-9D5F-4B8134960EF6}.Release|ARM64.Build.0 = Release|ARM64
- {1C49E35A-2838-49D9-9D5F-4B8134960EF6}.Release|x64.ActiveCfg = Release|x64
- {1C49E35A-2838-49D9-9D5F-4B8134960EF6}.Release|x64.Build.0 = Release|x64
- {1C49E35A-2838-49D9-9D5F-4B8134960EF6}.Release|x86.ActiveCfg = Release|Win32
- {1C49E35A-2838-49D9-9D5F-4B8134960EF6}.Release|x86.Build.0 = Release|Win32
- {F91142E2-A999-47F0-9E74-38C1E2930EBE}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
- {F91142E2-A999-47F0-9E74-38C1E2930EBE}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
- {F91142E2-A999-47F0-9E74-38C1E2930EBE}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
- {F91142E2-A999-47F0-9E74-38C1E2930EBE}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
- {F91142E2-A999-47F0-9E74-38C1E2930EBE}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
- {F91142E2-A999-47F0-9E74-38C1E2930EBE}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
- {F91142E2-A999-47F0-9E74-38C1E2930EBE}.Debug|ARM64.ActiveCfg = Debug|ARM64
- {F91142E2-A999-47F0-9E74-38C1E2930EBE}.Debug|ARM64.Build.0 = Debug|ARM64
- {F91142E2-A999-47F0-9E74-38C1E2930EBE}.Debug|x64.ActiveCfg = Debug|x64
- {F91142E2-A999-47F0-9E74-38C1E2930EBE}.Debug|x64.Build.0 = Debug|x64
- {F91142E2-A999-47F0-9E74-38C1E2930EBE}.Debug|x86.ActiveCfg = Debug|Win32
- {F91142E2-A999-47F0-9E74-38C1E2930EBE}.Debug|x86.Build.0 = Debug|Win32
- {F91142E2-A999-47F0-9E74-38C1E2930EBE}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
- {F91142E2-A999-47F0-9E74-38C1E2930EBE}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
- {F91142E2-A999-47F0-9E74-38C1E2930EBE}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
- {F91142E2-A999-47F0-9E74-38C1E2930EBE}.Release.DLL|x64.Build.0 = Release.DLL|x64
- {F91142E2-A999-47F0-9E74-38C1E2930EBE}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
- {F91142E2-A999-47F0-9E74-38C1E2930EBE}.Release.DLL|x86.Build.0 = Release.DLL|Win32
- {F91142E2-A999-47F0-9E74-38C1E2930EBE}.Release|ARM64.ActiveCfg = Release|ARM64
- {F91142E2-A999-47F0-9E74-38C1E2930EBE}.Release|ARM64.Build.0 = Release|ARM64
- {F91142E2-A999-47F0-9E74-38C1E2930EBE}.Release|x64.ActiveCfg = Release|x64
- {F91142E2-A999-47F0-9E74-38C1E2930EBE}.Release|x64.Build.0 = Release|x64
- {F91142E2-A999-47F0-9E74-38C1E2930EBE}.Release|x86.ActiveCfg = Release|Win32
- {F91142E2-A999-47F0-9E74-38C1E2930EBE}.Release|x86.Build.0 = Release|Win32
- {1EDD4BCF-345C-4065-8CBD-7285224293C3}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
- {1EDD4BCF-345C-4065-8CBD-7285224293C3}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
- {1EDD4BCF-345C-4065-8CBD-7285224293C3}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
- {1EDD4BCF-345C-4065-8CBD-7285224293C3}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
- {1EDD4BCF-345C-4065-8CBD-7285224293C3}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
- {1EDD4BCF-345C-4065-8CBD-7285224293C3}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
- {1EDD4BCF-345C-4065-8CBD-7285224293C3}.Debug|ARM64.ActiveCfg = Debug|ARM64
- {1EDD4BCF-345C-4065-8CBD-7285224293C3}.Debug|ARM64.Build.0 = Debug|ARM64
- {1EDD4BCF-345C-4065-8CBD-7285224293C3}.Debug|x64.ActiveCfg = Debug|x64
- {1EDD4BCF-345C-4065-8CBD-7285224293C3}.Debug|x64.Build.0 = Debug|x64
- {1EDD4BCF-345C-4065-8CBD-7285224293C3}.Debug|x86.ActiveCfg = Debug|Win32
- {1EDD4BCF-345C-4065-8CBD-7285224293C3}.Debug|x86.Build.0 = Debug|Win32
- {1EDD4BCF-345C-4065-8CBD-7285224293C3}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
- {1EDD4BCF-345C-4065-8CBD-7285224293C3}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
- {1EDD4BCF-345C-4065-8CBD-7285224293C3}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
- {1EDD4BCF-345C-4065-8CBD-7285224293C3}.Release.DLL|x64.Build.0 = Release.DLL|x64
- {1EDD4BCF-345C-4065-8CBD-7285224293C3}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
- {1EDD4BCF-345C-4065-8CBD-7285224293C3}.Release.DLL|x86.Build.0 = Release.DLL|Win32
- {1EDD4BCF-345C-4065-8CBD-7285224293C3}.Release|ARM64.ActiveCfg = Release|ARM64
- {1EDD4BCF-345C-4065-8CBD-7285224293C3}.Release|ARM64.Build.0 = Release|ARM64
- {1EDD4BCF-345C-4065-8CBD-7285224293C3}.Release|x64.ActiveCfg = Release|x64
- {1EDD4BCF-345C-4065-8CBD-7285224293C3}.Release|x64.Build.0 = Release|x64
- {1EDD4BCF-345C-4065-8CBD-7285224293C3}.Release|x86.ActiveCfg = Release|Win32
- {1EDD4BCF-345C-4065-8CBD-7285224293C3}.Release|x86.Build.0 = Release|Win32
- {A6B2A11B-0669-4AF5-A025-8DD02DBBE5EA}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
- {A6B2A11B-0669-4AF5-A025-8DD02DBBE5EA}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
- {A6B2A11B-0669-4AF5-A025-8DD02DBBE5EA}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
- {A6B2A11B-0669-4AF5-A025-8DD02DBBE5EA}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
- {A6B2A11B-0669-4AF5-A025-8DD02DBBE5EA}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
- {A6B2A11B-0669-4AF5-A025-8DD02DBBE5EA}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
- {A6B2A11B-0669-4AF5-A025-8DD02DBBE5EA}.Debug|ARM64.ActiveCfg = Debug|ARM64
- {A6B2A11B-0669-4AF5-A025-8DD02DBBE5EA}.Debug|ARM64.Build.0 = Debug|ARM64
- {A6B2A11B-0669-4AF5-A025-8DD02DBBE5EA}.Debug|x64.ActiveCfg = Debug|x64
- {A6B2A11B-0669-4AF5-A025-8DD02DBBE5EA}.Debug|x64.Build.0 = Debug|x64
- {A6B2A11B-0669-4AF5-A025-8DD02DBBE5EA}.Debug|x86.ActiveCfg = Debug|Win32
- {A6B2A11B-0669-4AF5-A025-8DD02DBBE5EA}.Debug|x86.Build.0 = Debug|Win32
- {A6B2A11B-0669-4AF5-A025-8DD02DBBE5EA}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
- {A6B2A11B-0669-4AF5-A025-8DD02DBBE5EA}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
- {A6B2A11B-0669-4AF5-A025-8DD02DBBE5EA}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
- {A6B2A11B-0669-4AF5-A025-8DD02DBBE5EA}.Release.DLL|x64.Build.0 = Release.DLL|x64
- {A6B2A11B-0669-4AF5-A025-8DD02DBBE5EA}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
- {A6B2A11B-0669-4AF5-A025-8DD02DBBE5EA}.Release.DLL|x86.Build.0 = Release.DLL|Win32
- {A6B2A11B-0669-4AF5-A025-8DD02DBBE5EA}.Release|ARM64.ActiveCfg = Release|ARM64
- {A6B2A11B-0669-4AF5-A025-8DD02DBBE5EA}.Release|ARM64.Build.0 = Release|ARM64
- {A6B2A11B-0669-4AF5-A025-8DD02DBBE5EA}.Release|x64.ActiveCfg = Release|x64
- {A6B2A11B-0669-4AF5-A025-8DD02DBBE5EA}.Release|x64.Build.0 = Release|x64
- {A6B2A11B-0669-4AF5-A025-8DD02DBBE5EA}.Release|x86.ActiveCfg = Release|Win32
- {A6B2A11B-0669-4AF5-A025-8DD02DBBE5EA}.Release|x86.Build.0 = Release|Win32
- {B176BB4A-CA31-4E2A-B790-3EA0ED2EE870}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
- {B176BB4A-CA31-4E2A-B790-3EA0ED2EE870}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
- {B176BB4A-CA31-4E2A-B790-3EA0ED2EE870}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
- {B176BB4A-CA31-4E2A-B790-3EA0ED2EE870}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
- {B176BB4A-CA31-4E2A-B790-3EA0ED2EE870}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
- {B176BB4A-CA31-4E2A-B790-3EA0ED2EE870}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
- {B176BB4A-CA31-4E2A-B790-3EA0ED2EE870}.Debug|ARM64.ActiveCfg = Debug|ARM64
- {B176BB4A-CA31-4E2A-B790-3EA0ED2EE870}.Debug|ARM64.Build.0 = Debug|ARM64
- {B176BB4A-CA31-4E2A-B790-3EA0ED2EE870}.Debug|x64.ActiveCfg = Debug|x64
- {B176BB4A-CA31-4E2A-B790-3EA0ED2EE870}.Debug|x64.Build.0 = Debug|x64
- {B176BB4A-CA31-4E2A-B790-3EA0ED2EE870}.Debug|x86.ActiveCfg = Debug|Win32
- {B176BB4A-CA31-4E2A-B790-3EA0ED2EE870}.Debug|x86.Build.0 = Debug|Win32
- {B176BB4A-CA31-4E2A-B790-3EA0ED2EE870}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
- {B176BB4A-CA31-4E2A-B790-3EA0ED2EE870}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
- {B176BB4A-CA31-4E2A-B790-3EA0ED2EE870}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
- {B176BB4A-CA31-4E2A-B790-3EA0ED2EE870}.Release.DLL|x64.Build.0 = Release.DLL|x64
- {B176BB4A-CA31-4E2A-B790-3EA0ED2EE870}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
- {B176BB4A-CA31-4E2A-B790-3EA0ED2EE870}.Release.DLL|x86.Build.0 = Release.DLL|Win32
- {B176BB4A-CA31-4E2A-B790-3EA0ED2EE870}.Release|ARM64.ActiveCfg = Release|ARM64
- {B176BB4A-CA31-4E2A-B790-3EA0ED2EE870}.Release|ARM64.Build.0 = Release|ARM64
- {B176BB4A-CA31-4E2A-B790-3EA0ED2EE870}.Release|x64.ActiveCfg = Release|x64
- {B176BB4A-CA31-4E2A-B790-3EA0ED2EE870}.Release|x64.Build.0 = Release|x64
- {B176BB4A-CA31-4E2A-B790-3EA0ED2EE870}.Release|x86.ActiveCfg = Release|Win32
- {B176BB4A-CA31-4E2A-B790-3EA0ED2EE870}.Release|x86.Build.0 = Release|Win32
- {D08AA2A0-2F94-4BF5-B42D-E92450F03FD1}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
- {D08AA2A0-2F94-4BF5-B42D-E92450F03FD1}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
- {D08AA2A0-2F94-4BF5-B42D-E92450F03FD1}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
- {D08AA2A0-2F94-4BF5-B42D-E92450F03FD1}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
- {D08AA2A0-2F94-4BF5-B42D-E92450F03FD1}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
- {D08AA2A0-2F94-4BF5-B42D-E92450F03FD1}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
- {D08AA2A0-2F94-4BF5-B42D-E92450F03FD1}.Debug|ARM64.ActiveCfg = Debug|ARM64
- {D08AA2A0-2F94-4BF5-B42D-E92450F03FD1}.Debug|ARM64.Build.0 = Debug|ARM64
- {D08AA2A0-2F94-4BF5-B42D-E92450F03FD1}.Debug|x64.ActiveCfg = Debug|x64
- {D08AA2A0-2F94-4BF5-B42D-E92450F03FD1}.Debug|x64.Build.0 = Debug|x64
- {D08AA2A0-2F94-4BF5-B42D-E92450F03FD1}.Debug|x86.ActiveCfg = Debug|Win32
- {D08AA2A0-2F94-4BF5-B42D-E92450F03FD1}.Debug|x86.Build.0 = Debug|Win32
- {D08AA2A0-2F94-4BF5-B42D-E92450F03FD1}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
- {D08AA2A0-2F94-4BF5-B42D-E92450F03FD1}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
- {D08AA2A0-2F94-4BF5-B42D-E92450F03FD1}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
- {D08AA2A0-2F94-4BF5-B42D-E92450F03FD1}.Release.DLL|x64.Build.0 = Release.DLL|x64
- {D08AA2A0-2F94-4BF5-B42D-E92450F03FD1}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
- {D08AA2A0-2F94-4BF5-B42D-E92450F03FD1}.Release.DLL|x86.Build.0 = Release.DLL|Win32
- {D08AA2A0-2F94-4BF5-B42D-E92450F03FD1}.Release|ARM64.ActiveCfg = Release|ARM64
- {D08AA2A0-2F94-4BF5-B42D-E92450F03FD1}.Release|ARM64.Build.0 = Release|ARM64
- {D08AA2A0-2F94-4BF5-B42D-E92450F03FD1}.Release|x64.ActiveCfg = Release|x64
- {D08AA2A0-2F94-4BF5-B42D-E92450F03FD1}.Release|x64.Build.0 = Release|x64
- {D08AA2A0-2F94-4BF5-B42D-E92450F03FD1}.Release|x86.ActiveCfg = Release|Win32
- {D08AA2A0-2F94-4BF5-B42D-E92450F03FD1}.Release|x86.Build.0 = Release|Win32
- {4A7D0ECA-D7CC-4E66-B741-C92E9C1B42FF}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
- {4A7D0ECA-D7CC-4E66-B741-C92E9C1B42FF}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
- {4A7D0ECA-D7CC-4E66-B741-C92E9C1B42FF}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
- {4A7D0ECA-D7CC-4E66-B741-C92E9C1B42FF}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
- {4A7D0ECA-D7CC-4E66-B741-C92E9C1B42FF}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
- {4A7D0ECA-D7CC-4E66-B741-C92E9C1B42FF}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
- {4A7D0ECA-D7CC-4E66-B741-C92E9C1B42FF}.Debug|ARM64.ActiveCfg = Debug|ARM64
- {4A7D0ECA-D7CC-4E66-B741-C92E9C1B42FF}.Debug|ARM64.Build.0 = Debug|ARM64
- {4A7D0ECA-D7CC-4E66-B741-C92E9C1B42FF}.Debug|x64.ActiveCfg = Debug|x64
- {4A7D0ECA-D7CC-4E66-B741-C92E9C1B42FF}.Debug|x64.Build.0 = Debug|x64
- {4A7D0ECA-D7CC-4E66-B741-C92E9C1B42FF}.Debug|x86.ActiveCfg = Debug|Win32
- {4A7D0ECA-D7CC-4E66-B741-C92E9C1B42FF}.Debug|x86.Build.0 = Debug|Win32
- {4A7D0ECA-D7CC-4E66-B741-C92E9C1B42FF}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
- {4A7D0ECA-D7CC-4E66-B741-C92E9C1B42FF}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
- {4A7D0ECA-D7CC-4E66-B741-C92E9C1B42FF}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
- {4A7D0ECA-D7CC-4E66-B741-C92E9C1B42FF}.Release.DLL|x64.Build.0 = Release.DLL|x64
- {4A7D0ECA-D7CC-4E66-B741-C92E9C1B42FF}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
- {4A7D0ECA-D7CC-4E66-B741-C92E9C1B42FF}.Release.DLL|x86.Build.0 = Release.DLL|Win32
- {4A7D0ECA-D7CC-4E66-B741-C92E9C1B42FF}.Release|ARM64.ActiveCfg = Release|ARM64
- {4A7D0ECA-D7CC-4E66-B741-C92E9C1B42FF}.Release|ARM64.Build.0 = Release|ARM64
- {4A7D0ECA-D7CC-4E66-B741-C92E9C1B42FF}.Release|x64.ActiveCfg = Release|x64
- {4A7D0ECA-D7CC-4E66-B741-C92E9C1B42FF}.Release|x64.Build.0 = Release|x64
- {4A7D0ECA-D7CC-4E66-B741-C92E9C1B42FF}.Release|x86.ActiveCfg = Release|Win32
- {4A7D0ECA-D7CC-4E66-B741-C92E9C1B42FF}.Release|x86.Build.0 = Release|Win32
- {CF3755C4-937D-4ABF-B7B3-95140808717F}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
- {CF3755C4-937D-4ABF-B7B3-95140808717F}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
- {CF3755C4-937D-4ABF-B7B3-95140808717F}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
- {CF3755C4-937D-4ABF-B7B3-95140808717F}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
- {CF3755C4-937D-4ABF-B7B3-95140808717F}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
- {CF3755C4-937D-4ABF-B7B3-95140808717F}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
- {CF3755C4-937D-4ABF-B7B3-95140808717F}.Debug|ARM64.ActiveCfg = Debug|ARM64
- {CF3755C4-937D-4ABF-B7B3-95140808717F}.Debug|ARM64.Build.0 = Debug|ARM64
- {CF3755C4-937D-4ABF-B7B3-95140808717F}.Debug|x64.ActiveCfg = Debug|x64
- {CF3755C4-937D-4ABF-B7B3-95140808717F}.Debug|x64.Build.0 = Debug|x64
- {CF3755C4-937D-4ABF-B7B3-95140808717F}.Debug|x86.ActiveCfg = Debug|Win32
- {CF3755C4-937D-4ABF-B7B3-95140808717F}.Debug|x86.Build.0 = Debug|Win32
- {CF3755C4-937D-4ABF-B7B3-95140808717F}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
- {CF3755C4-937D-4ABF-B7B3-95140808717F}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
- {CF3755C4-937D-4ABF-B7B3-95140808717F}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
- {CF3755C4-937D-4ABF-B7B3-95140808717F}.Release.DLL|x64.Build.0 = Release.DLL|x64
- {CF3755C4-937D-4ABF-B7B3-95140808717F}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
- {CF3755C4-937D-4ABF-B7B3-95140808717F}.Release.DLL|x86.Build.0 = Release.DLL|Win32
- {CF3755C4-937D-4ABF-B7B3-95140808717F}.Release|ARM64.ActiveCfg = Release|ARM64
- {CF3755C4-937D-4ABF-B7B3-95140808717F}.Release|ARM64.Build.0 = Release|ARM64
- {CF3755C4-937D-4ABF-B7B3-95140808717F}.Release|x64.ActiveCfg = Release|x64
- {CF3755C4-937D-4ABF-B7B3-95140808717F}.Release|x64.Build.0 = Release|x64
- {CF3755C4-937D-4ABF-B7B3-95140808717F}.Release|x86.ActiveCfg = Release|Win32
- {CF3755C4-937D-4ABF-B7B3-95140808717F}.Release|x86.Build.0 = Release|Win32
- {D34939FE-8873-4C53-8D6C-74DED78EA3C4}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
- {D34939FE-8873-4C53-8D6C-74DED78EA3C4}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
- {D34939FE-8873-4C53-8D6C-74DED78EA3C4}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
- {D34939FE-8873-4C53-8D6C-74DED78EA3C4}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
- {D34939FE-8873-4C53-8D6C-74DED78EA3C4}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
- {D34939FE-8873-4C53-8D6C-74DED78EA3C4}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
- {D34939FE-8873-4C53-8D6C-74DED78EA3C4}.Debug|ARM64.ActiveCfg = Debug|ARM64
- {D34939FE-8873-4C53-8D6C-74DED78EA3C4}.Debug|ARM64.Build.0 = Debug|ARM64
- {D34939FE-8873-4C53-8D6C-74DED78EA3C4}.Debug|x64.ActiveCfg = Debug|x64
- {D34939FE-8873-4C53-8D6C-74DED78EA3C4}.Debug|x64.Build.0 = Debug|x64
- {D34939FE-8873-4C53-8D6C-74DED78EA3C4}.Debug|x86.ActiveCfg = Debug|Win32
- {D34939FE-8873-4C53-8D6C-74DED78EA3C4}.Debug|x86.Build.0 = Debug|Win32
- {D34939FE-8873-4C53-8D6C-74DED78EA3C4}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
- {D34939FE-8873-4C53-8D6C-74DED78EA3C4}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
- {D34939FE-8873-4C53-8D6C-74DED78EA3C4}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
- {D34939FE-8873-4C53-8D6C-74DED78EA3C4}.Release.DLL|x64.Build.0 = Release.DLL|x64
- {D34939FE-8873-4C53-8D6C-74DED78EA3C4}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
- {D34939FE-8873-4C53-8D6C-74DED78EA3C4}.Release.DLL|x86.Build.0 = Release.DLL|Win32
- {D34939FE-8873-4C53-8D6C-74DED78EA3C4}.Release|ARM64.ActiveCfg = Release|ARM64
- {D34939FE-8873-4C53-8D6C-74DED78EA3C4}.Release|ARM64.Build.0 = Release|ARM64
- {D34939FE-8873-4C53-8D6C-74DED78EA3C4}.Release|x64.ActiveCfg = Release|x64
- {D34939FE-8873-4C53-8D6C-74DED78EA3C4}.Release|x64.Build.0 = Release|x64
- {D34939FE-8873-4C53-8D6C-74DED78EA3C4}.Release|x86.ActiveCfg = Release|Win32
- {D34939FE-8873-4C53-8D6C-74DED78EA3C4}.Release|x86.Build.0 = Release|Win32
- {D408A730-363A-4ABF-BCEF-5D63DCC66042}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
- {D408A730-363A-4ABF-BCEF-5D63DCC66042}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
- {D408A730-363A-4ABF-BCEF-5D63DCC66042}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
- {D408A730-363A-4ABF-BCEF-5D63DCC66042}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
- {D408A730-363A-4ABF-BCEF-5D63DCC66042}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
- {D408A730-363A-4ABF-BCEF-5D63DCC66042}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
- {D408A730-363A-4ABF-BCEF-5D63DCC66042}.Debug|ARM64.ActiveCfg = Debug|ARM64
- {D408A730-363A-4ABF-BCEF-5D63DCC66042}.Debug|ARM64.Build.0 = Debug|ARM64
- {D408A730-363A-4ABF-BCEF-5D63DCC66042}.Debug|x64.ActiveCfg = Debug|x64
- {D408A730-363A-4ABF-BCEF-5D63DCC66042}.Debug|x64.Build.0 = Debug|x64
- {D408A730-363A-4ABF-BCEF-5D63DCC66042}.Debug|x86.ActiveCfg = Debug|Win32
- {D408A730-363A-4ABF-BCEF-5D63DCC66042}.Debug|x86.Build.0 = Debug|Win32
- {D408A730-363A-4ABF-BCEF-5D63DCC66042}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
- {D408A730-363A-4ABF-BCEF-5D63DCC66042}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
- {D408A730-363A-4ABF-BCEF-5D63DCC66042}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
- {D408A730-363A-4ABF-BCEF-5D63DCC66042}.Release.DLL|x64.Build.0 = Release.DLL|x64
- {D408A730-363A-4ABF-BCEF-5D63DCC66042}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
- {D408A730-363A-4ABF-BCEF-5D63DCC66042}.Release.DLL|x86.Build.0 = Release.DLL|Win32
- {D408A730-363A-4ABF-BCEF-5D63DCC66042}.Release|ARM64.ActiveCfg = Release|ARM64
- {D408A730-363A-4ABF-BCEF-5D63DCC66042}.Release|ARM64.Build.0 = Release|ARM64
- {D408A730-363A-4ABF-BCEF-5D63DCC66042}.Release|x64.ActiveCfg = Release|x64
- {D408A730-363A-4ABF-BCEF-5D63DCC66042}.Release|x64.Build.0 = Release|x64
- {D408A730-363A-4ABF-BCEF-5D63DCC66042}.Release|x86.ActiveCfg = Release|Win32
- {D408A730-363A-4ABF-BCEF-5D63DCC66042}.Release|x86.Build.0 = Release|Win32
- {F532AFBC-9E62-4A89-BB99-1044E4B2D8ED}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
- {F532AFBC-9E62-4A89-BB99-1044E4B2D8ED}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
- {F532AFBC-9E62-4A89-BB99-1044E4B2D8ED}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
- {F532AFBC-9E62-4A89-BB99-1044E4B2D8ED}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
- {F532AFBC-9E62-4A89-BB99-1044E4B2D8ED}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
- {F532AFBC-9E62-4A89-BB99-1044E4B2D8ED}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
- {F532AFBC-9E62-4A89-BB99-1044E4B2D8ED}.Debug|ARM64.ActiveCfg = Debug|ARM64
- {F532AFBC-9E62-4A89-BB99-1044E4B2D8ED}.Debug|ARM64.Build.0 = Debug|ARM64
- {F532AFBC-9E62-4A89-BB99-1044E4B2D8ED}.Debug|x64.ActiveCfg = Debug|x64
- {F532AFBC-9E62-4A89-BB99-1044E4B2D8ED}.Debug|x64.Build.0 = Debug|x64
- {F532AFBC-9E62-4A89-BB99-1044E4B2D8ED}.Debug|x86.ActiveCfg = Debug|Win32
- {F532AFBC-9E62-4A89-BB99-1044E4B2D8ED}.Debug|x86.Build.0 = Debug|Win32
- {F532AFBC-9E62-4A89-BB99-1044E4B2D8ED}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
- {F532AFBC-9E62-4A89-BB99-1044E4B2D8ED}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
- {F532AFBC-9E62-4A89-BB99-1044E4B2D8ED}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
- {F532AFBC-9E62-4A89-BB99-1044E4B2D8ED}.Release.DLL|x64.Build.0 = Release.DLL|x64
- {F532AFBC-9E62-4A89-BB99-1044E4B2D8ED}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
- {F532AFBC-9E62-4A89-BB99-1044E4B2D8ED}.Release.DLL|x86.Build.0 = Release.DLL|Win32
- {F532AFBC-9E62-4A89-BB99-1044E4B2D8ED}.Release|ARM64.ActiveCfg = Release|ARM64
- {F532AFBC-9E62-4A89-BB99-1044E4B2D8ED}.Release|ARM64.Build.0 = Release|ARM64
- {F532AFBC-9E62-4A89-BB99-1044E4B2D8ED}.Release|x64.ActiveCfg = Release|x64
- {F532AFBC-9E62-4A89-BB99-1044E4B2D8ED}.Release|x64.Build.0 = Release|x64
- {F532AFBC-9E62-4A89-BB99-1044E4B2D8ED}.Release|x86.ActiveCfg = Release|Win32
- {F532AFBC-9E62-4A89-BB99-1044E4B2D8ED}.Release|x86.Build.0 = Release|Win32
- {52FB7463-C128-42AF-A02F-78F48473EA9A}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
- {52FB7463-C128-42AF-A02F-78F48473EA9A}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
- {52FB7463-C128-42AF-A02F-78F48473EA9A}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
- {52FB7463-C128-42AF-A02F-78F48473EA9A}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
- {52FB7463-C128-42AF-A02F-78F48473EA9A}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
- {52FB7463-C128-42AF-A02F-78F48473EA9A}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
- {52FB7463-C128-42AF-A02F-78F48473EA9A}.Debug|ARM64.ActiveCfg = Debug|ARM64
- {52FB7463-C128-42AF-A02F-78F48473EA9A}.Debug|ARM64.Build.0 = Debug|ARM64
- {52FB7463-C128-42AF-A02F-78F48473EA9A}.Debug|x64.ActiveCfg = Debug|x64
- {52FB7463-C128-42AF-A02F-78F48473EA9A}.Debug|x64.Build.0 = Debug|x64
- {52FB7463-C128-42AF-A02F-78F48473EA9A}.Debug|x86.ActiveCfg = Debug|Win32
- {52FB7463-C128-42AF-A02F-78F48473EA9A}.Debug|x86.Build.0 = Debug|Win32
- {52FB7463-C128-42AF-A02F-78F48473EA9A}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
- {52FB7463-C128-42AF-A02F-78F48473EA9A}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
- {52FB7463-C128-42AF-A02F-78F48473EA9A}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
- {52FB7463-C128-42AF-A02F-78F48473EA9A}.Release.DLL|x64.Build.0 = Release.DLL|x64
- {52FB7463-C128-42AF-A02F-78F48473EA9A}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
- {52FB7463-C128-42AF-A02F-78F48473EA9A}.Release.DLL|x86.Build.0 = Release.DLL|Win32
- {52FB7463-C128-42AF-A02F-78F48473EA9A}.Release|ARM64.ActiveCfg = Release|ARM64
- {52FB7463-C128-42AF-A02F-78F48473EA9A}.Release|ARM64.Build.0 = Release|ARM64
- {52FB7463-C128-42AF-A02F-78F48473EA9A}.Release|x64.ActiveCfg = Release|x64
- {52FB7463-C128-42AF-A02F-78F48473EA9A}.Release|x64.Build.0 = Release|x64
- {52FB7463-C128-42AF-A02F-78F48473EA9A}.Release|x86.ActiveCfg = Release|Win32
- {52FB7463-C128-42AF-A02F-78F48473EA9A}.Release|x86.Build.0 = Release|Win32
- {7381D91E-5C72-48F0-AAB4-95C9B10D7484}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
- {7381D91E-5C72-48F0-AAB4-95C9B10D7484}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
- {7381D91E-5C72-48F0-AAB4-95C9B10D7484}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
- {7381D91E-5C72-48F0-AAB4-95C9B10D7484}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
- {7381D91E-5C72-48F0-AAB4-95C9B10D7484}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
- {7381D91E-5C72-48F0-AAB4-95C9B10D7484}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
- {7381D91E-5C72-48F0-AAB4-95C9B10D7484}.Debug|ARM64.ActiveCfg = Debug|ARM64
- {7381D91E-5C72-48F0-AAB4-95C9B10D7484}.Debug|ARM64.Build.0 = Debug|ARM64
- {7381D91E-5C72-48F0-AAB4-95C9B10D7484}.Debug|x64.ActiveCfg = Debug|x64
- {7381D91E-5C72-48F0-AAB4-95C9B10D7484}.Debug|x64.Build.0 = Debug|x64
- {7381D91E-5C72-48F0-AAB4-95C9B10D7484}.Debug|x86.ActiveCfg = Debug|Win32
- {7381D91E-5C72-48F0-AAB4-95C9B10D7484}.Debug|x86.Build.0 = Debug|Win32
- {7381D91E-5C72-48F0-AAB4-95C9B10D7484}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
- {7381D91E-5C72-48F0-AAB4-95C9B10D7484}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
- {7381D91E-5C72-48F0-AAB4-95C9B10D7484}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
- {7381D91E-5C72-48F0-AAB4-95C9B10D7484}.Release.DLL|x64.Build.0 = Release.DLL|x64
- {7381D91E-5C72-48F0-AAB4-95C9B10D7484}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
- {7381D91E-5C72-48F0-AAB4-95C9B10D7484}.Release.DLL|x86.Build.0 = Release.DLL|Win32
- {7381D91E-5C72-48F0-AAB4-95C9B10D7484}.Release|ARM64.ActiveCfg = Release|ARM64
- {7381D91E-5C72-48F0-AAB4-95C9B10D7484}.Release|ARM64.Build.0 = Release|ARM64
- {7381D91E-5C72-48F0-AAB4-95C9B10D7484}.Release|x64.ActiveCfg = Release|x64
- {7381D91E-5C72-48F0-AAB4-95C9B10D7484}.Release|x64.Build.0 = Release|x64
- {7381D91E-5C72-48F0-AAB4-95C9B10D7484}.Release|x86.ActiveCfg = Release|Win32
- {7381D91E-5C72-48F0-AAB4-95C9B10D7484}.Release|x86.Build.0 = Release|Win32
- {D36EC43E-B31F-4CF4-8285-93A7A9D90189}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
- {D36EC43E-B31F-4CF4-8285-93A7A9D90189}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
- {D36EC43E-B31F-4CF4-8285-93A7A9D90189}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
- {D36EC43E-B31F-4CF4-8285-93A7A9D90189}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
- {D36EC43E-B31F-4CF4-8285-93A7A9D90189}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
- {D36EC43E-B31F-4CF4-8285-93A7A9D90189}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
- {D36EC43E-B31F-4CF4-8285-93A7A9D90189}.Debug|ARM64.ActiveCfg = Debug|ARM64
- {D36EC43E-B31F-4CF4-8285-93A7A9D90189}.Debug|ARM64.Build.0 = Debug|ARM64
- {D36EC43E-B31F-4CF4-8285-93A7A9D90189}.Debug|x64.ActiveCfg = Debug|x64
- {D36EC43E-B31F-4CF4-8285-93A7A9D90189}.Debug|x64.Build.0 = Debug|x64
- {D36EC43E-B31F-4CF4-8285-93A7A9D90189}.Debug|x86.ActiveCfg = Debug|Win32
- {D36EC43E-B31F-4CF4-8285-93A7A9D90189}.Debug|x86.Build.0 = Debug|Win32
- {D36EC43E-B31F-4CF4-8285-93A7A9D90189}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
- {D36EC43E-B31F-4CF4-8285-93A7A9D90189}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
- {D36EC43E-B31F-4CF4-8285-93A7A9D90189}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
- {D36EC43E-B31F-4CF4-8285-93A7A9D90189}.Release.DLL|x64.Build.0 = Release.DLL|x64
- {D36EC43E-B31F-4CF4-8285-93A7A9D90189}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
- {D36EC43E-B31F-4CF4-8285-93A7A9D90189}.Release.DLL|x86.Build.0 = Release.DLL|Win32
- {D36EC43E-B31F-4CF4-8285-93A7A9D90189}.Release|ARM64.ActiveCfg = Release|ARM64
- {D36EC43E-B31F-4CF4-8285-93A7A9D90189}.Release|ARM64.Build.0 = Release|ARM64
- {D36EC43E-B31F-4CF4-8285-93A7A9D90189}.Release|x64.ActiveCfg = Release|x64
- {D36EC43E-B31F-4CF4-8285-93A7A9D90189}.Release|x64.Build.0 = Release|x64
- {D36EC43E-B31F-4CF4-8285-93A7A9D90189}.Release|x86.ActiveCfg = Release|Win32
- {D36EC43E-B31F-4CF4-8285-93A7A9D90189}.Release|x86.Build.0 = Release|Win32
- {274C0319-7E1E-4188-936B-8DF3331230B3}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
- {274C0319-7E1E-4188-936B-8DF3331230B3}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
- {274C0319-7E1E-4188-936B-8DF3331230B3}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
- {274C0319-7E1E-4188-936B-8DF3331230B3}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
- {274C0319-7E1E-4188-936B-8DF3331230B3}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
- {274C0319-7E1E-4188-936B-8DF3331230B3}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
- {274C0319-7E1E-4188-936B-8DF3331230B3}.Debug|ARM64.ActiveCfg = Debug|ARM64
- {274C0319-7E1E-4188-936B-8DF3331230B3}.Debug|ARM64.Build.0 = Debug|ARM64
- {274C0319-7E1E-4188-936B-8DF3331230B3}.Debug|x64.ActiveCfg = Debug|x64
- {274C0319-7E1E-4188-936B-8DF3331230B3}.Debug|x64.Build.0 = Debug|x64
- {274C0319-7E1E-4188-936B-8DF3331230B3}.Debug|x86.ActiveCfg = Debug|Win32
- {274C0319-7E1E-4188-936B-8DF3331230B3}.Debug|x86.Build.0 = Debug|Win32
- {274C0319-7E1E-4188-936B-8DF3331230B3}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
- {274C0319-7E1E-4188-936B-8DF3331230B3}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
- {274C0319-7E1E-4188-936B-8DF3331230B3}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
- {274C0319-7E1E-4188-936B-8DF3331230B3}.Release.DLL|x64.Build.0 = Release.DLL|x64
- {274C0319-7E1E-4188-936B-8DF3331230B3}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
- {274C0319-7E1E-4188-936B-8DF3331230B3}.Release.DLL|x86.Build.0 = Release.DLL|Win32
- {274C0319-7E1E-4188-936B-8DF3331230B3}.Release|ARM64.ActiveCfg = Release|ARM64
- {274C0319-7E1E-4188-936B-8DF3331230B3}.Release|ARM64.Build.0 = Release|ARM64
- {274C0319-7E1E-4188-936B-8DF3331230B3}.Release|x64.ActiveCfg = Release|x64
- {274C0319-7E1E-4188-936B-8DF3331230B3}.Release|x64.Build.0 = Release|x64
- {274C0319-7E1E-4188-936B-8DF3331230B3}.Release|x86.ActiveCfg = Release|Win32
- {274C0319-7E1E-4188-936B-8DF3331230B3}.Release|x86.Build.0 = Release|Win32
- {41BBCC10-CFDE-48A1-B2E0-A0EC6A668629}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
- {41BBCC10-CFDE-48A1-B2E0-A0EC6A668629}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
- {41BBCC10-CFDE-48A1-B2E0-A0EC6A668629}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
- {41BBCC10-CFDE-48A1-B2E0-A0EC6A668629}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
- {41BBCC10-CFDE-48A1-B2E0-A0EC6A668629}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
- {41BBCC10-CFDE-48A1-B2E0-A0EC6A668629}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
- {41BBCC10-CFDE-48A1-B2E0-A0EC6A668629}.Debug|ARM64.ActiveCfg = Debug|ARM64
- {41BBCC10-CFDE-48A1-B2E0-A0EC6A668629}.Debug|ARM64.Build.0 = Debug|ARM64
- {41BBCC10-CFDE-48A1-B2E0-A0EC6A668629}.Debug|x64.ActiveCfg = Debug|x64
- {41BBCC10-CFDE-48A1-B2E0-A0EC6A668629}.Debug|x64.Build.0 = Debug|x64
- {41BBCC10-CFDE-48A1-B2E0-A0EC6A668629}.Debug|x86.ActiveCfg = Debug|Win32
- {41BBCC10-CFDE-48A1-B2E0-A0EC6A668629}.Debug|x86.Build.0 = Debug|Win32
- {41BBCC10-CFDE-48A1-B2E0-A0EC6A668629}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
- {41BBCC10-CFDE-48A1-B2E0-A0EC6A668629}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
- {41BBCC10-CFDE-48A1-B2E0-A0EC6A668629}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
- {41BBCC10-CFDE-48A1-B2E0-A0EC6A668629}.Release.DLL|x64.Build.0 = Release.DLL|x64
- {41BBCC10-CFDE-48A1-B2E0-A0EC6A668629}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
- {41BBCC10-CFDE-48A1-B2E0-A0EC6A668629}.Release.DLL|x86.Build.0 = Release.DLL|Win32
- {41BBCC10-CFDE-48A1-B2E0-A0EC6A668629}.Release|ARM64.ActiveCfg = Release|ARM64
- {41BBCC10-CFDE-48A1-B2E0-A0EC6A668629}.Release|ARM64.Build.0 = Release|ARM64
- {41BBCC10-CFDE-48A1-B2E0-A0EC6A668629}.Release|x64.ActiveCfg = Release|x64
- {41BBCC10-CFDE-48A1-B2E0-A0EC6A668629}.Release|x64.Build.0 = Release|x64
- {41BBCC10-CFDE-48A1-B2E0-A0EC6A668629}.Release|x86.ActiveCfg = Release|Win32
- {41BBCC10-CFDE-48A1-B2E0-A0EC6A668629}.Release|x86.Build.0 = Release|Win32
- {600C3D4F-0670-4DB4-B30F-520A729053B5}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
- {600C3D4F-0670-4DB4-B30F-520A729053B5}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
- {600C3D4F-0670-4DB4-B30F-520A729053B5}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
- {600C3D4F-0670-4DB4-B30F-520A729053B5}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
- {600C3D4F-0670-4DB4-B30F-520A729053B5}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
- {600C3D4F-0670-4DB4-B30F-520A729053B5}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
- {600C3D4F-0670-4DB4-B30F-520A729053B5}.Debug|ARM64.ActiveCfg = Debug|ARM64
- {600C3D4F-0670-4DB4-B30F-520A729053B5}.Debug|ARM64.Build.0 = Debug|ARM64
- {600C3D4F-0670-4DB4-B30F-520A729053B5}.Debug|x64.ActiveCfg = Debug|x64
- {600C3D4F-0670-4DB4-B30F-520A729053B5}.Debug|x64.Build.0 = Debug|x64
- {600C3D4F-0670-4DB4-B30F-520A729053B5}.Debug|x86.ActiveCfg = Debug|Win32
- {600C3D4F-0670-4DB4-B30F-520A729053B5}.Debug|x86.Build.0 = Debug|Win32
- {600C3D4F-0670-4DB4-B30F-520A729053B5}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
- {600C3D4F-0670-4DB4-B30F-520A729053B5}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
- {600C3D4F-0670-4DB4-B30F-520A729053B5}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
- {600C3D4F-0670-4DB4-B30F-520A729053B5}.Release.DLL|x64.Build.0 = Release.DLL|x64
- {600C3D4F-0670-4DB4-B30F-520A729053B5}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
- {600C3D4F-0670-4DB4-B30F-520A729053B5}.Release.DLL|x86.Build.0 = Release.DLL|Win32
- {600C3D4F-0670-4DB4-B30F-520A729053B5}.Release|ARM64.ActiveCfg = Release|ARM64
- {600C3D4F-0670-4DB4-B30F-520A729053B5}.Release|ARM64.Build.0 = Release|ARM64
- {600C3D4F-0670-4DB4-B30F-520A729053B5}.Release|x64.ActiveCfg = Release|x64
- {600C3D4F-0670-4DB4-B30F-520A729053B5}.Release|x64.Build.0 = Release|x64
- {600C3D4F-0670-4DB4-B30F-520A729053B5}.Release|x86.ActiveCfg = Release|Win32
- {600C3D4F-0670-4DB4-B30F-520A729053B5}.Release|x86.Build.0 = Release|Win32
- {11F33A39-74B7-4018-B5F9-CC285A673A8F}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
- {11F33A39-74B7-4018-B5F9-CC285A673A8F}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
- {11F33A39-74B7-4018-B5F9-CC285A673A8F}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
- {11F33A39-74B7-4018-B5F9-CC285A673A8F}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
- {11F33A39-74B7-4018-B5F9-CC285A673A8F}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
- {11F33A39-74B7-4018-B5F9-CC285A673A8F}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
- {11F33A39-74B7-4018-B5F9-CC285A673A8F}.Debug|ARM64.ActiveCfg = Debug|ARM64
- {11F33A39-74B7-4018-B5F9-CC285A673A8F}.Debug|ARM64.Build.0 = Debug|ARM64
- {11F33A39-74B7-4018-B5F9-CC285A673A8F}.Debug|x64.ActiveCfg = Debug|x64
- {11F33A39-74B7-4018-B5F9-CC285A673A8F}.Debug|x64.Build.0 = Debug|x64
- {11F33A39-74B7-4018-B5F9-CC285A673A8F}.Debug|x86.ActiveCfg = Debug|Win32
- {11F33A39-74B7-4018-B5F9-CC285A673A8F}.Debug|x86.Build.0 = Debug|Win32
- {11F33A39-74B7-4018-B5F9-CC285A673A8F}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
- {11F33A39-74B7-4018-B5F9-CC285A673A8F}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
- {11F33A39-74B7-4018-B5F9-CC285A673A8F}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
- {11F33A39-74B7-4018-B5F9-CC285A673A8F}.Release.DLL|x64.Build.0 = Release.DLL|x64
- {11F33A39-74B7-4018-B5F9-CC285A673A8F}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
- {11F33A39-74B7-4018-B5F9-CC285A673A8F}.Release.DLL|x86.Build.0 = Release.DLL|Win32
- {11F33A39-74B7-4018-B5F9-CC285A673A8F}.Release|ARM64.ActiveCfg = Release|ARM64
- {11F33A39-74B7-4018-B5F9-CC285A673A8F}.Release|ARM64.Build.0 = Release|ARM64
- {11F33A39-74B7-4018-B5F9-CC285A673A8F}.Release|x64.ActiveCfg = Release|x64
- {11F33A39-74B7-4018-B5F9-CC285A673A8F}.Release|x64.Build.0 = Release|x64
- {11F33A39-74B7-4018-B5F9-CC285A673A8F}.Release|x86.ActiveCfg = Release|Win32
- {11F33A39-74B7-4018-B5F9-CC285A673A8F}.Release|x86.Build.0 = Release|Win32
- {A6F5E35E-B4A7-41B3-853A-75558E6E0715}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
- {A6F5E35E-B4A7-41B3-853A-75558E6E0715}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
- {A6F5E35E-B4A7-41B3-853A-75558E6E0715}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
- {A6F5E35E-B4A7-41B3-853A-75558E6E0715}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
- {A6F5E35E-B4A7-41B3-853A-75558E6E0715}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
- {A6F5E35E-B4A7-41B3-853A-75558E6E0715}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
- {A6F5E35E-B4A7-41B3-853A-75558E6E0715}.Debug|ARM64.ActiveCfg = Debug|ARM64
- {A6F5E35E-B4A7-41B3-853A-75558E6E0715}.Debug|ARM64.Build.0 = Debug|ARM64
- {A6F5E35E-B4A7-41B3-853A-75558E6E0715}.Debug|x64.ActiveCfg = Debug|x64
- {A6F5E35E-B4A7-41B3-853A-75558E6E0715}.Debug|x64.Build.0 = Debug|x64
- {A6F5E35E-B4A7-41B3-853A-75558E6E0715}.Debug|x86.ActiveCfg = Debug|Win32
- {A6F5E35E-B4A7-41B3-853A-75558E6E0715}.Debug|x86.Build.0 = Debug|Win32
- {A6F5E35E-B4A7-41B3-853A-75558E6E0715}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
- {A6F5E35E-B4A7-41B3-853A-75558E6E0715}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
- {A6F5E35E-B4A7-41B3-853A-75558E6E0715}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
- {A6F5E35E-B4A7-41B3-853A-75558E6E0715}.Release.DLL|x64.Build.0 = Release.DLL|x64
- {A6F5E35E-B4A7-41B3-853A-75558E6E0715}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
- {A6F5E35E-B4A7-41B3-853A-75558E6E0715}.Release.DLL|x86.Build.0 = Release.DLL|Win32
- {A6F5E35E-B4A7-41B3-853A-75558E6E0715}.Release|ARM64.ActiveCfg = Release|ARM64
- {A6F5E35E-B4A7-41B3-853A-75558E6E0715}.Release|ARM64.Build.0 = Release|ARM64
- {A6F5E35E-B4A7-41B3-853A-75558E6E0715}.Release|x64.ActiveCfg = Release|x64
- {A6F5E35E-B4A7-41B3-853A-75558E6E0715}.Release|x64.Build.0 = Release|x64
- {A6F5E35E-B4A7-41B3-853A-75558E6E0715}.Release|x86.ActiveCfg = Release|Win32
- {A6F5E35E-B4A7-41B3-853A-75558E6E0715}.Release|x86.Build.0 = Release|Win32
- {291B4975-8EFF-4C7C-8AF3-44A77B8491B8}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
- {291B4975-8EFF-4C7C-8AF3-44A77B8491B8}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
- {291B4975-8EFF-4C7C-8AF3-44A77B8491B8}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
- {291B4975-8EFF-4C7C-8AF3-44A77B8491B8}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
- {291B4975-8EFF-4C7C-8AF3-44A77B8491B8}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
- {291B4975-8EFF-4C7C-8AF3-44A77B8491B8}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
- {291B4975-8EFF-4C7C-8AF3-44A77B8491B8}.Debug|ARM64.ActiveCfg = Debug|ARM64
- {291B4975-8EFF-4C7C-8AF3-44A77B8491B8}.Debug|ARM64.Build.0 = Debug|ARM64
- {291B4975-8EFF-4C7C-8AF3-44A77B8491B8}.Debug|x64.ActiveCfg = Debug|x64
- {291B4975-8EFF-4C7C-8AF3-44A77B8491B8}.Debug|x64.Build.0 = Debug|x64
- {291B4975-8EFF-4C7C-8AF3-44A77B8491B8}.Debug|x86.ActiveCfg = Debug|Win32
- {291B4975-8EFF-4C7C-8AF3-44A77B8491B8}.Debug|x86.Build.0 = Debug|Win32
- {291B4975-8EFF-4C7C-8AF3-44A77B8491B8}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
- {291B4975-8EFF-4C7C-8AF3-44A77B8491B8}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
- {291B4975-8EFF-4C7C-8AF3-44A77B8491B8}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
- {291B4975-8EFF-4C7C-8AF3-44A77B8491B8}.Release.DLL|x64.Build.0 = Release.DLL|x64
- {291B4975-8EFF-4C7C-8AF3-44A77B8491B8}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
- {291B4975-8EFF-4C7C-8AF3-44A77B8491B8}.Release.DLL|x86.Build.0 = Release.DLL|Win32
- {291B4975-8EFF-4C7C-8AF3-44A77B8491B8}.Release|ARM64.ActiveCfg = Release|ARM64
- {291B4975-8EFF-4C7C-8AF3-44A77B8491B8}.Release|ARM64.Build.0 = Release|ARM64
- {291B4975-8EFF-4C7C-8AF3-44A77B8491B8}.Release|x64.ActiveCfg = Release|x64
- {291B4975-8EFF-4C7C-8AF3-44A77B8491B8}.Release|x64.Build.0 = Release|x64
- {291B4975-8EFF-4C7C-8AF3-44A77B8491B8}.Release|x86.ActiveCfg = Release|Win32
- {291B4975-8EFF-4C7C-8AF3-44A77B8491B8}.Release|x86.Build.0 = Release|Win32
- {FDE6080B-E203-4066-910D-AD0302566008}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
- {FDE6080B-E203-4066-910D-AD0302566008}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
- {FDE6080B-E203-4066-910D-AD0302566008}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
- {FDE6080B-E203-4066-910D-AD0302566008}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
- {FDE6080B-E203-4066-910D-AD0302566008}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
- {FDE6080B-E203-4066-910D-AD0302566008}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
- {FDE6080B-E203-4066-910D-AD0302566008}.Debug|ARM64.ActiveCfg = Debug|ARM64
- {FDE6080B-E203-4066-910D-AD0302566008}.Debug|ARM64.Build.0 = Debug|ARM64
- {FDE6080B-E203-4066-910D-AD0302566008}.Debug|x64.ActiveCfg = Debug|x64
- {FDE6080B-E203-4066-910D-AD0302566008}.Debug|x64.Build.0 = Debug|x64
- {FDE6080B-E203-4066-910D-AD0302566008}.Debug|x86.ActiveCfg = Debug|Win32
- {FDE6080B-E203-4066-910D-AD0302566008}.Debug|x86.Build.0 = Debug|Win32
- {FDE6080B-E203-4066-910D-AD0302566008}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
- {FDE6080B-E203-4066-910D-AD0302566008}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
- {FDE6080B-E203-4066-910D-AD0302566008}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
- {FDE6080B-E203-4066-910D-AD0302566008}.Release.DLL|x64.Build.0 = Release.DLL|x64
- {FDE6080B-E203-4066-910D-AD0302566008}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
- {FDE6080B-E203-4066-910D-AD0302566008}.Release.DLL|x86.Build.0 = Release.DLL|Win32
- {FDE6080B-E203-4066-910D-AD0302566008}.Release|ARM64.ActiveCfg = Release|ARM64
- {FDE6080B-E203-4066-910D-AD0302566008}.Release|ARM64.Build.0 = Release|ARM64
- {FDE6080B-E203-4066-910D-AD0302566008}.Release|x64.ActiveCfg = Release|x64
- {FDE6080B-E203-4066-910D-AD0302566008}.Release|x64.Build.0 = Release|x64
- {FDE6080B-E203-4066-910D-AD0302566008}.Release|x86.ActiveCfg = Release|Win32
- {FDE6080B-E203-4066-910D-AD0302566008}.Release|x86.Build.0 = Release|Win32
- {E1B6D565-9D7C-46B7-9202-ECF54974DE50}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
- {E1B6D565-9D7C-46B7-9202-ECF54974DE50}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
- {E1B6D565-9D7C-46B7-9202-ECF54974DE50}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
- {E1B6D565-9D7C-46B7-9202-ECF54974DE50}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
- {E1B6D565-9D7C-46B7-9202-ECF54974DE50}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
- {E1B6D565-9D7C-46B7-9202-ECF54974DE50}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
- {E1B6D565-9D7C-46B7-9202-ECF54974DE50}.Debug|ARM64.ActiveCfg = Debug|ARM64
- {E1B6D565-9D7C-46B7-9202-ECF54974DE50}.Debug|ARM64.Build.0 = Debug|ARM64
- {E1B6D565-9D7C-46B7-9202-ECF54974DE50}.Debug|x64.ActiveCfg = Debug|x64
- {E1B6D565-9D7C-46B7-9202-ECF54974DE50}.Debug|x64.Build.0 = Debug|x64
- {E1B6D565-9D7C-46B7-9202-ECF54974DE50}.Debug|x86.ActiveCfg = Debug|Win32
- {E1B6D565-9D7C-46B7-9202-ECF54974DE50}.Debug|x86.Build.0 = Debug|Win32
- {E1B6D565-9D7C-46B7-9202-ECF54974DE50}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
- {E1B6D565-9D7C-46B7-9202-ECF54974DE50}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
- {E1B6D565-9D7C-46B7-9202-ECF54974DE50}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
- {E1B6D565-9D7C-46B7-9202-ECF54974DE50}.Release.DLL|x64.Build.0 = Release.DLL|x64
- {E1B6D565-9D7C-46B7-9202-ECF54974DE50}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
- {E1B6D565-9D7C-46B7-9202-ECF54974DE50}.Release.DLL|x86.Build.0 = Release.DLL|Win32
- {E1B6D565-9D7C-46B7-9202-ECF54974DE50}.Release|ARM64.ActiveCfg = Release|ARM64
- {E1B6D565-9D7C-46B7-9202-ECF54974DE50}.Release|ARM64.Build.0 = Release|ARM64
- {E1B6D565-9D7C-46B7-9202-ECF54974DE50}.Release|x64.ActiveCfg = Release|x64
- {E1B6D565-9D7C-46B7-9202-ECF54974DE50}.Release|x64.Build.0 = Release|x64
- {E1B6D565-9D7C-46B7-9202-ECF54974DE50}.Release|x86.ActiveCfg = Release|Win32
- {E1B6D565-9D7C-46B7-9202-ECF54974DE50}.Release|x86.Build.0 = Release|Win32
- {C8765523-58F8-4C8E-9914-693396F6F0FF}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
- {C8765523-58F8-4C8E-9914-693396F6F0FF}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
- {C8765523-58F8-4C8E-9914-693396F6F0FF}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
- {C8765523-58F8-4C8E-9914-693396F6F0FF}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
- {C8765523-58F8-4C8E-9914-693396F6F0FF}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
- {C8765523-58F8-4C8E-9914-693396F6F0FF}.Debug|ARM64.ActiveCfg = Debug|ARM64
- {C8765523-58F8-4C8E-9914-693396F6F0FF}.Debug|ARM64.Build.0 = Debug|ARM64
- {C8765523-58F8-4C8E-9914-693396F6F0FF}.Debug|x64.ActiveCfg = Debug|x64
- {C8765523-58F8-4C8E-9914-693396F6F0FF}.Debug|x64.Build.0 = Debug|x64
- {C8765523-58F8-4C8E-9914-693396F6F0FF}.Debug|x86.ActiveCfg = Debug|Win32
- {C8765523-58F8-4C8E-9914-693396F6F0FF}.Debug|x86.Build.0 = Debug|Win32
- {C8765523-58F8-4C8E-9914-693396F6F0FF}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
- {C8765523-58F8-4C8E-9914-693396F6F0FF}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
- {C8765523-58F8-4C8E-9914-693396F6F0FF}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
- {C8765523-58F8-4C8E-9914-693396F6F0FF}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
- {C8765523-58F8-4C8E-9914-693396F6F0FF}.Release.DLL|x86.Build.0 = Release.DLL|Win32
- {C8765523-58F8-4C8E-9914-693396F6F0FF}.Release|ARM64.ActiveCfg = Release|ARM64
- {C8765523-58F8-4C8E-9914-693396F6F0FF}.Release|ARM64.Build.0 = Release|ARM64
- {C8765523-58F8-4C8E-9914-693396F6F0FF}.Release|x64.ActiveCfg = Release|x64
- {C8765523-58F8-4C8E-9914-693396F6F0FF}.Release|x64.Build.0 = Release|x64
- {C8765523-58F8-4C8E-9914-693396F6F0FF}.Release|x86.ActiveCfg = Release|Win32
- {C8765523-58F8-4C8E-9914-693396F6F0FF}.Release|x86.Build.0 = Release|Win32
- {2F1B955B-275E-4D8E-8864-06FEC44D7912}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
- {2F1B955B-275E-4D8E-8864-06FEC44D7912}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
- {2F1B955B-275E-4D8E-8864-06FEC44D7912}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
- {2F1B955B-275E-4D8E-8864-06FEC44D7912}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
- {2F1B955B-275E-4D8E-8864-06FEC44D7912}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
- {2F1B955B-275E-4D8E-8864-06FEC44D7912}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
- {2F1B955B-275E-4D8E-8864-06FEC44D7912}.Debug|ARM64.ActiveCfg = Debug|ARM64
- {2F1B955B-275E-4D8E-8864-06FEC44D7912}.Debug|ARM64.Build.0 = Debug|ARM64
- {2F1B955B-275E-4D8E-8864-06FEC44D7912}.Debug|x64.ActiveCfg = Debug|x64
- {2F1B955B-275E-4D8E-8864-06FEC44D7912}.Debug|x64.Build.0 = Debug|x64
- {2F1B955B-275E-4D8E-8864-06FEC44D7912}.Debug|x86.ActiveCfg = Debug|Win32
- {2F1B955B-275E-4D8E-8864-06FEC44D7912}.Debug|x86.Build.0 = Debug|Win32
- {2F1B955B-275E-4D8E-8864-06FEC44D7912}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
- {2F1B955B-275E-4D8E-8864-06FEC44D7912}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
- {2F1B955B-275E-4D8E-8864-06FEC44D7912}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
- {2F1B955B-275E-4D8E-8864-06FEC44D7912}.Release.DLL|x64.Build.0 = Release.DLL|x64
- {2F1B955B-275E-4D8E-8864-06FEC44D7912}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
- {2F1B955B-275E-4D8E-8864-06FEC44D7912}.Release.DLL|x86.Build.0 = Release.DLL|Win32
- {2F1B955B-275E-4D8E-8864-06FEC44D7912}.Release|ARM64.ActiveCfg = Release|ARM64
- {2F1B955B-275E-4D8E-8864-06FEC44D7912}.Release|ARM64.Build.0 = Release|ARM64
- {2F1B955B-275E-4D8E-8864-06FEC44D7912}.Release|x64.ActiveCfg = Release|x64
- {2F1B955B-275E-4D8E-8864-06FEC44D7912}.Release|x64.Build.0 = Release|x64
- {2F1B955B-275E-4D8E-8864-06FEC44D7912}.Release|x86.ActiveCfg = Release|Win32
- {2F1B955B-275E-4D8E-8864-06FEC44D7912}.Release|x86.Build.0 = Release|Win32
- {F5FC9279-DE63-4EF3-B31F-CFCEF9B11F71}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
- {F5FC9279-DE63-4EF3-B31F-CFCEF9B11F71}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
- {F5FC9279-DE63-4EF3-B31F-CFCEF9B11F71}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
- {F5FC9279-DE63-4EF3-B31F-CFCEF9B11F71}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
- {F5FC9279-DE63-4EF3-B31F-CFCEF9B11F71}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
- {F5FC9279-DE63-4EF3-B31F-CFCEF9B11F71}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
- {F5FC9279-DE63-4EF3-B31F-CFCEF9B11F71}.Debug|ARM64.ActiveCfg = Debug|ARM64
- {F5FC9279-DE63-4EF3-B31F-CFCEF9B11F71}.Debug|ARM64.Build.0 = Debug|ARM64
- {F5FC9279-DE63-4EF3-B31F-CFCEF9B11F71}.Debug|x64.ActiveCfg = Debug|x64
- {F5FC9279-DE63-4EF3-B31F-CFCEF9B11F71}.Debug|x64.Build.0 = Debug|x64
- {F5FC9279-DE63-4EF3-B31F-CFCEF9B11F71}.Debug|x86.ActiveCfg = Debug|Win32
- {F5FC9279-DE63-4EF3-B31F-CFCEF9B11F71}.Debug|x86.Build.0 = Debug|Win32
- {F5FC9279-DE63-4EF3-B31F-CFCEF9B11F71}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
- {F5FC9279-DE63-4EF3-B31F-CFCEF9B11F71}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
- {F5FC9279-DE63-4EF3-B31F-CFCEF9B11F71}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
- {F5FC9279-DE63-4EF3-B31F-CFCEF9B11F71}.Release.DLL|x64.Build.0 = Release.DLL|x64
- {F5FC9279-DE63-4EF3-B31F-CFCEF9B11F71}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
- {F5FC9279-DE63-4EF3-B31F-CFCEF9B11F71}.Release.DLL|x86.Build.0 = Release.DLL|Win32
- {F5FC9279-DE63-4EF3-B31F-CFCEF9B11F71}.Release|ARM64.ActiveCfg = Release|ARM64
- {F5FC9279-DE63-4EF3-B31F-CFCEF9B11F71}.Release|ARM64.Build.0 = Release|ARM64
- {F5FC9279-DE63-4EF3-B31F-CFCEF9B11F71}.Release|x64.ActiveCfg = Release|x64
- {F5FC9279-DE63-4EF3-B31F-CFCEF9B11F71}.Release|x64.Build.0 = Release|x64
- {F5FC9279-DE63-4EF3-B31F-CFCEF9B11F71}.Release|x86.ActiveCfg = Release|Win32
- {F5FC9279-DE63-4EF3-B31F-CFCEF9B11F71}.Release|x86.Build.0 = Release|Win32
- {F2DB2E59-76BF-4D81-859A-AFC289C046C0}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
- {F2DB2E59-76BF-4D81-859A-AFC289C046C0}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
- {F2DB2E59-76BF-4D81-859A-AFC289C046C0}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
- {F2DB2E59-76BF-4D81-859A-AFC289C046C0}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
- {F2DB2E59-76BF-4D81-859A-AFC289C046C0}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
- {F2DB2E59-76BF-4D81-859A-AFC289C046C0}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
- {F2DB2E59-76BF-4D81-859A-AFC289C046C0}.Debug|ARM64.ActiveCfg = Debug|ARM64
- {F2DB2E59-76BF-4D81-859A-AFC289C046C0}.Debug|ARM64.Build.0 = Debug|ARM64
- {F2DB2E59-76BF-4D81-859A-AFC289C046C0}.Debug|x64.ActiveCfg = Debug|x64
- {F2DB2E59-76BF-4D81-859A-AFC289C046C0}.Debug|x64.Build.0 = Debug|x64
- {F2DB2E59-76BF-4D81-859A-AFC289C046C0}.Debug|x86.ActiveCfg = Debug|Win32
- {F2DB2E59-76BF-4D81-859A-AFC289C046C0}.Debug|x86.Build.0 = Debug|Win32
- {F2DB2E59-76BF-4D81-859A-AFC289C046C0}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
- {F2DB2E59-76BF-4D81-859A-AFC289C046C0}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
- {F2DB2E59-76BF-4D81-859A-AFC289C046C0}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
- {F2DB2E59-76BF-4D81-859A-AFC289C046C0}.Release.DLL|x64.Build.0 = Release.DLL|x64
- {F2DB2E59-76BF-4D81-859A-AFC289C046C0}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
- {F2DB2E59-76BF-4D81-859A-AFC289C046C0}.Release.DLL|x86.Build.0 = Release.DLL|Win32
- {F2DB2E59-76BF-4D81-859A-AFC289C046C0}.Release|ARM64.ActiveCfg = Release|ARM64
- {F2DB2E59-76BF-4D81-859A-AFC289C046C0}.Release|ARM64.Build.0 = Release|ARM64
- {F2DB2E59-76BF-4D81-859A-AFC289C046C0}.Release|x64.ActiveCfg = Release|x64
- {F2DB2E59-76BF-4D81-859A-AFC289C046C0}.Release|x64.Build.0 = Release|x64
- {F2DB2E59-76BF-4D81-859A-AFC289C046C0}.Release|x86.ActiveCfg = Release|Win32
- {F2DB2E59-76BF-4D81-859A-AFC289C046C0}.Release|x86.Build.0 = Release|Win32
- {3FE7E9B6-49AC-4246-A789-28DB4644567B}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
- {3FE7E9B6-49AC-4246-A789-28DB4644567B}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
- {3FE7E9B6-49AC-4246-A789-28DB4644567B}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
- {3FE7E9B6-49AC-4246-A789-28DB4644567B}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
- {3FE7E9B6-49AC-4246-A789-28DB4644567B}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
- {3FE7E9B6-49AC-4246-A789-28DB4644567B}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
- {3FE7E9B6-49AC-4246-A789-28DB4644567B}.Debug|ARM64.ActiveCfg = Debug|ARM64
- {3FE7E9B6-49AC-4246-A789-28DB4644567B}.Debug|ARM64.Build.0 = Debug|ARM64
- {3FE7E9B6-49AC-4246-A789-28DB4644567B}.Debug|x64.ActiveCfg = Debug|x64
- {3FE7E9B6-49AC-4246-A789-28DB4644567B}.Debug|x64.Build.0 = Debug|x64
- {3FE7E9B6-49AC-4246-A789-28DB4644567B}.Debug|x86.ActiveCfg = Debug|Win32
- {3FE7E9B6-49AC-4246-A789-28DB4644567B}.Debug|x86.Build.0 = Debug|Win32
- {3FE7E9B6-49AC-4246-A789-28DB4644567B}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
- {3FE7E9B6-49AC-4246-A789-28DB4644567B}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
- {3FE7E9B6-49AC-4246-A789-28DB4644567B}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
- {3FE7E9B6-49AC-4246-A789-28DB4644567B}.Release.DLL|x64.Build.0 = Release.DLL|x64
- {3FE7E9B6-49AC-4246-A789-28DB4644567B}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
- {3FE7E9B6-49AC-4246-A789-28DB4644567B}.Release.DLL|x86.Build.0 = Release.DLL|Win32
- {3FE7E9B6-49AC-4246-A789-28DB4644567B}.Release|ARM64.ActiveCfg = Release|ARM64
- {3FE7E9B6-49AC-4246-A789-28DB4644567B}.Release|ARM64.Build.0 = Release|ARM64
- {3FE7E9B6-49AC-4246-A789-28DB4644567B}.Release|x64.ActiveCfg = Release|x64
- {3FE7E9B6-49AC-4246-A789-28DB4644567B}.Release|x64.Build.0 = Release|x64
- {3FE7E9B6-49AC-4246-A789-28DB4644567B}.Release|x86.ActiveCfg = Release|Win32
- {3FE7E9B6-49AC-4246-A789-28DB4644567B}.Release|x86.Build.0 = Release|Win32
- {EBBBF4A0-2DA2-4DE6-B4FE-C6654A2417A0}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
- {EBBBF4A0-2DA2-4DE6-B4FE-C6654A2417A0}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
- {EBBBF4A0-2DA2-4DE6-B4FE-C6654A2417A0}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
- {EBBBF4A0-2DA2-4DE6-B4FE-C6654A2417A0}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
- {EBBBF4A0-2DA2-4DE6-B4FE-C6654A2417A0}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
- {EBBBF4A0-2DA2-4DE6-B4FE-C6654A2417A0}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
- {EBBBF4A0-2DA2-4DE6-B4FE-C6654A2417A0}.Debug|ARM64.ActiveCfg = Debug|ARM64
- {EBBBF4A0-2DA2-4DE6-B4FE-C6654A2417A0}.Debug|ARM64.Build.0 = Debug|ARM64
- {EBBBF4A0-2DA2-4DE6-B4FE-C6654A2417A0}.Debug|x64.ActiveCfg = Debug|x64
- {EBBBF4A0-2DA2-4DE6-B4FE-C6654A2417A0}.Debug|x64.Build.0 = Debug|x64
- {EBBBF4A0-2DA2-4DE6-B4FE-C6654A2417A0}.Debug|x86.ActiveCfg = Debug|Win32
- {EBBBF4A0-2DA2-4DE6-B4FE-C6654A2417A0}.Debug|x86.Build.0 = Debug|Win32
- {EBBBF4A0-2DA2-4DE6-B4FE-C6654A2417A0}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
- {EBBBF4A0-2DA2-4DE6-B4FE-C6654A2417A0}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
- {EBBBF4A0-2DA2-4DE6-B4FE-C6654A2417A0}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
- {EBBBF4A0-2DA2-4DE6-B4FE-C6654A2417A0}.Release.DLL|x64.Build.0 = Release.DLL|x64
- {EBBBF4A0-2DA2-4DE6-B4FE-C6654A2417A0}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
- {EBBBF4A0-2DA2-4DE6-B4FE-C6654A2417A0}.Release.DLL|x86.Build.0 = Release.DLL|Win32
- {EBBBF4A0-2DA2-4DE6-B4FE-C6654A2417A0}.Release|ARM64.ActiveCfg = Release|ARM64
- {EBBBF4A0-2DA2-4DE6-B4FE-C6654A2417A0}.Release|ARM64.Build.0 = Release|ARM64
- {EBBBF4A0-2DA2-4DE6-B4FE-C6654A2417A0}.Release|x64.ActiveCfg = Release|x64
- {EBBBF4A0-2DA2-4DE6-B4FE-C6654A2417A0}.Release|x64.Build.0 = Release|x64
- {EBBBF4A0-2DA2-4DE6-B4FE-C6654A2417A0}.Release|x86.ActiveCfg = Release|Win32
- {EBBBF4A0-2DA2-4DE6-B4FE-C6654A2417A0}.Release|x86.Build.0 = Release|Win32
- {191A5289-BA65-4638-A215-C521F0187313}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
- {191A5289-BA65-4638-A215-C521F0187313}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
- {191A5289-BA65-4638-A215-C521F0187313}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
- {191A5289-BA65-4638-A215-C521F0187313}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
- {191A5289-BA65-4638-A215-C521F0187313}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
- {191A5289-BA65-4638-A215-C521F0187313}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
- {191A5289-BA65-4638-A215-C521F0187313}.Debug|ARM64.ActiveCfg = Debug|ARM64
- {191A5289-BA65-4638-A215-C521F0187313}.Debug|ARM64.Build.0 = Debug|ARM64
- {191A5289-BA65-4638-A215-C521F0187313}.Debug|x64.ActiveCfg = Debug|x64
- {191A5289-BA65-4638-A215-C521F0187313}.Debug|x64.Build.0 = Debug|x64
- {191A5289-BA65-4638-A215-C521F0187313}.Debug|x86.ActiveCfg = Debug|Win32
- {191A5289-BA65-4638-A215-C521F0187313}.Debug|x86.Build.0 = Debug|Win32
- {191A5289-BA65-4638-A215-C521F0187313}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
- {191A5289-BA65-4638-A215-C521F0187313}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
- {191A5289-BA65-4638-A215-C521F0187313}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
- {191A5289-BA65-4638-A215-C521F0187313}.Release.DLL|x64.Build.0 = Release.DLL|x64
- {191A5289-BA65-4638-A215-C521F0187313}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
- {191A5289-BA65-4638-A215-C521F0187313}.Release.DLL|x86.Build.0 = Release.DLL|Win32
- {191A5289-BA65-4638-A215-C521F0187313}.Release|ARM64.ActiveCfg = Release|ARM64
- {191A5289-BA65-4638-A215-C521F0187313}.Release|ARM64.Build.0 = Release|ARM64
- {191A5289-BA65-4638-A215-C521F0187313}.Release|x64.ActiveCfg = Release|x64
- {191A5289-BA65-4638-A215-C521F0187313}.Release|x64.Build.0 = Release|x64
- {191A5289-BA65-4638-A215-C521F0187313}.Release|x86.ActiveCfg = Release|Win32
- {191A5289-BA65-4638-A215-C521F0187313}.Release|x86.Build.0 = Release|Win32
- {3CFF7AB8-32CB-4D6D-9FED-53DBEF277359}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
- {3CFF7AB8-32CB-4D6D-9FED-53DBEF277359}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
- {3CFF7AB8-32CB-4D6D-9FED-53DBEF277359}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
- {3CFF7AB8-32CB-4D6D-9FED-53DBEF277359}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
- {3CFF7AB8-32CB-4D6D-9FED-53DBEF277359}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
- {3CFF7AB8-32CB-4D6D-9FED-53DBEF277359}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
- {3CFF7AB8-32CB-4D6D-9FED-53DBEF277359}.Debug|ARM64.ActiveCfg = Debug|ARM64
- {3CFF7AB8-32CB-4D6D-9FED-53DBEF277359}.Debug|ARM64.Build.0 = Debug|ARM64
- {3CFF7AB8-32CB-4D6D-9FED-53DBEF277359}.Debug|x64.ActiveCfg = Debug|x64
- {3CFF7AB8-32CB-4D6D-9FED-53DBEF277359}.Debug|x64.Build.0 = Debug|x64
- {3CFF7AB8-32CB-4D6D-9FED-53DBEF277359}.Debug|x86.ActiveCfg = Debug|Win32
- {3CFF7AB8-32CB-4D6D-9FED-53DBEF277359}.Debug|x86.Build.0 = Debug|Win32
- {3CFF7AB8-32CB-4D6D-9FED-53DBEF277359}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
- {3CFF7AB8-32CB-4D6D-9FED-53DBEF277359}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
- {3CFF7AB8-32CB-4D6D-9FED-53DBEF277359}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
- {3CFF7AB8-32CB-4D6D-9FED-53DBEF277359}.Release.DLL|x64.Build.0 = Release.DLL|x64
- {3CFF7AB8-32CB-4D6D-9FED-53DBEF277359}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
- {3CFF7AB8-32CB-4D6D-9FED-53DBEF277359}.Release.DLL|x86.Build.0 = Release.DLL|Win32
- {3CFF7AB8-32CB-4D6D-9FED-53DBEF277359}.Release|ARM64.ActiveCfg = Release|ARM64
- {3CFF7AB8-32CB-4D6D-9FED-53DBEF277359}.Release|ARM64.Build.0 = Release|ARM64
- {3CFF7AB8-32CB-4D6D-9FED-53DBEF277359}.Release|x64.ActiveCfg = Release|x64
- {3CFF7AB8-32CB-4D6D-9FED-53DBEF277359}.Release|x64.Build.0 = Release|x64
- {3CFF7AB8-32CB-4D6D-9FED-53DBEF277359}.Release|x86.ActiveCfg = Release|Win32
- {3CFF7AB8-32CB-4D6D-9FED-53DBEF277359}.Release|x86.Build.0 = Release|Win32
- {8B1AF423-00F1-4924-AC54-F77D402D2AC9}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
- {8B1AF423-00F1-4924-AC54-F77D402D2AC9}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
- {8B1AF423-00F1-4924-AC54-F77D402D2AC9}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
- {8B1AF423-00F1-4924-AC54-F77D402D2AC9}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
- {8B1AF423-00F1-4924-AC54-F77D402D2AC9}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
- {8B1AF423-00F1-4924-AC54-F77D402D2AC9}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
- {8B1AF423-00F1-4924-AC54-F77D402D2AC9}.Debug|ARM64.ActiveCfg = Debug|ARM64
- {8B1AF423-00F1-4924-AC54-F77D402D2AC9}.Debug|ARM64.Build.0 = Debug|ARM64
- {8B1AF423-00F1-4924-AC54-F77D402D2AC9}.Debug|x64.ActiveCfg = Debug|x64
- {8B1AF423-00F1-4924-AC54-F77D402D2AC9}.Debug|x64.Build.0 = Debug|x64
- {8B1AF423-00F1-4924-AC54-F77D402D2AC9}.Debug|x86.ActiveCfg = Debug|Win32
- {8B1AF423-00F1-4924-AC54-F77D402D2AC9}.Debug|x86.Build.0 = Debug|Win32
- {8B1AF423-00F1-4924-AC54-F77D402D2AC9}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
- {8B1AF423-00F1-4924-AC54-F77D402D2AC9}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
- {8B1AF423-00F1-4924-AC54-F77D402D2AC9}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
- {8B1AF423-00F1-4924-AC54-F77D402D2AC9}.Release.DLL|x64.Build.0 = Release.DLL|x64
- {8B1AF423-00F1-4924-AC54-F77D402D2AC9}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
- {8B1AF423-00F1-4924-AC54-F77D402D2AC9}.Release.DLL|x86.Build.0 = Release.DLL|Win32
- {8B1AF423-00F1-4924-AC54-F77D402D2AC9}.Release|ARM64.ActiveCfg = Release|ARM64
- {8B1AF423-00F1-4924-AC54-F77D402D2AC9}.Release|ARM64.Build.0 = Release|ARM64
- {8B1AF423-00F1-4924-AC54-F77D402D2AC9}.Release|x64.ActiveCfg = Release|x64
- {8B1AF423-00F1-4924-AC54-F77D402D2AC9}.Release|x64.Build.0 = Release|x64
- {8B1AF423-00F1-4924-AC54-F77D402D2AC9}.Release|x86.ActiveCfg = Release|Win32
- {8B1AF423-00F1-4924-AC54-F77D402D2AC9}.Release|x86.Build.0 = Release|Win32
- {658A1B85-554E-4A5D-973A-FFE592CDD5F2}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
- {658A1B85-554E-4A5D-973A-FFE592CDD5F2}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
- {658A1B85-554E-4A5D-973A-FFE592CDD5F2}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
- {658A1B85-554E-4A5D-973A-FFE592CDD5F2}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
- {658A1B85-554E-4A5D-973A-FFE592CDD5F2}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
- {658A1B85-554E-4A5D-973A-FFE592CDD5F2}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
- {658A1B85-554E-4A5D-973A-FFE592CDD5F2}.Debug|ARM64.ActiveCfg = Debug|ARM64
- {658A1B85-554E-4A5D-973A-FFE592CDD5F2}.Debug|ARM64.Build.0 = Debug|ARM64
- {658A1B85-554E-4A5D-973A-FFE592CDD5F2}.Debug|x64.ActiveCfg = Debug|x64
- {658A1B85-554E-4A5D-973A-FFE592CDD5F2}.Debug|x64.Build.0 = Debug|x64
- {658A1B85-554E-4A5D-973A-FFE592CDD5F2}.Debug|x86.ActiveCfg = Debug|Win32
- {658A1B85-554E-4A5D-973A-FFE592CDD5F2}.Debug|x86.Build.0 = Debug|Win32
- {658A1B85-554E-4A5D-973A-FFE592CDD5F2}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
- {658A1B85-554E-4A5D-973A-FFE592CDD5F2}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
- {658A1B85-554E-4A5D-973A-FFE592CDD5F2}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
- {658A1B85-554E-4A5D-973A-FFE592CDD5F2}.Release.DLL|x64.Build.0 = Release.DLL|x64
- {658A1B85-554E-4A5D-973A-FFE592CDD5F2}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
- {658A1B85-554E-4A5D-973A-FFE592CDD5F2}.Release.DLL|x86.Build.0 = Release.DLL|Win32
- {658A1B85-554E-4A5D-973A-FFE592CDD5F2}.Release|ARM64.ActiveCfg = Release|ARM64
- {658A1B85-554E-4A5D-973A-FFE592CDD5F2}.Release|ARM64.Build.0 = Release|ARM64
- {658A1B85-554E-4A5D-973A-FFE592CDD5F2}.Release|x64.ActiveCfg = Release|x64
- {658A1B85-554E-4A5D-973A-FFE592CDD5F2}.Release|x64.Build.0 = Release|x64
- {658A1B85-554E-4A5D-973A-FFE592CDD5F2}.Release|x86.ActiveCfg = Release|Win32
- {658A1B85-554E-4A5D-973A-FFE592CDD5F2}.Release|x86.Build.0 = Release|Win32
- {07CA51AD-72AE-46A2-AAED-DC3E3F807976}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
- {07CA51AD-72AE-46A2-AAED-DC3E3F807976}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
- {07CA51AD-72AE-46A2-AAED-DC3E3F807976}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
- {07CA51AD-72AE-46A2-AAED-DC3E3F807976}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
- {07CA51AD-72AE-46A2-AAED-DC3E3F807976}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
- {07CA51AD-72AE-46A2-AAED-DC3E3F807976}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
- {07CA51AD-72AE-46A2-AAED-DC3E3F807976}.Debug|ARM64.ActiveCfg = Debug|ARM64
- {07CA51AD-72AE-46A2-AAED-DC3E3F807976}.Debug|ARM64.Build.0 = Debug|ARM64
- {07CA51AD-72AE-46A2-AAED-DC3E3F807976}.Debug|x64.ActiveCfg = Debug|x64
- {07CA51AD-72AE-46A2-AAED-DC3E3F807976}.Debug|x64.Build.0 = Debug|x64
- {07CA51AD-72AE-46A2-AAED-DC3E3F807976}.Debug|x86.ActiveCfg = Debug|Win32
- {07CA51AD-72AE-46A2-AAED-DC3E3F807976}.Debug|x86.Build.0 = Debug|Win32
- {07CA51AD-72AE-46A2-AAED-DC3E3F807976}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
- {07CA51AD-72AE-46A2-AAED-DC3E3F807976}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
- {07CA51AD-72AE-46A2-AAED-DC3E3F807976}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
- {07CA51AD-72AE-46A2-AAED-DC3E3F807976}.Release.DLL|x64.Build.0 = Release.DLL|x64
- {07CA51AD-72AE-46A2-AAED-DC3E3F807976}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
- {07CA51AD-72AE-46A2-AAED-DC3E3F807976}.Release.DLL|x86.Build.0 = Release.DLL|Win32
- {07CA51AD-72AE-46A2-AAED-DC3E3F807976}.Release|ARM64.ActiveCfg = Release|ARM64
- {07CA51AD-72AE-46A2-AAED-DC3E3F807976}.Release|ARM64.Build.0 = Release|ARM64
- {07CA51AD-72AE-46A2-AAED-DC3E3F807976}.Release|x64.ActiveCfg = Release|x64
- {07CA51AD-72AE-46A2-AAED-DC3E3F807976}.Release|x64.Build.0 = Release|x64
- {07CA51AD-72AE-46A2-AAED-DC3E3F807976}.Release|x86.ActiveCfg = Release|Win32
- {07CA51AD-72AE-46A2-AAED-DC3E3F807976}.Release|x86.Build.0 = Release|Win32
- {27B110CC-43C0-400A-89D9-245E681647D7}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
- {27B110CC-43C0-400A-89D9-245E681647D7}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
- {27B110CC-43C0-400A-89D9-245E681647D7}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
- {27B110CC-43C0-400A-89D9-245E681647D7}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
- {27B110CC-43C0-400A-89D9-245E681647D7}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
- {27B110CC-43C0-400A-89D9-245E681647D7}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
- {27B110CC-43C0-400A-89D9-245E681647D7}.Debug|ARM64.ActiveCfg = Debug|ARM64
- {27B110CC-43C0-400A-89D9-245E681647D7}.Debug|ARM64.Build.0 = Debug|ARM64
- {27B110CC-43C0-400A-89D9-245E681647D7}.Debug|x64.ActiveCfg = Debug|x64
- {27B110CC-43C0-400A-89D9-245E681647D7}.Debug|x64.Build.0 = Debug|x64
- {27B110CC-43C0-400A-89D9-245E681647D7}.Debug|x86.ActiveCfg = Debug|Win32
- {27B110CC-43C0-400A-89D9-245E681647D7}.Debug|x86.Build.0 = Debug|Win32
- {27B110CC-43C0-400A-89D9-245E681647D7}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
- {27B110CC-43C0-400A-89D9-245E681647D7}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
- {27B110CC-43C0-400A-89D9-245E681647D7}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
- {27B110CC-43C0-400A-89D9-245E681647D7}.Release.DLL|x64.Build.0 = Release.DLL|x64
- {27B110CC-43C0-400A-89D9-245E681647D7}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
- {27B110CC-43C0-400A-89D9-245E681647D7}.Release.DLL|x86.Build.0 = Release.DLL|Win32
- {27B110CC-43C0-400A-89D9-245E681647D7}.Release|ARM64.ActiveCfg = Release|ARM64
- {27B110CC-43C0-400A-89D9-245E681647D7}.Release|ARM64.Build.0 = Release|ARM64
- {27B110CC-43C0-400A-89D9-245E681647D7}.Release|x64.ActiveCfg = Release|x64
- {27B110CC-43C0-400A-89D9-245E681647D7}.Release|x64.Build.0 = Release|x64
- {27B110CC-43C0-400A-89D9-245E681647D7}.Release|x86.ActiveCfg = Release|Win32
- {27B110CC-43C0-400A-89D9-245E681647D7}.Release|x86.Build.0 = Release|Win32
- {1DE84812-E143-4C4B-A61D-9267AAD55401}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
- {1DE84812-E143-4C4B-A61D-9267AAD55401}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
- {1DE84812-E143-4C4B-A61D-9267AAD55401}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
- {1DE84812-E143-4C4B-A61D-9267AAD55401}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
- {1DE84812-E143-4C4B-A61D-9267AAD55401}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
- {1DE84812-E143-4C4B-A61D-9267AAD55401}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
- {1DE84812-E143-4C4B-A61D-9267AAD55401}.Debug|ARM64.ActiveCfg = Debug|ARM64
- {1DE84812-E143-4C4B-A61D-9267AAD55401}.Debug|ARM64.Build.0 = Debug|ARM64
- {1DE84812-E143-4C4B-A61D-9267AAD55401}.Debug|x64.ActiveCfg = Debug|x64
- {1DE84812-E143-4C4B-A61D-9267AAD55401}.Debug|x64.Build.0 = Debug|x64
- {1DE84812-E143-4C4B-A61D-9267AAD55401}.Debug|x86.ActiveCfg = Debug|Win32
- {1DE84812-E143-4C4B-A61D-9267AAD55401}.Debug|x86.Build.0 = Debug|Win32
- {1DE84812-E143-4C4B-A61D-9267AAD55401}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
- {1DE84812-E143-4C4B-A61D-9267AAD55401}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
- {1DE84812-E143-4C4B-A61D-9267AAD55401}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
- {1DE84812-E143-4C4B-A61D-9267AAD55401}.Release.DLL|x64.Build.0 = Release.DLL|x64
- {1DE84812-E143-4C4B-A61D-9267AAD55401}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
- {1DE84812-E143-4C4B-A61D-9267AAD55401}.Release.DLL|x86.Build.0 = Release.DLL|Win32
- {1DE84812-E143-4C4B-A61D-9267AAD55401}.Release|ARM64.ActiveCfg = Release|ARM64
- {1DE84812-E143-4C4B-A61D-9267AAD55401}.Release|ARM64.Build.0 = Release|ARM64
- {1DE84812-E143-4C4B-A61D-9267AAD55401}.Release|x64.ActiveCfg = Release|x64
- {1DE84812-E143-4C4B-A61D-9267AAD55401}.Release|x64.Build.0 = Release|x64
- {1DE84812-E143-4C4B-A61D-9267AAD55401}.Release|x86.ActiveCfg = Release|Win32
- {1DE84812-E143-4C4B-A61D-9267AAD55401}.Release|x86.Build.0 = Release|Win32
- {4A87569C-4BD3-4113-B4B9-573D65B3D3F8}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
- {4A87569C-4BD3-4113-B4B9-573D65B3D3F8}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
- {4A87569C-4BD3-4113-B4B9-573D65B3D3F8}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
- {4A87569C-4BD3-4113-B4B9-573D65B3D3F8}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
- {4A87569C-4BD3-4113-B4B9-573D65B3D3F8}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
- {4A87569C-4BD3-4113-B4B9-573D65B3D3F8}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
- {4A87569C-4BD3-4113-B4B9-573D65B3D3F8}.Debug|ARM64.ActiveCfg = Debug|ARM64
- {4A87569C-4BD3-4113-B4B9-573D65B3D3F8}.Debug|ARM64.Build.0 = Debug|ARM64
- {4A87569C-4BD3-4113-B4B9-573D65B3D3F8}.Debug|x64.ActiveCfg = Debug|x64
- {4A87569C-4BD3-4113-B4B9-573D65B3D3F8}.Debug|x64.Build.0 = Debug|x64
- {4A87569C-4BD3-4113-B4B9-573D65B3D3F8}.Debug|x86.ActiveCfg = Debug|Win32
- {4A87569C-4BD3-4113-B4B9-573D65B3D3F8}.Debug|x86.Build.0 = Debug|Win32
- {4A87569C-4BD3-4113-B4B9-573D65B3D3F8}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
- {4A87569C-4BD3-4113-B4B9-573D65B3D3F8}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
- {4A87569C-4BD3-4113-B4B9-573D65B3D3F8}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
- {4A87569C-4BD3-4113-B4B9-573D65B3D3F8}.Release.DLL|x64.Build.0 = Release.DLL|x64
- {4A87569C-4BD3-4113-B4B9-573D65B3D3F8}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
- {4A87569C-4BD3-4113-B4B9-573D65B3D3F8}.Release.DLL|x86.Build.0 = Release.DLL|Win32
- {4A87569C-4BD3-4113-B4B9-573D65B3D3F8}.Release|ARM64.ActiveCfg = Release|ARM64
- {4A87569C-4BD3-4113-B4B9-573D65B3D3F8}.Release|ARM64.Build.0 = Release|ARM64
- {4A87569C-4BD3-4113-B4B9-573D65B3D3F8}.Release|x64.ActiveCfg = Release|x64
- {4A87569C-4BD3-4113-B4B9-573D65B3D3F8}.Release|x64.Build.0 = Release|x64
- {4A87569C-4BD3-4113-B4B9-573D65B3D3F8}.Release|x86.ActiveCfg = Release|Win32
- {4A87569C-4BD3-4113-B4B9-573D65B3D3F8}.Release|x86.Build.0 = Release|Win32
- {769FF0C1-4424-4FA3-BC44-D7A7DA312A06}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
- {769FF0C1-4424-4FA3-BC44-D7A7DA312A06}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
- {769FF0C1-4424-4FA3-BC44-D7A7DA312A06}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
- {769FF0C1-4424-4FA3-BC44-D7A7DA312A06}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
- {769FF0C1-4424-4FA3-BC44-D7A7DA312A06}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
- {769FF0C1-4424-4FA3-BC44-D7A7DA312A06}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
- {769FF0C1-4424-4FA3-BC44-D7A7DA312A06}.Debug|ARM64.ActiveCfg = Debug|ARM64
- {769FF0C1-4424-4FA3-BC44-D7A7DA312A06}.Debug|ARM64.Build.0 = Debug|ARM64
- {769FF0C1-4424-4FA3-BC44-D7A7DA312A06}.Debug|x64.ActiveCfg = Debug|x64
- {769FF0C1-4424-4FA3-BC44-D7A7DA312A06}.Debug|x64.Build.0 = Debug|x64
- {769FF0C1-4424-4FA3-BC44-D7A7DA312A06}.Debug|x86.ActiveCfg = Debug|Win32
- {769FF0C1-4424-4FA3-BC44-D7A7DA312A06}.Debug|x86.Build.0 = Debug|Win32
- {769FF0C1-4424-4FA3-BC44-D7A7DA312A06}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
- {769FF0C1-4424-4FA3-BC44-D7A7DA312A06}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
- {769FF0C1-4424-4FA3-BC44-D7A7DA312A06}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
- {769FF0C1-4424-4FA3-BC44-D7A7DA312A06}.Release.DLL|x64.Build.0 = Release.DLL|x64
- {769FF0C1-4424-4FA3-BC44-D7A7DA312A06}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
- {769FF0C1-4424-4FA3-BC44-D7A7DA312A06}.Release.DLL|x86.Build.0 = Release.DLL|Win32
- {769FF0C1-4424-4FA3-BC44-D7A7DA312A06}.Release|ARM64.ActiveCfg = Release|ARM64
- {769FF0C1-4424-4FA3-BC44-D7A7DA312A06}.Release|ARM64.Build.0 = Release|ARM64
- {769FF0C1-4424-4FA3-BC44-D7A7DA312A06}.Release|x64.ActiveCfg = Release|x64
- {769FF0C1-4424-4FA3-BC44-D7A7DA312A06}.Release|x64.Build.0 = Release|x64
- {769FF0C1-4424-4FA3-BC44-D7A7DA312A06}.Release|x86.ActiveCfg = Release|Win32
- {769FF0C1-4424-4FA3-BC44-D7A7DA312A06}.Release|x86.Build.0 = Release|Win32
- {6D9E00D8-2893-45E4-9363-3F7F61D416BD}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
- {6D9E00D8-2893-45E4-9363-3F7F61D416BD}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
- {6D9E00D8-2893-45E4-9363-3F7F61D416BD}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
- {6D9E00D8-2893-45E4-9363-3F7F61D416BD}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
- {6D9E00D8-2893-45E4-9363-3F7F61D416BD}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
- {6D9E00D8-2893-45E4-9363-3F7F61D416BD}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
- {6D9E00D8-2893-45E4-9363-3F7F61D416BD}.Debug|ARM64.ActiveCfg = Debug|ARM64
- {6D9E00D8-2893-45E4-9363-3F7F61D416BD}.Debug|ARM64.Build.0 = Debug|ARM64
- {6D9E00D8-2893-45E4-9363-3F7F61D416BD}.Debug|x64.ActiveCfg = Debug|x64
- {6D9E00D8-2893-45E4-9363-3F7F61D416BD}.Debug|x64.Build.0 = Debug|x64
- {6D9E00D8-2893-45E4-9363-3F7F61D416BD}.Debug|x86.ActiveCfg = Debug|Win32
- {6D9E00D8-2893-45E4-9363-3F7F61D416BD}.Debug|x86.Build.0 = Debug|Win32
- {6D9E00D8-2893-45E4-9363-3F7F61D416BD}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
- {6D9E00D8-2893-45E4-9363-3F7F61D416BD}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
- {6D9E00D8-2893-45E4-9363-3F7F61D416BD}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
- {6D9E00D8-2893-45E4-9363-3F7F61D416BD}.Release.DLL|x64.Build.0 = Release.DLL|x64
- {6D9E00D8-2893-45E4-9363-3F7F61D416BD}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
- {6D9E00D8-2893-45E4-9363-3F7F61D416BD}.Release.DLL|x86.Build.0 = Release.DLL|Win32
- {6D9E00D8-2893-45E4-9363-3F7F61D416BD}.Release|ARM64.ActiveCfg = Release|ARM64
- {6D9E00D8-2893-45E4-9363-3F7F61D416BD}.Release|ARM64.Build.0 = Release|ARM64
- {6D9E00D8-2893-45E4-9363-3F7F61D416BD}.Release|x64.ActiveCfg = Release|x64
- {6D9E00D8-2893-45E4-9363-3F7F61D416BD}.Release|x64.Build.0 = Release|x64
- {6D9E00D8-2893-45E4-9363-3F7F61D416BD}.Release|x86.ActiveCfg = Release|Win32
- {6D9E00D8-2893-45E4-9363-3F7F61D416BD}.Release|x86.Build.0 = Release|Win32
- {70B35F59-AFC2-4D8F-8833-5314D2047A81}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
- {70B35F59-AFC2-4D8F-8833-5314D2047A81}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
- {70B35F59-AFC2-4D8F-8833-5314D2047A81}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
- {70B35F59-AFC2-4D8F-8833-5314D2047A81}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
- {70B35F59-AFC2-4D8F-8833-5314D2047A81}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
- {70B35F59-AFC2-4D8F-8833-5314D2047A81}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
- {70B35F59-AFC2-4D8F-8833-5314D2047A81}.Debug|ARM64.ActiveCfg = Debug|ARM64
- {70B35F59-AFC2-4D8F-8833-5314D2047A81}.Debug|ARM64.Build.0 = Debug|ARM64
- {70B35F59-AFC2-4D8F-8833-5314D2047A81}.Debug|x64.ActiveCfg = Debug|x64
- {70B35F59-AFC2-4D8F-8833-5314D2047A81}.Debug|x64.Build.0 = Debug|x64
- {70B35F59-AFC2-4D8F-8833-5314D2047A81}.Debug|x86.ActiveCfg = Debug|Win32
- {70B35F59-AFC2-4D8F-8833-5314D2047A81}.Debug|x86.Build.0 = Debug|Win32
- {70B35F59-AFC2-4D8F-8833-5314D2047A81}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
- {70B35F59-AFC2-4D8F-8833-5314D2047A81}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
- {70B35F59-AFC2-4D8F-8833-5314D2047A81}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
- {70B35F59-AFC2-4D8F-8833-5314D2047A81}.Release.DLL|x64.Build.0 = Release.DLL|x64
- {70B35F59-AFC2-4D8F-8833-5314D2047A81}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
- {70B35F59-AFC2-4D8F-8833-5314D2047A81}.Release.DLL|x86.Build.0 = Release.DLL|Win32
- {70B35F59-AFC2-4D8F-8833-5314D2047A81}.Release|ARM64.ActiveCfg = Release|ARM64
- {70B35F59-AFC2-4D8F-8833-5314D2047A81}.Release|ARM64.Build.0 = Release|ARM64
- {70B35F59-AFC2-4D8F-8833-5314D2047A81}.Release|x64.ActiveCfg = Release|x64
- {70B35F59-AFC2-4D8F-8833-5314D2047A81}.Release|x64.Build.0 = Release|x64
- {70B35F59-AFC2-4D8F-8833-5314D2047A81}.Release|x86.ActiveCfg = Release|Win32
- {70B35F59-AFC2-4D8F-8833-5314D2047A81}.Release|x86.Build.0 = Release|Win32
- {DFDE29A7-4F54-455D-B20B-D2BF79D3B3F7}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
- {DFDE29A7-4F54-455D-B20B-D2BF79D3B3F7}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
- {DFDE29A7-4F54-455D-B20B-D2BF79D3B3F7}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
- {DFDE29A7-4F54-455D-B20B-D2BF79D3B3F7}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
- {DFDE29A7-4F54-455D-B20B-D2BF79D3B3F7}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
- {DFDE29A7-4F54-455D-B20B-D2BF79D3B3F7}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
- {DFDE29A7-4F54-455D-B20B-D2BF79D3B3F7}.Debug|ARM64.ActiveCfg = Debug|ARM64
- {DFDE29A7-4F54-455D-B20B-D2BF79D3B3F7}.Debug|ARM64.Build.0 = Debug|ARM64
- {DFDE29A7-4F54-455D-B20B-D2BF79D3B3F7}.Debug|x64.ActiveCfg = Debug|x64
- {DFDE29A7-4F54-455D-B20B-D2BF79D3B3F7}.Debug|x64.Build.0 = Debug|x64
- {DFDE29A7-4F54-455D-B20B-D2BF79D3B3F7}.Debug|x86.ActiveCfg = Debug|Win32
- {DFDE29A7-4F54-455D-B20B-D2BF79D3B3F7}.Debug|x86.Build.0 = Debug|Win32
- {DFDE29A7-4F54-455D-B20B-D2BF79D3B3F7}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
- {DFDE29A7-4F54-455D-B20B-D2BF79D3B3F7}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
- {DFDE29A7-4F54-455D-B20B-D2BF79D3B3F7}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
- {DFDE29A7-4F54-455D-B20B-D2BF79D3B3F7}.Release.DLL|x64.Build.0 = Release.DLL|x64
- {DFDE29A7-4F54-455D-B20B-D2BF79D3B3F7}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
- {DFDE29A7-4F54-455D-B20B-D2BF79D3B3F7}.Release.DLL|x86.Build.0 = Release.DLL|Win32
- {DFDE29A7-4F54-455D-B20B-D2BF79D3B3F7}.Release|ARM64.ActiveCfg = Release|ARM64
- {DFDE29A7-4F54-455D-B20B-D2BF79D3B3F7}.Release|ARM64.Build.0 = Release|ARM64
- {DFDE29A7-4F54-455D-B20B-D2BF79D3B3F7}.Release|x64.ActiveCfg = Release|x64
- {DFDE29A7-4F54-455D-B20B-D2BF79D3B3F7}.Release|x64.Build.0 = Release|x64
- {DFDE29A7-4F54-455D-B20B-D2BF79D3B3F7}.Release|x86.ActiveCfg = Release|Win32
- {DFDE29A7-4F54-455D-B20B-D2BF79D3B3F7}.Release|x86.Build.0 = Release|Win32
- {3755E9F4-CB48-4EC3-B561-3B85964EBDEF}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
- {3755E9F4-CB48-4EC3-B561-3B85964EBDEF}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
- {3755E9F4-CB48-4EC3-B561-3B85964EBDEF}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
- {3755E9F4-CB48-4EC3-B561-3B85964EBDEF}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
- {3755E9F4-CB48-4EC3-B561-3B85964EBDEF}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
- {3755E9F4-CB48-4EC3-B561-3B85964EBDEF}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
- {3755E9F4-CB48-4EC3-B561-3B85964EBDEF}.Debug|ARM64.ActiveCfg = Debug|ARM64
- {3755E9F4-CB48-4EC3-B561-3B85964EBDEF}.Debug|ARM64.Build.0 = Debug|ARM64
- {3755E9F4-CB48-4EC3-B561-3B85964EBDEF}.Debug|x64.ActiveCfg = Debug|x64
- {3755E9F4-CB48-4EC3-B561-3B85964EBDEF}.Debug|x64.Build.0 = Debug|x64
- {3755E9F4-CB48-4EC3-B561-3B85964EBDEF}.Debug|x86.ActiveCfg = Debug|Win32
- {3755E9F4-CB48-4EC3-B561-3B85964EBDEF}.Debug|x86.Build.0 = Debug|Win32
- {3755E9F4-CB48-4EC3-B561-3B85964EBDEF}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
- {3755E9F4-CB48-4EC3-B561-3B85964EBDEF}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
- {3755E9F4-CB48-4EC3-B561-3B85964EBDEF}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
- {3755E9F4-CB48-4EC3-B561-3B85964EBDEF}.Release.DLL|x64.Build.0 = Release.DLL|x64
- {3755E9F4-CB48-4EC3-B561-3B85964EBDEF}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
- {3755E9F4-CB48-4EC3-B561-3B85964EBDEF}.Release.DLL|x86.Build.0 = Release.DLL|Win32
- {3755E9F4-CB48-4EC3-B561-3B85964EBDEF}.Release|ARM64.ActiveCfg = Release|ARM64
- {3755E9F4-CB48-4EC3-B561-3B85964EBDEF}.Release|ARM64.Build.0 = Release|ARM64
- {3755E9F4-CB48-4EC3-B561-3B85964EBDEF}.Release|x64.ActiveCfg = Release|x64
- {3755E9F4-CB48-4EC3-B561-3B85964EBDEF}.Release|x64.Build.0 = Release|x64
- {3755E9F4-CB48-4EC3-B561-3B85964EBDEF}.Release|x86.ActiveCfg = Release|Win32
- {3755E9F4-CB48-4EC3-B561-3B85964EBDEF}.Release|x86.Build.0 = Release|Win32
- {F81C5819-85B4-4D2E-B6DC-104A7634461B}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
- {F81C5819-85B4-4D2E-B6DC-104A7634461B}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
- {F81C5819-85B4-4D2E-B6DC-104A7634461B}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
- {F81C5819-85B4-4D2E-B6DC-104A7634461B}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
- {F81C5819-85B4-4D2E-B6DC-104A7634461B}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
- {F81C5819-85B4-4D2E-B6DC-104A7634461B}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
- {F81C5819-85B4-4D2E-B6DC-104A7634461B}.Debug|ARM64.ActiveCfg = Debug|ARM64
- {F81C5819-85B4-4D2E-B6DC-104A7634461B}.Debug|ARM64.Build.0 = Debug|ARM64
- {F81C5819-85B4-4D2E-B6DC-104A7634461B}.Debug|x64.ActiveCfg = Debug|x64
- {F81C5819-85B4-4D2E-B6DC-104A7634461B}.Debug|x64.Build.0 = Debug|x64
- {F81C5819-85B4-4D2E-B6DC-104A7634461B}.Debug|x86.ActiveCfg = Debug|Win32
- {F81C5819-85B4-4D2E-B6DC-104A7634461B}.Debug|x86.Build.0 = Debug|Win32
- {F81C5819-85B4-4D2E-B6DC-104A7634461B}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
- {F81C5819-85B4-4D2E-B6DC-104A7634461B}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
- {F81C5819-85B4-4D2E-B6DC-104A7634461B}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
- {F81C5819-85B4-4D2E-B6DC-104A7634461B}.Release.DLL|x64.Build.0 = Release.DLL|x64
- {F81C5819-85B4-4D2E-B6DC-104A7634461B}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
- {F81C5819-85B4-4D2E-B6DC-104A7634461B}.Release.DLL|x86.Build.0 = Release.DLL|Win32
- {F81C5819-85B4-4D2E-B6DC-104A7634461B}.Release|ARM64.ActiveCfg = Release|ARM64
- {F81C5819-85B4-4D2E-B6DC-104A7634461B}.Release|ARM64.Build.0 = Release|ARM64
- {F81C5819-85B4-4D2E-B6DC-104A7634461B}.Release|x64.ActiveCfg = Release|x64
- {F81C5819-85B4-4D2E-B6DC-104A7634461B}.Release|x64.Build.0 = Release|x64
- {F81C5819-85B4-4D2E-B6DC-104A7634461B}.Release|x86.ActiveCfg = Release|Win32
- {F81C5819-85B4-4D2E-B6DC-104A7634461B}.Release|x86.Build.0 = Release|Win32
- {CC62F7DB-D089-4677-8575-CAB7A7815C43}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
- {CC62F7DB-D089-4677-8575-CAB7A7815C43}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
- {CC62F7DB-D089-4677-8575-CAB7A7815C43}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
- {CC62F7DB-D089-4677-8575-CAB7A7815C43}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
- {CC62F7DB-D089-4677-8575-CAB7A7815C43}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
- {CC62F7DB-D089-4677-8575-CAB7A7815C43}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
- {CC62F7DB-D089-4677-8575-CAB7A7815C43}.Debug|ARM64.ActiveCfg = Debug|ARM64
- {CC62F7DB-D089-4677-8575-CAB7A7815C43}.Debug|ARM64.Build.0 = Debug|ARM64
- {CC62F7DB-D089-4677-8575-CAB7A7815C43}.Debug|x64.ActiveCfg = Debug|x64
- {CC62F7DB-D089-4677-8575-CAB7A7815C43}.Debug|x64.Build.0 = Debug|x64
- {CC62F7DB-D089-4677-8575-CAB7A7815C43}.Debug|x86.ActiveCfg = Debug|Win32
- {CC62F7DB-D089-4677-8575-CAB7A7815C43}.Debug|x86.Build.0 = Debug|Win32
- {CC62F7DB-D089-4677-8575-CAB7A7815C43}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
- {CC62F7DB-D089-4677-8575-CAB7A7815C43}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
- {CC62F7DB-D089-4677-8575-CAB7A7815C43}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
- {CC62F7DB-D089-4677-8575-CAB7A7815C43}.Release.DLL|x64.Build.0 = Release.DLL|x64
- {CC62F7DB-D089-4677-8575-CAB7A7815C43}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
- {CC62F7DB-D089-4677-8575-CAB7A7815C43}.Release.DLL|x86.Build.0 = Release.DLL|Win32
- {CC62F7DB-D089-4677-8575-CAB7A7815C43}.Release|ARM64.ActiveCfg = Release|ARM64
- {CC62F7DB-D089-4677-8575-CAB7A7815C43}.Release|ARM64.Build.0 = Release|ARM64
- {CC62F7DB-D089-4677-8575-CAB7A7815C43}.Release|x64.ActiveCfg = Release|x64
- {CC62F7DB-D089-4677-8575-CAB7A7815C43}.Release|x64.Build.0 = Release|x64
- {CC62F7DB-D089-4677-8575-CAB7A7815C43}.Release|x86.ActiveCfg = Release|Win32
- {CC62F7DB-D089-4677-8575-CAB7A7815C43}.Release|x86.Build.0 = Release|Win32
- {7AF97D44-707E-48DC-81CB-C9D8D7C9ED26}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
- {7AF97D44-707E-48DC-81CB-C9D8D7C9ED26}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
- {7AF97D44-707E-48DC-81CB-C9D8D7C9ED26}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
- {7AF97D44-707E-48DC-81CB-C9D8D7C9ED26}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
- {7AF97D44-707E-48DC-81CB-C9D8D7C9ED26}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
- {7AF97D44-707E-48DC-81CB-C9D8D7C9ED26}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
- {7AF97D44-707E-48DC-81CB-C9D8D7C9ED26}.Debug|ARM64.ActiveCfg = Debug|ARM64
- {7AF97D44-707E-48DC-81CB-C9D8D7C9ED26}.Debug|ARM64.Build.0 = Debug|ARM64
- {7AF97D44-707E-48DC-81CB-C9D8D7C9ED26}.Debug|x64.ActiveCfg = Debug|x64
- {7AF97D44-707E-48DC-81CB-C9D8D7C9ED26}.Debug|x64.Build.0 = Debug|x64
- {7AF97D44-707E-48DC-81CB-C9D8D7C9ED26}.Debug|x86.ActiveCfg = Debug|Win32
- {7AF97D44-707E-48DC-81CB-C9D8D7C9ED26}.Debug|x86.Build.0 = Debug|Win32
- {7AF97D44-707E-48DC-81CB-C9D8D7C9ED26}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
- {7AF97D44-707E-48DC-81CB-C9D8D7C9ED26}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
- {7AF97D44-707E-48DC-81CB-C9D8D7C9ED26}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
- {7AF97D44-707E-48DC-81CB-C9D8D7C9ED26}.Release.DLL|x64.Build.0 = Release.DLL|x64
- {7AF97D44-707E-48DC-81CB-C9D8D7C9ED26}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
- {7AF97D44-707E-48DC-81CB-C9D8D7C9ED26}.Release.DLL|x86.Build.0 = Release.DLL|Win32
- {7AF97D44-707E-48DC-81CB-C9D8D7C9ED26}.Release|ARM64.ActiveCfg = Release|ARM64
- {7AF97D44-707E-48DC-81CB-C9D8D7C9ED26}.Release|ARM64.Build.0 = Release|ARM64
- {7AF97D44-707E-48DC-81CB-C9D8D7C9ED26}.Release|x64.ActiveCfg = Release|x64
- {7AF97D44-707E-48DC-81CB-C9D8D7C9ED26}.Release|x64.Build.0 = Release|x64
- {7AF97D44-707E-48DC-81CB-C9D8D7C9ED26}.Release|x86.ActiveCfg = Release|Win32
- {7AF97D44-707E-48DC-81CB-C9D8D7C9ED26}.Release|x86.Build.0 = Release|Win32
- {A4B0D971-3CD6-41C9-8AB2-055D25A33373}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
- {A4B0D971-3CD6-41C9-8AB2-055D25A33373}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
- {A4B0D971-3CD6-41C9-8AB2-055D25A33373}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
- {A4B0D971-3CD6-41C9-8AB2-055D25A33373}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
- {A4B0D971-3CD6-41C9-8AB2-055D25A33373}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
- {A4B0D971-3CD6-41C9-8AB2-055D25A33373}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
- {A4B0D971-3CD6-41C9-8AB2-055D25A33373}.Debug|ARM64.ActiveCfg = Debug|ARM64
- {A4B0D971-3CD6-41C9-8AB2-055D25A33373}.Debug|ARM64.Build.0 = Debug|ARM64
- {A4B0D971-3CD6-41C9-8AB2-055D25A33373}.Debug|x64.ActiveCfg = Debug|x64
- {A4B0D971-3CD6-41C9-8AB2-055D25A33373}.Debug|x64.Build.0 = Debug|x64
- {A4B0D971-3CD6-41C9-8AB2-055D25A33373}.Debug|x86.ActiveCfg = Debug|Win32
- {A4B0D971-3CD6-41C9-8AB2-055D25A33373}.Debug|x86.Build.0 = Debug|Win32
- {A4B0D971-3CD6-41C9-8AB2-055D25A33373}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
- {A4B0D971-3CD6-41C9-8AB2-055D25A33373}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
- {A4B0D971-3CD6-41C9-8AB2-055D25A33373}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
- {A4B0D971-3CD6-41C9-8AB2-055D25A33373}.Release.DLL|x64.Build.0 = Release.DLL|x64
- {A4B0D971-3CD6-41C9-8AB2-055D25A33373}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
- {A4B0D971-3CD6-41C9-8AB2-055D25A33373}.Release.DLL|x86.Build.0 = Release.DLL|Win32
- {A4B0D971-3CD6-41C9-8AB2-055D25A33373}.Release|ARM64.ActiveCfg = Release|ARM64
- {A4B0D971-3CD6-41C9-8AB2-055D25A33373}.Release|ARM64.Build.0 = Release|ARM64
- {A4B0D971-3CD6-41C9-8AB2-055D25A33373}.Release|x64.ActiveCfg = Release|x64
- {A4B0D971-3CD6-41C9-8AB2-055D25A33373}.Release|x64.Build.0 = Release|x64
- {A4B0D971-3CD6-41C9-8AB2-055D25A33373}.Release|x86.ActiveCfg = Release|Win32
- {A4B0D971-3CD6-41C9-8AB2-055D25A33373}.Release|x86.Build.0 = Release|Win32
- {15CDD310-6980-42A6-8082-3A6B7730D13F}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
- {15CDD310-6980-42A6-8082-3A6B7730D13F}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
- {15CDD310-6980-42A6-8082-3A6B7730D13F}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
- {15CDD310-6980-42A6-8082-3A6B7730D13F}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
- {15CDD310-6980-42A6-8082-3A6B7730D13F}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
- {15CDD310-6980-42A6-8082-3A6B7730D13F}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
- {15CDD310-6980-42A6-8082-3A6B7730D13F}.Debug|ARM64.ActiveCfg = Debug|ARM64
- {15CDD310-6980-42A6-8082-3A6B7730D13F}.Debug|ARM64.Build.0 = Debug|ARM64
- {15CDD310-6980-42A6-8082-3A6B7730D13F}.Debug|x64.ActiveCfg = Debug|x64
- {15CDD310-6980-42A6-8082-3A6B7730D13F}.Debug|x64.Build.0 = Debug|x64
- {15CDD310-6980-42A6-8082-3A6B7730D13F}.Debug|x86.ActiveCfg = Debug|Win32
- {15CDD310-6980-42A6-8082-3A6B7730D13F}.Debug|x86.Build.0 = Debug|Win32
- {15CDD310-6980-42A6-8082-3A6B7730D13F}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
- {15CDD310-6980-42A6-8082-3A6B7730D13F}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
- {15CDD310-6980-42A6-8082-3A6B7730D13F}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
- {15CDD310-6980-42A6-8082-3A6B7730D13F}.Release.DLL|x64.Build.0 = Release.DLL|x64
- {15CDD310-6980-42A6-8082-3A6B7730D13F}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
- {15CDD310-6980-42A6-8082-3A6B7730D13F}.Release.DLL|x86.Build.0 = Release.DLL|Win32
- {15CDD310-6980-42A6-8082-3A6B7730D13F}.Release|ARM64.ActiveCfg = Release|ARM64
- {15CDD310-6980-42A6-8082-3A6B7730D13F}.Release|ARM64.Build.0 = Release|ARM64
- {15CDD310-6980-42A6-8082-3A6B7730D13F}.Release|x64.ActiveCfg = Release|x64
- {15CDD310-6980-42A6-8082-3A6B7730D13F}.Release|x64.Build.0 = Release|x64
- {15CDD310-6980-42A6-8082-3A6B7730D13F}.Release|x86.ActiveCfg = Release|Win32
- {15CDD310-6980-42A6-8082-3A6B7730D13F}.Release|x86.Build.0 = Release|Win32
- {71DB4284-5B1C-4E86-9AF5-B91542D44A6F}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
- {71DB4284-5B1C-4E86-9AF5-B91542D44A6F}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
- {71DB4284-5B1C-4E86-9AF5-B91542D44A6F}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
- {71DB4284-5B1C-4E86-9AF5-B91542D44A6F}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
- {71DB4284-5B1C-4E86-9AF5-B91542D44A6F}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
- {71DB4284-5B1C-4E86-9AF5-B91542D44A6F}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
- {71DB4284-5B1C-4E86-9AF5-B91542D44A6F}.Debug|ARM64.ActiveCfg = Debug|ARM64
- {71DB4284-5B1C-4E86-9AF5-B91542D44A6F}.Debug|ARM64.Build.0 = Debug|ARM64
- {71DB4284-5B1C-4E86-9AF5-B91542D44A6F}.Debug|x64.ActiveCfg = Debug|x64
- {71DB4284-5B1C-4E86-9AF5-B91542D44A6F}.Debug|x64.Build.0 = Debug|x64
- {71DB4284-5B1C-4E86-9AF5-B91542D44A6F}.Debug|x86.ActiveCfg = Debug|Win32
- {71DB4284-5B1C-4E86-9AF5-B91542D44A6F}.Debug|x86.Build.0 = Debug|Win32
- {71DB4284-5B1C-4E86-9AF5-B91542D44A6F}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
- {71DB4284-5B1C-4E86-9AF5-B91542D44A6F}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
- {71DB4284-5B1C-4E86-9AF5-B91542D44A6F}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
- {71DB4284-5B1C-4E86-9AF5-B91542D44A6F}.Release.DLL|x64.Build.0 = Release.DLL|x64
- {71DB4284-5B1C-4E86-9AF5-B91542D44A6F}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
- {71DB4284-5B1C-4E86-9AF5-B91542D44A6F}.Release.DLL|x86.Build.0 = Release.DLL|Win32
- {71DB4284-5B1C-4E86-9AF5-B91542D44A6F}.Release|ARM64.ActiveCfg = Release|ARM64
- {71DB4284-5B1C-4E86-9AF5-B91542D44A6F}.Release|ARM64.Build.0 = Release|ARM64
- {71DB4284-5B1C-4E86-9AF5-B91542D44A6F}.Release|x64.ActiveCfg = Release|x64
- {71DB4284-5B1C-4E86-9AF5-B91542D44A6F}.Release|x64.Build.0 = Release|x64
- {71DB4284-5B1C-4E86-9AF5-B91542D44A6F}.Release|x86.ActiveCfg = Release|Win32
- {71DB4284-5B1C-4E86-9AF5-B91542D44A6F}.Release|x86.Build.0 = Release|Win32
- {4B39E5FC-0A96-4057-9AA5-8D5A52880DA7}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
- {4B39E5FC-0A96-4057-9AA5-8D5A52880DA7}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
- {4B39E5FC-0A96-4057-9AA5-8D5A52880DA7}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
- {4B39E5FC-0A96-4057-9AA5-8D5A52880DA7}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
- {4B39E5FC-0A96-4057-9AA5-8D5A52880DA7}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
- {4B39E5FC-0A96-4057-9AA5-8D5A52880DA7}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
- {4B39E5FC-0A96-4057-9AA5-8D5A52880DA7}.Debug|ARM64.ActiveCfg = Debug|ARM64
- {4B39E5FC-0A96-4057-9AA5-8D5A52880DA7}.Debug|ARM64.Build.0 = Debug|ARM64
- {4B39E5FC-0A96-4057-9AA5-8D5A52880DA7}.Debug|x64.ActiveCfg = Debug|x64
- {4B39E5FC-0A96-4057-9AA5-8D5A52880DA7}.Debug|x64.Build.0 = Debug|x64
- {4B39E5FC-0A96-4057-9AA5-8D5A52880DA7}.Debug|x86.ActiveCfg = Debug|Win32
- {4B39E5FC-0A96-4057-9AA5-8D5A52880DA7}.Debug|x86.Build.0 = Debug|Win32
- {4B39E5FC-0A96-4057-9AA5-8D5A52880DA7}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
- {4B39E5FC-0A96-4057-9AA5-8D5A52880DA7}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
- {4B39E5FC-0A96-4057-9AA5-8D5A52880DA7}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
- {4B39E5FC-0A96-4057-9AA5-8D5A52880DA7}.Release.DLL|x64.Build.0 = Release.DLL|x64
- {4B39E5FC-0A96-4057-9AA5-8D5A52880DA7}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
- {4B39E5FC-0A96-4057-9AA5-8D5A52880DA7}.Release.DLL|x86.Build.0 = Release.DLL|Win32
- {4B39E5FC-0A96-4057-9AA5-8D5A52880DA7}.Release|ARM64.ActiveCfg = Release|ARM64
- {4B39E5FC-0A96-4057-9AA5-8D5A52880DA7}.Release|ARM64.Build.0 = Release|ARM64
- {4B39E5FC-0A96-4057-9AA5-8D5A52880DA7}.Release|x64.ActiveCfg = Release|x64
- {4B39E5FC-0A96-4057-9AA5-8D5A52880DA7}.Release|x64.Build.0 = Release|x64
- {4B39E5FC-0A96-4057-9AA5-8D5A52880DA7}.Release|x86.ActiveCfg = Release|Win32
- {4B39E5FC-0A96-4057-9AA5-8D5A52880DA7}.Release|x86.Build.0 = Release|Win32
- {88DE5AD6-0074-4A5A-BE22-C840153E35D5}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
- {88DE5AD6-0074-4A5A-BE22-C840153E35D5}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
- {88DE5AD6-0074-4A5A-BE22-C840153E35D5}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
- {88DE5AD6-0074-4A5A-BE22-C840153E35D5}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
- {88DE5AD6-0074-4A5A-BE22-C840153E35D5}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
- {88DE5AD6-0074-4A5A-BE22-C840153E35D5}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
- {88DE5AD6-0074-4A5A-BE22-C840153E35D5}.Debug|ARM64.ActiveCfg = Debug|ARM64
- {88DE5AD6-0074-4A5A-BE22-C840153E35D5}.Debug|ARM64.Build.0 = Debug|ARM64
- {88DE5AD6-0074-4A5A-BE22-C840153E35D5}.Debug|x64.ActiveCfg = Debug|x64
- {88DE5AD6-0074-4A5A-BE22-C840153E35D5}.Debug|x64.Build.0 = Debug|x64
- {88DE5AD6-0074-4A5A-BE22-C840153E35D5}.Debug|x86.ActiveCfg = Debug|Win32
- {88DE5AD6-0074-4A5A-BE22-C840153E35D5}.Debug|x86.Build.0 = Debug|Win32
- {88DE5AD6-0074-4A5A-BE22-C840153E35D5}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
- {88DE5AD6-0074-4A5A-BE22-C840153E35D5}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
- {88DE5AD6-0074-4A5A-BE22-C840153E35D5}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
- {88DE5AD6-0074-4A5A-BE22-C840153E35D5}.Release.DLL|x64.Build.0 = Release.DLL|x64
- {88DE5AD6-0074-4A5A-BE22-C840153E35D5}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
- {88DE5AD6-0074-4A5A-BE22-C840153E35D5}.Release.DLL|x86.Build.0 = Release.DLL|Win32
- {88DE5AD6-0074-4A5A-BE22-C840153E35D5}.Release|ARM64.ActiveCfg = Release|ARM64
- {88DE5AD6-0074-4A5A-BE22-C840153E35D5}.Release|ARM64.Build.0 = Release|ARM64
- {88DE5AD6-0074-4A5A-BE22-C840153E35D5}.Release|x64.ActiveCfg = Release|x64
- {88DE5AD6-0074-4A5A-BE22-C840153E35D5}.Release|x64.Build.0 = Release|x64
- {88DE5AD6-0074-4A5A-BE22-C840153E35D5}.Release|x86.ActiveCfg = Release|Win32
- {88DE5AD6-0074-4A5A-BE22-C840153E35D5}.Release|x86.Build.0 = Release|Win32
- {A546E75A-5242-46E6-9A9E-6C91554EAB84}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
- {A546E75A-5242-46E6-9A9E-6C91554EAB84}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
- {A546E75A-5242-46E6-9A9E-6C91554EAB84}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
- {A546E75A-5242-46E6-9A9E-6C91554EAB84}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
- {A546E75A-5242-46E6-9A9E-6C91554EAB84}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
- {A546E75A-5242-46E6-9A9E-6C91554EAB84}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
- {A546E75A-5242-46E6-9A9E-6C91554EAB84}.Debug|ARM64.ActiveCfg = Debug|ARM64
- {A546E75A-5242-46E6-9A9E-6C91554EAB84}.Debug|ARM64.Build.0 = Debug|ARM64
- {A546E75A-5242-46E6-9A9E-6C91554EAB84}.Debug|x64.ActiveCfg = Debug|x64
- {A546E75A-5242-46E6-9A9E-6C91554EAB84}.Debug|x64.Build.0 = Debug|x64
- {A546E75A-5242-46E6-9A9E-6C91554EAB84}.Debug|x86.ActiveCfg = Debug|Win32
- {A546E75A-5242-46E6-9A9E-6C91554EAB84}.Debug|x86.Build.0 = Debug|Win32
- {A546E75A-5242-46E6-9A9E-6C91554EAB84}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
- {A546E75A-5242-46E6-9A9E-6C91554EAB84}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
- {A546E75A-5242-46E6-9A9E-6C91554EAB84}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
- {A546E75A-5242-46E6-9A9E-6C91554EAB84}.Release.DLL|x64.Build.0 = Release.DLL|x64
- {A546E75A-5242-46E6-9A9E-6C91554EAB84}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
- {A546E75A-5242-46E6-9A9E-6C91554EAB84}.Release.DLL|x86.Build.0 = Release.DLL|Win32
- {A546E75A-5242-46E6-9A9E-6C91554EAB84}.Release|ARM64.ActiveCfg = Release|ARM64
- {A546E75A-5242-46E6-9A9E-6C91554EAB84}.Release|ARM64.Build.0 = Release|ARM64
- {A546E75A-5242-46E6-9A9E-6C91554EAB84}.Release|x64.ActiveCfg = Release|x64
- {A546E75A-5242-46E6-9A9E-6C91554EAB84}.Release|x64.Build.0 = Release|x64
- {A546E75A-5242-46E6-9A9E-6C91554EAB84}.Release|x86.ActiveCfg = Release|Win32
- {A546E75A-5242-46E6-9A9E-6C91554EAB84}.Release|x86.Build.0 = Release|Win32
- {EFA150D4-F93B-4D7D-A69C-9E8B4663BECD}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
- {EFA150D4-F93B-4D7D-A69C-9E8B4663BECD}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
- {EFA150D4-F93B-4D7D-A69C-9E8B4663BECD}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
- {EFA150D4-F93B-4D7D-A69C-9E8B4663BECD}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
- {EFA150D4-F93B-4D7D-A69C-9E8B4663BECD}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
- {EFA150D4-F93B-4D7D-A69C-9E8B4663BECD}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
- {EFA150D4-F93B-4D7D-A69C-9E8B4663BECD}.Debug|ARM64.ActiveCfg = Debug|ARM64
- {EFA150D4-F93B-4D7D-A69C-9E8B4663BECD}.Debug|ARM64.Build.0 = Debug|ARM64
- {EFA150D4-F93B-4D7D-A69C-9E8B4663BECD}.Debug|x64.ActiveCfg = Debug|x64
- {EFA150D4-F93B-4D7D-A69C-9E8B4663BECD}.Debug|x64.Build.0 = Debug|x64
- {EFA150D4-F93B-4D7D-A69C-9E8B4663BECD}.Debug|x86.ActiveCfg = Debug|Win32
- {EFA150D4-F93B-4D7D-A69C-9E8B4663BECD}.Debug|x86.Build.0 = Debug|Win32
- {EFA150D4-F93B-4D7D-A69C-9E8B4663BECD}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
- {EFA150D4-F93B-4D7D-A69C-9E8B4663BECD}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
- {EFA150D4-F93B-4D7D-A69C-9E8B4663BECD}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
- {EFA150D4-F93B-4D7D-A69C-9E8B4663BECD}.Release.DLL|x64.Build.0 = Release.DLL|x64
- {EFA150D4-F93B-4D7D-A69C-9E8B4663BECD}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
- {EFA150D4-F93B-4D7D-A69C-9E8B4663BECD}.Release.DLL|x86.Build.0 = Release.DLL|Win32
- {EFA150D4-F93B-4D7D-A69C-9E8B4663BECD}.Release|ARM64.ActiveCfg = Release|ARM64
- {EFA150D4-F93B-4D7D-A69C-9E8B4663BECD}.Release|ARM64.Build.0 = Release|ARM64
- {EFA150D4-F93B-4D7D-A69C-9E8B4663BECD}.Release|x64.ActiveCfg = Release|x64
- {EFA150D4-F93B-4D7D-A69C-9E8B4663BECD}.Release|x64.Build.0 = Release|x64
- {EFA150D4-F93B-4D7D-A69C-9E8B4663BECD}.Release|x86.ActiveCfg = Release|Win32
- {EFA150D4-F93B-4D7D-A69C-9E8B4663BECD}.Release|x86.Build.0 = Release|Win32
- {DF25E545-00FF-4E64-844C-7DF98991F901}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
- {DF25E545-00FF-4E64-844C-7DF98991F901}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
- {DF25E545-00FF-4E64-844C-7DF98991F901}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
- {DF25E545-00FF-4E64-844C-7DF98991F901}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
- {DF25E545-00FF-4E64-844C-7DF98991F901}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
- {DF25E545-00FF-4E64-844C-7DF98991F901}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
- {DF25E545-00FF-4E64-844C-7DF98991F901}.Debug|ARM64.ActiveCfg = Debug|ARM64
- {DF25E545-00FF-4E64-844C-7DF98991F901}.Debug|ARM64.Build.0 = Debug|ARM64
- {DF25E545-00FF-4E64-844C-7DF98991F901}.Debug|x64.ActiveCfg = Debug|x64
- {DF25E545-00FF-4E64-844C-7DF98991F901}.Debug|x64.Build.0 = Debug|x64
- {DF25E545-00FF-4E64-844C-7DF98991F901}.Debug|x86.ActiveCfg = Debug|Win32
- {DF25E545-00FF-4E64-844C-7DF98991F901}.Debug|x86.Build.0 = Debug|Win32
- {DF25E545-00FF-4E64-844C-7DF98991F901}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
- {DF25E545-00FF-4E64-844C-7DF98991F901}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
- {DF25E545-00FF-4E64-844C-7DF98991F901}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
- {DF25E545-00FF-4E64-844C-7DF98991F901}.Release.DLL|x64.Build.0 = Release.DLL|x64
- {DF25E545-00FF-4E64-844C-7DF98991F901}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
- {DF25E545-00FF-4E64-844C-7DF98991F901}.Release.DLL|x86.Build.0 = Release.DLL|Win32
- {DF25E545-00FF-4E64-844C-7DF98991F901}.Release|ARM64.ActiveCfg = Release|ARM64
- {DF25E545-00FF-4E64-844C-7DF98991F901}.Release|ARM64.Build.0 = Release|ARM64
- {DF25E545-00FF-4E64-844C-7DF98991F901}.Release|x64.ActiveCfg = Release|x64
- {DF25E545-00FF-4E64-844C-7DF98991F901}.Release|x64.Build.0 = Release|x64
- {DF25E545-00FF-4E64-844C-7DF98991F901}.Release|x86.ActiveCfg = Release|Win32
- {DF25E545-00FF-4E64-844C-7DF98991F901}.Release|x86.Build.0 = Release|Win32
- {703BE7BA-5B99-4F70-806D-3A259F6A991E}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
- {703BE7BA-5B99-4F70-806D-3A259F6A991E}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
- {703BE7BA-5B99-4F70-806D-3A259F6A991E}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
- {703BE7BA-5B99-4F70-806D-3A259F6A991E}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
- {703BE7BA-5B99-4F70-806D-3A259F6A991E}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
- {703BE7BA-5B99-4F70-806D-3A259F6A991E}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
- {703BE7BA-5B99-4F70-806D-3A259F6A991E}.Debug|ARM64.ActiveCfg = Debug|ARM64
- {703BE7BA-5B99-4F70-806D-3A259F6A991E}.Debug|ARM64.Build.0 = Debug|ARM64
- {703BE7BA-5B99-4F70-806D-3A259F6A991E}.Debug|x64.ActiveCfg = Debug|x64
- {703BE7BA-5B99-4F70-806D-3A259F6A991E}.Debug|x64.Build.0 = Debug|x64
- {703BE7BA-5B99-4F70-806D-3A259F6A991E}.Debug|x86.ActiveCfg = Debug|Win32
- {703BE7BA-5B99-4F70-806D-3A259F6A991E}.Debug|x86.Build.0 = Debug|Win32
- {703BE7BA-5B99-4F70-806D-3A259F6A991E}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
- {703BE7BA-5B99-4F70-806D-3A259F6A991E}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
- {703BE7BA-5B99-4F70-806D-3A259F6A991E}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
- {703BE7BA-5B99-4F70-806D-3A259F6A991E}.Release.DLL|x64.Build.0 = Release.DLL|x64
- {703BE7BA-5B99-4F70-806D-3A259F6A991E}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
- {703BE7BA-5B99-4F70-806D-3A259F6A991E}.Release.DLL|x86.Build.0 = Release.DLL|Win32
- {703BE7BA-5B99-4F70-806D-3A259F6A991E}.Release|ARM64.ActiveCfg = Release|ARM64
- {703BE7BA-5B99-4F70-806D-3A259F6A991E}.Release|ARM64.Build.0 = Release|ARM64
- {703BE7BA-5B99-4F70-806D-3A259F6A991E}.Release|x64.ActiveCfg = Release|x64
- {703BE7BA-5B99-4F70-806D-3A259F6A991E}.Release|x64.Build.0 = Release|x64
- {703BE7BA-5B99-4F70-806D-3A259F6A991E}.Release|x86.ActiveCfg = Release|Win32
- {703BE7BA-5B99-4F70-806D-3A259F6A991E}.Release|x86.Build.0 = Release|Win32
- {FAFEE2F9-24B0-4AF1-B512-433E9590033F}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
- {FAFEE2F9-24B0-4AF1-B512-433E9590033F}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
- {FAFEE2F9-24B0-4AF1-B512-433E9590033F}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
- {FAFEE2F9-24B0-4AF1-B512-433E9590033F}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
- {FAFEE2F9-24B0-4AF1-B512-433E9590033F}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
- {FAFEE2F9-24B0-4AF1-B512-433E9590033F}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
- {FAFEE2F9-24B0-4AF1-B512-433E9590033F}.Debug|ARM64.ActiveCfg = Debug|ARM64
- {FAFEE2F9-24B0-4AF1-B512-433E9590033F}.Debug|ARM64.Build.0 = Debug|ARM64
- {FAFEE2F9-24B0-4AF1-B512-433E9590033F}.Debug|x64.ActiveCfg = Debug|x64
- {FAFEE2F9-24B0-4AF1-B512-433E9590033F}.Debug|x64.Build.0 = Debug|x64
- {FAFEE2F9-24B0-4AF1-B512-433E9590033F}.Debug|x86.ActiveCfg = Debug|Win32
- {FAFEE2F9-24B0-4AF1-B512-433E9590033F}.Debug|x86.Build.0 = Debug|Win32
- {FAFEE2F9-24B0-4AF1-B512-433E9590033F}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
- {FAFEE2F9-24B0-4AF1-B512-433E9590033F}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
- {FAFEE2F9-24B0-4AF1-B512-433E9590033F}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
- {FAFEE2F9-24B0-4AF1-B512-433E9590033F}.Release.DLL|x64.Build.0 = Release.DLL|x64
- {FAFEE2F9-24B0-4AF1-B512-433E9590033F}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
- {FAFEE2F9-24B0-4AF1-B512-433E9590033F}.Release.DLL|x86.Build.0 = Release.DLL|Win32
- {FAFEE2F9-24B0-4AF1-B512-433E9590033F}.Release|ARM64.ActiveCfg = Release|ARM64
- {FAFEE2F9-24B0-4AF1-B512-433E9590033F}.Release|ARM64.Build.0 = Release|ARM64
- {FAFEE2F9-24B0-4AF1-B512-433E9590033F}.Release|x64.ActiveCfg = Release|x64
- {FAFEE2F9-24B0-4AF1-B512-433E9590033F}.Release|x64.Build.0 = Release|x64
- {FAFEE2F9-24B0-4AF1-B512-433E9590033F}.Release|x86.ActiveCfg = Release|Win32
- {FAFEE2F9-24B0-4AF1-B512-433E9590033F}.Release|x86.Build.0 = Release|Win32
- {8245DAD9-D402-4D5C-8F45-32229CD3B263}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
- {8245DAD9-D402-4D5C-8F45-32229CD3B263}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
- {8245DAD9-D402-4D5C-8F45-32229CD3B263}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
- {8245DAD9-D402-4D5C-8F45-32229CD3B263}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
- {8245DAD9-D402-4D5C-8F45-32229CD3B263}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
- {8245DAD9-D402-4D5C-8F45-32229CD3B263}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
- {8245DAD9-D402-4D5C-8F45-32229CD3B263}.Debug|ARM64.ActiveCfg = Debug|ARM64
- {8245DAD9-D402-4D5C-8F45-32229CD3B263}.Debug|ARM64.Build.0 = Debug|ARM64
- {8245DAD9-D402-4D5C-8F45-32229CD3B263}.Debug|x64.ActiveCfg = Debug|x64
- {8245DAD9-D402-4D5C-8F45-32229CD3B263}.Debug|x64.Build.0 = Debug|x64
- {8245DAD9-D402-4D5C-8F45-32229CD3B263}.Debug|x86.ActiveCfg = Debug|Win32
- {8245DAD9-D402-4D5C-8F45-32229CD3B263}.Debug|x86.Build.0 = Debug|Win32
- {8245DAD9-D402-4D5C-8F45-32229CD3B263}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
- {8245DAD9-D402-4D5C-8F45-32229CD3B263}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
- {8245DAD9-D402-4D5C-8F45-32229CD3B263}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
- {8245DAD9-D402-4D5C-8F45-32229CD3B263}.Release.DLL|x64.Build.0 = Release.DLL|x64
- {8245DAD9-D402-4D5C-8F45-32229CD3B263}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
- {8245DAD9-D402-4D5C-8F45-32229CD3B263}.Release.DLL|x86.Build.0 = Release.DLL|Win32
- {8245DAD9-D402-4D5C-8F45-32229CD3B263}.Release|ARM64.ActiveCfg = Release|ARM64
- {8245DAD9-D402-4D5C-8F45-32229CD3B263}.Release|ARM64.Build.0 = Release|ARM64
- {8245DAD9-D402-4D5C-8F45-32229CD3B263}.Release|x64.ActiveCfg = Release|x64
- {8245DAD9-D402-4D5C-8F45-32229CD3B263}.Release|x64.Build.0 = Release|x64
- {8245DAD9-D402-4D5C-8F45-32229CD3B263}.Release|x86.ActiveCfg = Release|Win32
- {8245DAD9-D402-4D5C-8F45-32229CD3B263}.Release|x86.Build.0 = Release|Win32
- {41BBCC10-6FDE-48A1-B2E0-A0EC6A668629}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
- {41BBCC10-6FDE-48A1-B2E0-A0EC6A668629}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
- {41BBCC10-6FDE-48A1-B2E0-A0EC6A668629}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
- {41BBCC10-6FDE-48A1-B2E0-A0EC6A668629}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
- {41BBCC10-6FDE-48A1-B2E0-A0EC6A668629}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
- {41BBCC10-6FDE-48A1-B2E0-A0EC6A668629}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
- {41BBCC10-6FDE-48A1-B2E0-A0EC6A668629}.Debug|ARM64.ActiveCfg = Debug|ARM64
- {41BBCC10-6FDE-48A1-B2E0-A0EC6A668629}.Debug|ARM64.Build.0 = Debug|ARM64
- {41BBCC10-6FDE-48A1-B2E0-A0EC6A668629}.Debug|x64.ActiveCfg = Debug|x64
- {41BBCC10-6FDE-48A1-B2E0-A0EC6A668629}.Debug|x64.Build.0 = Debug|x64
- {41BBCC10-6FDE-48A1-B2E0-A0EC6A668629}.Debug|x86.ActiveCfg = Debug|Win32
- {41BBCC10-6FDE-48A1-B2E0-A0EC6A668629}.Debug|x86.Build.0 = Debug|Win32
- {41BBCC10-6FDE-48A1-B2E0-A0EC6A668629}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
- {41BBCC10-6FDE-48A1-B2E0-A0EC6A668629}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
- {41BBCC10-6FDE-48A1-B2E0-A0EC6A668629}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
- {41BBCC10-6FDE-48A1-B2E0-A0EC6A668629}.Release.DLL|x64.Build.0 = Release.DLL|x64
- {41BBCC10-6FDE-48A1-B2E0-A0EC6A668629}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
- {41BBCC10-6FDE-48A1-B2E0-A0EC6A668629}.Release.DLL|x86.Build.0 = Release.DLL|Win32
- {41BBCC10-6FDE-48A1-B2E0-A0EC6A668629}.Release|ARM64.ActiveCfg = Release|ARM64
- {41BBCC10-6FDE-48A1-B2E0-A0EC6A668629}.Release|ARM64.Build.0 = Release|ARM64
- {41BBCC10-6FDE-48A1-B2E0-A0EC6A668629}.Release|x64.ActiveCfg = Release|x64
- {41BBCC10-6FDE-48A1-B2E0-A0EC6A668629}.Release|x64.Build.0 = Release|x64
- {41BBCC10-6FDE-48A1-B2E0-A0EC6A668629}.Release|x86.ActiveCfg = Release|Win32
- {41BBCC10-6FDE-48A1-B2E0-A0EC6A668629}.Release|x86.Build.0 = Release|Win32
- {3A7FE53D-35F7-49DC-9C9A-A5204A53523F}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
- {3A7FE53D-35F7-49DC-9C9A-A5204A53523F}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
- {3A7FE53D-35F7-49DC-9C9A-A5204A53523F}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
- {3A7FE53D-35F7-49DC-9C9A-A5204A53523F}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
- {3A7FE53D-35F7-49DC-9C9A-A5204A53523F}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
- {3A7FE53D-35F7-49DC-9C9A-A5204A53523F}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
- {3A7FE53D-35F7-49DC-9C9A-A5204A53523F}.Debug|ARM64.ActiveCfg = Debug|ARM64
- {3A7FE53D-35F7-49DC-9C9A-A5204A53523F}.Debug|ARM64.Build.0 = Debug|ARM64
- {3A7FE53D-35F7-49DC-9C9A-A5204A53523F}.Debug|x64.ActiveCfg = Debug|x64
- {3A7FE53D-35F7-49DC-9C9A-A5204A53523F}.Debug|x64.Build.0 = Debug|x64
- {3A7FE53D-35F7-49DC-9C9A-A5204A53523F}.Debug|x86.ActiveCfg = Debug|Win32
- {3A7FE53D-35F7-49DC-9C9A-A5204A53523F}.Debug|x86.Build.0 = Debug|Win32
- {3A7FE53D-35F7-49DC-9C9A-A5204A53523F}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
- {3A7FE53D-35F7-49DC-9C9A-A5204A53523F}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
- {3A7FE53D-35F7-49DC-9C9A-A5204A53523F}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
- {3A7FE53D-35F7-49DC-9C9A-A5204A53523F}.Release.DLL|x64.Build.0 = Release.DLL|x64
- {3A7FE53D-35F7-49DC-9C9A-A5204A53523F}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
- {3A7FE53D-35F7-49DC-9C9A-A5204A53523F}.Release.DLL|x86.Build.0 = Release.DLL|Win32
- {3A7FE53D-35F7-49DC-9C9A-A5204A53523F}.Release|ARM64.ActiveCfg = Release|ARM64
- {3A7FE53D-35F7-49DC-9C9A-A5204A53523F}.Release|ARM64.Build.0 = Release|ARM64
- {3A7FE53D-35F7-49DC-9C9A-A5204A53523F}.Release|x64.ActiveCfg = Release|x64
- {3A7FE53D-35F7-49DC-9C9A-A5204A53523F}.Release|x64.Build.0 = Release|x64
- {3A7FE53D-35F7-49DC-9C9A-A5204A53523F}.Release|x86.ActiveCfg = Release|Win32
- {3A7FE53D-35F7-49DC-9C9A-A5204A53523F}.Release|x86.Build.0 = Release|Win32
- {CCA63A76-D9FC-4130-9F67-4D97F9770D53}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
- {CCA63A76-D9FC-4130-9F67-4D97F9770D53}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
- {CCA63A76-D9FC-4130-9F67-4D97F9770D53}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
- {CCA63A76-D9FC-4130-9F67-4D97F9770D53}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
- {CCA63A76-D9FC-4130-9F67-4D97F9770D53}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
- {CCA63A76-D9FC-4130-9F67-4D97F9770D53}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
- {CCA63A76-D9FC-4130-9F67-4D97F9770D53}.Debug|ARM64.ActiveCfg = Debug|ARM64
- {CCA63A76-D9FC-4130-9F67-4D97F9770D53}.Debug|ARM64.Build.0 = Debug|ARM64
- {CCA63A76-D9FC-4130-9F67-4D97F9770D53}.Debug|x64.ActiveCfg = Debug|x64
- {CCA63A76-D9FC-4130-9F67-4D97F9770D53}.Debug|x64.Build.0 = Debug|x64
- {CCA63A76-D9FC-4130-9F67-4D97F9770D53}.Debug|x86.ActiveCfg = Debug|Win32
- {CCA63A76-D9FC-4130-9F67-4D97F9770D53}.Debug|x86.Build.0 = Debug|Win32
- {CCA63A76-D9FC-4130-9F67-4D97F9770D53}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
- {CCA63A76-D9FC-4130-9F67-4D97F9770D53}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
- {CCA63A76-D9FC-4130-9F67-4D97F9770D53}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
- {CCA63A76-D9FC-4130-9F67-4D97F9770D53}.Release.DLL|x64.Build.0 = Release.DLL|x64
- {CCA63A76-D9FC-4130-9F67-4D97F9770D53}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
- {CCA63A76-D9FC-4130-9F67-4D97F9770D53}.Release.DLL|x86.Build.0 = Release.DLL|Win32
- {CCA63A76-D9FC-4130-9F67-4D97F9770D53}.Release|ARM64.ActiveCfg = Release|ARM64
- {CCA63A76-D9FC-4130-9F67-4D97F9770D53}.Release|ARM64.Build.0 = Release|ARM64
- {CCA63A76-D9FC-4130-9F67-4D97F9770D53}.Release|x64.ActiveCfg = Release|x64
- {CCA63A76-D9FC-4130-9F67-4D97F9770D53}.Release|x64.Build.0 = Release|x64
- {CCA63A76-D9FC-4130-9F67-4D97F9770D53}.Release|x86.ActiveCfg = Release|Win32
- {CCA63A76-D9FC-4130-9F67-4D97F9770D53}.Release|x86.Build.0 = Release|Win32
- {D3493FFE-8873-4C53-8F6C-74DEF78EA3C4}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
- {D3493FFE-8873-4C53-8F6C-74DEF78EA3C4}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
- {D3493FFE-8873-4C53-8F6C-74DEF78EA3C4}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
- {D3493FFE-8873-4C53-8F6C-74DEF78EA3C4}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
- {D3493FFE-8873-4C53-8F6C-74DEF78EA3C4}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
- {D3493FFE-8873-4C53-8F6C-74DEF78EA3C4}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
- {D3493FFE-8873-4C53-8F6C-74DEF78EA3C4}.Debug|ARM64.ActiveCfg = Debug|ARM64
- {D3493FFE-8873-4C53-8F6C-74DEF78EA3C4}.Debug|ARM64.Build.0 = Debug|ARM64
- {D3493FFE-8873-4C53-8F6C-74DEF78EA3C4}.Debug|x64.ActiveCfg = Debug|x64
- {D3493FFE-8873-4C53-8F6C-74DEF78EA3C4}.Debug|x64.Build.0 = Debug|x64
- {D3493FFE-8873-4C53-8F6C-74DEF78EA3C4}.Debug|x86.ActiveCfg = Debug|Win32
- {D3493FFE-8873-4C53-8F6C-74DEF78EA3C4}.Debug|x86.Build.0 = Debug|Win32
- {D3493FFE-8873-4C53-8F6C-74DEF78EA3C4}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
- {D3493FFE-8873-4C53-8F6C-74DEF78EA3C4}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
- {D3493FFE-8873-4C53-8F6C-74DEF78EA3C4}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
- {D3493FFE-8873-4C53-8F6C-74DEF78EA3C4}.Release.DLL|x64.Build.0 = Release.DLL|x64
- {D3493FFE-8873-4C53-8F6C-74DEF78EA3C4}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
- {D3493FFE-8873-4C53-8F6C-74DEF78EA3C4}.Release.DLL|x86.Build.0 = Release.DLL|Win32
- {D3493FFE-8873-4C53-8F6C-74DEF78EA3C4}.Release|ARM64.ActiveCfg = Release|ARM64
- {D3493FFE-8873-4C53-8F6C-74DEF78EA3C4}.Release|ARM64.Build.0 = Release|ARM64
- {D3493FFE-8873-4C53-8F6C-74DEF78EA3C4}.Release|x64.ActiveCfg = Release|x64
- {D3493FFE-8873-4C53-8F6C-74DEF78EA3C4}.Release|x64.Build.0 = Release|x64
- {D3493FFE-8873-4C53-8F6C-74DEF78EA3C4}.Release|x86.ActiveCfg = Release|Win32
- {D3493FFE-8873-4C53-8F6C-74DEF78EA3C4}.Release|x86.Build.0 = Release|Win32
- {3384C257-3CFE-4A8F-838C-19DAC5C955DA}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
- {3384C257-3CFE-4A8F-838C-19DAC5C955DA}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
- {3384C257-3CFE-4A8F-838C-19DAC5C955DA}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
- {3384C257-3CFE-4A8F-838C-19DAC5C955DA}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
- {3384C257-3CFE-4A8F-838C-19DAC5C955DA}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
- {3384C257-3CFE-4A8F-838C-19DAC5C955DA}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
- {3384C257-3CFE-4A8F-838C-19DAC5C955DA}.Debug|ARM64.ActiveCfg = Debug|ARM64
- {3384C257-3CFE-4A8F-838C-19DAC5C955DA}.Debug|ARM64.Build.0 = Debug|ARM64
- {3384C257-3CFE-4A8F-838C-19DAC5C955DA}.Debug|x64.ActiveCfg = Debug|x64
- {3384C257-3CFE-4A8F-838C-19DAC5C955DA}.Debug|x64.Build.0 = Debug|x64
- {3384C257-3CFE-4A8F-838C-19DAC5C955DA}.Debug|x86.ActiveCfg = Debug|Win32
- {3384C257-3CFE-4A8F-838C-19DAC5C955DA}.Debug|x86.Build.0 = Debug|Win32
- {3384C257-3CFE-4A8F-838C-19DAC5C955DA}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
- {3384C257-3CFE-4A8F-838C-19DAC5C955DA}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
- {3384C257-3CFE-4A8F-838C-19DAC5C955DA}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
- {3384C257-3CFE-4A8F-838C-19DAC5C955DA}.Release.DLL|x64.Build.0 = Release.DLL|x64
- {3384C257-3CFE-4A8F-838C-19DAC5C955DA}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
- {3384C257-3CFE-4A8F-838C-19DAC5C955DA}.Release.DLL|x86.Build.0 = Release.DLL|Win32
- {3384C257-3CFE-4A8F-838C-19DAC5C955DA}.Release|ARM64.ActiveCfg = Release|ARM64
- {3384C257-3CFE-4A8F-838C-19DAC5C955DA}.Release|ARM64.Build.0 = Release|ARM64
- {3384C257-3CFE-4A8F-838C-19DAC5C955DA}.Release|x64.ActiveCfg = Release|x64
- {3384C257-3CFE-4A8F-838C-19DAC5C955DA}.Release|x64.Build.0 = Release|x64
- {3384C257-3CFE-4A8F-838C-19DAC5C955DA}.Release|x86.ActiveCfg = Release|Win32
- {3384C257-3CFE-4A8F-838C-19DAC5C955DA}.Release|x86.Build.0 = Release|Win32
- {2B140378-125F-4DE9-AC37-2CC1B73D7254}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
- {2B140378-125F-4DE9-AC37-2CC1B73D7254}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
- {2B140378-125F-4DE9-AC37-2CC1B73D7254}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
- {2B140378-125F-4DE9-AC37-2CC1B73D7254}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
- {2B140378-125F-4DE9-AC37-2CC1B73D7254}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
- {2B140378-125F-4DE9-AC37-2CC1B73D7254}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
- {2B140378-125F-4DE9-AC37-2CC1B73D7254}.Debug|ARM64.ActiveCfg = Debug|ARM64
- {2B140378-125F-4DE9-AC37-2CC1B73D7254}.Debug|ARM64.Build.0 = Debug|ARM64
- {2B140378-125F-4DE9-AC37-2CC1B73D7254}.Debug|x64.ActiveCfg = Debug|x64
- {2B140378-125F-4DE9-AC37-2CC1B73D7254}.Debug|x64.Build.0 = Debug|x64
- {2B140378-125F-4DE9-AC37-2CC1B73D7254}.Debug|x86.ActiveCfg = Debug|Win32
- {2B140378-125F-4DE9-AC37-2CC1B73D7254}.Debug|x86.Build.0 = Debug|Win32
- {2B140378-125F-4DE9-AC37-2CC1B73D7254}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
- {2B140378-125F-4DE9-AC37-2CC1B73D7254}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
- {2B140378-125F-4DE9-AC37-2CC1B73D7254}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
- {2B140378-125F-4DE9-AC37-2CC1B73D7254}.Release.DLL|x64.Build.0 = Release.DLL|x64
- {2B140378-125F-4DE9-AC37-2CC1B73D7254}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
- {2B140378-125F-4DE9-AC37-2CC1B73D7254}.Release.DLL|x86.Build.0 = Release.DLL|Win32
- {2B140378-125F-4DE9-AC37-2CC1B73D7254}.Release|ARM64.ActiveCfg = Release|ARM64
- {2B140378-125F-4DE9-AC37-2CC1B73D7254}.Release|ARM64.Build.0 = Release|ARM64
- {2B140378-125F-4DE9-AC37-2CC1B73D7254}.Release|x64.ActiveCfg = Release|x64
- {2B140378-125F-4DE9-AC37-2CC1B73D7254}.Release|x64.Build.0 = Release|x64
- {2B140378-125F-4DE9-AC37-2CC1B73D7254}.Release|x86.ActiveCfg = Release|Win32
- {2B140378-125F-4DE9-AC37-2CC1B73D7254}.Release|x86.Build.0 = Release|Win32
- {F4C55B99-E1C5-496A-8AC2-40188C38F4F6}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
- {F4C55B99-E1C5-496A-8AC2-40188C38F4F6}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
- {F4C55B99-E1C5-496A-8AC2-40188C38F4F6}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
- {F4C55B99-E1C5-496A-8AC2-40188C38F4F6}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
- {F4C55B99-E1C5-496A-8AC2-40188C38F4F6}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
- {F4C55B99-E1C5-496A-8AC2-40188C38F4F6}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
- {F4C55B99-E1C5-496A-8AC2-40188C38F4F6}.Debug|ARM64.ActiveCfg = Debug|ARM64
- {F4C55B99-E1C5-496A-8AC2-40188C38F4F6}.Debug|ARM64.Build.0 = Debug|ARM64
- {F4C55B99-E1C5-496A-8AC2-40188C38F4F6}.Debug|x64.ActiveCfg = Debug|x64
- {F4C55B99-E1C5-496A-8AC2-40188C38F4F6}.Debug|x64.Build.0 = Debug|x64
- {F4C55B99-E1C5-496A-8AC2-40188C38F4F6}.Debug|x86.ActiveCfg = Debug|Win32
- {F4C55B99-E1C5-496A-8AC2-40188C38F4F6}.Debug|x86.Build.0 = Debug|Win32
- {F4C55B99-E1C5-496A-8AC2-40188C38F4F6}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
- {F4C55B99-E1C5-496A-8AC2-40188C38F4F6}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
- {F4C55B99-E1C5-496A-8AC2-40188C38F4F6}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
- {F4C55B99-E1C5-496A-8AC2-40188C38F4F6}.Release.DLL|x64.Build.0 = Release.DLL|x64
- {F4C55B99-E1C5-496A-8AC2-40188C38F4F6}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
- {F4C55B99-E1C5-496A-8AC2-40188C38F4F6}.Release.DLL|x86.Build.0 = Release.DLL|Win32
- {F4C55B99-E1C5-496A-8AC2-40188C38F4F6}.Release|ARM64.ActiveCfg = Release|ARM64
- {F4C55B99-E1C5-496A-8AC2-40188C38F4F6}.Release|ARM64.Build.0 = Release|ARM64
- {F4C55B99-E1C5-496A-8AC2-40188C38F4F6}.Release|x64.ActiveCfg = Release|x64
- {F4C55B99-E1C5-496A-8AC2-40188C38F4F6}.Release|x64.Build.0 = Release|x64
- {F4C55B99-E1C5-496A-8AC2-40188C38F4F6}.Release|x86.ActiveCfg = Release|Win32
- {F4C55B99-E1C5-496A-8AC2-40188C38F4F6}.Release|x86.Build.0 = Release|Win32
- {2AA91EED-2D32-4B09-84A3-53D41EED1005}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
- {2AA91EED-2D32-4B09-84A3-53D41EED1005}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
- {2AA91EED-2D32-4B09-84A3-53D41EED1005}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
- {2AA91EED-2D32-4B09-84A3-53D41EED1005}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
- {2AA91EED-2D32-4B09-84A3-53D41EED1005}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
- {2AA91EED-2D32-4B09-84A3-53D41EED1005}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
- {2AA91EED-2D32-4B09-84A3-53D41EED1005}.Debug|ARM64.ActiveCfg = Debug|ARM64
- {2AA91EED-2D32-4B09-84A3-53D41EED1005}.Debug|ARM64.Build.0 = Debug|ARM64
- {2AA91EED-2D32-4B09-84A3-53D41EED1005}.Debug|x64.ActiveCfg = Debug|x64
- {2AA91EED-2D32-4B09-84A3-53D41EED1005}.Debug|x64.Build.0 = Debug|x64
- {2AA91EED-2D32-4B09-84A3-53D41EED1005}.Debug|x86.ActiveCfg = Debug|Win32
- {2AA91EED-2D32-4B09-84A3-53D41EED1005}.Debug|x86.Build.0 = Debug|Win32
- {2AA91EED-2D32-4B09-84A3-53D41EED1005}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
- {2AA91EED-2D32-4B09-84A3-53D41EED1005}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
- {2AA91EED-2D32-4B09-84A3-53D41EED1005}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
- {2AA91EED-2D32-4B09-84A3-53D41EED1005}.Release.DLL|x64.Build.0 = Release.DLL|x64
- {2AA91EED-2D32-4B09-84A3-53D41EED1005}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
- {2AA91EED-2D32-4B09-84A3-53D41EED1005}.Release.DLL|x86.Build.0 = Release.DLL|Win32
- {2AA91EED-2D32-4B09-84A3-53D41EED1005}.Release|ARM64.ActiveCfg = Release|ARM64
- {2AA91EED-2D32-4B09-84A3-53D41EED1005}.Release|ARM64.Build.0 = Release|ARM64
- {2AA91EED-2D32-4B09-84A3-53D41EED1005}.Release|x64.ActiveCfg = Release|x64
- {2AA91EED-2D32-4B09-84A3-53D41EED1005}.Release|x64.Build.0 = Release|x64
- {2AA91EED-2D32-4B09-84A3-53D41EED1005}.Release|x86.ActiveCfg = Release|Win32
- {2AA91EED-2D32-4B09-84A3-53D41EED1005}.Release|x86.Build.0 = Release|Win32
- {EC0910F6-8D66-4509-BF57-A5EE7AE9485F}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
- {EC0910F6-8D66-4509-BF57-A5EE7AE9485F}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
- {EC0910F6-8D66-4509-BF57-A5EE7AE9485F}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
- {EC0910F6-8D66-4509-BF57-A5EE7AE9485F}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
- {EC0910F6-8D66-4509-BF57-A5EE7AE9485F}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
- {EC0910F6-8D66-4509-BF57-A5EE7AE9485F}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
- {EC0910F6-8D66-4509-BF57-A5EE7AE9485F}.Debug|ARM64.ActiveCfg = Debug|ARM64
- {EC0910F6-8D66-4509-BF57-A5EE7AE9485F}.Debug|ARM64.Build.0 = Debug|ARM64
- {EC0910F6-8D66-4509-BF57-A5EE7AE9485F}.Debug|x64.ActiveCfg = Debug|x64
- {EC0910F6-8D66-4509-BF57-A5EE7AE9485F}.Debug|x64.Build.0 = Debug|x64
- {EC0910F6-8D66-4509-BF57-A5EE7AE9485F}.Debug|x86.ActiveCfg = Debug|Win32
- {EC0910F6-8D66-4509-BF57-A5EE7AE9485F}.Debug|x86.Build.0 = Debug|Win32
- {EC0910F6-8D66-4509-BF57-A5EE7AE9485F}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
- {EC0910F6-8D66-4509-BF57-A5EE7AE9485F}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
- {EC0910F6-8D66-4509-BF57-A5EE7AE9485F}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
- {EC0910F6-8D66-4509-BF57-A5EE7AE9485F}.Release.DLL|x64.Build.0 = Release.DLL|x64
- {EC0910F6-8D66-4509-BF57-A5EE7AE9485F}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
- {EC0910F6-8D66-4509-BF57-A5EE7AE9485F}.Release.DLL|x86.Build.0 = Release.DLL|Win32
- {EC0910F6-8D66-4509-BF57-A5EE7AE9485F}.Release|ARM64.ActiveCfg = Release|ARM64
- {EC0910F6-8D66-4509-BF57-A5EE7AE9485F}.Release|ARM64.Build.0 = Release|ARM64
- {EC0910F6-8D66-4509-BF57-A5EE7AE9485F}.Release|x64.ActiveCfg = Release|x64
- {EC0910F6-8D66-4509-BF57-A5EE7AE9485F}.Release|x64.Build.0 = Release|x64
- {EC0910F6-8D66-4509-BF57-A5EE7AE9485F}.Release|x86.ActiveCfg = Release|Win32
- {EC0910F6-8D66-4509-BF57-A5EE7AE9485F}.Release|x86.Build.0 = Release|Win32
- {921391C6-7626-4212-9928-BC82BC785461}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
- {921391C6-7626-4212-9928-BC82BC785461}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
- {921391C6-7626-4212-9928-BC82BC785461}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
- {921391C6-7626-4212-9928-BC82BC785461}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
- {921391C6-7626-4212-9928-BC82BC785461}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
- {921391C6-7626-4212-9928-BC82BC785461}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
- {921391C6-7626-4212-9928-BC82BC785461}.Debug|ARM64.ActiveCfg = Debug|ARM64
- {921391C6-7626-4212-9928-BC82BC785461}.Debug|ARM64.Build.0 = Debug|ARM64
- {921391C6-7626-4212-9928-BC82BC785461}.Debug|x64.ActiveCfg = Debug|x64
- {921391C6-7626-4212-9928-BC82BC785461}.Debug|x64.Build.0 = Debug|x64
- {921391C6-7626-4212-9928-BC82BC785461}.Debug|x86.ActiveCfg = Debug|Win32
- {921391C6-7626-4212-9928-BC82BC785461}.Debug|x86.Build.0 = Debug|Win32
- {921391C6-7626-4212-9928-BC82BC785461}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
- {921391C6-7626-4212-9928-BC82BC785461}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
- {921391C6-7626-4212-9928-BC82BC785461}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
- {921391C6-7626-4212-9928-BC82BC785461}.Release.DLL|x64.Build.0 = Release.DLL|x64
- {921391C6-7626-4212-9928-BC82BC785461}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
- {921391C6-7626-4212-9928-BC82BC785461}.Release.DLL|x86.Build.0 = Release.DLL|Win32
- {921391C6-7626-4212-9928-BC82BC785461}.Release|ARM64.ActiveCfg = Release|ARM64
- {921391C6-7626-4212-9928-BC82BC785461}.Release|ARM64.Build.0 = Release|ARM64
- {921391C6-7626-4212-9928-BC82BC785461}.Release|x64.ActiveCfg = Release|x64
- {921391C6-7626-4212-9928-BC82BC785461}.Release|x64.Build.0 = Release|x64
- {921391C6-7626-4212-9928-BC82BC785461}.Release|x86.ActiveCfg = Release|Win32
- {921391C6-7626-4212-9928-BC82BC785461}.Release|x86.Build.0 = Release|Win32
- {6B8C5711-6AB4-4023-9FDD-E9D976E8D18F}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
- {6B8C5711-6AB4-4023-9FDD-E9D976E8D18F}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
- {6B8C5711-6AB4-4023-9FDD-E9D976E8D18F}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
- {6B8C5711-6AB4-4023-9FDD-E9D976E8D18F}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
- {6B8C5711-6AB4-4023-9FDD-E9D976E8D18F}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
- {6B8C5711-6AB4-4023-9FDD-E9D976E8D18F}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
- {6B8C5711-6AB4-4023-9FDD-E9D976E8D18F}.Debug|ARM64.ActiveCfg = Debug|ARM64
- {6B8C5711-6AB4-4023-9FDD-E9D976E8D18F}.Debug|ARM64.Build.0 = Debug|ARM64
- {6B8C5711-6AB4-4023-9FDD-E9D976E8D18F}.Debug|x64.ActiveCfg = Debug|x64
- {6B8C5711-6AB4-4023-9FDD-E9D976E8D18F}.Debug|x64.Build.0 = Debug|x64
- {6B8C5711-6AB4-4023-9FDD-E9D976E8D18F}.Debug|x86.ActiveCfg = Debug|Win32
- {6B8C5711-6AB4-4023-9FDD-E9D976E8D18F}.Debug|x86.Build.0 = Debug|Win32
- {6B8C5711-6AB4-4023-9FDD-E9D976E8D18F}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
- {6B8C5711-6AB4-4023-9FDD-E9D976E8D18F}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
- {6B8C5711-6AB4-4023-9FDD-E9D976E8D18F}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
- {6B8C5711-6AB4-4023-9FDD-E9D976E8D18F}.Release.DLL|x64.Build.0 = Release.DLL|x64
- {6B8C5711-6AB4-4023-9FDD-E9D976E8D18F}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
- {6B8C5711-6AB4-4023-9FDD-E9D976E8D18F}.Release.DLL|x86.Build.0 = Release.DLL|Win32
- {6B8C5711-6AB4-4023-9FDD-E9D976E8D18F}.Release|ARM64.ActiveCfg = Release|ARM64
- {6B8C5711-6AB4-4023-9FDD-E9D976E8D18F}.Release|ARM64.Build.0 = Release|ARM64
- {6B8C5711-6AB4-4023-9FDD-E9D976E8D18F}.Release|x64.ActiveCfg = Release|x64
- {6B8C5711-6AB4-4023-9FDD-E9D976E8D18F}.Release|x64.Build.0 = Release|x64
- {6B8C5711-6AB4-4023-9FDD-E9D976E8D18F}.Release|x86.ActiveCfg = Release|Win32
- {6B8C5711-6AB4-4023-9FDD-E9D976E8D18F}.Release|x86.Build.0 = Release|Win32
- {4DF6D5E4-6796-4257-B466-BCD62DEBBCF8}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
- {4DF6D5E4-6796-4257-B466-BCD62DEBBCF8}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
- {4DF6D5E4-6796-4257-B466-BCD62DEBBCF8}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
- {4DF6D5E4-6796-4257-B466-BCD62DEBBCF8}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
- {4DF6D5E4-6796-4257-B466-BCD62DEBBCF8}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
- {4DF6D5E4-6796-4257-B466-BCD62DEBBCF8}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
- {4DF6D5E4-6796-4257-B466-BCD62DEBBCF8}.Debug|ARM64.ActiveCfg = Debug|ARM64
- {4DF6D5E4-6796-4257-B466-BCD62DEBBCF8}.Debug|ARM64.Build.0 = Debug|ARM64
- {4DF6D5E4-6796-4257-B466-BCD62DEBBCF8}.Debug|x64.ActiveCfg = Debug|x64
- {4DF6D5E4-6796-4257-B466-BCD62DEBBCF8}.Debug|x64.Build.0 = Debug|x64
- {4DF6D5E4-6796-4257-B466-BCD62DEBBCF8}.Debug|x86.ActiveCfg = Debug|Win32
- {4DF6D5E4-6796-4257-B466-BCD62DEBBCF8}.Debug|x86.Build.0 = Debug|Win32
- {4DF6D5E4-6796-4257-B466-BCD62DEBBCF8}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
- {4DF6D5E4-6796-4257-B466-BCD62DEBBCF8}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
- {4DF6D5E4-6796-4257-B466-BCD62DEBBCF8}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
- {4DF6D5E4-6796-4257-B466-BCD62DEBBCF8}.Release.DLL|x64.Build.0 = Release.DLL|x64
- {4DF6D5E4-6796-4257-B466-BCD62DEBBCF8}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
- {4DF6D5E4-6796-4257-B466-BCD62DEBBCF8}.Release.DLL|x86.Build.0 = Release.DLL|Win32
- {4DF6D5E4-6796-4257-B466-BCD62DEBBCF8}.Release|ARM64.ActiveCfg = Release|ARM64
- {4DF6D5E4-6796-4257-B466-BCD62DEBBCF8}.Release|ARM64.Build.0 = Release|ARM64
- {4DF6D5E4-6796-4257-B466-BCD62DEBBCF8}.Release|x64.ActiveCfg = Release|x64
- {4DF6D5E4-6796-4257-B466-BCD62DEBBCF8}.Release|x64.Build.0 = Release|x64
- {4DF6D5E4-6796-4257-B466-BCD62DEBBCF8}.Release|x86.ActiveCfg = Release|Win32
- {4DF6D5E4-6796-4257-B466-BCD62DEBBCF8}.Release|x86.Build.0 = Release|Win32
- {C54703BF-D68A-480D-BE27-49B62E45D582}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
- {C54703BF-D68A-480D-BE27-49B62E45D582}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
- {C54703BF-D68A-480D-BE27-49B62E45D582}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
- {C54703BF-D68A-480D-BE27-49B62E45D582}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
- {C54703BF-D68A-480D-BE27-49B62E45D582}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
- {C54703BF-D68A-480D-BE27-49B62E45D582}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
- {C54703BF-D68A-480D-BE27-49B62E45D582}.Debug|ARM64.ActiveCfg = Debug|ARM64
- {C54703BF-D68A-480D-BE27-49B62E45D582}.Debug|ARM64.Build.0 = Debug|ARM64
- {C54703BF-D68A-480D-BE27-49B62E45D582}.Debug|x64.ActiveCfg = Debug|x64
- {C54703BF-D68A-480D-BE27-49B62E45D582}.Debug|x64.Build.0 = Debug|x64
- {C54703BF-D68A-480D-BE27-49B62E45D582}.Debug|x86.ActiveCfg = Debug|Win32
- {C54703BF-D68A-480D-BE27-49B62E45D582}.Debug|x86.Build.0 = Debug|Win32
- {C54703BF-D68A-480D-BE27-49B62E45D582}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
- {C54703BF-D68A-480D-BE27-49B62E45D582}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
- {C54703BF-D68A-480D-BE27-49B62E45D582}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
- {C54703BF-D68A-480D-BE27-49B62E45D582}.Release.DLL|x64.Build.0 = Release.DLL|x64
- {C54703BF-D68A-480D-BE27-49B62E45D582}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
- {C54703BF-D68A-480D-BE27-49B62E45D582}.Release.DLL|x86.Build.0 = Release.DLL|Win32
- {C54703BF-D68A-480D-BE27-49B62E45D582}.Release|ARM64.ActiveCfg = Release|ARM64
- {C54703BF-D68A-480D-BE27-49B62E45D582}.Release|ARM64.Build.0 = Release|ARM64
- {C54703BF-D68A-480D-BE27-49B62E45D582}.Release|x64.ActiveCfg = Release|x64
- {C54703BF-D68A-480D-BE27-49B62E45D582}.Release|x64.Build.0 = Release|x64
- {C54703BF-D68A-480D-BE27-49B62E45D582}.Release|x86.ActiveCfg = Release|Win32
- {C54703BF-D68A-480D-BE27-49B62E45D582}.Release|x86.Build.0 = Release|Win32
- {9CD8BCAD-F212-4BCC-BA98-899743CE3279}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
- {9CD8BCAD-F212-4BCC-BA98-899743CE3279}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
- {9CD8BCAD-F212-4BCC-BA98-899743CE3279}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
- {9CD8BCAD-F212-4BCC-BA98-899743CE3279}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
- {9CD8BCAD-F212-4BCC-BA98-899743CE3279}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
- {9CD8BCAD-F212-4BCC-BA98-899743CE3279}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
- {9CD8BCAD-F212-4BCC-BA98-899743CE3279}.Debug|ARM64.ActiveCfg = Debug|ARM64
- {9CD8BCAD-F212-4BCC-BA98-899743CE3279}.Debug|ARM64.Build.0 = Debug|ARM64
- {9CD8BCAD-F212-4BCC-BA98-899743CE3279}.Debug|x64.ActiveCfg = Debug|x64
- {9CD8BCAD-F212-4BCC-BA98-899743CE3279}.Debug|x64.Build.0 = Debug|x64
- {9CD8BCAD-F212-4BCC-BA98-899743CE3279}.Debug|x86.ActiveCfg = Debug|Win32
- {9CD8BCAD-F212-4BCC-BA98-899743CE3279}.Debug|x86.Build.0 = Debug|Win32
- {9CD8BCAD-F212-4BCC-BA98-899743CE3279}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
- {9CD8BCAD-F212-4BCC-BA98-899743CE3279}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
- {9CD8BCAD-F212-4BCC-BA98-899743CE3279}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
- {9CD8BCAD-F212-4BCC-BA98-899743CE3279}.Release.DLL|x64.Build.0 = Release.DLL|x64
- {9CD8BCAD-F212-4BCC-BA98-899743CE3279}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
- {9CD8BCAD-F212-4BCC-BA98-899743CE3279}.Release.DLL|x86.Build.0 = Release.DLL|Win32
- {9CD8BCAD-F212-4BCC-BA98-899743CE3279}.Release|ARM64.ActiveCfg = Release|ARM64
- {9CD8BCAD-F212-4BCC-BA98-899743CE3279}.Release|ARM64.Build.0 = Release|ARM64
- {9CD8BCAD-F212-4BCC-BA98-899743CE3279}.Release|x64.ActiveCfg = Release|x64
- {9CD8BCAD-F212-4BCC-BA98-899743CE3279}.Release|x64.Build.0 = Release|x64
- {9CD8BCAD-F212-4BCC-BA98-899743CE3279}.Release|x86.ActiveCfg = Release|Win32
- {9CD8BCAD-F212-4BCC-BA98-899743CE3279}.Release|x86.Build.0 = Release|Win32
- {0981CA28-E4A5-4DF1-987F-A41D09131EFC}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
- {0981CA28-E4A5-4DF1-987F-A41D09131EFC}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
- {0981CA28-E4A5-4DF1-987F-A41D09131EFC}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
- {0981CA28-E4A5-4DF1-987F-A41D09131EFC}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
- {0981CA28-E4A5-4DF1-987F-A41D09131EFC}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
- {0981CA28-E4A5-4DF1-987F-A41D09131EFC}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
- {0981CA28-E4A5-4DF1-987F-A41D09131EFC}.Debug|ARM64.ActiveCfg = Debug|ARM64
- {0981CA28-E4A5-4DF1-987F-A41D09131EFC}.Debug|ARM64.Build.0 = Debug|ARM64
- {0981CA28-E4A5-4DF1-987F-A41D09131EFC}.Debug|x64.ActiveCfg = Debug|x64
- {0981CA28-E4A5-4DF1-987F-A41D09131EFC}.Debug|x64.Build.0 = Debug|x64
- {0981CA28-E4A5-4DF1-987F-A41D09131EFC}.Debug|x86.ActiveCfg = Debug|Win32
- {0981CA28-E4A5-4DF1-987F-A41D09131EFC}.Debug|x86.Build.0 = Debug|Win32
- {0981CA28-E4A5-4DF1-987F-A41D09131EFC}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
- {0981CA28-E4A5-4DF1-987F-A41D09131EFC}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
- {0981CA28-E4A5-4DF1-987F-A41D09131EFC}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
- {0981CA28-E4A5-4DF1-987F-A41D09131EFC}.Release.DLL|x64.Build.0 = Release.DLL|x64
- {0981CA28-E4A5-4DF1-987F-A41D09131EFC}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
- {0981CA28-E4A5-4DF1-987F-A41D09131EFC}.Release.DLL|x86.Build.0 = Release.DLL|Win32
- {0981CA28-E4A5-4DF1-987F-A41D09131EFC}.Release|ARM64.ActiveCfg = Release|ARM64
- {0981CA28-E4A5-4DF1-987F-A41D09131EFC}.Release|ARM64.Build.0 = Release|ARM64
- {0981CA28-E4A5-4DF1-987F-A41D09131EFC}.Release|x64.ActiveCfg = Release|x64
- {0981CA28-E4A5-4DF1-987F-A41D09131EFC}.Release|x64.Build.0 = Release|x64
- {0981CA28-E4A5-4DF1-987F-A41D09131EFC}.Release|x86.ActiveCfg = Release|Win32
- {0981CA28-E4A5-4DF1-987F-A41D09131EFC}.Release|x86.Build.0 = Release|Win32
- {6B1A933E-71B8-4C1F-9E79-02D98830E671}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
- {6B1A933E-71B8-4C1F-9E79-02D98830E671}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
- {6B1A933E-71B8-4C1F-9E79-02D98830E671}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
- {6B1A933E-71B8-4C1F-9E79-02D98830E671}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
- {6B1A933E-71B8-4C1F-9E79-02D98830E671}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
- {6B1A933E-71B8-4C1F-9E79-02D98830E671}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
- {6B1A933E-71B8-4C1F-9E79-02D98830E671}.Debug|ARM64.ActiveCfg = Debug|ARM64
- {6B1A933E-71B8-4C1F-9E79-02D98830E671}.Debug|ARM64.Build.0 = Debug|ARM64
- {6B1A933E-71B8-4C1F-9E79-02D98830E671}.Debug|x64.ActiveCfg = Debug|x64
- {6B1A933E-71B8-4C1F-9E79-02D98830E671}.Debug|x64.Build.0 = Debug|x64
- {6B1A933E-71B8-4C1F-9E79-02D98830E671}.Debug|x86.ActiveCfg = Debug|Win32
- {6B1A933E-71B8-4C1F-9E79-02D98830E671}.Debug|x86.Build.0 = Debug|Win32
- {6B1A933E-71B8-4C1F-9E79-02D98830E671}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
- {6B1A933E-71B8-4C1F-9E79-02D98830E671}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
- {6B1A933E-71B8-4C1F-9E79-02D98830E671}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
- {6B1A933E-71B8-4C1F-9E79-02D98830E671}.Release.DLL|x64.Build.0 = Release.DLL|x64
- {6B1A933E-71B8-4C1F-9E79-02D98830E671}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
- {6B1A933E-71B8-4C1F-9E79-02D98830E671}.Release.DLL|x86.Build.0 = Release.DLL|Win32
- {6B1A933E-71B8-4C1F-9E79-02D98830E671}.Release|ARM64.ActiveCfg = Release|ARM64
- {6B1A933E-71B8-4C1F-9E79-02D98830E671}.Release|ARM64.Build.0 = Release|ARM64
- {6B1A933E-71B8-4C1F-9E79-02D98830E671}.Release|x64.ActiveCfg = Release|x64
- {6B1A933E-71B8-4C1F-9E79-02D98830E671}.Release|x64.Build.0 = Release|x64
- {6B1A933E-71B8-4C1F-9E79-02D98830E671}.Release|x86.ActiveCfg = Release|Win32
- {6B1A933E-71B8-4C1F-9E79-02D98830E671}.Release|x86.Build.0 = Release|Win32
- {6BFF72EA-7362-4A3B-B6E5-9A3655BBBDA3}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
- {6BFF72EA-7362-4A3B-B6E5-9A3655BBBDA3}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
- {6BFF72EA-7362-4A3B-B6E5-9A3655BBBDA3}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
- {6BFF72EA-7362-4A3B-B6E5-9A3655BBBDA3}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
- {6BFF72EA-7362-4A3B-B6E5-9A3655BBBDA3}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
- {6BFF72EA-7362-4A3B-B6E5-9A3655BBBDA3}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
- {6BFF72EA-7362-4A3B-B6E5-9A3655BBBDA3}.Debug|ARM64.ActiveCfg = Debug|ARM64
- {6BFF72EA-7362-4A3B-B6E5-9A3655BBBDA3}.Debug|ARM64.Build.0 = Debug|ARM64
- {6BFF72EA-7362-4A3B-B6E5-9A3655BBBDA3}.Debug|x64.ActiveCfg = Debug|x64
- {6BFF72EA-7362-4A3B-B6E5-9A3655BBBDA3}.Debug|x64.Build.0 = Debug|x64
- {6BFF72EA-7362-4A3B-B6E5-9A3655BBBDA3}.Debug|x86.ActiveCfg = Debug|Win32
- {6BFF72EA-7362-4A3B-B6E5-9A3655BBBDA3}.Debug|x86.Build.0 = Debug|Win32
- {6BFF72EA-7362-4A3B-B6E5-9A3655BBBDA3}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
- {6BFF72EA-7362-4A3B-B6E5-9A3655BBBDA3}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
- {6BFF72EA-7362-4A3B-B6E5-9A3655BBBDA3}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
- {6BFF72EA-7362-4A3B-B6E5-9A3655BBBDA3}.Release.DLL|x64.Build.0 = Release.DLL|x64
- {6BFF72EA-7362-4A3B-B6E5-9A3655BBBDA3}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
- {6BFF72EA-7362-4A3B-B6E5-9A3655BBBDA3}.Release.DLL|x86.Build.0 = Release.DLL|Win32
- {6BFF72EA-7362-4A3B-B6E5-9A3655BBBDA3}.Release|ARM64.ActiveCfg = Release|ARM64
- {6BFF72EA-7362-4A3B-B6E5-9A3655BBBDA3}.Release|ARM64.Build.0 = Release|ARM64
- {6BFF72EA-7362-4A3B-B6E5-9A3655BBBDA3}.Release|x64.ActiveCfg = Release|x64
- {6BFF72EA-7362-4A3B-B6E5-9A3655BBBDA3}.Release|x64.Build.0 = Release|x64
- {6BFF72EA-7362-4A3B-B6E5-9A3655BBBDA3}.Release|x86.ActiveCfg = Release|Win32
- {6BFF72EA-7362-4A3B-B6E5-9A3655BBBDA3}.Release|x86.Build.0 = Release|Win32
- {6777EC3C-077C-42FC-B4AD-B799CE55CCE4}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
- {6777EC3C-077C-42FC-B4AD-B799CE55CCE4}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
- {6777EC3C-077C-42FC-B4AD-B799CE55CCE4}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
- {6777EC3C-077C-42FC-B4AD-B799CE55CCE4}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
- {6777EC3C-077C-42FC-B4AD-B799CE55CCE4}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
- {6777EC3C-077C-42FC-B4AD-B799CE55CCE4}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
- {6777EC3C-077C-42FC-B4AD-B799CE55CCE4}.Debug|ARM64.ActiveCfg = Debug|ARM64
- {6777EC3C-077C-42FC-B4AD-B799CE55CCE4}.Debug|ARM64.Build.0 = Debug|ARM64
- {6777EC3C-077C-42FC-B4AD-B799CE55CCE4}.Debug|x64.ActiveCfg = Debug|x64
- {6777EC3C-077C-42FC-B4AD-B799CE55CCE4}.Debug|x64.Build.0 = Debug|x64
- {6777EC3C-077C-42FC-B4AD-B799CE55CCE4}.Debug|x86.ActiveCfg = Debug|Win32
- {6777EC3C-077C-42FC-B4AD-B799CE55CCE4}.Debug|x86.Build.0 = Debug|Win32
- {6777EC3C-077C-42FC-B4AD-B799CE55CCE4}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
- {6777EC3C-077C-42FC-B4AD-B799CE55CCE4}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
- {6777EC3C-077C-42FC-B4AD-B799CE55CCE4}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
- {6777EC3C-077C-42FC-B4AD-B799CE55CCE4}.Release.DLL|x64.Build.0 = Release.DLL|x64
- {6777EC3C-077C-42FC-B4AD-B799CE55CCE4}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
- {6777EC3C-077C-42FC-B4AD-B799CE55CCE4}.Release.DLL|x86.Build.0 = Release.DLL|Win32
- {6777EC3C-077C-42FC-B4AD-B799CE55CCE4}.Release|ARM64.ActiveCfg = Release|ARM64
- {6777EC3C-077C-42FC-B4AD-B799CE55CCE4}.Release|ARM64.Build.0 = Release|ARM64
- {6777EC3C-077C-42FC-B4AD-B799CE55CCE4}.Release|x64.ActiveCfg = Release|x64
- {6777EC3C-077C-42FC-B4AD-B799CE55CCE4}.Release|x64.Build.0 = Release|x64
- {6777EC3C-077C-42FC-B4AD-B799CE55CCE4}.Release|x86.ActiveCfg = Release|Win32
- {6777EC3C-077C-42FC-B4AD-B799CE55CCE4}.Release|x86.Build.0 = Release|Win32
- {A61DAD9C-271C-4E95-81AA-DB4CD58564D4}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
- {A61DAD9C-271C-4E95-81AA-DB4CD58564D4}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
- {A61DAD9C-271C-4E95-81AA-DB4CD58564D4}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
- {A61DAD9C-271C-4E95-81AA-DB4CD58564D4}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
- {A61DAD9C-271C-4E95-81AA-DB4CD58564D4}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
- {A61DAD9C-271C-4E95-81AA-DB4CD58564D4}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
- {A61DAD9C-271C-4E95-81AA-DB4CD58564D4}.Debug|ARM64.ActiveCfg = Debug|ARM64
- {A61DAD9C-271C-4E95-81AA-DB4CD58564D4}.Debug|ARM64.Build.0 = Debug|ARM64
- {A61DAD9C-271C-4E95-81AA-DB4CD58564D4}.Debug|x64.ActiveCfg = Debug|x64
- {A61DAD9C-271C-4E95-81AA-DB4CD58564D4}.Debug|x64.Build.0 = Debug|x64
- {A61DAD9C-271C-4E95-81AA-DB4CD58564D4}.Debug|x86.ActiveCfg = Debug|Win32
- {A61DAD9C-271C-4E95-81AA-DB4CD58564D4}.Debug|x86.Build.0 = Debug|Win32
- {A61DAD9C-271C-4E95-81AA-DB4CD58564D4}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
- {A61DAD9C-271C-4E95-81AA-DB4CD58564D4}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
- {A61DAD9C-271C-4E95-81AA-DB4CD58564D4}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
- {A61DAD9C-271C-4E95-81AA-DB4CD58564D4}.Release.DLL|x64.Build.0 = Release.DLL|x64
- {A61DAD9C-271C-4E95-81AA-DB4CD58564D4}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
- {A61DAD9C-271C-4E95-81AA-DB4CD58564D4}.Release.DLL|x86.Build.0 = Release.DLL|Win32
- {A61DAD9C-271C-4E95-81AA-DB4CD58564D4}.Release|ARM64.ActiveCfg = Release|ARM64
- {A61DAD9C-271C-4E95-81AA-DB4CD58564D4}.Release|ARM64.Build.0 = Release|ARM64
- {A61DAD9C-271C-4E95-81AA-DB4CD58564D4}.Release|x64.ActiveCfg = Release|x64
- {A61DAD9C-271C-4E95-81AA-DB4CD58564D4}.Release|x64.Build.0 = Release|x64
- {A61DAD9C-271C-4E95-81AA-DB4CD58564D4}.Release|x86.ActiveCfg = Release|Win32
- {A61DAD9C-271C-4E95-81AA-DB4CD58564D4}.Release|x86.Build.0 = Release|Win32
- {49C67F03-1A56-4F96-B278-39B66EC93678}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
- {49C67F03-1A56-4F96-B278-39B66EC93678}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
- {49C67F03-1A56-4F96-B278-39B66EC93678}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
- {49C67F03-1A56-4F96-B278-39B66EC93678}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
- {49C67F03-1A56-4F96-B278-39B66EC93678}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
- {49C67F03-1A56-4F96-B278-39B66EC93678}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
- {49C67F03-1A56-4F96-B278-39B66EC93678}.Debug|ARM64.ActiveCfg = Debug|ARM64
- {49C67F03-1A56-4F96-B278-39B66EC93678}.Debug|ARM64.Build.0 = Debug|ARM64
- {49C67F03-1A56-4F96-B278-39B66EC93678}.Debug|x64.ActiveCfg = Debug|x64
- {49C67F03-1A56-4F96-B278-39B66EC93678}.Debug|x64.Build.0 = Debug|x64
- {49C67F03-1A56-4F96-B278-39B66EC93678}.Debug|x86.ActiveCfg = Debug|Win32
- {49C67F03-1A56-4F96-B278-39B66EC93678}.Debug|x86.Build.0 = Debug|Win32
- {49C67F03-1A56-4F96-B278-39B66EC93678}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
- {49C67F03-1A56-4F96-B278-39B66EC93678}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
- {49C67F03-1A56-4F96-B278-39B66EC93678}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
- {49C67F03-1A56-4F96-B278-39B66EC93678}.Release.DLL|x64.Build.0 = Release.DLL|x64
- {49C67F03-1A56-4F96-B278-39B66EC93678}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
- {49C67F03-1A56-4F96-B278-39B66EC93678}.Release.DLL|x86.Build.0 = Release.DLL|Win32
- {49C67F03-1A56-4F96-B278-39B66EC93678}.Release|ARM64.ActiveCfg = Release|ARM64
- {49C67F03-1A56-4F96-B278-39B66EC93678}.Release|ARM64.Build.0 = Release|ARM64
- {49C67F03-1A56-4F96-B278-39B66EC93678}.Release|x64.ActiveCfg = Release|x64
- {49C67F03-1A56-4F96-B278-39B66EC93678}.Release|x64.Build.0 = Release|x64
- {49C67F03-1A56-4F96-B278-39B66EC93678}.Release|x86.ActiveCfg = Release|Win32
- {49C67F03-1A56-4F96-B278-39B66EC93678}.Release|x86.Build.0 = Release|Win32
- {D496308F-3C3C-40B3-A3ED-EA327D244B3E}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
- {D496308F-3C3C-40B3-A3ED-EA327D244B3E}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
- {D496308F-3C3C-40B3-A3ED-EA327D244B3E}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
- {D496308F-3C3C-40B3-A3ED-EA327D244B3E}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
- {D496308F-3C3C-40B3-A3ED-EA327D244B3E}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
- {D496308F-3C3C-40B3-A3ED-EA327D244B3E}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
- {D496308F-3C3C-40B3-A3ED-EA327D244B3E}.Debug|ARM64.ActiveCfg = Debug|ARM64
- {D496308F-3C3C-40B3-A3ED-EA327D244B3E}.Debug|ARM64.Build.0 = Debug|ARM64
- {D496308F-3C3C-40B3-A3ED-EA327D244B3E}.Debug|x64.ActiveCfg = Debug|x64
- {D496308F-3C3C-40B3-A3ED-EA327D244B3E}.Debug|x64.Build.0 = Debug|x64
- {D496308F-3C3C-40B3-A3ED-EA327D244B3E}.Debug|x86.ActiveCfg = Debug|Win32
- {D496308F-3C3C-40B3-A3ED-EA327D244B3E}.Debug|x86.Build.0 = Debug|Win32
- {D496308F-3C3C-40B3-A3ED-EA327D244B3E}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
- {D496308F-3C3C-40B3-A3ED-EA327D244B3E}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
- {D496308F-3C3C-40B3-A3ED-EA327D244B3E}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
- {D496308F-3C3C-40B3-A3ED-EA327D244B3E}.Release.DLL|x64.Build.0 = Release.DLL|x64
- {D496308F-3C3C-40B3-A3ED-EA327D244B3E}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
- {D496308F-3C3C-40B3-A3ED-EA327D244B3E}.Release.DLL|x86.Build.0 = Release.DLL|Win32
- {D496308F-3C3C-40B3-A3ED-EA327D244B3E}.Release|ARM64.ActiveCfg = Release|ARM64
- {D496308F-3C3C-40B3-A3ED-EA327D244B3E}.Release|ARM64.Build.0 = Release|ARM64
- {D496308F-3C3C-40B3-A3ED-EA327D244B3E}.Release|x64.ActiveCfg = Release|x64
- {D496308F-3C3C-40B3-A3ED-EA327D244B3E}.Release|x64.Build.0 = Release|x64
- {D496308F-3C3C-40B3-A3ED-EA327D244B3E}.Release|x86.ActiveCfg = Release|Win32
- {D496308F-3C3C-40B3-A3ED-EA327D244B3E}.Release|x86.Build.0 = Release|Win32
- {3B27F358-2679-4F38-B297-17B536F580BB}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
- {3B27F358-2679-4F38-B297-17B536F580BB}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
- {3B27F358-2679-4F38-B297-17B536F580BB}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
- {3B27F358-2679-4F38-B297-17B536F580BB}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
- {3B27F358-2679-4F38-B297-17B536F580BB}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
- {3B27F358-2679-4F38-B297-17B536F580BB}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
- {3B27F358-2679-4F38-B297-17B536F580BB}.Debug|ARM64.ActiveCfg = Debug|ARM64
- {3B27F358-2679-4F38-B297-17B536F580BB}.Debug|ARM64.Build.0 = Debug|ARM64
- {3B27F358-2679-4F38-B297-17B536F580BB}.Debug|x64.ActiveCfg = Debug|x64
- {3B27F358-2679-4F38-B297-17B536F580BB}.Debug|x64.Build.0 = Debug|x64
- {3B27F358-2679-4F38-B297-17B536F580BB}.Debug|x86.ActiveCfg = Debug|Win32
- {3B27F358-2679-4F38-B297-17B536F580BB}.Debug|x86.Build.0 = Debug|Win32
- {3B27F358-2679-4F38-B297-17B536F580BB}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
- {3B27F358-2679-4F38-B297-17B536F580BB}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
- {3B27F358-2679-4F38-B297-17B536F580BB}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
- {3B27F358-2679-4F38-B297-17B536F580BB}.Release.DLL|x64.Build.0 = Release.DLL|x64
- {3B27F358-2679-4F38-B297-17B536F580BB}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
- {3B27F358-2679-4F38-B297-17B536F580BB}.Release.DLL|x86.Build.0 = Release.DLL|Win32
- {3B27F358-2679-4F38-B297-17B536F580BB}.Release|ARM64.ActiveCfg = Release|ARM64
- {3B27F358-2679-4F38-B297-17B536F580BB}.Release|ARM64.Build.0 = Release|ARM64
- {3B27F358-2679-4F38-B297-17B536F580BB}.Release|x64.ActiveCfg = Release|x64
- {3B27F358-2679-4F38-B297-17B536F580BB}.Release|x64.Build.0 = Release|x64
- {3B27F358-2679-4F38-B297-17B536F580BB}.Release|x86.ActiveCfg = Release|Win32
- {3B27F358-2679-4F38-B297-17B536F580BB}.Release|x86.Build.0 = Release|Win32
- {718FCBD0-591D-448C-B7D5-9F1CA8544E7B}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
- {718FCBD0-591D-448C-B7D5-9F1CA8544E7B}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
- {718FCBD0-591D-448C-B7D5-9F1CA8544E7B}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
- {718FCBD0-591D-448C-B7D5-9F1CA8544E7B}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
- {718FCBD0-591D-448C-B7D5-9F1CA8544E7B}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
- {718FCBD0-591D-448C-B7D5-9F1CA8544E7B}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
- {718FCBD0-591D-448C-B7D5-9F1CA8544E7B}.Debug|ARM64.ActiveCfg = Debug|ARM64
- {718FCBD0-591D-448C-B7D5-9F1CA8544E7B}.Debug|ARM64.Build.0 = Debug|ARM64
- {718FCBD0-591D-448C-B7D5-9F1CA8544E7B}.Debug|x64.ActiveCfg = Debug|x64
- {718FCBD0-591D-448C-B7D5-9F1CA8544E7B}.Debug|x64.Build.0 = Debug|x64
- {718FCBD0-591D-448C-B7D5-9F1CA8544E7B}.Debug|x86.ActiveCfg = Debug|Win32
- {718FCBD0-591D-448C-B7D5-9F1CA8544E7B}.Debug|x86.Build.0 = Debug|Win32
- {718FCBD0-591D-448C-B7D5-9F1CA8544E7B}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
- {718FCBD0-591D-448C-B7D5-9F1CA8544E7B}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
- {718FCBD0-591D-448C-B7D5-9F1CA8544E7B}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
- {718FCBD0-591D-448C-B7D5-9F1CA8544E7B}.Release.DLL|x64.Build.0 = Release.DLL|x64
- {718FCBD0-591D-448C-B7D5-9F1CA8544E7B}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
- {718FCBD0-591D-448C-B7D5-9F1CA8544E7B}.Release.DLL|x86.Build.0 = Release.DLL|Win32
- {718FCBD0-591D-448C-B7D5-9F1CA8544E7B}.Release|ARM64.ActiveCfg = Release|ARM64
- {718FCBD0-591D-448C-B7D5-9F1CA8544E7B}.Release|ARM64.Build.0 = Release|ARM64
- {718FCBD0-591D-448C-B7D5-9F1CA8544E7B}.Release|x64.ActiveCfg = Release|x64
- {718FCBD0-591D-448C-B7D5-9F1CA8544E7B}.Release|x64.Build.0 = Release|x64
- {718FCBD0-591D-448C-B7D5-9F1CA8544E7B}.Release|x86.ActiveCfg = Release|Win32
- {718FCBD0-591D-448C-B7D5-9F1CA8544E7B}.Release|x86.Build.0 = Release|Win32
- {19CA0070-B4B2-4394-90B7-D0C259AA35BA}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
- {19CA0070-B4B2-4394-90B7-D0C259AA35BA}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
- {19CA0070-B4B2-4394-90B7-D0C259AA35BA}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
- {19CA0070-B4B2-4394-90B7-D0C259AA35BA}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
- {19CA0070-B4B2-4394-90B7-D0C259AA35BA}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
- {19CA0070-B4B2-4394-90B7-D0C259AA35BA}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
- {19CA0070-B4B2-4394-90B7-D0C259AA35BA}.Debug|ARM64.ActiveCfg = Debug|ARM64
- {19CA0070-B4B2-4394-90B7-D0C259AA35BA}.Debug|ARM64.Build.0 = Debug|ARM64
- {19CA0070-B4B2-4394-90B7-D0C259AA35BA}.Debug|x64.ActiveCfg = Debug|x64
- {19CA0070-B4B2-4394-90B7-D0C259AA35BA}.Debug|x64.Build.0 = Debug|x64
- {19CA0070-B4B2-4394-90B7-D0C259AA35BA}.Debug|x86.ActiveCfg = Debug|Win32
- {19CA0070-B4B2-4394-90B7-D0C259AA35BA}.Debug|x86.Build.0 = Debug|Win32
- {19CA0070-B4B2-4394-90B7-D0C259AA35BA}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
- {19CA0070-B4B2-4394-90B7-D0C259AA35BA}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
- {19CA0070-B4B2-4394-90B7-D0C259AA35BA}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
- {19CA0070-B4B2-4394-90B7-D0C259AA35BA}.Release.DLL|x64.Build.0 = Release.DLL|x64
- {19CA0070-B4B2-4394-90B7-D0C259AA35BA}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
- {19CA0070-B4B2-4394-90B7-D0C259AA35BA}.Release.DLL|x86.Build.0 = Release.DLL|Win32
- {19CA0070-B4B2-4394-90B7-D0C259AA35BA}.Release|ARM64.ActiveCfg = Release|ARM64
- {19CA0070-B4B2-4394-90B7-D0C259AA35BA}.Release|ARM64.Build.0 = Release|ARM64
- {19CA0070-B4B2-4394-90B7-D0C259AA35BA}.Release|x64.ActiveCfg = Release|x64
- {19CA0070-B4B2-4394-90B7-D0C259AA35BA}.Release|x64.Build.0 = Release|x64
- {19CA0070-B4B2-4394-90B7-D0C259AA35BA}.Release|x86.ActiveCfg = Release|Win32
- {19CA0070-B4B2-4394-90B7-D0C259AA35BA}.Release|x86.Build.0 = Release|Win32
- {2CCCD9E4-9058-4291-BD89-39C979F0CA1E}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
- {2CCCD9E4-9058-4291-BD89-39C979F0CA1E}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
- {2CCCD9E4-9058-4291-BD89-39C979F0CA1E}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
- {2CCCD9E4-9058-4291-BD89-39C979F0CA1E}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
- {2CCCD9E4-9058-4291-BD89-39C979F0CA1E}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
- {2CCCD9E4-9058-4291-BD89-39C979F0CA1E}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
- {2CCCD9E4-9058-4291-BD89-39C979F0CA1E}.Debug|ARM64.ActiveCfg = Debug|ARM64
- {2CCCD9E4-9058-4291-BD89-39C979F0CA1E}.Debug|ARM64.Build.0 = Debug|ARM64
- {2CCCD9E4-9058-4291-BD89-39C979F0CA1E}.Debug|x64.ActiveCfg = Debug|x64
- {2CCCD9E4-9058-4291-BD89-39C979F0CA1E}.Debug|x64.Build.0 = Debug|x64
- {2CCCD9E4-9058-4291-BD89-39C979F0CA1E}.Debug|x86.ActiveCfg = Debug|Win32
- {2CCCD9E4-9058-4291-BD89-39C979F0CA1E}.Debug|x86.Build.0 = Debug|Win32
- {2CCCD9E4-9058-4291-BD89-39C979F0CA1E}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
- {2CCCD9E4-9058-4291-BD89-39C979F0CA1E}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
- {2CCCD9E4-9058-4291-BD89-39C979F0CA1E}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
- {2CCCD9E4-9058-4291-BD89-39C979F0CA1E}.Release.DLL|x64.Build.0 = Release.DLL|x64
- {2CCCD9E4-9058-4291-BD89-39C979F0CA1E}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
- {2CCCD9E4-9058-4291-BD89-39C979F0CA1E}.Release.DLL|x86.Build.0 = Release.DLL|Win32
- {2CCCD9E4-9058-4291-BD89-39C979F0CA1E}.Release|ARM64.ActiveCfg = Release|ARM64
- {2CCCD9E4-9058-4291-BD89-39C979F0CA1E}.Release|ARM64.Build.0 = Release|ARM64
- {2CCCD9E4-9058-4291-BD89-39C979F0CA1E}.Release|x64.ActiveCfg = Release|x64
- {2CCCD9E4-9058-4291-BD89-39C979F0CA1E}.Release|x64.Build.0 = Release|x64
- {2CCCD9E4-9058-4291-BD89-39C979F0CA1E}.Release|x86.ActiveCfg = Release|Win32
- {2CCCD9E4-9058-4291-BD89-39C979F0CA1E}.Release|x86.Build.0 = Release|Win32
- {9DB1F875-6E65-4195-B23F-ED8095C0B99C}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
- {9DB1F875-6E65-4195-B23F-ED8095C0B99C}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
- {9DB1F875-6E65-4195-B23F-ED8095C0B99C}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
- {9DB1F875-6E65-4195-B23F-ED8095C0B99C}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
- {9DB1F875-6E65-4195-B23F-ED8095C0B99C}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
- {9DB1F875-6E65-4195-B23F-ED8095C0B99C}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
- {9DB1F875-6E65-4195-B23F-ED8095C0B99C}.Debug|ARM64.ActiveCfg = Debug|ARM64
- {9DB1F875-6E65-4195-B23F-ED8095C0B99C}.Debug|ARM64.Build.0 = Debug|ARM64
- {9DB1F875-6E65-4195-B23F-ED8095C0B99C}.Debug|x64.ActiveCfg = Debug|x64
- {9DB1F875-6E65-4195-B23F-ED8095C0B99C}.Debug|x64.Build.0 = Debug|x64
- {9DB1F875-6E65-4195-B23F-ED8095C0B99C}.Debug|x86.ActiveCfg = Debug|Win32
- {9DB1F875-6E65-4195-B23F-ED8095C0B99C}.Debug|x86.Build.0 = Debug|Win32
- {9DB1F875-6E65-4195-B23F-ED8095C0B99C}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
- {9DB1F875-6E65-4195-B23F-ED8095C0B99C}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
- {9DB1F875-6E65-4195-B23F-ED8095C0B99C}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
- {9DB1F875-6E65-4195-B23F-ED8095C0B99C}.Release.DLL|x64.Build.0 = Release.DLL|x64
- {9DB1F875-6E65-4195-B23F-ED8095C0B99C}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
- {9DB1F875-6E65-4195-B23F-ED8095C0B99C}.Release.DLL|x86.Build.0 = Release.DLL|Win32
- {9DB1F875-6E65-4195-B23F-ED8095C0B99C}.Release|ARM64.ActiveCfg = Release|ARM64
- {9DB1F875-6E65-4195-B23F-ED8095C0B99C}.Release|ARM64.Build.0 = Release|ARM64
- {9DB1F875-6E65-4195-B23F-ED8095C0B99C}.Release|x64.ActiveCfg = Release|x64
- {9DB1F875-6E65-4195-B23F-ED8095C0B99C}.Release|x64.Build.0 = Release|x64
- {9DB1F875-6E65-4195-B23F-ED8095C0B99C}.Release|x86.ActiveCfg = Release|Win32
- {9DB1F875-6E65-4195-B23F-ED8095C0B99C}.Release|x86.Build.0 = Release|Win32
- {52BA9067-A5FC-4CE8-82AD-7204ECFDEF9F}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
- {52BA9067-A5FC-4CE8-82AD-7204ECFDEF9F}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
- {52BA9067-A5FC-4CE8-82AD-7204ECFDEF9F}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
- {52BA9067-A5FC-4CE8-82AD-7204ECFDEF9F}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
- {52BA9067-A5FC-4CE8-82AD-7204ECFDEF9F}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
- {52BA9067-A5FC-4CE8-82AD-7204ECFDEF9F}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
- {52BA9067-A5FC-4CE8-82AD-7204ECFDEF9F}.Debug|ARM64.ActiveCfg = Debug|ARM64
- {52BA9067-A5FC-4CE8-82AD-7204ECFDEF9F}.Debug|ARM64.Build.0 = Debug|ARM64
- {52BA9067-A5FC-4CE8-82AD-7204ECFDEF9F}.Debug|x64.ActiveCfg = Debug|x64
- {52BA9067-A5FC-4CE8-82AD-7204ECFDEF9F}.Debug|x64.Build.0 = Debug|x64
- {52BA9067-A5FC-4CE8-82AD-7204ECFDEF9F}.Debug|x86.ActiveCfg = Debug|Win32
- {52BA9067-A5FC-4CE8-82AD-7204ECFDEF9F}.Debug|x86.Build.0 = Debug|Win32
- {52BA9067-A5FC-4CE8-82AD-7204ECFDEF9F}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
- {52BA9067-A5FC-4CE8-82AD-7204ECFDEF9F}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
- {52BA9067-A5FC-4CE8-82AD-7204ECFDEF9F}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
- {52BA9067-A5FC-4CE8-82AD-7204ECFDEF9F}.Release.DLL|x64.Build.0 = Release.DLL|x64
- {52BA9067-A5FC-4CE8-82AD-7204ECFDEF9F}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
- {52BA9067-A5FC-4CE8-82AD-7204ECFDEF9F}.Release.DLL|x86.Build.0 = Release.DLL|Win32
- {52BA9067-A5FC-4CE8-82AD-7204ECFDEF9F}.Release|ARM64.ActiveCfg = Release|ARM64
- {52BA9067-A5FC-4CE8-82AD-7204ECFDEF9F}.Release|ARM64.Build.0 = Release|ARM64
- {52BA9067-A5FC-4CE8-82AD-7204ECFDEF9F}.Release|x64.ActiveCfg = Release|x64
- {52BA9067-A5FC-4CE8-82AD-7204ECFDEF9F}.Release|x64.Build.0 = Release|x64
- {52BA9067-A5FC-4CE8-82AD-7204ECFDEF9F}.Release|x86.ActiveCfg = Release|Win32
- {52BA9067-A5FC-4CE8-82AD-7204ECFDEF9F}.Release|x86.Build.0 = Release|Win32
- {8E132D5A-2C00-48D0-8747-97E41356F26F}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
- {8E132D5A-2C00-48D0-8747-97E41356F26F}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
- {8E132D5A-2C00-48D0-8747-97E41356F26F}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
- {8E132D5A-2C00-48D0-8747-97E41356F26F}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
- {8E132D5A-2C00-48D0-8747-97E41356F26F}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
- {8E132D5A-2C00-48D0-8747-97E41356F26F}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
- {8E132D5A-2C00-48D0-8747-97E41356F26F}.Debug|ARM64.ActiveCfg = Debug|ARM64
- {8E132D5A-2C00-48D0-8747-97E41356F26F}.Debug|ARM64.Build.0 = Debug|ARM64
- {8E132D5A-2C00-48D0-8747-97E41356F26F}.Debug|x64.ActiveCfg = Debug|x64
- {8E132D5A-2C00-48D0-8747-97E41356F26F}.Debug|x64.Build.0 = Debug|x64
- {8E132D5A-2C00-48D0-8747-97E41356F26F}.Debug|x86.ActiveCfg = Debug|Win32
- {8E132D5A-2C00-48D0-8747-97E41356F26F}.Debug|x86.Build.0 = Debug|Win32
- {8E132D5A-2C00-48D0-8747-97E41356F26F}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
- {8E132D5A-2C00-48D0-8747-97E41356F26F}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
- {8E132D5A-2C00-48D0-8747-97E41356F26F}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
- {8E132D5A-2C00-48D0-8747-97E41356F26F}.Release.DLL|x64.Build.0 = Release.DLL|x64
- {8E132D5A-2C00-48D0-8747-97E41356F26F}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
- {8E132D5A-2C00-48D0-8747-97E41356F26F}.Release.DLL|x86.Build.0 = Release.DLL|Win32
- {8E132D5A-2C00-48D0-8747-97E41356F26F}.Release|ARM64.ActiveCfg = Release|ARM64
- {8E132D5A-2C00-48D0-8747-97E41356F26F}.Release|ARM64.Build.0 = Release|ARM64
- {8E132D5A-2C00-48D0-8747-97E41356F26F}.Release|x64.ActiveCfg = Release|x64
- {8E132D5A-2C00-48D0-8747-97E41356F26F}.Release|x64.Build.0 = Release|x64
- {8E132D5A-2C00-48D0-8747-97E41356F26F}.Release|x86.ActiveCfg = Release|Win32
- {8E132D5A-2C00-48D0-8747-97E41356F26F}.Release|x86.Build.0 = Release|Win32
- {A4662163-83E7-4309-8CAA-B0BF13655FE6}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
- {A4662163-83E7-4309-8CAA-B0BF13655FE6}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
- {A4662163-83E7-4309-8CAA-B0BF13655FE6}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
- {A4662163-83E7-4309-8CAA-B0BF13655FE6}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
- {A4662163-83E7-4309-8CAA-B0BF13655FE6}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
- {A4662163-83E7-4309-8CAA-B0BF13655FE6}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
- {A4662163-83E7-4309-8CAA-B0BF13655FE6}.Debug|ARM64.ActiveCfg = Debug|ARM64
- {A4662163-83E7-4309-8CAA-B0BF13655FE6}.Debug|ARM64.Build.0 = Debug|ARM64
- {A4662163-83E7-4309-8CAA-B0BF13655FE6}.Debug|x64.ActiveCfg = Debug|x64
- {A4662163-83E7-4309-8CAA-B0BF13655FE6}.Debug|x64.Build.0 = Debug|x64
- {A4662163-83E7-4309-8CAA-B0BF13655FE6}.Debug|x86.ActiveCfg = Debug|Win32
- {A4662163-83E7-4309-8CAA-B0BF13655FE6}.Debug|x86.Build.0 = Debug|Win32
- {A4662163-83E7-4309-8CAA-B0BF13655FE6}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
- {A4662163-83E7-4309-8CAA-B0BF13655FE6}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
- {A4662163-83E7-4309-8CAA-B0BF13655FE6}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
- {A4662163-83E7-4309-8CAA-B0BF13655FE6}.Release.DLL|x64.Build.0 = Release.DLL|x64
- {A4662163-83E7-4309-8CAA-B0BF13655FE6}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
- {A4662163-83E7-4309-8CAA-B0BF13655FE6}.Release.DLL|x86.Build.0 = Release.DLL|Win32
- {A4662163-83E7-4309-8CAA-B0BF13655FE6}.Release|ARM64.ActiveCfg = Release|ARM64
- {A4662163-83E7-4309-8CAA-B0BF13655FE6}.Release|ARM64.Build.0 = Release|ARM64
- {A4662163-83E7-4309-8CAA-B0BF13655FE6}.Release|x64.ActiveCfg = Release|x64
- {A4662163-83E7-4309-8CAA-B0BF13655FE6}.Release|x64.Build.0 = Release|x64
- {A4662163-83E7-4309-8CAA-B0BF13655FE6}.Release|x86.ActiveCfg = Release|Win32
- {A4662163-83E7-4309-8CAA-B0BF13655FE6}.Release|x86.Build.0 = Release|Win32
- {5F4B766F-DD52-4B53-B6C3-BC7611E17F20}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
- {5F4B766F-DD52-4B53-B6C3-BC7611E17F20}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
- {5F4B766F-DD52-4B53-B6C3-BC7611E17F20}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
- {5F4B766F-DD52-4B53-B6C3-BC7611E17F20}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
- {5F4B766F-DD52-4B53-B6C3-BC7611E17F20}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
- {5F4B766F-DD52-4B53-B6C3-BC7611E17F20}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
- {5F4B766F-DD52-4B53-B6C3-BC7611E17F20}.Debug|ARM64.ActiveCfg = Debug|ARM64
- {5F4B766F-DD52-4B53-B6C3-BC7611E17F20}.Debug|ARM64.Build.0 = Debug|ARM64
- {5F4B766F-DD52-4B53-B6C3-BC7611E17F20}.Debug|x64.ActiveCfg = Debug|x64
- {5F4B766F-DD52-4B53-B6C3-BC7611E17F20}.Debug|x64.Build.0 = Debug|x64
- {5F4B766F-DD52-4B53-B6C3-BC7611E17F20}.Debug|x86.ActiveCfg = Debug|Win32
- {5F4B766F-DD52-4B53-B6C3-BC7611E17F20}.Debug|x86.Build.0 = Debug|Win32
- {5F4B766F-DD52-4B53-B6C3-BC7611E17F20}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
- {5F4B766F-DD52-4B53-B6C3-BC7611E17F20}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
- {5F4B766F-DD52-4B53-B6C3-BC7611E17F20}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
- {5F4B766F-DD52-4B53-B6C3-BC7611E17F20}.Release.DLL|x64.Build.0 = Release.DLL|x64
- {5F4B766F-DD52-4B53-B6C3-BC7611E17F20}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
- {5F4B766F-DD52-4B53-B6C3-BC7611E17F20}.Release.DLL|x86.Build.0 = Release.DLL|Win32
- {5F4B766F-DD52-4B53-B6C3-BC7611E17F20}.Release|ARM64.ActiveCfg = Release|ARM64
- {5F4B766F-DD52-4B53-B6C3-BC7611E17F20}.Release|ARM64.Build.0 = Release|ARM64
- {5F4B766F-DD52-4B53-B6C3-BC7611E17F20}.Release|x64.ActiveCfg = Release|x64
- {5F4B766F-DD52-4B53-B6C3-BC7611E17F20}.Release|x64.Build.0 = Release|x64
- {5F4B766F-DD52-4B53-B6C3-BC7611E17F20}.Release|x86.ActiveCfg = Release|Win32
- {5F4B766F-DD52-4B53-B6C3-BC7611E17F20}.Release|x86.Build.0 = Release|Win32
- {FF5F9EE9-29C5-40EE-BBCF-AE51B001FEC3}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
- {FF5F9EE9-29C5-40EE-BBCF-AE51B001FEC3}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
- {FF5F9EE9-29C5-40EE-BBCF-AE51B001FEC3}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
- {FF5F9EE9-29C5-40EE-BBCF-AE51B001FEC3}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
- {FF5F9EE9-29C5-40EE-BBCF-AE51B001FEC3}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
- {FF5F9EE9-29C5-40EE-BBCF-AE51B001FEC3}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
- {FF5F9EE9-29C5-40EE-BBCF-AE51B001FEC3}.Debug|ARM64.ActiveCfg = Debug|ARM64
- {FF5F9EE9-29C5-40EE-BBCF-AE51B001FEC3}.Debug|ARM64.Build.0 = Debug|ARM64
- {FF5F9EE9-29C5-40EE-BBCF-AE51B001FEC3}.Debug|x64.ActiveCfg = Debug|x64
- {FF5F9EE9-29C5-40EE-BBCF-AE51B001FEC3}.Debug|x64.Build.0 = Debug|x64
- {FF5F9EE9-29C5-40EE-BBCF-AE51B001FEC3}.Debug|x86.ActiveCfg = Debug|Win32
- {FF5F9EE9-29C5-40EE-BBCF-AE51B001FEC3}.Debug|x86.Build.0 = Debug|Win32
- {FF5F9EE9-29C5-40EE-BBCF-AE51B001FEC3}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
- {FF5F9EE9-29C5-40EE-BBCF-AE51B001FEC3}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
- {FF5F9EE9-29C5-40EE-BBCF-AE51B001FEC3}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
- {FF5F9EE9-29C5-40EE-BBCF-AE51B001FEC3}.Release.DLL|x64.Build.0 = Release.DLL|x64
- {FF5F9EE9-29C5-40EE-BBCF-AE51B001FEC3}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
- {FF5F9EE9-29C5-40EE-BBCF-AE51B001FEC3}.Release.DLL|x86.Build.0 = Release.DLL|Win32
- {FF5F9EE9-29C5-40EE-BBCF-AE51B001FEC3}.Release|ARM64.ActiveCfg = Release|ARM64
- {FF5F9EE9-29C5-40EE-BBCF-AE51B001FEC3}.Release|ARM64.Build.0 = Release|ARM64
- {FF5F9EE9-29C5-40EE-BBCF-AE51B001FEC3}.Release|x64.ActiveCfg = Release|x64
- {FF5F9EE9-29C5-40EE-BBCF-AE51B001FEC3}.Release|x64.Build.0 = Release|x64
- {FF5F9EE9-29C5-40EE-BBCF-AE51B001FEC3}.Release|x86.ActiveCfg = Release|Win32
- {FF5F9EE9-29C5-40EE-BBCF-AE51B001FEC3}.Release|x86.Build.0 = Release|Win32
- {A9C422E7-0F03-4DBC-AC93-5C3EF4942DEC}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
- {A9C422E7-0F03-4DBC-AC93-5C3EF4942DEC}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
- {A9C422E7-0F03-4DBC-AC93-5C3EF4942DEC}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
- {A9C422E7-0F03-4DBC-AC93-5C3EF4942DEC}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
- {A9C422E7-0F03-4DBC-AC93-5C3EF4942DEC}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
- {A9C422E7-0F03-4DBC-AC93-5C3EF4942DEC}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
- {A9C422E7-0F03-4DBC-AC93-5C3EF4942DEC}.Debug|ARM64.ActiveCfg = Debug|ARM64
- {A9C422E7-0F03-4DBC-AC93-5C3EF4942DEC}.Debug|ARM64.Build.0 = Debug|ARM64
- {A9C422E7-0F03-4DBC-AC93-5C3EF4942DEC}.Debug|x64.ActiveCfg = Debug|x64
- {A9C422E7-0F03-4DBC-AC93-5C3EF4942DEC}.Debug|x64.Build.0 = Debug|x64
- {A9C422E7-0F03-4DBC-AC93-5C3EF4942DEC}.Debug|x86.ActiveCfg = Debug|Win32
- {A9C422E7-0F03-4DBC-AC93-5C3EF4942DEC}.Debug|x86.Build.0 = Debug|Win32
- {A9C422E7-0F03-4DBC-AC93-5C3EF4942DEC}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
- {A9C422E7-0F03-4DBC-AC93-5C3EF4942DEC}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
- {A9C422E7-0F03-4DBC-AC93-5C3EF4942DEC}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
- {A9C422E7-0F03-4DBC-AC93-5C3EF4942DEC}.Release.DLL|x64.Build.0 = Release.DLL|x64
- {A9C422E7-0F03-4DBC-AC93-5C3EF4942DEC}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
- {A9C422E7-0F03-4DBC-AC93-5C3EF4942DEC}.Release.DLL|x86.Build.0 = Release.DLL|Win32
- {A9C422E7-0F03-4DBC-AC93-5C3EF4942DEC}.Release|ARM64.ActiveCfg = Release|ARM64
- {A9C422E7-0F03-4DBC-AC93-5C3EF4942DEC}.Release|ARM64.Build.0 = Release|ARM64
- {A9C422E7-0F03-4DBC-AC93-5C3EF4942DEC}.Release|x64.ActiveCfg = Release|x64
- {A9C422E7-0F03-4DBC-AC93-5C3EF4942DEC}.Release|x64.Build.0 = Release|x64
- {A9C422E7-0F03-4DBC-AC93-5C3EF4942DEC}.Release|x86.ActiveCfg = Release|Win32
- {A9C422E7-0F03-4DBC-AC93-5C3EF4942DEC}.Release|x86.Build.0 = Release|Win32
- {0C442799-B09C-4CD1-9538-711B6E85E9BF}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
- {0C442799-B09C-4CD1-9538-711B6E85E9BF}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
- {0C442799-B09C-4CD1-9538-711B6E85E9BF}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
- {0C442799-B09C-4CD1-9538-711B6E85E9BF}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
- {0C442799-B09C-4CD1-9538-711B6E85E9BF}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
- {0C442799-B09C-4CD1-9538-711B6E85E9BF}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
- {0C442799-B09C-4CD1-9538-711B6E85E9BF}.Debug|ARM64.ActiveCfg = Debug|ARM64
- {0C442799-B09C-4CD1-9538-711B6E85E9BF}.Debug|ARM64.Build.0 = Debug|ARM64
- {0C442799-B09C-4CD1-9538-711B6E85E9BF}.Debug|x64.ActiveCfg = Debug|x64
- {0C442799-B09C-4CD1-9538-711B6E85E9BF}.Debug|x64.Build.0 = Debug|x64
- {0C442799-B09C-4CD1-9538-711B6E85E9BF}.Debug|x86.ActiveCfg = Debug|Win32
- {0C442799-B09C-4CD1-9538-711B6E85E9BF}.Debug|x86.Build.0 = Debug|Win32
- {0C442799-B09C-4CD1-9538-711B6E85E9BF}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
- {0C442799-B09C-4CD1-9538-711B6E85E9BF}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
- {0C442799-B09C-4CD1-9538-711B6E85E9BF}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
- {0C442799-B09C-4CD1-9538-711B6E85E9BF}.Release.DLL|x64.Build.0 = Release.DLL|x64
- {0C442799-B09C-4CD1-9538-711B6E85E9BF}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
- {0C442799-B09C-4CD1-9538-711B6E85E9BF}.Release.DLL|x86.Build.0 = Release.DLL|Win32
- {0C442799-B09C-4CD1-9538-711B6E85E9BF}.Release|ARM64.ActiveCfg = Release|ARM64
- {0C442799-B09C-4CD1-9538-711B6E85E9BF}.Release|ARM64.Build.0 = Release|ARM64
- {0C442799-B09C-4CD1-9538-711B6E85E9BF}.Release|x64.ActiveCfg = Release|x64
- {0C442799-B09C-4CD1-9538-711B6E85E9BF}.Release|x64.Build.0 = Release|x64
- {0C442799-B09C-4CD1-9538-711B6E85E9BF}.Release|x86.ActiveCfg = Release|Win32
- {0C442799-B09C-4CD1-9538-711B6E85E9BF}.Release|x86.Build.0 = Release|Win32
- {DFB40A10-F8B7-412A-BCC3-5EE49294D816}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
- {DFB40A10-F8B7-412A-BCC3-5EE49294D816}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
- {DFB40A10-F8B7-412A-BCC3-5EE49294D816}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
- {DFB40A10-F8B7-412A-BCC3-5EE49294D816}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
- {DFB40A10-F8B7-412A-BCC3-5EE49294D816}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
- {DFB40A10-F8B7-412A-BCC3-5EE49294D816}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
- {DFB40A10-F8B7-412A-BCC3-5EE49294D816}.Debug|ARM64.ActiveCfg = Debug|ARM64
- {DFB40A10-F8B7-412A-BCC3-5EE49294D816}.Debug|ARM64.Build.0 = Debug|ARM64
- {DFB40A10-F8B7-412A-BCC3-5EE49294D816}.Debug|x64.ActiveCfg = Debug|x64
- {DFB40A10-F8B7-412A-BCC3-5EE49294D816}.Debug|x64.Build.0 = Debug|x64
- {DFB40A10-F8B7-412A-BCC3-5EE49294D816}.Debug|x86.ActiveCfg = Debug|Win32
- {DFB40A10-F8B7-412A-BCC3-5EE49294D816}.Debug|x86.Build.0 = Debug|Win32
- {DFB40A10-F8B7-412A-BCC3-5EE49294D816}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
- {DFB40A10-F8B7-412A-BCC3-5EE49294D816}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
- {DFB40A10-F8B7-412A-BCC3-5EE49294D816}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
- {DFB40A10-F8B7-412A-BCC3-5EE49294D816}.Release.DLL|x64.Build.0 = Release.DLL|x64
- {DFB40A10-F8B7-412A-BCC3-5EE49294D816}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
- {DFB40A10-F8B7-412A-BCC3-5EE49294D816}.Release.DLL|x86.Build.0 = Release.DLL|Win32
- {DFB40A10-F8B7-412A-BCC3-5EE49294D816}.Release|ARM64.ActiveCfg = Release|ARM64
- {DFB40A10-F8B7-412A-BCC3-5EE49294D816}.Release|ARM64.Build.0 = Release|ARM64
- {DFB40A10-F8B7-412A-BCC3-5EE49294D816}.Release|x64.ActiveCfg = Release|x64
- {DFB40A10-F8B7-412A-BCC3-5EE49294D816}.Release|x64.Build.0 = Release|x64
- {DFB40A10-F8B7-412A-BCC3-5EE49294D816}.Release|x86.ActiveCfg = Release|Win32
- {DFB40A10-F8B7-412A-BCC3-5EE49294D816}.Release|x86.Build.0 = Release|Win32
- {BB58A5FB-1A35-4471-86D0-A5189EC541B3}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
- {BB58A5FB-1A35-4471-86D0-A5189EC541B3}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
- {BB58A5FB-1A35-4471-86D0-A5189EC541B3}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
- {BB58A5FB-1A35-4471-86D0-A5189EC541B3}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
- {BB58A5FB-1A35-4471-86D0-A5189EC541B3}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
- {BB58A5FB-1A35-4471-86D0-A5189EC541B3}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
- {BB58A5FB-1A35-4471-86D0-A5189EC541B3}.Debug|ARM64.ActiveCfg = Debug|ARM64
- {BB58A5FB-1A35-4471-86D0-A5189EC541B3}.Debug|ARM64.Build.0 = Debug|ARM64
- {BB58A5FB-1A35-4471-86D0-A5189EC541B3}.Debug|x64.ActiveCfg = Debug|x64
- {BB58A5FB-1A35-4471-86D0-A5189EC541B3}.Debug|x64.Build.0 = Debug|x64
- {BB58A5FB-1A35-4471-86D0-A5189EC541B3}.Debug|x86.ActiveCfg = Debug|Win32
- {BB58A5FB-1A35-4471-86D0-A5189EC541B3}.Debug|x86.Build.0 = Debug|Win32
- {BB58A5FB-1A35-4471-86D0-A5189EC541B3}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
- {BB58A5FB-1A35-4471-86D0-A5189EC541B3}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
- {BB58A5FB-1A35-4471-86D0-A5189EC541B3}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
- {BB58A5FB-1A35-4471-86D0-A5189EC541B3}.Release.DLL|x64.Build.0 = Release.DLL|x64
- {BB58A5FB-1A35-4471-86D0-A5189EC541B3}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
- {BB58A5FB-1A35-4471-86D0-A5189EC541B3}.Release.DLL|x86.Build.0 = Release.DLL|Win32
- {BB58A5FB-1A35-4471-86D0-A5189EC541B3}.Release|ARM64.ActiveCfg = Release|ARM64
- {BB58A5FB-1A35-4471-86D0-A5189EC541B3}.Release|ARM64.Build.0 = Release|ARM64
- {BB58A5FB-1A35-4471-86D0-A5189EC541B3}.Release|x64.ActiveCfg = Release|x64
- {BB58A5FB-1A35-4471-86D0-A5189EC541B3}.Release|x64.Build.0 = Release|x64
- {BB58A5FB-1A35-4471-86D0-A5189EC541B3}.Release|x86.ActiveCfg = Release|Win32
- {BB58A5FB-1A35-4471-86D0-A5189EC541B3}.Release|x86.Build.0 = Release|Win32
- {61997220-5383-4AE5-ABD4-5F45AE1B0F2A}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
- {61997220-5383-4AE5-ABD4-5F45AE1B0F2A}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
- {61997220-5383-4AE5-ABD4-5F45AE1B0F2A}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
- {61997220-5383-4AE5-ABD4-5F45AE1B0F2A}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
- {61997220-5383-4AE5-ABD4-5F45AE1B0F2A}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
- {61997220-5383-4AE5-ABD4-5F45AE1B0F2A}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
- {61997220-5383-4AE5-ABD4-5F45AE1B0F2A}.Debug|ARM64.ActiveCfg = Debug|ARM64
- {61997220-5383-4AE5-ABD4-5F45AE1B0F2A}.Debug|ARM64.Build.0 = Debug|ARM64
- {61997220-5383-4AE5-ABD4-5F45AE1B0F2A}.Debug|x64.ActiveCfg = Debug|x64
- {61997220-5383-4AE5-ABD4-5F45AE1B0F2A}.Debug|x64.Build.0 = Debug|x64
- {61997220-5383-4AE5-ABD4-5F45AE1B0F2A}.Debug|x86.ActiveCfg = Debug|Win32
- {61997220-5383-4AE5-ABD4-5F45AE1B0F2A}.Debug|x86.Build.0 = Debug|Win32
- {61997220-5383-4AE5-ABD4-5F45AE1B0F2A}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
- {61997220-5383-4AE5-ABD4-5F45AE1B0F2A}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
- {61997220-5383-4AE5-ABD4-5F45AE1B0F2A}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
- {61997220-5383-4AE5-ABD4-5F45AE1B0F2A}.Release.DLL|x64.Build.0 = Release.DLL|x64
- {61997220-5383-4AE5-ABD4-5F45AE1B0F2A}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
- {61997220-5383-4AE5-ABD4-5F45AE1B0F2A}.Release.DLL|x86.Build.0 = Release.DLL|Win32
- {61997220-5383-4AE5-ABD4-5F45AE1B0F2A}.Release|ARM64.ActiveCfg = Release|ARM64
- {61997220-5383-4AE5-ABD4-5F45AE1B0F2A}.Release|ARM64.Build.0 = Release|ARM64
- {61997220-5383-4AE5-ABD4-5F45AE1B0F2A}.Release|x64.ActiveCfg = Release|x64
- {61997220-5383-4AE5-ABD4-5F45AE1B0F2A}.Release|x64.Build.0 = Release|x64
- {61997220-5383-4AE5-ABD4-5F45AE1B0F2A}.Release|x86.ActiveCfg = Release|Win32
- {61997220-5383-4AE5-ABD4-5F45AE1B0F2A}.Release|x86.Build.0 = Release|Win32
- {7467E9AE-844F-444D-8A3F-17397544BA21}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
- {7467E9AE-844F-444D-8A3F-17397544BA21}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
- {7467E9AE-844F-444D-8A3F-17397544BA21}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
- {7467E9AE-844F-444D-8A3F-17397544BA21}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
- {7467E9AE-844F-444D-8A3F-17397544BA21}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
- {7467E9AE-844F-444D-8A3F-17397544BA21}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
- {7467E9AE-844F-444D-8A3F-17397544BA21}.Debug|ARM64.ActiveCfg = Debug|ARM64
- {7467E9AE-844F-444D-8A3F-17397544BA21}.Debug|ARM64.Build.0 = Debug|ARM64
- {7467E9AE-844F-444D-8A3F-17397544BA21}.Debug|x64.ActiveCfg = Debug|x64
- {7467E9AE-844F-444D-8A3F-17397544BA21}.Debug|x64.Build.0 = Debug|x64
- {7467E9AE-844F-444D-8A3F-17397544BA21}.Debug|x86.ActiveCfg = Debug|Win32
- {7467E9AE-844F-444D-8A3F-17397544BA21}.Debug|x86.Build.0 = Debug|Win32
- {7467E9AE-844F-444D-8A3F-17397544BA21}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
- {7467E9AE-844F-444D-8A3F-17397544BA21}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
- {7467E9AE-844F-444D-8A3F-17397544BA21}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
- {7467E9AE-844F-444D-8A3F-17397544BA21}.Release.DLL|x64.Build.0 = Release.DLL|x64
- {7467E9AE-844F-444D-8A3F-17397544BA21}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
- {7467E9AE-844F-444D-8A3F-17397544BA21}.Release.DLL|x86.Build.0 = Release.DLL|Win32
- {7467E9AE-844F-444D-8A3F-17397544BA21}.Release|ARM64.ActiveCfg = Release|ARM64
- {7467E9AE-844F-444D-8A3F-17397544BA21}.Release|ARM64.Build.0 = Release|ARM64
- {7467E9AE-844F-444D-8A3F-17397544BA21}.Release|x64.ActiveCfg = Release|x64
- {7467E9AE-844F-444D-8A3F-17397544BA21}.Release|x64.Build.0 = Release|x64
- {7467E9AE-844F-444D-8A3F-17397544BA21}.Release|x86.ActiveCfg = Release|Win32
- {7467E9AE-844F-444D-8A3F-17397544BA21}.Release|x86.Build.0 = Release|Win32
- {497FDF54-9762-4048-A833-61CC3980A0FB}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
- {497FDF54-9762-4048-A833-61CC3980A0FB}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
- {497FDF54-9762-4048-A833-61CC3980A0FB}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
- {497FDF54-9762-4048-A833-61CC3980A0FB}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
- {497FDF54-9762-4048-A833-61CC3980A0FB}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
- {497FDF54-9762-4048-A833-61CC3980A0FB}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
- {497FDF54-9762-4048-A833-61CC3980A0FB}.Debug|ARM64.ActiveCfg = Debug|ARM64
- {497FDF54-9762-4048-A833-61CC3980A0FB}.Debug|ARM64.Build.0 = Debug|ARM64
- {497FDF54-9762-4048-A833-61CC3980A0FB}.Debug|x64.ActiveCfg = Debug|x64
- {497FDF54-9762-4048-A833-61CC3980A0FB}.Debug|x64.Build.0 = Debug|x64
- {497FDF54-9762-4048-A833-61CC3980A0FB}.Debug|x86.ActiveCfg = Debug|Win32
- {497FDF54-9762-4048-A833-61CC3980A0FB}.Debug|x86.Build.0 = Debug|Win32
- {497FDF54-9762-4048-A833-61CC3980A0FB}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
- {497FDF54-9762-4048-A833-61CC3980A0FB}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
- {497FDF54-9762-4048-A833-61CC3980A0FB}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
- {497FDF54-9762-4048-A833-61CC3980A0FB}.Release.DLL|x64.Build.0 = Release.DLL|x64
- {497FDF54-9762-4048-A833-61CC3980A0FB}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
- {497FDF54-9762-4048-A833-61CC3980A0FB}.Release.DLL|x86.Build.0 = Release.DLL|Win32
- {497FDF54-9762-4048-A833-61CC3980A0FB}.Release|ARM64.ActiveCfg = Release|ARM64
- {497FDF54-9762-4048-A833-61CC3980A0FB}.Release|ARM64.Build.0 = Release|ARM64
- {497FDF54-9762-4048-A833-61CC3980A0FB}.Release|x64.ActiveCfg = Release|x64
- {497FDF54-9762-4048-A833-61CC3980A0FB}.Release|x64.Build.0 = Release|x64
- {497FDF54-9762-4048-A833-61CC3980A0FB}.Release|x86.ActiveCfg = Release|Win32
- {497FDF54-9762-4048-A833-61CC3980A0FB}.Release|x86.Build.0 = Release|Win32
- {29B00F47-BE91-4A1F-B87D-B1302F038316}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
- {29B00F47-BE91-4A1F-B87D-B1302F038316}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
- {29B00F47-BE91-4A1F-B87D-B1302F038316}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
- {29B00F47-BE91-4A1F-B87D-B1302F038316}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
- {29B00F47-BE91-4A1F-B87D-B1302F038316}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
- {29B00F47-BE91-4A1F-B87D-B1302F038316}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
- {29B00F47-BE91-4A1F-B87D-B1302F038316}.Debug|ARM64.ActiveCfg = Debug|ARM64
- {29B00F47-BE91-4A1F-B87D-B1302F038316}.Debug|ARM64.Build.0 = Debug|ARM64
- {29B00F47-BE91-4A1F-B87D-B1302F038316}.Debug|x64.ActiveCfg = Debug|x64
- {29B00F47-BE91-4A1F-B87D-B1302F038316}.Debug|x64.Build.0 = Debug|x64
- {29B00F47-BE91-4A1F-B87D-B1302F038316}.Debug|x86.ActiveCfg = Debug|Win32
- {29B00F47-BE91-4A1F-B87D-B1302F038316}.Debug|x86.Build.0 = Debug|Win32
- {29B00F47-BE91-4A1F-B87D-B1302F038316}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
- {29B00F47-BE91-4A1F-B87D-B1302F038316}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
- {29B00F47-BE91-4A1F-B87D-B1302F038316}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
- {29B00F47-BE91-4A1F-B87D-B1302F038316}.Release.DLL|x64.Build.0 = Release.DLL|x64
- {29B00F47-BE91-4A1F-B87D-B1302F038316}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
- {29B00F47-BE91-4A1F-B87D-B1302F038316}.Release.DLL|x86.Build.0 = Release.DLL|Win32
- {29B00F47-BE91-4A1F-B87D-B1302F038316}.Release|ARM64.ActiveCfg = Release|ARM64
- {29B00F47-BE91-4A1F-B87D-B1302F038316}.Release|ARM64.Build.0 = Release|ARM64
- {29B00F47-BE91-4A1F-B87D-B1302F038316}.Release|x64.ActiveCfg = Release|x64
- {29B00F47-BE91-4A1F-B87D-B1302F038316}.Release|x64.Build.0 = Release|x64
- {29B00F47-BE91-4A1F-B87D-B1302F038316}.Release|x86.ActiveCfg = Release|Win32
- {29B00F47-BE91-4A1F-B87D-B1302F038316}.Release|x86.Build.0 = Release|Win32
- {124935CC-73BB-489E-92E8-4F922A85DB5D}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
- {124935CC-73BB-489E-92E8-4F922A85DB5D}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
- {124935CC-73BB-489E-92E8-4F922A85DB5D}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
- {124935CC-73BB-489E-92E8-4F922A85DB5D}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
- {124935CC-73BB-489E-92E8-4F922A85DB5D}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
- {124935CC-73BB-489E-92E8-4F922A85DB5D}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
- {124935CC-73BB-489E-92E8-4F922A85DB5D}.Debug|ARM64.ActiveCfg = Debug|ARM64
- {124935CC-73BB-489E-92E8-4F922A85DB5D}.Debug|ARM64.Build.0 = Debug|ARM64
- {124935CC-73BB-489E-92E8-4F922A85DB5D}.Debug|x64.ActiveCfg = Debug|x64
- {124935CC-73BB-489E-92E8-4F922A85DB5D}.Debug|x64.Build.0 = Debug|x64
- {124935CC-73BB-489E-92E8-4F922A85DB5D}.Debug|x86.ActiveCfg = Debug|Win32
- {124935CC-73BB-489E-92E8-4F922A85DB5D}.Debug|x86.Build.0 = Debug|Win32
- {124935CC-73BB-489E-92E8-4F922A85DB5D}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
- {124935CC-73BB-489E-92E8-4F922A85DB5D}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
- {124935CC-73BB-489E-92E8-4F922A85DB5D}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
- {124935CC-73BB-489E-92E8-4F922A85DB5D}.Release.DLL|x64.Build.0 = Release.DLL|x64
- {124935CC-73BB-489E-92E8-4F922A85DB5D}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
- {124935CC-73BB-489E-92E8-4F922A85DB5D}.Release.DLL|x86.Build.0 = Release.DLL|Win32
- {124935CC-73BB-489E-92E8-4F922A85DB5D}.Release|ARM64.ActiveCfg = Release|ARM64
- {124935CC-73BB-489E-92E8-4F922A85DB5D}.Release|ARM64.Build.0 = Release|ARM64
- {124935CC-73BB-489E-92E8-4F922A85DB5D}.Release|x64.ActiveCfg = Release|x64
- {124935CC-73BB-489E-92E8-4F922A85DB5D}.Release|x64.Build.0 = Release|x64
- {124935CC-73BB-489E-92E8-4F922A85DB5D}.Release|x86.ActiveCfg = Release|Win32
- {124935CC-73BB-489E-92E8-4F922A85DB5D}.Release|x86.Build.0 = Release|Win32
- {AC215730-2B5F-4498-B7F5-5DB80AEFCA5F}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
- {AC215730-2B5F-4498-B7F5-5DB80AEFCA5F}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
- {AC215730-2B5F-4498-B7F5-5DB80AEFCA5F}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
- {AC215730-2B5F-4498-B7F5-5DB80AEFCA5F}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
- {AC215730-2B5F-4498-B7F5-5DB80AEFCA5F}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
- {AC215730-2B5F-4498-B7F5-5DB80AEFCA5F}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
- {AC215730-2B5F-4498-B7F5-5DB80AEFCA5F}.Debug|ARM64.ActiveCfg = Debug|ARM64
- {AC215730-2B5F-4498-B7F5-5DB80AEFCA5F}.Debug|ARM64.Build.0 = Debug|ARM64
- {AC215730-2B5F-4498-B7F5-5DB80AEFCA5F}.Debug|x64.ActiveCfg = Debug|x64
- {AC215730-2B5F-4498-B7F5-5DB80AEFCA5F}.Debug|x64.Build.0 = Debug|x64
- {AC215730-2B5F-4498-B7F5-5DB80AEFCA5F}.Debug|x86.ActiveCfg = Debug|Win32
- {AC215730-2B5F-4498-B7F5-5DB80AEFCA5F}.Debug|x86.Build.0 = Debug|Win32
- {AC215730-2B5F-4498-B7F5-5DB80AEFCA5F}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
- {AC215730-2B5F-4498-B7F5-5DB80AEFCA5F}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
- {AC215730-2B5F-4498-B7F5-5DB80AEFCA5F}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
- {AC215730-2B5F-4498-B7F5-5DB80AEFCA5F}.Release.DLL|x64.Build.0 = Release.DLL|x64
- {AC215730-2B5F-4498-B7F5-5DB80AEFCA5F}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
- {AC215730-2B5F-4498-B7F5-5DB80AEFCA5F}.Release.DLL|x86.Build.0 = Release.DLL|Win32
- {AC215730-2B5F-4498-B7F5-5DB80AEFCA5F}.Release|ARM64.ActiveCfg = Release|ARM64
- {AC215730-2B5F-4498-B7F5-5DB80AEFCA5F}.Release|ARM64.Build.0 = Release|ARM64
- {AC215730-2B5F-4498-B7F5-5DB80AEFCA5F}.Release|x64.ActiveCfg = Release|x64
- {AC215730-2B5F-4498-B7F5-5DB80AEFCA5F}.Release|x64.Build.0 = Release|x64
- {AC215730-2B5F-4498-B7F5-5DB80AEFCA5F}.Release|x86.ActiveCfg = Release|Win32
- {AC215730-2B5F-4498-B7F5-5DB80AEFCA5F}.Release|x86.Build.0 = Release|Win32
- {0835E6BF-0170-4E99-A55C-E06E1EF4C3B2}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
- {0835E6BF-0170-4E99-A55C-E06E1EF4C3B2}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
- {0835E6BF-0170-4E99-A55C-E06E1EF4C3B2}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
- {0835E6BF-0170-4E99-A55C-E06E1EF4C3B2}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
- {0835E6BF-0170-4E99-A55C-E06E1EF4C3B2}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
- {0835E6BF-0170-4E99-A55C-E06E1EF4C3B2}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
- {0835E6BF-0170-4E99-A55C-E06E1EF4C3B2}.Debug|ARM64.ActiveCfg = Debug|ARM64
- {0835E6BF-0170-4E99-A55C-E06E1EF4C3B2}.Debug|ARM64.Build.0 = Debug|ARM64
- {0835E6BF-0170-4E99-A55C-E06E1EF4C3B2}.Debug|x64.ActiveCfg = Debug|x64
- {0835E6BF-0170-4E99-A55C-E06E1EF4C3B2}.Debug|x64.Build.0 = Debug|x64
- {0835E6BF-0170-4E99-A55C-E06E1EF4C3B2}.Debug|x86.ActiveCfg = Debug|Win32
- {0835E6BF-0170-4E99-A55C-E06E1EF4C3B2}.Debug|x86.Build.0 = Debug|Win32
- {0835E6BF-0170-4E99-A55C-E06E1EF4C3B2}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
- {0835E6BF-0170-4E99-A55C-E06E1EF4C3B2}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
- {0835E6BF-0170-4E99-A55C-E06E1EF4C3B2}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
- {0835E6BF-0170-4E99-A55C-E06E1EF4C3B2}.Release.DLL|x64.Build.0 = Release.DLL|x64
- {0835E6BF-0170-4E99-A55C-E06E1EF4C3B2}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
- {0835E6BF-0170-4E99-A55C-E06E1EF4C3B2}.Release.DLL|x86.Build.0 = Release.DLL|Win32
- {0835E6BF-0170-4E99-A55C-E06E1EF4C3B2}.Release|ARM64.ActiveCfg = Release|ARM64
- {0835E6BF-0170-4E99-A55C-E06E1EF4C3B2}.Release|ARM64.Build.0 = Release|ARM64
- {0835E6BF-0170-4E99-A55C-E06E1EF4C3B2}.Release|x64.ActiveCfg = Release|x64
- {0835E6BF-0170-4E99-A55C-E06E1EF4C3B2}.Release|x64.Build.0 = Release|x64
- {0835E6BF-0170-4E99-A55C-E06E1EF4C3B2}.Release|x86.ActiveCfg = Release|Win32
- {0835E6BF-0170-4E99-A55C-E06E1EF4C3B2}.Release|x86.Build.0 = Release|Win32
- {EA4AD5A7-DB95-43C0-9A67-2D94146BCF91}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
- {EA4AD5A7-DB95-43C0-9A67-2D94146BCF91}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
- {EA4AD5A7-DB95-43C0-9A67-2D94146BCF91}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
- {EA4AD5A7-DB95-43C0-9A67-2D94146BCF91}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
- {EA4AD5A7-DB95-43C0-9A67-2D94146BCF91}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
- {EA4AD5A7-DB95-43C0-9A67-2D94146BCF91}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
- {EA4AD5A7-DB95-43C0-9A67-2D94146BCF91}.Debug|ARM64.ActiveCfg = Debug|ARM64
- {EA4AD5A7-DB95-43C0-9A67-2D94146BCF91}.Debug|ARM64.Build.0 = Debug|ARM64
- {EA4AD5A7-DB95-43C0-9A67-2D94146BCF91}.Debug|x64.ActiveCfg = Debug|x64
- {EA4AD5A7-DB95-43C0-9A67-2D94146BCF91}.Debug|x64.Build.0 = Debug|x64
- {EA4AD5A7-DB95-43C0-9A67-2D94146BCF91}.Debug|x86.ActiveCfg = Debug|Win32
- {EA4AD5A7-DB95-43C0-9A67-2D94146BCF91}.Debug|x86.Build.0 = Debug|Win32
- {EA4AD5A7-DB95-43C0-9A67-2D94146BCF91}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
- {EA4AD5A7-DB95-43C0-9A67-2D94146BCF91}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
- {EA4AD5A7-DB95-43C0-9A67-2D94146BCF91}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
- {EA4AD5A7-DB95-43C0-9A67-2D94146BCF91}.Release.DLL|x64.Build.0 = Release.DLL|x64
- {EA4AD5A7-DB95-43C0-9A67-2D94146BCF91}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
- {EA4AD5A7-DB95-43C0-9A67-2D94146BCF91}.Release.DLL|x86.Build.0 = Release.DLL|Win32
- {EA4AD5A7-DB95-43C0-9A67-2D94146BCF91}.Release|ARM64.ActiveCfg = Release|ARM64
- {EA4AD5A7-DB95-43C0-9A67-2D94146BCF91}.Release|ARM64.Build.0 = Release|ARM64
- {EA4AD5A7-DB95-43C0-9A67-2D94146BCF91}.Release|x64.ActiveCfg = Release|x64
- {EA4AD5A7-DB95-43C0-9A67-2D94146BCF91}.Release|x64.Build.0 = Release|x64
- {EA4AD5A7-DB95-43C0-9A67-2D94146BCF91}.Release|x86.ActiveCfg = Release|Win32
- {EA4AD5A7-DB95-43C0-9A67-2D94146BCF91}.Release|x86.Build.0 = Release|Win32
- {1ACC8236-EF4E-44B0-BD0C-AB1D95D5890F}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
- {1ACC8236-EF4E-44B0-BD0C-AB1D95D5890F}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
- {1ACC8236-EF4E-44B0-BD0C-AB1D95D5890F}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
- {1ACC8236-EF4E-44B0-BD0C-AB1D95D5890F}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
- {1ACC8236-EF4E-44B0-BD0C-AB1D95D5890F}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
- {1ACC8236-EF4E-44B0-BD0C-AB1D95D5890F}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
- {1ACC8236-EF4E-44B0-BD0C-AB1D95D5890F}.Debug|ARM64.ActiveCfg = Debug|ARM64
- {1ACC8236-EF4E-44B0-BD0C-AB1D95D5890F}.Debug|ARM64.Build.0 = Debug|ARM64
- {1ACC8236-EF4E-44B0-BD0C-AB1D95D5890F}.Debug|x64.ActiveCfg = Debug|x64
- {1ACC8236-EF4E-44B0-BD0C-AB1D95D5890F}.Debug|x64.Build.0 = Debug|x64
- {1ACC8236-EF4E-44B0-BD0C-AB1D95D5890F}.Debug|x86.ActiveCfg = Debug|Win32
- {1ACC8236-EF4E-44B0-BD0C-AB1D95D5890F}.Debug|x86.Build.0 = Debug|Win32
- {1ACC8236-EF4E-44B0-BD0C-AB1D95D5890F}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
- {1ACC8236-EF4E-44B0-BD0C-AB1D95D5890F}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
- {1ACC8236-EF4E-44B0-BD0C-AB1D95D5890F}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
- {1ACC8236-EF4E-44B0-BD0C-AB1D95D5890F}.Release.DLL|x64.Build.0 = Release.DLL|x64
- {1ACC8236-EF4E-44B0-BD0C-AB1D95D5890F}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
- {1ACC8236-EF4E-44B0-BD0C-AB1D95D5890F}.Release.DLL|x86.Build.0 = Release.DLL|Win32
- {1ACC8236-EF4E-44B0-BD0C-AB1D95D5890F}.Release|ARM64.ActiveCfg = Release|ARM64
- {1ACC8236-EF4E-44B0-BD0C-AB1D95D5890F}.Release|ARM64.Build.0 = Release|ARM64
- {1ACC8236-EF4E-44B0-BD0C-AB1D95D5890F}.Release|x64.ActiveCfg = Release|x64
- {1ACC8236-EF4E-44B0-BD0C-AB1D95D5890F}.Release|x64.Build.0 = Release|x64
- {1ACC8236-EF4E-44B0-BD0C-AB1D95D5890F}.Release|x86.ActiveCfg = Release|Win32
- {1ACC8236-EF4E-44B0-BD0C-AB1D95D5890F}.Release|x86.Build.0 = Release|Win32
- {9DE2FC01-A839-4F89-8319-9071D4C54821}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
- {9DE2FC01-A839-4F89-8319-9071D4C54821}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
- {9DE2FC01-A839-4F89-8319-9071D4C54821}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
- {9DE2FC01-A839-4F89-8319-9071D4C54821}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
- {9DE2FC01-A839-4F89-8319-9071D4C54821}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
- {9DE2FC01-A839-4F89-8319-9071D4C54821}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
- {9DE2FC01-A839-4F89-8319-9071D4C54821}.Debug|ARM64.ActiveCfg = Debug|ARM64
- {9DE2FC01-A839-4F89-8319-9071D4C54821}.Debug|ARM64.Build.0 = Debug|ARM64
- {9DE2FC01-A839-4F89-8319-9071D4C54821}.Debug|x64.ActiveCfg = Debug|x64
- {9DE2FC01-A839-4F89-8319-9071D4C54821}.Debug|x64.Build.0 = Debug|x64
- {9DE2FC01-A839-4F89-8319-9071D4C54821}.Debug|x86.ActiveCfg = Debug|Win32
- {9DE2FC01-A839-4F89-8319-9071D4C54821}.Debug|x86.Build.0 = Debug|Win32
- {9DE2FC01-A839-4F89-8319-9071D4C54821}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
- {9DE2FC01-A839-4F89-8319-9071D4C54821}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
- {9DE2FC01-A839-4F89-8319-9071D4C54821}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
- {9DE2FC01-A839-4F89-8319-9071D4C54821}.Release.DLL|x64.Build.0 = Release.DLL|x64
- {9DE2FC01-A839-4F89-8319-9071D4C54821}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
- {9DE2FC01-A839-4F89-8319-9071D4C54821}.Release.DLL|x86.Build.0 = Release.DLL|Win32
- {9DE2FC01-A839-4F89-8319-9071D4C54821}.Release|ARM64.ActiveCfg = Release|ARM64
- {9DE2FC01-A839-4F89-8319-9071D4C54821}.Release|ARM64.Build.0 = Release|ARM64
- {9DE2FC01-A839-4F89-8319-9071D4C54821}.Release|x64.ActiveCfg = Release|x64
- {9DE2FC01-A839-4F89-8319-9071D4C54821}.Release|x64.Build.0 = Release|x64
- {9DE2FC01-A839-4F89-8319-9071D4C54821}.Release|x86.ActiveCfg = Release|Win32
- {9DE2FC01-A839-4F89-8319-9071D4C54821}.Release|x86.Build.0 = Release|Win32
- {2F578155-D51F-4C03-AB7F-5C5122CA46CC}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
- {2F578155-D51F-4C03-AB7F-5C5122CA46CC}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
- {2F578155-D51F-4C03-AB7F-5C5122CA46CC}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
- {2F578155-D51F-4C03-AB7F-5C5122CA46CC}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
- {2F578155-D51F-4C03-AB7F-5C5122CA46CC}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
- {2F578155-D51F-4C03-AB7F-5C5122CA46CC}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
- {2F578155-D51F-4C03-AB7F-5C5122CA46CC}.Debug|ARM64.ActiveCfg = Debug|ARM64
- {2F578155-D51F-4C03-AB7F-5C5122CA46CC}.Debug|ARM64.Build.0 = Debug|ARM64
- {2F578155-D51F-4C03-AB7F-5C5122CA46CC}.Debug|x64.ActiveCfg = Debug|x64
- {2F578155-D51F-4C03-AB7F-5C5122CA46CC}.Debug|x64.Build.0 = Debug|x64
- {2F578155-D51F-4C03-AB7F-5C5122CA46CC}.Debug|x86.ActiveCfg = Debug|Win32
- {2F578155-D51F-4C03-AB7F-5C5122CA46CC}.Debug|x86.Build.0 = Debug|Win32
- {2F578155-D51F-4C03-AB7F-5C5122CA46CC}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
- {2F578155-D51F-4C03-AB7F-5C5122CA46CC}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
- {2F578155-D51F-4C03-AB7F-5C5122CA46CC}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
- {2F578155-D51F-4C03-AB7F-5C5122CA46CC}.Release.DLL|x64.Build.0 = Release.DLL|x64
- {2F578155-D51F-4C03-AB7F-5C5122CA46CC}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
- {2F578155-D51F-4C03-AB7F-5C5122CA46CC}.Release.DLL|x86.Build.0 = Release.DLL|Win32
- {2F578155-D51F-4C03-AB7F-5C5122CA46CC}.Release|ARM64.ActiveCfg = Release|ARM64
- {2F578155-D51F-4C03-AB7F-5C5122CA46CC}.Release|ARM64.Build.0 = Release|ARM64
- {2F578155-D51F-4C03-AB7F-5C5122CA46CC}.Release|x64.ActiveCfg = Release|x64
- {2F578155-D51F-4C03-AB7F-5C5122CA46CC}.Release|x64.Build.0 = Release|x64
- {2F578155-D51F-4C03-AB7F-5C5122CA46CC}.Release|x86.ActiveCfg = Release|Win32
- {2F578155-D51F-4C03-AB7F-5C5122CA46CC}.Release|x86.Build.0 = Release|Win32
- {1C829D1A-892C-451C-AF0B-AC65C85F5CC6}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
- {1C829D1A-892C-451C-AF0B-AC65C85F5CC6}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
- {1C829D1A-892C-451C-AF0B-AC65C85F5CC6}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
- {1C829D1A-892C-451C-AF0B-AC65C85F5CC6}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
- {1C829D1A-892C-451C-AF0B-AC65C85F5CC6}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
- {1C829D1A-892C-451C-AF0B-AC65C85F5CC6}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
- {1C829D1A-892C-451C-AF0B-AC65C85F5CC6}.Debug|ARM64.ActiveCfg = Debug|ARM64
- {1C829D1A-892C-451C-AF0B-AC65C85F5CC6}.Debug|ARM64.Build.0 = Debug|ARM64
- {1C829D1A-892C-451C-AF0B-AC65C85F5CC6}.Debug|x64.ActiveCfg = Debug|x64
- {1C829D1A-892C-451C-AF0B-AC65C85F5CC6}.Debug|x64.Build.0 = Debug|x64
- {1C829D1A-892C-451C-AF0B-AC65C85F5CC6}.Debug|x86.ActiveCfg = Debug|Win32
- {1C829D1A-892C-451C-AF0B-AC65C85F5CC6}.Debug|x86.Build.0 = Debug|Win32
- {1C829D1A-892C-451C-AF0B-AC65C85F5CC6}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
- {1C829D1A-892C-451C-AF0B-AC65C85F5CC6}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
- {1C829D1A-892C-451C-AF0B-AC65C85F5CC6}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
- {1C829D1A-892C-451C-AF0B-AC65C85F5CC6}.Release.DLL|x64.Build.0 = Release.DLL|x64
- {1C829D1A-892C-451C-AF0B-AC65C85F5CC6}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
- {1C829D1A-892C-451C-AF0B-AC65C85F5CC6}.Release.DLL|x86.Build.0 = Release.DLL|Win32
- {1C829D1A-892C-451C-AF0B-AC65C85F5CC6}.Release|ARM64.ActiveCfg = Release|ARM64
- {1C829D1A-892C-451C-AF0B-AC65C85F5CC6}.Release|ARM64.Build.0 = Release|ARM64
- {1C829D1A-892C-451C-AF0B-AC65C85F5CC6}.Release|x64.ActiveCfg = Release|x64
- {1C829D1A-892C-451C-AF0B-AC65C85F5CC6}.Release|x64.Build.0 = Release|x64
- {1C829D1A-892C-451C-AF0B-AC65C85F5CC6}.Release|x86.ActiveCfg = Release|Win32
- {1C829D1A-892C-451C-AF0B-AC65C85F5CC6}.Release|x86.Build.0 = Release|Win32
- {84DE22BB-C25F-425C-A7FE-0120CF107B83}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
- {84DE22BB-C25F-425C-A7FE-0120CF107B83}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
- {84DE22BB-C25F-425C-A7FE-0120CF107B83}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
- {84DE22BB-C25F-425C-A7FE-0120CF107B83}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
- {84DE22BB-C25F-425C-A7FE-0120CF107B83}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
- {84DE22BB-C25F-425C-A7FE-0120CF107B83}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
- {84DE22BB-C25F-425C-A7FE-0120CF107B83}.Debug|ARM64.ActiveCfg = Debug|ARM64
- {84DE22BB-C25F-425C-A7FE-0120CF107B83}.Debug|ARM64.Build.0 = Debug|ARM64
- {84DE22BB-C25F-425C-A7FE-0120CF107B83}.Debug|x64.ActiveCfg = Debug|x64
- {84DE22BB-C25F-425C-A7FE-0120CF107B83}.Debug|x64.Build.0 = Debug|x64
- {84DE22BB-C25F-425C-A7FE-0120CF107B83}.Debug|x86.ActiveCfg = Debug|Win32
- {84DE22BB-C25F-425C-A7FE-0120CF107B83}.Debug|x86.Build.0 = Debug|Win32
- {84DE22BB-C25F-425C-A7FE-0120CF107B83}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
- {84DE22BB-C25F-425C-A7FE-0120CF107B83}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
- {84DE22BB-C25F-425C-A7FE-0120CF107B83}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
- {84DE22BB-C25F-425C-A7FE-0120CF107B83}.Release.DLL|x64.Build.0 = Release.DLL|x64
- {84DE22BB-C25F-425C-A7FE-0120CF107B83}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
- {84DE22BB-C25F-425C-A7FE-0120CF107B83}.Release.DLL|x86.Build.0 = Release.DLL|Win32
- {84DE22BB-C25F-425C-A7FE-0120CF107B83}.Release|ARM64.ActiveCfg = Release|ARM64
- {84DE22BB-C25F-425C-A7FE-0120CF107B83}.Release|ARM64.Build.0 = Release|ARM64
- {84DE22BB-C25F-425C-A7FE-0120CF107B83}.Release|x64.ActiveCfg = Release|x64
- {84DE22BB-C25F-425C-A7FE-0120CF107B83}.Release|x64.Build.0 = Release|x64
- {84DE22BB-C25F-425C-A7FE-0120CF107B83}.Release|x86.ActiveCfg = Release|Win32
- {84DE22BB-C25F-425C-A7FE-0120CF107B83}.Release|x86.Build.0 = Release|Win32
- {98152EDD-7E28-4FA3-89D8-B636ED5D5F65}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
- {98152EDD-7E28-4FA3-89D8-B636ED5D5F65}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
- {98152EDD-7E28-4FA3-89D8-B636ED5D5F65}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
- {98152EDD-7E28-4FA3-89D8-B636ED5D5F65}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
- {98152EDD-7E28-4FA3-89D8-B636ED5D5F65}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
- {98152EDD-7E28-4FA3-89D8-B636ED5D5F65}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
- {98152EDD-7E28-4FA3-89D8-B636ED5D5F65}.Debug|ARM64.ActiveCfg = Debug|ARM64
- {98152EDD-7E28-4FA3-89D8-B636ED5D5F65}.Debug|ARM64.Build.0 = Debug|ARM64
- {98152EDD-7E28-4FA3-89D8-B636ED5D5F65}.Debug|x64.ActiveCfg = Debug|x64
- {98152EDD-7E28-4FA3-89D8-B636ED5D5F65}.Debug|x64.Build.0 = Debug|x64
- {98152EDD-7E28-4FA3-89D8-B636ED5D5F65}.Debug|x86.ActiveCfg = Debug|Win32
- {98152EDD-7E28-4FA3-89D8-B636ED5D5F65}.Debug|x86.Build.0 = Debug|Win32
- {98152EDD-7E28-4FA3-89D8-B636ED5D5F65}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
- {98152EDD-7E28-4FA3-89D8-B636ED5D5F65}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
- {98152EDD-7E28-4FA3-89D8-B636ED5D5F65}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
- {98152EDD-7E28-4FA3-89D8-B636ED5D5F65}.Release.DLL|x64.Build.0 = Release.DLL|x64
- {98152EDD-7E28-4FA3-89D8-B636ED5D5F65}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
- {98152EDD-7E28-4FA3-89D8-B636ED5D5F65}.Release.DLL|x86.Build.0 = Release.DLL|Win32
- {98152EDD-7E28-4FA3-89D8-B636ED5D5F65}.Release|ARM64.ActiveCfg = Release|ARM64
- {98152EDD-7E28-4FA3-89D8-B636ED5D5F65}.Release|ARM64.Build.0 = Release|ARM64
- {98152EDD-7E28-4FA3-89D8-B636ED5D5F65}.Release|x64.ActiveCfg = Release|x64
- {98152EDD-7E28-4FA3-89D8-B636ED5D5F65}.Release|x64.Build.0 = Release|x64
- {98152EDD-7E28-4FA3-89D8-B636ED5D5F65}.Release|x86.ActiveCfg = Release|Win32
- {98152EDD-7E28-4FA3-89D8-B636ED5D5F65}.Release|x86.Build.0 = Release|Win32
- {B7FDD40F-DDA4-468E-9C40-EEB175964A26}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
- {B7FDD40F-DDA4-468E-9C40-EEB175964A26}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
- {B7FDD40F-DDA4-468E-9C40-EEB175964A26}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
- {B7FDD40F-DDA4-468E-9C40-EEB175964A26}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
- {B7FDD40F-DDA4-468E-9C40-EEB175964A26}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
- {B7FDD40F-DDA4-468E-9C40-EEB175964A26}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
- {B7FDD40F-DDA4-468E-9C40-EEB175964A26}.Debug|ARM64.ActiveCfg = Debug|ARM64
- {B7FDD40F-DDA4-468E-9C40-EEB175964A26}.Debug|ARM64.Build.0 = Debug|ARM64
- {B7FDD40F-DDA4-468E-9C40-EEB175964A26}.Debug|x64.ActiveCfg = Debug|x64
- {B7FDD40F-DDA4-468E-9C40-EEB175964A26}.Debug|x64.Build.0 = Debug|x64
- {B7FDD40F-DDA4-468E-9C40-EEB175964A26}.Debug|x86.ActiveCfg = Debug|Win32
- {B7FDD40F-DDA4-468E-9C40-EEB175964A26}.Debug|x86.Build.0 = Debug|Win32
- {B7FDD40F-DDA4-468E-9C40-EEB175964A26}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
- {B7FDD40F-DDA4-468E-9C40-EEB175964A26}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
- {B7FDD40F-DDA4-468E-9C40-EEB175964A26}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
- {B7FDD40F-DDA4-468E-9C40-EEB175964A26}.Release.DLL|x64.Build.0 = Release.DLL|x64
- {B7FDD40F-DDA4-468E-9C40-EEB175964A26}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
- {B7FDD40F-DDA4-468E-9C40-EEB175964A26}.Release.DLL|x86.Build.0 = Release.DLL|Win32
- {B7FDD40F-DDA4-468E-9C40-EEB175964A26}.Release|ARM64.ActiveCfg = Release|ARM64
- {B7FDD40F-DDA4-468E-9C40-EEB175964A26}.Release|ARM64.Build.0 = Release|ARM64
- {B7FDD40F-DDA4-468E-9C40-EEB175964A26}.Release|x64.ActiveCfg = Release|x64
- {B7FDD40F-DDA4-468E-9C40-EEB175964A26}.Release|x64.Build.0 = Release|x64
- {B7FDD40F-DDA4-468E-9C40-EEB175964A26}.Release|x86.ActiveCfg = Release|Win32
- {B7FDD40F-DDA4-468E-9C40-EEB175964A26}.Release|x86.Build.0 = Release|Win32
- {028F0967-B253-45DA-B1C4-FACCE45D0D8D}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
- {028F0967-B253-45DA-B1C4-FACCE45D0D8D}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
- {028F0967-B253-45DA-B1C4-FACCE45D0D8D}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
- {028F0967-B253-45DA-B1C4-FACCE45D0D8D}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
- {028F0967-B253-45DA-B1C4-FACCE45D0D8D}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
- {028F0967-B253-45DA-B1C4-FACCE45D0D8D}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
- {028F0967-B253-45DA-B1C4-FACCE45D0D8D}.Debug|ARM64.ActiveCfg = Debug|ARM64
- {028F0967-B253-45DA-B1C4-FACCE45D0D8D}.Debug|ARM64.Build.0 = Debug|ARM64
- {028F0967-B253-45DA-B1C4-FACCE45D0D8D}.Debug|x64.ActiveCfg = Debug|x64
- {028F0967-B253-45DA-B1C4-FACCE45D0D8D}.Debug|x64.Build.0 = Debug|x64
- {028F0967-B253-45DA-B1C4-FACCE45D0D8D}.Debug|x86.ActiveCfg = Debug|Win32
- {028F0967-B253-45DA-B1C4-FACCE45D0D8D}.Debug|x86.Build.0 = Debug|Win32
- {028F0967-B253-45DA-B1C4-FACCE45D0D8D}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
- {028F0967-B253-45DA-B1C4-FACCE45D0D8D}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
- {028F0967-B253-45DA-B1C4-FACCE45D0D8D}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
- {028F0967-B253-45DA-B1C4-FACCE45D0D8D}.Release.DLL|x64.Build.0 = Release.DLL|x64
- {028F0967-B253-45DA-B1C4-FACCE45D0D8D}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
- {028F0967-B253-45DA-B1C4-FACCE45D0D8D}.Release.DLL|x86.Build.0 = Release.DLL|Win32
- {028F0967-B253-45DA-B1C4-FACCE45D0D8D}.Release|ARM64.ActiveCfg = Release|ARM64
- {028F0967-B253-45DA-B1C4-FACCE45D0D8D}.Release|ARM64.Build.0 = Release|ARM64
- {028F0967-B253-45DA-B1C4-FACCE45D0D8D}.Release|x64.ActiveCfg = Release|x64
- {028F0967-B253-45DA-B1C4-FACCE45D0D8D}.Release|x64.Build.0 = Release|x64
- {028F0967-B253-45DA-B1C4-FACCE45D0D8D}.Release|x86.ActiveCfg = Release|Win32
- {028F0967-B253-45DA-B1C4-FACCE45D0D8D}.Release|x86.Build.0 = Release|Win32
- {666346D7-C84B-498D-AE17-53B20C62DB1A}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
- {666346D7-C84B-498D-AE17-53B20C62DB1A}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
- {666346D7-C84B-498D-AE17-53B20C62DB1A}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
- {666346D7-C84B-498D-AE17-53B20C62DB1A}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
- {666346D7-C84B-498D-AE17-53B20C62DB1A}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
- {666346D7-C84B-498D-AE17-53B20C62DB1A}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
- {666346D7-C84B-498D-AE17-53B20C62DB1A}.Debug|ARM64.ActiveCfg = Debug|ARM64
- {666346D7-C84B-498D-AE17-53B20C62DB1A}.Debug|ARM64.Build.0 = Debug|ARM64
- {666346D7-C84B-498D-AE17-53B20C62DB1A}.Debug|x64.ActiveCfg = Debug|x64
- {666346D7-C84B-498D-AE17-53B20C62DB1A}.Debug|x64.Build.0 = Debug|x64
- {666346D7-C84B-498D-AE17-53B20C62DB1A}.Debug|x86.ActiveCfg = Debug|Win32
- {666346D7-C84B-498D-AE17-53B20C62DB1A}.Debug|x86.Build.0 = Debug|Win32
- {666346D7-C84B-498D-AE17-53B20C62DB1A}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
- {666346D7-C84B-498D-AE17-53B20C62DB1A}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
- {666346D7-C84B-498D-AE17-53B20C62DB1A}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
- {666346D7-C84B-498D-AE17-53B20C62DB1A}.Release.DLL|x64.Build.0 = Release.DLL|x64
- {666346D7-C84B-498D-AE17-53B20C62DB1A}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
- {666346D7-C84B-498D-AE17-53B20C62DB1A}.Release.DLL|x86.Build.0 = Release.DLL|Win32
- {666346D7-C84B-498D-AE17-53B20C62DB1A}.Release|ARM64.ActiveCfg = Release|ARM64
- {666346D7-C84B-498D-AE17-53B20C62DB1A}.Release|ARM64.Build.0 = Release|ARM64
- {666346D7-C84B-498D-AE17-53B20C62DB1A}.Release|x64.ActiveCfg = Release|x64
- {666346D7-C84B-498D-AE17-53B20C62DB1A}.Release|x64.Build.0 = Release|x64
- {666346D7-C84B-498D-AE17-53B20C62DB1A}.Release|x86.ActiveCfg = Release|Win32
- {666346D7-C84B-498D-AE17-53B20C62DB1A}.Release|x86.Build.0 = Release|Win32
- {AD66AA6A-1E36-4FF0-8670-4F9834BCDB91}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
- {AD66AA6A-1E36-4FF0-8670-4F9834BCDB91}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
- {AD66AA6A-1E36-4FF0-8670-4F9834BCDB91}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
- {AD66AA6A-1E36-4FF0-8670-4F9834BCDB91}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
- {AD66AA6A-1E36-4FF0-8670-4F9834BCDB91}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
- {AD66AA6A-1E36-4FF0-8670-4F9834BCDB91}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
- {AD66AA6A-1E36-4FF0-8670-4F9834BCDB91}.Debug|ARM64.ActiveCfg = Debug|ARM64
- {AD66AA6A-1E36-4FF0-8670-4F9834BCDB91}.Debug|ARM64.Build.0 = Debug|ARM64
- {AD66AA6A-1E36-4FF0-8670-4F9834BCDB91}.Debug|x64.ActiveCfg = Debug|x64
- {AD66AA6A-1E36-4FF0-8670-4F9834BCDB91}.Debug|x64.Build.0 = Debug|x64
- {AD66AA6A-1E36-4FF0-8670-4F9834BCDB91}.Debug|x86.ActiveCfg = Debug|Win32
- {AD66AA6A-1E36-4FF0-8670-4F9834BCDB91}.Debug|x86.Build.0 = Debug|Win32
- {AD66AA6A-1E36-4FF0-8670-4F9834BCDB91}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
- {AD66AA6A-1E36-4FF0-8670-4F9834BCDB91}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
- {AD66AA6A-1E36-4FF0-8670-4F9834BCDB91}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
- {AD66AA6A-1E36-4FF0-8670-4F9834BCDB91}.Release.DLL|x64.Build.0 = Release.DLL|x64
- {AD66AA6A-1E36-4FF0-8670-4F9834BCDB91}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
- {AD66AA6A-1E36-4FF0-8670-4F9834BCDB91}.Release.DLL|x86.Build.0 = Release.DLL|Win32
- {AD66AA6A-1E36-4FF0-8670-4F9834BCDB91}.Release|ARM64.ActiveCfg = Release|ARM64
- {AD66AA6A-1E36-4FF0-8670-4F9834BCDB91}.Release|ARM64.Build.0 = Release|ARM64
- {AD66AA6A-1E36-4FF0-8670-4F9834BCDB91}.Release|x64.ActiveCfg = Release|x64
- {AD66AA6A-1E36-4FF0-8670-4F9834BCDB91}.Release|x64.Build.0 = Release|x64
- {AD66AA6A-1E36-4FF0-8670-4F9834BCDB91}.Release|x86.ActiveCfg = Release|Win32
- {AD66AA6A-1E36-4FF0-8670-4F9834BCDB91}.Release|x86.Build.0 = Release|Win32
- {6C897101-BE52-4387-8AA2-062123A76BA1}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
- {6C897101-BE52-4387-8AA2-062123A76BA1}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
- {6C897101-BE52-4387-8AA2-062123A76BA1}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
- {6C897101-BE52-4387-8AA2-062123A76BA1}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
- {6C897101-BE52-4387-8AA2-062123A76BA1}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
- {6C897101-BE52-4387-8AA2-062123A76BA1}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
- {6C897101-BE52-4387-8AA2-062123A76BA1}.Debug|ARM64.ActiveCfg = Debug|ARM64
- {6C897101-BE52-4387-8AA2-062123A76BA1}.Debug|ARM64.Build.0 = Debug|ARM64
- {6C897101-BE52-4387-8AA2-062123A76BA1}.Debug|x64.ActiveCfg = Debug|x64
- {6C897101-BE52-4387-8AA2-062123A76BA1}.Debug|x64.Build.0 = Debug|x64
- {6C897101-BE52-4387-8AA2-062123A76BA1}.Debug|x86.ActiveCfg = Debug|Win32
- {6C897101-BE52-4387-8AA2-062123A76BA1}.Debug|x86.Build.0 = Debug|Win32
- {6C897101-BE52-4387-8AA2-062123A76BA1}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
- {6C897101-BE52-4387-8AA2-062123A76BA1}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
- {6C897101-BE52-4387-8AA2-062123A76BA1}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
- {6C897101-BE52-4387-8AA2-062123A76BA1}.Release.DLL|x64.Build.0 = Release.DLL|x64
- {6C897101-BE52-4387-8AA2-062123A76BA1}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
- {6C897101-BE52-4387-8AA2-062123A76BA1}.Release.DLL|x86.Build.0 = Release.DLL|Win32
- {6C897101-BE52-4387-8AA2-062123A76BA1}.Release|ARM64.ActiveCfg = Release|ARM64
- {6C897101-BE52-4387-8AA2-062123A76BA1}.Release|ARM64.Build.0 = Release|ARM64
- {6C897101-BE52-4387-8AA2-062123A76BA1}.Release|x64.ActiveCfg = Release|x64
- {6C897101-BE52-4387-8AA2-062123A76BA1}.Release|x64.Build.0 = Release|x64
- {6C897101-BE52-4387-8AA2-062123A76BA1}.Release|x86.ActiveCfg = Release|Win32
- {6C897101-BE52-4387-8AA2-062123A76BA1}.Release|x86.Build.0 = Release|Win32
- {4E9D2828-EE83-40C8-97E0-137EEDFBAAAD}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
- {4E9D2828-EE83-40C8-97E0-137EEDFBAAAD}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
- {4E9D2828-EE83-40C8-97E0-137EEDFBAAAD}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
- {4E9D2828-EE83-40C8-97E0-137EEDFBAAAD}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
- {4E9D2828-EE83-40C8-97E0-137EEDFBAAAD}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
- {4E9D2828-EE83-40C8-97E0-137EEDFBAAAD}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
- {4E9D2828-EE83-40C8-97E0-137EEDFBAAAD}.Debug|ARM64.ActiveCfg = Debug|ARM64
- {4E9D2828-EE83-40C8-97E0-137EEDFBAAAD}.Debug|ARM64.Build.0 = Debug|ARM64
- {4E9D2828-EE83-40C8-97E0-137EEDFBAAAD}.Debug|x64.ActiveCfg = Debug|x64
- {4E9D2828-EE83-40C8-97E0-137EEDFBAAAD}.Debug|x64.Build.0 = Debug|x64
- {4E9D2828-EE83-40C8-97E0-137EEDFBAAAD}.Debug|x86.ActiveCfg = Debug|Win32
- {4E9D2828-EE83-40C8-97E0-137EEDFBAAAD}.Debug|x86.Build.0 = Debug|Win32
- {4E9D2828-EE83-40C8-97E0-137EEDFBAAAD}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
- {4E9D2828-EE83-40C8-97E0-137EEDFBAAAD}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
- {4E9D2828-EE83-40C8-97E0-137EEDFBAAAD}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
- {4E9D2828-EE83-40C8-97E0-137EEDFBAAAD}.Release.DLL|x64.Build.0 = Release.DLL|x64
- {4E9D2828-EE83-40C8-97E0-137EEDFBAAAD}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
- {4E9D2828-EE83-40C8-97E0-137EEDFBAAAD}.Release.DLL|x86.Build.0 = Release.DLL|Win32
- {4E9D2828-EE83-40C8-97E0-137EEDFBAAAD}.Release|ARM64.ActiveCfg = Release|ARM64
- {4E9D2828-EE83-40C8-97E0-137EEDFBAAAD}.Release|ARM64.Build.0 = Release|ARM64
- {4E9D2828-EE83-40C8-97E0-137EEDFBAAAD}.Release|x64.ActiveCfg = Release|x64
- {4E9D2828-EE83-40C8-97E0-137EEDFBAAAD}.Release|x64.Build.0 = Release|x64
- {4E9D2828-EE83-40C8-97E0-137EEDFBAAAD}.Release|x86.ActiveCfg = Release|Win32
- {4E9D2828-EE83-40C8-97E0-137EEDFBAAAD}.Release|x86.Build.0 = Release|Win32
- {2B3CED91-973F-4936-9DD4-CC8B1C8ACC68}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
- {2B3CED91-973F-4936-9DD4-CC8B1C8ACC68}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
- {2B3CED91-973F-4936-9DD4-CC8B1C8ACC68}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
- {2B3CED91-973F-4936-9DD4-CC8B1C8ACC68}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
- {2B3CED91-973F-4936-9DD4-CC8B1C8ACC68}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
- {2B3CED91-973F-4936-9DD4-CC8B1C8ACC68}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
- {2B3CED91-973F-4936-9DD4-CC8B1C8ACC68}.Debug|ARM64.ActiveCfg = Debug|ARM64
- {2B3CED91-973F-4936-9DD4-CC8B1C8ACC68}.Debug|ARM64.Build.0 = Debug|ARM64
- {2B3CED91-973F-4936-9DD4-CC8B1C8ACC68}.Debug|x64.ActiveCfg = Debug|x64
- {2B3CED91-973F-4936-9DD4-CC8B1C8ACC68}.Debug|x64.Build.0 = Debug|x64
- {2B3CED91-973F-4936-9DD4-CC8B1C8ACC68}.Debug|x86.ActiveCfg = Debug|Win32
- {2B3CED91-973F-4936-9DD4-CC8B1C8ACC68}.Debug|x86.Build.0 = Debug|Win32
- {2B3CED91-973F-4936-9DD4-CC8B1C8ACC68}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
- {2B3CED91-973F-4936-9DD4-CC8B1C8ACC68}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
- {2B3CED91-973F-4936-9DD4-CC8B1C8ACC68}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
- {2B3CED91-973F-4936-9DD4-CC8B1C8ACC68}.Release.DLL|x64.Build.0 = Release.DLL|x64
- {2B3CED91-973F-4936-9DD4-CC8B1C8ACC68}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
- {2B3CED91-973F-4936-9DD4-CC8B1C8ACC68}.Release.DLL|x86.Build.0 = Release.DLL|Win32
- {2B3CED91-973F-4936-9DD4-CC8B1C8ACC68}.Release|ARM64.ActiveCfg = Release|ARM64
- {2B3CED91-973F-4936-9DD4-CC8B1C8ACC68}.Release|ARM64.Build.0 = Release|ARM64
- {2B3CED91-973F-4936-9DD4-CC8B1C8ACC68}.Release|x64.ActiveCfg = Release|x64
- {2B3CED91-973F-4936-9DD4-CC8B1C8ACC68}.Release|x64.Build.0 = Release|x64
- {2B3CED91-973F-4936-9DD4-CC8B1C8ACC68}.Release|x86.ActiveCfg = Release|Win32
- {2B3CED91-973F-4936-9DD4-CC8B1C8ACC68}.Release|x86.Build.0 = Release|Win32
- {30011884-25EE-42C9-BB15-888CAFB1AA6E}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
- {30011884-25EE-42C9-BB15-888CAFB1AA6E}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
- {30011884-25EE-42C9-BB15-888CAFB1AA6E}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
- {30011884-25EE-42C9-BB15-888CAFB1AA6E}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
- {30011884-25EE-42C9-BB15-888CAFB1AA6E}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
- {30011884-25EE-42C9-BB15-888CAFB1AA6E}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
- {30011884-25EE-42C9-BB15-888CAFB1AA6E}.Debug|ARM64.ActiveCfg = Debug|ARM64
- {30011884-25EE-42C9-BB15-888CAFB1AA6E}.Debug|ARM64.Build.0 = Debug|ARM64
- {30011884-25EE-42C9-BB15-888CAFB1AA6E}.Debug|x64.ActiveCfg = Debug|x64
- {30011884-25EE-42C9-BB15-888CAFB1AA6E}.Debug|x64.Build.0 = Debug|x64
- {30011884-25EE-42C9-BB15-888CAFB1AA6E}.Debug|x86.ActiveCfg = Debug|Win32
- {30011884-25EE-42C9-BB15-888CAFB1AA6E}.Debug|x86.Build.0 = Debug|Win32
- {30011884-25EE-42C9-BB15-888CAFB1AA6E}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
- {30011884-25EE-42C9-BB15-888CAFB1AA6E}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
- {30011884-25EE-42C9-BB15-888CAFB1AA6E}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
- {30011884-25EE-42C9-BB15-888CAFB1AA6E}.Release.DLL|x64.Build.0 = Release.DLL|x64
- {30011884-25EE-42C9-BB15-888CAFB1AA6E}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
- {30011884-25EE-42C9-BB15-888CAFB1AA6E}.Release.DLL|x86.Build.0 = Release.DLL|Win32
- {30011884-25EE-42C9-BB15-888CAFB1AA6E}.Release|ARM64.ActiveCfg = Release|ARM64
- {30011884-25EE-42C9-BB15-888CAFB1AA6E}.Release|ARM64.Build.0 = Release|ARM64
- {30011884-25EE-42C9-BB15-888CAFB1AA6E}.Release|x64.ActiveCfg = Release|x64
- {30011884-25EE-42C9-BB15-888CAFB1AA6E}.Release|x64.Build.0 = Release|x64
- {30011884-25EE-42C9-BB15-888CAFB1AA6E}.Release|x86.ActiveCfg = Release|Win32
- {30011884-25EE-42C9-BB15-888CAFB1AA6E}.Release|x86.Build.0 = Release|Win32
- {32FE2658-1D70-442E-8672-0AC5C6F0BD7B}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
- {32FE2658-1D70-442E-8672-0AC5C6F0BD7B}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
- {32FE2658-1D70-442E-8672-0AC5C6F0BD7B}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
- {32FE2658-1D70-442E-8672-0AC5C6F0BD7B}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
- {32FE2658-1D70-442E-8672-0AC5C6F0BD7B}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
- {32FE2658-1D70-442E-8672-0AC5C6F0BD7B}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
- {32FE2658-1D70-442E-8672-0AC5C6F0BD7B}.Debug|ARM64.ActiveCfg = Debug|ARM64
- {32FE2658-1D70-442E-8672-0AC5C6F0BD7B}.Debug|ARM64.Build.0 = Debug|ARM64
- {32FE2658-1D70-442E-8672-0AC5C6F0BD7B}.Debug|x64.ActiveCfg = Debug|x64
- {32FE2658-1D70-442E-8672-0AC5C6F0BD7B}.Debug|x64.Build.0 = Debug|x64
- {32FE2658-1D70-442E-8672-0AC5C6F0BD7B}.Debug|x86.ActiveCfg = Debug|Win32
- {32FE2658-1D70-442E-8672-0AC5C6F0BD7B}.Debug|x86.Build.0 = Debug|Win32
- {32FE2658-1D70-442E-8672-0AC5C6F0BD7B}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
- {32FE2658-1D70-442E-8672-0AC5C6F0BD7B}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
- {32FE2658-1D70-442E-8672-0AC5C6F0BD7B}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
- {32FE2658-1D70-442E-8672-0AC5C6F0BD7B}.Release.DLL|x64.Build.0 = Release.DLL|x64
- {32FE2658-1D70-442E-8672-0AC5C6F0BD7B}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
- {32FE2658-1D70-442E-8672-0AC5C6F0BD7B}.Release.DLL|x86.Build.0 = Release.DLL|Win32
- {32FE2658-1D70-442E-8672-0AC5C6F0BD7B}.Release|ARM64.ActiveCfg = Release|ARM64
- {32FE2658-1D70-442E-8672-0AC5C6F0BD7B}.Release|ARM64.Build.0 = Release|ARM64
- {32FE2658-1D70-442E-8672-0AC5C6F0BD7B}.Release|x64.ActiveCfg = Release|x64
- {32FE2658-1D70-442E-8672-0AC5C6F0BD7B}.Release|x64.Build.0 = Release|x64
- {32FE2658-1D70-442E-8672-0AC5C6F0BD7B}.Release|x86.ActiveCfg = Release|Win32
- {32FE2658-1D70-442E-8672-0AC5C6F0BD7B}.Release|x86.Build.0 = Release|Win32
- {842B6472-4AA6-4C2B-A5E5-A62F80DE2C4F}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
- {842B6472-4AA6-4C2B-A5E5-A62F80DE2C4F}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
- {842B6472-4AA6-4C2B-A5E5-A62F80DE2C4F}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
- {842B6472-4AA6-4C2B-A5E5-A62F80DE2C4F}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
- {842B6472-4AA6-4C2B-A5E5-A62F80DE2C4F}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
- {842B6472-4AA6-4C2B-A5E5-A62F80DE2C4F}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
- {842B6472-4AA6-4C2B-A5E5-A62F80DE2C4F}.Debug|ARM64.ActiveCfg = Debug|ARM64
- {842B6472-4AA6-4C2B-A5E5-A62F80DE2C4F}.Debug|ARM64.Build.0 = Debug|ARM64
- {842B6472-4AA6-4C2B-A5E5-A62F80DE2C4F}.Debug|x64.ActiveCfg = Debug|x64
- {842B6472-4AA6-4C2B-A5E5-A62F80DE2C4F}.Debug|x64.Build.0 = Debug|x64
- {842B6472-4AA6-4C2B-A5E5-A62F80DE2C4F}.Debug|x86.ActiveCfg = Debug|Win32
- {842B6472-4AA6-4C2B-A5E5-A62F80DE2C4F}.Debug|x86.Build.0 = Debug|Win32
- {842B6472-4AA6-4C2B-A5E5-A62F80DE2C4F}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
- {842B6472-4AA6-4C2B-A5E5-A62F80DE2C4F}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
- {842B6472-4AA6-4C2B-A5E5-A62F80DE2C4F}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
- {842B6472-4AA6-4C2B-A5E5-A62F80DE2C4F}.Release.DLL|x64.Build.0 = Release.DLL|x64
- {842B6472-4AA6-4C2B-A5E5-A62F80DE2C4F}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
- {842B6472-4AA6-4C2B-A5E5-A62F80DE2C4F}.Release.DLL|x86.Build.0 = Release.DLL|Win32
- {842B6472-4AA6-4C2B-A5E5-A62F80DE2C4F}.Release|ARM64.ActiveCfg = Release|ARM64
- {842B6472-4AA6-4C2B-A5E5-A62F80DE2C4F}.Release|ARM64.Build.0 = Release|ARM64
- {842B6472-4AA6-4C2B-A5E5-A62F80DE2C4F}.Release|x64.ActiveCfg = Release|x64
- {842B6472-4AA6-4C2B-A5E5-A62F80DE2C4F}.Release|x64.Build.0 = Release|x64
- {842B6472-4AA6-4C2B-A5E5-A62F80DE2C4F}.Release|x86.ActiveCfg = Release|Win32
- {842B6472-4AA6-4C2B-A5E5-A62F80DE2C4F}.Release|x86.Build.0 = Release|Win32
- {FC4DEBD2-4B17-4534-8EEA-BB24A2DBEB5F}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
- {FC4DEBD2-4B17-4534-8EEA-BB24A2DBEB5F}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
- {FC4DEBD2-4B17-4534-8EEA-BB24A2DBEB5F}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
- {FC4DEBD2-4B17-4534-8EEA-BB24A2DBEB5F}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
- {FC4DEBD2-4B17-4534-8EEA-BB24A2DBEB5F}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
- {FC4DEBD2-4B17-4534-8EEA-BB24A2DBEB5F}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
- {FC4DEBD2-4B17-4534-8EEA-BB24A2DBEB5F}.Debug|ARM64.ActiveCfg = Debug|ARM64
- {FC4DEBD2-4B17-4534-8EEA-BB24A2DBEB5F}.Debug|ARM64.Build.0 = Debug|ARM64
- {FC4DEBD2-4B17-4534-8EEA-BB24A2DBEB5F}.Debug|x64.ActiveCfg = Debug|x64
- {FC4DEBD2-4B17-4534-8EEA-BB24A2DBEB5F}.Debug|x64.Build.0 = Debug|x64
- {FC4DEBD2-4B17-4534-8EEA-BB24A2DBEB5F}.Debug|x86.ActiveCfg = Debug|Win32
- {FC4DEBD2-4B17-4534-8EEA-BB24A2DBEB5F}.Debug|x86.Build.0 = Debug|Win32
- {FC4DEBD2-4B17-4534-8EEA-BB24A2DBEB5F}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
- {FC4DEBD2-4B17-4534-8EEA-BB24A2DBEB5F}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
- {FC4DEBD2-4B17-4534-8EEA-BB24A2DBEB5F}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
- {FC4DEBD2-4B17-4534-8EEA-BB24A2DBEB5F}.Release.DLL|x64.Build.0 = Release.DLL|x64
- {FC4DEBD2-4B17-4534-8EEA-BB24A2DBEB5F}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
- {FC4DEBD2-4B17-4534-8EEA-BB24A2DBEB5F}.Release.DLL|x86.Build.0 = Release.DLL|Win32
- {FC4DEBD2-4B17-4534-8EEA-BB24A2DBEB5F}.Release|ARM64.ActiveCfg = Release|ARM64
- {FC4DEBD2-4B17-4534-8EEA-BB24A2DBEB5F}.Release|ARM64.Build.0 = Release|ARM64
- {FC4DEBD2-4B17-4534-8EEA-BB24A2DBEB5F}.Release|x64.ActiveCfg = Release|x64
- {FC4DEBD2-4B17-4534-8EEA-BB24A2DBEB5F}.Release|x64.Build.0 = Release|x64
- {FC4DEBD2-4B17-4534-8EEA-BB24A2DBEB5F}.Release|x86.ActiveCfg = Release|Win32
- {FC4DEBD2-4B17-4534-8EEA-BB24A2DBEB5F}.Release|x86.Build.0 = Release|Win32
- {0653AFAF-5578-4C02-AF29-0C873E7634AE}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
- {0653AFAF-5578-4C02-AF29-0C873E7634AE}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
- {0653AFAF-5578-4C02-AF29-0C873E7634AE}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
- {0653AFAF-5578-4C02-AF29-0C873E7634AE}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
- {0653AFAF-5578-4C02-AF29-0C873E7634AE}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
- {0653AFAF-5578-4C02-AF29-0C873E7634AE}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
- {0653AFAF-5578-4C02-AF29-0C873E7634AE}.Debug|ARM64.ActiveCfg = Debug|ARM64
- {0653AFAF-5578-4C02-AF29-0C873E7634AE}.Debug|ARM64.Build.0 = Debug|ARM64
- {0653AFAF-5578-4C02-AF29-0C873E7634AE}.Debug|x64.ActiveCfg = Debug|x64
- {0653AFAF-5578-4C02-AF29-0C873E7634AE}.Debug|x64.Build.0 = Debug|x64
- {0653AFAF-5578-4C02-AF29-0C873E7634AE}.Debug|x86.ActiveCfg = Debug|Win32
- {0653AFAF-5578-4C02-AF29-0C873E7634AE}.Debug|x86.Build.0 = Debug|Win32
- {0653AFAF-5578-4C02-AF29-0C873E7634AE}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
- {0653AFAF-5578-4C02-AF29-0C873E7634AE}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
- {0653AFAF-5578-4C02-AF29-0C873E7634AE}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
- {0653AFAF-5578-4C02-AF29-0C873E7634AE}.Release.DLL|x64.Build.0 = Release.DLL|x64
- {0653AFAF-5578-4C02-AF29-0C873E7634AE}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
- {0653AFAF-5578-4C02-AF29-0C873E7634AE}.Release.DLL|x86.Build.0 = Release.DLL|Win32
- {0653AFAF-5578-4C02-AF29-0C873E7634AE}.Release|ARM64.ActiveCfg = Release|ARM64
- {0653AFAF-5578-4C02-AF29-0C873E7634AE}.Release|ARM64.Build.0 = Release|ARM64
- {0653AFAF-5578-4C02-AF29-0C873E7634AE}.Release|x64.ActiveCfg = Release|x64
- {0653AFAF-5578-4C02-AF29-0C873E7634AE}.Release|x64.Build.0 = Release|x64
- {0653AFAF-5578-4C02-AF29-0C873E7634AE}.Release|x86.ActiveCfg = Release|Win32
- {0653AFAF-5578-4C02-AF29-0C873E7634AE}.Release|x86.Build.0 = Release|Win32
- {071E64F3-1396-4A97-97CA-98CAC059B168}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
- {071E64F3-1396-4A97-97CA-98CAC059B168}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
- {071E64F3-1396-4A97-97CA-98CAC059B168}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
- {071E64F3-1396-4A97-97CA-98CAC059B168}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
- {071E64F3-1396-4A97-97CA-98CAC059B168}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
- {071E64F3-1396-4A97-97CA-98CAC059B168}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
- {071E64F3-1396-4A97-97CA-98CAC059B168}.Debug|ARM64.ActiveCfg = Debug|ARM64
- {071E64F3-1396-4A97-97CA-98CAC059B168}.Debug|ARM64.Build.0 = Debug|ARM64
- {071E64F3-1396-4A97-97CA-98CAC059B168}.Debug|x64.ActiveCfg = Debug|x64
- {071E64F3-1396-4A97-97CA-98CAC059B168}.Debug|x64.Build.0 = Debug|x64
- {071E64F3-1396-4A97-97CA-98CAC059B168}.Debug|x86.ActiveCfg = Debug|Win32
- {071E64F3-1396-4A97-97CA-98CAC059B168}.Debug|x86.Build.0 = Debug|Win32
- {071E64F3-1396-4A97-97CA-98CAC059B168}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
- {071E64F3-1396-4A97-97CA-98CAC059B168}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
- {071E64F3-1396-4A97-97CA-98CAC059B168}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
- {071E64F3-1396-4A97-97CA-98CAC059B168}.Release.DLL|x64.Build.0 = Release.DLL|x64
- {071E64F3-1396-4A97-97CA-98CAC059B168}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
- {071E64F3-1396-4A97-97CA-98CAC059B168}.Release.DLL|x86.Build.0 = Release.DLL|Win32
- {071E64F3-1396-4A97-97CA-98CAC059B168}.Release|ARM64.ActiveCfg = Release|ARM64
- {071E64F3-1396-4A97-97CA-98CAC059B168}.Release|ARM64.Build.0 = Release|ARM64
- {071E64F3-1396-4A97-97CA-98CAC059B168}.Release|x64.ActiveCfg = Release|x64
- {071E64F3-1396-4A97-97CA-98CAC059B168}.Release|x64.Build.0 = Release|x64
- {071E64F3-1396-4A97-97CA-98CAC059B168}.Release|x86.ActiveCfg = Release|Win32
- {071E64F3-1396-4A97-97CA-98CAC059B168}.Release|x86.Build.0 = Release|Win32
- {7883D076-CA8F-4FF7-8B5D-0DFF41CEF8FC}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
- {7883D076-CA8F-4FF7-8B5D-0DFF41CEF8FC}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
- {7883D076-CA8F-4FF7-8B5D-0DFF41CEF8FC}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
- {7883D076-CA8F-4FF7-8B5D-0DFF41CEF8FC}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
- {7883D076-CA8F-4FF7-8B5D-0DFF41CEF8FC}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
- {7883D076-CA8F-4FF7-8B5D-0DFF41CEF8FC}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
- {7883D076-CA8F-4FF7-8B5D-0DFF41CEF8FC}.Debug|ARM64.ActiveCfg = Debug|ARM64
- {7883D076-CA8F-4FF7-8B5D-0DFF41CEF8FC}.Debug|ARM64.Build.0 = Debug|ARM64
- {7883D076-CA8F-4FF7-8B5D-0DFF41CEF8FC}.Debug|x64.ActiveCfg = Debug|x64
- {7883D076-CA8F-4FF7-8B5D-0DFF41CEF8FC}.Debug|x64.Build.0 = Debug|x64
- {7883D076-CA8F-4FF7-8B5D-0DFF41CEF8FC}.Debug|x86.ActiveCfg = Debug|Win32
- {7883D076-CA8F-4FF7-8B5D-0DFF41CEF8FC}.Debug|x86.Build.0 = Debug|Win32
- {7883D076-CA8F-4FF7-8B5D-0DFF41CEF8FC}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
- {7883D076-CA8F-4FF7-8B5D-0DFF41CEF8FC}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
- {7883D076-CA8F-4FF7-8B5D-0DFF41CEF8FC}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
- {7883D076-CA8F-4FF7-8B5D-0DFF41CEF8FC}.Release.DLL|x64.Build.0 = Release.DLL|x64
- {7883D076-CA8F-4FF7-8B5D-0DFF41CEF8FC}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
- {7883D076-CA8F-4FF7-8B5D-0DFF41CEF8FC}.Release.DLL|x86.Build.0 = Release.DLL|Win32
- {7883D076-CA8F-4FF7-8B5D-0DFF41CEF8FC}.Release|ARM64.ActiveCfg = Release|ARM64
- {7883D076-CA8F-4FF7-8B5D-0DFF41CEF8FC}.Release|ARM64.Build.0 = Release|ARM64
- {7883D076-CA8F-4FF7-8B5D-0DFF41CEF8FC}.Release|x64.ActiveCfg = Release|x64
- {7883D076-CA8F-4FF7-8B5D-0DFF41CEF8FC}.Release|x64.Build.0 = Release|x64
- {7883D076-CA8F-4FF7-8B5D-0DFF41CEF8FC}.Release|x86.ActiveCfg = Release|Win32
- {7883D076-CA8F-4FF7-8B5D-0DFF41CEF8FC}.Release|x86.Build.0 = Release|Win32
- {1F4722E7-F78E-413F-A106-D3490211EA57}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
- {1F4722E7-F78E-413F-A106-D3490211EA57}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
- {1F4722E7-F78E-413F-A106-D3490211EA57}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
- {1F4722E7-F78E-413F-A106-D3490211EA57}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
- {1F4722E7-F78E-413F-A106-D3490211EA57}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
- {1F4722E7-F78E-413F-A106-D3490211EA57}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
- {1F4722E7-F78E-413F-A106-D3490211EA57}.Debug|ARM64.ActiveCfg = Debug|ARM64
- {1F4722E7-F78E-413F-A106-D3490211EA57}.Debug|ARM64.Build.0 = Debug|ARM64
- {1F4722E7-F78E-413F-A106-D3490211EA57}.Debug|x64.ActiveCfg = Debug|x64
- {1F4722E7-F78E-413F-A106-D3490211EA57}.Debug|x64.Build.0 = Debug|x64
- {1F4722E7-F78E-413F-A106-D3490211EA57}.Debug|x86.ActiveCfg = Debug|Win32
- {1F4722E7-F78E-413F-A106-D3490211EA57}.Debug|x86.Build.0 = Debug|Win32
- {1F4722E7-F78E-413F-A106-D3490211EA57}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
- {1F4722E7-F78E-413F-A106-D3490211EA57}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
- {1F4722E7-F78E-413F-A106-D3490211EA57}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
- {1F4722E7-F78E-413F-A106-D3490211EA57}.Release.DLL|x64.Build.0 = Release.DLL|x64
- {1F4722E7-F78E-413F-A106-D3490211EA57}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
- {1F4722E7-F78E-413F-A106-D3490211EA57}.Release.DLL|x86.Build.0 = Release.DLL|Win32
- {1F4722E7-F78E-413F-A106-D3490211EA57}.Release|ARM64.ActiveCfg = Release|ARM64
- {1F4722E7-F78E-413F-A106-D3490211EA57}.Release|ARM64.Build.0 = Release|ARM64
- {1F4722E7-F78E-413F-A106-D3490211EA57}.Release|x64.ActiveCfg = Release|x64
- {1F4722E7-F78E-413F-A106-D3490211EA57}.Release|x64.Build.0 = Release|x64
- {1F4722E7-F78E-413F-A106-D3490211EA57}.Release|x86.ActiveCfg = Release|Win32
- {1F4722E7-F78E-413F-A106-D3490211EA57}.Release|x86.Build.0 = Release|Win32
- {0A0FC982-6E31-401F-BA77-3C5E8AB02C68}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
- {0A0FC982-6E31-401F-BA77-3C5E8AB02C68}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
- {0A0FC982-6E31-401F-BA77-3C5E8AB02C68}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
- {0A0FC982-6E31-401F-BA77-3C5E8AB02C68}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
- {0A0FC982-6E31-401F-BA77-3C5E8AB02C68}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
- {0A0FC982-6E31-401F-BA77-3C5E8AB02C68}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
- {0A0FC982-6E31-401F-BA77-3C5E8AB02C68}.Debug|ARM64.ActiveCfg = Debug|ARM64
- {0A0FC982-6E31-401F-BA77-3C5E8AB02C68}.Debug|ARM64.Build.0 = Debug|ARM64
- {0A0FC982-6E31-401F-BA77-3C5E8AB02C68}.Debug|x64.ActiveCfg = Debug|x64
- {0A0FC982-6E31-401F-BA77-3C5E8AB02C68}.Debug|x64.Build.0 = Debug|x64
- {0A0FC982-6E31-401F-BA77-3C5E8AB02C68}.Debug|x86.ActiveCfg = Debug|Win32
- {0A0FC982-6E31-401F-BA77-3C5E8AB02C68}.Debug|x86.Build.0 = Debug|Win32
- {0A0FC982-6E31-401F-BA77-3C5E8AB02C68}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
- {0A0FC982-6E31-401F-BA77-3C5E8AB02C68}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
- {0A0FC982-6E31-401F-BA77-3C5E8AB02C68}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
- {0A0FC982-6E31-401F-BA77-3C5E8AB02C68}.Release.DLL|x64.Build.0 = Release.DLL|x64
- {0A0FC982-6E31-401F-BA77-3C5E8AB02C68}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
- {0A0FC982-6E31-401F-BA77-3C5E8AB02C68}.Release.DLL|x86.Build.0 = Release.DLL|Win32
- {0A0FC982-6E31-401F-BA77-3C5E8AB02C68}.Release|ARM64.ActiveCfg = Release|ARM64
- {0A0FC982-6E31-401F-BA77-3C5E8AB02C68}.Release|ARM64.Build.0 = Release|ARM64
- {0A0FC982-6E31-401F-BA77-3C5E8AB02C68}.Release|x64.ActiveCfg = Release|x64
- {0A0FC982-6E31-401F-BA77-3C5E8AB02C68}.Release|x64.Build.0 = Release|x64
- {0A0FC982-6E31-401F-BA77-3C5E8AB02C68}.Release|x86.ActiveCfg = Release|Win32
- {0A0FC982-6E31-401F-BA77-3C5E8AB02C68}.Release|x86.Build.0 = Release|Win32
- {DC163251-16C3-4B72-B965-ACDBA0F02BD1}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
- {DC163251-16C3-4B72-B965-ACDBA0F02BD1}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
- {DC163251-16C3-4B72-B965-ACDBA0F02BD1}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
- {DC163251-16C3-4B72-B965-ACDBA0F02BD1}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
- {DC163251-16C3-4B72-B965-ACDBA0F02BD1}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
- {DC163251-16C3-4B72-B965-ACDBA0F02BD1}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
- {DC163251-16C3-4B72-B965-ACDBA0F02BD1}.Debug|ARM64.ActiveCfg = Debug|ARM64
- {DC163251-16C3-4B72-B965-ACDBA0F02BD1}.Debug|ARM64.Build.0 = Debug|ARM64
- {DC163251-16C3-4B72-B965-ACDBA0F02BD1}.Debug|x64.ActiveCfg = Debug|x64
- {DC163251-16C3-4B72-B965-ACDBA0F02BD1}.Debug|x64.Build.0 = Debug|x64
- {DC163251-16C3-4B72-B965-ACDBA0F02BD1}.Debug|x86.ActiveCfg = Debug|Win32
- {DC163251-16C3-4B72-B965-ACDBA0F02BD1}.Debug|x86.Build.0 = Debug|Win32
- {DC163251-16C3-4B72-B965-ACDBA0F02BD1}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
- {DC163251-16C3-4B72-B965-ACDBA0F02BD1}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
- {DC163251-16C3-4B72-B965-ACDBA0F02BD1}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
- {DC163251-16C3-4B72-B965-ACDBA0F02BD1}.Release.DLL|x64.Build.0 = Release.DLL|x64
- {DC163251-16C3-4B72-B965-ACDBA0F02BD1}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
- {DC163251-16C3-4B72-B965-ACDBA0F02BD1}.Release.DLL|x86.Build.0 = Release.DLL|Win32
- {DC163251-16C3-4B72-B965-ACDBA0F02BD1}.Release|ARM64.ActiveCfg = Release|ARM64
- {DC163251-16C3-4B72-B965-ACDBA0F02BD1}.Release|ARM64.Build.0 = Release|ARM64
- {DC163251-16C3-4B72-B965-ACDBA0F02BD1}.Release|x64.ActiveCfg = Release|x64
- {DC163251-16C3-4B72-B965-ACDBA0F02BD1}.Release|x64.Build.0 = Release|x64
- {DC163251-16C3-4B72-B965-ACDBA0F02BD1}.Release|x86.ActiveCfg = Release|Win32
- {DC163251-16C3-4B72-B965-ACDBA0F02BD1}.Release|x86.Build.0 = Release|Win32
- {D35D2FDA-B53F-4F70-81CA-24D95812B89C}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
- {D35D2FDA-B53F-4F70-81CA-24D95812B89C}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
- {D35D2FDA-B53F-4F70-81CA-24D95812B89C}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
- {D35D2FDA-B53F-4F70-81CA-24D95812B89C}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
- {D35D2FDA-B53F-4F70-81CA-24D95812B89C}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
- {D35D2FDA-B53F-4F70-81CA-24D95812B89C}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
- {D35D2FDA-B53F-4F70-81CA-24D95812B89C}.Debug|ARM64.ActiveCfg = Debug|ARM64
- {D35D2FDA-B53F-4F70-81CA-24D95812B89C}.Debug|ARM64.Build.0 = Debug|ARM64
- {D35D2FDA-B53F-4F70-81CA-24D95812B89C}.Debug|x64.ActiveCfg = Debug|x64
- {D35D2FDA-B53F-4F70-81CA-24D95812B89C}.Debug|x64.Build.0 = Debug|x64
- {D35D2FDA-B53F-4F70-81CA-24D95812B89C}.Debug|x86.ActiveCfg = Debug|Win32
- {D35D2FDA-B53F-4F70-81CA-24D95812B89C}.Debug|x86.Build.0 = Debug|Win32
- {D35D2FDA-B53F-4F70-81CA-24D95812B89C}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
- {D35D2FDA-B53F-4F70-81CA-24D95812B89C}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
- {D35D2FDA-B53F-4F70-81CA-24D95812B89C}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
- {D35D2FDA-B53F-4F70-81CA-24D95812B89C}.Release.DLL|x64.Build.0 = Release.DLL|x64
- {D35D2FDA-B53F-4F70-81CA-24D95812B89C}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
- {D35D2FDA-B53F-4F70-81CA-24D95812B89C}.Release.DLL|x86.Build.0 = Release.DLL|Win32
- {D35D2FDA-B53F-4F70-81CA-24D95812B89C}.Release|ARM64.ActiveCfg = Release|ARM64
- {D35D2FDA-B53F-4F70-81CA-24D95812B89C}.Release|ARM64.Build.0 = Release|ARM64
- {D35D2FDA-B53F-4F70-81CA-24D95812B89C}.Release|x64.ActiveCfg = Release|x64
- {D35D2FDA-B53F-4F70-81CA-24D95812B89C}.Release|x64.Build.0 = Release|x64
- {D35D2FDA-B53F-4F70-81CA-24D95812B89C}.Release|x86.ActiveCfg = Release|Win32
- {D35D2FDA-B53F-4F70-81CA-24D95812B89C}.Release|x86.Build.0 = Release|Win32
- {F8DC77C0-556C-4672-B5B3-D2FA4ADC505C}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
- {F8DC77C0-556C-4672-B5B3-D2FA4ADC505C}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
- {F8DC77C0-556C-4672-B5B3-D2FA4ADC505C}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
- {F8DC77C0-556C-4672-B5B3-D2FA4ADC505C}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
- {F8DC77C0-556C-4672-B5B3-D2FA4ADC505C}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
- {F8DC77C0-556C-4672-B5B3-D2FA4ADC505C}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
- {F8DC77C0-556C-4672-B5B3-D2FA4ADC505C}.Debug|ARM64.ActiveCfg = Debug|ARM64
- {F8DC77C0-556C-4672-B5B3-D2FA4ADC505C}.Debug|ARM64.Build.0 = Debug|ARM64
- {F8DC77C0-556C-4672-B5B3-D2FA4ADC505C}.Debug|x64.ActiveCfg = Debug|x64
- {F8DC77C0-556C-4672-B5B3-D2FA4ADC505C}.Debug|x64.Build.0 = Debug|x64
- {F8DC77C0-556C-4672-B5B3-D2FA4ADC505C}.Debug|x86.ActiveCfg = Debug|Win32
- {F8DC77C0-556C-4672-B5B3-D2FA4ADC505C}.Debug|x86.Build.0 = Debug|Win32
- {F8DC77C0-556C-4672-B5B3-D2FA4ADC505C}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
- {F8DC77C0-556C-4672-B5B3-D2FA4ADC505C}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
- {F8DC77C0-556C-4672-B5B3-D2FA4ADC505C}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
- {F8DC77C0-556C-4672-B5B3-D2FA4ADC505C}.Release.DLL|x64.Build.0 = Release.DLL|x64
- {F8DC77C0-556C-4672-B5B3-D2FA4ADC505C}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
- {F8DC77C0-556C-4672-B5B3-D2FA4ADC505C}.Release.DLL|x86.Build.0 = Release.DLL|Win32
- {F8DC77C0-556C-4672-B5B3-D2FA4ADC505C}.Release|ARM64.ActiveCfg = Release|ARM64
- {F8DC77C0-556C-4672-B5B3-D2FA4ADC505C}.Release|ARM64.Build.0 = Release|ARM64
- {F8DC77C0-556C-4672-B5B3-D2FA4ADC505C}.Release|x64.ActiveCfg = Release|x64
- {F8DC77C0-556C-4672-B5B3-D2FA4ADC505C}.Release|x64.Build.0 = Release|x64
- {F8DC77C0-556C-4672-B5B3-D2FA4ADC505C}.Release|x86.ActiveCfg = Release|Win32
- {F8DC77C0-556C-4672-B5B3-D2FA4ADC505C}.Release|x86.Build.0 = Release|Win32
- EndGlobalSection
- GlobalSection(SolutionProperties) = preSolution
- HideSolutionNode = FALSE
- EndGlobalSection
- GlobalSection(NestedProjects) = preSolution
- {6C82BAAE-BDDF-457D-8FA8-7E2490B07035} = {8716DC0F-4FDE-4F57-8E25-5F78DFB80FE1}
- {278D8859-20B1-428F-8448-064F46E1F021} = {8716DC0F-4FDE-4F57-8E25-5F78DFB80FE1}
- {DA049009-21FF-4AC0-84E4-830DD1BCD0CE} = {8716DC0F-4FDE-4F57-8E25-5F78DFB80FE1}
- {8D3C83B7-F1E0-4C2E-9E34-EE5F6AB2502A} = {8716DC0F-4FDE-4F57-8E25-5F78DFB80FE1}
- {AF5BEC5C-1F2B-4DA8-B12D-D09FE569237C} = {8716DC0F-4FDE-4F57-8E25-5F78DFB80FE1}
- {5317807F-61D4-4E0F-B6DC-2D9F12621ED9} = {8716DC0F-4FDE-4F57-8E25-5F78DFB80FE1}
- {CC132A4D-D081-4C26-BFB9-AB11984054F8} = {8716DC0F-4FDE-4F57-8E25-5F78DFB80FE1}
- {E9D708A5-9C1F-4B84-A795-C5F191801762} = {8716DC0F-4FDE-4F57-8E25-5F78DFB80FE1}
- {0981CA98-E4A5-4DF1-987F-A41D09131EFC} = {6C82BAAE-BDDF-457D-8FA8-7E2490B07035}
- {C25D2CC6-80CA-4C8A-BE3B-2E0F4EA5D0CC} = {DA049009-21FF-4AC0-84E4-830DD1BCD0CE}
- {103B292B-049B-4B15-85A1-9F902840DB2C} = {DA049009-21FF-4AC0-84E4-830DD1BCD0CE}
- {0C2D2F82-AE67-400C-B19C-8C9B957B132A} = {DA049009-21FF-4AC0-84E4-830DD1BCD0CE}
- {E6784F91-4E4E-4956-A079-73FAB1AC7BE6} = {CC132A4D-D081-4C26-BFB9-AB11984054F8}
- {BFB22AB2-041B-4A1B-80C0-1D4BE410C8A9} = {CC132A4D-D081-4C26-BFB9-AB11984054F8}
- {93A1F656-0D29-4C5E-B140-11F23FF5D6AB} = {CC132A4D-D081-4C26-BFB9-AB11984054F8}
- {F81C5819-85B6-4D2E-B6DC-104A7634461B} = {CC132A4D-D081-4C26-BFB9-AB11984054F8}
- {66CC5B13-881A-412F-8C51-746622A91C5A} = {6C82BAAE-BDDF-457D-8FA8-7E2490B07035}
- {CB75B7C9-4E00-43B8-B2A9-9ACB4FC40F9B} = {6C82BAAE-BDDF-457D-8FA8-7E2490B07035}
- {557138B0-7BE2-4392-B2E2-B45734031A62} = {6C82BAAE-BDDF-457D-8FA8-7E2490B07035}
- {9EED87BB-527F-4D05-9384-6D16CFD627A8} = {6C82BAAE-BDDF-457D-8FA8-7E2490B07035}
- {6D1CA2F1-7FCA-4249-9220-075C2DF4F965} = {6C82BAAE-BDDF-457D-8FA8-7E2490B07035}
- {946A1700-C7AA-46F0-AEF2-67C98B5722AC} = {6C82BAAE-BDDF-457D-8FA8-7E2490B07035}
- {FD193822-3D5C-4161-A147-884C2ABDE483} = {6C82BAAE-BDDF-457D-8FA8-7E2490B07035}
- {20AD0AC9-9159-4744-99CC-6AC5779D6B87} = {6C82BAAE-BDDF-457D-8FA8-7E2490B07035}
- {0199E349-0701-40BC-8A7F-06A54FFA3E7C} = {6C82BAAE-BDDF-457D-8FA8-7E2490B07035}
- {BCB71111-8505-4B35-8CEF-EC6115DC9D4D} = {6C82BAAE-BDDF-457D-8FA8-7E2490B07035}
- {8F19E3DA-8929-4000-87B5-3CA6929636CC} = {6C82BAAE-BDDF-457D-8FA8-7E2490B07035}
- {51A00565-5787-4911-9CC0-28403AA4909D} = {6C82BAAE-BDDF-457D-8FA8-7E2490B07035}
- {92B64AE7-D773-4F05-89F1-CE59BBF4F053} = {6C82BAAE-BDDF-457D-8FA8-7E2490B07035}
- {A2BA5E5C-FDB9-4939-B0B5-2B753A5E33D3} = {6C82BAAE-BDDF-457D-8FA8-7E2490B07035}
- {A643BB06-735D-47F3-BFE7-B6D3C36F7097} = {6C82BAAE-BDDF-457D-8FA8-7E2490B07035}
- {6B8BAAF1-75C7-4C68-80B8-0E2A9EABBD9A} = {6C82BAAE-BDDF-457D-8FA8-7E2490B07035}
- {B332DCA8-3599-4A99-917A-82261BDC27AC} = {6C82BAAE-BDDF-457D-8FA8-7E2490B07035}
- {59089B0C-AAB4-4532-B294-44DEAE7178B7} = {6C82BAAE-BDDF-457D-8FA8-7E2490B07035}
- {C298876B-6C12-4EA4-903B-33450BCD9884} = {6C82BAAE-BDDF-457D-8FA8-7E2490B07035}
- {83F586FA-C801-4979-ACCA-006BD628CC88} = {6C82BAAE-BDDF-457D-8FA8-7E2490B07035}
- {86CBE96B-F5FE-483C-BA4A-DC9B1D43AF22} = {6C82BAAE-BDDF-457D-8FA8-7E2490B07035}
- {FF2970AE-E2E9-405F-B321-D523A1BD44A0} = {6C82BAAE-BDDF-457D-8FA8-7E2490B07035}
- {79417CE2-FEEB-42F0-BC53-62D5267B19B1} = {6C82BAAE-BDDF-457D-8FA8-7E2490B07035}
- {AFDDE100-2D36-4749-817D-12E54C56312F} = {AF5BEC5C-1F2B-4DA8-B12D-D09FE569237C}
- {B7812167-50FB-4934-996F-DF6FE4CBBFDF} = {AF5BEC5C-1F2B-4DA8-B12D-D09FE569237C}
- {39DB56C7-05F8-492C-A8D4-F19E40FECB59} = {AF5BEC5C-1F2B-4DA8-B12D-D09FE569237C}
- {82F3D34B-8DB2-4C6A-98B1-132245DD9D99} = {AF5BEC5C-1F2B-4DA8-B12D-D09FE569237C}
- {CBD6C0F8-8200-4E9A-9D7C-6505A2AA4A62} = {AF5BEC5C-1F2B-4DA8-B12D-D09FE569237C}
- {14BA7F98-02CC-4648-9236-676BFF9458AF} = {AF5BEC5C-1F2B-4DA8-B12D-D09FE569237C}
- {0859A973-E4FE-4688-8D16-0253163FDE24} = {AF5BEC5C-1F2B-4DA8-B12D-D09FE569237C}
- {F3412853-2B6A-4334-8CF2-B796CDAE0850} = {AF5BEC5C-1F2B-4DA8-B12D-D09FE569237C}
- {BE097E8F-B6F3-45DC-8A27-E0EBC31AB912} = {AF5BEC5C-1F2B-4DA8-B12D-D09FE569237C}
- {D03F2C82-9553-4AFA-8F49-9234009122B6} = {AF5BEC5C-1F2B-4DA8-B12D-D09FE569237C}
- {FE232CA5-6C0D-4ADF-9A21-775D4DC048D3} = {AF5BEC5C-1F2B-4DA8-B12D-D09FE569237C}
- {A53CCF42-A972-478F-9336-0F618B3EC06A} = {AF5BEC5C-1F2B-4DA8-B12D-D09FE569237C}
- {0037A3CD-4F50-48B2-9AC3-5A0D1D16D2CA} = {AF5BEC5C-1F2B-4DA8-B12D-D09FE569237C}
- {870723DD-945A-4136-B65B-4AF3BF85369C} = {AF5BEC5C-1F2B-4DA8-B12D-D09FE569237C}
- {EA6488AD-445B-4835-87FB-EBC9E2EDAF97} = {AF5BEC5C-1F2B-4DA8-B12D-D09FE569237C}
- {E07B6DBE-3358-4BA0-AABF-CDD8F96AECF0} = {DA049009-21FF-4AC0-84E4-830DD1BCD0CE}
- {472BCBDC-62E0-441D-B2FD-0EE0FC6CEEB4} = {DA049009-21FF-4AC0-84E4-830DD1BCD0CE}
- {589C8E9B-0BB3-4D6D-A70C-0A28E469F20E} = {DA049009-21FF-4AC0-84E4-830DD1BCD0CE}
- {3AD868E6-8355-4F29-B5ED-7DE94AD786E7} = {DA049009-21FF-4AC0-84E4-830DD1BCD0CE}
- {2B78CF0A-5403-45E2-99BD-493F1679BCDB} = {DA049009-21FF-4AC0-84E4-830DD1BCD0CE}
- {0AB968E0-E993-45CE-8875-7453C96DF583} = {DA049009-21FF-4AC0-84E4-830DD1BCD0CE}
- {25923141-9859-4AFE-8168-0DF78322FC63} = {DA049009-21FF-4AC0-84E4-830DD1BCD0CE}
- {7E855020-7FA4-482D-B510-2E709354FE8B} = {DA049009-21FF-4AC0-84E4-830DD1BCD0CE}
- {9782E0C8-2BD3-4F67-B420-21CF19CA2435} = {DA049009-21FF-4AC0-84E4-830DD1BCD0CE}
- {9F4135E3-9814-452C-9B35-0EFBCD792B49} = {DA049009-21FF-4AC0-84E4-830DD1BCD0CE}
- {C45343E6-DAB6-4F3A-A00A-8BED71A098BE} = {DA049009-21FF-4AC0-84E4-830DD1BCD0CE}
- {B19DD336-538E-4091-A559-EAA717FEC899} = {DA049009-21FF-4AC0-84E4-830DD1BCD0CE}
- {0BF60202-43F7-48E9-8717-D31E56FA5BE0} = {DA049009-21FF-4AC0-84E4-830DD1BCD0CE}
- {4E863E5B-0B95-43BE-8D4F-B9EB6C394FEC} = {DA049009-21FF-4AC0-84E4-830DD1BCD0CE}
- {6D75CD88-1A03-4955-B8C7-ACFC3742154F} = {DA049009-21FF-4AC0-84E4-830DD1BCD0CE}
- {8DD0EB7E-668E-452D-91D7-906C64A9C8AC} = {DA049009-21FF-4AC0-84E4-830DD1BCD0CE}
- {F6FD9C75-AAA7-48C9-B19D-FD37C8FB9B7E} = {8D3C83B7-F1E0-4C2E-9E34-EE5F6AB2502A}
- {1FE8758D-7E8A-41F3-9B6D-FD50E9A2A03D} = {8D3C83B7-F1E0-4C2E-9E34-EE5F6AB2502A}
- {25BCB876-B60A-499B-9046-E9801CFD7780} = {8D3C83B7-F1E0-4C2E-9E34-EE5F6AB2502A}
- {56FB0A45-145F-4EAE-B2C8-E5833E682D8F} = {8D3C83B7-F1E0-4C2E-9E34-EE5F6AB2502A}
- {2BB0C1D4-9298-45AC-B244-67A99769A292} = {8D3C83B7-F1E0-4C2E-9E34-EE5F6AB2502A}
- {99A40FC5-9DB0-4B80-8D97-867EF00FA2CB} = {8D3C83B7-F1E0-4C2E-9E34-EE5F6AB2502A}
- {81064BCE-EEC1-43B0-9912-F05F2B54B11A} = {8D3C83B7-F1E0-4C2E-9E34-EE5F6AB2502A}
- {31B41997-3890-45E3-93FE-C57B363E9C0D} = {8D3C83B7-F1E0-4C2E-9E34-EE5F6AB2502A}
- {D550AB93-DF31-4B76-873F-F075018352F4} = {8D3C83B7-F1E0-4C2E-9E34-EE5F6AB2502A}
- {8CF3F7BA-4C99-43EB-B4F1-7CA346817D0A} = {8D3C83B7-F1E0-4C2E-9E34-EE5F6AB2502A}
- {F90FCDC5-EE14-4B89-96DB-4392E28F34AF} = {278D8859-20B1-428F-8448-064F46E1F021}
- {93A864C9-93B7-4E5C-ACE7-E8FC5F9EFF79} = {278D8859-20B1-428F-8448-064F46E1F021}
- {56E68E37-B3FC-4799-91AF-0CA10B6D55A5} = {278D8859-20B1-428F-8448-064F46E1F021}
- {03E7018C-44A2-4C46-9CE7-F2A135A2692B} = {278D8859-20B1-428F-8448-064F46E1F021}
- {F3F6FE4D-9D9E-451A-B0BA-81456104B672} = {278D8859-20B1-428F-8448-064F46E1F021}
- {C27794B5-1293-4EA7-BC0E-0F18E6325539} = {278D8859-20B1-428F-8448-064F46E1F021}
- {02F41059-12A2-4A96-8D77-07EFE4B108FD} = {278D8859-20B1-428F-8448-064F46E1F021}
- {B774E0B9-9514-4E88-975F-4EB6C3B8D519} = {278D8859-20B1-428F-8448-064F46E1F021}
- {D91367C2-2189-4859-A7FE-D2CAB84FA15C} = {278D8859-20B1-428F-8448-064F46E1F021}
- {33459B4E-1839-4856-BF6B-22480D11FE31} = {278D8859-20B1-428F-8448-064F46E1F021}
- {48871156-181A-475A-BD8D-200086A09675} = {278D8859-20B1-428F-8448-064F46E1F021}
- {C4416DA1-9E62-46BA-9CD3-F8963C79E1A1} = {278D8859-20B1-428F-8448-064F46E1F021}
- {1C49E35A-2838-49D9-9D5F-4B8134960EF6} = {278D8859-20B1-428F-8448-064F46E1F021}
- {F91142E2-A999-47F0-9E74-38C1E2930EBE} = {278D8859-20B1-428F-8448-064F46E1F021}
- {1EDD4BCF-345C-4065-8CBD-7285224293C3} = {278D8859-20B1-428F-8448-064F46E1F021}
- {A6B2A11B-0669-4AF5-A025-8DD02DBBE5EA} = {5317807F-61D4-4E0F-B6DC-2D9F12621ED9}
- {B176BB4A-CA31-4E2A-B790-3EA0ED2EE870} = {5317807F-61D4-4E0F-B6DC-2D9F12621ED9}
- {D08AA2A0-2F94-4BF5-B42D-E92450F03FD1} = {5317807F-61D4-4E0F-B6DC-2D9F12621ED9}
- {4A7D0ECA-D7CC-4E66-B741-C92E9C1B42FF} = {5317807F-61D4-4E0F-B6DC-2D9F12621ED9}
- {CF3755C4-937D-4ABF-B7B3-95140808717F} = {5317807F-61D4-4E0F-B6DC-2D9F12621ED9}
- {D34939FE-8873-4C53-8D6C-74DED78EA3C4} = {5317807F-61D4-4E0F-B6DC-2D9F12621ED9}
- {D408A730-363A-4ABF-BCEF-5D63DCC66042} = {5317807F-61D4-4E0F-B6DC-2D9F12621ED9}
- {F532AFBC-9E62-4A89-BB99-1044E4B2D8ED} = {5317807F-61D4-4E0F-B6DC-2D9F12621ED9}
- {52FB7463-C128-42AF-A02F-78F48473EA9A} = {5317807F-61D4-4E0F-B6DC-2D9F12621ED9}
- {7381D91E-5C72-48F0-AAB4-95C9B10D7484} = {5317807F-61D4-4E0F-B6DC-2D9F12621ED9}
- {D36EC43E-B31F-4CF4-8285-93A7A9D90189} = {5317807F-61D4-4E0F-B6DC-2D9F12621ED9}
- {274C0319-7E1E-4188-936B-8DF3331230B3} = {5317807F-61D4-4E0F-B6DC-2D9F12621ED9}
- {41BBCC10-CFDE-48A1-B2E0-A0EC6A668629} = {5317807F-61D4-4E0F-B6DC-2D9F12621ED9}
- {600C3D4F-0670-4DB4-B30F-520A729053B5} = {5317807F-61D4-4E0F-B6DC-2D9F12621ED9}
- {11F33A39-74B7-4018-B5F9-CC285A673A8F} = {5317807F-61D4-4E0F-B6DC-2D9F12621ED9}
- {A6F5E35E-B4A7-41B3-853A-75558E6E0715} = {5317807F-61D4-4E0F-B6DC-2D9F12621ED9}
- {291B4975-8EFF-4C7C-8AF3-44A77B8491B8} = {5317807F-61D4-4E0F-B6DC-2D9F12621ED9}
- {FDE6080B-E203-4066-910D-AD0302566008} = {E9D708A5-9C1F-4B84-A795-C5F191801762}
- {E1B6D565-9D7C-46B7-9202-ECF54974DE50} = {E9D708A5-9C1F-4B84-A795-C5F191801762}
- {C8765523-58F8-4C8E-9914-693396F6F0FF} = {E9D708A5-9C1F-4B84-A795-C5F191801762}
- {2F1B955B-275E-4D8E-8864-06FEC44D7912} = {AF5BEC5C-1F2B-4DA8-B12D-D09FE569237C}
- {F5FC9279-DE63-4EF3-B31F-CFCEF9B11F71} = {AF5BEC5C-1F2B-4DA8-B12D-D09FE569237C}
- {F2DB2E59-76BF-4D81-859A-AFC289C046C0} = {8D3C83B7-F1E0-4C2E-9E34-EE5F6AB2502A}
- {3FE7E9B6-49AC-4246-A789-28DB4644567B} = {6C82BAAE-BDDF-457D-8FA8-7E2490B07035}
- {EBBBF4A0-2DA2-4DE6-B4FE-C6654A2417A0} = {DA049009-21FF-4AC0-84E4-830DD1BCD0CE}
- {191A5289-BA65-4638-A215-C521F0187313} = {DA049009-21FF-4AC0-84E4-830DD1BCD0CE}
- {3CFF7AB8-32CB-4D6D-9FED-53DBEF277359} = {6C82BAAE-BDDF-457D-8FA8-7E2490B07035}
- {8B1AF423-00F1-4924-AC54-F77D402D2AC9} = {6C82BAAE-BDDF-457D-8FA8-7E2490B07035}
- {658A1B85-554E-4A5D-973A-FFE592CDD5F2} = {6C82BAAE-BDDF-457D-8FA8-7E2490B07035}
- {07CA51AD-72AE-46A2-AAED-DC3E3F807976} = {E9D708A5-9C1F-4B84-A795-C5F191801762}
- {27B110CC-43C0-400A-89D9-245E681647D7} = {8D3C83B7-F1E0-4C2E-9E34-EE5F6AB2502A}
- {1DE84812-E143-4C4B-A61D-9267AAD55401} = {DA049009-21FF-4AC0-84E4-830DD1BCD0CE}
- {4A87569C-4BD3-4113-B4B9-573D65B3D3F8} = {CC132A4D-D081-4C26-BFB9-AB11984054F8}
- {769FF0C1-4424-4FA3-BC44-D7A7DA312A06} = {DA049009-21FF-4AC0-84E4-830DD1BCD0CE}
- {6D9E00D8-2893-45E4-9363-3F7F61D416BD} = {AF5BEC5C-1F2B-4DA8-B12D-D09FE569237C}
- {70B35F59-AFC2-4D8F-8833-5314D2047A81} = {5317807F-61D4-4E0F-B6DC-2D9F12621ED9}
- {DFDE29A7-4F54-455D-B20B-D2BF79D3B3F7} = {5317807F-61D4-4E0F-B6DC-2D9F12621ED9}
- {3755E9F4-CB48-4EC3-B561-3B85964EBDEF} = {5317807F-61D4-4E0F-B6DC-2D9F12621ED9}
- {F81C5819-85B4-4D2E-B6DC-104A7634461B} = {CC132A4D-D081-4C26-BFB9-AB11984054F8}
- {CC62F7DB-D089-4677-8575-CAB7A7815C43} = {6C82BAAE-BDDF-457D-8FA8-7E2490B07035}
- {7AF97D44-707E-48DC-81CB-C9D8D7C9ED26} = {6C82BAAE-BDDF-457D-8FA8-7E2490B07035}
- {A4B0D971-3CD6-41C9-8AB2-055D25A33373} = {CC132A4D-D081-4C26-BFB9-AB11984054F8}
- {15CDD310-6980-42A6-8082-3A6B7730D13F} = {6C82BAAE-BDDF-457D-8FA8-7E2490B07035}
- {71DB4284-5B1C-4E86-9AF5-B91542D44A6F} = {6C82BAAE-BDDF-457D-8FA8-7E2490B07035}
- {4B39E5FC-0A96-4057-9AA5-8D5A52880DA7} = {AF5BEC5C-1F2B-4DA8-B12D-D09FE569237C}
- {88DE5AD6-0074-4A5A-BE22-C840153E35D5} = {5317807F-61D4-4E0F-B6DC-2D9F12621ED9}
- {A546E75A-5242-46E6-9A9E-6C91554EAB84} = {5317807F-61D4-4E0F-B6DC-2D9F12621ED9}
- {EFA150D4-F93B-4D7D-A69C-9E8B4663BECD} = {5317807F-61D4-4E0F-B6DC-2D9F12621ED9}
- {DF25E545-00FF-4E64-844C-7DF98991F901} = {278D8859-20B1-428F-8448-064F46E1F021}
- {703BE7BA-5B99-4F70-806D-3A259F6A991E} = {278D8859-20B1-428F-8448-064F46E1F021}
- {FAFEE2F9-24B0-4AF1-B512-433E9590033F} = {278D8859-20B1-428F-8448-064F46E1F021}
- {8245DAD9-D402-4D5C-8F45-32229CD3B263} = {AF5BEC5C-1F2B-4DA8-B12D-D09FE569237C}
- {41BBCC10-6FDE-48A1-B2E0-A0EC6A668629} = {5317807F-61D4-4E0F-B6DC-2D9F12621ED9}
- {3A7FE53D-35F7-49DC-9C9A-A5204A53523F} = {AF5BEC5C-1F2B-4DA8-B12D-D09FE569237C}
- {CCA63A76-D9FC-4130-9F67-4D97F9770D53} = {5317807F-61D4-4E0F-B6DC-2D9F12621ED9}
- {D3493FFE-8873-4C53-8F6C-74DEF78EA3C4} = {5317807F-61D4-4E0F-B6DC-2D9F12621ED9}
- {3384C257-3CFE-4A8F-838C-19DAC5C955DA} = {278D8859-20B1-428F-8448-064F46E1F021}
- {2B140378-125F-4DE9-AC37-2CC1B73D7254} = {278D8859-20B1-428F-8448-064F46E1F021}
- {F4C55B99-E1C5-496A-8AC2-40188C38F4F6} = {DA049009-21FF-4AC0-84E4-830DD1BCD0CE}
- {2AA91EED-2D32-4B09-84A3-53D41EED1005} = {DA049009-21FF-4AC0-84E4-830DD1BCD0CE}
- {EC0910F6-8D66-4509-BF57-A5EE7AE9485F} = {DA049009-21FF-4AC0-84E4-830DD1BCD0CE}
- {921391C6-7626-4212-9928-BC82BC785461} = {AF5BEC5C-1F2B-4DA8-B12D-D09FE569237C}
- {6B8C5711-6AB4-4023-9FDD-E9D976E8D18F} = {AF5BEC5C-1F2B-4DA8-B12D-D09FE569237C}
- {4DF6D5E4-6796-4257-B466-BCD62DEBBCF8} = {5317807F-61D4-4E0F-B6DC-2D9F12621ED9}
- {C54703BF-D68A-480D-BE27-49B62E45D582} = {5317807F-61D4-4E0F-B6DC-2D9F12621ED9}
- {9CD8BCAD-F212-4BCC-BA98-899743CE3279} = {CC132A4D-D081-4C26-BFB9-AB11984054F8}
- {0981CA28-E4A5-4DF1-987F-A41D09131EFC} = {6C82BAAE-BDDF-457D-8FA8-7E2490B07035}
- {6B1A933E-71B8-4C1F-9E79-02D98830E671} = {6C82BAAE-BDDF-457D-8FA8-7E2490B07035}
- {6BFF72EA-7362-4A3B-B6E5-9A3655BBBDA3} = {5317807F-61D4-4E0F-B6DC-2D9F12621ED9}
- {6777EC3C-077C-42FC-B4AD-B799CE55CCE4} = {8D3C83B7-F1E0-4C2E-9E34-EE5F6AB2502A}
- {A61DAD9C-271C-4E95-81AA-DB4CD58564D4} = {6C82BAAE-BDDF-457D-8FA8-7E2490B07035}
- {49C67F03-1A56-4F96-B278-39B66EC93678} = {6C82BAAE-BDDF-457D-8FA8-7E2490B07035}
- {D496308F-3C3C-40B3-A3ED-EA327D244B3E} = {8D3C83B7-F1E0-4C2E-9E34-EE5F6AB2502A}
- {3B27F358-2679-4F38-B297-17B536F580BB} = {6C82BAAE-BDDF-457D-8FA8-7E2490B07035}
- {718FCBD0-591D-448C-B7D5-9F1CA8544E7B} = {6C82BAAE-BDDF-457D-8FA8-7E2490B07035}
- {19CA0070-B4B2-4394-90B7-D0C259AA35BA} = {6C82BAAE-BDDF-457D-8FA8-7E2490B07035}
- {2CCCD9E4-9058-4291-BD89-39C979F0CA1E} = {DA049009-21FF-4AC0-84E4-830DD1BCD0CE}
- {9DB1F875-6E65-4195-B23F-ED8095C0B99C} = {8D3C83B7-F1E0-4C2E-9E34-EE5F6AB2502A}
- {52BA9067-A5FC-4CE8-82AD-7204ECFDEF9F} = {AF5BEC5C-1F2B-4DA8-B12D-D09FE569237C}
- {8E132D5A-2C00-48D0-8747-97E41356F26F} = {278D8859-20B1-428F-8448-064F46E1F021}
- {A4662163-83E7-4309-8CAA-B0BF13655FE6} = {AF5BEC5C-1F2B-4DA8-B12D-D09FE569237C}
- {5F4B766F-DD52-4B53-B6C3-BC7611E17F20} = {278D8859-20B1-428F-8448-064F46E1F021}
- {FF5F9EE9-29C5-40EE-BBCF-AE51B001FEC3} = {6C82BAAE-BDDF-457D-8FA8-7E2490B07035}
- {A9C422E7-0F03-4DBC-AC93-5C3EF4942DEC} = {E9D708A5-9C1F-4B84-A795-C5F191801762}
- {0C442799-B09C-4CD1-9538-711B6E85E9BF} = {278D8859-20B1-428F-8448-064F46E1F021}
- {DFB40A10-F8B7-412A-BCC3-5EE49294D816} = {278D8859-20B1-428F-8448-064F46E1F021}
- {BB58A5FB-1A35-4471-86D0-A5189EC541B3} = {278D8859-20B1-428F-8448-064F46E1F021}
- {61997220-5383-4AE5-ABD4-5F45AE1B0F2A} = {278D8859-20B1-428F-8448-064F46E1F021}
- {7467E9AE-844F-444D-8A3F-17397544BA21} = {6C82BAAE-BDDF-457D-8FA8-7E2490B07035}
- {497FDF54-9762-4048-A833-61CC3980A0FB} = {278D8859-20B1-428F-8448-064F46E1F021}
- {29B00F47-BE91-4A1F-B87D-B1302F038316} = {8D3C83B7-F1E0-4C2E-9E34-EE5F6AB2502A}
- {124935CC-73BB-489E-92E8-4F922A85DB5D} = {6C82BAAE-BDDF-457D-8FA8-7E2490B07035}
- {AC215730-2B5F-4498-B7F5-5DB80AEFCA5F} = {278D8859-20B1-428F-8448-064F46E1F021}
- {0835E6BF-0170-4E99-A55C-E06E1EF4C3B2} = {278D8859-20B1-428F-8448-064F46E1F021}
- {EA4AD5A7-DB95-43C0-9A67-2D94146BCF91} = {278D8859-20B1-428F-8448-064F46E1F021}
- {1ACC8236-EF4E-44B0-BD0C-AB1D95D5890F} = {6C82BAAE-BDDF-457D-8FA8-7E2490B07035}
- {9DE2FC01-A839-4F89-8319-9071D4C54821} = {6C82BAAE-BDDF-457D-8FA8-7E2490B07035}
- {2F578155-D51F-4C03-AB7F-5C5122CA46CC} = {6C82BAAE-BDDF-457D-8FA8-7E2490B07035}
- {1C829D1A-892C-451C-AF0B-AC65C85F5CC6} = {5317807F-61D4-4E0F-B6DC-2D9F12621ED9}
- {84DE22BB-C25F-425C-A7FE-0120CF107B83} = {278D8859-20B1-428F-8448-064F46E1F021}
- {98152EDD-7E28-4FA3-89D8-B636ED5D5F65} = {5317807F-61D4-4E0F-B6DC-2D9F12621ED9}
- {B7FDD40F-DDA4-468E-9C40-EEB175964A26} = {278D8859-20B1-428F-8448-064F46E1F021}
- {028F0967-B253-45DA-B1C4-FACCE45D0D8D} = {AF5BEC5C-1F2B-4DA8-B12D-D09FE569237C}
- {666346D7-C84B-498D-AE17-53B20C62DB1A} = {278D8859-20B1-428F-8448-064F46E1F021}
- {AD66AA6A-1E36-4FF0-8670-4F9834BCDB91} = {6C82BAAE-BDDF-457D-8FA8-7E2490B07035}
- {6C897101-BE52-4387-8AA2-062123A76BA1} = {6C82BAAE-BDDF-457D-8FA8-7E2490B07035}
- {4E9D2828-EE83-40C8-97E0-137EEDFBAAAD} = {DA049009-21FF-4AC0-84E4-830DD1BCD0CE}
- {2B3CED91-973F-4936-9DD4-CC8B1C8ACC68} = {CC132A4D-D081-4C26-BFB9-AB11984054F8}
- {30011884-25EE-42C9-BB15-888CAFB1AA6E} = {AF5BEC5C-1F2B-4DA8-B12D-D09FE569237C}
- {32FE2658-1D70-442E-8672-0AC5C6F0BD7B} = {278D8859-20B1-428F-8448-064F46E1F021}
- {842B6472-4AA6-4C2B-A5E5-A62F80DE2C4F} = {278D8859-20B1-428F-8448-064F46E1F021}
- {FC4DEBD2-4B17-4534-8EEA-BB24A2DBEB5F} = {DA049009-21FF-4AC0-84E4-830DD1BCD0CE}
- {0653AFAF-5578-4C02-AF29-0C873E7634AE} = {278D8859-20B1-428F-8448-064F46E1F021}
- {071E64F3-1396-4A97-97CA-98CAC059B168} = {5317807F-61D4-4E0F-B6DC-2D9F12621ED9}
- {7883D076-CA8F-4FF7-8B5D-0DFF41CEF8FC} = {278D8859-20B1-428F-8448-064F46E1F021}
- {1F4722E7-F78E-413F-A106-D3490211EA57} = {8D3C83B7-F1E0-4C2E-9E34-EE5F6AB2502A}
- {0A0FC982-6E31-401F-BA77-3C5E8AB02C68} = {DA049009-21FF-4AC0-84E4-830DD1BCD0CE}
- {DC163251-16C3-4B72-B965-ACDBA0F02BD1} = {278D8859-20B1-428F-8448-064F46E1F021}
- {D35D2FDA-B53F-4F70-81CA-24D95812B89C} = {6C82BAAE-BDDF-457D-8FA8-7E2490B07035}
- {F8DC77C0-556C-4672-B5B3-D2FA4ADC505C} = {DA049009-21FF-4AC0-84E4-830DD1BCD0CE}
- EndGlobalSection
- GlobalSection(ExtensibilityGlobals) = postSolution
- SolutionGuid = {E926C768-6307-4423-A1EC-57E95B1FAB29}
- EndGlobalSection
-EndGlobal
+
+Microsoft Visual Studio Solution File, Format Version 12.00
+# Visual Studio Version 17
+VisualStudioVersion = 17.0.31912.275
+MinimumVisualStudioVersion = 10.0.40219.1
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "raylib", "raylib\raylib.vcxproj", "{E89D61AC-55DE-4482-AFD4-DF7242EBC859}"
+EndProject
+Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "examples", "examples", "{8716DC0F-4FDE-4F57-8E25-5F78DFB80FE1}"
+EndProject
+Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "core", "core", "{6C82BAAE-BDDF-457D-8FA8-7E2490B07035}"
+EndProject
+Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "shapes", "shapes", "{278D8859-20B1-428F-8448-064F46E1F021}"
+EndProject
+Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "textures", "textures", "{DA049009-21FF-4AC0-84E4-830DD1BCD0CE}"
+EndProject
+Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "text", "text", "{8D3C83B7-F1E0-4C2E-9E34-EE5F6AB2502A}"
+EndProject
+Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "models", "models", "{AF5BEC5C-1F2B-4DA8-B12D-D09FE569237C}"
+EndProject
+Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "shaders", "shaders", "{5317807F-61D4-4E0F-B6DC-2D9F12621ED9}"
+EndProject
+Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "audio", "audio", "{CC132A4D-D081-4C26-BFB9-AB11984054F8}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "core_basic_window", "examples\core_basic_window.vcxproj", "{0981CA98-E4A5-4DF1-987F-A41D09131EFC}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "textures_sprite_animation", "examples\textures_sprite_animation.vcxproj", "{C25D2CC6-80CA-4C8A-BE3B-2E0F4EA5D0CC}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "textures_srcrec_dstrec", "examples\textures_srcrec_dstrec.vcxproj", "{103B292B-049B-4B15-85A1-9F902840DB2C}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "textures_image_drawing", "examples\textures_image_drawing.vcxproj", "{0C2D2F82-AE67-400C-B19C-8C9B957B132A}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "audio_module_playing", "examples\audio_module_playing.vcxproj", "{E6784F91-4E4E-4956-A079-73FAB1AC7BE6}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "audio_music_stream", "examples\audio_music_stream.vcxproj", "{BFB22AB2-041B-4A1B-80C0-1D4BE410C8A9}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "audio_raw_stream", "examples\audio_raw_stream.vcxproj", "{93A1F656-0D29-4C5E-B140-11F23FF5D6AB}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "audio_sound_loading", "examples\audio_sound_loading.vcxproj", "{F81C5819-85B6-4D2E-B6DC-104A7634461B}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "core_2d_camera", "examples\core_2d_camera.vcxproj", "{66CC5B13-881A-412F-8C51-746622A91C5A}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "core_2d_camera_platformer", "examples\core_2d_camera_platformer.vcxproj", "{CB75B7C9-4E00-43B8-B2A9-9ACB4FC40F9B}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "core_3d_camera_first_person", "examples\core_3d_camera_first_person.vcxproj", "{557138B0-7BE2-4392-B2E2-B45734031A62}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "core_3d_camera_free", "examples\core_3d_camera_free.vcxproj", "{9EED87BB-527F-4D05-9384-6D16CFD627A8}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "core_3d_camera_mode", "examples\core_3d_camera_mode.vcxproj", "{6D1CA2F1-7FCA-4249-9220-075C2DF4F965}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "core_3d_camera_split_screen", "examples\core_3d_camera_split_screen.vcxproj", "{946A1700-C7AA-46F0-AEF2-67C98B5722AC}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "core_3d_picking", "examples\core_3d_picking.vcxproj", "{FD193822-3D5C-4161-A147-884C2ABDE483}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "core_custom_logging", "examples\core_custom_logging.vcxproj", "{20AD0AC9-9159-4744-99CC-6AC5779D6B87}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "core_drop_files", "examples\core_drop_files.vcxproj", "{0199E349-0701-40BC-8A7F-06A54FFA3E7C}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "core_highdpi_demo", "examples\core_highdpi_demo.vcxproj", "{BCB71111-8505-4B35-8CEF-EC6115DC9D4D}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "core_input_gamepad", "examples\core_input_gamepad.vcxproj", "{8F19E3DA-8929-4000-87B5-3CA6929636CC}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "core_input_gestures", "examples\core_input_gestures.vcxproj", "{51A00565-5787-4911-9CC0-28403AA4909D}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "core_input_keys", "examples\core_input_keys.vcxproj", "{92B64AE7-D773-4F05-89F1-CE59BBF4F053}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "core_input_mouse", "examples\core_input_mouse.vcxproj", "{A2BA5E5C-FDB9-4939-B0B5-2B753A5E33D3}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "core_input_multitouch", "examples\core_input_multitouch.vcxproj", "{A643BB06-735D-47F3-BFE7-B6D3C36F7097}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "core_random_sequence", "examples\core_random_sequence.vcxproj", "{6B8BAAF1-75C7-4C68-80B8-0E2A9EABBD9A}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "core_random_values", "examples\core_random_values.vcxproj", "{B332DCA8-3599-4A99-917A-82261BDC27AC}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "core_scissor_test", "examples\core_scissor_test.vcxproj", "{59089B0C-AAB4-4532-B294-44DEAE7178B7}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "core_storage_values", "examples\core_storage_values.vcxproj", "{C298876B-6C12-4EA4-903B-33450BCD9884}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "core_vr_simulator", "examples\core_vr_simulator.vcxproj", "{83F586FA-C801-4979-ACCA-006BD628CC88}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "core_window_flags", "examples\core_window_flags.vcxproj", "{86CBE96B-F5FE-483C-BA4A-DC9B1D43AF22}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "core_window_letterbox", "examples\core_window_letterbox.vcxproj", "{FF2970AE-E2E9-405F-B321-D523A1BD44A0}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "core_world_screen", "examples\core_world_screen.vcxproj", "{79417CE2-FEEB-42F0-BC53-62D5267B19B1}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "models_animation_playing", "examples\models_animation_playing.vcxproj", "{AFDDE100-2D36-4749-817D-12E54C56312F}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "models_billboard_rendering", "examples\models_billboard_rendering.vcxproj", "{B7812167-50FB-4934-996F-DF6FE4CBBFDF}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "models_box_collisions", "examples\models_box_collisions.vcxproj", "{39DB56C7-05F8-492C-A8D4-F19E40FECB59}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "models_cubicmap_rendering", "examples\models_cubicmap_rendering.vcxproj", "{82F3D34B-8DB2-4C6A-98B1-132245DD9D99}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "models_first_person_maze", "examples\models_first_person_maze.vcxproj", "{CBD6C0F8-8200-4E9A-9D7C-6505A2AA4A62}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "models_geometric_shapes", "examples\models_geometric_shapes.vcxproj", "{14BA7F98-02CC-4648-9236-676BFF9458AF}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "models_heightmap_rendering", "examples\models_heightmap_rendering.vcxproj", "{0859A973-E4FE-4688-8D16-0253163FDE24}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "models_loading", "examples\models_loading.vcxproj", "{F3412853-2B6A-4334-8CF2-B796CDAE0850}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "models_mesh_generation", "examples\models_mesh_generation.vcxproj", "{BE097E8F-B6F3-45DC-8A27-E0EBC31AB912}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "models_mesh_picking", "examples\models_mesh_picking.vcxproj", "{D03F2C82-9553-4AFA-8F49-9234009122B6}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "models_orthographic_projection", "examples\models_orthographic_projection.vcxproj", "{FE232CA5-6C0D-4ADF-9A21-775D4DC048D3}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "models_rlgl_solar_system", "examples\models_rlgl_solar_system.vcxproj", "{A53CCF42-A972-478F-9336-0F618B3EC06A}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "models_skybox_rendering", "examples\models_skybox_rendering.vcxproj", "{0037A3CD-4F50-48B2-9AC3-5A0D1D16D2CA}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "models_waving_cubes", "examples\models_waving_cubes.vcxproj", "{870723DD-945A-4136-B65B-4AF3BF85369C}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "models_yaw_pitch_roll", "examples\models_yaw_pitch_roll.vcxproj", "{EA6488AD-445B-4835-87FB-EBC9E2EDAF97}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "textures_to_image", "examples\textures_to_image.vcxproj", "{E07B6DBE-3358-4BA0-AABF-CDD8F96AECF0}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "textures_sprite_explosion", "examples\textures_sprite_explosion.vcxproj", "{472BCBDC-62E0-441D-B2FD-0EE0FC6CEEB4}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "textures_sprite_button", "examples\textures_sprite_button.vcxproj", "{589C8E9B-0BB3-4D6D-A70C-0A28E469F20E}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "textures_raw_data", "examples\textures_raw_data.vcxproj", "{3AD868E6-8355-4F29-B5ED-7DE94AD786E7}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "textures_particles_blending", "examples\textures_particles_blending.vcxproj", "{2B78CF0A-5403-45E2-99BD-493F1679BCDB}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "textures_npatch_drawing", "examples\textures_npatch_drawing.vcxproj", "{0AB968E0-E993-45CE-8875-7453C96DF583}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "textures_mouse_painting", "examples\textures_mouse_painting.vcxproj", "{25923141-9859-4AFE-8168-0DF78322FC63}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "textures_logo_raylib", "examples\textures_logo_raylib.vcxproj", "{7E855020-7FA4-482D-B510-2E709354FE8B}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "textures_image_text", "examples\textures_image_text.vcxproj", "{9782E0C8-2BD3-4F67-B420-21CF19CA2435}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "textures_image_processing", "examples\textures_image_processing.vcxproj", "{9F4135E3-9814-452C-9B35-0EFBCD792B49}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "textures_image_loading", "examples\textures_image_loading.vcxproj", "{C45343E6-DAB6-4F3A-A00A-8BED71A098BE}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "textures_image_generation", "examples\textures_image_generation.vcxproj", "{B19DD336-538E-4091-A559-EAA717FEC899}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "textures_tiled_drawing", "examples\textures_tiled_drawing.vcxproj", "{0BF60202-43F7-48E9-8717-D31E56FA5BE0}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "textures_bunnymark", "examples\textures_bunnymark.vcxproj", "{4E863E5B-0B95-43BE-8D4F-B9EB6C394FEC}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "textures_blend_modes", "examples\textures_blend_modes.vcxproj", "{6D75CD88-1A03-4955-B8C7-ACFC3742154F}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "textures_background_scrolling", "examples\textures_background_scrolling.vcxproj", "{8DD0EB7E-668E-452D-91D7-906C64A9C8AC}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "text_writing_anim", "examples\text_writing_anim.vcxproj", "{F6FD9C75-AAA7-48C9-B19D-FD37C8FB9B7E}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "text_unicode_emojis", "examples\text_unicode_emojis.vcxproj", "{1FE8758D-7E8A-41F3-9B6D-FD50E9A2A03D}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "text_rectangle_bounds", "examples\text_rectangle_bounds.vcxproj", "{25BCB876-B60A-499B-9046-E9801CFD7780}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "text_sprite_fonts", "examples\text_sprite_fonts.vcxproj", "{56FB0A45-145F-4EAE-B2C8-E5833E682D8F}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "text_input_box", "examples\text_input_box.vcxproj", "{2BB0C1D4-9298-45AC-B244-67A99769A292}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "text_format_text", "examples\text_format_text.vcxproj", "{99A40FC5-9DB0-4B80-8D97-867EF00FA2CB}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "text_font_spritefont", "examples\text_font_spritefont.vcxproj", "{81064BCE-EEC1-43B0-9912-F05F2B54B11A}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "text_font_sdf", "examples\text_font_sdf.vcxproj", "{31B41997-3890-45E3-93FE-C57B363E9C0D}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "text_font_loading", "examples\text_font_loading.vcxproj", "{D550AB93-DF31-4B76-873F-F075018352F4}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "text_font_filters", "examples\text_font_filters.vcxproj", "{8CF3F7BA-4C99-43EB-B4F1-7CA346817D0A}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "shapes_rectangle_scaling", "examples\shapes_rectangle_scaling.vcxproj", "{F90FCDC5-EE14-4B89-96DB-4392E28F34AF}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "shapes_logo_raylib_anim", "examples\shapes_logo_raylib_anim.vcxproj", "{93A864C9-93B7-4E5C-ACE7-E8FC5F9EFF79}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "shapes_logo_raylib", "examples\shapes_logo_raylib.vcxproj", "{56E68E37-B3FC-4799-91AF-0CA10B6D55A5}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "shapes_lines_bezier", "examples\shapes_lines_bezier.vcxproj", "{03E7018C-44A2-4C46-9CE7-F2A135A2692B}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "shapes_following_eyes", "examples\shapes_following_eyes.vcxproj", "{F3F6FE4D-9D9E-451A-B0BA-81456104B672}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "shapes_basic_shapes", "examples\shapes_basic_shapes.vcxproj", "{C27794B5-1293-4EA7-BC0E-0F18E6325539}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "shapes_bouncing_ball", "examples\shapes_bouncing_ball.vcxproj", "{02F41059-12A2-4A96-8D77-07EFE4B108FD}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "shapes_collision_area", "examples\shapes_collision_area.vcxproj", "{B774E0B9-9514-4E88-975F-4EB6C3B8D519}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "shapes_colors_palette", "examples\shapes_colors_palette.vcxproj", "{D91367C2-2189-4859-A7FE-D2CAB84FA15C}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "shapes_circle_sector_drawing", "examples\shapes_circle_sector_drawing.vcxproj", "{33459B4E-1839-4856-BF6B-22480D11FE31}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "shapes_rounded_rectangle_drawing", "examples\shapes_rounded_rectangle_drawing.vcxproj", "{48871156-181A-475A-BD8D-200086A09675}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "shapes_ring_drawing", "examples\shapes_ring_drawing.vcxproj", "{C4416DA1-9E62-46BA-9CD3-F8963C79E1A1}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "shapes_easings_ball", "examples\shapes_easings_ball.vcxproj", "{1C49E35A-2838-49D9-9D5F-4B8134960EF6}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "shapes_easings_box", "examples\shapes_easings_box.vcxproj", "{F91142E2-A999-47F0-9E74-38C1E2930EBE}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "shapes_easings_rectangles", "examples\shapes_easings_rectangles.vcxproj", "{1EDD4BCF-345C-4065-8CBD-7285224293C3}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "shaders_basic_lighting", "examples\shaders_basic_lighting.vcxproj", "{A6B2A11B-0669-4AF5-A025-8DD02DBBE5EA}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "shaders_custom_uniform", "examples\shaders_custom_uniform.vcxproj", "{B176BB4A-CA31-4E2A-B790-3EA0ED2EE870}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "shaders_eratosthenes_sieve", "examples\shaders_eratosthenes_sieve.vcxproj", "{D08AA2A0-2F94-4BF5-B42D-E92450F03FD1}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "shaders_fog_rendering", "examples\shaders_fog_rendering.vcxproj", "{4A7D0ECA-D7CC-4E66-B741-C92E9C1B42FF}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "shaders_hot_reloading", "examples\shaders_hot_reloading.vcxproj", "{CF3755C4-937D-4ABF-B7B3-95140808717F}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "shaders_julia_set", "examples\shaders_julia_set.vcxproj", "{D34939FE-8873-4C53-8D6C-74DED78EA3C4}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "shaders_model_shader", "examples\shaders_model_shader.vcxproj", "{D408A730-363A-4ABF-BCEF-5D63DCC66042}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "shaders_multi_sample2d", "examples\shaders_multi_sample2d.vcxproj", "{F532AFBC-9E62-4A89-BB99-1044E4B2D8ED}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "shaders_palette_switch", "examples\shaders_palette_switch.vcxproj", "{52FB7463-C128-42AF-A02F-78F48473EA9A}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "shaders_postprocessing", "examples\shaders_postprocessing.vcxproj", "{7381D91E-5C72-48F0-AAB4-95C9B10D7484}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "shaders_raymarching_rendering", "examples\shaders_raymarching_rendering.vcxproj", "{D36EC43E-B31F-4CF4-8285-93A7A9D90189}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "shaders_mesh_instancing", "examples\shaders_mesh_instancing.vcxproj", "{274C0319-7E1E-4188-936B-8DF3331230B3}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "shaders_shapes_textures", "examples\shaders_shapes_textures.vcxproj", "{41BBCC10-CFDE-48A1-B2E0-A0EC6A668629}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "shaders_simple_mask", "examples\shaders_simple_mask.vcxproj", "{600C3D4F-0670-4DB4-B30F-520A729053B5}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "shaders_spotlight_rendering", "examples\shaders_spotlight_rendering.vcxproj", "{11F33A39-74B7-4018-B5F9-CC285A673A8F}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "shaders_texture_rendering", "examples\shaders_texture_rendering.vcxproj", "{A6F5E35E-B4A7-41B3-853A-75558E6E0715}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "shaders_texture_waves", "examples\shaders_texture_waves.vcxproj", "{291B4975-8EFF-4C7C-8AF3-44A77B8491B8}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "models_loading_vox", "examples\models_loading_vox.vcxproj", "{2F1B955B-275E-4D8E-8864-06FEC44D7912}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "models_loading_gltf", "examples\models_loading_gltf.vcxproj", "{F5FC9279-DE63-4EF3-B31F-CFCEF9B11F71}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "text_codepoints_loading", "examples\text_codepoints_loading.vcxproj", "{F2DB2E59-76BF-4D81-859A-AFC289C046C0}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "core_window_should_close", "examples\core_window_should_close.vcxproj", "{3FE7E9B6-49AC-4246-A789-28DB4644567B}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "textures_fog_of_war", "examples\textures_fog_of_war.vcxproj", "{EBBBF4A0-2DA2-4DE6-B4FE-C6654A2417A0}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "textures_gif_player", "examples\textures_gif_player.vcxproj", "{191A5289-BA65-4638-A215-C521F0187313}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "core_2d_camera_mouse_zoom", "examples\core_2d_camera_mouse_zoom.vcxproj", "{3CFF7AB8-32CB-4D6D-9FED-53DBEF277359}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "core_basic_screen_manager", "examples\core_basic_screen_manager.vcxproj", "{8B1AF423-00F1-4924-AC54-F77D402D2AC9}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "core_custom_frame_control", "examples\core_custom_frame_control.vcxproj", "{658A1B85-554E-4A5D-973A-FFE592CDD5F2}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "text_3d_drawing", "examples\text_3d_drawing.vcxproj", "{27B110CC-43C0-400A-89D9-245E681647D7}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "textures_polygon_drawing", "examples\textures_polygon_drawing.vcxproj", "{1DE84812-E143-4C4B-A61D-9267AAD55401}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "audio_stream_effects", "examples\audio_stream_effects.vcxproj", "{4A87569C-4BD3-4113-B4B9-573D65B3D3F8}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "textures_textured_curve", "examples\textures_textured_curve.vcxproj", "{769FF0C1-4424-4FA3-BC44-D7A7DA312A06}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "models_loading_m3d", "examples\models_loading_m3d.vcxproj", "{6D9E00D8-2893-45E4-9363-3F7F61D416BD}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "shaders_depth_writing", "examples\shaders_depth_writing.vcxproj", "{70B35F59-AFC2-4D8F-8833-5314D2047A81}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "shaders_depth_rendering", "examples\shaders_depth_rendering.vcxproj", "{DFDE29A7-4F54-455D-B20B-D2BF79D3B3F7}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "shaders_hybrid_rendering", "examples\shaders_hybrid_rendering.vcxproj", "{3755E9F4-CB48-4EC3-B561-3B85964EBDEF}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "audio_sound_multi", "examples\audio_sound_multi.vcxproj", "{F81C5819-85B4-4D2E-B6DC-104A7634461B}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "core_2d_camera_split_screen", "examples\core_2d_camera_split_screen.vcxproj", "{CC62F7DB-D089-4677-8575-CAB7A7815C43}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "core_automation_events", "examples\core_automation_events.vcxproj", "{7AF97D44-707E-48DC-81CB-C9D8D7C9ED26}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "audio_mixed_processor", "examples\audio_mixed_processor.vcxproj", "{A4B0D971-3CD6-41C9-8AB2-055D25A33373}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "core_input_mouse_wheel", "examples\core_input_mouse_wheel.vcxproj", "{15CDD310-6980-42A6-8082-3A6B7730D13F}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "core_smooth_pixelperfect", "examples\core_smooth_pixelperfect.vcxproj", "{71DB4284-5B1C-4E86-9AF5-B91542D44A6F}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "models_textured_cube", "examples\models_textured_cube.vcxproj", "{4B39E5FC-0A96-4057-9AA5-8D5A52880DA7}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "shaders_deferred_rendering", "examples\shaders_deferred_rendering.vcxproj", "{88DE5AD6-0074-4A5A-BE22-C840153E35D5}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "shaders_texture_outline", "examples\shaders_texture_outline.vcxproj", "{A546E75A-5242-46E6-9A9E-6C91554EAB84}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "shaders_texture_tiling", "examples\shaders_texture_tiling.vcxproj", "{EFA150D4-F93B-4D7D-A69C-9E8B4663BECD}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "shapes_splines_drawing", "examples\shapes_splines_drawing.vcxproj", "{DF25E545-00FF-4E64-844C-7DF98991F901}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "shapes_top_down_lights", "examples\shapes_top_down_lights.vcxproj", "{703BE7BA-5B99-4F70-806D-3A259F6A991E}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "shapes_rectangle_advanced", "examples\shapes_rectangle_advanced.vcxproj", "{FAFEE2F9-24B0-4AF1-B512-433E9590033F}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "models_animation_gpu_skinning", "examples\models_animation_gpu_skinning.vcxproj", "{8245DAD9-D402-4D5C-8F45-32229CD3B263}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "shaders_shadowmap_rendering", "examples\shaders_shadowmap_rendering.vcxproj", "{41BBCC10-6FDE-48A1-B2E0-A0EC6A668629}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "models_bone_socket", "examples\models_bone_socket.vcxproj", "{3A7FE53D-35F7-49DC-9C9A-A5204A53523F}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "shaders_vertex_displacement", "examples\shaders_vertex_displacement.vcxproj", "{CCA63A76-D9FC-4130-9F67-4D97F9770D53}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "shaders_rounded_rectangle", "examples\shaders_rounded_rectangle.vcxproj", "{D3493FFE-8873-4C53-8F6C-74DEF78EA3C4}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "shapes_digital_clock", "examples\shapes_digital_clock.vcxproj", "{3384C257-3CFE-4A8F-838C-19DAC5C955DA}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "shapes_double_pendulum", "examples\shapes_double_pendulum.vcxproj", "{2B140378-125F-4DE9-AC37-2CC1B73D7254}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "textures_image_kernel", "examples\textures_image_kernel.vcxproj", "{F4C55B99-E1C5-496A-8AC2-40188C38F4F6}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "textures_image_rotate", "examples\textures_image_rotate.vcxproj", "{2AA91EED-2D32-4B09-84A3-53D41EED1005}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "textures_image_channel", "examples\textures_image_channel.vcxproj", "{EC0910F6-8D66-4509-BF57-A5EE7AE9485F}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "models_point_rendering", "examples\models_point_rendering.vcxproj", "{921391C6-7626-4212-9928-BC82BC785461}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "models_tesseract_view", "examples\models_tesseract_view.vcxproj", "{6B8C5711-6AB4-4023-9FDD-E9D976E8D18F}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "shaders_basic_pbr", "examples\shaders_basic_pbr.vcxproj", "{4DF6D5E4-6796-4257-B466-BCD62DEBBCF8}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "shaders_lightmap_rendering", "examples\shaders_lightmap_rendering.vcxproj", "{C54703BF-D68A-480D-BE27-49B62E45D582}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "audio_sound_positioning", "examples\audio_sound_positioning.vcxproj", "{9CD8BCAD-F212-4BCC-BA98-899743CE3279}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "core_input_virtual_controls", "examples\core_input_virtual_controls.vcxproj", "{0981CA28-E4A5-4DF1-987F-A41D09131EFC}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "core_3d_camera_fps", "examples\core_3d_camera_fps.vcxproj", "{6B1A933E-71B8-4C1F-9E79-02D98830E671}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "shaders_normalmap_rendering", "examples\shaders_normalmap_rendering.vcxproj", "{6BFF72EA-7362-4A3B-B6E5-9A3655BBBDA3}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "text_unicode_ranges", "examples\text_unicode_ranges.vcxproj", "{6777EC3C-077C-42FC-B4AD-B799CE55CCE4}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "core_input_gestures_testbed", "examples\core_input_gestures_testbed.vcxproj", "{A61DAD9C-271C-4E95-81AA-DB4CD58564D4}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "core_render_texture", "examples\core_render_texture.vcxproj", "{49C67F03-1A56-4F96-B278-39B66EC93678}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "text_inline_styling", "examples\text_inline_styling.vcxproj", "{D496308F-3C3C-40B3-A3ED-EA327D244B3E}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "core_undo_redo", "examples\core_undo_redo.vcxproj", "{3B27F358-2679-4F38-B297-17B536F580BB}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "core_input_actions", "examples\core_input_actions.vcxproj", "{718FCBD0-591D-448C-B7D5-9F1CA8544E7B}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "core_delta_time", "examples\core_delta_time.vcxproj", "{19CA0070-B4B2-4394-90B7-D0C259AA35BA}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "shapes_bullet_hell", "examples\shapes_bullet_hell.vcxproj", "{2CCCD9E4-9058-4291-BD89-39C979F0CA1E}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "shapes_vector_angle", "examples\shapes_vector_angle.vcxproj", "{9DB1F875-6E65-4195-B23F-ED8095C0B99C}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "models_basic_voxel", "examples\models_basic_voxel.vcxproj", "{52BA9067-A5FC-4CE8-82AD-7204ECFDEF9F}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "shapes_dashed_line", "examples\shapes_dashed_line.vcxproj", "{8E132D5A-2C00-48D0-8747-97E41356F26F}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "models_rotating_cube", "examples\models_rotating_cube.vcxproj", "{A4662163-83E7-4309-8CAA-B0BF13655FE6}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "shaders_ascii_rendering", "examples\shaders_ascii_rendering.vcxproj", "{5F4B766F-DD52-4B53-B6C3-BC7611E17F20}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "core_monitor_detector", "examples\core_monitor_detector.vcxproj", "{FF5F9EE9-29C5-40EE-BBCF-AE51B001FEC3}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "shapes_kaleidoscope", "examples\shapes_kaleidoscope.vcxproj", "{0C442799-B09C-4CD1-9538-711B6E85E9BF}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "shapes_recursive_tree", "examples\shapes_recursive_tree.vcxproj", "{DFB40A10-F8B7-412A-BCC3-5EE49294D816}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "shapes_triangle_strip", "examples\shapes_triangle_strip.vcxproj", "{BB58A5FB-1A35-4471-86D0-A5189EC541B3}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "shapes_pie_chart", "examples\shapes_pie_chart.vcxproj", "{61997220-5383-4AE5-ABD4-5F45AE1B0F2A}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "core_directory_files", "examples\core_directory_files.vcxproj", "{7467E9AE-844F-444D-8A3F-17397544BA21}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "shapes_simple_particles", "examples\shapes_simple_particles.vcxproj", "{497FDF54-9762-4048-A833-61CC3980A0FB}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "text_words_alignment", "examples\text_words_alignment.vcxproj", "{29B00F47-BE91-4A1F-B87D-B1302F038316}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "core_clipboard_text", "examples\core_clipboard_text.vcxproj", "{124935CC-73BB-489E-92E8-4F922A85DB5D}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "shapes_clock_of_clocks", "examples\shapes_clock_of_clocks.vcxproj", "{AC215730-2B5F-4498-B7F5-5DB80AEFCA5F}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "shapes_mouse_trail", "examples\shapes_mouse_trail.vcxproj", "{0835E6BF-0170-4E99-A55C-E06E1EF4C3B2}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "shapes_starfield_effect", "examples\shapes_starfield_effect.vcxproj", "{EA4AD5A7-DB95-43C0-9A67-2D94146BCF91}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "core_highdpi_testbed", "examples\core_highdpi_testbed.vcxproj", "{1ACC8236-EF4E-44B0-BD0C-AB1D95D5890F}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "core_screen_recording", "examples\core_screen_recording.vcxproj", "{9DE2FC01-A839-4F89-8319-9071D4C54821}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "core_text_file_loading", "examples\core_text_file_loading.vcxproj", "{2F578155-D51F-4C03-AB7F-5C5122CA46CC}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "shaders_mandelbrot_set", "examples\shaders_mandelbrot_set.vcxproj", "{1C829D1A-892C-451C-AF0B-AC65C85F5CC6}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "shapes_math_angle_rotation", "examples\shapes_math_angle_rotation.vcxproj", "{84DE22BB-C25F-425C-A7FE-0120CF107B83}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "shaders_color_correction", "examples\shaders_color_correction.vcxproj", "{98152EDD-7E28-4FA3-89D8-B636ED5D5F65}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "shapes_math_sine_cosine", "examples\shapes_math_sine_cosine.vcxproj", "{B7FDD40F-DDA4-468E-9C40-EEB175964A26}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "models_decals", "examples\models_decals.vcxproj", "{028F0967-B253-45DA-B1C4-FACCE45D0D8D}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "shapes_lines_drawing", "examples\shapes_lines_drawing.vcxproj", "{666346D7-C84B-498D-AE17-53B20C62DB1A}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "core_viewport_scaling", "examples\core_viewport_scaling.vcxproj", "{AD66AA6A-1E36-4FF0-8670-4F9834BCDB91}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "core_compute_hash", "examples\core_compute_hash.vcxproj", "{6C897101-BE52-4387-8AA2-062123A76BA1}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "textures_screen_buffer", "examples\textures_screen_buffer.vcxproj", "{4E9D2828-EE83-40C8-97E0-137EEDFBAAAD}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "audio_spectrum_visualizer", "examples\audio_spectrum_visualizer.vcxproj", "{2B3CED91-973F-4936-9DD4-CC8B1C8ACC68}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "models_directional_billboard", "examples\models_directional_billboard.vcxproj", "{30011884-25EE-42C9-BB15-888CAFB1AA6E}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "shapes_rlgl_color_wheel", "examples\shapes_rlgl_color_wheel.vcxproj", "{32FE2658-1D70-442E-8672-0AC5C6F0BD7B}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "shapes_rlgl_triangle", "examples\shapes_rlgl_triangle.vcxproj", "{842B6472-4AA6-4C2B-A5E5-A62F80DE2C4F}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "textures_sprite_stacking", "examples\textures_sprite_stacking.vcxproj", "{FC4DEBD2-4B17-4534-8EEA-BB24A2DBEB5F}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "shapes_ball_physics", "examples\shapes_ball_physics.vcxproj", "{0653AFAF-5578-4C02-AF29-0C873E7634AE}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "shaders_game_of_life", "examples\shaders_game_of_life.vcxproj", "{071E64F3-1396-4A97-97CA-98CAC059B168}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "shapes_penrose_tile", "examples\shapes_penrose_tile.vcxproj", "{7883D076-CA8F-4FF7-8B5D-0DFF41CEF8FC}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "text_strings_management", "examples\text_strings_management.vcxproj", "{1F4722E7-F78E-413F-A106-D3490211EA57}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "textures_cellular_automata", "examples\textures_cellular_automata.vcxproj", "{0A0FC982-6E31-401F-BA77-3C5E8AB02C68}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "shapes_hilbert_curve", "examples\shapes_hilbert_curve.vcxproj", "{DC163251-16C3-4B72-B965-ACDBA0F02BD1}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "core_keyboard_testbed", "examples\core_keyboard_testbed.vcxproj", "{D35D2FDA-B53F-4F70-81CA-24D95812B89C}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "textures_framebuffer_rendering", "examples\textures_framebuffer_rendering.vcxproj", "{F8DC77C0-556C-4672-B5B3-D2FA4ADC505C}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "shapes_easings_testbed", "examples\shapes_easings_testbed.vcxproj", "{4250CE87-9AA0-43BB-AB47-0636548922B5}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "shaders_rlgl_compute", "examples\shaders_rlgl_compute.vcxproj", "{AEA9D0D4-B810-4624-BC75-10A291584ED6}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "models_animation_bone_blending", "examples\models_animation_bone_blending.vcxproj", "{AC751FE1-C986-4B6A-92A8-28ED89DEE671}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "models_animation_blending", "examples\models_animation_blending.vcxproj", "{BB9C957D-34F1-46AE-B64A-9E0499C1746D}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "core_window_web", "examples\core_window_web.vcxproj", "{4E7157E0-6CDB-47AE-A19A-FEC3876FA8A3}"
+EndProject
+Global
+ GlobalSection(SolutionConfigurationPlatforms) = preSolution
+ Debug.DLL|ARM64 = Debug.DLL|ARM64
+ Debug.DLL|x64 = Debug.DLL|x64
+ Debug.DLL|x86 = Debug.DLL|x86
+ Debug|ARM64 = Debug|ARM64
+ Debug|x64 = Debug|x64
+ Debug|x86 = Debug|x86
+ Release.DLL|ARM64 = Release.DLL|ARM64
+ Release.DLL|x64 = Release.DLL|x64
+ Release.DLL|x86 = Release.DLL|x86
+ Release|ARM64 = Release|ARM64
+ Release|x64 = Release|x64
+ Release|x86 = Release|x86
+ EndGlobalSection
+ GlobalSection(ProjectConfigurationPlatforms) = postSolution
+ {E89D61AC-55DE-4482-AFD4-DF7242EBC859}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
+ {E89D61AC-55DE-4482-AFD4-DF7242EBC859}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
+ {E89D61AC-55DE-4482-AFD4-DF7242EBC859}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
+ {E89D61AC-55DE-4482-AFD4-DF7242EBC859}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
+ {E89D61AC-55DE-4482-AFD4-DF7242EBC859}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
+ {E89D61AC-55DE-4482-AFD4-DF7242EBC859}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
+ {E89D61AC-55DE-4482-AFD4-DF7242EBC859}.Debug|ARM64.ActiveCfg = Debug|ARM64
+ {E89D61AC-55DE-4482-AFD4-DF7242EBC859}.Debug|ARM64.Build.0 = Debug|ARM64
+ {E89D61AC-55DE-4482-AFD4-DF7242EBC859}.Debug|x64.ActiveCfg = Debug|x64
+ {E89D61AC-55DE-4482-AFD4-DF7242EBC859}.Debug|x64.Build.0 = Debug|x64
+ {E89D61AC-55DE-4482-AFD4-DF7242EBC859}.Debug|x86.ActiveCfg = Debug|Win32
+ {E89D61AC-55DE-4482-AFD4-DF7242EBC859}.Debug|x86.Build.0 = Debug|Win32
+ {E89D61AC-55DE-4482-AFD4-DF7242EBC859}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
+ {E89D61AC-55DE-4482-AFD4-DF7242EBC859}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
+ {E89D61AC-55DE-4482-AFD4-DF7242EBC859}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
+ {E89D61AC-55DE-4482-AFD4-DF7242EBC859}.Release.DLL|x64.Build.0 = Release.DLL|x64
+ {E89D61AC-55DE-4482-AFD4-DF7242EBC859}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
+ {E89D61AC-55DE-4482-AFD4-DF7242EBC859}.Release.DLL|x86.Build.0 = Release.DLL|Win32
+ {E89D61AC-55DE-4482-AFD4-DF7242EBC859}.Release|ARM64.ActiveCfg = Release|ARM64
+ {E89D61AC-55DE-4482-AFD4-DF7242EBC859}.Release|ARM64.Build.0 = Release|ARM64
+ {E89D61AC-55DE-4482-AFD4-DF7242EBC859}.Release|x64.ActiveCfg = Release|x64
+ {E89D61AC-55DE-4482-AFD4-DF7242EBC859}.Release|x64.Build.0 = Release|x64
+ {E89D61AC-55DE-4482-AFD4-DF7242EBC859}.Release|x86.ActiveCfg = Release|Win32
+ {E89D61AC-55DE-4482-AFD4-DF7242EBC859}.Release|x86.Build.0 = Release|Win32
+ {0981CA98-E4A5-4DF1-987F-A41D09131EFC}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
+ {0981CA98-E4A5-4DF1-987F-A41D09131EFC}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
+ {0981CA98-E4A5-4DF1-987F-A41D09131EFC}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
+ {0981CA98-E4A5-4DF1-987F-A41D09131EFC}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
+ {0981CA98-E4A5-4DF1-987F-A41D09131EFC}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
+ {0981CA98-E4A5-4DF1-987F-A41D09131EFC}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
+ {0981CA98-E4A5-4DF1-987F-A41D09131EFC}.Debug|ARM64.ActiveCfg = Debug|ARM64
+ {0981CA98-E4A5-4DF1-987F-A41D09131EFC}.Debug|ARM64.Build.0 = Debug|ARM64
+ {0981CA98-E4A5-4DF1-987F-A41D09131EFC}.Debug|x64.ActiveCfg = Debug|x64
+ {0981CA98-E4A5-4DF1-987F-A41D09131EFC}.Debug|x64.Build.0 = Debug|x64
+ {0981CA98-E4A5-4DF1-987F-A41D09131EFC}.Debug|x86.ActiveCfg = Debug|Win32
+ {0981CA98-E4A5-4DF1-987F-A41D09131EFC}.Debug|x86.Build.0 = Debug|Win32
+ {0981CA98-E4A5-4DF1-987F-A41D09131EFC}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
+ {0981CA98-E4A5-4DF1-987F-A41D09131EFC}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
+ {0981CA98-E4A5-4DF1-987F-A41D09131EFC}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
+ {0981CA98-E4A5-4DF1-987F-A41D09131EFC}.Release.DLL|x64.Build.0 = Release.DLL|x64
+ {0981CA98-E4A5-4DF1-987F-A41D09131EFC}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
+ {0981CA98-E4A5-4DF1-987F-A41D09131EFC}.Release.DLL|x86.Build.0 = Release.DLL|Win32
+ {0981CA98-E4A5-4DF1-987F-A41D09131EFC}.Release|ARM64.ActiveCfg = Release|ARM64
+ {0981CA98-E4A5-4DF1-987F-A41D09131EFC}.Release|ARM64.Build.0 = Release|ARM64
+ {0981CA98-E4A5-4DF1-987F-A41D09131EFC}.Release|x64.ActiveCfg = Release|x64
+ {0981CA98-E4A5-4DF1-987F-A41D09131EFC}.Release|x64.Build.0 = Release|x64
+ {0981CA98-E4A5-4DF1-987F-A41D09131EFC}.Release|x86.ActiveCfg = Release|Win32
+ {0981CA98-E4A5-4DF1-987F-A41D09131EFC}.Release|x86.Build.0 = Release|Win32
+ {C25D2CC6-80CA-4C8A-BE3B-2E0F4EA5D0CC}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
+ {C25D2CC6-80CA-4C8A-BE3B-2E0F4EA5D0CC}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
+ {C25D2CC6-80CA-4C8A-BE3B-2E0F4EA5D0CC}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
+ {C25D2CC6-80CA-4C8A-BE3B-2E0F4EA5D0CC}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
+ {C25D2CC6-80CA-4C8A-BE3B-2E0F4EA5D0CC}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
+ {C25D2CC6-80CA-4C8A-BE3B-2E0F4EA5D0CC}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
+ {C25D2CC6-80CA-4C8A-BE3B-2E0F4EA5D0CC}.Debug|ARM64.ActiveCfg = Debug|ARM64
+ {C25D2CC6-80CA-4C8A-BE3B-2E0F4EA5D0CC}.Debug|ARM64.Build.0 = Debug|ARM64
+ {C25D2CC6-80CA-4C8A-BE3B-2E0F4EA5D0CC}.Debug|x64.ActiveCfg = Debug|x64
+ {C25D2CC6-80CA-4C8A-BE3B-2E0F4EA5D0CC}.Debug|x64.Build.0 = Debug|x64
+ {C25D2CC6-80CA-4C8A-BE3B-2E0F4EA5D0CC}.Debug|x86.ActiveCfg = Debug|Win32
+ {C25D2CC6-80CA-4C8A-BE3B-2E0F4EA5D0CC}.Debug|x86.Build.0 = Debug|Win32
+ {C25D2CC6-80CA-4C8A-BE3B-2E0F4EA5D0CC}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
+ {C25D2CC6-80CA-4C8A-BE3B-2E0F4EA5D0CC}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
+ {C25D2CC6-80CA-4C8A-BE3B-2E0F4EA5D0CC}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
+ {C25D2CC6-80CA-4C8A-BE3B-2E0F4EA5D0CC}.Release.DLL|x64.Build.0 = Release.DLL|x64
+ {C25D2CC6-80CA-4C8A-BE3B-2E0F4EA5D0CC}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
+ {C25D2CC6-80CA-4C8A-BE3B-2E0F4EA5D0CC}.Release.DLL|x86.Build.0 = Release.DLL|Win32
+ {C25D2CC6-80CA-4C8A-BE3B-2E0F4EA5D0CC}.Release|ARM64.ActiveCfg = Release|ARM64
+ {C25D2CC6-80CA-4C8A-BE3B-2E0F4EA5D0CC}.Release|ARM64.Build.0 = Release|ARM64
+ {C25D2CC6-80CA-4C8A-BE3B-2E0F4EA5D0CC}.Release|x64.ActiveCfg = Release|x64
+ {C25D2CC6-80CA-4C8A-BE3B-2E0F4EA5D0CC}.Release|x64.Build.0 = Release|x64
+ {C25D2CC6-80CA-4C8A-BE3B-2E0F4EA5D0CC}.Release|x86.ActiveCfg = Release|Win32
+ {C25D2CC6-80CA-4C8A-BE3B-2E0F4EA5D0CC}.Release|x86.Build.0 = Release|Win32
+ {103B292B-049B-4B15-85A1-9F902840DB2C}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
+ {103B292B-049B-4B15-85A1-9F902840DB2C}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
+ {103B292B-049B-4B15-85A1-9F902840DB2C}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
+ {103B292B-049B-4B15-85A1-9F902840DB2C}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
+ {103B292B-049B-4B15-85A1-9F902840DB2C}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
+ {103B292B-049B-4B15-85A1-9F902840DB2C}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
+ {103B292B-049B-4B15-85A1-9F902840DB2C}.Debug|ARM64.ActiveCfg = Debug|ARM64
+ {103B292B-049B-4B15-85A1-9F902840DB2C}.Debug|ARM64.Build.0 = Debug|ARM64
+ {103B292B-049B-4B15-85A1-9F902840DB2C}.Debug|x64.ActiveCfg = Debug|x64
+ {103B292B-049B-4B15-85A1-9F902840DB2C}.Debug|x64.Build.0 = Debug|x64
+ {103B292B-049B-4B15-85A1-9F902840DB2C}.Debug|x86.ActiveCfg = Debug|Win32
+ {103B292B-049B-4B15-85A1-9F902840DB2C}.Debug|x86.Build.0 = Debug|Win32
+ {103B292B-049B-4B15-85A1-9F902840DB2C}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
+ {103B292B-049B-4B15-85A1-9F902840DB2C}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
+ {103B292B-049B-4B15-85A1-9F902840DB2C}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
+ {103B292B-049B-4B15-85A1-9F902840DB2C}.Release.DLL|x64.Build.0 = Release.DLL|x64
+ {103B292B-049B-4B15-85A1-9F902840DB2C}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
+ {103B292B-049B-4B15-85A1-9F902840DB2C}.Release.DLL|x86.Build.0 = Release.DLL|Win32
+ {103B292B-049B-4B15-85A1-9F902840DB2C}.Release|ARM64.ActiveCfg = Release|ARM64
+ {103B292B-049B-4B15-85A1-9F902840DB2C}.Release|ARM64.Build.0 = Release|ARM64
+ {103B292B-049B-4B15-85A1-9F902840DB2C}.Release|x64.ActiveCfg = Release|x64
+ {103B292B-049B-4B15-85A1-9F902840DB2C}.Release|x64.Build.0 = Release|x64
+ {103B292B-049B-4B15-85A1-9F902840DB2C}.Release|x86.ActiveCfg = Release|Win32
+ {103B292B-049B-4B15-85A1-9F902840DB2C}.Release|x86.Build.0 = Release|Win32
+ {0C2D2F82-AE67-400C-B19C-8C9B957B132A}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
+ {0C2D2F82-AE67-400C-B19C-8C9B957B132A}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
+ {0C2D2F82-AE67-400C-B19C-8C9B957B132A}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
+ {0C2D2F82-AE67-400C-B19C-8C9B957B132A}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
+ {0C2D2F82-AE67-400C-B19C-8C9B957B132A}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
+ {0C2D2F82-AE67-400C-B19C-8C9B957B132A}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
+ {0C2D2F82-AE67-400C-B19C-8C9B957B132A}.Debug|ARM64.ActiveCfg = Debug|ARM64
+ {0C2D2F82-AE67-400C-B19C-8C9B957B132A}.Debug|ARM64.Build.0 = Debug|ARM64
+ {0C2D2F82-AE67-400C-B19C-8C9B957B132A}.Debug|x64.ActiveCfg = Debug|x64
+ {0C2D2F82-AE67-400C-B19C-8C9B957B132A}.Debug|x64.Build.0 = Debug|x64
+ {0C2D2F82-AE67-400C-B19C-8C9B957B132A}.Debug|x86.ActiveCfg = Debug|Win32
+ {0C2D2F82-AE67-400C-B19C-8C9B957B132A}.Debug|x86.Build.0 = Debug|Win32
+ {0C2D2F82-AE67-400C-B19C-8C9B957B132A}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
+ {0C2D2F82-AE67-400C-B19C-8C9B957B132A}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
+ {0C2D2F82-AE67-400C-B19C-8C9B957B132A}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
+ {0C2D2F82-AE67-400C-B19C-8C9B957B132A}.Release.DLL|x64.Build.0 = Release.DLL|x64
+ {0C2D2F82-AE67-400C-B19C-8C9B957B132A}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
+ {0C2D2F82-AE67-400C-B19C-8C9B957B132A}.Release.DLL|x86.Build.0 = Release.DLL|Win32
+ {0C2D2F82-AE67-400C-B19C-8C9B957B132A}.Release|ARM64.ActiveCfg = Release|ARM64
+ {0C2D2F82-AE67-400C-B19C-8C9B957B132A}.Release|ARM64.Build.0 = Release|ARM64
+ {0C2D2F82-AE67-400C-B19C-8C9B957B132A}.Release|x64.ActiveCfg = Release|x64
+ {0C2D2F82-AE67-400C-B19C-8C9B957B132A}.Release|x64.Build.0 = Release|x64
+ {0C2D2F82-AE67-400C-B19C-8C9B957B132A}.Release|x86.ActiveCfg = Release|Win32
+ {0C2D2F82-AE67-400C-B19C-8C9B957B132A}.Release|x86.Build.0 = Release|Win32
+ {E6784F91-4E4E-4956-A079-73FAB1AC7BE6}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
+ {E6784F91-4E4E-4956-A079-73FAB1AC7BE6}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
+ {E6784F91-4E4E-4956-A079-73FAB1AC7BE6}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
+ {E6784F91-4E4E-4956-A079-73FAB1AC7BE6}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
+ {E6784F91-4E4E-4956-A079-73FAB1AC7BE6}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
+ {E6784F91-4E4E-4956-A079-73FAB1AC7BE6}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
+ {E6784F91-4E4E-4956-A079-73FAB1AC7BE6}.Debug|ARM64.ActiveCfg = Debug|ARM64
+ {E6784F91-4E4E-4956-A079-73FAB1AC7BE6}.Debug|ARM64.Build.0 = Debug|ARM64
+ {E6784F91-4E4E-4956-A079-73FAB1AC7BE6}.Debug|x64.ActiveCfg = Debug|x64
+ {E6784F91-4E4E-4956-A079-73FAB1AC7BE6}.Debug|x64.Build.0 = Debug|x64
+ {E6784F91-4E4E-4956-A079-73FAB1AC7BE6}.Debug|x86.ActiveCfg = Debug|Win32
+ {E6784F91-4E4E-4956-A079-73FAB1AC7BE6}.Debug|x86.Build.0 = Debug|Win32
+ {E6784F91-4E4E-4956-A079-73FAB1AC7BE6}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
+ {E6784F91-4E4E-4956-A079-73FAB1AC7BE6}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
+ {E6784F91-4E4E-4956-A079-73FAB1AC7BE6}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
+ {E6784F91-4E4E-4956-A079-73FAB1AC7BE6}.Release.DLL|x64.Build.0 = Release.DLL|x64
+ {E6784F91-4E4E-4956-A079-73FAB1AC7BE6}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
+ {E6784F91-4E4E-4956-A079-73FAB1AC7BE6}.Release.DLL|x86.Build.0 = Release.DLL|Win32
+ {E6784F91-4E4E-4956-A079-73FAB1AC7BE6}.Release|ARM64.ActiveCfg = Release|ARM64
+ {E6784F91-4E4E-4956-A079-73FAB1AC7BE6}.Release|ARM64.Build.0 = Release|ARM64
+ {E6784F91-4E4E-4956-A079-73FAB1AC7BE6}.Release|x64.ActiveCfg = Release|x64
+ {E6784F91-4E4E-4956-A079-73FAB1AC7BE6}.Release|x64.Build.0 = Release|x64
+ {E6784F91-4E4E-4956-A079-73FAB1AC7BE6}.Release|x86.ActiveCfg = Release|Win32
+ {E6784F91-4E4E-4956-A079-73FAB1AC7BE6}.Release|x86.Build.0 = Release|Win32
+ {BFB22AB2-041B-4A1B-80C0-1D4BE410C8A9}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
+ {BFB22AB2-041B-4A1B-80C0-1D4BE410C8A9}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
+ {BFB22AB2-041B-4A1B-80C0-1D4BE410C8A9}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
+ {BFB22AB2-041B-4A1B-80C0-1D4BE410C8A9}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
+ {BFB22AB2-041B-4A1B-80C0-1D4BE410C8A9}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
+ {BFB22AB2-041B-4A1B-80C0-1D4BE410C8A9}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
+ {BFB22AB2-041B-4A1B-80C0-1D4BE410C8A9}.Debug|ARM64.ActiveCfg = Debug|ARM64
+ {BFB22AB2-041B-4A1B-80C0-1D4BE410C8A9}.Debug|ARM64.Build.0 = Debug|ARM64
+ {BFB22AB2-041B-4A1B-80C0-1D4BE410C8A9}.Debug|x64.ActiveCfg = Debug|x64
+ {BFB22AB2-041B-4A1B-80C0-1D4BE410C8A9}.Debug|x64.Build.0 = Debug|x64
+ {BFB22AB2-041B-4A1B-80C0-1D4BE410C8A9}.Debug|x86.ActiveCfg = Debug|Win32
+ {BFB22AB2-041B-4A1B-80C0-1D4BE410C8A9}.Debug|x86.Build.0 = Debug|Win32
+ {BFB22AB2-041B-4A1B-80C0-1D4BE410C8A9}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
+ {BFB22AB2-041B-4A1B-80C0-1D4BE410C8A9}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
+ {BFB22AB2-041B-4A1B-80C0-1D4BE410C8A9}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
+ {BFB22AB2-041B-4A1B-80C0-1D4BE410C8A9}.Release.DLL|x64.Build.0 = Release.DLL|x64
+ {BFB22AB2-041B-4A1B-80C0-1D4BE410C8A9}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
+ {BFB22AB2-041B-4A1B-80C0-1D4BE410C8A9}.Release.DLL|x86.Build.0 = Release.DLL|Win32
+ {BFB22AB2-041B-4A1B-80C0-1D4BE410C8A9}.Release|ARM64.ActiveCfg = Release|ARM64
+ {BFB22AB2-041B-4A1B-80C0-1D4BE410C8A9}.Release|ARM64.Build.0 = Release|ARM64
+ {BFB22AB2-041B-4A1B-80C0-1D4BE410C8A9}.Release|x64.ActiveCfg = Release|x64
+ {BFB22AB2-041B-4A1B-80C0-1D4BE410C8A9}.Release|x64.Build.0 = Release|x64
+ {BFB22AB2-041B-4A1B-80C0-1D4BE410C8A9}.Release|x86.ActiveCfg = Release|Win32
+ {BFB22AB2-041B-4A1B-80C0-1D4BE410C8A9}.Release|x86.Build.0 = Release|Win32
+ {93A1F656-0D29-4C5E-B140-11F23FF5D6AB}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
+ {93A1F656-0D29-4C5E-B140-11F23FF5D6AB}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
+ {93A1F656-0D29-4C5E-B140-11F23FF5D6AB}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
+ {93A1F656-0D29-4C5E-B140-11F23FF5D6AB}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
+ {93A1F656-0D29-4C5E-B140-11F23FF5D6AB}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
+ {93A1F656-0D29-4C5E-B140-11F23FF5D6AB}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
+ {93A1F656-0D29-4C5E-B140-11F23FF5D6AB}.Debug|ARM64.ActiveCfg = Debug|ARM64
+ {93A1F656-0D29-4C5E-B140-11F23FF5D6AB}.Debug|ARM64.Build.0 = Debug|ARM64
+ {93A1F656-0D29-4C5E-B140-11F23FF5D6AB}.Debug|x64.ActiveCfg = Debug|x64
+ {93A1F656-0D29-4C5E-B140-11F23FF5D6AB}.Debug|x64.Build.0 = Debug|x64
+ {93A1F656-0D29-4C5E-B140-11F23FF5D6AB}.Debug|x86.ActiveCfg = Debug|Win32
+ {93A1F656-0D29-4C5E-B140-11F23FF5D6AB}.Debug|x86.Build.0 = Debug|Win32
+ {93A1F656-0D29-4C5E-B140-11F23FF5D6AB}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
+ {93A1F656-0D29-4C5E-B140-11F23FF5D6AB}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
+ {93A1F656-0D29-4C5E-B140-11F23FF5D6AB}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
+ {93A1F656-0D29-4C5E-B140-11F23FF5D6AB}.Release.DLL|x64.Build.0 = Release.DLL|x64
+ {93A1F656-0D29-4C5E-B140-11F23FF5D6AB}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
+ {93A1F656-0D29-4C5E-B140-11F23FF5D6AB}.Release.DLL|x86.Build.0 = Release.DLL|Win32
+ {93A1F656-0D29-4C5E-B140-11F23FF5D6AB}.Release|ARM64.ActiveCfg = Release|ARM64
+ {93A1F656-0D29-4C5E-B140-11F23FF5D6AB}.Release|ARM64.Build.0 = Release|ARM64
+ {93A1F656-0D29-4C5E-B140-11F23FF5D6AB}.Release|x64.ActiveCfg = Release|x64
+ {93A1F656-0D29-4C5E-B140-11F23FF5D6AB}.Release|x64.Build.0 = Release|x64
+ {93A1F656-0D29-4C5E-B140-11F23FF5D6AB}.Release|x86.ActiveCfg = Release|Win32
+ {93A1F656-0D29-4C5E-B140-11F23FF5D6AB}.Release|x86.Build.0 = Release|Win32
+ {F81C5819-85B6-4D2E-B6DC-104A7634461B}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
+ {F81C5819-85B6-4D2E-B6DC-104A7634461B}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
+ {F81C5819-85B6-4D2E-B6DC-104A7634461B}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
+ {F81C5819-85B6-4D2E-B6DC-104A7634461B}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
+ {F81C5819-85B6-4D2E-B6DC-104A7634461B}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
+ {F81C5819-85B6-4D2E-B6DC-104A7634461B}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
+ {F81C5819-85B6-4D2E-B6DC-104A7634461B}.Debug|ARM64.ActiveCfg = Debug|ARM64
+ {F81C5819-85B6-4D2E-B6DC-104A7634461B}.Debug|ARM64.Build.0 = Debug|ARM64
+ {F81C5819-85B6-4D2E-B6DC-104A7634461B}.Debug|x64.ActiveCfg = Debug|x64
+ {F81C5819-85B6-4D2E-B6DC-104A7634461B}.Debug|x64.Build.0 = Debug|x64
+ {F81C5819-85B6-4D2E-B6DC-104A7634461B}.Debug|x86.ActiveCfg = Debug|Win32
+ {F81C5819-85B6-4D2E-B6DC-104A7634461B}.Debug|x86.Build.0 = Debug|Win32
+ {F81C5819-85B6-4D2E-B6DC-104A7634461B}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
+ {F81C5819-85B6-4D2E-B6DC-104A7634461B}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
+ {F81C5819-85B6-4D2E-B6DC-104A7634461B}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
+ {F81C5819-85B6-4D2E-B6DC-104A7634461B}.Release.DLL|x64.Build.0 = Release.DLL|x64
+ {F81C5819-85B6-4D2E-B6DC-104A7634461B}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
+ {F81C5819-85B6-4D2E-B6DC-104A7634461B}.Release.DLL|x86.Build.0 = Release.DLL|Win32
+ {F81C5819-85B6-4D2E-B6DC-104A7634461B}.Release|ARM64.ActiveCfg = Release|ARM64
+ {F81C5819-85B6-4D2E-B6DC-104A7634461B}.Release|ARM64.Build.0 = Release|ARM64
+ {F81C5819-85B6-4D2E-B6DC-104A7634461B}.Release|x64.ActiveCfg = Release|x64
+ {F81C5819-85B6-4D2E-B6DC-104A7634461B}.Release|x64.Build.0 = Release|x64
+ {F81C5819-85B6-4D2E-B6DC-104A7634461B}.Release|x86.ActiveCfg = Release|Win32
+ {F81C5819-85B6-4D2E-B6DC-104A7634461B}.Release|x86.Build.0 = Release|Win32
+ {66CC5B13-881A-412F-8C51-746622A91C5A}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
+ {66CC5B13-881A-412F-8C51-746622A91C5A}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
+ {66CC5B13-881A-412F-8C51-746622A91C5A}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
+ {66CC5B13-881A-412F-8C51-746622A91C5A}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
+ {66CC5B13-881A-412F-8C51-746622A91C5A}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
+ {66CC5B13-881A-412F-8C51-746622A91C5A}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
+ {66CC5B13-881A-412F-8C51-746622A91C5A}.Debug|ARM64.ActiveCfg = Debug|ARM64
+ {66CC5B13-881A-412F-8C51-746622A91C5A}.Debug|ARM64.Build.0 = Debug|ARM64
+ {66CC5B13-881A-412F-8C51-746622A91C5A}.Debug|x64.ActiveCfg = Debug|x64
+ {66CC5B13-881A-412F-8C51-746622A91C5A}.Debug|x64.Build.0 = Debug|x64
+ {66CC5B13-881A-412F-8C51-746622A91C5A}.Debug|x86.ActiveCfg = Debug|Win32
+ {66CC5B13-881A-412F-8C51-746622A91C5A}.Debug|x86.Build.0 = Debug|Win32
+ {66CC5B13-881A-412F-8C51-746622A91C5A}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
+ {66CC5B13-881A-412F-8C51-746622A91C5A}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
+ {66CC5B13-881A-412F-8C51-746622A91C5A}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
+ {66CC5B13-881A-412F-8C51-746622A91C5A}.Release.DLL|x64.Build.0 = Release.DLL|x64
+ {66CC5B13-881A-412F-8C51-746622A91C5A}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
+ {66CC5B13-881A-412F-8C51-746622A91C5A}.Release.DLL|x86.Build.0 = Release.DLL|Win32
+ {66CC5B13-881A-412F-8C51-746622A91C5A}.Release|ARM64.ActiveCfg = Release|ARM64
+ {66CC5B13-881A-412F-8C51-746622A91C5A}.Release|ARM64.Build.0 = Release|ARM64
+ {66CC5B13-881A-412F-8C51-746622A91C5A}.Release|x64.ActiveCfg = Release|x64
+ {66CC5B13-881A-412F-8C51-746622A91C5A}.Release|x64.Build.0 = Release|x64
+ {66CC5B13-881A-412F-8C51-746622A91C5A}.Release|x86.ActiveCfg = Release|Win32
+ {66CC5B13-881A-412F-8C51-746622A91C5A}.Release|x86.Build.0 = Release|Win32
+ {CB75B7C9-4E00-43B8-B2A9-9ACB4FC40F9B}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
+ {CB75B7C9-4E00-43B8-B2A9-9ACB4FC40F9B}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
+ {CB75B7C9-4E00-43B8-B2A9-9ACB4FC40F9B}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
+ {CB75B7C9-4E00-43B8-B2A9-9ACB4FC40F9B}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
+ {CB75B7C9-4E00-43B8-B2A9-9ACB4FC40F9B}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
+ {CB75B7C9-4E00-43B8-B2A9-9ACB4FC40F9B}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
+ {CB75B7C9-4E00-43B8-B2A9-9ACB4FC40F9B}.Debug|ARM64.ActiveCfg = Debug|ARM64
+ {CB75B7C9-4E00-43B8-B2A9-9ACB4FC40F9B}.Debug|ARM64.Build.0 = Debug|ARM64
+ {CB75B7C9-4E00-43B8-B2A9-9ACB4FC40F9B}.Debug|x64.ActiveCfg = Debug|x64
+ {CB75B7C9-4E00-43B8-B2A9-9ACB4FC40F9B}.Debug|x64.Build.0 = Debug|x64
+ {CB75B7C9-4E00-43B8-B2A9-9ACB4FC40F9B}.Debug|x86.ActiveCfg = Debug|Win32
+ {CB75B7C9-4E00-43B8-B2A9-9ACB4FC40F9B}.Debug|x86.Build.0 = Debug|Win32
+ {CB75B7C9-4E00-43B8-B2A9-9ACB4FC40F9B}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
+ {CB75B7C9-4E00-43B8-B2A9-9ACB4FC40F9B}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
+ {CB75B7C9-4E00-43B8-B2A9-9ACB4FC40F9B}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
+ {CB75B7C9-4E00-43B8-B2A9-9ACB4FC40F9B}.Release.DLL|x64.Build.0 = Release.DLL|x64
+ {CB75B7C9-4E00-43B8-B2A9-9ACB4FC40F9B}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
+ {CB75B7C9-4E00-43B8-B2A9-9ACB4FC40F9B}.Release.DLL|x86.Build.0 = Release.DLL|Win32
+ {CB75B7C9-4E00-43B8-B2A9-9ACB4FC40F9B}.Release|ARM64.ActiveCfg = Release|ARM64
+ {CB75B7C9-4E00-43B8-B2A9-9ACB4FC40F9B}.Release|ARM64.Build.0 = Release|ARM64
+ {CB75B7C9-4E00-43B8-B2A9-9ACB4FC40F9B}.Release|x64.ActiveCfg = Release|x64
+ {CB75B7C9-4E00-43B8-B2A9-9ACB4FC40F9B}.Release|x64.Build.0 = Release|x64
+ {CB75B7C9-4E00-43B8-B2A9-9ACB4FC40F9B}.Release|x86.ActiveCfg = Release|Win32
+ {CB75B7C9-4E00-43B8-B2A9-9ACB4FC40F9B}.Release|x86.Build.0 = Release|Win32
+ {557138B0-7BE2-4392-B2E2-B45734031A62}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
+ {557138B0-7BE2-4392-B2E2-B45734031A62}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
+ {557138B0-7BE2-4392-B2E2-B45734031A62}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
+ {557138B0-7BE2-4392-B2E2-B45734031A62}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
+ {557138B0-7BE2-4392-B2E2-B45734031A62}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
+ {557138B0-7BE2-4392-B2E2-B45734031A62}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
+ {557138B0-7BE2-4392-B2E2-B45734031A62}.Debug|ARM64.ActiveCfg = Debug|ARM64
+ {557138B0-7BE2-4392-B2E2-B45734031A62}.Debug|ARM64.Build.0 = Debug|ARM64
+ {557138B0-7BE2-4392-B2E2-B45734031A62}.Debug|x64.ActiveCfg = Debug|x64
+ {557138B0-7BE2-4392-B2E2-B45734031A62}.Debug|x64.Build.0 = Debug|x64
+ {557138B0-7BE2-4392-B2E2-B45734031A62}.Debug|x86.ActiveCfg = Debug|Win32
+ {557138B0-7BE2-4392-B2E2-B45734031A62}.Debug|x86.Build.0 = Debug|Win32
+ {557138B0-7BE2-4392-B2E2-B45734031A62}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
+ {557138B0-7BE2-4392-B2E2-B45734031A62}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
+ {557138B0-7BE2-4392-B2E2-B45734031A62}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
+ {557138B0-7BE2-4392-B2E2-B45734031A62}.Release.DLL|x64.Build.0 = Release.DLL|x64
+ {557138B0-7BE2-4392-B2E2-B45734031A62}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
+ {557138B0-7BE2-4392-B2E2-B45734031A62}.Release.DLL|x86.Build.0 = Release.DLL|Win32
+ {557138B0-7BE2-4392-B2E2-B45734031A62}.Release|ARM64.ActiveCfg = Release|ARM64
+ {557138B0-7BE2-4392-B2E2-B45734031A62}.Release|ARM64.Build.0 = Release|ARM64
+ {557138B0-7BE2-4392-B2E2-B45734031A62}.Release|x64.ActiveCfg = Release|x64
+ {557138B0-7BE2-4392-B2E2-B45734031A62}.Release|x64.Build.0 = Release|x64
+ {557138B0-7BE2-4392-B2E2-B45734031A62}.Release|x86.ActiveCfg = Release|Win32
+ {557138B0-7BE2-4392-B2E2-B45734031A62}.Release|x86.Build.0 = Release|Win32
+ {9EED87BB-527F-4D05-9384-6D16CFD627A8}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
+ {9EED87BB-527F-4D05-9384-6D16CFD627A8}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
+ {9EED87BB-527F-4D05-9384-6D16CFD627A8}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
+ {9EED87BB-527F-4D05-9384-6D16CFD627A8}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
+ {9EED87BB-527F-4D05-9384-6D16CFD627A8}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
+ {9EED87BB-527F-4D05-9384-6D16CFD627A8}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
+ {9EED87BB-527F-4D05-9384-6D16CFD627A8}.Debug|ARM64.ActiveCfg = Debug|ARM64
+ {9EED87BB-527F-4D05-9384-6D16CFD627A8}.Debug|ARM64.Build.0 = Debug|ARM64
+ {9EED87BB-527F-4D05-9384-6D16CFD627A8}.Debug|x64.ActiveCfg = Debug|x64
+ {9EED87BB-527F-4D05-9384-6D16CFD627A8}.Debug|x64.Build.0 = Debug|x64
+ {9EED87BB-527F-4D05-9384-6D16CFD627A8}.Debug|x86.ActiveCfg = Debug|Win32
+ {9EED87BB-527F-4D05-9384-6D16CFD627A8}.Debug|x86.Build.0 = Debug|Win32
+ {9EED87BB-527F-4D05-9384-6D16CFD627A8}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
+ {9EED87BB-527F-4D05-9384-6D16CFD627A8}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
+ {9EED87BB-527F-4D05-9384-6D16CFD627A8}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
+ {9EED87BB-527F-4D05-9384-6D16CFD627A8}.Release.DLL|x64.Build.0 = Release.DLL|x64
+ {9EED87BB-527F-4D05-9384-6D16CFD627A8}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
+ {9EED87BB-527F-4D05-9384-6D16CFD627A8}.Release.DLL|x86.Build.0 = Release.DLL|Win32
+ {9EED87BB-527F-4D05-9384-6D16CFD627A8}.Release|ARM64.ActiveCfg = Release|ARM64
+ {9EED87BB-527F-4D05-9384-6D16CFD627A8}.Release|ARM64.Build.0 = Release|ARM64
+ {9EED87BB-527F-4D05-9384-6D16CFD627A8}.Release|x64.ActiveCfg = Release|x64
+ {9EED87BB-527F-4D05-9384-6D16CFD627A8}.Release|x64.Build.0 = Release|x64
+ {9EED87BB-527F-4D05-9384-6D16CFD627A8}.Release|x86.ActiveCfg = Release|Win32
+ {9EED87BB-527F-4D05-9384-6D16CFD627A8}.Release|x86.Build.0 = Release|Win32
+ {6D1CA2F1-7FCA-4249-9220-075C2DF4F965}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
+ {6D1CA2F1-7FCA-4249-9220-075C2DF4F965}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
+ {6D1CA2F1-7FCA-4249-9220-075C2DF4F965}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
+ {6D1CA2F1-7FCA-4249-9220-075C2DF4F965}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
+ {6D1CA2F1-7FCA-4249-9220-075C2DF4F965}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
+ {6D1CA2F1-7FCA-4249-9220-075C2DF4F965}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
+ {6D1CA2F1-7FCA-4249-9220-075C2DF4F965}.Debug|ARM64.ActiveCfg = Debug|ARM64
+ {6D1CA2F1-7FCA-4249-9220-075C2DF4F965}.Debug|ARM64.Build.0 = Debug|ARM64
+ {6D1CA2F1-7FCA-4249-9220-075C2DF4F965}.Debug|x64.ActiveCfg = Debug|x64
+ {6D1CA2F1-7FCA-4249-9220-075C2DF4F965}.Debug|x64.Build.0 = Debug|x64
+ {6D1CA2F1-7FCA-4249-9220-075C2DF4F965}.Debug|x86.ActiveCfg = Debug|Win32
+ {6D1CA2F1-7FCA-4249-9220-075C2DF4F965}.Debug|x86.Build.0 = Debug|Win32
+ {6D1CA2F1-7FCA-4249-9220-075C2DF4F965}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
+ {6D1CA2F1-7FCA-4249-9220-075C2DF4F965}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
+ {6D1CA2F1-7FCA-4249-9220-075C2DF4F965}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
+ {6D1CA2F1-7FCA-4249-9220-075C2DF4F965}.Release.DLL|x64.Build.0 = Release.DLL|x64
+ {6D1CA2F1-7FCA-4249-9220-075C2DF4F965}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
+ {6D1CA2F1-7FCA-4249-9220-075C2DF4F965}.Release.DLL|x86.Build.0 = Release.DLL|Win32
+ {6D1CA2F1-7FCA-4249-9220-075C2DF4F965}.Release|ARM64.ActiveCfg = Release|ARM64
+ {6D1CA2F1-7FCA-4249-9220-075C2DF4F965}.Release|ARM64.Build.0 = Release|ARM64
+ {6D1CA2F1-7FCA-4249-9220-075C2DF4F965}.Release|x64.ActiveCfg = Release|x64
+ {6D1CA2F1-7FCA-4249-9220-075C2DF4F965}.Release|x64.Build.0 = Release|x64
+ {6D1CA2F1-7FCA-4249-9220-075C2DF4F965}.Release|x86.ActiveCfg = Release|Win32
+ {6D1CA2F1-7FCA-4249-9220-075C2DF4F965}.Release|x86.Build.0 = Release|Win32
+ {946A1700-C7AA-46F0-AEF2-67C98B5722AC}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
+ {946A1700-C7AA-46F0-AEF2-67C98B5722AC}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
+ {946A1700-C7AA-46F0-AEF2-67C98B5722AC}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
+ {946A1700-C7AA-46F0-AEF2-67C98B5722AC}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
+ {946A1700-C7AA-46F0-AEF2-67C98B5722AC}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
+ {946A1700-C7AA-46F0-AEF2-67C98B5722AC}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
+ {946A1700-C7AA-46F0-AEF2-67C98B5722AC}.Debug|ARM64.ActiveCfg = Debug|ARM64
+ {946A1700-C7AA-46F0-AEF2-67C98B5722AC}.Debug|ARM64.Build.0 = Debug|ARM64
+ {946A1700-C7AA-46F0-AEF2-67C98B5722AC}.Debug|x64.ActiveCfg = Debug|x64
+ {946A1700-C7AA-46F0-AEF2-67C98B5722AC}.Debug|x64.Build.0 = Debug|x64
+ {946A1700-C7AA-46F0-AEF2-67C98B5722AC}.Debug|x86.ActiveCfg = Debug|Win32
+ {946A1700-C7AA-46F0-AEF2-67C98B5722AC}.Debug|x86.Build.0 = Debug|Win32
+ {946A1700-C7AA-46F0-AEF2-67C98B5722AC}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
+ {946A1700-C7AA-46F0-AEF2-67C98B5722AC}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
+ {946A1700-C7AA-46F0-AEF2-67C98B5722AC}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
+ {946A1700-C7AA-46F0-AEF2-67C98B5722AC}.Release.DLL|x64.Build.0 = Release.DLL|x64
+ {946A1700-C7AA-46F0-AEF2-67C98B5722AC}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
+ {946A1700-C7AA-46F0-AEF2-67C98B5722AC}.Release.DLL|x86.Build.0 = Release.DLL|Win32
+ {946A1700-C7AA-46F0-AEF2-67C98B5722AC}.Release|ARM64.ActiveCfg = Release|ARM64
+ {946A1700-C7AA-46F0-AEF2-67C98B5722AC}.Release|ARM64.Build.0 = Release|ARM64
+ {946A1700-C7AA-46F0-AEF2-67C98B5722AC}.Release|x64.ActiveCfg = Release|x64
+ {946A1700-C7AA-46F0-AEF2-67C98B5722AC}.Release|x64.Build.0 = Release|x64
+ {946A1700-C7AA-46F0-AEF2-67C98B5722AC}.Release|x86.ActiveCfg = Release|Win32
+ {946A1700-C7AA-46F0-AEF2-67C98B5722AC}.Release|x86.Build.0 = Release|Win32
+ {FD193822-3D5C-4161-A147-884C2ABDE483}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
+ {FD193822-3D5C-4161-A147-884C2ABDE483}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
+ {FD193822-3D5C-4161-A147-884C2ABDE483}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
+ {FD193822-3D5C-4161-A147-884C2ABDE483}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
+ {FD193822-3D5C-4161-A147-884C2ABDE483}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
+ {FD193822-3D5C-4161-A147-884C2ABDE483}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
+ {FD193822-3D5C-4161-A147-884C2ABDE483}.Debug|ARM64.ActiveCfg = Debug|ARM64
+ {FD193822-3D5C-4161-A147-884C2ABDE483}.Debug|ARM64.Build.0 = Debug|ARM64
+ {FD193822-3D5C-4161-A147-884C2ABDE483}.Debug|x64.ActiveCfg = Debug|x64
+ {FD193822-3D5C-4161-A147-884C2ABDE483}.Debug|x64.Build.0 = Debug|x64
+ {FD193822-3D5C-4161-A147-884C2ABDE483}.Debug|x86.ActiveCfg = Debug|Win32
+ {FD193822-3D5C-4161-A147-884C2ABDE483}.Debug|x86.Build.0 = Debug|Win32
+ {FD193822-3D5C-4161-A147-884C2ABDE483}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
+ {FD193822-3D5C-4161-A147-884C2ABDE483}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
+ {FD193822-3D5C-4161-A147-884C2ABDE483}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
+ {FD193822-3D5C-4161-A147-884C2ABDE483}.Release.DLL|x64.Build.0 = Release.DLL|x64
+ {FD193822-3D5C-4161-A147-884C2ABDE483}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
+ {FD193822-3D5C-4161-A147-884C2ABDE483}.Release.DLL|x86.Build.0 = Release.DLL|Win32
+ {FD193822-3D5C-4161-A147-884C2ABDE483}.Release|ARM64.ActiveCfg = Release|ARM64
+ {FD193822-3D5C-4161-A147-884C2ABDE483}.Release|ARM64.Build.0 = Release|ARM64
+ {FD193822-3D5C-4161-A147-884C2ABDE483}.Release|x64.ActiveCfg = Release|x64
+ {FD193822-3D5C-4161-A147-884C2ABDE483}.Release|x64.Build.0 = Release|x64
+ {FD193822-3D5C-4161-A147-884C2ABDE483}.Release|x86.ActiveCfg = Release|Win32
+ {FD193822-3D5C-4161-A147-884C2ABDE483}.Release|x86.Build.0 = Release|Win32
+ {20AD0AC9-9159-4744-99CC-6AC5779D6B87}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
+ {20AD0AC9-9159-4744-99CC-6AC5779D6B87}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
+ {20AD0AC9-9159-4744-99CC-6AC5779D6B87}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
+ {20AD0AC9-9159-4744-99CC-6AC5779D6B87}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
+ {20AD0AC9-9159-4744-99CC-6AC5779D6B87}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
+ {20AD0AC9-9159-4744-99CC-6AC5779D6B87}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
+ {20AD0AC9-9159-4744-99CC-6AC5779D6B87}.Debug|ARM64.ActiveCfg = Debug|ARM64
+ {20AD0AC9-9159-4744-99CC-6AC5779D6B87}.Debug|ARM64.Build.0 = Debug|ARM64
+ {20AD0AC9-9159-4744-99CC-6AC5779D6B87}.Debug|x64.ActiveCfg = Debug|x64
+ {20AD0AC9-9159-4744-99CC-6AC5779D6B87}.Debug|x64.Build.0 = Debug|x64
+ {20AD0AC9-9159-4744-99CC-6AC5779D6B87}.Debug|x86.ActiveCfg = Debug|Win32
+ {20AD0AC9-9159-4744-99CC-6AC5779D6B87}.Debug|x86.Build.0 = Debug|Win32
+ {20AD0AC9-9159-4744-99CC-6AC5779D6B87}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
+ {20AD0AC9-9159-4744-99CC-6AC5779D6B87}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
+ {20AD0AC9-9159-4744-99CC-6AC5779D6B87}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
+ {20AD0AC9-9159-4744-99CC-6AC5779D6B87}.Release.DLL|x64.Build.0 = Release.DLL|x64
+ {20AD0AC9-9159-4744-99CC-6AC5779D6B87}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
+ {20AD0AC9-9159-4744-99CC-6AC5779D6B87}.Release.DLL|x86.Build.0 = Release.DLL|Win32
+ {20AD0AC9-9159-4744-99CC-6AC5779D6B87}.Release|ARM64.ActiveCfg = Release|ARM64
+ {20AD0AC9-9159-4744-99CC-6AC5779D6B87}.Release|ARM64.Build.0 = Release|ARM64
+ {20AD0AC9-9159-4744-99CC-6AC5779D6B87}.Release|x64.ActiveCfg = Release|x64
+ {20AD0AC9-9159-4744-99CC-6AC5779D6B87}.Release|x64.Build.0 = Release|x64
+ {20AD0AC9-9159-4744-99CC-6AC5779D6B87}.Release|x86.ActiveCfg = Release|Win32
+ {20AD0AC9-9159-4744-99CC-6AC5779D6B87}.Release|x86.Build.0 = Release|Win32
+ {0199E349-0701-40BC-8A7F-06A54FFA3E7C}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
+ {0199E349-0701-40BC-8A7F-06A54FFA3E7C}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
+ {0199E349-0701-40BC-8A7F-06A54FFA3E7C}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
+ {0199E349-0701-40BC-8A7F-06A54FFA3E7C}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
+ {0199E349-0701-40BC-8A7F-06A54FFA3E7C}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
+ {0199E349-0701-40BC-8A7F-06A54FFA3E7C}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
+ {0199E349-0701-40BC-8A7F-06A54FFA3E7C}.Debug|ARM64.ActiveCfg = Debug|ARM64
+ {0199E349-0701-40BC-8A7F-06A54FFA3E7C}.Debug|ARM64.Build.0 = Debug|ARM64
+ {0199E349-0701-40BC-8A7F-06A54FFA3E7C}.Debug|x64.ActiveCfg = Debug|x64
+ {0199E349-0701-40BC-8A7F-06A54FFA3E7C}.Debug|x64.Build.0 = Debug|x64
+ {0199E349-0701-40BC-8A7F-06A54FFA3E7C}.Debug|x86.ActiveCfg = Debug|Win32
+ {0199E349-0701-40BC-8A7F-06A54FFA3E7C}.Debug|x86.Build.0 = Debug|Win32
+ {0199E349-0701-40BC-8A7F-06A54FFA3E7C}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
+ {0199E349-0701-40BC-8A7F-06A54FFA3E7C}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
+ {0199E349-0701-40BC-8A7F-06A54FFA3E7C}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
+ {0199E349-0701-40BC-8A7F-06A54FFA3E7C}.Release.DLL|x64.Build.0 = Release.DLL|x64
+ {0199E349-0701-40BC-8A7F-06A54FFA3E7C}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
+ {0199E349-0701-40BC-8A7F-06A54FFA3E7C}.Release.DLL|x86.Build.0 = Release.DLL|Win32
+ {0199E349-0701-40BC-8A7F-06A54FFA3E7C}.Release|ARM64.ActiveCfg = Release|ARM64
+ {0199E349-0701-40BC-8A7F-06A54FFA3E7C}.Release|ARM64.Build.0 = Release|ARM64
+ {0199E349-0701-40BC-8A7F-06A54FFA3E7C}.Release|x64.ActiveCfg = Release|x64
+ {0199E349-0701-40BC-8A7F-06A54FFA3E7C}.Release|x64.Build.0 = Release|x64
+ {0199E349-0701-40BC-8A7F-06A54FFA3E7C}.Release|x86.ActiveCfg = Release|Win32
+ {0199E349-0701-40BC-8A7F-06A54FFA3E7C}.Release|x86.Build.0 = Release|Win32
+ {BCB71111-8505-4B35-8CEF-EC6115DC9D4D}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
+ {BCB71111-8505-4B35-8CEF-EC6115DC9D4D}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
+ {BCB71111-8505-4B35-8CEF-EC6115DC9D4D}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
+ {BCB71111-8505-4B35-8CEF-EC6115DC9D4D}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
+ {BCB71111-8505-4B35-8CEF-EC6115DC9D4D}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
+ {BCB71111-8505-4B35-8CEF-EC6115DC9D4D}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
+ {BCB71111-8505-4B35-8CEF-EC6115DC9D4D}.Debug|ARM64.ActiveCfg = Debug|ARM64
+ {BCB71111-8505-4B35-8CEF-EC6115DC9D4D}.Debug|ARM64.Build.0 = Debug|ARM64
+ {BCB71111-8505-4B35-8CEF-EC6115DC9D4D}.Debug|x64.ActiveCfg = Debug|x64
+ {BCB71111-8505-4B35-8CEF-EC6115DC9D4D}.Debug|x64.Build.0 = Debug|x64
+ {BCB71111-8505-4B35-8CEF-EC6115DC9D4D}.Debug|x86.ActiveCfg = Debug|Win32
+ {BCB71111-8505-4B35-8CEF-EC6115DC9D4D}.Debug|x86.Build.0 = Debug|Win32
+ {BCB71111-8505-4B35-8CEF-EC6115DC9D4D}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
+ {BCB71111-8505-4B35-8CEF-EC6115DC9D4D}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
+ {BCB71111-8505-4B35-8CEF-EC6115DC9D4D}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
+ {BCB71111-8505-4B35-8CEF-EC6115DC9D4D}.Release.DLL|x64.Build.0 = Release.DLL|x64
+ {BCB71111-8505-4B35-8CEF-EC6115DC9D4D}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
+ {BCB71111-8505-4B35-8CEF-EC6115DC9D4D}.Release.DLL|x86.Build.0 = Release.DLL|Win32
+ {BCB71111-8505-4B35-8CEF-EC6115DC9D4D}.Release|ARM64.ActiveCfg = Release|ARM64
+ {BCB71111-8505-4B35-8CEF-EC6115DC9D4D}.Release|ARM64.Build.0 = Release|ARM64
+ {BCB71111-8505-4B35-8CEF-EC6115DC9D4D}.Release|x64.ActiveCfg = Release|x64
+ {BCB71111-8505-4B35-8CEF-EC6115DC9D4D}.Release|x64.Build.0 = Release|x64
+ {BCB71111-8505-4B35-8CEF-EC6115DC9D4D}.Release|x86.ActiveCfg = Release|Win32
+ {BCB71111-8505-4B35-8CEF-EC6115DC9D4D}.Release|x86.Build.0 = Release|Win32
+ {8F19E3DA-8929-4000-87B5-3CA6929636CC}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
+ {8F19E3DA-8929-4000-87B5-3CA6929636CC}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
+ {8F19E3DA-8929-4000-87B5-3CA6929636CC}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
+ {8F19E3DA-8929-4000-87B5-3CA6929636CC}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
+ {8F19E3DA-8929-4000-87B5-3CA6929636CC}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
+ {8F19E3DA-8929-4000-87B5-3CA6929636CC}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
+ {8F19E3DA-8929-4000-87B5-3CA6929636CC}.Debug|ARM64.ActiveCfg = Debug|ARM64
+ {8F19E3DA-8929-4000-87B5-3CA6929636CC}.Debug|ARM64.Build.0 = Debug|ARM64
+ {8F19E3DA-8929-4000-87B5-3CA6929636CC}.Debug|x64.ActiveCfg = Debug|x64
+ {8F19E3DA-8929-4000-87B5-3CA6929636CC}.Debug|x64.Build.0 = Debug|x64
+ {8F19E3DA-8929-4000-87B5-3CA6929636CC}.Debug|x86.ActiveCfg = Debug|Win32
+ {8F19E3DA-8929-4000-87B5-3CA6929636CC}.Debug|x86.Build.0 = Debug|Win32
+ {8F19E3DA-8929-4000-87B5-3CA6929636CC}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
+ {8F19E3DA-8929-4000-87B5-3CA6929636CC}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
+ {8F19E3DA-8929-4000-87B5-3CA6929636CC}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
+ {8F19E3DA-8929-4000-87B5-3CA6929636CC}.Release.DLL|x64.Build.0 = Release.DLL|x64
+ {8F19E3DA-8929-4000-87B5-3CA6929636CC}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
+ {8F19E3DA-8929-4000-87B5-3CA6929636CC}.Release.DLL|x86.Build.0 = Release.DLL|Win32
+ {8F19E3DA-8929-4000-87B5-3CA6929636CC}.Release|ARM64.ActiveCfg = Release|ARM64
+ {8F19E3DA-8929-4000-87B5-3CA6929636CC}.Release|ARM64.Build.0 = Release|ARM64
+ {8F19E3DA-8929-4000-87B5-3CA6929636CC}.Release|x64.ActiveCfg = Release|x64
+ {8F19E3DA-8929-4000-87B5-3CA6929636CC}.Release|x64.Build.0 = Release|x64
+ {8F19E3DA-8929-4000-87B5-3CA6929636CC}.Release|x86.ActiveCfg = Release|Win32
+ {8F19E3DA-8929-4000-87B5-3CA6929636CC}.Release|x86.Build.0 = Release|Win32
+ {51A00565-5787-4911-9CC0-28403AA4909D}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
+ {51A00565-5787-4911-9CC0-28403AA4909D}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
+ {51A00565-5787-4911-9CC0-28403AA4909D}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
+ {51A00565-5787-4911-9CC0-28403AA4909D}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
+ {51A00565-5787-4911-9CC0-28403AA4909D}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
+ {51A00565-5787-4911-9CC0-28403AA4909D}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
+ {51A00565-5787-4911-9CC0-28403AA4909D}.Debug|ARM64.ActiveCfg = Debug|ARM64
+ {51A00565-5787-4911-9CC0-28403AA4909D}.Debug|ARM64.Build.0 = Debug|ARM64
+ {51A00565-5787-4911-9CC0-28403AA4909D}.Debug|x64.ActiveCfg = Debug|x64
+ {51A00565-5787-4911-9CC0-28403AA4909D}.Debug|x64.Build.0 = Debug|x64
+ {51A00565-5787-4911-9CC0-28403AA4909D}.Debug|x86.ActiveCfg = Debug|Win32
+ {51A00565-5787-4911-9CC0-28403AA4909D}.Debug|x86.Build.0 = Debug|Win32
+ {51A00565-5787-4911-9CC0-28403AA4909D}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
+ {51A00565-5787-4911-9CC0-28403AA4909D}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
+ {51A00565-5787-4911-9CC0-28403AA4909D}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
+ {51A00565-5787-4911-9CC0-28403AA4909D}.Release.DLL|x64.Build.0 = Release.DLL|x64
+ {51A00565-5787-4911-9CC0-28403AA4909D}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
+ {51A00565-5787-4911-9CC0-28403AA4909D}.Release.DLL|x86.Build.0 = Release.DLL|Win32
+ {51A00565-5787-4911-9CC0-28403AA4909D}.Release|ARM64.ActiveCfg = Release|ARM64
+ {51A00565-5787-4911-9CC0-28403AA4909D}.Release|ARM64.Build.0 = Release|ARM64
+ {51A00565-5787-4911-9CC0-28403AA4909D}.Release|x64.ActiveCfg = Release|x64
+ {51A00565-5787-4911-9CC0-28403AA4909D}.Release|x64.Build.0 = Release|x64
+ {51A00565-5787-4911-9CC0-28403AA4909D}.Release|x86.ActiveCfg = Release|Win32
+ {51A00565-5787-4911-9CC0-28403AA4909D}.Release|x86.Build.0 = Release|Win32
+ {92B64AE7-D773-4F05-89F1-CE59BBF4F053}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
+ {92B64AE7-D773-4F05-89F1-CE59BBF4F053}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
+ {92B64AE7-D773-4F05-89F1-CE59BBF4F053}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
+ {92B64AE7-D773-4F05-89F1-CE59BBF4F053}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
+ {92B64AE7-D773-4F05-89F1-CE59BBF4F053}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
+ {92B64AE7-D773-4F05-89F1-CE59BBF4F053}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
+ {92B64AE7-D773-4F05-89F1-CE59BBF4F053}.Debug|ARM64.ActiveCfg = Debug|ARM64
+ {92B64AE7-D773-4F05-89F1-CE59BBF4F053}.Debug|ARM64.Build.0 = Debug|ARM64
+ {92B64AE7-D773-4F05-89F1-CE59BBF4F053}.Debug|x64.ActiveCfg = Debug|x64
+ {92B64AE7-D773-4F05-89F1-CE59BBF4F053}.Debug|x64.Build.0 = Debug|x64
+ {92B64AE7-D773-4F05-89F1-CE59BBF4F053}.Debug|x86.ActiveCfg = Debug|Win32
+ {92B64AE7-D773-4F05-89F1-CE59BBF4F053}.Debug|x86.Build.0 = Debug|Win32
+ {92B64AE7-D773-4F05-89F1-CE59BBF4F053}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
+ {92B64AE7-D773-4F05-89F1-CE59BBF4F053}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
+ {92B64AE7-D773-4F05-89F1-CE59BBF4F053}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
+ {92B64AE7-D773-4F05-89F1-CE59BBF4F053}.Release.DLL|x64.Build.0 = Release.DLL|x64
+ {92B64AE7-D773-4F05-89F1-CE59BBF4F053}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
+ {92B64AE7-D773-4F05-89F1-CE59BBF4F053}.Release.DLL|x86.Build.0 = Release.DLL|Win32
+ {92B64AE7-D773-4F05-89F1-CE59BBF4F053}.Release|ARM64.ActiveCfg = Release|ARM64
+ {92B64AE7-D773-4F05-89F1-CE59BBF4F053}.Release|ARM64.Build.0 = Release|ARM64
+ {92B64AE7-D773-4F05-89F1-CE59BBF4F053}.Release|x64.ActiveCfg = Release|x64
+ {92B64AE7-D773-4F05-89F1-CE59BBF4F053}.Release|x64.Build.0 = Release|x64
+ {92B64AE7-D773-4F05-89F1-CE59BBF4F053}.Release|x86.ActiveCfg = Release|Win32
+ {92B64AE7-D773-4F05-89F1-CE59BBF4F053}.Release|x86.Build.0 = Release|Win32
+ {A2BA5E5C-FDB9-4939-B0B5-2B753A5E33D3}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
+ {A2BA5E5C-FDB9-4939-B0B5-2B753A5E33D3}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
+ {A2BA5E5C-FDB9-4939-B0B5-2B753A5E33D3}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
+ {A2BA5E5C-FDB9-4939-B0B5-2B753A5E33D3}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
+ {A2BA5E5C-FDB9-4939-B0B5-2B753A5E33D3}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
+ {A2BA5E5C-FDB9-4939-B0B5-2B753A5E33D3}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
+ {A2BA5E5C-FDB9-4939-B0B5-2B753A5E33D3}.Debug|ARM64.ActiveCfg = Debug|ARM64
+ {A2BA5E5C-FDB9-4939-B0B5-2B753A5E33D3}.Debug|ARM64.Build.0 = Debug|ARM64
+ {A2BA5E5C-FDB9-4939-B0B5-2B753A5E33D3}.Debug|x64.ActiveCfg = Debug|x64
+ {A2BA5E5C-FDB9-4939-B0B5-2B753A5E33D3}.Debug|x64.Build.0 = Debug|x64
+ {A2BA5E5C-FDB9-4939-B0B5-2B753A5E33D3}.Debug|x86.ActiveCfg = Debug|Win32
+ {A2BA5E5C-FDB9-4939-B0B5-2B753A5E33D3}.Debug|x86.Build.0 = Debug|Win32
+ {A2BA5E5C-FDB9-4939-B0B5-2B753A5E33D3}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
+ {A2BA5E5C-FDB9-4939-B0B5-2B753A5E33D3}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
+ {A2BA5E5C-FDB9-4939-B0B5-2B753A5E33D3}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
+ {A2BA5E5C-FDB9-4939-B0B5-2B753A5E33D3}.Release.DLL|x64.Build.0 = Release.DLL|x64
+ {A2BA5E5C-FDB9-4939-B0B5-2B753A5E33D3}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
+ {A2BA5E5C-FDB9-4939-B0B5-2B753A5E33D3}.Release.DLL|x86.Build.0 = Release.DLL|Win32
+ {A2BA5E5C-FDB9-4939-B0B5-2B753A5E33D3}.Release|ARM64.ActiveCfg = Release|ARM64
+ {A2BA5E5C-FDB9-4939-B0B5-2B753A5E33D3}.Release|ARM64.Build.0 = Release|ARM64
+ {A2BA5E5C-FDB9-4939-B0B5-2B753A5E33D3}.Release|x64.ActiveCfg = Release|x64
+ {A2BA5E5C-FDB9-4939-B0B5-2B753A5E33D3}.Release|x64.Build.0 = Release|x64
+ {A2BA5E5C-FDB9-4939-B0B5-2B753A5E33D3}.Release|x86.ActiveCfg = Release|Win32
+ {A2BA5E5C-FDB9-4939-B0B5-2B753A5E33D3}.Release|x86.Build.0 = Release|Win32
+ {A643BB06-735D-47F3-BFE7-B6D3C36F7097}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
+ {A643BB06-735D-47F3-BFE7-B6D3C36F7097}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
+ {A643BB06-735D-47F3-BFE7-B6D3C36F7097}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
+ {A643BB06-735D-47F3-BFE7-B6D3C36F7097}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
+ {A643BB06-735D-47F3-BFE7-B6D3C36F7097}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
+ {A643BB06-735D-47F3-BFE7-B6D3C36F7097}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
+ {A643BB06-735D-47F3-BFE7-B6D3C36F7097}.Debug|ARM64.ActiveCfg = Debug|ARM64
+ {A643BB06-735D-47F3-BFE7-B6D3C36F7097}.Debug|ARM64.Build.0 = Debug|ARM64
+ {A643BB06-735D-47F3-BFE7-B6D3C36F7097}.Debug|x64.ActiveCfg = Debug|x64
+ {A643BB06-735D-47F3-BFE7-B6D3C36F7097}.Debug|x64.Build.0 = Debug|x64
+ {A643BB06-735D-47F3-BFE7-B6D3C36F7097}.Debug|x86.ActiveCfg = Debug|Win32
+ {A643BB06-735D-47F3-BFE7-B6D3C36F7097}.Debug|x86.Build.0 = Debug|Win32
+ {A643BB06-735D-47F3-BFE7-B6D3C36F7097}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
+ {A643BB06-735D-47F3-BFE7-B6D3C36F7097}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
+ {A643BB06-735D-47F3-BFE7-B6D3C36F7097}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
+ {A643BB06-735D-47F3-BFE7-B6D3C36F7097}.Release.DLL|x64.Build.0 = Release.DLL|x64
+ {A643BB06-735D-47F3-BFE7-B6D3C36F7097}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
+ {A643BB06-735D-47F3-BFE7-B6D3C36F7097}.Release.DLL|x86.Build.0 = Release.DLL|Win32
+ {A643BB06-735D-47F3-BFE7-B6D3C36F7097}.Release|ARM64.ActiveCfg = Release|ARM64
+ {A643BB06-735D-47F3-BFE7-B6D3C36F7097}.Release|ARM64.Build.0 = Release|ARM64
+ {A643BB06-735D-47F3-BFE7-B6D3C36F7097}.Release|x64.ActiveCfg = Release|x64
+ {A643BB06-735D-47F3-BFE7-B6D3C36F7097}.Release|x64.Build.0 = Release|x64
+ {A643BB06-735D-47F3-BFE7-B6D3C36F7097}.Release|x86.ActiveCfg = Release|Win32
+ {A643BB06-735D-47F3-BFE7-B6D3C36F7097}.Release|x86.Build.0 = Release|Win32
+ {6B8BAAF1-75C7-4C68-80B8-0E2A9EABBD9A}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
+ {6B8BAAF1-75C7-4C68-80B8-0E2A9EABBD9A}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
+ {6B8BAAF1-75C7-4C68-80B8-0E2A9EABBD9A}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
+ {6B8BAAF1-75C7-4C68-80B8-0E2A9EABBD9A}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
+ {6B8BAAF1-75C7-4C68-80B8-0E2A9EABBD9A}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
+ {6B8BAAF1-75C7-4C68-80B8-0E2A9EABBD9A}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
+ {6B8BAAF1-75C7-4C68-80B8-0E2A9EABBD9A}.Debug|ARM64.ActiveCfg = Debug|ARM64
+ {6B8BAAF1-75C7-4C68-80B8-0E2A9EABBD9A}.Debug|ARM64.Build.0 = Debug|ARM64
+ {6B8BAAF1-75C7-4C68-80B8-0E2A9EABBD9A}.Debug|x64.ActiveCfg = Debug|x64
+ {6B8BAAF1-75C7-4C68-80B8-0E2A9EABBD9A}.Debug|x64.Build.0 = Debug|x64
+ {6B8BAAF1-75C7-4C68-80B8-0E2A9EABBD9A}.Debug|x86.ActiveCfg = Debug|Win32
+ {6B8BAAF1-75C7-4C68-80B8-0E2A9EABBD9A}.Debug|x86.Build.0 = Debug|Win32
+ {6B8BAAF1-75C7-4C68-80B8-0E2A9EABBD9A}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
+ {6B8BAAF1-75C7-4C68-80B8-0E2A9EABBD9A}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
+ {6B8BAAF1-75C7-4C68-80B8-0E2A9EABBD9A}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
+ {6B8BAAF1-75C7-4C68-80B8-0E2A9EABBD9A}.Release.DLL|x64.Build.0 = Release.DLL|x64
+ {6B8BAAF1-75C7-4C68-80B8-0E2A9EABBD9A}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
+ {6B8BAAF1-75C7-4C68-80B8-0E2A9EABBD9A}.Release.DLL|x86.Build.0 = Release.DLL|Win32
+ {6B8BAAF1-75C7-4C68-80B8-0E2A9EABBD9A}.Release|ARM64.ActiveCfg = Release|ARM64
+ {6B8BAAF1-75C7-4C68-80B8-0E2A9EABBD9A}.Release|ARM64.Build.0 = Release|ARM64
+ {6B8BAAF1-75C7-4C68-80B8-0E2A9EABBD9A}.Release|x64.ActiveCfg = Release|x64
+ {6B8BAAF1-75C7-4C68-80B8-0E2A9EABBD9A}.Release|x64.Build.0 = Release|x64
+ {6B8BAAF1-75C7-4C68-80B8-0E2A9EABBD9A}.Release|x86.ActiveCfg = Release|Win32
+ {6B8BAAF1-75C7-4C68-80B8-0E2A9EABBD9A}.Release|x86.Build.0 = Release|Win32
+ {B332DCA8-3599-4A99-917A-82261BDC27AC}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
+ {B332DCA8-3599-4A99-917A-82261BDC27AC}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
+ {B332DCA8-3599-4A99-917A-82261BDC27AC}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
+ {B332DCA8-3599-4A99-917A-82261BDC27AC}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
+ {B332DCA8-3599-4A99-917A-82261BDC27AC}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
+ {B332DCA8-3599-4A99-917A-82261BDC27AC}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
+ {B332DCA8-3599-4A99-917A-82261BDC27AC}.Debug|ARM64.ActiveCfg = Debug|ARM64
+ {B332DCA8-3599-4A99-917A-82261BDC27AC}.Debug|ARM64.Build.0 = Debug|ARM64
+ {B332DCA8-3599-4A99-917A-82261BDC27AC}.Debug|x64.ActiveCfg = Debug|x64
+ {B332DCA8-3599-4A99-917A-82261BDC27AC}.Debug|x64.Build.0 = Debug|x64
+ {B332DCA8-3599-4A99-917A-82261BDC27AC}.Debug|x86.ActiveCfg = Debug|Win32
+ {B332DCA8-3599-4A99-917A-82261BDC27AC}.Debug|x86.Build.0 = Debug|Win32
+ {B332DCA8-3599-4A99-917A-82261BDC27AC}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
+ {B332DCA8-3599-4A99-917A-82261BDC27AC}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
+ {B332DCA8-3599-4A99-917A-82261BDC27AC}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
+ {B332DCA8-3599-4A99-917A-82261BDC27AC}.Release.DLL|x64.Build.0 = Release.DLL|x64
+ {B332DCA8-3599-4A99-917A-82261BDC27AC}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
+ {B332DCA8-3599-4A99-917A-82261BDC27AC}.Release.DLL|x86.Build.0 = Release.DLL|Win32
+ {B332DCA8-3599-4A99-917A-82261BDC27AC}.Release|ARM64.ActiveCfg = Release|ARM64
+ {B332DCA8-3599-4A99-917A-82261BDC27AC}.Release|ARM64.Build.0 = Release|ARM64
+ {B332DCA8-3599-4A99-917A-82261BDC27AC}.Release|x64.ActiveCfg = Release|x64
+ {B332DCA8-3599-4A99-917A-82261BDC27AC}.Release|x64.Build.0 = Release|x64
+ {B332DCA8-3599-4A99-917A-82261BDC27AC}.Release|x86.ActiveCfg = Release|Win32
+ {B332DCA8-3599-4A99-917A-82261BDC27AC}.Release|x86.Build.0 = Release|Win32
+ {59089B0C-AAB4-4532-B294-44DEAE7178B7}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
+ {59089B0C-AAB4-4532-B294-44DEAE7178B7}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
+ {59089B0C-AAB4-4532-B294-44DEAE7178B7}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
+ {59089B0C-AAB4-4532-B294-44DEAE7178B7}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
+ {59089B0C-AAB4-4532-B294-44DEAE7178B7}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
+ {59089B0C-AAB4-4532-B294-44DEAE7178B7}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
+ {59089B0C-AAB4-4532-B294-44DEAE7178B7}.Debug|ARM64.ActiveCfg = Debug|ARM64
+ {59089B0C-AAB4-4532-B294-44DEAE7178B7}.Debug|ARM64.Build.0 = Debug|ARM64
+ {59089B0C-AAB4-4532-B294-44DEAE7178B7}.Debug|x64.ActiveCfg = Debug|x64
+ {59089B0C-AAB4-4532-B294-44DEAE7178B7}.Debug|x64.Build.0 = Debug|x64
+ {59089B0C-AAB4-4532-B294-44DEAE7178B7}.Debug|x86.ActiveCfg = Debug|Win32
+ {59089B0C-AAB4-4532-B294-44DEAE7178B7}.Debug|x86.Build.0 = Debug|Win32
+ {59089B0C-AAB4-4532-B294-44DEAE7178B7}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
+ {59089B0C-AAB4-4532-B294-44DEAE7178B7}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
+ {59089B0C-AAB4-4532-B294-44DEAE7178B7}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
+ {59089B0C-AAB4-4532-B294-44DEAE7178B7}.Release.DLL|x64.Build.0 = Release.DLL|x64
+ {59089B0C-AAB4-4532-B294-44DEAE7178B7}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
+ {59089B0C-AAB4-4532-B294-44DEAE7178B7}.Release.DLL|x86.Build.0 = Release.DLL|Win32
+ {59089B0C-AAB4-4532-B294-44DEAE7178B7}.Release|ARM64.ActiveCfg = Release|ARM64
+ {59089B0C-AAB4-4532-B294-44DEAE7178B7}.Release|ARM64.Build.0 = Release|ARM64
+ {59089B0C-AAB4-4532-B294-44DEAE7178B7}.Release|x64.ActiveCfg = Release|x64
+ {59089B0C-AAB4-4532-B294-44DEAE7178B7}.Release|x64.Build.0 = Release|x64
+ {59089B0C-AAB4-4532-B294-44DEAE7178B7}.Release|x86.ActiveCfg = Release|Win32
+ {59089B0C-AAB4-4532-B294-44DEAE7178B7}.Release|x86.Build.0 = Release|Win32
+ {C298876B-6C12-4EA4-903B-33450BCD9884}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
+ {C298876B-6C12-4EA4-903B-33450BCD9884}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
+ {C298876B-6C12-4EA4-903B-33450BCD9884}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
+ {C298876B-6C12-4EA4-903B-33450BCD9884}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
+ {C298876B-6C12-4EA4-903B-33450BCD9884}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
+ {C298876B-6C12-4EA4-903B-33450BCD9884}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
+ {C298876B-6C12-4EA4-903B-33450BCD9884}.Debug|ARM64.ActiveCfg = Debug|ARM64
+ {C298876B-6C12-4EA4-903B-33450BCD9884}.Debug|ARM64.Build.0 = Debug|ARM64
+ {C298876B-6C12-4EA4-903B-33450BCD9884}.Debug|x64.ActiveCfg = Debug|x64
+ {C298876B-6C12-4EA4-903B-33450BCD9884}.Debug|x64.Build.0 = Debug|x64
+ {C298876B-6C12-4EA4-903B-33450BCD9884}.Debug|x86.ActiveCfg = Debug|Win32
+ {C298876B-6C12-4EA4-903B-33450BCD9884}.Debug|x86.Build.0 = Debug|Win32
+ {C298876B-6C12-4EA4-903B-33450BCD9884}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
+ {C298876B-6C12-4EA4-903B-33450BCD9884}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
+ {C298876B-6C12-4EA4-903B-33450BCD9884}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
+ {C298876B-6C12-4EA4-903B-33450BCD9884}.Release.DLL|x64.Build.0 = Release.DLL|x64
+ {C298876B-6C12-4EA4-903B-33450BCD9884}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
+ {C298876B-6C12-4EA4-903B-33450BCD9884}.Release.DLL|x86.Build.0 = Release.DLL|Win32
+ {C298876B-6C12-4EA4-903B-33450BCD9884}.Release|ARM64.ActiveCfg = Release|ARM64
+ {C298876B-6C12-4EA4-903B-33450BCD9884}.Release|ARM64.Build.0 = Release|ARM64
+ {C298876B-6C12-4EA4-903B-33450BCD9884}.Release|x64.ActiveCfg = Release|x64
+ {C298876B-6C12-4EA4-903B-33450BCD9884}.Release|x64.Build.0 = Release|x64
+ {C298876B-6C12-4EA4-903B-33450BCD9884}.Release|x86.ActiveCfg = Release|Win32
+ {C298876B-6C12-4EA4-903B-33450BCD9884}.Release|x86.Build.0 = Release|Win32
+ {83F586FA-C801-4979-ACCA-006BD628CC88}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
+ {83F586FA-C801-4979-ACCA-006BD628CC88}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
+ {83F586FA-C801-4979-ACCA-006BD628CC88}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
+ {83F586FA-C801-4979-ACCA-006BD628CC88}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
+ {83F586FA-C801-4979-ACCA-006BD628CC88}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
+ {83F586FA-C801-4979-ACCA-006BD628CC88}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
+ {83F586FA-C801-4979-ACCA-006BD628CC88}.Debug|ARM64.ActiveCfg = Debug|ARM64
+ {83F586FA-C801-4979-ACCA-006BD628CC88}.Debug|ARM64.Build.0 = Debug|ARM64
+ {83F586FA-C801-4979-ACCA-006BD628CC88}.Debug|x64.ActiveCfg = Debug|x64
+ {83F586FA-C801-4979-ACCA-006BD628CC88}.Debug|x64.Build.0 = Debug|x64
+ {83F586FA-C801-4979-ACCA-006BD628CC88}.Debug|x86.ActiveCfg = Debug|Win32
+ {83F586FA-C801-4979-ACCA-006BD628CC88}.Debug|x86.Build.0 = Debug|Win32
+ {83F586FA-C801-4979-ACCA-006BD628CC88}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
+ {83F586FA-C801-4979-ACCA-006BD628CC88}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
+ {83F586FA-C801-4979-ACCA-006BD628CC88}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
+ {83F586FA-C801-4979-ACCA-006BD628CC88}.Release.DLL|x64.Build.0 = Release.DLL|x64
+ {83F586FA-C801-4979-ACCA-006BD628CC88}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
+ {83F586FA-C801-4979-ACCA-006BD628CC88}.Release.DLL|x86.Build.0 = Release.DLL|Win32
+ {83F586FA-C801-4979-ACCA-006BD628CC88}.Release|ARM64.ActiveCfg = Release|ARM64
+ {83F586FA-C801-4979-ACCA-006BD628CC88}.Release|ARM64.Build.0 = Release|ARM64
+ {83F586FA-C801-4979-ACCA-006BD628CC88}.Release|x64.ActiveCfg = Release|x64
+ {83F586FA-C801-4979-ACCA-006BD628CC88}.Release|x64.Build.0 = Release|x64
+ {83F586FA-C801-4979-ACCA-006BD628CC88}.Release|x86.ActiveCfg = Release|Win32
+ {83F586FA-C801-4979-ACCA-006BD628CC88}.Release|x86.Build.0 = Release|Win32
+ {86CBE96B-F5FE-483C-BA4A-DC9B1D43AF22}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
+ {86CBE96B-F5FE-483C-BA4A-DC9B1D43AF22}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
+ {86CBE96B-F5FE-483C-BA4A-DC9B1D43AF22}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
+ {86CBE96B-F5FE-483C-BA4A-DC9B1D43AF22}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
+ {86CBE96B-F5FE-483C-BA4A-DC9B1D43AF22}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
+ {86CBE96B-F5FE-483C-BA4A-DC9B1D43AF22}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
+ {86CBE96B-F5FE-483C-BA4A-DC9B1D43AF22}.Debug|ARM64.ActiveCfg = Debug|ARM64
+ {86CBE96B-F5FE-483C-BA4A-DC9B1D43AF22}.Debug|ARM64.Build.0 = Debug|ARM64
+ {86CBE96B-F5FE-483C-BA4A-DC9B1D43AF22}.Debug|x64.ActiveCfg = Debug|x64
+ {86CBE96B-F5FE-483C-BA4A-DC9B1D43AF22}.Debug|x64.Build.0 = Debug|x64
+ {86CBE96B-F5FE-483C-BA4A-DC9B1D43AF22}.Debug|x86.ActiveCfg = Debug|Win32
+ {86CBE96B-F5FE-483C-BA4A-DC9B1D43AF22}.Debug|x86.Build.0 = Debug|Win32
+ {86CBE96B-F5FE-483C-BA4A-DC9B1D43AF22}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
+ {86CBE96B-F5FE-483C-BA4A-DC9B1D43AF22}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
+ {86CBE96B-F5FE-483C-BA4A-DC9B1D43AF22}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
+ {86CBE96B-F5FE-483C-BA4A-DC9B1D43AF22}.Release.DLL|x64.Build.0 = Release.DLL|x64
+ {86CBE96B-F5FE-483C-BA4A-DC9B1D43AF22}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
+ {86CBE96B-F5FE-483C-BA4A-DC9B1D43AF22}.Release.DLL|x86.Build.0 = Release.DLL|Win32
+ {86CBE96B-F5FE-483C-BA4A-DC9B1D43AF22}.Release|ARM64.ActiveCfg = Release|ARM64
+ {86CBE96B-F5FE-483C-BA4A-DC9B1D43AF22}.Release|ARM64.Build.0 = Release|ARM64
+ {86CBE96B-F5FE-483C-BA4A-DC9B1D43AF22}.Release|x64.ActiveCfg = Release|x64
+ {86CBE96B-F5FE-483C-BA4A-DC9B1D43AF22}.Release|x64.Build.0 = Release|x64
+ {86CBE96B-F5FE-483C-BA4A-DC9B1D43AF22}.Release|x86.ActiveCfg = Release|Win32
+ {86CBE96B-F5FE-483C-BA4A-DC9B1D43AF22}.Release|x86.Build.0 = Release|Win32
+ {FF2970AE-E2E9-405F-B321-D523A1BD44A0}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
+ {FF2970AE-E2E9-405F-B321-D523A1BD44A0}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
+ {FF2970AE-E2E9-405F-B321-D523A1BD44A0}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
+ {FF2970AE-E2E9-405F-B321-D523A1BD44A0}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
+ {FF2970AE-E2E9-405F-B321-D523A1BD44A0}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
+ {FF2970AE-E2E9-405F-B321-D523A1BD44A0}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
+ {FF2970AE-E2E9-405F-B321-D523A1BD44A0}.Debug|ARM64.ActiveCfg = Debug|ARM64
+ {FF2970AE-E2E9-405F-B321-D523A1BD44A0}.Debug|ARM64.Build.0 = Debug|ARM64
+ {FF2970AE-E2E9-405F-B321-D523A1BD44A0}.Debug|x64.ActiveCfg = Debug|x64
+ {FF2970AE-E2E9-405F-B321-D523A1BD44A0}.Debug|x64.Build.0 = Debug|x64
+ {FF2970AE-E2E9-405F-B321-D523A1BD44A0}.Debug|x86.ActiveCfg = Debug|Win32
+ {FF2970AE-E2E9-405F-B321-D523A1BD44A0}.Debug|x86.Build.0 = Debug|Win32
+ {FF2970AE-E2E9-405F-B321-D523A1BD44A0}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
+ {FF2970AE-E2E9-405F-B321-D523A1BD44A0}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
+ {FF2970AE-E2E9-405F-B321-D523A1BD44A0}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
+ {FF2970AE-E2E9-405F-B321-D523A1BD44A0}.Release.DLL|x64.Build.0 = Release.DLL|x64
+ {FF2970AE-E2E9-405F-B321-D523A1BD44A0}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
+ {FF2970AE-E2E9-405F-B321-D523A1BD44A0}.Release.DLL|x86.Build.0 = Release.DLL|Win32
+ {FF2970AE-E2E9-405F-B321-D523A1BD44A0}.Release|ARM64.ActiveCfg = Release|ARM64
+ {FF2970AE-E2E9-405F-B321-D523A1BD44A0}.Release|ARM64.Build.0 = Release|ARM64
+ {FF2970AE-E2E9-405F-B321-D523A1BD44A0}.Release|x64.ActiveCfg = Release|x64
+ {FF2970AE-E2E9-405F-B321-D523A1BD44A0}.Release|x64.Build.0 = Release|x64
+ {FF2970AE-E2E9-405F-B321-D523A1BD44A0}.Release|x86.ActiveCfg = Release|Win32
+ {FF2970AE-E2E9-405F-B321-D523A1BD44A0}.Release|x86.Build.0 = Release|Win32
+ {79417CE2-FEEB-42F0-BC53-62D5267B19B1}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
+ {79417CE2-FEEB-42F0-BC53-62D5267B19B1}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
+ {79417CE2-FEEB-42F0-BC53-62D5267B19B1}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
+ {79417CE2-FEEB-42F0-BC53-62D5267B19B1}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
+ {79417CE2-FEEB-42F0-BC53-62D5267B19B1}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
+ {79417CE2-FEEB-42F0-BC53-62D5267B19B1}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
+ {79417CE2-FEEB-42F0-BC53-62D5267B19B1}.Debug|ARM64.ActiveCfg = Debug|ARM64
+ {79417CE2-FEEB-42F0-BC53-62D5267B19B1}.Debug|ARM64.Build.0 = Debug|ARM64
+ {79417CE2-FEEB-42F0-BC53-62D5267B19B1}.Debug|x64.ActiveCfg = Debug|x64
+ {79417CE2-FEEB-42F0-BC53-62D5267B19B1}.Debug|x64.Build.0 = Debug|x64
+ {79417CE2-FEEB-42F0-BC53-62D5267B19B1}.Debug|x86.ActiveCfg = Debug|Win32
+ {79417CE2-FEEB-42F0-BC53-62D5267B19B1}.Debug|x86.Build.0 = Debug|Win32
+ {79417CE2-FEEB-42F0-BC53-62D5267B19B1}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
+ {79417CE2-FEEB-42F0-BC53-62D5267B19B1}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
+ {79417CE2-FEEB-42F0-BC53-62D5267B19B1}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
+ {79417CE2-FEEB-42F0-BC53-62D5267B19B1}.Release.DLL|x64.Build.0 = Release.DLL|x64
+ {79417CE2-FEEB-42F0-BC53-62D5267B19B1}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
+ {79417CE2-FEEB-42F0-BC53-62D5267B19B1}.Release.DLL|x86.Build.0 = Release.DLL|Win32
+ {79417CE2-FEEB-42F0-BC53-62D5267B19B1}.Release|ARM64.ActiveCfg = Release|ARM64
+ {79417CE2-FEEB-42F0-BC53-62D5267B19B1}.Release|ARM64.Build.0 = Release|ARM64
+ {79417CE2-FEEB-42F0-BC53-62D5267B19B1}.Release|x64.ActiveCfg = Release|x64
+ {79417CE2-FEEB-42F0-BC53-62D5267B19B1}.Release|x64.Build.0 = Release|x64
+ {79417CE2-FEEB-42F0-BC53-62D5267B19B1}.Release|x86.ActiveCfg = Release|Win32
+ {79417CE2-FEEB-42F0-BC53-62D5267B19B1}.Release|x86.Build.0 = Release|Win32
+ {AFDDE100-2D36-4749-817D-12E54C56312F}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
+ {AFDDE100-2D36-4749-817D-12E54C56312F}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
+ {AFDDE100-2D36-4749-817D-12E54C56312F}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
+ {AFDDE100-2D36-4749-817D-12E54C56312F}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
+ {AFDDE100-2D36-4749-817D-12E54C56312F}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
+ {AFDDE100-2D36-4749-817D-12E54C56312F}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
+ {AFDDE100-2D36-4749-817D-12E54C56312F}.Debug|ARM64.ActiveCfg = Debug|ARM64
+ {AFDDE100-2D36-4749-817D-12E54C56312F}.Debug|ARM64.Build.0 = Debug|ARM64
+ {AFDDE100-2D36-4749-817D-12E54C56312F}.Debug|x64.ActiveCfg = Debug|x64
+ {AFDDE100-2D36-4749-817D-12E54C56312F}.Debug|x64.Build.0 = Debug|x64
+ {AFDDE100-2D36-4749-817D-12E54C56312F}.Debug|x86.ActiveCfg = Debug|Win32
+ {AFDDE100-2D36-4749-817D-12E54C56312F}.Debug|x86.Build.0 = Debug|Win32
+ {AFDDE100-2D36-4749-817D-12E54C56312F}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
+ {AFDDE100-2D36-4749-817D-12E54C56312F}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
+ {AFDDE100-2D36-4749-817D-12E54C56312F}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
+ {AFDDE100-2D36-4749-817D-12E54C56312F}.Release.DLL|x64.Build.0 = Release.DLL|x64
+ {AFDDE100-2D36-4749-817D-12E54C56312F}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
+ {AFDDE100-2D36-4749-817D-12E54C56312F}.Release.DLL|x86.Build.0 = Release.DLL|Win32
+ {AFDDE100-2D36-4749-817D-12E54C56312F}.Release|ARM64.ActiveCfg = Release|ARM64
+ {AFDDE100-2D36-4749-817D-12E54C56312F}.Release|ARM64.Build.0 = Release|ARM64
+ {AFDDE100-2D36-4749-817D-12E54C56312F}.Release|x64.ActiveCfg = Release|x64
+ {AFDDE100-2D36-4749-817D-12E54C56312F}.Release|x64.Build.0 = Release|x64
+ {AFDDE100-2D36-4749-817D-12E54C56312F}.Release|x86.ActiveCfg = Release|Win32
+ {AFDDE100-2D36-4749-817D-12E54C56312F}.Release|x86.Build.0 = Release|Win32
+ {B7812167-50FB-4934-996F-DF6FE4CBBFDF}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
+ {B7812167-50FB-4934-996F-DF6FE4CBBFDF}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
+ {B7812167-50FB-4934-996F-DF6FE4CBBFDF}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
+ {B7812167-50FB-4934-996F-DF6FE4CBBFDF}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
+ {B7812167-50FB-4934-996F-DF6FE4CBBFDF}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
+ {B7812167-50FB-4934-996F-DF6FE4CBBFDF}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
+ {B7812167-50FB-4934-996F-DF6FE4CBBFDF}.Debug|ARM64.ActiveCfg = Debug|ARM64
+ {B7812167-50FB-4934-996F-DF6FE4CBBFDF}.Debug|ARM64.Build.0 = Debug|ARM64
+ {B7812167-50FB-4934-996F-DF6FE4CBBFDF}.Debug|x64.ActiveCfg = Debug|x64
+ {B7812167-50FB-4934-996F-DF6FE4CBBFDF}.Debug|x64.Build.0 = Debug|x64
+ {B7812167-50FB-4934-996F-DF6FE4CBBFDF}.Debug|x86.ActiveCfg = Debug|Win32
+ {B7812167-50FB-4934-996F-DF6FE4CBBFDF}.Debug|x86.Build.0 = Debug|Win32
+ {B7812167-50FB-4934-996F-DF6FE4CBBFDF}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
+ {B7812167-50FB-4934-996F-DF6FE4CBBFDF}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
+ {B7812167-50FB-4934-996F-DF6FE4CBBFDF}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
+ {B7812167-50FB-4934-996F-DF6FE4CBBFDF}.Release.DLL|x64.Build.0 = Release.DLL|x64
+ {B7812167-50FB-4934-996F-DF6FE4CBBFDF}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
+ {B7812167-50FB-4934-996F-DF6FE4CBBFDF}.Release.DLL|x86.Build.0 = Release.DLL|Win32
+ {B7812167-50FB-4934-996F-DF6FE4CBBFDF}.Release|ARM64.ActiveCfg = Release|ARM64
+ {B7812167-50FB-4934-996F-DF6FE4CBBFDF}.Release|ARM64.Build.0 = Release|ARM64
+ {B7812167-50FB-4934-996F-DF6FE4CBBFDF}.Release|x64.ActiveCfg = Release|x64
+ {B7812167-50FB-4934-996F-DF6FE4CBBFDF}.Release|x64.Build.0 = Release|x64
+ {B7812167-50FB-4934-996F-DF6FE4CBBFDF}.Release|x86.ActiveCfg = Release|Win32
+ {B7812167-50FB-4934-996F-DF6FE4CBBFDF}.Release|x86.Build.0 = Release|Win32
+ {39DB56C7-05F8-492C-A8D4-F19E40FECB59}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
+ {39DB56C7-05F8-492C-A8D4-F19E40FECB59}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
+ {39DB56C7-05F8-492C-A8D4-F19E40FECB59}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
+ {39DB56C7-05F8-492C-A8D4-F19E40FECB59}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
+ {39DB56C7-05F8-492C-A8D4-F19E40FECB59}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
+ {39DB56C7-05F8-492C-A8D4-F19E40FECB59}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
+ {39DB56C7-05F8-492C-A8D4-F19E40FECB59}.Debug|ARM64.ActiveCfg = Debug|ARM64
+ {39DB56C7-05F8-492C-A8D4-F19E40FECB59}.Debug|ARM64.Build.0 = Debug|ARM64
+ {39DB56C7-05F8-492C-A8D4-F19E40FECB59}.Debug|x64.ActiveCfg = Debug|x64
+ {39DB56C7-05F8-492C-A8D4-F19E40FECB59}.Debug|x64.Build.0 = Debug|x64
+ {39DB56C7-05F8-492C-A8D4-F19E40FECB59}.Debug|x86.ActiveCfg = Debug|Win32
+ {39DB56C7-05F8-492C-A8D4-F19E40FECB59}.Debug|x86.Build.0 = Debug|Win32
+ {39DB56C7-05F8-492C-A8D4-F19E40FECB59}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
+ {39DB56C7-05F8-492C-A8D4-F19E40FECB59}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
+ {39DB56C7-05F8-492C-A8D4-F19E40FECB59}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
+ {39DB56C7-05F8-492C-A8D4-F19E40FECB59}.Release.DLL|x64.Build.0 = Release.DLL|x64
+ {39DB56C7-05F8-492C-A8D4-F19E40FECB59}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
+ {39DB56C7-05F8-492C-A8D4-F19E40FECB59}.Release.DLL|x86.Build.0 = Release.DLL|Win32
+ {39DB56C7-05F8-492C-A8D4-F19E40FECB59}.Release|ARM64.ActiveCfg = Release|ARM64
+ {39DB56C7-05F8-492C-A8D4-F19E40FECB59}.Release|ARM64.Build.0 = Release|ARM64
+ {39DB56C7-05F8-492C-A8D4-F19E40FECB59}.Release|x64.ActiveCfg = Release|x64
+ {39DB56C7-05F8-492C-A8D4-F19E40FECB59}.Release|x64.Build.0 = Release|x64
+ {39DB56C7-05F8-492C-A8D4-F19E40FECB59}.Release|x86.ActiveCfg = Release|Win32
+ {39DB56C7-05F8-492C-A8D4-F19E40FECB59}.Release|x86.Build.0 = Release|Win32
+ {82F3D34B-8DB2-4C6A-98B1-132245DD9D99}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
+ {82F3D34B-8DB2-4C6A-98B1-132245DD9D99}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
+ {82F3D34B-8DB2-4C6A-98B1-132245DD9D99}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
+ {82F3D34B-8DB2-4C6A-98B1-132245DD9D99}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
+ {82F3D34B-8DB2-4C6A-98B1-132245DD9D99}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
+ {82F3D34B-8DB2-4C6A-98B1-132245DD9D99}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
+ {82F3D34B-8DB2-4C6A-98B1-132245DD9D99}.Debug|ARM64.ActiveCfg = Debug|ARM64
+ {82F3D34B-8DB2-4C6A-98B1-132245DD9D99}.Debug|ARM64.Build.0 = Debug|ARM64
+ {82F3D34B-8DB2-4C6A-98B1-132245DD9D99}.Debug|x64.ActiveCfg = Debug|x64
+ {82F3D34B-8DB2-4C6A-98B1-132245DD9D99}.Debug|x64.Build.0 = Debug|x64
+ {82F3D34B-8DB2-4C6A-98B1-132245DD9D99}.Debug|x86.ActiveCfg = Debug|Win32
+ {82F3D34B-8DB2-4C6A-98B1-132245DD9D99}.Debug|x86.Build.0 = Debug|Win32
+ {82F3D34B-8DB2-4C6A-98B1-132245DD9D99}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
+ {82F3D34B-8DB2-4C6A-98B1-132245DD9D99}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
+ {82F3D34B-8DB2-4C6A-98B1-132245DD9D99}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
+ {82F3D34B-8DB2-4C6A-98B1-132245DD9D99}.Release.DLL|x64.Build.0 = Release.DLL|x64
+ {82F3D34B-8DB2-4C6A-98B1-132245DD9D99}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
+ {82F3D34B-8DB2-4C6A-98B1-132245DD9D99}.Release.DLL|x86.Build.0 = Release.DLL|Win32
+ {82F3D34B-8DB2-4C6A-98B1-132245DD9D99}.Release|ARM64.ActiveCfg = Release|ARM64
+ {82F3D34B-8DB2-4C6A-98B1-132245DD9D99}.Release|ARM64.Build.0 = Release|ARM64
+ {82F3D34B-8DB2-4C6A-98B1-132245DD9D99}.Release|x64.ActiveCfg = Release|x64
+ {82F3D34B-8DB2-4C6A-98B1-132245DD9D99}.Release|x64.Build.0 = Release|x64
+ {82F3D34B-8DB2-4C6A-98B1-132245DD9D99}.Release|x86.ActiveCfg = Release|Win32
+ {82F3D34B-8DB2-4C6A-98B1-132245DD9D99}.Release|x86.Build.0 = Release|Win32
+ {CBD6C0F8-8200-4E9A-9D7C-6505A2AA4A62}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
+ {CBD6C0F8-8200-4E9A-9D7C-6505A2AA4A62}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
+ {CBD6C0F8-8200-4E9A-9D7C-6505A2AA4A62}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
+ {CBD6C0F8-8200-4E9A-9D7C-6505A2AA4A62}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
+ {CBD6C0F8-8200-4E9A-9D7C-6505A2AA4A62}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
+ {CBD6C0F8-8200-4E9A-9D7C-6505A2AA4A62}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
+ {CBD6C0F8-8200-4E9A-9D7C-6505A2AA4A62}.Debug|ARM64.ActiveCfg = Debug|ARM64
+ {CBD6C0F8-8200-4E9A-9D7C-6505A2AA4A62}.Debug|ARM64.Build.0 = Debug|ARM64
+ {CBD6C0F8-8200-4E9A-9D7C-6505A2AA4A62}.Debug|x64.ActiveCfg = Debug|x64
+ {CBD6C0F8-8200-4E9A-9D7C-6505A2AA4A62}.Debug|x64.Build.0 = Debug|x64
+ {CBD6C0F8-8200-4E9A-9D7C-6505A2AA4A62}.Debug|x86.ActiveCfg = Debug|Win32
+ {CBD6C0F8-8200-4E9A-9D7C-6505A2AA4A62}.Debug|x86.Build.0 = Debug|Win32
+ {CBD6C0F8-8200-4E9A-9D7C-6505A2AA4A62}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
+ {CBD6C0F8-8200-4E9A-9D7C-6505A2AA4A62}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
+ {CBD6C0F8-8200-4E9A-9D7C-6505A2AA4A62}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
+ {CBD6C0F8-8200-4E9A-9D7C-6505A2AA4A62}.Release.DLL|x64.Build.0 = Release.DLL|x64
+ {CBD6C0F8-8200-4E9A-9D7C-6505A2AA4A62}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
+ {CBD6C0F8-8200-4E9A-9D7C-6505A2AA4A62}.Release.DLL|x86.Build.0 = Release.DLL|Win32
+ {CBD6C0F8-8200-4E9A-9D7C-6505A2AA4A62}.Release|ARM64.ActiveCfg = Release|ARM64
+ {CBD6C0F8-8200-4E9A-9D7C-6505A2AA4A62}.Release|ARM64.Build.0 = Release|ARM64
+ {CBD6C0F8-8200-4E9A-9D7C-6505A2AA4A62}.Release|x64.ActiveCfg = Release|x64
+ {CBD6C0F8-8200-4E9A-9D7C-6505A2AA4A62}.Release|x64.Build.0 = Release|x64
+ {CBD6C0F8-8200-4E9A-9D7C-6505A2AA4A62}.Release|x86.ActiveCfg = Release|Win32
+ {CBD6C0F8-8200-4E9A-9D7C-6505A2AA4A62}.Release|x86.Build.0 = Release|Win32
+ {14BA7F98-02CC-4648-9236-676BFF9458AF}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
+ {14BA7F98-02CC-4648-9236-676BFF9458AF}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
+ {14BA7F98-02CC-4648-9236-676BFF9458AF}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
+ {14BA7F98-02CC-4648-9236-676BFF9458AF}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
+ {14BA7F98-02CC-4648-9236-676BFF9458AF}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
+ {14BA7F98-02CC-4648-9236-676BFF9458AF}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
+ {14BA7F98-02CC-4648-9236-676BFF9458AF}.Debug|ARM64.ActiveCfg = Debug|ARM64
+ {14BA7F98-02CC-4648-9236-676BFF9458AF}.Debug|ARM64.Build.0 = Debug|ARM64
+ {14BA7F98-02CC-4648-9236-676BFF9458AF}.Debug|x64.ActiveCfg = Debug|x64
+ {14BA7F98-02CC-4648-9236-676BFF9458AF}.Debug|x64.Build.0 = Debug|x64
+ {14BA7F98-02CC-4648-9236-676BFF9458AF}.Debug|x86.ActiveCfg = Debug|Win32
+ {14BA7F98-02CC-4648-9236-676BFF9458AF}.Debug|x86.Build.0 = Debug|Win32
+ {14BA7F98-02CC-4648-9236-676BFF9458AF}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
+ {14BA7F98-02CC-4648-9236-676BFF9458AF}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
+ {14BA7F98-02CC-4648-9236-676BFF9458AF}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
+ {14BA7F98-02CC-4648-9236-676BFF9458AF}.Release.DLL|x64.Build.0 = Release.DLL|x64
+ {14BA7F98-02CC-4648-9236-676BFF9458AF}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
+ {14BA7F98-02CC-4648-9236-676BFF9458AF}.Release.DLL|x86.Build.0 = Release.DLL|Win32
+ {14BA7F98-02CC-4648-9236-676BFF9458AF}.Release|ARM64.ActiveCfg = Release|ARM64
+ {14BA7F98-02CC-4648-9236-676BFF9458AF}.Release|ARM64.Build.0 = Release|ARM64
+ {14BA7F98-02CC-4648-9236-676BFF9458AF}.Release|x64.ActiveCfg = Release|x64
+ {14BA7F98-02CC-4648-9236-676BFF9458AF}.Release|x64.Build.0 = Release|x64
+ {14BA7F98-02CC-4648-9236-676BFF9458AF}.Release|x86.ActiveCfg = Release|Win32
+ {14BA7F98-02CC-4648-9236-676BFF9458AF}.Release|x86.Build.0 = Release|Win32
+ {0859A973-E4FE-4688-8D16-0253163FDE24}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
+ {0859A973-E4FE-4688-8D16-0253163FDE24}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
+ {0859A973-E4FE-4688-8D16-0253163FDE24}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
+ {0859A973-E4FE-4688-8D16-0253163FDE24}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
+ {0859A973-E4FE-4688-8D16-0253163FDE24}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
+ {0859A973-E4FE-4688-8D16-0253163FDE24}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
+ {0859A973-E4FE-4688-8D16-0253163FDE24}.Debug|ARM64.ActiveCfg = Debug|ARM64
+ {0859A973-E4FE-4688-8D16-0253163FDE24}.Debug|ARM64.Build.0 = Debug|ARM64
+ {0859A973-E4FE-4688-8D16-0253163FDE24}.Debug|x64.ActiveCfg = Debug|x64
+ {0859A973-E4FE-4688-8D16-0253163FDE24}.Debug|x64.Build.0 = Debug|x64
+ {0859A973-E4FE-4688-8D16-0253163FDE24}.Debug|x86.ActiveCfg = Debug|Win32
+ {0859A973-E4FE-4688-8D16-0253163FDE24}.Debug|x86.Build.0 = Debug|Win32
+ {0859A973-E4FE-4688-8D16-0253163FDE24}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
+ {0859A973-E4FE-4688-8D16-0253163FDE24}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
+ {0859A973-E4FE-4688-8D16-0253163FDE24}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
+ {0859A973-E4FE-4688-8D16-0253163FDE24}.Release.DLL|x64.Build.0 = Release.DLL|x64
+ {0859A973-E4FE-4688-8D16-0253163FDE24}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
+ {0859A973-E4FE-4688-8D16-0253163FDE24}.Release.DLL|x86.Build.0 = Release.DLL|Win32
+ {0859A973-E4FE-4688-8D16-0253163FDE24}.Release|ARM64.ActiveCfg = Release|ARM64
+ {0859A973-E4FE-4688-8D16-0253163FDE24}.Release|ARM64.Build.0 = Release|ARM64
+ {0859A973-E4FE-4688-8D16-0253163FDE24}.Release|x64.ActiveCfg = Release|x64
+ {0859A973-E4FE-4688-8D16-0253163FDE24}.Release|x64.Build.0 = Release|x64
+ {0859A973-E4FE-4688-8D16-0253163FDE24}.Release|x86.ActiveCfg = Release|Win32
+ {0859A973-E4FE-4688-8D16-0253163FDE24}.Release|x86.Build.0 = Release|Win32
+ {F3412853-2B6A-4334-8CF2-B796CDAE0850}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
+ {F3412853-2B6A-4334-8CF2-B796CDAE0850}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
+ {F3412853-2B6A-4334-8CF2-B796CDAE0850}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
+ {F3412853-2B6A-4334-8CF2-B796CDAE0850}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
+ {F3412853-2B6A-4334-8CF2-B796CDAE0850}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
+ {F3412853-2B6A-4334-8CF2-B796CDAE0850}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
+ {F3412853-2B6A-4334-8CF2-B796CDAE0850}.Debug|ARM64.ActiveCfg = Debug|ARM64
+ {F3412853-2B6A-4334-8CF2-B796CDAE0850}.Debug|ARM64.Build.0 = Debug|ARM64
+ {F3412853-2B6A-4334-8CF2-B796CDAE0850}.Debug|x64.ActiveCfg = Debug|x64
+ {F3412853-2B6A-4334-8CF2-B796CDAE0850}.Debug|x64.Build.0 = Debug|x64
+ {F3412853-2B6A-4334-8CF2-B796CDAE0850}.Debug|x86.ActiveCfg = Debug|Win32
+ {F3412853-2B6A-4334-8CF2-B796CDAE0850}.Debug|x86.Build.0 = Debug|Win32
+ {F3412853-2B6A-4334-8CF2-B796CDAE0850}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
+ {F3412853-2B6A-4334-8CF2-B796CDAE0850}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
+ {F3412853-2B6A-4334-8CF2-B796CDAE0850}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
+ {F3412853-2B6A-4334-8CF2-B796CDAE0850}.Release.DLL|x64.Build.0 = Release.DLL|x64
+ {F3412853-2B6A-4334-8CF2-B796CDAE0850}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
+ {F3412853-2B6A-4334-8CF2-B796CDAE0850}.Release.DLL|x86.Build.0 = Release.DLL|Win32
+ {F3412853-2B6A-4334-8CF2-B796CDAE0850}.Release|ARM64.ActiveCfg = Release|ARM64
+ {F3412853-2B6A-4334-8CF2-B796CDAE0850}.Release|ARM64.Build.0 = Release|ARM64
+ {F3412853-2B6A-4334-8CF2-B796CDAE0850}.Release|x64.ActiveCfg = Release|x64
+ {F3412853-2B6A-4334-8CF2-B796CDAE0850}.Release|x64.Build.0 = Release|x64
+ {F3412853-2B6A-4334-8CF2-B796CDAE0850}.Release|x86.ActiveCfg = Release|Win32
+ {F3412853-2B6A-4334-8CF2-B796CDAE0850}.Release|x86.Build.0 = Release|Win32
+ {BE097E8F-B6F3-45DC-8A27-E0EBC31AB912}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
+ {BE097E8F-B6F3-45DC-8A27-E0EBC31AB912}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
+ {BE097E8F-B6F3-45DC-8A27-E0EBC31AB912}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
+ {BE097E8F-B6F3-45DC-8A27-E0EBC31AB912}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
+ {BE097E8F-B6F3-45DC-8A27-E0EBC31AB912}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
+ {BE097E8F-B6F3-45DC-8A27-E0EBC31AB912}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
+ {BE097E8F-B6F3-45DC-8A27-E0EBC31AB912}.Debug|ARM64.ActiveCfg = Debug|ARM64
+ {BE097E8F-B6F3-45DC-8A27-E0EBC31AB912}.Debug|ARM64.Build.0 = Debug|ARM64
+ {BE097E8F-B6F3-45DC-8A27-E0EBC31AB912}.Debug|x64.ActiveCfg = Debug|x64
+ {BE097E8F-B6F3-45DC-8A27-E0EBC31AB912}.Debug|x64.Build.0 = Debug|x64
+ {BE097E8F-B6F3-45DC-8A27-E0EBC31AB912}.Debug|x86.ActiveCfg = Debug|Win32
+ {BE097E8F-B6F3-45DC-8A27-E0EBC31AB912}.Debug|x86.Build.0 = Debug|Win32
+ {BE097E8F-B6F3-45DC-8A27-E0EBC31AB912}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
+ {BE097E8F-B6F3-45DC-8A27-E0EBC31AB912}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
+ {BE097E8F-B6F3-45DC-8A27-E0EBC31AB912}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
+ {BE097E8F-B6F3-45DC-8A27-E0EBC31AB912}.Release.DLL|x64.Build.0 = Release.DLL|x64
+ {BE097E8F-B6F3-45DC-8A27-E0EBC31AB912}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
+ {BE097E8F-B6F3-45DC-8A27-E0EBC31AB912}.Release.DLL|x86.Build.0 = Release.DLL|Win32
+ {BE097E8F-B6F3-45DC-8A27-E0EBC31AB912}.Release|ARM64.ActiveCfg = Release|ARM64
+ {BE097E8F-B6F3-45DC-8A27-E0EBC31AB912}.Release|ARM64.Build.0 = Release|ARM64
+ {BE097E8F-B6F3-45DC-8A27-E0EBC31AB912}.Release|x64.ActiveCfg = Release|x64
+ {BE097E8F-B6F3-45DC-8A27-E0EBC31AB912}.Release|x64.Build.0 = Release|x64
+ {BE097E8F-B6F3-45DC-8A27-E0EBC31AB912}.Release|x86.ActiveCfg = Release|Win32
+ {BE097E8F-B6F3-45DC-8A27-E0EBC31AB912}.Release|x86.Build.0 = Release|Win32
+ {D03F2C82-9553-4AFA-8F49-9234009122B6}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
+ {D03F2C82-9553-4AFA-8F49-9234009122B6}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
+ {D03F2C82-9553-4AFA-8F49-9234009122B6}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
+ {D03F2C82-9553-4AFA-8F49-9234009122B6}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
+ {D03F2C82-9553-4AFA-8F49-9234009122B6}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
+ {D03F2C82-9553-4AFA-8F49-9234009122B6}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
+ {D03F2C82-9553-4AFA-8F49-9234009122B6}.Debug|ARM64.ActiveCfg = Debug|ARM64
+ {D03F2C82-9553-4AFA-8F49-9234009122B6}.Debug|ARM64.Build.0 = Debug|ARM64
+ {D03F2C82-9553-4AFA-8F49-9234009122B6}.Debug|x64.ActiveCfg = Debug|x64
+ {D03F2C82-9553-4AFA-8F49-9234009122B6}.Debug|x64.Build.0 = Debug|x64
+ {D03F2C82-9553-4AFA-8F49-9234009122B6}.Debug|x86.ActiveCfg = Debug|Win32
+ {D03F2C82-9553-4AFA-8F49-9234009122B6}.Debug|x86.Build.0 = Debug|Win32
+ {D03F2C82-9553-4AFA-8F49-9234009122B6}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
+ {D03F2C82-9553-4AFA-8F49-9234009122B6}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
+ {D03F2C82-9553-4AFA-8F49-9234009122B6}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
+ {D03F2C82-9553-4AFA-8F49-9234009122B6}.Release.DLL|x64.Build.0 = Release.DLL|x64
+ {D03F2C82-9553-4AFA-8F49-9234009122B6}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
+ {D03F2C82-9553-4AFA-8F49-9234009122B6}.Release.DLL|x86.Build.0 = Release.DLL|Win32
+ {D03F2C82-9553-4AFA-8F49-9234009122B6}.Release|ARM64.ActiveCfg = Release|ARM64
+ {D03F2C82-9553-4AFA-8F49-9234009122B6}.Release|ARM64.Build.0 = Release|ARM64
+ {D03F2C82-9553-4AFA-8F49-9234009122B6}.Release|x64.ActiveCfg = Release|x64
+ {D03F2C82-9553-4AFA-8F49-9234009122B6}.Release|x64.Build.0 = Release|x64
+ {D03F2C82-9553-4AFA-8F49-9234009122B6}.Release|x86.ActiveCfg = Release|Win32
+ {D03F2C82-9553-4AFA-8F49-9234009122B6}.Release|x86.Build.0 = Release|Win32
+ {FE232CA5-6C0D-4ADF-9A21-775D4DC048D3}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
+ {FE232CA5-6C0D-4ADF-9A21-775D4DC048D3}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
+ {FE232CA5-6C0D-4ADF-9A21-775D4DC048D3}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
+ {FE232CA5-6C0D-4ADF-9A21-775D4DC048D3}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
+ {FE232CA5-6C0D-4ADF-9A21-775D4DC048D3}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
+ {FE232CA5-6C0D-4ADF-9A21-775D4DC048D3}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
+ {FE232CA5-6C0D-4ADF-9A21-775D4DC048D3}.Debug|ARM64.ActiveCfg = Debug|ARM64
+ {FE232CA5-6C0D-4ADF-9A21-775D4DC048D3}.Debug|ARM64.Build.0 = Debug|ARM64
+ {FE232CA5-6C0D-4ADF-9A21-775D4DC048D3}.Debug|x64.ActiveCfg = Debug|x64
+ {FE232CA5-6C0D-4ADF-9A21-775D4DC048D3}.Debug|x64.Build.0 = Debug|x64
+ {FE232CA5-6C0D-4ADF-9A21-775D4DC048D3}.Debug|x86.ActiveCfg = Debug|Win32
+ {FE232CA5-6C0D-4ADF-9A21-775D4DC048D3}.Debug|x86.Build.0 = Debug|Win32
+ {FE232CA5-6C0D-4ADF-9A21-775D4DC048D3}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
+ {FE232CA5-6C0D-4ADF-9A21-775D4DC048D3}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
+ {FE232CA5-6C0D-4ADF-9A21-775D4DC048D3}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
+ {FE232CA5-6C0D-4ADF-9A21-775D4DC048D3}.Release.DLL|x64.Build.0 = Release.DLL|x64
+ {FE232CA5-6C0D-4ADF-9A21-775D4DC048D3}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
+ {FE232CA5-6C0D-4ADF-9A21-775D4DC048D3}.Release.DLL|x86.Build.0 = Release.DLL|Win32
+ {FE232CA5-6C0D-4ADF-9A21-775D4DC048D3}.Release|ARM64.ActiveCfg = Release|ARM64
+ {FE232CA5-6C0D-4ADF-9A21-775D4DC048D3}.Release|ARM64.Build.0 = Release|ARM64
+ {FE232CA5-6C0D-4ADF-9A21-775D4DC048D3}.Release|x64.ActiveCfg = Release|x64
+ {FE232CA5-6C0D-4ADF-9A21-775D4DC048D3}.Release|x64.Build.0 = Release|x64
+ {FE232CA5-6C0D-4ADF-9A21-775D4DC048D3}.Release|x86.ActiveCfg = Release|Win32
+ {FE232CA5-6C0D-4ADF-9A21-775D4DC048D3}.Release|x86.Build.0 = Release|Win32
+ {A53CCF42-A972-478F-9336-0F618B3EC06A}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
+ {A53CCF42-A972-478F-9336-0F618B3EC06A}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
+ {A53CCF42-A972-478F-9336-0F618B3EC06A}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
+ {A53CCF42-A972-478F-9336-0F618B3EC06A}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
+ {A53CCF42-A972-478F-9336-0F618B3EC06A}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
+ {A53CCF42-A972-478F-9336-0F618B3EC06A}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
+ {A53CCF42-A972-478F-9336-0F618B3EC06A}.Debug|ARM64.ActiveCfg = Debug|ARM64
+ {A53CCF42-A972-478F-9336-0F618B3EC06A}.Debug|ARM64.Build.0 = Debug|ARM64
+ {A53CCF42-A972-478F-9336-0F618B3EC06A}.Debug|x64.ActiveCfg = Debug|x64
+ {A53CCF42-A972-478F-9336-0F618B3EC06A}.Debug|x64.Build.0 = Debug|x64
+ {A53CCF42-A972-478F-9336-0F618B3EC06A}.Debug|x86.ActiveCfg = Debug|Win32
+ {A53CCF42-A972-478F-9336-0F618B3EC06A}.Debug|x86.Build.0 = Debug|Win32
+ {A53CCF42-A972-478F-9336-0F618B3EC06A}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
+ {A53CCF42-A972-478F-9336-0F618B3EC06A}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
+ {A53CCF42-A972-478F-9336-0F618B3EC06A}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
+ {A53CCF42-A972-478F-9336-0F618B3EC06A}.Release.DLL|x64.Build.0 = Release.DLL|x64
+ {A53CCF42-A972-478F-9336-0F618B3EC06A}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
+ {A53CCF42-A972-478F-9336-0F618B3EC06A}.Release.DLL|x86.Build.0 = Release.DLL|Win32
+ {A53CCF42-A972-478F-9336-0F618B3EC06A}.Release|ARM64.ActiveCfg = Release|ARM64
+ {A53CCF42-A972-478F-9336-0F618B3EC06A}.Release|ARM64.Build.0 = Release|ARM64
+ {A53CCF42-A972-478F-9336-0F618B3EC06A}.Release|x64.ActiveCfg = Release|x64
+ {A53CCF42-A972-478F-9336-0F618B3EC06A}.Release|x64.Build.0 = Release|x64
+ {A53CCF42-A972-478F-9336-0F618B3EC06A}.Release|x86.ActiveCfg = Release|Win32
+ {A53CCF42-A972-478F-9336-0F618B3EC06A}.Release|x86.Build.0 = Release|Win32
+ {0037A3CD-4F50-48B2-9AC3-5A0D1D16D2CA}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
+ {0037A3CD-4F50-48B2-9AC3-5A0D1D16D2CA}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
+ {0037A3CD-4F50-48B2-9AC3-5A0D1D16D2CA}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
+ {0037A3CD-4F50-48B2-9AC3-5A0D1D16D2CA}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
+ {0037A3CD-4F50-48B2-9AC3-5A0D1D16D2CA}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
+ {0037A3CD-4F50-48B2-9AC3-5A0D1D16D2CA}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
+ {0037A3CD-4F50-48B2-9AC3-5A0D1D16D2CA}.Debug|ARM64.ActiveCfg = Debug|ARM64
+ {0037A3CD-4F50-48B2-9AC3-5A0D1D16D2CA}.Debug|ARM64.Build.0 = Debug|ARM64
+ {0037A3CD-4F50-48B2-9AC3-5A0D1D16D2CA}.Debug|x64.ActiveCfg = Debug|x64
+ {0037A3CD-4F50-48B2-9AC3-5A0D1D16D2CA}.Debug|x64.Build.0 = Debug|x64
+ {0037A3CD-4F50-48B2-9AC3-5A0D1D16D2CA}.Debug|x86.ActiveCfg = Debug|Win32
+ {0037A3CD-4F50-48B2-9AC3-5A0D1D16D2CA}.Debug|x86.Build.0 = Debug|Win32
+ {0037A3CD-4F50-48B2-9AC3-5A0D1D16D2CA}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
+ {0037A3CD-4F50-48B2-9AC3-5A0D1D16D2CA}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
+ {0037A3CD-4F50-48B2-9AC3-5A0D1D16D2CA}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
+ {0037A3CD-4F50-48B2-9AC3-5A0D1D16D2CA}.Release.DLL|x64.Build.0 = Release.DLL|x64
+ {0037A3CD-4F50-48B2-9AC3-5A0D1D16D2CA}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
+ {0037A3CD-4F50-48B2-9AC3-5A0D1D16D2CA}.Release.DLL|x86.Build.0 = Release.DLL|Win32
+ {0037A3CD-4F50-48B2-9AC3-5A0D1D16D2CA}.Release|ARM64.ActiveCfg = Release|ARM64
+ {0037A3CD-4F50-48B2-9AC3-5A0D1D16D2CA}.Release|ARM64.Build.0 = Release|ARM64
+ {0037A3CD-4F50-48B2-9AC3-5A0D1D16D2CA}.Release|x64.ActiveCfg = Release|x64
+ {0037A3CD-4F50-48B2-9AC3-5A0D1D16D2CA}.Release|x64.Build.0 = Release|x64
+ {0037A3CD-4F50-48B2-9AC3-5A0D1D16D2CA}.Release|x86.ActiveCfg = Release|Win32
+ {0037A3CD-4F50-48B2-9AC3-5A0D1D16D2CA}.Release|x86.Build.0 = Release|Win32
+ {870723DD-945A-4136-B65B-4AF3BF85369C}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
+ {870723DD-945A-4136-B65B-4AF3BF85369C}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
+ {870723DD-945A-4136-B65B-4AF3BF85369C}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
+ {870723DD-945A-4136-B65B-4AF3BF85369C}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
+ {870723DD-945A-4136-B65B-4AF3BF85369C}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
+ {870723DD-945A-4136-B65B-4AF3BF85369C}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
+ {870723DD-945A-4136-B65B-4AF3BF85369C}.Debug|ARM64.ActiveCfg = Debug|ARM64
+ {870723DD-945A-4136-B65B-4AF3BF85369C}.Debug|ARM64.Build.0 = Debug|ARM64
+ {870723DD-945A-4136-B65B-4AF3BF85369C}.Debug|x64.ActiveCfg = Debug|x64
+ {870723DD-945A-4136-B65B-4AF3BF85369C}.Debug|x64.Build.0 = Debug|x64
+ {870723DD-945A-4136-B65B-4AF3BF85369C}.Debug|x86.ActiveCfg = Debug|Win32
+ {870723DD-945A-4136-B65B-4AF3BF85369C}.Debug|x86.Build.0 = Debug|Win32
+ {870723DD-945A-4136-B65B-4AF3BF85369C}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
+ {870723DD-945A-4136-B65B-4AF3BF85369C}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
+ {870723DD-945A-4136-B65B-4AF3BF85369C}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
+ {870723DD-945A-4136-B65B-4AF3BF85369C}.Release.DLL|x64.Build.0 = Release.DLL|x64
+ {870723DD-945A-4136-B65B-4AF3BF85369C}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
+ {870723DD-945A-4136-B65B-4AF3BF85369C}.Release.DLL|x86.Build.0 = Release.DLL|Win32
+ {870723DD-945A-4136-B65B-4AF3BF85369C}.Release|ARM64.ActiveCfg = Release|ARM64
+ {870723DD-945A-4136-B65B-4AF3BF85369C}.Release|ARM64.Build.0 = Release|ARM64
+ {870723DD-945A-4136-B65B-4AF3BF85369C}.Release|x64.ActiveCfg = Release|x64
+ {870723DD-945A-4136-B65B-4AF3BF85369C}.Release|x64.Build.0 = Release|x64
+ {870723DD-945A-4136-B65B-4AF3BF85369C}.Release|x86.ActiveCfg = Release|Win32
+ {870723DD-945A-4136-B65B-4AF3BF85369C}.Release|x86.Build.0 = Release|Win32
+ {EA6488AD-445B-4835-87FB-EBC9E2EDAF97}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
+ {EA6488AD-445B-4835-87FB-EBC9E2EDAF97}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
+ {EA6488AD-445B-4835-87FB-EBC9E2EDAF97}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
+ {EA6488AD-445B-4835-87FB-EBC9E2EDAF97}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
+ {EA6488AD-445B-4835-87FB-EBC9E2EDAF97}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
+ {EA6488AD-445B-4835-87FB-EBC9E2EDAF97}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
+ {EA6488AD-445B-4835-87FB-EBC9E2EDAF97}.Debug|ARM64.ActiveCfg = Debug|ARM64
+ {EA6488AD-445B-4835-87FB-EBC9E2EDAF97}.Debug|ARM64.Build.0 = Debug|ARM64
+ {EA6488AD-445B-4835-87FB-EBC9E2EDAF97}.Debug|x64.ActiveCfg = Debug|x64
+ {EA6488AD-445B-4835-87FB-EBC9E2EDAF97}.Debug|x64.Build.0 = Debug|x64
+ {EA6488AD-445B-4835-87FB-EBC9E2EDAF97}.Debug|x86.ActiveCfg = Debug|Win32
+ {EA6488AD-445B-4835-87FB-EBC9E2EDAF97}.Debug|x86.Build.0 = Debug|Win32
+ {EA6488AD-445B-4835-87FB-EBC9E2EDAF97}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
+ {EA6488AD-445B-4835-87FB-EBC9E2EDAF97}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
+ {EA6488AD-445B-4835-87FB-EBC9E2EDAF97}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
+ {EA6488AD-445B-4835-87FB-EBC9E2EDAF97}.Release.DLL|x64.Build.0 = Release.DLL|x64
+ {EA6488AD-445B-4835-87FB-EBC9E2EDAF97}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
+ {EA6488AD-445B-4835-87FB-EBC9E2EDAF97}.Release.DLL|x86.Build.0 = Release.DLL|Win32
+ {EA6488AD-445B-4835-87FB-EBC9E2EDAF97}.Release|ARM64.ActiveCfg = Release|ARM64
+ {EA6488AD-445B-4835-87FB-EBC9E2EDAF97}.Release|ARM64.Build.0 = Release|ARM64
+ {EA6488AD-445B-4835-87FB-EBC9E2EDAF97}.Release|x64.ActiveCfg = Release|x64
+ {EA6488AD-445B-4835-87FB-EBC9E2EDAF97}.Release|x64.Build.0 = Release|x64
+ {EA6488AD-445B-4835-87FB-EBC9E2EDAF97}.Release|x86.ActiveCfg = Release|Win32
+ {EA6488AD-445B-4835-87FB-EBC9E2EDAF97}.Release|x86.Build.0 = Release|Win32
+ {E07B6DBE-3358-4BA0-AABF-CDD8F96AECF0}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
+ {E07B6DBE-3358-4BA0-AABF-CDD8F96AECF0}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
+ {E07B6DBE-3358-4BA0-AABF-CDD8F96AECF0}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
+ {E07B6DBE-3358-4BA0-AABF-CDD8F96AECF0}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
+ {E07B6DBE-3358-4BA0-AABF-CDD8F96AECF0}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
+ {E07B6DBE-3358-4BA0-AABF-CDD8F96AECF0}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
+ {E07B6DBE-3358-4BA0-AABF-CDD8F96AECF0}.Debug|ARM64.ActiveCfg = Debug|ARM64
+ {E07B6DBE-3358-4BA0-AABF-CDD8F96AECF0}.Debug|ARM64.Build.0 = Debug|ARM64
+ {E07B6DBE-3358-4BA0-AABF-CDD8F96AECF0}.Debug|x64.ActiveCfg = Debug|x64
+ {E07B6DBE-3358-4BA0-AABF-CDD8F96AECF0}.Debug|x64.Build.0 = Debug|x64
+ {E07B6DBE-3358-4BA0-AABF-CDD8F96AECF0}.Debug|x86.ActiveCfg = Debug|Win32
+ {E07B6DBE-3358-4BA0-AABF-CDD8F96AECF0}.Debug|x86.Build.0 = Debug|Win32
+ {E07B6DBE-3358-4BA0-AABF-CDD8F96AECF0}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
+ {E07B6DBE-3358-4BA0-AABF-CDD8F96AECF0}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
+ {E07B6DBE-3358-4BA0-AABF-CDD8F96AECF0}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
+ {E07B6DBE-3358-4BA0-AABF-CDD8F96AECF0}.Release.DLL|x64.Build.0 = Release.DLL|x64
+ {E07B6DBE-3358-4BA0-AABF-CDD8F96AECF0}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
+ {E07B6DBE-3358-4BA0-AABF-CDD8F96AECF0}.Release.DLL|x86.Build.0 = Release.DLL|Win32
+ {E07B6DBE-3358-4BA0-AABF-CDD8F96AECF0}.Release|ARM64.ActiveCfg = Release|ARM64
+ {E07B6DBE-3358-4BA0-AABF-CDD8F96AECF0}.Release|ARM64.Build.0 = Release|ARM64
+ {E07B6DBE-3358-4BA0-AABF-CDD8F96AECF0}.Release|x64.ActiveCfg = Release|x64
+ {E07B6DBE-3358-4BA0-AABF-CDD8F96AECF0}.Release|x64.Build.0 = Release|x64
+ {E07B6DBE-3358-4BA0-AABF-CDD8F96AECF0}.Release|x86.ActiveCfg = Release|Win32
+ {E07B6DBE-3358-4BA0-AABF-CDD8F96AECF0}.Release|x86.Build.0 = Release|Win32
+ {472BCBDC-62E0-441D-B2FD-0EE0FC6CEEB4}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
+ {472BCBDC-62E0-441D-B2FD-0EE0FC6CEEB4}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
+ {472BCBDC-62E0-441D-B2FD-0EE0FC6CEEB4}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
+ {472BCBDC-62E0-441D-B2FD-0EE0FC6CEEB4}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
+ {472BCBDC-62E0-441D-B2FD-0EE0FC6CEEB4}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
+ {472BCBDC-62E0-441D-B2FD-0EE0FC6CEEB4}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
+ {472BCBDC-62E0-441D-B2FD-0EE0FC6CEEB4}.Debug|ARM64.ActiveCfg = Debug|ARM64
+ {472BCBDC-62E0-441D-B2FD-0EE0FC6CEEB4}.Debug|ARM64.Build.0 = Debug|ARM64
+ {472BCBDC-62E0-441D-B2FD-0EE0FC6CEEB4}.Debug|x64.ActiveCfg = Debug|x64
+ {472BCBDC-62E0-441D-B2FD-0EE0FC6CEEB4}.Debug|x64.Build.0 = Debug|x64
+ {472BCBDC-62E0-441D-B2FD-0EE0FC6CEEB4}.Debug|x86.ActiveCfg = Debug|Win32
+ {472BCBDC-62E0-441D-B2FD-0EE0FC6CEEB4}.Debug|x86.Build.0 = Debug|Win32
+ {472BCBDC-62E0-441D-B2FD-0EE0FC6CEEB4}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
+ {472BCBDC-62E0-441D-B2FD-0EE0FC6CEEB4}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
+ {472BCBDC-62E0-441D-B2FD-0EE0FC6CEEB4}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
+ {472BCBDC-62E0-441D-B2FD-0EE0FC6CEEB4}.Release.DLL|x64.Build.0 = Release.DLL|x64
+ {472BCBDC-62E0-441D-B2FD-0EE0FC6CEEB4}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
+ {472BCBDC-62E0-441D-B2FD-0EE0FC6CEEB4}.Release.DLL|x86.Build.0 = Release.DLL|Win32
+ {472BCBDC-62E0-441D-B2FD-0EE0FC6CEEB4}.Release|ARM64.ActiveCfg = Release|ARM64
+ {472BCBDC-62E0-441D-B2FD-0EE0FC6CEEB4}.Release|ARM64.Build.0 = Release|ARM64
+ {472BCBDC-62E0-441D-B2FD-0EE0FC6CEEB4}.Release|x64.ActiveCfg = Release|x64
+ {472BCBDC-62E0-441D-B2FD-0EE0FC6CEEB4}.Release|x64.Build.0 = Release|x64
+ {472BCBDC-62E0-441D-B2FD-0EE0FC6CEEB4}.Release|x86.ActiveCfg = Release|Win32
+ {472BCBDC-62E0-441D-B2FD-0EE0FC6CEEB4}.Release|x86.Build.0 = Release|Win32
+ {589C8E9B-0BB3-4D6D-A70C-0A28E469F20E}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
+ {589C8E9B-0BB3-4D6D-A70C-0A28E469F20E}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
+ {589C8E9B-0BB3-4D6D-A70C-0A28E469F20E}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
+ {589C8E9B-0BB3-4D6D-A70C-0A28E469F20E}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
+ {589C8E9B-0BB3-4D6D-A70C-0A28E469F20E}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
+ {589C8E9B-0BB3-4D6D-A70C-0A28E469F20E}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
+ {589C8E9B-0BB3-4D6D-A70C-0A28E469F20E}.Debug|ARM64.ActiveCfg = Debug|ARM64
+ {589C8E9B-0BB3-4D6D-A70C-0A28E469F20E}.Debug|ARM64.Build.0 = Debug|ARM64
+ {589C8E9B-0BB3-4D6D-A70C-0A28E469F20E}.Debug|x64.ActiveCfg = Debug|x64
+ {589C8E9B-0BB3-4D6D-A70C-0A28E469F20E}.Debug|x64.Build.0 = Debug|x64
+ {589C8E9B-0BB3-4D6D-A70C-0A28E469F20E}.Debug|x86.ActiveCfg = Debug|Win32
+ {589C8E9B-0BB3-4D6D-A70C-0A28E469F20E}.Debug|x86.Build.0 = Debug|Win32
+ {589C8E9B-0BB3-4D6D-A70C-0A28E469F20E}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
+ {589C8E9B-0BB3-4D6D-A70C-0A28E469F20E}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
+ {589C8E9B-0BB3-4D6D-A70C-0A28E469F20E}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
+ {589C8E9B-0BB3-4D6D-A70C-0A28E469F20E}.Release.DLL|x64.Build.0 = Release.DLL|x64
+ {589C8E9B-0BB3-4D6D-A70C-0A28E469F20E}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
+ {589C8E9B-0BB3-4D6D-A70C-0A28E469F20E}.Release.DLL|x86.Build.0 = Release.DLL|Win32
+ {589C8E9B-0BB3-4D6D-A70C-0A28E469F20E}.Release|ARM64.ActiveCfg = Release|ARM64
+ {589C8E9B-0BB3-4D6D-A70C-0A28E469F20E}.Release|ARM64.Build.0 = Release|ARM64
+ {589C8E9B-0BB3-4D6D-A70C-0A28E469F20E}.Release|x64.ActiveCfg = Release|x64
+ {589C8E9B-0BB3-4D6D-A70C-0A28E469F20E}.Release|x64.Build.0 = Release|x64
+ {589C8E9B-0BB3-4D6D-A70C-0A28E469F20E}.Release|x86.ActiveCfg = Release|Win32
+ {589C8E9B-0BB3-4D6D-A70C-0A28E469F20E}.Release|x86.Build.0 = Release|Win32
+ {3AD868E6-8355-4F29-B5ED-7DE94AD786E7}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
+ {3AD868E6-8355-4F29-B5ED-7DE94AD786E7}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
+ {3AD868E6-8355-4F29-B5ED-7DE94AD786E7}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
+ {3AD868E6-8355-4F29-B5ED-7DE94AD786E7}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
+ {3AD868E6-8355-4F29-B5ED-7DE94AD786E7}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
+ {3AD868E6-8355-4F29-B5ED-7DE94AD786E7}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
+ {3AD868E6-8355-4F29-B5ED-7DE94AD786E7}.Debug|ARM64.ActiveCfg = Debug|ARM64
+ {3AD868E6-8355-4F29-B5ED-7DE94AD786E7}.Debug|ARM64.Build.0 = Debug|ARM64
+ {3AD868E6-8355-4F29-B5ED-7DE94AD786E7}.Debug|x64.ActiveCfg = Debug|x64
+ {3AD868E6-8355-4F29-B5ED-7DE94AD786E7}.Debug|x64.Build.0 = Debug|x64
+ {3AD868E6-8355-4F29-B5ED-7DE94AD786E7}.Debug|x86.ActiveCfg = Debug|Win32
+ {3AD868E6-8355-4F29-B5ED-7DE94AD786E7}.Debug|x86.Build.0 = Debug|Win32
+ {3AD868E6-8355-4F29-B5ED-7DE94AD786E7}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
+ {3AD868E6-8355-4F29-B5ED-7DE94AD786E7}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
+ {3AD868E6-8355-4F29-B5ED-7DE94AD786E7}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
+ {3AD868E6-8355-4F29-B5ED-7DE94AD786E7}.Release.DLL|x64.Build.0 = Release.DLL|x64
+ {3AD868E6-8355-4F29-B5ED-7DE94AD786E7}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
+ {3AD868E6-8355-4F29-B5ED-7DE94AD786E7}.Release.DLL|x86.Build.0 = Release.DLL|Win32
+ {3AD868E6-8355-4F29-B5ED-7DE94AD786E7}.Release|ARM64.ActiveCfg = Release|ARM64
+ {3AD868E6-8355-4F29-B5ED-7DE94AD786E7}.Release|ARM64.Build.0 = Release|ARM64
+ {3AD868E6-8355-4F29-B5ED-7DE94AD786E7}.Release|x64.ActiveCfg = Release|x64
+ {3AD868E6-8355-4F29-B5ED-7DE94AD786E7}.Release|x64.Build.0 = Release|x64
+ {3AD868E6-8355-4F29-B5ED-7DE94AD786E7}.Release|x86.ActiveCfg = Release|Win32
+ {3AD868E6-8355-4F29-B5ED-7DE94AD786E7}.Release|x86.Build.0 = Release|Win32
+ {2B78CF0A-5403-45E2-99BD-493F1679BCDB}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
+ {2B78CF0A-5403-45E2-99BD-493F1679BCDB}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
+ {2B78CF0A-5403-45E2-99BD-493F1679BCDB}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
+ {2B78CF0A-5403-45E2-99BD-493F1679BCDB}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
+ {2B78CF0A-5403-45E2-99BD-493F1679BCDB}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
+ {2B78CF0A-5403-45E2-99BD-493F1679BCDB}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
+ {2B78CF0A-5403-45E2-99BD-493F1679BCDB}.Debug|ARM64.ActiveCfg = Debug|ARM64
+ {2B78CF0A-5403-45E2-99BD-493F1679BCDB}.Debug|ARM64.Build.0 = Debug|ARM64
+ {2B78CF0A-5403-45E2-99BD-493F1679BCDB}.Debug|x64.ActiveCfg = Debug|x64
+ {2B78CF0A-5403-45E2-99BD-493F1679BCDB}.Debug|x64.Build.0 = Debug|x64
+ {2B78CF0A-5403-45E2-99BD-493F1679BCDB}.Debug|x86.ActiveCfg = Debug|Win32
+ {2B78CF0A-5403-45E2-99BD-493F1679BCDB}.Debug|x86.Build.0 = Debug|Win32
+ {2B78CF0A-5403-45E2-99BD-493F1679BCDB}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
+ {2B78CF0A-5403-45E2-99BD-493F1679BCDB}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
+ {2B78CF0A-5403-45E2-99BD-493F1679BCDB}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
+ {2B78CF0A-5403-45E2-99BD-493F1679BCDB}.Release.DLL|x64.Build.0 = Release.DLL|x64
+ {2B78CF0A-5403-45E2-99BD-493F1679BCDB}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
+ {2B78CF0A-5403-45E2-99BD-493F1679BCDB}.Release.DLL|x86.Build.0 = Release.DLL|Win32
+ {2B78CF0A-5403-45E2-99BD-493F1679BCDB}.Release|ARM64.ActiveCfg = Release|ARM64
+ {2B78CF0A-5403-45E2-99BD-493F1679BCDB}.Release|ARM64.Build.0 = Release|ARM64
+ {2B78CF0A-5403-45E2-99BD-493F1679BCDB}.Release|x64.ActiveCfg = Release|x64
+ {2B78CF0A-5403-45E2-99BD-493F1679BCDB}.Release|x64.Build.0 = Release|x64
+ {2B78CF0A-5403-45E2-99BD-493F1679BCDB}.Release|x86.ActiveCfg = Release|Win32
+ {2B78CF0A-5403-45E2-99BD-493F1679BCDB}.Release|x86.Build.0 = Release|Win32
+ {0AB968E0-E993-45CE-8875-7453C96DF583}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
+ {0AB968E0-E993-45CE-8875-7453C96DF583}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
+ {0AB968E0-E993-45CE-8875-7453C96DF583}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
+ {0AB968E0-E993-45CE-8875-7453C96DF583}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
+ {0AB968E0-E993-45CE-8875-7453C96DF583}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
+ {0AB968E0-E993-45CE-8875-7453C96DF583}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
+ {0AB968E0-E993-45CE-8875-7453C96DF583}.Debug|ARM64.ActiveCfg = Debug|ARM64
+ {0AB968E0-E993-45CE-8875-7453C96DF583}.Debug|ARM64.Build.0 = Debug|ARM64
+ {0AB968E0-E993-45CE-8875-7453C96DF583}.Debug|x64.ActiveCfg = Debug|x64
+ {0AB968E0-E993-45CE-8875-7453C96DF583}.Debug|x64.Build.0 = Debug|x64
+ {0AB968E0-E993-45CE-8875-7453C96DF583}.Debug|x86.ActiveCfg = Debug|Win32
+ {0AB968E0-E993-45CE-8875-7453C96DF583}.Debug|x86.Build.0 = Debug|Win32
+ {0AB968E0-E993-45CE-8875-7453C96DF583}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
+ {0AB968E0-E993-45CE-8875-7453C96DF583}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
+ {0AB968E0-E993-45CE-8875-7453C96DF583}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
+ {0AB968E0-E993-45CE-8875-7453C96DF583}.Release.DLL|x64.Build.0 = Release.DLL|x64
+ {0AB968E0-E993-45CE-8875-7453C96DF583}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
+ {0AB968E0-E993-45CE-8875-7453C96DF583}.Release.DLL|x86.Build.0 = Release.DLL|Win32
+ {0AB968E0-E993-45CE-8875-7453C96DF583}.Release|ARM64.ActiveCfg = Release|ARM64
+ {0AB968E0-E993-45CE-8875-7453C96DF583}.Release|ARM64.Build.0 = Release|ARM64
+ {0AB968E0-E993-45CE-8875-7453C96DF583}.Release|x64.ActiveCfg = Release|x64
+ {0AB968E0-E993-45CE-8875-7453C96DF583}.Release|x64.Build.0 = Release|x64
+ {0AB968E0-E993-45CE-8875-7453C96DF583}.Release|x86.ActiveCfg = Release|Win32
+ {0AB968E0-E993-45CE-8875-7453C96DF583}.Release|x86.Build.0 = Release|Win32
+ {25923141-9859-4AFE-8168-0DF78322FC63}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
+ {25923141-9859-4AFE-8168-0DF78322FC63}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
+ {25923141-9859-4AFE-8168-0DF78322FC63}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
+ {25923141-9859-4AFE-8168-0DF78322FC63}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
+ {25923141-9859-4AFE-8168-0DF78322FC63}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
+ {25923141-9859-4AFE-8168-0DF78322FC63}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
+ {25923141-9859-4AFE-8168-0DF78322FC63}.Debug|ARM64.ActiveCfg = Debug|ARM64
+ {25923141-9859-4AFE-8168-0DF78322FC63}.Debug|ARM64.Build.0 = Debug|ARM64
+ {25923141-9859-4AFE-8168-0DF78322FC63}.Debug|x64.ActiveCfg = Debug|x64
+ {25923141-9859-4AFE-8168-0DF78322FC63}.Debug|x64.Build.0 = Debug|x64
+ {25923141-9859-4AFE-8168-0DF78322FC63}.Debug|x86.ActiveCfg = Debug|Win32
+ {25923141-9859-4AFE-8168-0DF78322FC63}.Debug|x86.Build.0 = Debug|Win32
+ {25923141-9859-4AFE-8168-0DF78322FC63}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
+ {25923141-9859-4AFE-8168-0DF78322FC63}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
+ {25923141-9859-4AFE-8168-0DF78322FC63}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
+ {25923141-9859-4AFE-8168-0DF78322FC63}.Release.DLL|x64.Build.0 = Release.DLL|x64
+ {25923141-9859-4AFE-8168-0DF78322FC63}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
+ {25923141-9859-4AFE-8168-0DF78322FC63}.Release.DLL|x86.Build.0 = Release.DLL|Win32
+ {25923141-9859-4AFE-8168-0DF78322FC63}.Release|ARM64.ActiveCfg = Release|ARM64
+ {25923141-9859-4AFE-8168-0DF78322FC63}.Release|ARM64.Build.0 = Release|ARM64
+ {25923141-9859-4AFE-8168-0DF78322FC63}.Release|x64.ActiveCfg = Release|x64
+ {25923141-9859-4AFE-8168-0DF78322FC63}.Release|x64.Build.0 = Release|x64
+ {25923141-9859-4AFE-8168-0DF78322FC63}.Release|x86.ActiveCfg = Release|Win32
+ {25923141-9859-4AFE-8168-0DF78322FC63}.Release|x86.Build.0 = Release|Win32
+ {7E855020-7FA4-482D-B510-2E709354FE8B}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
+ {7E855020-7FA4-482D-B510-2E709354FE8B}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
+ {7E855020-7FA4-482D-B510-2E709354FE8B}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
+ {7E855020-7FA4-482D-B510-2E709354FE8B}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
+ {7E855020-7FA4-482D-B510-2E709354FE8B}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
+ {7E855020-7FA4-482D-B510-2E709354FE8B}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
+ {7E855020-7FA4-482D-B510-2E709354FE8B}.Debug|ARM64.ActiveCfg = Debug|ARM64
+ {7E855020-7FA4-482D-B510-2E709354FE8B}.Debug|ARM64.Build.0 = Debug|ARM64
+ {7E855020-7FA4-482D-B510-2E709354FE8B}.Debug|x64.ActiveCfg = Debug|x64
+ {7E855020-7FA4-482D-B510-2E709354FE8B}.Debug|x64.Build.0 = Debug|x64
+ {7E855020-7FA4-482D-B510-2E709354FE8B}.Debug|x86.ActiveCfg = Debug|Win32
+ {7E855020-7FA4-482D-B510-2E709354FE8B}.Debug|x86.Build.0 = Debug|Win32
+ {7E855020-7FA4-482D-B510-2E709354FE8B}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
+ {7E855020-7FA4-482D-B510-2E709354FE8B}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
+ {7E855020-7FA4-482D-B510-2E709354FE8B}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
+ {7E855020-7FA4-482D-B510-2E709354FE8B}.Release.DLL|x64.Build.0 = Release.DLL|x64
+ {7E855020-7FA4-482D-B510-2E709354FE8B}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
+ {7E855020-7FA4-482D-B510-2E709354FE8B}.Release.DLL|x86.Build.0 = Release.DLL|Win32
+ {7E855020-7FA4-482D-B510-2E709354FE8B}.Release|ARM64.ActiveCfg = Release|ARM64
+ {7E855020-7FA4-482D-B510-2E709354FE8B}.Release|ARM64.Build.0 = Release|ARM64
+ {7E855020-7FA4-482D-B510-2E709354FE8B}.Release|x64.ActiveCfg = Release|x64
+ {7E855020-7FA4-482D-B510-2E709354FE8B}.Release|x64.Build.0 = Release|x64
+ {7E855020-7FA4-482D-B510-2E709354FE8B}.Release|x86.ActiveCfg = Release|Win32
+ {7E855020-7FA4-482D-B510-2E709354FE8B}.Release|x86.Build.0 = Release|Win32
+ {9782E0C8-2BD3-4F67-B420-21CF19CA2435}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
+ {9782E0C8-2BD3-4F67-B420-21CF19CA2435}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
+ {9782E0C8-2BD3-4F67-B420-21CF19CA2435}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
+ {9782E0C8-2BD3-4F67-B420-21CF19CA2435}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
+ {9782E0C8-2BD3-4F67-B420-21CF19CA2435}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
+ {9782E0C8-2BD3-4F67-B420-21CF19CA2435}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
+ {9782E0C8-2BD3-4F67-B420-21CF19CA2435}.Debug|ARM64.ActiveCfg = Debug|ARM64
+ {9782E0C8-2BD3-4F67-B420-21CF19CA2435}.Debug|ARM64.Build.0 = Debug|ARM64
+ {9782E0C8-2BD3-4F67-B420-21CF19CA2435}.Debug|x64.ActiveCfg = Debug|x64
+ {9782E0C8-2BD3-4F67-B420-21CF19CA2435}.Debug|x64.Build.0 = Debug|x64
+ {9782E0C8-2BD3-4F67-B420-21CF19CA2435}.Debug|x86.ActiveCfg = Debug|Win32
+ {9782E0C8-2BD3-4F67-B420-21CF19CA2435}.Debug|x86.Build.0 = Debug|Win32
+ {9782E0C8-2BD3-4F67-B420-21CF19CA2435}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
+ {9782E0C8-2BD3-4F67-B420-21CF19CA2435}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
+ {9782E0C8-2BD3-4F67-B420-21CF19CA2435}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
+ {9782E0C8-2BD3-4F67-B420-21CF19CA2435}.Release.DLL|x64.Build.0 = Release.DLL|x64
+ {9782E0C8-2BD3-4F67-B420-21CF19CA2435}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
+ {9782E0C8-2BD3-4F67-B420-21CF19CA2435}.Release.DLL|x86.Build.0 = Release.DLL|Win32
+ {9782E0C8-2BD3-4F67-B420-21CF19CA2435}.Release|ARM64.ActiveCfg = Release|ARM64
+ {9782E0C8-2BD3-4F67-B420-21CF19CA2435}.Release|ARM64.Build.0 = Release|ARM64
+ {9782E0C8-2BD3-4F67-B420-21CF19CA2435}.Release|x64.ActiveCfg = Release|x64
+ {9782E0C8-2BD3-4F67-B420-21CF19CA2435}.Release|x64.Build.0 = Release|x64
+ {9782E0C8-2BD3-4F67-B420-21CF19CA2435}.Release|x86.ActiveCfg = Release|Win32
+ {9782E0C8-2BD3-4F67-B420-21CF19CA2435}.Release|x86.Build.0 = Release|Win32
+ {9F4135E3-9814-452C-9B35-0EFBCD792B49}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
+ {9F4135E3-9814-452C-9B35-0EFBCD792B49}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
+ {9F4135E3-9814-452C-9B35-0EFBCD792B49}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
+ {9F4135E3-9814-452C-9B35-0EFBCD792B49}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
+ {9F4135E3-9814-452C-9B35-0EFBCD792B49}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
+ {9F4135E3-9814-452C-9B35-0EFBCD792B49}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
+ {9F4135E3-9814-452C-9B35-0EFBCD792B49}.Debug|ARM64.ActiveCfg = Debug|ARM64
+ {9F4135E3-9814-452C-9B35-0EFBCD792B49}.Debug|ARM64.Build.0 = Debug|ARM64
+ {9F4135E3-9814-452C-9B35-0EFBCD792B49}.Debug|x64.ActiveCfg = Debug|x64
+ {9F4135E3-9814-452C-9B35-0EFBCD792B49}.Debug|x64.Build.0 = Debug|x64
+ {9F4135E3-9814-452C-9B35-0EFBCD792B49}.Debug|x86.ActiveCfg = Debug|Win32
+ {9F4135E3-9814-452C-9B35-0EFBCD792B49}.Debug|x86.Build.0 = Debug|Win32
+ {9F4135E3-9814-452C-9B35-0EFBCD792B49}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
+ {9F4135E3-9814-452C-9B35-0EFBCD792B49}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
+ {9F4135E3-9814-452C-9B35-0EFBCD792B49}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
+ {9F4135E3-9814-452C-9B35-0EFBCD792B49}.Release.DLL|x64.Build.0 = Release.DLL|x64
+ {9F4135E3-9814-452C-9B35-0EFBCD792B49}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
+ {9F4135E3-9814-452C-9B35-0EFBCD792B49}.Release.DLL|x86.Build.0 = Release.DLL|Win32
+ {9F4135E3-9814-452C-9B35-0EFBCD792B49}.Release|ARM64.ActiveCfg = Release|ARM64
+ {9F4135E3-9814-452C-9B35-0EFBCD792B49}.Release|ARM64.Build.0 = Release|ARM64
+ {9F4135E3-9814-452C-9B35-0EFBCD792B49}.Release|x64.ActiveCfg = Release|x64
+ {9F4135E3-9814-452C-9B35-0EFBCD792B49}.Release|x64.Build.0 = Release|x64
+ {9F4135E3-9814-452C-9B35-0EFBCD792B49}.Release|x86.ActiveCfg = Release|Win32
+ {9F4135E3-9814-452C-9B35-0EFBCD792B49}.Release|x86.Build.0 = Release|Win32
+ {C45343E6-DAB6-4F3A-A00A-8BED71A098BE}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
+ {C45343E6-DAB6-4F3A-A00A-8BED71A098BE}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
+ {C45343E6-DAB6-4F3A-A00A-8BED71A098BE}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
+ {C45343E6-DAB6-4F3A-A00A-8BED71A098BE}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
+ {C45343E6-DAB6-4F3A-A00A-8BED71A098BE}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
+ {C45343E6-DAB6-4F3A-A00A-8BED71A098BE}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
+ {C45343E6-DAB6-4F3A-A00A-8BED71A098BE}.Debug|ARM64.ActiveCfg = Debug|ARM64
+ {C45343E6-DAB6-4F3A-A00A-8BED71A098BE}.Debug|ARM64.Build.0 = Debug|ARM64
+ {C45343E6-DAB6-4F3A-A00A-8BED71A098BE}.Debug|x64.ActiveCfg = Debug|x64
+ {C45343E6-DAB6-4F3A-A00A-8BED71A098BE}.Debug|x64.Build.0 = Debug|x64
+ {C45343E6-DAB6-4F3A-A00A-8BED71A098BE}.Debug|x86.ActiveCfg = Debug|Win32
+ {C45343E6-DAB6-4F3A-A00A-8BED71A098BE}.Debug|x86.Build.0 = Debug|Win32
+ {C45343E6-DAB6-4F3A-A00A-8BED71A098BE}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
+ {C45343E6-DAB6-4F3A-A00A-8BED71A098BE}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
+ {C45343E6-DAB6-4F3A-A00A-8BED71A098BE}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
+ {C45343E6-DAB6-4F3A-A00A-8BED71A098BE}.Release.DLL|x64.Build.0 = Release.DLL|x64
+ {C45343E6-DAB6-4F3A-A00A-8BED71A098BE}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
+ {C45343E6-DAB6-4F3A-A00A-8BED71A098BE}.Release.DLL|x86.Build.0 = Release.DLL|Win32
+ {C45343E6-DAB6-4F3A-A00A-8BED71A098BE}.Release|ARM64.ActiveCfg = Release|ARM64
+ {C45343E6-DAB6-4F3A-A00A-8BED71A098BE}.Release|ARM64.Build.0 = Release|ARM64
+ {C45343E6-DAB6-4F3A-A00A-8BED71A098BE}.Release|x64.ActiveCfg = Release|x64
+ {C45343E6-DAB6-4F3A-A00A-8BED71A098BE}.Release|x64.Build.0 = Release|x64
+ {C45343E6-DAB6-4F3A-A00A-8BED71A098BE}.Release|x86.ActiveCfg = Release|Win32
+ {C45343E6-DAB6-4F3A-A00A-8BED71A098BE}.Release|x86.Build.0 = Release|Win32
+ {B19DD336-538E-4091-A559-EAA717FEC899}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
+ {B19DD336-538E-4091-A559-EAA717FEC899}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
+ {B19DD336-538E-4091-A559-EAA717FEC899}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
+ {B19DD336-538E-4091-A559-EAA717FEC899}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
+ {B19DD336-538E-4091-A559-EAA717FEC899}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
+ {B19DD336-538E-4091-A559-EAA717FEC899}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
+ {B19DD336-538E-4091-A559-EAA717FEC899}.Debug|ARM64.ActiveCfg = Debug|ARM64
+ {B19DD336-538E-4091-A559-EAA717FEC899}.Debug|ARM64.Build.0 = Debug|ARM64
+ {B19DD336-538E-4091-A559-EAA717FEC899}.Debug|x64.ActiveCfg = Debug|x64
+ {B19DD336-538E-4091-A559-EAA717FEC899}.Debug|x64.Build.0 = Debug|x64
+ {B19DD336-538E-4091-A559-EAA717FEC899}.Debug|x86.ActiveCfg = Debug|Win32
+ {B19DD336-538E-4091-A559-EAA717FEC899}.Debug|x86.Build.0 = Debug|Win32
+ {B19DD336-538E-4091-A559-EAA717FEC899}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
+ {B19DD336-538E-4091-A559-EAA717FEC899}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
+ {B19DD336-538E-4091-A559-EAA717FEC899}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
+ {B19DD336-538E-4091-A559-EAA717FEC899}.Release.DLL|x64.Build.0 = Release.DLL|x64
+ {B19DD336-538E-4091-A559-EAA717FEC899}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
+ {B19DD336-538E-4091-A559-EAA717FEC899}.Release.DLL|x86.Build.0 = Release.DLL|Win32
+ {B19DD336-538E-4091-A559-EAA717FEC899}.Release|ARM64.ActiveCfg = Release|ARM64
+ {B19DD336-538E-4091-A559-EAA717FEC899}.Release|ARM64.Build.0 = Release|ARM64
+ {B19DD336-538E-4091-A559-EAA717FEC899}.Release|x64.ActiveCfg = Release|x64
+ {B19DD336-538E-4091-A559-EAA717FEC899}.Release|x64.Build.0 = Release|x64
+ {B19DD336-538E-4091-A559-EAA717FEC899}.Release|x86.ActiveCfg = Release|Win32
+ {B19DD336-538E-4091-A559-EAA717FEC899}.Release|x86.Build.0 = Release|Win32
+ {0BF60202-43F7-48E9-8717-D31E56FA5BE0}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
+ {0BF60202-43F7-48E9-8717-D31E56FA5BE0}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
+ {0BF60202-43F7-48E9-8717-D31E56FA5BE0}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
+ {0BF60202-43F7-48E9-8717-D31E56FA5BE0}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
+ {0BF60202-43F7-48E9-8717-D31E56FA5BE0}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
+ {0BF60202-43F7-48E9-8717-D31E56FA5BE0}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
+ {0BF60202-43F7-48E9-8717-D31E56FA5BE0}.Debug|ARM64.ActiveCfg = Debug|ARM64
+ {0BF60202-43F7-48E9-8717-D31E56FA5BE0}.Debug|ARM64.Build.0 = Debug|ARM64
+ {0BF60202-43F7-48E9-8717-D31E56FA5BE0}.Debug|x64.ActiveCfg = Debug|x64
+ {0BF60202-43F7-48E9-8717-D31E56FA5BE0}.Debug|x64.Build.0 = Debug|x64
+ {0BF60202-43F7-48E9-8717-D31E56FA5BE0}.Debug|x86.ActiveCfg = Debug|Win32
+ {0BF60202-43F7-48E9-8717-D31E56FA5BE0}.Debug|x86.Build.0 = Debug|Win32
+ {0BF60202-43F7-48E9-8717-D31E56FA5BE0}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
+ {0BF60202-43F7-48E9-8717-D31E56FA5BE0}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
+ {0BF60202-43F7-48E9-8717-D31E56FA5BE0}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
+ {0BF60202-43F7-48E9-8717-D31E56FA5BE0}.Release.DLL|x64.Build.0 = Release.DLL|x64
+ {0BF60202-43F7-48E9-8717-D31E56FA5BE0}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
+ {0BF60202-43F7-48E9-8717-D31E56FA5BE0}.Release.DLL|x86.Build.0 = Release.DLL|Win32
+ {0BF60202-43F7-48E9-8717-D31E56FA5BE0}.Release|ARM64.ActiveCfg = Release|ARM64
+ {0BF60202-43F7-48E9-8717-D31E56FA5BE0}.Release|ARM64.Build.0 = Release|ARM64
+ {0BF60202-43F7-48E9-8717-D31E56FA5BE0}.Release|x64.ActiveCfg = Release|x64
+ {0BF60202-43F7-48E9-8717-D31E56FA5BE0}.Release|x64.Build.0 = Release|x64
+ {0BF60202-43F7-48E9-8717-D31E56FA5BE0}.Release|x86.ActiveCfg = Release|Win32
+ {0BF60202-43F7-48E9-8717-D31E56FA5BE0}.Release|x86.Build.0 = Release|Win32
+ {4E863E5B-0B95-43BE-8D4F-B9EB6C394FEC}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
+ {4E863E5B-0B95-43BE-8D4F-B9EB6C394FEC}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
+ {4E863E5B-0B95-43BE-8D4F-B9EB6C394FEC}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
+ {4E863E5B-0B95-43BE-8D4F-B9EB6C394FEC}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
+ {4E863E5B-0B95-43BE-8D4F-B9EB6C394FEC}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
+ {4E863E5B-0B95-43BE-8D4F-B9EB6C394FEC}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
+ {4E863E5B-0B95-43BE-8D4F-B9EB6C394FEC}.Debug|ARM64.ActiveCfg = Debug|ARM64
+ {4E863E5B-0B95-43BE-8D4F-B9EB6C394FEC}.Debug|ARM64.Build.0 = Debug|ARM64
+ {4E863E5B-0B95-43BE-8D4F-B9EB6C394FEC}.Debug|x64.ActiveCfg = Debug|x64
+ {4E863E5B-0B95-43BE-8D4F-B9EB6C394FEC}.Debug|x64.Build.0 = Debug|x64
+ {4E863E5B-0B95-43BE-8D4F-B9EB6C394FEC}.Debug|x86.ActiveCfg = Debug|Win32
+ {4E863E5B-0B95-43BE-8D4F-B9EB6C394FEC}.Debug|x86.Build.0 = Debug|Win32
+ {4E863E5B-0B95-43BE-8D4F-B9EB6C394FEC}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
+ {4E863E5B-0B95-43BE-8D4F-B9EB6C394FEC}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
+ {4E863E5B-0B95-43BE-8D4F-B9EB6C394FEC}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
+ {4E863E5B-0B95-43BE-8D4F-B9EB6C394FEC}.Release.DLL|x64.Build.0 = Release.DLL|x64
+ {4E863E5B-0B95-43BE-8D4F-B9EB6C394FEC}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
+ {4E863E5B-0B95-43BE-8D4F-B9EB6C394FEC}.Release.DLL|x86.Build.0 = Release.DLL|Win32
+ {4E863E5B-0B95-43BE-8D4F-B9EB6C394FEC}.Release|ARM64.ActiveCfg = Release|ARM64
+ {4E863E5B-0B95-43BE-8D4F-B9EB6C394FEC}.Release|ARM64.Build.0 = Release|ARM64
+ {4E863E5B-0B95-43BE-8D4F-B9EB6C394FEC}.Release|x64.ActiveCfg = Release|x64
+ {4E863E5B-0B95-43BE-8D4F-B9EB6C394FEC}.Release|x64.Build.0 = Release|x64
+ {4E863E5B-0B95-43BE-8D4F-B9EB6C394FEC}.Release|x86.ActiveCfg = Release|Win32
+ {4E863E5B-0B95-43BE-8D4F-B9EB6C394FEC}.Release|x86.Build.0 = Release|Win32
+ {6D75CD88-1A03-4955-B8C7-ACFC3742154F}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
+ {6D75CD88-1A03-4955-B8C7-ACFC3742154F}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
+ {6D75CD88-1A03-4955-B8C7-ACFC3742154F}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
+ {6D75CD88-1A03-4955-B8C7-ACFC3742154F}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
+ {6D75CD88-1A03-4955-B8C7-ACFC3742154F}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
+ {6D75CD88-1A03-4955-B8C7-ACFC3742154F}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
+ {6D75CD88-1A03-4955-B8C7-ACFC3742154F}.Debug|ARM64.ActiveCfg = Debug|ARM64
+ {6D75CD88-1A03-4955-B8C7-ACFC3742154F}.Debug|ARM64.Build.0 = Debug|ARM64
+ {6D75CD88-1A03-4955-B8C7-ACFC3742154F}.Debug|x64.ActiveCfg = Debug|x64
+ {6D75CD88-1A03-4955-B8C7-ACFC3742154F}.Debug|x64.Build.0 = Debug|x64
+ {6D75CD88-1A03-4955-B8C7-ACFC3742154F}.Debug|x86.ActiveCfg = Debug|Win32
+ {6D75CD88-1A03-4955-B8C7-ACFC3742154F}.Debug|x86.Build.0 = Debug|Win32
+ {6D75CD88-1A03-4955-B8C7-ACFC3742154F}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
+ {6D75CD88-1A03-4955-B8C7-ACFC3742154F}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
+ {6D75CD88-1A03-4955-B8C7-ACFC3742154F}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
+ {6D75CD88-1A03-4955-B8C7-ACFC3742154F}.Release.DLL|x64.Build.0 = Release.DLL|x64
+ {6D75CD88-1A03-4955-B8C7-ACFC3742154F}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
+ {6D75CD88-1A03-4955-B8C7-ACFC3742154F}.Release.DLL|x86.Build.0 = Release.DLL|Win32
+ {6D75CD88-1A03-4955-B8C7-ACFC3742154F}.Release|ARM64.ActiveCfg = Release|ARM64
+ {6D75CD88-1A03-4955-B8C7-ACFC3742154F}.Release|ARM64.Build.0 = Release|ARM64
+ {6D75CD88-1A03-4955-B8C7-ACFC3742154F}.Release|x64.ActiveCfg = Release|x64
+ {6D75CD88-1A03-4955-B8C7-ACFC3742154F}.Release|x64.Build.0 = Release|x64
+ {6D75CD88-1A03-4955-B8C7-ACFC3742154F}.Release|x86.ActiveCfg = Release|Win32
+ {6D75CD88-1A03-4955-B8C7-ACFC3742154F}.Release|x86.Build.0 = Release|Win32
+ {8DD0EB7E-668E-452D-91D7-906C64A9C8AC}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
+ {8DD0EB7E-668E-452D-91D7-906C64A9C8AC}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
+ {8DD0EB7E-668E-452D-91D7-906C64A9C8AC}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
+ {8DD0EB7E-668E-452D-91D7-906C64A9C8AC}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
+ {8DD0EB7E-668E-452D-91D7-906C64A9C8AC}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
+ {8DD0EB7E-668E-452D-91D7-906C64A9C8AC}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
+ {8DD0EB7E-668E-452D-91D7-906C64A9C8AC}.Debug|ARM64.ActiveCfg = Debug|ARM64
+ {8DD0EB7E-668E-452D-91D7-906C64A9C8AC}.Debug|ARM64.Build.0 = Debug|ARM64
+ {8DD0EB7E-668E-452D-91D7-906C64A9C8AC}.Debug|x64.ActiveCfg = Debug|x64
+ {8DD0EB7E-668E-452D-91D7-906C64A9C8AC}.Debug|x64.Build.0 = Debug|x64
+ {8DD0EB7E-668E-452D-91D7-906C64A9C8AC}.Debug|x86.ActiveCfg = Debug|Win32
+ {8DD0EB7E-668E-452D-91D7-906C64A9C8AC}.Debug|x86.Build.0 = Debug|Win32
+ {8DD0EB7E-668E-452D-91D7-906C64A9C8AC}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
+ {8DD0EB7E-668E-452D-91D7-906C64A9C8AC}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
+ {8DD0EB7E-668E-452D-91D7-906C64A9C8AC}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
+ {8DD0EB7E-668E-452D-91D7-906C64A9C8AC}.Release.DLL|x64.Build.0 = Release.DLL|x64
+ {8DD0EB7E-668E-452D-91D7-906C64A9C8AC}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
+ {8DD0EB7E-668E-452D-91D7-906C64A9C8AC}.Release.DLL|x86.Build.0 = Release.DLL|Win32
+ {8DD0EB7E-668E-452D-91D7-906C64A9C8AC}.Release|ARM64.ActiveCfg = Release|ARM64
+ {8DD0EB7E-668E-452D-91D7-906C64A9C8AC}.Release|ARM64.Build.0 = Release|ARM64
+ {8DD0EB7E-668E-452D-91D7-906C64A9C8AC}.Release|x64.ActiveCfg = Release|x64
+ {8DD0EB7E-668E-452D-91D7-906C64A9C8AC}.Release|x64.Build.0 = Release|x64
+ {8DD0EB7E-668E-452D-91D7-906C64A9C8AC}.Release|x86.ActiveCfg = Release|Win32
+ {8DD0EB7E-668E-452D-91D7-906C64A9C8AC}.Release|x86.Build.0 = Release|Win32
+ {F6FD9C75-AAA7-48C9-B19D-FD37C8FB9B7E}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
+ {F6FD9C75-AAA7-48C9-B19D-FD37C8FB9B7E}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
+ {F6FD9C75-AAA7-48C9-B19D-FD37C8FB9B7E}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
+ {F6FD9C75-AAA7-48C9-B19D-FD37C8FB9B7E}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
+ {F6FD9C75-AAA7-48C9-B19D-FD37C8FB9B7E}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
+ {F6FD9C75-AAA7-48C9-B19D-FD37C8FB9B7E}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
+ {F6FD9C75-AAA7-48C9-B19D-FD37C8FB9B7E}.Debug|ARM64.ActiveCfg = Debug|ARM64
+ {F6FD9C75-AAA7-48C9-B19D-FD37C8FB9B7E}.Debug|ARM64.Build.0 = Debug|ARM64
+ {F6FD9C75-AAA7-48C9-B19D-FD37C8FB9B7E}.Debug|x64.ActiveCfg = Debug|x64
+ {F6FD9C75-AAA7-48C9-B19D-FD37C8FB9B7E}.Debug|x64.Build.0 = Debug|x64
+ {F6FD9C75-AAA7-48C9-B19D-FD37C8FB9B7E}.Debug|x86.ActiveCfg = Debug|Win32
+ {F6FD9C75-AAA7-48C9-B19D-FD37C8FB9B7E}.Debug|x86.Build.0 = Debug|Win32
+ {F6FD9C75-AAA7-48C9-B19D-FD37C8FB9B7E}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
+ {F6FD9C75-AAA7-48C9-B19D-FD37C8FB9B7E}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
+ {F6FD9C75-AAA7-48C9-B19D-FD37C8FB9B7E}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
+ {F6FD9C75-AAA7-48C9-B19D-FD37C8FB9B7E}.Release.DLL|x64.Build.0 = Release.DLL|x64
+ {F6FD9C75-AAA7-48C9-B19D-FD37C8FB9B7E}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
+ {F6FD9C75-AAA7-48C9-B19D-FD37C8FB9B7E}.Release.DLL|x86.Build.0 = Release.DLL|Win32
+ {F6FD9C75-AAA7-48C9-B19D-FD37C8FB9B7E}.Release|ARM64.ActiveCfg = Release|ARM64
+ {F6FD9C75-AAA7-48C9-B19D-FD37C8FB9B7E}.Release|ARM64.Build.0 = Release|ARM64
+ {F6FD9C75-AAA7-48C9-B19D-FD37C8FB9B7E}.Release|x64.ActiveCfg = Release|x64
+ {F6FD9C75-AAA7-48C9-B19D-FD37C8FB9B7E}.Release|x64.Build.0 = Release|x64
+ {F6FD9C75-AAA7-48C9-B19D-FD37C8FB9B7E}.Release|x86.ActiveCfg = Release|Win32
+ {F6FD9C75-AAA7-48C9-B19D-FD37C8FB9B7E}.Release|x86.Build.0 = Release|Win32
+ {1FE8758D-7E8A-41F3-9B6D-FD50E9A2A03D}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
+ {1FE8758D-7E8A-41F3-9B6D-FD50E9A2A03D}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
+ {1FE8758D-7E8A-41F3-9B6D-FD50E9A2A03D}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
+ {1FE8758D-7E8A-41F3-9B6D-FD50E9A2A03D}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
+ {1FE8758D-7E8A-41F3-9B6D-FD50E9A2A03D}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
+ {1FE8758D-7E8A-41F3-9B6D-FD50E9A2A03D}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
+ {1FE8758D-7E8A-41F3-9B6D-FD50E9A2A03D}.Debug|ARM64.ActiveCfg = Debug|ARM64
+ {1FE8758D-7E8A-41F3-9B6D-FD50E9A2A03D}.Debug|ARM64.Build.0 = Debug|ARM64
+ {1FE8758D-7E8A-41F3-9B6D-FD50E9A2A03D}.Debug|x64.ActiveCfg = Debug|x64
+ {1FE8758D-7E8A-41F3-9B6D-FD50E9A2A03D}.Debug|x64.Build.0 = Debug|x64
+ {1FE8758D-7E8A-41F3-9B6D-FD50E9A2A03D}.Debug|x86.ActiveCfg = Debug|Win32
+ {1FE8758D-7E8A-41F3-9B6D-FD50E9A2A03D}.Debug|x86.Build.0 = Debug|Win32
+ {1FE8758D-7E8A-41F3-9B6D-FD50E9A2A03D}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
+ {1FE8758D-7E8A-41F3-9B6D-FD50E9A2A03D}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
+ {1FE8758D-7E8A-41F3-9B6D-FD50E9A2A03D}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
+ {1FE8758D-7E8A-41F3-9B6D-FD50E9A2A03D}.Release.DLL|x64.Build.0 = Release.DLL|x64
+ {1FE8758D-7E8A-41F3-9B6D-FD50E9A2A03D}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
+ {1FE8758D-7E8A-41F3-9B6D-FD50E9A2A03D}.Release.DLL|x86.Build.0 = Release.DLL|Win32
+ {1FE8758D-7E8A-41F3-9B6D-FD50E9A2A03D}.Release|ARM64.ActiveCfg = Release|ARM64
+ {1FE8758D-7E8A-41F3-9B6D-FD50E9A2A03D}.Release|ARM64.Build.0 = Release|ARM64
+ {1FE8758D-7E8A-41F3-9B6D-FD50E9A2A03D}.Release|x64.ActiveCfg = Release|x64
+ {1FE8758D-7E8A-41F3-9B6D-FD50E9A2A03D}.Release|x64.Build.0 = Release|x64
+ {1FE8758D-7E8A-41F3-9B6D-FD50E9A2A03D}.Release|x86.ActiveCfg = Release|Win32
+ {1FE8758D-7E8A-41F3-9B6D-FD50E9A2A03D}.Release|x86.Build.0 = Release|Win32
+ {25BCB876-B60A-499B-9046-E9801CFD7780}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
+ {25BCB876-B60A-499B-9046-E9801CFD7780}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
+ {25BCB876-B60A-499B-9046-E9801CFD7780}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
+ {25BCB876-B60A-499B-9046-E9801CFD7780}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
+ {25BCB876-B60A-499B-9046-E9801CFD7780}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
+ {25BCB876-B60A-499B-9046-E9801CFD7780}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
+ {25BCB876-B60A-499B-9046-E9801CFD7780}.Debug|ARM64.ActiveCfg = Debug|ARM64
+ {25BCB876-B60A-499B-9046-E9801CFD7780}.Debug|ARM64.Build.0 = Debug|ARM64
+ {25BCB876-B60A-499B-9046-E9801CFD7780}.Debug|x64.ActiveCfg = Debug|x64
+ {25BCB876-B60A-499B-9046-E9801CFD7780}.Debug|x64.Build.0 = Debug|x64
+ {25BCB876-B60A-499B-9046-E9801CFD7780}.Debug|x86.ActiveCfg = Debug|Win32
+ {25BCB876-B60A-499B-9046-E9801CFD7780}.Debug|x86.Build.0 = Debug|Win32
+ {25BCB876-B60A-499B-9046-E9801CFD7780}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
+ {25BCB876-B60A-499B-9046-E9801CFD7780}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
+ {25BCB876-B60A-499B-9046-E9801CFD7780}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
+ {25BCB876-B60A-499B-9046-E9801CFD7780}.Release.DLL|x64.Build.0 = Release.DLL|x64
+ {25BCB876-B60A-499B-9046-E9801CFD7780}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
+ {25BCB876-B60A-499B-9046-E9801CFD7780}.Release.DLL|x86.Build.0 = Release.DLL|Win32
+ {25BCB876-B60A-499B-9046-E9801CFD7780}.Release|ARM64.ActiveCfg = Release|ARM64
+ {25BCB876-B60A-499B-9046-E9801CFD7780}.Release|ARM64.Build.0 = Release|ARM64
+ {25BCB876-B60A-499B-9046-E9801CFD7780}.Release|x64.ActiveCfg = Release|x64
+ {25BCB876-B60A-499B-9046-E9801CFD7780}.Release|x64.Build.0 = Release|x64
+ {25BCB876-B60A-499B-9046-E9801CFD7780}.Release|x86.ActiveCfg = Release|Win32
+ {25BCB876-B60A-499B-9046-E9801CFD7780}.Release|x86.Build.0 = Release|Win32
+ {56FB0A45-145F-4EAE-B2C8-E5833E682D8F}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
+ {56FB0A45-145F-4EAE-B2C8-E5833E682D8F}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
+ {56FB0A45-145F-4EAE-B2C8-E5833E682D8F}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
+ {56FB0A45-145F-4EAE-B2C8-E5833E682D8F}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
+ {56FB0A45-145F-4EAE-B2C8-E5833E682D8F}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
+ {56FB0A45-145F-4EAE-B2C8-E5833E682D8F}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
+ {56FB0A45-145F-4EAE-B2C8-E5833E682D8F}.Debug|ARM64.ActiveCfg = Debug|ARM64
+ {56FB0A45-145F-4EAE-B2C8-E5833E682D8F}.Debug|ARM64.Build.0 = Debug|ARM64
+ {56FB0A45-145F-4EAE-B2C8-E5833E682D8F}.Debug|x64.ActiveCfg = Debug|x64
+ {56FB0A45-145F-4EAE-B2C8-E5833E682D8F}.Debug|x64.Build.0 = Debug|x64
+ {56FB0A45-145F-4EAE-B2C8-E5833E682D8F}.Debug|x86.ActiveCfg = Debug|Win32
+ {56FB0A45-145F-4EAE-B2C8-E5833E682D8F}.Debug|x86.Build.0 = Debug|Win32
+ {56FB0A45-145F-4EAE-B2C8-E5833E682D8F}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
+ {56FB0A45-145F-4EAE-B2C8-E5833E682D8F}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
+ {56FB0A45-145F-4EAE-B2C8-E5833E682D8F}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
+ {56FB0A45-145F-4EAE-B2C8-E5833E682D8F}.Release.DLL|x64.Build.0 = Release.DLL|x64
+ {56FB0A45-145F-4EAE-B2C8-E5833E682D8F}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
+ {56FB0A45-145F-4EAE-B2C8-E5833E682D8F}.Release.DLL|x86.Build.0 = Release.DLL|Win32
+ {56FB0A45-145F-4EAE-B2C8-E5833E682D8F}.Release|ARM64.ActiveCfg = Release|ARM64
+ {56FB0A45-145F-4EAE-B2C8-E5833E682D8F}.Release|ARM64.Build.0 = Release|ARM64
+ {56FB0A45-145F-4EAE-B2C8-E5833E682D8F}.Release|x64.ActiveCfg = Release|x64
+ {56FB0A45-145F-4EAE-B2C8-E5833E682D8F}.Release|x64.Build.0 = Release|x64
+ {56FB0A45-145F-4EAE-B2C8-E5833E682D8F}.Release|x86.ActiveCfg = Release|Win32
+ {56FB0A45-145F-4EAE-B2C8-E5833E682D8F}.Release|x86.Build.0 = Release|Win32
+ {2BB0C1D4-9298-45AC-B244-67A99769A292}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
+ {2BB0C1D4-9298-45AC-B244-67A99769A292}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
+ {2BB0C1D4-9298-45AC-B244-67A99769A292}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
+ {2BB0C1D4-9298-45AC-B244-67A99769A292}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
+ {2BB0C1D4-9298-45AC-B244-67A99769A292}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
+ {2BB0C1D4-9298-45AC-B244-67A99769A292}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
+ {2BB0C1D4-9298-45AC-B244-67A99769A292}.Debug|ARM64.ActiveCfg = Debug|ARM64
+ {2BB0C1D4-9298-45AC-B244-67A99769A292}.Debug|ARM64.Build.0 = Debug|ARM64
+ {2BB0C1D4-9298-45AC-B244-67A99769A292}.Debug|x64.ActiveCfg = Debug|x64
+ {2BB0C1D4-9298-45AC-B244-67A99769A292}.Debug|x64.Build.0 = Debug|x64
+ {2BB0C1D4-9298-45AC-B244-67A99769A292}.Debug|x86.ActiveCfg = Debug|Win32
+ {2BB0C1D4-9298-45AC-B244-67A99769A292}.Debug|x86.Build.0 = Debug|Win32
+ {2BB0C1D4-9298-45AC-B244-67A99769A292}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
+ {2BB0C1D4-9298-45AC-B244-67A99769A292}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
+ {2BB0C1D4-9298-45AC-B244-67A99769A292}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
+ {2BB0C1D4-9298-45AC-B244-67A99769A292}.Release.DLL|x64.Build.0 = Release.DLL|x64
+ {2BB0C1D4-9298-45AC-B244-67A99769A292}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
+ {2BB0C1D4-9298-45AC-B244-67A99769A292}.Release.DLL|x86.Build.0 = Release.DLL|Win32
+ {2BB0C1D4-9298-45AC-B244-67A99769A292}.Release|ARM64.ActiveCfg = Release|ARM64
+ {2BB0C1D4-9298-45AC-B244-67A99769A292}.Release|ARM64.Build.0 = Release|ARM64
+ {2BB0C1D4-9298-45AC-B244-67A99769A292}.Release|x64.ActiveCfg = Release|x64
+ {2BB0C1D4-9298-45AC-B244-67A99769A292}.Release|x64.Build.0 = Release|x64
+ {2BB0C1D4-9298-45AC-B244-67A99769A292}.Release|x86.ActiveCfg = Release|Win32
+ {2BB0C1D4-9298-45AC-B244-67A99769A292}.Release|x86.Build.0 = Release|Win32
+ {99A40FC5-9DB0-4B80-8D97-867EF00FA2CB}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
+ {99A40FC5-9DB0-4B80-8D97-867EF00FA2CB}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
+ {99A40FC5-9DB0-4B80-8D97-867EF00FA2CB}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
+ {99A40FC5-9DB0-4B80-8D97-867EF00FA2CB}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
+ {99A40FC5-9DB0-4B80-8D97-867EF00FA2CB}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
+ {99A40FC5-9DB0-4B80-8D97-867EF00FA2CB}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
+ {99A40FC5-9DB0-4B80-8D97-867EF00FA2CB}.Debug|ARM64.ActiveCfg = Debug|ARM64
+ {99A40FC5-9DB0-4B80-8D97-867EF00FA2CB}.Debug|ARM64.Build.0 = Debug|ARM64
+ {99A40FC5-9DB0-4B80-8D97-867EF00FA2CB}.Debug|x64.ActiveCfg = Debug|x64
+ {99A40FC5-9DB0-4B80-8D97-867EF00FA2CB}.Debug|x64.Build.0 = Debug|x64
+ {99A40FC5-9DB0-4B80-8D97-867EF00FA2CB}.Debug|x86.ActiveCfg = Debug|Win32
+ {99A40FC5-9DB0-4B80-8D97-867EF00FA2CB}.Debug|x86.Build.0 = Debug|Win32
+ {99A40FC5-9DB0-4B80-8D97-867EF00FA2CB}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
+ {99A40FC5-9DB0-4B80-8D97-867EF00FA2CB}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
+ {99A40FC5-9DB0-4B80-8D97-867EF00FA2CB}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
+ {99A40FC5-9DB0-4B80-8D97-867EF00FA2CB}.Release.DLL|x64.Build.0 = Release.DLL|x64
+ {99A40FC5-9DB0-4B80-8D97-867EF00FA2CB}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
+ {99A40FC5-9DB0-4B80-8D97-867EF00FA2CB}.Release.DLL|x86.Build.0 = Release.DLL|Win32
+ {99A40FC5-9DB0-4B80-8D97-867EF00FA2CB}.Release|ARM64.ActiveCfg = Release|ARM64
+ {99A40FC5-9DB0-4B80-8D97-867EF00FA2CB}.Release|ARM64.Build.0 = Release|ARM64
+ {99A40FC5-9DB0-4B80-8D97-867EF00FA2CB}.Release|x64.ActiveCfg = Release|x64
+ {99A40FC5-9DB0-4B80-8D97-867EF00FA2CB}.Release|x64.Build.0 = Release|x64
+ {99A40FC5-9DB0-4B80-8D97-867EF00FA2CB}.Release|x86.ActiveCfg = Release|Win32
+ {99A40FC5-9DB0-4B80-8D97-867EF00FA2CB}.Release|x86.Build.0 = Release|Win32
+ {81064BCE-EEC1-43B0-9912-F05F2B54B11A}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
+ {81064BCE-EEC1-43B0-9912-F05F2B54B11A}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
+ {81064BCE-EEC1-43B0-9912-F05F2B54B11A}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
+ {81064BCE-EEC1-43B0-9912-F05F2B54B11A}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
+ {81064BCE-EEC1-43B0-9912-F05F2B54B11A}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
+ {81064BCE-EEC1-43B0-9912-F05F2B54B11A}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
+ {81064BCE-EEC1-43B0-9912-F05F2B54B11A}.Debug|ARM64.ActiveCfg = Debug|ARM64
+ {81064BCE-EEC1-43B0-9912-F05F2B54B11A}.Debug|ARM64.Build.0 = Debug|ARM64
+ {81064BCE-EEC1-43B0-9912-F05F2B54B11A}.Debug|x64.ActiveCfg = Debug|x64
+ {81064BCE-EEC1-43B0-9912-F05F2B54B11A}.Debug|x64.Build.0 = Debug|x64
+ {81064BCE-EEC1-43B0-9912-F05F2B54B11A}.Debug|x86.ActiveCfg = Debug|Win32
+ {81064BCE-EEC1-43B0-9912-F05F2B54B11A}.Debug|x86.Build.0 = Debug|Win32
+ {81064BCE-EEC1-43B0-9912-F05F2B54B11A}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
+ {81064BCE-EEC1-43B0-9912-F05F2B54B11A}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
+ {81064BCE-EEC1-43B0-9912-F05F2B54B11A}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
+ {81064BCE-EEC1-43B0-9912-F05F2B54B11A}.Release.DLL|x64.Build.0 = Release.DLL|x64
+ {81064BCE-EEC1-43B0-9912-F05F2B54B11A}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
+ {81064BCE-EEC1-43B0-9912-F05F2B54B11A}.Release.DLL|x86.Build.0 = Release.DLL|Win32
+ {81064BCE-EEC1-43B0-9912-F05F2B54B11A}.Release|ARM64.ActiveCfg = Release|ARM64
+ {81064BCE-EEC1-43B0-9912-F05F2B54B11A}.Release|ARM64.Build.0 = Release|ARM64
+ {81064BCE-EEC1-43B0-9912-F05F2B54B11A}.Release|x64.ActiveCfg = Release|x64
+ {81064BCE-EEC1-43B0-9912-F05F2B54B11A}.Release|x64.Build.0 = Release|x64
+ {81064BCE-EEC1-43B0-9912-F05F2B54B11A}.Release|x86.ActiveCfg = Release|Win32
+ {81064BCE-EEC1-43B0-9912-F05F2B54B11A}.Release|x86.Build.0 = Release|Win32
+ {31B41997-3890-45E3-93FE-C57B363E9C0D}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
+ {31B41997-3890-45E3-93FE-C57B363E9C0D}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
+ {31B41997-3890-45E3-93FE-C57B363E9C0D}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
+ {31B41997-3890-45E3-93FE-C57B363E9C0D}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
+ {31B41997-3890-45E3-93FE-C57B363E9C0D}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
+ {31B41997-3890-45E3-93FE-C57B363E9C0D}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
+ {31B41997-3890-45E3-93FE-C57B363E9C0D}.Debug|ARM64.ActiveCfg = Debug|ARM64
+ {31B41997-3890-45E3-93FE-C57B363E9C0D}.Debug|ARM64.Build.0 = Debug|ARM64
+ {31B41997-3890-45E3-93FE-C57B363E9C0D}.Debug|x64.ActiveCfg = Debug|x64
+ {31B41997-3890-45E3-93FE-C57B363E9C0D}.Debug|x64.Build.0 = Debug|x64
+ {31B41997-3890-45E3-93FE-C57B363E9C0D}.Debug|x86.ActiveCfg = Debug|Win32
+ {31B41997-3890-45E3-93FE-C57B363E9C0D}.Debug|x86.Build.0 = Debug|Win32
+ {31B41997-3890-45E3-93FE-C57B363E9C0D}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
+ {31B41997-3890-45E3-93FE-C57B363E9C0D}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
+ {31B41997-3890-45E3-93FE-C57B363E9C0D}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
+ {31B41997-3890-45E3-93FE-C57B363E9C0D}.Release.DLL|x64.Build.0 = Release.DLL|x64
+ {31B41997-3890-45E3-93FE-C57B363E9C0D}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
+ {31B41997-3890-45E3-93FE-C57B363E9C0D}.Release.DLL|x86.Build.0 = Release.DLL|Win32
+ {31B41997-3890-45E3-93FE-C57B363E9C0D}.Release|ARM64.ActiveCfg = Release|ARM64
+ {31B41997-3890-45E3-93FE-C57B363E9C0D}.Release|ARM64.Build.0 = Release|ARM64
+ {31B41997-3890-45E3-93FE-C57B363E9C0D}.Release|x64.ActiveCfg = Release|x64
+ {31B41997-3890-45E3-93FE-C57B363E9C0D}.Release|x64.Build.0 = Release|x64
+ {31B41997-3890-45E3-93FE-C57B363E9C0D}.Release|x86.ActiveCfg = Release|Win32
+ {31B41997-3890-45E3-93FE-C57B363E9C0D}.Release|x86.Build.0 = Release|Win32
+ {D550AB93-DF31-4B76-873F-F075018352F4}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
+ {D550AB93-DF31-4B76-873F-F075018352F4}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
+ {D550AB93-DF31-4B76-873F-F075018352F4}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
+ {D550AB93-DF31-4B76-873F-F075018352F4}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
+ {D550AB93-DF31-4B76-873F-F075018352F4}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
+ {D550AB93-DF31-4B76-873F-F075018352F4}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
+ {D550AB93-DF31-4B76-873F-F075018352F4}.Debug|ARM64.ActiveCfg = Debug|ARM64
+ {D550AB93-DF31-4B76-873F-F075018352F4}.Debug|ARM64.Build.0 = Debug|ARM64
+ {D550AB93-DF31-4B76-873F-F075018352F4}.Debug|x64.ActiveCfg = Debug|x64
+ {D550AB93-DF31-4B76-873F-F075018352F4}.Debug|x64.Build.0 = Debug|x64
+ {D550AB93-DF31-4B76-873F-F075018352F4}.Debug|x86.ActiveCfg = Debug|Win32
+ {D550AB93-DF31-4B76-873F-F075018352F4}.Debug|x86.Build.0 = Debug|Win32
+ {D550AB93-DF31-4B76-873F-F075018352F4}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
+ {D550AB93-DF31-4B76-873F-F075018352F4}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
+ {D550AB93-DF31-4B76-873F-F075018352F4}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
+ {D550AB93-DF31-4B76-873F-F075018352F4}.Release.DLL|x64.Build.0 = Release.DLL|x64
+ {D550AB93-DF31-4B76-873F-F075018352F4}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
+ {D550AB93-DF31-4B76-873F-F075018352F4}.Release.DLL|x86.Build.0 = Release.DLL|Win32
+ {D550AB93-DF31-4B76-873F-F075018352F4}.Release|ARM64.ActiveCfg = Release|ARM64
+ {D550AB93-DF31-4B76-873F-F075018352F4}.Release|ARM64.Build.0 = Release|ARM64
+ {D550AB93-DF31-4B76-873F-F075018352F4}.Release|x64.ActiveCfg = Release|x64
+ {D550AB93-DF31-4B76-873F-F075018352F4}.Release|x64.Build.0 = Release|x64
+ {D550AB93-DF31-4B76-873F-F075018352F4}.Release|x86.ActiveCfg = Release|Win32
+ {D550AB93-DF31-4B76-873F-F075018352F4}.Release|x86.Build.0 = Release|Win32
+ {8CF3F7BA-4C99-43EB-B4F1-7CA346817D0A}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
+ {8CF3F7BA-4C99-43EB-B4F1-7CA346817D0A}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
+ {8CF3F7BA-4C99-43EB-B4F1-7CA346817D0A}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
+ {8CF3F7BA-4C99-43EB-B4F1-7CA346817D0A}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
+ {8CF3F7BA-4C99-43EB-B4F1-7CA346817D0A}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
+ {8CF3F7BA-4C99-43EB-B4F1-7CA346817D0A}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
+ {8CF3F7BA-4C99-43EB-B4F1-7CA346817D0A}.Debug|ARM64.ActiveCfg = Debug|ARM64
+ {8CF3F7BA-4C99-43EB-B4F1-7CA346817D0A}.Debug|ARM64.Build.0 = Debug|ARM64
+ {8CF3F7BA-4C99-43EB-B4F1-7CA346817D0A}.Debug|x64.ActiveCfg = Debug|x64
+ {8CF3F7BA-4C99-43EB-B4F1-7CA346817D0A}.Debug|x64.Build.0 = Debug|x64
+ {8CF3F7BA-4C99-43EB-B4F1-7CA346817D0A}.Debug|x86.ActiveCfg = Debug|Win32
+ {8CF3F7BA-4C99-43EB-B4F1-7CA346817D0A}.Debug|x86.Build.0 = Debug|Win32
+ {8CF3F7BA-4C99-43EB-B4F1-7CA346817D0A}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
+ {8CF3F7BA-4C99-43EB-B4F1-7CA346817D0A}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
+ {8CF3F7BA-4C99-43EB-B4F1-7CA346817D0A}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
+ {8CF3F7BA-4C99-43EB-B4F1-7CA346817D0A}.Release.DLL|x64.Build.0 = Release.DLL|x64
+ {8CF3F7BA-4C99-43EB-B4F1-7CA346817D0A}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
+ {8CF3F7BA-4C99-43EB-B4F1-7CA346817D0A}.Release.DLL|x86.Build.0 = Release.DLL|Win32
+ {8CF3F7BA-4C99-43EB-B4F1-7CA346817D0A}.Release|ARM64.ActiveCfg = Release|ARM64
+ {8CF3F7BA-4C99-43EB-B4F1-7CA346817D0A}.Release|ARM64.Build.0 = Release|ARM64
+ {8CF3F7BA-4C99-43EB-B4F1-7CA346817D0A}.Release|x64.ActiveCfg = Release|x64
+ {8CF3F7BA-4C99-43EB-B4F1-7CA346817D0A}.Release|x64.Build.0 = Release|x64
+ {8CF3F7BA-4C99-43EB-B4F1-7CA346817D0A}.Release|x86.ActiveCfg = Release|Win32
+ {8CF3F7BA-4C99-43EB-B4F1-7CA346817D0A}.Release|x86.Build.0 = Release|Win32
+ {F90FCDC5-EE14-4B89-96DB-4392E28F34AF}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
+ {F90FCDC5-EE14-4B89-96DB-4392E28F34AF}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
+ {F90FCDC5-EE14-4B89-96DB-4392E28F34AF}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
+ {F90FCDC5-EE14-4B89-96DB-4392E28F34AF}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
+ {F90FCDC5-EE14-4B89-96DB-4392E28F34AF}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
+ {F90FCDC5-EE14-4B89-96DB-4392E28F34AF}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
+ {F90FCDC5-EE14-4B89-96DB-4392E28F34AF}.Debug|ARM64.ActiveCfg = Debug|ARM64
+ {F90FCDC5-EE14-4B89-96DB-4392E28F34AF}.Debug|ARM64.Build.0 = Debug|ARM64
+ {F90FCDC5-EE14-4B89-96DB-4392E28F34AF}.Debug|x64.ActiveCfg = Debug|x64
+ {F90FCDC5-EE14-4B89-96DB-4392E28F34AF}.Debug|x64.Build.0 = Debug|x64
+ {F90FCDC5-EE14-4B89-96DB-4392E28F34AF}.Debug|x86.ActiveCfg = Debug|Win32
+ {F90FCDC5-EE14-4B89-96DB-4392E28F34AF}.Debug|x86.Build.0 = Debug|Win32
+ {F90FCDC5-EE14-4B89-96DB-4392E28F34AF}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
+ {F90FCDC5-EE14-4B89-96DB-4392E28F34AF}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
+ {F90FCDC5-EE14-4B89-96DB-4392E28F34AF}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
+ {F90FCDC5-EE14-4B89-96DB-4392E28F34AF}.Release.DLL|x64.Build.0 = Release.DLL|x64
+ {F90FCDC5-EE14-4B89-96DB-4392E28F34AF}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
+ {F90FCDC5-EE14-4B89-96DB-4392E28F34AF}.Release.DLL|x86.Build.0 = Release.DLL|Win32
+ {F90FCDC5-EE14-4B89-96DB-4392E28F34AF}.Release|ARM64.ActiveCfg = Release|ARM64
+ {F90FCDC5-EE14-4B89-96DB-4392E28F34AF}.Release|ARM64.Build.0 = Release|ARM64
+ {F90FCDC5-EE14-4B89-96DB-4392E28F34AF}.Release|x64.ActiveCfg = Release|x64
+ {F90FCDC5-EE14-4B89-96DB-4392E28F34AF}.Release|x64.Build.0 = Release|x64
+ {F90FCDC5-EE14-4B89-96DB-4392E28F34AF}.Release|x86.ActiveCfg = Release|Win32
+ {F90FCDC5-EE14-4B89-96DB-4392E28F34AF}.Release|x86.Build.0 = Release|Win32
+ {93A864C9-93B7-4E5C-ACE7-E8FC5F9EFF79}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
+ {93A864C9-93B7-4E5C-ACE7-E8FC5F9EFF79}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
+ {93A864C9-93B7-4E5C-ACE7-E8FC5F9EFF79}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
+ {93A864C9-93B7-4E5C-ACE7-E8FC5F9EFF79}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
+ {93A864C9-93B7-4E5C-ACE7-E8FC5F9EFF79}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
+ {93A864C9-93B7-4E5C-ACE7-E8FC5F9EFF79}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
+ {93A864C9-93B7-4E5C-ACE7-E8FC5F9EFF79}.Debug|ARM64.ActiveCfg = Debug|ARM64
+ {93A864C9-93B7-4E5C-ACE7-E8FC5F9EFF79}.Debug|ARM64.Build.0 = Debug|ARM64
+ {93A864C9-93B7-4E5C-ACE7-E8FC5F9EFF79}.Debug|x64.ActiveCfg = Debug|x64
+ {93A864C9-93B7-4E5C-ACE7-E8FC5F9EFF79}.Debug|x64.Build.0 = Debug|x64
+ {93A864C9-93B7-4E5C-ACE7-E8FC5F9EFF79}.Debug|x86.ActiveCfg = Debug|Win32
+ {93A864C9-93B7-4E5C-ACE7-E8FC5F9EFF79}.Debug|x86.Build.0 = Debug|Win32
+ {93A864C9-93B7-4E5C-ACE7-E8FC5F9EFF79}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
+ {93A864C9-93B7-4E5C-ACE7-E8FC5F9EFF79}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
+ {93A864C9-93B7-4E5C-ACE7-E8FC5F9EFF79}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
+ {93A864C9-93B7-4E5C-ACE7-E8FC5F9EFF79}.Release.DLL|x64.Build.0 = Release.DLL|x64
+ {93A864C9-93B7-4E5C-ACE7-E8FC5F9EFF79}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
+ {93A864C9-93B7-4E5C-ACE7-E8FC5F9EFF79}.Release.DLL|x86.Build.0 = Release.DLL|Win32
+ {93A864C9-93B7-4E5C-ACE7-E8FC5F9EFF79}.Release|ARM64.ActiveCfg = Release|ARM64
+ {93A864C9-93B7-4E5C-ACE7-E8FC5F9EFF79}.Release|ARM64.Build.0 = Release|ARM64
+ {93A864C9-93B7-4E5C-ACE7-E8FC5F9EFF79}.Release|x64.ActiveCfg = Release|x64
+ {93A864C9-93B7-4E5C-ACE7-E8FC5F9EFF79}.Release|x64.Build.0 = Release|x64
+ {93A864C9-93B7-4E5C-ACE7-E8FC5F9EFF79}.Release|x86.ActiveCfg = Release|Win32
+ {93A864C9-93B7-4E5C-ACE7-E8FC5F9EFF79}.Release|x86.Build.0 = Release|Win32
+ {56E68E37-B3FC-4799-91AF-0CA10B6D55A5}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
+ {56E68E37-B3FC-4799-91AF-0CA10B6D55A5}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
+ {56E68E37-B3FC-4799-91AF-0CA10B6D55A5}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
+ {56E68E37-B3FC-4799-91AF-0CA10B6D55A5}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
+ {56E68E37-B3FC-4799-91AF-0CA10B6D55A5}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
+ {56E68E37-B3FC-4799-91AF-0CA10B6D55A5}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
+ {56E68E37-B3FC-4799-91AF-0CA10B6D55A5}.Debug|ARM64.ActiveCfg = Debug|ARM64
+ {56E68E37-B3FC-4799-91AF-0CA10B6D55A5}.Debug|ARM64.Build.0 = Debug|ARM64
+ {56E68E37-B3FC-4799-91AF-0CA10B6D55A5}.Debug|x64.ActiveCfg = Debug|x64
+ {56E68E37-B3FC-4799-91AF-0CA10B6D55A5}.Debug|x64.Build.0 = Debug|x64
+ {56E68E37-B3FC-4799-91AF-0CA10B6D55A5}.Debug|x86.ActiveCfg = Debug|Win32
+ {56E68E37-B3FC-4799-91AF-0CA10B6D55A5}.Debug|x86.Build.0 = Debug|Win32
+ {56E68E37-B3FC-4799-91AF-0CA10B6D55A5}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
+ {56E68E37-B3FC-4799-91AF-0CA10B6D55A5}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
+ {56E68E37-B3FC-4799-91AF-0CA10B6D55A5}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
+ {56E68E37-B3FC-4799-91AF-0CA10B6D55A5}.Release.DLL|x64.Build.0 = Release.DLL|x64
+ {56E68E37-B3FC-4799-91AF-0CA10B6D55A5}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
+ {56E68E37-B3FC-4799-91AF-0CA10B6D55A5}.Release.DLL|x86.Build.0 = Release.DLL|Win32
+ {56E68E37-B3FC-4799-91AF-0CA10B6D55A5}.Release|ARM64.ActiveCfg = Release|ARM64
+ {56E68E37-B3FC-4799-91AF-0CA10B6D55A5}.Release|ARM64.Build.0 = Release|ARM64
+ {56E68E37-B3FC-4799-91AF-0CA10B6D55A5}.Release|x64.ActiveCfg = Release|x64
+ {56E68E37-B3FC-4799-91AF-0CA10B6D55A5}.Release|x64.Build.0 = Release|x64
+ {56E68E37-B3FC-4799-91AF-0CA10B6D55A5}.Release|x86.ActiveCfg = Release|Win32
+ {56E68E37-B3FC-4799-91AF-0CA10B6D55A5}.Release|x86.Build.0 = Release|Win32
+ {03E7018C-44A2-4C46-9CE7-F2A135A2692B}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
+ {03E7018C-44A2-4C46-9CE7-F2A135A2692B}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
+ {03E7018C-44A2-4C46-9CE7-F2A135A2692B}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
+ {03E7018C-44A2-4C46-9CE7-F2A135A2692B}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
+ {03E7018C-44A2-4C46-9CE7-F2A135A2692B}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
+ {03E7018C-44A2-4C46-9CE7-F2A135A2692B}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
+ {03E7018C-44A2-4C46-9CE7-F2A135A2692B}.Debug|ARM64.ActiveCfg = Debug|ARM64
+ {03E7018C-44A2-4C46-9CE7-F2A135A2692B}.Debug|ARM64.Build.0 = Debug|ARM64
+ {03E7018C-44A2-4C46-9CE7-F2A135A2692B}.Debug|x64.ActiveCfg = Debug|x64
+ {03E7018C-44A2-4C46-9CE7-F2A135A2692B}.Debug|x64.Build.0 = Debug|x64
+ {03E7018C-44A2-4C46-9CE7-F2A135A2692B}.Debug|x86.ActiveCfg = Debug|Win32
+ {03E7018C-44A2-4C46-9CE7-F2A135A2692B}.Debug|x86.Build.0 = Debug|Win32
+ {03E7018C-44A2-4C46-9CE7-F2A135A2692B}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
+ {03E7018C-44A2-4C46-9CE7-F2A135A2692B}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
+ {03E7018C-44A2-4C46-9CE7-F2A135A2692B}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
+ {03E7018C-44A2-4C46-9CE7-F2A135A2692B}.Release.DLL|x64.Build.0 = Release.DLL|x64
+ {03E7018C-44A2-4C46-9CE7-F2A135A2692B}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
+ {03E7018C-44A2-4C46-9CE7-F2A135A2692B}.Release.DLL|x86.Build.0 = Release.DLL|Win32
+ {03E7018C-44A2-4C46-9CE7-F2A135A2692B}.Release|ARM64.ActiveCfg = Release|ARM64
+ {03E7018C-44A2-4C46-9CE7-F2A135A2692B}.Release|ARM64.Build.0 = Release|ARM64
+ {03E7018C-44A2-4C46-9CE7-F2A135A2692B}.Release|x64.ActiveCfg = Release|x64
+ {03E7018C-44A2-4C46-9CE7-F2A135A2692B}.Release|x64.Build.0 = Release|x64
+ {03E7018C-44A2-4C46-9CE7-F2A135A2692B}.Release|x86.ActiveCfg = Release|Win32
+ {03E7018C-44A2-4C46-9CE7-F2A135A2692B}.Release|x86.Build.0 = Release|Win32
+ {F3F6FE4D-9D9E-451A-B0BA-81456104B672}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
+ {F3F6FE4D-9D9E-451A-B0BA-81456104B672}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
+ {F3F6FE4D-9D9E-451A-B0BA-81456104B672}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
+ {F3F6FE4D-9D9E-451A-B0BA-81456104B672}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
+ {F3F6FE4D-9D9E-451A-B0BA-81456104B672}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
+ {F3F6FE4D-9D9E-451A-B0BA-81456104B672}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
+ {F3F6FE4D-9D9E-451A-B0BA-81456104B672}.Debug|ARM64.ActiveCfg = Debug|ARM64
+ {F3F6FE4D-9D9E-451A-B0BA-81456104B672}.Debug|ARM64.Build.0 = Debug|ARM64
+ {F3F6FE4D-9D9E-451A-B0BA-81456104B672}.Debug|x64.ActiveCfg = Debug|x64
+ {F3F6FE4D-9D9E-451A-B0BA-81456104B672}.Debug|x64.Build.0 = Debug|x64
+ {F3F6FE4D-9D9E-451A-B0BA-81456104B672}.Debug|x86.ActiveCfg = Debug|Win32
+ {F3F6FE4D-9D9E-451A-B0BA-81456104B672}.Debug|x86.Build.0 = Debug|Win32
+ {F3F6FE4D-9D9E-451A-B0BA-81456104B672}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
+ {F3F6FE4D-9D9E-451A-B0BA-81456104B672}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
+ {F3F6FE4D-9D9E-451A-B0BA-81456104B672}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
+ {F3F6FE4D-9D9E-451A-B0BA-81456104B672}.Release.DLL|x64.Build.0 = Release.DLL|x64
+ {F3F6FE4D-9D9E-451A-B0BA-81456104B672}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
+ {F3F6FE4D-9D9E-451A-B0BA-81456104B672}.Release.DLL|x86.Build.0 = Release.DLL|Win32
+ {F3F6FE4D-9D9E-451A-B0BA-81456104B672}.Release|ARM64.ActiveCfg = Release|ARM64
+ {F3F6FE4D-9D9E-451A-B0BA-81456104B672}.Release|ARM64.Build.0 = Release|ARM64
+ {F3F6FE4D-9D9E-451A-B0BA-81456104B672}.Release|x64.ActiveCfg = Release|x64
+ {F3F6FE4D-9D9E-451A-B0BA-81456104B672}.Release|x64.Build.0 = Release|x64
+ {F3F6FE4D-9D9E-451A-B0BA-81456104B672}.Release|x86.ActiveCfg = Release|Win32
+ {F3F6FE4D-9D9E-451A-B0BA-81456104B672}.Release|x86.Build.0 = Release|Win32
+ {C27794B5-1293-4EA7-BC0E-0F18E6325539}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
+ {C27794B5-1293-4EA7-BC0E-0F18E6325539}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
+ {C27794B5-1293-4EA7-BC0E-0F18E6325539}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
+ {C27794B5-1293-4EA7-BC0E-0F18E6325539}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
+ {C27794B5-1293-4EA7-BC0E-0F18E6325539}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
+ {C27794B5-1293-4EA7-BC0E-0F18E6325539}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
+ {C27794B5-1293-4EA7-BC0E-0F18E6325539}.Debug|ARM64.ActiveCfg = Debug|ARM64
+ {C27794B5-1293-4EA7-BC0E-0F18E6325539}.Debug|ARM64.Build.0 = Debug|ARM64
+ {C27794B5-1293-4EA7-BC0E-0F18E6325539}.Debug|x64.ActiveCfg = Debug|x64
+ {C27794B5-1293-4EA7-BC0E-0F18E6325539}.Debug|x64.Build.0 = Debug|x64
+ {C27794B5-1293-4EA7-BC0E-0F18E6325539}.Debug|x86.ActiveCfg = Debug|Win32
+ {C27794B5-1293-4EA7-BC0E-0F18E6325539}.Debug|x86.Build.0 = Debug|Win32
+ {C27794B5-1293-4EA7-BC0E-0F18E6325539}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
+ {C27794B5-1293-4EA7-BC0E-0F18E6325539}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
+ {C27794B5-1293-4EA7-BC0E-0F18E6325539}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
+ {C27794B5-1293-4EA7-BC0E-0F18E6325539}.Release.DLL|x64.Build.0 = Release.DLL|x64
+ {C27794B5-1293-4EA7-BC0E-0F18E6325539}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
+ {C27794B5-1293-4EA7-BC0E-0F18E6325539}.Release.DLL|x86.Build.0 = Release.DLL|Win32
+ {C27794B5-1293-4EA7-BC0E-0F18E6325539}.Release|ARM64.ActiveCfg = Release|ARM64
+ {C27794B5-1293-4EA7-BC0E-0F18E6325539}.Release|ARM64.Build.0 = Release|ARM64
+ {C27794B5-1293-4EA7-BC0E-0F18E6325539}.Release|x64.ActiveCfg = Release|x64
+ {C27794B5-1293-4EA7-BC0E-0F18E6325539}.Release|x64.Build.0 = Release|x64
+ {C27794B5-1293-4EA7-BC0E-0F18E6325539}.Release|x86.ActiveCfg = Release|Win32
+ {C27794B5-1293-4EA7-BC0E-0F18E6325539}.Release|x86.Build.0 = Release|Win32
+ {02F41059-12A2-4A96-8D77-07EFE4B108FD}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
+ {02F41059-12A2-4A96-8D77-07EFE4B108FD}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
+ {02F41059-12A2-4A96-8D77-07EFE4B108FD}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
+ {02F41059-12A2-4A96-8D77-07EFE4B108FD}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
+ {02F41059-12A2-4A96-8D77-07EFE4B108FD}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
+ {02F41059-12A2-4A96-8D77-07EFE4B108FD}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
+ {02F41059-12A2-4A96-8D77-07EFE4B108FD}.Debug|ARM64.ActiveCfg = Debug|ARM64
+ {02F41059-12A2-4A96-8D77-07EFE4B108FD}.Debug|ARM64.Build.0 = Debug|ARM64
+ {02F41059-12A2-4A96-8D77-07EFE4B108FD}.Debug|x64.ActiveCfg = Debug|x64
+ {02F41059-12A2-4A96-8D77-07EFE4B108FD}.Debug|x64.Build.0 = Debug|x64
+ {02F41059-12A2-4A96-8D77-07EFE4B108FD}.Debug|x86.ActiveCfg = Debug|Win32
+ {02F41059-12A2-4A96-8D77-07EFE4B108FD}.Debug|x86.Build.0 = Debug|Win32
+ {02F41059-12A2-4A96-8D77-07EFE4B108FD}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
+ {02F41059-12A2-4A96-8D77-07EFE4B108FD}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
+ {02F41059-12A2-4A96-8D77-07EFE4B108FD}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
+ {02F41059-12A2-4A96-8D77-07EFE4B108FD}.Release.DLL|x64.Build.0 = Release.DLL|x64
+ {02F41059-12A2-4A96-8D77-07EFE4B108FD}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
+ {02F41059-12A2-4A96-8D77-07EFE4B108FD}.Release.DLL|x86.Build.0 = Release.DLL|Win32
+ {02F41059-12A2-4A96-8D77-07EFE4B108FD}.Release|ARM64.ActiveCfg = Release|ARM64
+ {02F41059-12A2-4A96-8D77-07EFE4B108FD}.Release|ARM64.Build.0 = Release|ARM64
+ {02F41059-12A2-4A96-8D77-07EFE4B108FD}.Release|x64.ActiveCfg = Release|x64
+ {02F41059-12A2-4A96-8D77-07EFE4B108FD}.Release|x64.Build.0 = Release|x64
+ {02F41059-12A2-4A96-8D77-07EFE4B108FD}.Release|x86.ActiveCfg = Release|Win32
+ {02F41059-12A2-4A96-8D77-07EFE4B108FD}.Release|x86.Build.0 = Release|Win32
+ {B774E0B9-9514-4E88-975F-4EB6C3B8D519}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
+ {B774E0B9-9514-4E88-975F-4EB6C3B8D519}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
+ {B774E0B9-9514-4E88-975F-4EB6C3B8D519}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
+ {B774E0B9-9514-4E88-975F-4EB6C3B8D519}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
+ {B774E0B9-9514-4E88-975F-4EB6C3B8D519}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
+ {B774E0B9-9514-4E88-975F-4EB6C3B8D519}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
+ {B774E0B9-9514-4E88-975F-4EB6C3B8D519}.Debug|ARM64.ActiveCfg = Debug|ARM64
+ {B774E0B9-9514-4E88-975F-4EB6C3B8D519}.Debug|ARM64.Build.0 = Debug|ARM64
+ {B774E0B9-9514-4E88-975F-4EB6C3B8D519}.Debug|x64.ActiveCfg = Debug|x64
+ {B774E0B9-9514-4E88-975F-4EB6C3B8D519}.Debug|x64.Build.0 = Debug|x64
+ {B774E0B9-9514-4E88-975F-4EB6C3B8D519}.Debug|x86.ActiveCfg = Debug|Win32
+ {B774E0B9-9514-4E88-975F-4EB6C3B8D519}.Debug|x86.Build.0 = Debug|Win32
+ {B774E0B9-9514-4E88-975F-4EB6C3B8D519}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
+ {B774E0B9-9514-4E88-975F-4EB6C3B8D519}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
+ {B774E0B9-9514-4E88-975F-4EB6C3B8D519}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
+ {B774E0B9-9514-4E88-975F-4EB6C3B8D519}.Release.DLL|x64.Build.0 = Release.DLL|x64
+ {B774E0B9-9514-4E88-975F-4EB6C3B8D519}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
+ {B774E0B9-9514-4E88-975F-4EB6C3B8D519}.Release.DLL|x86.Build.0 = Release.DLL|Win32
+ {B774E0B9-9514-4E88-975F-4EB6C3B8D519}.Release|ARM64.ActiveCfg = Release|ARM64
+ {B774E0B9-9514-4E88-975F-4EB6C3B8D519}.Release|ARM64.Build.0 = Release|ARM64
+ {B774E0B9-9514-4E88-975F-4EB6C3B8D519}.Release|x64.ActiveCfg = Release|x64
+ {B774E0B9-9514-4E88-975F-4EB6C3B8D519}.Release|x64.Build.0 = Release|x64
+ {B774E0B9-9514-4E88-975F-4EB6C3B8D519}.Release|x86.ActiveCfg = Release|Win32
+ {B774E0B9-9514-4E88-975F-4EB6C3B8D519}.Release|x86.Build.0 = Release|Win32
+ {D91367C2-2189-4859-A7FE-D2CAB84FA15C}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
+ {D91367C2-2189-4859-A7FE-D2CAB84FA15C}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
+ {D91367C2-2189-4859-A7FE-D2CAB84FA15C}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
+ {D91367C2-2189-4859-A7FE-D2CAB84FA15C}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
+ {D91367C2-2189-4859-A7FE-D2CAB84FA15C}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
+ {D91367C2-2189-4859-A7FE-D2CAB84FA15C}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
+ {D91367C2-2189-4859-A7FE-D2CAB84FA15C}.Debug|ARM64.ActiveCfg = Debug|ARM64
+ {D91367C2-2189-4859-A7FE-D2CAB84FA15C}.Debug|ARM64.Build.0 = Debug|ARM64
+ {D91367C2-2189-4859-A7FE-D2CAB84FA15C}.Debug|x64.ActiveCfg = Debug|x64
+ {D91367C2-2189-4859-A7FE-D2CAB84FA15C}.Debug|x64.Build.0 = Debug|x64
+ {D91367C2-2189-4859-A7FE-D2CAB84FA15C}.Debug|x86.ActiveCfg = Debug|Win32
+ {D91367C2-2189-4859-A7FE-D2CAB84FA15C}.Debug|x86.Build.0 = Debug|Win32
+ {D91367C2-2189-4859-A7FE-D2CAB84FA15C}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
+ {D91367C2-2189-4859-A7FE-D2CAB84FA15C}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
+ {D91367C2-2189-4859-A7FE-D2CAB84FA15C}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
+ {D91367C2-2189-4859-A7FE-D2CAB84FA15C}.Release.DLL|x64.Build.0 = Release.DLL|x64
+ {D91367C2-2189-4859-A7FE-D2CAB84FA15C}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
+ {D91367C2-2189-4859-A7FE-D2CAB84FA15C}.Release.DLL|x86.Build.0 = Release.DLL|Win32
+ {D91367C2-2189-4859-A7FE-D2CAB84FA15C}.Release|ARM64.ActiveCfg = Release|ARM64
+ {D91367C2-2189-4859-A7FE-D2CAB84FA15C}.Release|ARM64.Build.0 = Release|ARM64
+ {D91367C2-2189-4859-A7FE-D2CAB84FA15C}.Release|x64.ActiveCfg = Release|x64
+ {D91367C2-2189-4859-A7FE-D2CAB84FA15C}.Release|x64.Build.0 = Release|x64
+ {D91367C2-2189-4859-A7FE-D2CAB84FA15C}.Release|x86.ActiveCfg = Release|Win32
+ {D91367C2-2189-4859-A7FE-D2CAB84FA15C}.Release|x86.Build.0 = Release|Win32
+ {33459B4E-1839-4856-BF6B-22480D11FE31}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
+ {33459B4E-1839-4856-BF6B-22480D11FE31}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
+ {33459B4E-1839-4856-BF6B-22480D11FE31}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
+ {33459B4E-1839-4856-BF6B-22480D11FE31}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
+ {33459B4E-1839-4856-BF6B-22480D11FE31}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
+ {33459B4E-1839-4856-BF6B-22480D11FE31}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
+ {33459B4E-1839-4856-BF6B-22480D11FE31}.Debug|ARM64.ActiveCfg = Debug|ARM64
+ {33459B4E-1839-4856-BF6B-22480D11FE31}.Debug|ARM64.Build.0 = Debug|ARM64
+ {33459B4E-1839-4856-BF6B-22480D11FE31}.Debug|x64.ActiveCfg = Debug|x64
+ {33459B4E-1839-4856-BF6B-22480D11FE31}.Debug|x64.Build.0 = Debug|x64
+ {33459B4E-1839-4856-BF6B-22480D11FE31}.Debug|x86.ActiveCfg = Debug|Win32
+ {33459B4E-1839-4856-BF6B-22480D11FE31}.Debug|x86.Build.0 = Debug|Win32
+ {33459B4E-1839-4856-BF6B-22480D11FE31}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
+ {33459B4E-1839-4856-BF6B-22480D11FE31}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
+ {33459B4E-1839-4856-BF6B-22480D11FE31}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
+ {33459B4E-1839-4856-BF6B-22480D11FE31}.Release.DLL|x64.Build.0 = Release.DLL|x64
+ {33459B4E-1839-4856-BF6B-22480D11FE31}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
+ {33459B4E-1839-4856-BF6B-22480D11FE31}.Release.DLL|x86.Build.0 = Release.DLL|Win32
+ {33459B4E-1839-4856-BF6B-22480D11FE31}.Release|ARM64.ActiveCfg = Release|ARM64
+ {33459B4E-1839-4856-BF6B-22480D11FE31}.Release|ARM64.Build.0 = Release|ARM64
+ {33459B4E-1839-4856-BF6B-22480D11FE31}.Release|x64.ActiveCfg = Release|x64
+ {33459B4E-1839-4856-BF6B-22480D11FE31}.Release|x64.Build.0 = Release|x64
+ {33459B4E-1839-4856-BF6B-22480D11FE31}.Release|x86.ActiveCfg = Release|Win32
+ {33459B4E-1839-4856-BF6B-22480D11FE31}.Release|x86.Build.0 = Release|Win32
+ {48871156-181A-475A-BD8D-200086A09675}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
+ {48871156-181A-475A-BD8D-200086A09675}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
+ {48871156-181A-475A-BD8D-200086A09675}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
+ {48871156-181A-475A-BD8D-200086A09675}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
+ {48871156-181A-475A-BD8D-200086A09675}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
+ {48871156-181A-475A-BD8D-200086A09675}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
+ {48871156-181A-475A-BD8D-200086A09675}.Debug|ARM64.ActiveCfg = Debug|ARM64
+ {48871156-181A-475A-BD8D-200086A09675}.Debug|ARM64.Build.0 = Debug|ARM64
+ {48871156-181A-475A-BD8D-200086A09675}.Debug|x64.ActiveCfg = Debug|x64
+ {48871156-181A-475A-BD8D-200086A09675}.Debug|x64.Build.0 = Debug|x64
+ {48871156-181A-475A-BD8D-200086A09675}.Debug|x86.ActiveCfg = Debug|Win32
+ {48871156-181A-475A-BD8D-200086A09675}.Debug|x86.Build.0 = Debug|Win32
+ {48871156-181A-475A-BD8D-200086A09675}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
+ {48871156-181A-475A-BD8D-200086A09675}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
+ {48871156-181A-475A-BD8D-200086A09675}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
+ {48871156-181A-475A-BD8D-200086A09675}.Release.DLL|x64.Build.0 = Release.DLL|x64
+ {48871156-181A-475A-BD8D-200086A09675}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
+ {48871156-181A-475A-BD8D-200086A09675}.Release.DLL|x86.Build.0 = Release.DLL|Win32
+ {48871156-181A-475A-BD8D-200086A09675}.Release|ARM64.ActiveCfg = Release|ARM64
+ {48871156-181A-475A-BD8D-200086A09675}.Release|ARM64.Build.0 = Release|ARM64
+ {48871156-181A-475A-BD8D-200086A09675}.Release|x64.ActiveCfg = Release|x64
+ {48871156-181A-475A-BD8D-200086A09675}.Release|x64.Build.0 = Release|x64
+ {48871156-181A-475A-BD8D-200086A09675}.Release|x86.ActiveCfg = Release|Win32
+ {48871156-181A-475A-BD8D-200086A09675}.Release|x86.Build.0 = Release|Win32
+ {C4416DA1-9E62-46BA-9CD3-F8963C79E1A1}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
+ {C4416DA1-9E62-46BA-9CD3-F8963C79E1A1}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
+ {C4416DA1-9E62-46BA-9CD3-F8963C79E1A1}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
+ {C4416DA1-9E62-46BA-9CD3-F8963C79E1A1}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
+ {C4416DA1-9E62-46BA-9CD3-F8963C79E1A1}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
+ {C4416DA1-9E62-46BA-9CD3-F8963C79E1A1}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
+ {C4416DA1-9E62-46BA-9CD3-F8963C79E1A1}.Debug|ARM64.ActiveCfg = Debug|ARM64
+ {C4416DA1-9E62-46BA-9CD3-F8963C79E1A1}.Debug|ARM64.Build.0 = Debug|ARM64
+ {C4416DA1-9E62-46BA-9CD3-F8963C79E1A1}.Debug|x64.ActiveCfg = Debug|x64
+ {C4416DA1-9E62-46BA-9CD3-F8963C79E1A1}.Debug|x64.Build.0 = Debug|x64
+ {C4416DA1-9E62-46BA-9CD3-F8963C79E1A1}.Debug|x86.ActiveCfg = Debug|Win32
+ {C4416DA1-9E62-46BA-9CD3-F8963C79E1A1}.Debug|x86.Build.0 = Debug|Win32
+ {C4416DA1-9E62-46BA-9CD3-F8963C79E1A1}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
+ {C4416DA1-9E62-46BA-9CD3-F8963C79E1A1}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
+ {C4416DA1-9E62-46BA-9CD3-F8963C79E1A1}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
+ {C4416DA1-9E62-46BA-9CD3-F8963C79E1A1}.Release.DLL|x64.Build.0 = Release.DLL|x64
+ {C4416DA1-9E62-46BA-9CD3-F8963C79E1A1}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
+ {C4416DA1-9E62-46BA-9CD3-F8963C79E1A1}.Release.DLL|x86.Build.0 = Release.DLL|Win32
+ {C4416DA1-9E62-46BA-9CD3-F8963C79E1A1}.Release|ARM64.ActiveCfg = Release|ARM64
+ {C4416DA1-9E62-46BA-9CD3-F8963C79E1A1}.Release|ARM64.Build.0 = Release|ARM64
+ {C4416DA1-9E62-46BA-9CD3-F8963C79E1A1}.Release|x64.ActiveCfg = Release|x64
+ {C4416DA1-9E62-46BA-9CD3-F8963C79E1A1}.Release|x64.Build.0 = Release|x64
+ {C4416DA1-9E62-46BA-9CD3-F8963C79E1A1}.Release|x86.ActiveCfg = Release|Win32
+ {C4416DA1-9E62-46BA-9CD3-F8963C79E1A1}.Release|x86.Build.0 = Release|Win32
+ {1C49E35A-2838-49D9-9D5F-4B8134960EF6}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
+ {1C49E35A-2838-49D9-9D5F-4B8134960EF6}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
+ {1C49E35A-2838-49D9-9D5F-4B8134960EF6}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
+ {1C49E35A-2838-49D9-9D5F-4B8134960EF6}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
+ {1C49E35A-2838-49D9-9D5F-4B8134960EF6}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
+ {1C49E35A-2838-49D9-9D5F-4B8134960EF6}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
+ {1C49E35A-2838-49D9-9D5F-4B8134960EF6}.Debug|ARM64.ActiveCfg = Debug|ARM64
+ {1C49E35A-2838-49D9-9D5F-4B8134960EF6}.Debug|ARM64.Build.0 = Debug|ARM64
+ {1C49E35A-2838-49D9-9D5F-4B8134960EF6}.Debug|x64.ActiveCfg = Debug|x64
+ {1C49E35A-2838-49D9-9D5F-4B8134960EF6}.Debug|x64.Build.0 = Debug|x64
+ {1C49E35A-2838-49D9-9D5F-4B8134960EF6}.Debug|x86.ActiveCfg = Debug|Win32
+ {1C49E35A-2838-49D9-9D5F-4B8134960EF6}.Debug|x86.Build.0 = Debug|Win32
+ {1C49E35A-2838-49D9-9D5F-4B8134960EF6}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
+ {1C49E35A-2838-49D9-9D5F-4B8134960EF6}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
+ {1C49E35A-2838-49D9-9D5F-4B8134960EF6}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
+ {1C49E35A-2838-49D9-9D5F-4B8134960EF6}.Release.DLL|x64.Build.0 = Release.DLL|x64
+ {1C49E35A-2838-49D9-9D5F-4B8134960EF6}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
+ {1C49E35A-2838-49D9-9D5F-4B8134960EF6}.Release.DLL|x86.Build.0 = Release.DLL|Win32
+ {1C49E35A-2838-49D9-9D5F-4B8134960EF6}.Release|ARM64.ActiveCfg = Release|ARM64
+ {1C49E35A-2838-49D9-9D5F-4B8134960EF6}.Release|ARM64.Build.0 = Release|ARM64
+ {1C49E35A-2838-49D9-9D5F-4B8134960EF6}.Release|x64.ActiveCfg = Release|x64
+ {1C49E35A-2838-49D9-9D5F-4B8134960EF6}.Release|x64.Build.0 = Release|x64
+ {1C49E35A-2838-49D9-9D5F-4B8134960EF6}.Release|x86.ActiveCfg = Release|Win32
+ {1C49E35A-2838-49D9-9D5F-4B8134960EF6}.Release|x86.Build.0 = Release|Win32
+ {F91142E2-A999-47F0-9E74-38C1E2930EBE}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
+ {F91142E2-A999-47F0-9E74-38C1E2930EBE}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
+ {F91142E2-A999-47F0-9E74-38C1E2930EBE}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
+ {F91142E2-A999-47F0-9E74-38C1E2930EBE}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
+ {F91142E2-A999-47F0-9E74-38C1E2930EBE}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
+ {F91142E2-A999-47F0-9E74-38C1E2930EBE}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
+ {F91142E2-A999-47F0-9E74-38C1E2930EBE}.Debug|ARM64.ActiveCfg = Debug|ARM64
+ {F91142E2-A999-47F0-9E74-38C1E2930EBE}.Debug|ARM64.Build.0 = Debug|ARM64
+ {F91142E2-A999-47F0-9E74-38C1E2930EBE}.Debug|x64.ActiveCfg = Debug|x64
+ {F91142E2-A999-47F0-9E74-38C1E2930EBE}.Debug|x64.Build.0 = Debug|x64
+ {F91142E2-A999-47F0-9E74-38C1E2930EBE}.Debug|x86.ActiveCfg = Debug|Win32
+ {F91142E2-A999-47F0-9E74-38C1E2930EBE}.Debug|x86.Build.0 = Debug|Win32
+ {F91142E2-A999-47F0-9E74-38C1E2930EBE}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
+ {F91142E2-A999-47F0-9E74-38C1E2930EBE}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
+ {F91142E2-A999-47F0-9E74-38C1E2930EBE}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
+ {F91142E2-A999-47F0-9E74-38C1E2930EBE}.Release.DLL|x64.Build.0 = Release.DLL|x64
+ {F91142E2-A999-47F0-9E74-38C1E2930EBE}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
+ {F91142E2-A999-47F0-9E74-38C1E2930EBE}.Release.DLL|x86.Build.0 = Release.DLL|Win32
+ {F91142E2-A999-47F0-9E74-38C1E2930EBE}.Release|ARM64.ActiveCfg = Release|ARM64
+ {F91142E2-A999-47F0-9E74-38C1E2930EBE}.Release|ARM64.Build.0 = Release|ARM64
+ {F91142E2-A999-47F0-9E74-38C1E2930EBE}.Release|x64.ActiveCfg = Release|x64
+ {F91142E2-A999-47F0-9E74-38C1E2930EBE}.Release|x64.Build.0 = Release|x64
+ {F91142E2-A999-47F0-9E74-38C1E2930EBE}.Release|x86.ActiveCfg = Release|Win32
+ {F91142E2-A999-47F0-9E74-38C1E2930EBE}.Release|x86.Build.0 = Release|Win32
+ {1EDD4BCF-345C-4065-8CBD-7285224293C3}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
+ {1EDD4BCF-345C-4065-8CBD-7285224293C3}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
+ {1EDD4BCF-345C-4065-8CBD-7285224293C3}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
+ {1EDD4BCF-345C-4065-8CBD-7285224293C3}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
+ {1EDD4BCF-345C-4065-8CBD-7285224293C3}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
+ {1EDD4BCF-345C-4065-8CBD-7285224293C3}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
+ {1EDD4BCF-345C-4065-8CBD-7285224293C3}.Debug|ARM64.ActiveCfg = Debug|ARM64
+ {1EDD4BCF-345C-4065-8CBD-7285224293C3}.Debug|ARM64.Build.0 = Debug|ARM64
+ {1EDD4BCF-345C-4065-8CBD-7285224293C3}.Debug|x64.ActiveCfg = Debug|x64
+ {1EDD4BCF-345C-4065-8CBD-7285224293C3}.Debug|x64.Build.0 = Debug|x64
+ {1EDD4BCF-345C-4065-8CBD-7285224293C3}.Debug|x86.ActiveCfg = Debug|Win32
+ {1EDD4BCF-345C-4065-8CBD-7285224293C3}.Debug|x86.Build.0 = Debug|Win32
+ {1EDD4BCF-345C-4065-8CBD-7285224293C3}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
+ {1EDD4BCF-345C-4065-8CBD-7285224293C3}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
+ {1EDD4BCF-345C-4065-8CBD-7285224293C3}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
+ {1EDD4BCF-345C-4065-8CBD-7285224293C3}.Release.DLL|x64.Build.0 = Release.DLL|x64
+ {1EDD4BCF-345C-4065-8CBD-7285224293C3}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
+ {1EDD4BCF-345C-4065-8CBD-7285224293C3}.Release.DLL|x86.Build.0 = Release.DLL|Win32
+ {1EDD4BCF-345C-4065-8CBD-7285224293C3}.Release|ARM64.ActiveCfg = Release|ARM64
+ {1EDD4BCF-345C-4065-8CBD-7285224293C3}.Release|ARM64.Build.0 = Release|ARM64
+ {1EDD4BCF-345C-4065-8CBD-7285224293C3}.Release|x64.ActiveCfg = Release|x64
+ {1EDD4BCF-345C-4065-8CBD-7285224293C3}.Release|x64.Build.0 = Release|x64
+ {1EDD4BCF-345C-4065-8CBD-7285224293C3}.Release|x86.ActiveCfg = Release|Win32
+ {1EDD4BCF-345C-4065-8CBD-7285224293C3}.Release|x86.Build.0 = Release|Win32
+ {A6B2A11B-0669-4AF5-A025-8DD02DBBE5EA}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
+ {A6B2A11B-0669-4AF5-A025-8DD02DBBE5EA}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
+ {A6B2A11B-0669-4AF5-A025-8DD02DBBE5EA}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
+ {A6B2A11B-0669-4AF5-A025-8DD02DBBE5EA}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
+ {A6B2A11B-0669-4AF5-A025-8DD02DBBE5EA}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
+ {A6B2A11B-0669-4AF5-A025-8DD02DBBE5EA}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
+ {A6B2A11B-0669-4AF5-A025-8DD02DBBE5EA}.Debug|ARM64.ActiveCfg = Debug|ARM64
+ {A6B2A11B-0669-4AF5-A025-8DD02DBBE5EA}.Debug|ARM64.Build.0 = Debug|ARM64
+ {A6B2A11B-0669-4AF5-A025-8DD02DBBE5EA}.Debug|x64.ActiveCfg = Debug|x64
+ {A6B2A11B-0669-4AF5-A025-8DD02DBBE5EA}.Debug|x64.Build.0 = Debug|x64
+ {A6B2A11B-0669-4AF5-A025-8DD02DBBE5EA}.Debug|x86.ActiveCfg = Debug|Win32
+ {A6B2A11B-0669-4AF5-A025-8DD02DBBE5EA}.Debug|x86.Build.0 = Debug|Win32
+ {A6B2A11B-0669-4AF5-A025-8DD02DBBE5EA}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
+ {A6B2A11B-0669-4AF5-A025-8DD02DBBE5EA}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
+ {A6B2A11B-0669-4AF5-A025-8DD02DBBE5EA}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
+ {A6B2A11B-0669-4AF5-A025-8DD02DBBE5EA}.Release.DLL|x64.Build.0 = Release.DLL|x64
+ {A6B2A11B-0669-4AF5-A025-8DD02DBBE5EA}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
+ {A6B2A11B-0669-4AF5-A025-8DD02DBBE5EA}.Release.DLL|x86.Build.0 = Release.DLL|Win32
+ {A6B2A11B-0669-4AF5-A025-8DD02DBBE5EA}.Release|ARM64.ActiveCfg = Release|ARM64
+ {A6B2A11B-0669-4AF5-A025-8DD02DBBE5EA}.Release|ARM64.Build.0 = Release|ARM64
+ {A6B2A11B-0669-4AF5-A025-8DD02DBBE5EA}.Release|x64.ActiveCfg = Release|x64
+ {A6B2A11B-0669-4AF5-A025-8DD02DBBE5EA}.Release|x64.Build.0 = Release|x64
+ {A6B2A11B-0669-4AF5-A025-8DD02DBBE5EA}.Release|x86.ActiveCfg = Release|Win32
+ {A6B2A11B-0669-4AF5-A025-8DD02DBBE5EA}.Release|x86.Build.0 = Release|Win32
+ {B176BB4A-CA31-4E2A-B790-3EA0ED2EE870}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
+ {B176BB4A-CA31-4E2A-B790-3EA0ED2EE870}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
+ {B176BB4A-CA31-4E2A-B790-3EA0ED2EE870}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
+ {B176BB4A-CA31-4E2A-B790-3EA0ED2EE870}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
+ {B176BB4A-CA31-4E2A-B790-3EA0ED2EE870}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
+ {B176BB4A-CA31-4E2A-B790-3EA0ED2EE870}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
+ {B176BB4A-CA31-4E2A-B790-3EA0ED2EE870}.Debug|ARM64.ActiveCfg = Debug|ARM64
+ {B176BB4A-CA31-4E2A-B790-3EA0ED2EE870}.Debug|ARM64.Build.0 = Debug|ARM64
+ {B176BB4A-CA31-4E2A-B790-3EA0ED2EE870}.Debug|x64.ActiveCfg = Debug|x64
+ {B176BB4A-CA31-4E2A-B790-3EA0ED2EE870}.Debug|x64.Build.0 = Debug|x64
+ {B176BB4A-CA31-4E2A-B790-3EA0ED2EE870}.Debug|x86.ActiveCfg = Debug|Win32
+ {B176BB4A-CA31-4E2A-B790-3EA0ED2EE870}.Debug|x86.Build.0 = Debug|Win32
+ {B176BB4A-CA31-4E2A-B790-3EA0ED2EE870}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
+ {B176BB4A-CA31-4E2A-B790-3EA0ED2EE870}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
+ {B176BB4A-CA31-4E2A-B790-3EA0ED2EE870}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
+ {B176BB4A-CA31-4E2A-B790-3EA0ED2EE870}.Release.DLL|x64.Build.0 = Release.DLL|x64
+ {B176BB4A-CA31-4E2A-B790-3EA0ED2EE870}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
+ {B176BB4A-CA31-4E2A-B790-3EA0ED2EE870}.Release.DLL|x86.Build.0 = Release.DLL|Win32
+ {B176BB4A-CA31-4E2A-B790-3EA0ED2EE870}.Release|ARM64.ActiveCfg = Release|ARM64
+ {B176BB4A-CA31-4E2A-B790-3EA0ED2EE870}.Release|ARM64.Build.0 = Release|ARM64
+ {B176BB4A-CA31-4E2A-B790-3EA0ED2EE870}.Release|x64.ActiveCfg = Release|x64
+ {B176BB4A-CA31-4E2A-B790-3EA0ED2EE870}.Release|x64.Build.0 = Release|x64
+ {B176BB4A-CA31-4E2A-B790-3EA0ED2EE870}.Release|x86.ActiveCfg = Release|Win32
+ {B176BB4A-CA31-4E2A-B790-3EA0ED2EE870}.Release|x86.Build.0 = Release|Win32
+ {D08AA2A0-2F94-4BF5-B42D-E92450F03FD1}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
+ {D08AA2A0-2F94-4BF5-B42D-E92450F03FD1}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
+ {D08AA2A0-2F94-4BF5-B42D-E92450F03FD1}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
+ {D08AA2A0-2F94-4BF5-B42D-E92450F03FD1}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
+ {D08AA2A0-2F94-4BF5-B42D-E92450F03FD1}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
+ {D08AA2A0-2F94-4BF5-B42D-E92450F03FD1}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
+ {D08AA2A0-2F94-4BF5-B42D-E92450F03FD1}.Debug|ARM64.ActiveCfg = Debug|ARM64
+ {D08AA2A0-2F94-4BF5-B42D-E92450F03FD1}.Debug|ARM64.Build.0 = Debug|ARM64
+ {D08AA2A0-2F94-4BF5-B42D-E92450F03FD1}.Debug|x64.ActiveCfg = Debug|x64
+ {D08AA2A0-2F94-4BF5-B42D-E92450F03FD1}.Debug|x64.Build.0 = Debug|x64
+ {D08AA2A0-2F94-4BF5-B42D-E92450F03FD1}.Debug|x86.ActiveCfg = Debug|Win32
+ {D08AA2A0-2F94-4BF5-B42D-E92450F03FD1}.Debug|x86.Build.0 = Debug|Win32
+ {D08AA2A0-2F94-4BF5-B42D-E92450F03FD1}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
+ {D08AA2A0-2F94-4BF5-B42D-E92450F03FD1}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
+ {D08AA2A0-2F94-4BF5-B42D-E92450F03FD1}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
+ {D08AA2A0-2F94-4BF5-B42D-E92450F03FD1}.Release.DLL|x64.Build.0 = Release.DLL|x64
+ {D08AA2A0-2F94-4BF5-B42D-E92450F03FD1}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
+ {D08AA2A0-2F94-4BF5-B42D-E92450F03FD1}.Release.DLL|x86.Build.0 = Release.DLL|Win32
+ {D08AA2A0-2F94-4BF5-B42D-E92450F03FD1}.Release|ARM64.ActiveCfg = Release|ARM64
+ {D08AA2A0-2F94-4BF5-B42D-E92450F03FD1}.Release|ARM64.Build.0 = Release|ARM64
+ {D08AA2A0-2F94-4BF5-B42D-E92450F03FD1}.Release|x64.ActiveCfg = Release|x64
+ {D08AA2A0-2F94-4BF5-B42D-E92450F03FD1}.Release|x64.Build.0 = Release|x64
+ {D08AA2A0-2F94-4BF5-B42D-E92450F03FD1}.Release|x86.ActiveCfg = Release|Win32
+ {D08AA2A0-2F94-4BF5-B42D-E92450F03FD1}.Release|x86.Build.0 = Release|Win32
+ {4A7D0ECA-D7CC-4E66-B741-C92E9C1B42FF}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
+ {4A7D0ECA-D7CC-4E66-B741-C92E9C1B42FF}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
+ {4A7D0ECA-D7CC-4E66-B741-C92E9C1B42FF}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
+ {4A7D0ECA-D7CC-4E66-B741-C92E9C1B42FF}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
+ {4A7D0ECA-D7CC-4E66-B741-C92E9C1B42FF}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
+ {4A7D0ECA-D7CC-4E66-B741-C92E9C1B42FF}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
+ {4A7D0ECA-D7CC-4E66-B741-C92E9C1B42FF}.Debug|ARM64.ActiveCfg = Debug|ARM64
+ {4A7D0ECA-D7CC-4E66-B741-C92E9C1B42FF}.Debug|ARM64.Build.0 = Debug|ARM64
+ {4A7D0ECA-D7CC-4E66-B741-C92E9C1B42FF}.Debug|x64.ActiveCfg = Debug|x64
+ {4A7D0ECA-D7CC-4E66-B741-C92E9C1B42FF}.Debug|x64.Build.0 = Debug|x64
+ {4A7D0ECA-D7CC-4E66-B741-C92E9C1B42FF}.Debug|x86.ActiveCfg = Debug|Win32
+ {4A7D0ECA-D7CC-4E66-B741-C92E9C1B42FF}.Debug|x86.Build.0 = Debug|Win32
+ {4A7D0ECA-D7CC-4E66-B741-C92E9C1B42FF}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
+ {4A7D0ECA-D7CC-4E66-B741-C92E9C1B42FF}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
+ {4A7D0ECA-D7CC-4E66-B741-C92E9C1B42FF}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
+ {4A7D0ECA-D7CC-4E66-B741-C92E9C1B42FF}.Release.DLL|x64.Build.0 = Release.DLL|x64
+ {4A7D0ECA-D7CC-4E66-B741-C92E9C1B42FF}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
+ {4A7D0ECA-D7CC-4E66-B741-C92E9C1B42FF}.Release.DLL|x86.Build.0 = Release.DLL|Win32
+ {4A7D0ECA-D7CC-4E66-B741-C92E9C1B42FF}.Release|ARM64.ActiveCfg = Release|ARM64
+ {4A7D0ECA-D7CC-4E66-B741-C92E9C1B42FF}.Release|ARM64.Build.0 = Release|ARM64
+ {4A7D0ECA-D7CC-4E66-B741-C92E9C1B42FF}.Release|x64.ActiveCfg = Release|x64
+ {4A7D0ECA-D7CC-4E66-B741-C92E9C1B42FF}.Release|x64.Build.0 = Release|x64
+ {4A7D0ECA-D7CC-4E66-B741-C92E9C1B42FF}.Release|x86.ActiveCfg = Release|Win32
+ {4A7D0ECA-D7CC-4E66-B741-C92E9C1B42FF}.Release|x86.Build.0 = Release|Win32
+ {CF3755C4-937D-4ABF-B7B3-95140808717F}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
+ {CF3755C4-937D-4ABF-B7B3-95140808717F}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
+ {CF3755C4-937D-4ABF-B7B3-95140808717F}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
+ {CF3755C4-937D-4ABF-B7B3-95140808717F}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
+ {CF3755C4-937D-4ABF-B7B3-95140808717F}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
+ {CF3755C4-937D-4ABF-B7B3-95140808717F}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
+ {CF3755C4-937D-4ABF-B7B3-95140808717F}.Debug|ARM64.ActiveCfg = Debug|ARM64
+ {CF3755C4-937D-4ABF-B7B3-95140808717F}.Debug|ARM64.Build.0 = Debug|ARM64
+ {CF3755C4-937D-4ABF-B7B3-95140808717F}.Debug|x64.ActiveCfg = Debug|x64
+ {CF3755C4-937D-4ABF-B7B3-95140808717F}.Debug|x64.Build.0 = Debug|x64
+ {CF3755C4-937D-4ABF-B7B3-95140808717F}.Debug|x86.ActiveCfg = Debug|Win32
+ {CF3755C4-937D-4ABF-B7B3-95140808717F}.Debug|x86.Build.0 = Debug|Win32
+ {CF3755C4-937D-4ABF-B7B3-95140808717F}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
+ {CF3755C4-937D-4ABF-B7B3-95140808717F}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
+ {CF3755C4-937D-4ABF-B7B3-95140808717F}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
+ {CF3755C4-937D-4ABF-B7B3-95140808717F}.Release.DLL|x64.Build.0 = Release.DLL|x64
+ {CF3755C4-937D-4ABF-B7B3-95140808717F}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
+ {CF3755C4-937D-4ABF-B7B3-95140808717F}.Release.DLL|x86.Build.0 = Release.DLL|Win32
+ {CF3755C4-937D-4ABF-B7B3-95140808717F}.Release|ARM64.ActiveCfg = Release|ARM64
+ {CF3755C4-937D-4ABF-B7B3-95140808717F}.Release|ARM64.Build.0 = Release|ARM64
+ {CF3755C4-937D-4ABF-B7B3-95140808717F}.Release|x64.ActiveCfg = Release|x64
+ {CF3755C4-937D-4ABF-B7B3-95140808717F}.Release|x64.Build.0 = Release|x64
+ {CF3755C4-937D-4ABF-B7B3-95140808717F}.Release|x86.ActiveCfg = Release|Win32
+ {CF3755C4-937D-4ABF-B7B3-95140808717F}.Release|x86.Build.0 = Release|Win32
+ {D34939FE-8873-4C53-8D6C-74DED78EA3C4}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
+ {D34939FE-8873-4C53-8D6C-74DED78EA3C4}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
+ {D34939FE-8873-4C53-8D6C-74DED78EA3C4}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
+ {D34939FE-8873-4C53-8D6C-74DED78EA3C4}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
+ {D34939FE-8873-4C53-8D6C-74DED78EA3C4}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
+ {D34939FE-8873-4C53-8D6C-74DED78EA3C4}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
+ {D34939FE-8873-4C53-8D6C-74DED78EA3C4}.Debug|ARM64.ActiveCfg = Debug|ARM64
+ {D34939FE-8873-4C53-8D6C-74DED78EA3C4}.Debug|ARM64.Build.0 = Debug|ARM64
+ {D34939FE-8873-4C53-8D6C-74DED78EA3C4}.Debug|x64.ActiveCfg = Debug|x64
+ {D34939FE-8873-4C53-8D6C-74DED78EA3C4}.Debug|x64.Build.0 = Debug|x64
+ {D34939FE-8873-4C53-8D6C-74DED78EA3C4}.Debug|x86.ActiveCfg = Debug|Win32
+ {D34939FE-8873-4C53-8D6C-74DED78EA3C4}.Debug|x86.Build.0 = Debug|Win32
+ {D34939FE-8873-4C53-8D6C-74DED78EA3C4}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
+ {D34939FE-8873-4C53-8D6C-74DED78EA3C4}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
+ {D34939FE-8873-4C53-8D6C-74DED78EA3C4}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
+ {D34939FE-8873-4C53-8D6C-74DED78EA3C4}.Release.DLL|x64.Build.0 = Release.DLL|x64
+ {D34939FE-8873-4C53-8D6C-74DED78EA3C4}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
+ {D34939FE-8873-4C53-8D6C-74DED78EA3C4}.Release.DLL|x86.Build.0 = Release.DLL|Win32
+ {D34939FE-8873-4C53-8D6C-74DED78EA3C4}.Release|ARM64.ActiveCfg = Release|ARM64
+ {D34939FE-8873-4C53-8D6C-74DED78EA3C4}.Release|ARM64.Build.0 = Release|ARM64
+ {D34939FE-8873-4C53-8D6C-74DED78EA3C4}.Release|x64.ActiveCfg = Release|x64
+ {D34939FE-8873-4C53-8D6C-74DED78EA3C4}.Release|x64.Build.0 = Release|x64
+ {D34939FE-8873-4C53-8D6C-74DED78EA3C4}.Release|x86.ActiveCfg = Release|Win32
+ {D34939FE-8873-4C53-8D6C-74DED78EA3C4}.Release|x86.Build.0 = Release|Win32
+ {D408A730-363A-4ABF-BCEF-5D63DCC66042}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
+ {D408A730-363A-4ABF-BCEF-5D63DCC66042}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
+ {D408A730-363A-4ABF-BCEF-5D63DCC66042}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
+ {D408A730-363A-4ABF-BCEF-5D63DCC66042}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
+ {D408A730-363A-4ABF-BCEF-5D63DCC66042}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
+ {D408A730-363A-4ABF-BCEF-5D63DCC66042}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
+ {D408A730-363A-4ABF-BCEF-5D63DCC66042}.Debug|ARM64.ActiveCfg = Debug|ARM64
+ {D408A730-363A-4ABF-BCEF-5D63DCC66042}.Debug|ARM64.Build.0 = Debug|ARM64
+ {D408A730-363A-4ABF-BCEF-5D63DCC66042}.Debug|x64.ActiveCfg = Debug|x64
+ {D408A730-363A-4ABF-BCEF-5D63DCC66042}.Debug|x64.Build.0 = Debug|x64
+ {D408A730-363A-4ABF-BCEF-5D63DCC66042}.Debug|x86.ActiveCfg = Debug|Win32
+ {D408A730-363A-4ABF-BCEF-5D63DCC66042}.Debug|x86.Build.0 = Debug|Win32
+ {D408A730-363A-4ABF-BCEF-5D63DCC66042}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
+ {D408A730-363A-4ABF-BCEF-5D63DCC66042}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
+ {D408A730-363A-4ABF-BCEF-5D63DCC66042}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
+ {D408A730-363A-4ABF-BCEF-5D63DCC66042}.Release.DLL|x64.Build.0 = Release.DLL|x64
+ {D408A730-363A-4ABF-BCEF-5D63DCC66042}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
+ {D408A730-363A-4ABF-BCEF-5D63DCC66042}.Release.DLL|x86.Build.0 = Release.DLL|Win32
+ {D408A730-363A-4ABF-BCEF-5D63DCC66042}.Release|ARM64.ActiveCfg = Release|ARM64
+ {D408A730-363A-4ABF-BCEF-5D63DCC66042}.Release|ARM64.Build.0 = Release|ARM64
+ {D408A730-363A-4ABF-BCEF-5D63DCC66042}.Release|x64.ActiveCfg = Release|x64
+ {D408A730-363A-4ABF-BCEF-5D63DCC66042}.Release|x64.Build.0 = Release|x64
+ {D408A730-363A-4ABF-BCEF-5D63DCC66042}.Release|x86.ActiveCfg = Release|Win32
+ {D408A730-363A-4ABF-BCEF-5D63DCC66042}.Release|x86.Build.0 = Release|Win32
+ {F532AFBC-9E62-4A89-BB99-1044E4B2D8ED}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
+ {F532AFBC-9E62-4A89-BB99-1044E4B2D8ED}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
+ {F532AFBC-9E62-4A89-BB99-1044E4B2D8ED}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
+ {F532AFBC-9E62-4A89-BB99-1044E4B2D8ED}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
+ {F532AFBC-9E62-4A89-BB99-1044E4B2D8ED}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
+ {F532AFBC-9E62-4A89-BB99-1044E4B2D8ED}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
+ {F532AFBC-9E62-4A89-BB99-1044E4B2D8ED}.Debug|ARM64.ActiveCfg = Debug|ARM64
+ {F532AFBC-9E62-4A89-BB99-1044E4B2D8ED}.Debug|ARM64.Build.0 = Debug|ARM64
+ {F532AFBC-9E62-4A89-BB99-1044E4B2D8ED}.Debug|x64.ActiveCfg = Debug|x64
+ {F532AFBC-9E62-4A89-BB99-1044E4B2D8ED}.Debug|x64.Build.0 = Debug|x64
+ {F532AFBC-9E62-4A89-BB99-1044E4B2D8ED}.Debug|x86.ActiveCfg = Debug|Win32
+ {F532AFBC-9E62-4A89-BB99-1044E4B2D8ED}.Debug|x86.Build.0 = Debug|Win32
+ {F532AFBC-9E62-4A89-BB99-1044E4B2D8ED}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
+ {F532AFBC-9E62-4A89-BB99-1044E4B2D8ED}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
+ {F532AFBC-9E62-4A89-BB99-1044E4B2D8ED}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
+ {F532AFBC-9E62-4A89-BB99-1044E4B2D8ED}.Release.DLL|x64.Build.0 = Release.DLL|x64
+ {F532AFBC-9E62-4A89-BB99-1044E4B2D8ED}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
+ {F532AFBC-9E62-4A89-BB99-1044E4B2D8ED}.Release.DLL|x86.Build.0 = Release.DLL|Win32
+ {F532AFBC-9E62-4A89-BB99-1044E4B2D8ED}.Release|ARM64.ActiveCfg = Release|ARM64
+ {F532AFBC-9E62-4A89-BB99-1044E4B2D8ED}.Release|ARM64.Build.0 = Release|ARM64
+ {F532AFBC-9E62-4A89-BB99-1044E4B2D8ED}.Release|x64.ActiveCfg = Release|x64
+ {F532AFBC-9E62-4A89-BB99-1044E4B2D8ED}.Release|x64.Build.0 = Release|x64
+ {F532AFBC-9E62-4A89-BB99-1044E4B2D8ED}.Release|x86.ActiveCfg = Release|Win32
+ {F532AFBC-9E62-4A89-BB99-1044E4B2D8ED}.Release|x86.Build.0 = Release|Win32
+ {52FB7463-C128-42AF-A02F-78F48473EA9A}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
+ {52FB7463-C128-42AF-A02F-78F48473EA9A}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
+ {52FB7463-C128-42AF-A02F-78F48473EA9A}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
+ {52FB7463-C128-42AF-A02F-78F48473EA9A}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
+ {52FB7463-C128-42AF-A02F-78F48473EA9A}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
+ {52FB7463-C128-42AF-A02F-78F48473EA9A}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
+ {52FB7463-C128-42AF-A02F-78F48473EA9A}.Debug|ARM64.ActiveCfg = Debug|ARM64
+ {52FB7463-C128-42AF-A02F-78F48473EA9A}.Debug|ARM64.Build.0 = Debug|ARM64
+ {52FB7463-C128-42AF-A02F-78F48473EA9A}.Debug|x64.ActiveCfg = Debug|x64
+ {52FB7463-C128-42AF-A02F-78F48473EA9A}.Debug|x64.Build.0 = Debug|x64
+ {52FB7463-C128-42AF-A02F-78F48473EA9A}.Debug|x86.ActiveCfg = Debug|Win32
+ {52FB7463-C128-42AF-A02F-78F48473EA9A}.Debug|x86.Build.0 = Debug|Win32
+ {52FB7463-C128-42AF-A02F-78F48473EA9A}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
+ {52FB7463-C128-42AF-A02F-78F48473EA9A}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
+ {52FB7463-C128-42AF-A02F-78F48473EA9A}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
+ {52FB7463-C128-42AF-A02F-78F48473EA9A}.Release.DLL|x64.Build.0 = Release.DLL|x64
+ {52FB7463-C128-42AF-A02F-78F48473EA9A}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
+ {52FB7463-C128-42AF-A02F-78F48473EA9A}.Release.DLL|x86.Build.0 = Release.DLL|Win32
+ {52FB7463-C128-42AF-A02F-78F48473EA9A}.Release|ARM64.ActiveCfg = Release|ARM64
+ {52FB7463-C128-42AF-A02F-78F48473EA9A}.Release|ARM64.Build.0 = Release|ARM64
+ {52FB7463-C128-42AF-A02F-78F48473EA9A}.Release|x64.ActiveCfg = Release|x64
+ {52FB7463-C128-42AF-A02F-78F48473EA9A}.Release|x64.Build.0 = Release|x64
+ {52FB7463-C128-42AF-A02F-78F48473EA9A}.Release|x86.ActiveCfg = Release|Win32
+ {52FB7463-C128-42AF-A02F-78F48473EA9A}.Release|x86.Build.0 = Release|Win32
+ {7381D91E-5C72-48F0-AAB4-95C9B10D7484}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
+ {7381D91E-5C72-48F0-AAB4-95C9B10D7484}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
+ {7381D91E-5C72-48F0-AAB4-95C9B10D7484}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
+ {7381D91E-5C72-48F0-AAB4-95C9B10D7484}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
+ {7381D91E-5C72-48F0-AAB4-95C9B10D7484}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
+ {7381D91E-5C72-48F0-AAB4-95C9B10D7484}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
+ {7381D91E-5C72-48F0-AAB4-95C9B10D7484}.Debug|ARM64.ActiveCfg = Debug|ARM64
+ {7381D91E-5C72-48F0-AAB4-95C9B10D7484}.Debug|ARM64.Build.0 = Debug|ARM64
+ {7381D91E-5C72-48F0-AAB4-95C9B10D7484}.Debug|x64.ActiveCfg = Debug|x64
+ {7381D91E-5C72-48F0-AAB4-95C9B10D7484}.Debug|x64.Build.0 = Debug|x64
+ {7381D91E-5C72-48F0-AAB4-95C9B10D7484}.Debug|x86.ActiveCfg = Debug|Win32
+ {7381D91E-5C72-48F0-AAB4-95C9B10D7484}.Debug|x86.Build.0 = Debug|Win32
+ {7381D91E-5C72-48F0-AAB4-95C9B10D7484}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
+ {7381D91E-5C72-48F0-AAB4-95C9B10D7484}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
+ {7381D91E-5C72-48F0-AAB4-95C9B10D7484}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
+ {7381D91E-5C72-48F0-AAB4-95C9B10D7484}.Release.DLL|x64.Build.0 = Release.DLL|x64
+ {7381D91E-5C72-48F0-AAB4-95C9B10D7484}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
+ {7381D91E-5C72-48F0-AAB4-95C9B10D7484}.Release.DLL|x86.Build.0 = Release.DLL|Win32
+ {7381D91E-5C72-48F0-AAB4-95C9B10D7484}.Release|ARM64.ActiveCfg = Release|ARM64
+ {7381D91E-5C72-48F0-AAB4-95C9B10D7484}.Release|ARM64.Build.0 = Release|ARM64
+ {7381D91E-5C72-48F0-AAB4-95C9B10D7484}.Release|x64.ActiveCfg = Release|x64
+ {7381D91E-5C72-48F0-AAB4-95C9B10D7484}.Release|x64.Build.0 = Release|x64
+ {7381D91E-5C72-48F0-AAB4-95C9B10D7484}.Release|x86.ActiveCfg = Release|Win32
+ {7381D91E-5C72-48F0-AAB4-95C9B10D7484}.Release|x86.Build.0 = Release|Win32
+ {D36EC43E-B31F-4CF4-8285-93A7A9D90189}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
+ {D36EC43E-B31F-4CF4-8285-93A7A9D90189}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
+ {D36EC43E-B31F-4CF4-8285-93A7A9D90189}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
+ {D36EC43E-B31F-4CF4-8285-93A7A9D90189}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
+ {D36EC43E-B31F-4CF4-8285-93A7A9D90189}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
+ {D36EC43E-B31F-4CF4-8285-93A7A9D90189}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
+ {D36EC43E-B31F-4CF4-8285-93A7A9D90189}.Debug|ARM64.ActiveCfg = Debug|ARM64
+ {D36EC43E-B31F-4CF4-8285-93A7A9D90189}.Debug|ARM64.Build.0 = Debug|ARM64
+ {D36EC43E-B31F-4CF4-8285-93A7A9D90189}.Debug|x64.ActiveCfg = Debug|x64
+ {D36EC43E-B31F-4CF4-8285-93A7A9D90189}.Debug|x64.Build.0 = Debug|x64
+ {D36EC43E-B31F-4CF4-8285-93A7A9D90189}.Debug|x86.ActiveCfg = Debug|Win32
+ {D36EC43E-B31F-4CF4-8285-93A7A9D90189}.Debug|x86.Build.0 = Debug|Win32
+ {D36EC43E-B31F-4CF4-8285-93A7A9D90189}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
+ {D36EC43E-B31F-4CF4-8285-93A7A9D90189}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
+ {D36EC43E-B31F-4CF4-8285-93A7A9D90189}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
+ {D36EC43E-B31F-4CF4-8285-93A7A9D90189}.Release.DLL|x64.Build.0 = Release.DLL|x64
+ {D36EC43E-B31F-4CF4-8285-93A7A9D90189}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
+ {D36EC43E-B31F-4CF4-8285-93A7A9D90189}.Release.DLL|x86.Build.0 = Release.DLL|Win32
+ {D36EC43E-B31F-4CF4-8285-93A7A9D90189}.Release|ARM64.ActiveCfg = Release|ARM64
+ {D36EC43E-B31F-4CF4-8285-93A7A9D90189}.Release|ARM64.Build.0 = Release|ARM64
+ {D36EC43E-B31F-4CF4-8285-93A7A9D90189}.Release|x64.ActiveCfg = Release|x64
+ {D36EC43E-B31F-4CF4-8285-93A7A9D90189}.Release|x64.Build.0 = Release|x64
+ {D36EC43E-B31F-4CF4-8285-93A7A9D90189}.Release|x86.ActiveCfg = Release|Win32
+ {D36EC43E-B31F-4CF4-8285-93A7A9D90189}.Release|x86.Build.0 = Release|Win32
+ {274C0319-7E1E-4188-936B-8DF3331230B3}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
+ {274C0319-7E1E-4188-936B-8DF3331230B3}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
+ {274C0319-7E1E-4188-936B-8DF3331230B3}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
+ {274C0319-7E1E-4188-936B-8DF3331230B3}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
+ {274C0319-7E1E-4188-936B-8DF3331230B3}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
+ {274C0319-7E1E-4188-936B-8DF3331230B3}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
+ {274C0319-7E1E-4188-936B-8DF3331230B3}.Debug|ARM64.ActiveCfg = Debug|ARM64
+ {274C0319-7E1E-4188-936B-8DF3331230B3}.Debug|ARM64.Build.0 = Debug|ARM64
+ {274C0319-7E1E-4188-936B-8DF3331230B3}.Debug|x64.ActiveCfg = Debug|x64
+ {274C0319-7E1E-4188-936B-8DF3331230B3}.Debug|x64.Build.0 = Debug|x64
+ {274C0319-7E1E-4188-936B-8DF3331230B3}.Debug|x86.ActiveCfg = Debug|Win32
+ {274C0319-7E1E-4188-936B-8DF3331230B3}.Debug|x86.Build.0 = Debug|Win32
+ {274C0319-7E1E-4188-936B-8DF3331230B3}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
+ {274C0319-7E1E-4188-936B-8DF3331230B3}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
+ {274C0319-7E1E-4188-936B-8DF3331230B3}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
+ {274C0319-7E1E-4188-936B-8DF3331230B3}.Release.DLL|x64.Build.0 = Release.DLL|x64
+ {274C0319-7E1E-4188-936B-8DF3331230B3}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
+ {274C0319-7E1E-4188-936B-8DF3331230B3}.Release.DLL|x86.Build.0 = Release.DLL|Win32
+ {274C0319-7E1E-4188-936B-8DF3331230B3}.Release|ARM64.ActiveCfg = Release|ARM64
+ {274C0319-7E1E-4188-936B-8DF3331230B3}.Release|ARM64.Build.0 = Release|ARM64
+ {274C0319-7E1E-4188-936B-8DF3331230B3}.Release|x64.ActiveCfg = Release|x64
+ {274C0319-7E1E-4188-936B-8DF3331230B3}.Release|x64.Build.0 = Release|x64
+ {274C0319-7E1E-4188-936B-8DF3331230B3}.Release|x86.ActiveCfg = Release|Win32
+ {274C0319-7E1E-4188-936B-8DF3331230B3}.Release|x86.Build.0 = Release|Win32
+ {41BBCC10-CFDE-48A1-B2E0-A0EC6A668629}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
+ {41BBCC10-CFDE-48A1-B2E0-A0EC6A668629}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
+ {41BBCC10-CFDE-48A1-B2E0-A0EC6A668629}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
+ {41BBCC10-CFDE-48A1-B2E0-A0EC6A668629}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
+ {41BBCC10-CFDE-48A1-B2E0-A0EC6A668629}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
+ {41BBCC10-CFDE-48A1-B2E0-A0EC6A668629}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
+ {41BBCC10-CFDE-48A1-B2E0-A0EC6A668629}.Debug|ARM64.ActiveCfg = Debug|ARM64
+ {41BBCC10-CFDE-48A1-B2E0-A0EC6A668629}.Debug|ARM64.Build.0 = Debug|ARM64
+ {41BBCC10-CFDE-48A1-B2E0-A0EC6A668629}.Debug|x64.ActiveCfg = Debug|x64
+ {41BBCC10-CFDE-48A1-B2E0-A0EC6A668629}.Debug|x64.Build.0 = Debug|x64
+ {41BBCC10-CFDE-48A1-B2E0-A0EC6A668629}.Debug|x86.ActiveCfg = Debug|Win32
+ {41BBCC10-CFDE-48A1-B2E0-A0EC6A668629}.Debug|x86.Build.0 = Debug|Win32
+ {41BBCC10-CFDE-48A1-B2E0-A0EC6A668629}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
+ {41BBCC10-CFDE-48A1-B2E0-A0EC6A668629}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
+ {41BBCC10-CFDE-48A1-B2E0-A0EC6A668629}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
+ {41BBCC10-CFDE-48A1-B2E0-A0EC6A668629}.Release.DLL|x64.Build.0 = Release.DLL|x64
+ {41BBCC10-CFDE-48A1-B2E0-A0EC6A668629}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
+ {41BBCC10-CFDE-48A1-B2E0-A0EC6A668629}.Release.DLL|x86.Build.0 = Release.DLL|Win32
+ {41BBCC10-CFDE-48A1-B2E0-A0EC6A668629}.Release|ARM64.ActiveCfg = Release|ARM64
+ {41BBCC10-CFDE-48A1-B2E0-A0EC6A668629}.Release|ARM64.Build.0 = Release|ARM64
+ {41BBCC10-CFDE-48A1-B2E0-A0EC6A668629}.Release|x64.ActiveCfg = Release|x64
+ {41BBCC10-CFDE-48A1-B2E0-A0EC6A668629}.Release|x64.Build.0 = Release|x64
+ {41BBCC10-CFDE-48A1-B2E0-A0EC6A668629}.Release|x86.ActiveCfg = Release|Win32
+ {41BBCC10-CFDE-48A1-B2E0-A0EC6A668629}.Release|x86.Build.0 = Release|Win32
+ {600C3D4F-0670-4DB4-B30F-520A729053B5}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
+ {600C3D4F-0670-4DB4-B30F-520A729053B5}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
+ {600C3D4F-0670-4DB4-B30F-520A729053B5}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
+ {600C3D4F-0670-4DB4-B30F-520A729053B5}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
+ {600C3D4F-0670-4DB4-B30F-520A729053B5}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
+ {600C3D4F-0670-4DB4-B30F-520A729053B5}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
+ {600C3D4F-0670-4DB4-B30F-520A729053B5}.Debug|ARM64.ActiveCfg = Debug|ARM64
+ {600C3D4F-0670-4DB4-B30F-520A729053B5}.Debug|ARM64.Build.0 = Debug|ARM64
+ {600C3D4F-0670-4DB4-B30F-520A729053B5}.Debug|x64.ActiveCfg = Debug|x64
+ {600C3D4F-0670-4DB4-B30F-520A729053B5}.Debug|x64.Build.0 = Debug|x64
+ {600C3D4F-0670-4DB4-B30F-520A729053B5}.Debug|x86.ActiveCfg = Debug|Win32
+ {600C3D4F-0670-4DB4-B30F-520A729053B5}.Debug|x86.Build.0 = Debug|Win32
+ {600C3D4F-0670-4DB4-B30F-520A729053B5}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
+ {600C3D4F-0670-4DB4-B30F-520A729053B5}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
+ {600C3D4F-0670-4DB4-B30F-520A729053B5}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
+ {600C3D4F-0670-4DB4-B30F-520A729053B5}.Release.DLL|x64.Build.0 = Release.DLL|x64
+ {600C3D4F-0670-4DB4-B30F-520A729053B5}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
+ {600C3D4F-0670-4DB4-B30F-520A729053B5}.Release.DLL|x86.Build.0 = Release.DLL|Win32
+ {600C3D4F-0670-4DB4-B30F-520A729053B5}.Release|ARM64.ActiveCfg = Release|ARM64
+ {600C3D4F-0670-4DB4-B30F-520A729053B5}.Release|ARM64.Build.0 = Release|ARM64
+ {600C3D4F-0670-4DB4-B30F-520A729053B5}.Release|x64.ActiveCfg = Release|x64
+ {600C3D4F-0670-4DB4-B30F-520A729053B5}.Release|x64.Build.0 = Release|x64
+ {600C3D4F-0670-4DB4-B30F-520A729053B5}.Release|x86.ActiveCfg = Release|Win32
+ {600C3D4F-0670-4DB4-B30F-520A729053B5}.Release|x86.Build.0 = Release|Win32
+ {11F33A39-74B7-4018-B5F9-CC285A673A8F}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
+ {11F33A39-74B7-4018-B5F9-CC285A673A8F}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
+ {11F33A39-74B7-4018-B5F9-CC285A673A8F}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
+ {11F33A39-74B7-4018-B5F9-CC285A673A8F}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
+ {11F33A39-74B7-4018-B5F9-CC285A673A8F}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
+ {11F33A39-74B7-4018-B5F9-CC285A673A8F}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
+ {11F33A39-74B7-4018-B5F9-CC285A673A8F}.Debug|ARM64.ActiveCfg = Debug|ARM64
+ {11F33A39-74B7-4018-B5F9-CC285A673A8F}.Debug|ARM64.Build.0 = Debug|ARM64
+ {11F33A39-74B7-4018-B5F9-CC285A673A8F}.Debug|x64.ActiveCfg = Debug|x64
+ {11F33A39-74B7-4018-B5F9-CC285A673A8F}.Debug|x64.Build.0 = Debug|x64
+ {11F33A39-74B7-4018-B5F9-CC285A673A8F}.Debug|x86.ActiveCfg = Debug|Win32
+ {11F33A39-74B7-4018-B5F9-CC285A673A8F}.Debug|x86.Build.0 = Debug|Win32
+ {11F33A39-74B7-4018-B5F9-CC285A673A8F}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
+ {11F33A39-74B7-4018-B5F9-CC285A673A8F}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
+ {11F33A39-74B7-4018-B5F9-CC285A673A8F}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
+ {11F33A39-74B7-4018-B5F9-CC285A673A8F}.Release.DLL|x64.Build.0 = Release.DLL|x64
+ {11F33A39-74B7-4018-B5F9-CC285A673A8F}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
+ {11F33A39-74B7-4018-B5F9-CC285A673A8F}.Release.DLL|x86.Build.0 = Release.DLL|Win32
+ {11F33A39-74B7-4018-B5F9-CC285A673A8F}.Release|ARM64.ActiveCfg = Release|ARM64
+ {11F33A39-74B7-4018-B5F9-CC285A673A8F}.Release|ARM64.Build.0 = Release|ARM64
+ {11F33A39-74B7-4018-B5F9-CC285A673A8F}.Release|x64.ActiveCfg = Release|x64
+ {11F33A39-74B7-4018-B5F9-CC285A673A8F}.Release|x64.Build.0 = Release|x64
+ {11F33A39-74B7-4018-B5F9-CC285A673A8F}.Release|x86.ActiveCfg = Release|Win32
+ {11F33A39-74B7-4018-B5F9-CC285A673A8F}.Release|x86.Build.0 = Release|Win32
+ {A6F5E35E-B4A7-41B3-853A-75558E6E0715}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
+ {A6F5E35E-B4A7-41B3-853A-75558E6E0715}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
+ {A6F5E35E-B4A7-41B3-853A-75558E6E0715}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
+ {A6F5E35E-B4A7-41B3-853A-75558E6E0715}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
+ {A6F5E35E-B4A7-41B3-853A-75558E6E0715}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
+ {A6F5E35E-B4A7-41B3-853A-75558E6E0715}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
+ {A6F5E35E-B4A7-41B3-853A-75558E6E0715}.Debug|ARM64.ActiveCfg = Debug|ARM64
+ {A6F5E35E-B4A7-41B3-853A-75558E6E0715}.Debug|ARM64.Build.0 = Debug|ARM64
+ {A6F5E35E-B4A7-41B3-853A-75558E6E0715}.Debug|x64.ActiveCfg = Debug|x64
+ {A6F5E35E-B4A7-41B3-853A-75558E6E0715}.Debug|x64.Build.0 = Debug|x64
+ {A6F5E35E-B4A7-41B3-853A-75558E6E0715}.Debug|x86.ActiveCfg = Debug|Win32
+ {A6F5E35E-B4A7-41B3-853A-75558E6E0715}.Debug|x86.Build.0 = Debug|Win32
+ {A6F5E35E-B4A7-41B3-853A-75558E6E0715}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
+ {A6F5E35E-B4A7-41B3-853A-75558E6E0715}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
+ {A6F5E35E-B4A7-41B3-853A-75558E6E0715}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
+ {A6F5E35E-B4A7-41B3-853A-75558E6E0715}.Release.DLL|x64.Build.0 = Release.DLL|x64
+ {A6F5E35E-B4A7-41B3-853A-75558E6E0715}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
+ {A6F5E35E-B4A7-41B3-853A-75558E6E0715}.Release.DLL|x86.Build.0 = Release.DLL|Win32
+ {A6F5E35E-B4A7-41B3-853A-75558E6E0715}.Release|ARM64.ActiveCfg = Release|ARM64
+ {A6F5E35E-B4A7-41B3-853A-75558E6E0715}.Release|ARM64.Build.0 = Release|ARM64
+ {A6F5E35E-B4A7-41B3-853A-75558E6E0715}.Release|x64.ActiveCfg = Release|x64
+ {A6F5E35E-B4A7-41B3-853A-75558E6E0715}.Release|x64.Build.0 = Release|x64
+ {A6F5E35E-B4A7-41B3-853A-75558E6E0715}.Release|x86.ActiveCfg = Release|Win32
+ {A6F5E35E-B4A7-41B3-853A-75558E6E0715}.Release|x86.Build.0 = Release|Win32
+ {291B4975-8EFF-4C7C-8AF3-44A77B8491B8}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
+ {291B4975-8EFF-4C7C-8AF3-44A77B8491B8}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
+ {291B4975-8EFF-4C7C-8AF3-44A77B8491B8}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
+ {291B4975-8EFF-4C7C-8AF3-44A77B8491B8}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
+ {291B4975-8EFF-4C7C-8AF3-44A77B8491B8}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
+ {291B4975-8EFF-4C7C-8AF3-44A77B8491B8}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
+ {291B4975-8EFF-4C7C-8AF3-44A77B8491B8}.Debug|ARM64.ActiveCfg = Debug|ARM64
+ {291B4975-8EFF-4C7C-8AF3-44A77B8491B8}.Debug|ARM64.Build.0 = Debug|ARM64
+ {291B4975-8EFF-4C7C-8AF3-44A77B8491B8}.Debug|x64.ActiveCfg = Debug|x64
+ {291B4975-8EFF-4C7C-8AF3-44A77B8491B8}.Debug|x64.Build.0 = Debug|x64
+ {291B4975-8EFF-4C7C-8AF3-44A77B8491B8}.Debug|x86.ActiveCfg = Debug|Win32
+ {291B4975-8EFF-4C7C-8AF3-44A77B8491B8}.Debug|x86.Build.0 = Debug|Win32
+ {291B4975-8EFF-4C7C-8AF3-44A77B8491B8}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
+ {291B4975-8EFF-4C7C-8AF3-44A77B8491B8}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
+ {291B4975-8EFF-4C7C-8AF3-44A77B8491B8}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
+ {291B4975-8EFF-4C7C-8AF3-44A77B8491B8}.Release.DLL|x64.Build.0 = Release.DLL|x64
+ {291B4975-8EFF-4C7C-8AF3-44A77B8491B8}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
+ {291B4975-8EFF-4C7C-8AF3-44A77B8491B8}.Release.DLL|x86.Build.0 = Release.DLL|Win32
+ {291B4975-8EFF-4C7C-8AF3-44A77B8491B8}.Release|ARM64.ActiveCfg = Release|ARM64
+ {291B4975-8EFF-4C7C-8AF3-44A77B8491B8}.Release|ARM64.Build.0 = Release|ARM64
+ {291B4975-8EFF-4C7C-8AF3-44A77B8491B8}.Release|x64.ActiveCfg = Release|x64
+ {291B4975-8EFF-4C7C-8AF3-44A77B8491B8}.Release|x64.Build.0 = Release|x64
+ {291B4975-8EFF-4C7C-8AF3-44A77B8491B8}.Release|x86.ActiveCfg = Release|Win32
+ {291B4975-8EFF-4C7C-8AF3-44A77B8491B8}.Release|x86.Build.0 = Release|Win32
+ {2F1B955B-275E-4D8E-8864-06FEC44D7912}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
+ {2F1B955B-275E-4D8E-8864-06FEC44D7912}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
+ {2F1B955B-275E-4D8E-8864-06FEC44D7912}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
+ {2F1B955B-275E-4D8E-8864-06FEC44D7912}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
+ {2F1B955B-275E-4D8E-8864-06FEC44D7912}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
+ {2F1B955B-275E-4D8E-8864-06FEC44D7912}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
+ {2F1B955B-275E-4D8E-8864-06FEC44D7912}.Debug|ARM64.ActiveCfg = Debug|ARM64
+ {2F1B955B-275E-4D8E-8864-06FEC44D7912}.Debug|ARM64.Build.0 = Debug|ARM64
+ {2F1B955B-275E-4D8E-8864-06FEC44D7912}.Debug|x64.ActiveCfg = Debug|x64
+ {2F1B955B-275E-4D8E-8864-06FEC44D7912}.Debug|x64.Build.0 = Debug|x64
+ {2F1B955B-275E-4D8E-8864-06FEC44D7912}.Debug|x86.ActiveCfg = Debug|Win32
+ {2F1B955B-275E-4D8E-8864-06FEC44D7912}.Debug|x86.Build.0 = Debug|Win32
+ {2F1B955B-275E-4D8E-8864-06FEC44D7912}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
+ {2F1B955B-275E-4D8E-8864-06FEC44D7912}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
+ {2F1B955B-275E-4D8E-8864-06FEC44D7912}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
+ {2F1B955B-275E-4D8E-8864-06FEC44D7912}.Release.DLL|x64.Build.0 = Release.DLL|x64
+ {2F1B955B-275E-4D8E-8864-06FEC44D7912}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
+ {2F1B955B-275E-4D8E-8864-06FEC44D7912}.Release.DLL|x86.Build.0 = Release.DLL|Win32
+ {2F1B955B-275E-4D8E-8864-06FEC44D7912}.Release|ARM64.ActiveCfg = Release|ARM64
+ {2F1B955B-275E-4D8E-8864-06FEC44D7912}.Release|ARM64.Build.0 = Release|ARM64
+ {2F1B955B-275E-4D8E-8864-06FEC44D7912}.Release|x64.ActiveCfg = Release|x64
+ {2F1B955B-275E-4D8E-8864-06FEC44D7912}.Release|x64.Build.0 = Release|x64
+ {2F1B955B-275E-4D8E-8864-06FEC44D7912}.Release|x86.ActiveCfg = Release|Win32
+ {2F1B955B-275E-4D8E-8864-06FEC44D7912}.Release|x86.Build.0 = Release|Win32
+ {F5FC9279-DE63-4EF3-B31F-CFCEF9B11F71}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
+ {F5FC9279-DE63-4EF3-B31F-CFCEF9B11F71}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
+ {F5FC9279-DE63-4EF3-B31F-CFCEF9B11F71}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
+ {F5FC9279-DE63-4EF3-B31F-CFCEF9B11F71}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
+ {F5FC9279-DE63-4EF3-B31F-CFCEF9B11F71}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
+ {F5FC9279-DE63-4EF3-B31F-CFCEF9B11F71}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
+ {F5FC9279-DE63-4EF3-B31F-CFCEF9B11F71}.Debug|ARM64.ActiveCfg = Debug|ARM64
+ {F5FC9279-DE63-4EF3-B31F-CFCEF9B11F71}.Debug|ARM64.Build.0 = Debug|ARM64
+ {F5FC9279-DE63-4EF3-B31F-CFCEF9B11F71}.Debug|x64.ActiveCfg = Debug|x64
+ {F5FC9279-DE63-4EF3-B31F-CFCEF9B11F71}.Debug|x64.Build.0 = Debug|x64
+ {F5FC9279-DE63-4EF3-B31F-CFCEF9B11F71}.Debug|x86.ActiveCfg = Debug|Win32
+ {F5FC9279-DE63-4EF3-B31F-CFCEF9B11F71}.Debug|x86.Build.0 = Debug|Win32
+ {F5FC9279-DE63-4EF3-B31F-CFCEF9B11F71}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
+ {F5FC9279-DE63-4EF3-B31F-CFCEF9B11F71}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
+ {F5FC9279-DE63-4EF3-B31F-CFCEF9B11F71}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
+ {F5FC9279-DE63-4EF3-B31F-CFCEF9B11F71}.Release.DLL|x64.Build.0 = Release.DLL|x64
+ {F5FC9279-DE63-4EF3-B31F-CFCEF9B11F71}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
+ {F5FC9279-DE63-4EF3-B31F-CFCEF9B11F71}.Release.DLL|x86.Build.0 = Release.DLL|Win32
+ {F5FC9279-DE63-4EF3-B31F-CFCEF9B11F71}.Release|ARM64.ActiveCfg = Release|ARM64
+ {F5FC9279-DE63-4EF3-B31F-CFCEF9B11F71}.Release|ARM64.Build.0 = Release|ARM64
+ {F5FC9279-DE63-4EF3-B31F-CFCEF9B11F71}.Release|x64.ActiveCfg = Release|x64
+ {F5FC9279-DE63-4EF3-B31F-CFCEF9B11F71}.Release|x64.Build.0 = Release|x64
+ {F5FC9279-DE63-4EF3-B31F-CFCEF9B11F71}.Release|x86.ActiveCfg = Release|Win32
+ {F5FC9279-DE63-4EF3-B31F-CFCEF9B11F71}.Release|x86.Build.0 = Release|Win32
+ {F2DB2E59-76BF-4D81-859A-AFC289C046C0}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
+ {F2DB2E59-76BF-4D81-859A-AFC289C046C0}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
+ {F2DB2E59-76BF-4D81-859A-AFC289C046C0}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
+ {F2DB2E59-76BF-4D81-859A-AFC289C046C0}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
+ {F2DB2E59-76BF-4D81-859A-AFC289C046C0}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
+ {F2DB2E59-76BF-4D81-859A-AFC289C046C0}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
+ {F2DB2E59-76BF-4D81-859A-AFC289C046C0}.Debug|ARM64.ActiveCfg = Debug|ARM64
+ {F2DB2E59-76BF-4D81-859A-AFC289C046C0}.Debug|ARM64.Build.0 = Debug|ARM64
+ {F2DB2E59-76BF-4D81-859A-AFC289C046C0}.Debug|x64.ActiveCfg = Debug|x64
+ {F2DB2E59-76BF-4D81-859A-AFC289C046C0}.Debug|x64.Build.0 = Debug|x64
+ {F2DB2E59-76BF-4D81-859A-AFC289C046C0}.Debug|x86.ActiveCfg = Debug|Win32
+ {F2DB2E59-76BF-4D81-859A-AFC289C046C0}.Debug|x86.Build.0 = Debug|Win32
+ {F2DB2E59-76BF-4D81-859A-AFC289C046C0}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
+ {F2DB2E59-76BF-4D81-859A-AFC289C046C0}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
+ {F2DB2E59-76BF-4D81-859A-AFC289C046C0}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
+ {F2DB2E59-76BF-4D81-859A-AFC289C046C0}.Release.DLL|x64.Build.0 = Release.DLL|x64
+ {F2DB2E59-76BF-4D81-859A-AFC289C046C0}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
+ {F2DB2E59-76BF-4D81-859A-AFC289C046C0}.Release.DLL|x86.Build.0 = Release.DLL|Win32
+ {F2DB2E59-76BF-4D81-859A-AFC289C046C0}.Release|ARM64.ActiveCfg = Release|ARM64
+ {F2DB2E59-76BF-4D81-859A-AFC289C046C0}.Release|ARM64.Build.0 = Release|ARM64
+ {F2DB2E59-76BF-4D81-859A-AFC289C046C0}.Release|x64.ActiveCfg = Release|x64
+ {F2DB2E59-76BF-4D81-859A-AFC289C046C0}.Release|x64.Build.0 = Release|x64
+ {F2DB2E59-76BF-4D81-859A-AFC289C046C0}.Release|x86.ActiveCfg = Release|Win32
+ {F2DB2E59-76BF-4D81-859A-AFC289C046C0}.Release|x86.Build.0 = Release|Win32
+ {3FE7E9B6-49AC-4246-A789-28DB4644567B}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
+ {3FE7E9B6-49AC-4246-A789-28DB4644567B}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
+ {3FE7E9B6-49AC-4246-A789-28DB4644567B}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
+ {3FE7E9B6-49AC-4246-A789-28DB4644567B}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
+ {3FE7E9B6-49AC-4246-A789-28DB4644567B}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
+ {3FE7E9B6-49AC-4246-A789-28DB4644567B}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
+ {3FE7E9B6-49AC-4246-A789-28DB4644567B}.Debug|ARM64.ActiveCfg = Debug|ARM64
+ {3FE7E9B6-49AC-4246-A789-28DB4644567B}.Debug|ARM64.Build.0 = Debug|ARM64
+ {3FE7E9B6-49AC-4246-A789-28DB4644567B}.Debug|x64.ActiveCfg = Debug|x64
+ {3FE7E9B6-49AC-4246-A789-28DB4644567B}.Debug|x64.Build.0 = Debug|x64
+ {3FE7E9B6-49AC-4246-A789-28DB4644567B}.Debug|x86.ActiveCfg = Debug|Win32
+ {3FE7E9B6-49AC-4246-A789-28DB4644567B}.Debug|x86.Build.0 = Debug|Win32
+ {3FE7E9B6-49AC-4246-A789-28DB4644567B}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
+ {3FE7E9B6-49AC-4246-A789-28DB4644567B}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
+ {3FE7E9B6-49AC-4246-A789-28DB4644567B}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
+ {3FE7E9B6-49AC-4246-A789-28DB4644567B}.Release.DLL|x64.Build.0 = Release.DLL|x64
+ {3FE7E9B6-49AC-4246-A789-28DB4644567B}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
+ {3FE7E9B6-49AC-4246-A789-28DB4644567B}.Release.DLL|x86.Build.0 = Release.DLL|Win32
+ {3FE7E9B6-49AC-4246-A789-28DB4644567B}.Release|ARM64.ActiveCfg = Release|ARM64
+ {3FE7E9B6-49AC-4246-A789-28DB4644567B}.Release|ARM64.Build.0 = Release|ARM64
+ {3FE7E9B6-49AC-4246-A789-28DB4644567B}.Release|x64.ActiveCfg = Release|x64
+ {3FE7E9B6-49AC-4246-A789-28DB4644567B}.Release|x64.Build.0 = Release|x64
+ {3FE7E9B6-49AC-4246-A789-28DB4644567B}.Release|x86.ActiveCfg = Release|Win32
+ {3FE7E9B6-49AC-4246-A789-28DB4644567B}.Release|x86.Build.0 = Release|Win32
+ {EBBBF4A0-2DA2-4DE6-B4FE-C6654A2417A0}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
+ {EBBBF4A0-2DA2-4DE6-B4FE-C6654A2417A0}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
+ {EBBBF4A0-2DA2-4DE6-B4FE-C6654A2417A0}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
+ {EBBBF4A0-2DA2-4DE6-B4FE-C6654A2417A0}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
+ {EBBBF4A0-2DA2-4DE6-B4FE-C6654A2417A0}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
+ {EBBBF4A0-2DA2-4DE6-B4FE-C6654A2417A0}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
+ {EBBBF4A0-2DA2-4DE6-B4FE-C6654A2417A0}.Debug|ARM64.ActiveCfg = Debug|ARM64
+ {EBBBF4A0-2DA2-4DE6-B4FE-C6654A2417A0}.Debug|ARM64.Build.0 = Debug|ARM64
+ {EBBBF4A0-2DA2-4DE6-B4FE-C6654A2417A0}.Debug|x64.ActiveCfg = Debug|x64
+ {EBBBF4A0-2DA2-4DE6-B4FE-C6654A2417A0}.Debug|x64.Build.0 = Debug|x64
+ {EBBBF4A0-2DA2-4DE6-B4FE-C6654A2417A0}.Debug|x86.ActiveCfg = Debug|Win32
+ {EBBBF4A0-2DA2-4DE6-B4FE-C6654A2417A0}.Debug|x86.Build.0 = Debug|Win32
+ {EBBBF4A0-2DA2-4DE6-B4FE-C6654A2417A0}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
+ {EBBBF4A0-2DA2-4DE6-B4FE-C6654A2417A0}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
+ {EBBBF4A0-2DA2-4DE6-B4FE-C6654A2417A0}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
+ {EBBBF4A0-2DA2-4DE6-B4FE-C6654A2417A0}.Release.DLL|x64.Build.0 = Release.DLL|x64
+ {EBBBF4A0-2DA2-4DE6-B4FE-C6654A2417A0}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
+ {EBBBF4A0-2DA2-4DE6-B4FE-C6654A2417A0}.Release.DLL|x86.Build.0 = Release.DLL|Win32
+ {EBBBF4A0-2DA2-4DE6-B4FE-C6654A2417A0}.Release|ARM64.ActiveCfg = Release|ARM64
+ {EBBBF4A0-2DA2-4DE6-B4FE-C6654A2417A0}.Release|ARM64.Build.0 = Release|ARM64
+ {EBBBF4A0-2DA2-4DE6-B4FE-C6654A2417A0}.Release|x64.ActiveCfg = Release|x64
+ {EBBBF4A0-2DA2-4DE6-B4FE-C6654A2417A0}.Release|x64.Build.0 = Release|x64
+ {EBBBF4A0-2DA2-4DE6-B4FE-C6654A2417A0}.Release|x86.ActiveCfg = Release|Win32
+ {EBBBF4A0-2DA2-4DE6-B4FE-C6654A2417A0}.Release|x86.Build.0 = Release|Win32
+ {191A5289-BA65-4638-A215-C521F0187313}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
+ {191A5289-BA65-4638-A215-C521F0187313}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
+ {191A5289-BA65-4638-A215-C521F0187313}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
+ {191A5289-BA65-4638-A215-C521F0187313}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
+ {191A5289-BA65-4638-A215-C521F0187313}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
+ {191A5289-BA65-4638-A215-C521F0187313}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
+ {191A5289-BA65-4638-A215-C521F0187313}.Debug|ARM64.ActiveCfg = Debug|ARM64
+ {191A5289-BA65-4638-A215-C521F0187313}.Debug|ARM64.Build.0 = Debug|ARM64
+ {191A5289-BA65-4638-A215-C521F0187313}.Debug|x64.ActiveCfg = Debug|x64
+ {191A5289-BA65-4638-A215-C521F0187313}.Debug|x64.Build.0 = Debug|x64
+ {191A5289-BA65-4638-A215-C521F0187313}.Debug|x86.ActiveCfg = Debug|Win32
+ {191A5289-BA65-4638-A215-C521F0187313}.Debug|x86.Build.0 = Debug|Win32
+ {191A5289-BA65-4638-A215-C521F0187313}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
+ {191A5289-BA65-4638-A215-C521F0187313}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
+ {191A5289-BA65-4638-A215-C521F0187313}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
+ {191A5289-BA65-4638-A215-C521F0187313}.Release.DLL|x64.Build.0 = Release.DLL|x64
+ {191A5289-BA65-4638-A215-C521F0187313}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
+ {191A5289-BA65-4638-A215-C521F0187313}.Release.DLL|x86.Build.0 = Release.DLL|Win32
+ {191A5289-BA65-4638-A215-C521F0187313}.Release|ARM64.ActiveCfg = Release|ARM64
+ {191A5289-BA65-4638-A215-C521F0187313}.Release|ARM64.Build.0 = Release|ARM64
+ {191A5289-BA65-4638-A215-C521F0187313}.Release|x64.ActiveCfg = Release|x64
+ {191A5289-BA65-4638-A215-C521F0187313}.Release|x64.Build.0 = Release|x64
+ {191A5289-BA65-4638-A215-C521F0187313}.Release|x86.ActiveCfg = Release|Win32
+ {191A5289-BA65-4638-A215-C521F0187313}.Release|x86.Build.0 = Release|Win32
+ {3CFF7AB8-32CB-4D6D-9FED-53DBEF277359}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
+ {3CFF7AB8-32CB-4D6D-9FED-53DBEF277359}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
+ {3CFF7AB8-32CB-4D6D-9FED-53DBEF277359}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
+ {3CFF7AB8-32CB-4D6D-9FED-53DBEF277359}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
+ {3CFF7AB8-32CB-4D6D-9FED-53DBEF277359}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
+ {3CFF7AB8-32CB-4D6D-9FED-53DBEF277359}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
+ {3CFF7AB8-32CB-4D6D-9FED-53DBEF277359}.Debug|ARM64.ActiveCfg = Debug|ARM64
+ {3CFF7AB8-32CB-4D6D-9FED-53DBEF277359}.Debug|ARM64.Build.0 = Debug|ARM64
+ {3CFF7AB8-32CB-4D6D-9FED-53DBEF277359}.Debug|x64.ActiveCfg = Debug|x64
+ {3CFF7AB8-32CB-4D6D-9FED-53DBEF277359}.Debug|x64.Build.0 = Debug|x64
+ {3CFF7AB8-32CB-4D6D-9FED-53DBEF277359}.Debug|x86.ActiveCfg = Debug|Win32
+ {3CFF7AB8-32CB-4D6D-9FED-53DBEF277359}.Debug|x86.Build.0 = Debug|Win32
+ {3CFF7AB8-32CB-4D6D-9FED-53DBEF277359}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
+ {3CFF7AB8-32CB-4D6D-9FED-53DBEF277359}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
+ {3CFF7AB8-32CB-4D6D-9FED-53DBEF277359}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
+ {3CFF7AB8-32CB-4D6D-9FED-53DBEF277359}.Release.DLL|x64.Build.0 = Release.DLL|x64
+ {3CFF7AB8-32CB-4D6D-9FED-53DBEF277359}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
+ {3CFF7AB8-32CB-4D6D-9FED-53DBEF277359}.Release.DLL|x86.Build.0 = Release.DLL|Win32
+ {3CFF7AB8-32CB-4D6D-9FED-53DBEF277359}.Release|ARM64.ActiveCfg = Release|ARM64
+ {3CFF7AB8-32CB-4D6D-9FED-53DBEF277359}.Release|ARM64.Build.0 = Release|ARM64
+ {3CFF7AB8-32CB-4D6D-9FED-53DBEF277359}.Release|x64.ActiveCfg = Release|x64
+ {3CFF7AB8-32CB-4D6D-9FED-53DBEF277359}.Release|x64.Build.0 = Release|x64
+ {3CFF7AB8-32CB-4D6D-9FED-53DBEF277359}.Release|x86.ActiveCfg = Release|Win32
+ {3CFF7AB8-32CB-4D6D-9FED-53DBEF277359}.Release|x86.Build.0 = Release|Win32
+ {8B1AF423-00F1-4924-AC54-F77D402D2AC9}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
+ {8B1AF423-00F1-4924-AC54-F77D402D2AC9}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
+ {8B1AF423-00F1-4924-AC54-F77D402D2AC9}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
+ {8B1AF423-00F1-4924-AC54-F77D402D2AC9}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
+ {8B1AF423-00F1-4924-AC54-F77D402D2AC9}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
+ {8B1AF423-00F1-4924-AC54-F77D402D2AC9}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
+ {8B1AF423-00F1-4924-AC54-F77D402D2AC9}.Debug|ARM64.ActiveCfg = Debug|ARM64
+ {8B1AF423-00F1-4924-AC54-F77D402D2AC9}.Debug|ARM64.Build.0 = Debug|ARM64
+ {8B1AF423-00F1-4924-AC54-F77D402D2AC9}.Debug|x64.ActiveCfg = Debug|x64
+ {8B1AF423-00F1-4924-AC54-F77D402D2AC9}.Debug|x64.Build.0 = Debug|x64
+ {8B1AF423-00F1-4924-AC54-F77D402D2AC9}.Debug|x86.ActiveCfg = Debug|Win32
+ {8B1AF423-00F1-4924-AC54-F77D402D2AC9}.Debug|x86.Build.0 = Debug|Win32
+ {8B1AF423-00F1-4924-AC54-F77D402D2AC9}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
+ {8B1AF423-00F1-4924-AC54-F77D402D2AC9}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
+ {8B1AF423-00F1-4924-AC54-F77D402D2AC9}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
+ {8B1AF423-00F1-4924-AC54-F77D402D2AC9}.Release.DLL|x64.Build.0 = Release.DLL|x64
+ {8B1AF423-00F1-4924-AC54-F77D402D2AC9}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
+ {8B1AF423-00F1-4924-AC54-F77D402D2AC9}.Release.DLL|x86.Build.0 = Release.DLL|Win32
+ {8B1AF423-00F1-4924-AC54-F77D402D2AC9}.Release|ARM64.ActiveCfg = Release|ARM64
+ {8B1AF423-00F1-4924-AC54-F77D402D2AC9}.Release|ARM64.Build.0 = Release|ARM64
+ {8B1AF423-00F1-4924-AC54-F77D402D2AC9}.Release|x64.ActiveCfg = Release|x64
+ {8B1AF423-00F1-4924-AC54-F77D402D2AC9}.Release|x64.Build.0 = Release|x64
+ {8B1AF423-00F1-4924-AC54-F77D402D2AC9}.Release|x86.ActiveCfg = Release|Win32
+ {8B1AF423-00F1-4924-AC54-F77D402D2AC9}.Release|x86.Build.0 = Release|Win32
+ {658A1B85-554E-4A5D-973A-FFE592CDD5F2}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
+ {658A1B85-554E-4A5D-973A-FFE592CDD5F2}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
+ {658A1B85-554E-4A5D-973A-FFE592CDD5F2}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
+ {658A1B85-554E-4A5D-973A-FFE592CDD5F2}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
+ {658A1B85-554E-4A5D-973A-FFE592CDD5F2}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
+ {658A1B85-554E-4A5D-973A-FFE592CDD5F2}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
+ {658A1B85-554E-4A5D-973A-FFE592CDD5F2}.Debug|ARM64.ActiveCfg = Debug|ARM64
+ {658A1B85-554E-4A5D-973A-FFE592CDD5F2}.Debug|ARM64.Build.0 = Debug|ARM64
+ {658A1B85-554E-4A5D-973A-FFE592CDD5F2}.Debug|x64.ActiveCfg = Debug|x64
+ {658A1B85-554E-4A5D-973A-FFE592CDD5F2}.Debug|x64.Build.0 = Debug|x64
+ {658A1B85-554E-4A5D-973A-FFE592CDD5F2}.Debug|x86.ActiveCfg = Debug|Win32
+ {658A1B85-554E-4A5D-973A-FFE592CDD5F2}.Debug|x86.Build.0 = Debug|Win32
+ {658A1B85-554E-4A5D-973A-FFE592CDD5F2}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
+ {658A1B85-554E-4A5D-973A-FFE592CDD5F2}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
+ {658A1B85-554E-4A5D-973A-FFE592CDD5F2}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
+ {658A1B85-554E-4A5D-973A-FFE592CDD5F2}.Release.DLL|x64.Build.0 = Release.DLL|x64
+ {658A1B85-554E-4A5D-973A-FFE592CDD5F2}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
+ {658A1B85-554E-4A5D-973A-FFE592CDD5F2}.Release.DLL|x86.Build.0 = Release.DLL|Win32
+ {658A1B85-554E-4A5D-973A-FFE592CDD5F2}.Release|ARM64.ActiveCfg = Release|ARM64
+ {658A1B85-554E-4A5D-973A-FFE592CDD5F2}.Release|ARM64.Build.0 = Release|ARM64
+ {658A1B85-554E-4A5D-973A-FFE592CDD5F2}.Release|x64.ActiveCfg = Release|x64
+ {658A1B85-554E-4A5D-973A-FFE592CDD5F2}.Release|x64.Build.0 = Release|x64
+ {658A1B85-554E-4A5D-973A-FFE592CDD5F2}.Release|x86.ActiveCfg = Release|Win32
+ {658A1B85-554E-4A5D-973A-FFE592CDD5F2}.Release|x86.Build.0 = Release|Win32
+ {27B110CC-43C0-400A-89D9-245E681647D7}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
+ {27B110CC-43C0-400A-89D9-245E681647D7}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
+ {27B110CC-43C0-400A-89D9-245E681647D7}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
+ {27B110CC-43C0-400A-89D9-245E681647D7}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
+ {27B110CC-43C0-400A-89D9-245E681647D7}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
+ {27B110CC-43C0-400A-89D9-245E681647D7}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
+ {27B110CC-43C0-400A-89D9-245E681647D7}.Debug|ARM64.ActiveCfg = Debug|ARM64
+ {27B110CC-43C0-400A-89D9-245E681647D7}.Debug|ARM64.Build.0 = Debug|ARM64
+ {27B110CC-43C0-400A-89D9-245E681647D7}.Debug|x64.ActiveCfg = Debug|x64
+ {27B110CC-43C0-400A-89D9-245E681647D7}.Debug|x64.Build.0 = Debug|x64
+ {27B110CC-43C0-400A-89D9-245E681647D7}.Debug|x86.ActiveCfg = Debug|Win32
+ {27B110CC-43C0-400A-89D9-245E681647D7}.Debug|x86.Build.0 = Debug|Win32
+ {27B110CC-43C0-400A-89D9-245E681647D7}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
+ {27B110CC-43C0-400A-89D9-245E681647D7}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
+ {27B110CC-43C0-400A-89D9-245E681647D7}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
+ {27B110CC-43C0-400A-89D9-245E681647D7}.Release.DLL|x64.Build.0 = Release.DLL|x64
+ {27B110CC-43C0-400A-89D9-245E681647D7}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
+ {27B110CC-43C0-400A-89D9-245E681647D7}.Release.DLL|x86.Build.0 = Release.DLL|Win32
+ {27B110CC-43C0-400A-89D9-245E681647D7}.Release|ARM64.ActiveCfg = Release|ARM64
+ {27B110CC-43C0-400A-89D9-245E681647D7}.Release|ARM64.Build.0 = Release|ARM64
+ {27B110CC-43C0-400A-89D9-245E681647D7}.Release|x64.ActiveCfg = Release|x64
+ {27B110CC-43C0-400A-89D9-245E681647D7}.Release|x64.Build.0 = Release|x64
+ {27B110CC-43C0-400A-89D9-245E681647D7}.Release|x86.ActiveCfg = Release|Win32
+ {27B110CC-43C0-400A-89D9-245E681647D7}.Release|x86.Build.0 = Release|Win32
+ {1DE84812-E143-4C4B-A61D-9267AAD55401}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
+ {1DE84812-E143-4C4B-A61D-9267AAD55401}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
+ {1DE84812-E143-4C4B-A61D-9267AAD55401}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
+ {1DE84812-E143-4C4B-A61D-9267AAD55401}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
+ {1DE84812-E143-4C4B-A61D-9267AAD55401}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
+ {1DE84812-E143-4C4B-A61D-9267AAD55401}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
+ {1DE84812-E143-4C4B-A61D-9267AAD55401}.Debug|ARM64.ActiveCfg = Debug|ARM64
+ {1DE84812-E143-4C4B-A61D-9267AAD55401}.Debug|ARM64.Build.0 = Debug|ARM64
+ {1DE84812-E143-4C4B-A61D-9267AAD55401}.Debug|x64.ActiveCfg = Debug|x64
+ {1DE84812-E143-4C4B-A61D-9267AAD55401}.Debug|x64.Build.0 = Debug|x64
+ {1DE84812-E143-4C4B-A61D-9267AAD55401}.Debug|x86.ActiveCfg = Debug|Win32
+ {1DE84812-E143-4C4B-A61D-9267AAD55401}.Debug|x86.Build.0 = Debug|Win32
+ {1DE84812-E143-4C4B-A61D-9267AAD55401}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
+ {1DE84812-E143-4C4B-A61D-9267AAD55401}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
+ {1DE84812-E143-4C4B-A61D-9267AAD55401}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
+ {1DE84812-E143-4C4B-A61D-9267AAD55401}.Release.DLL|x64.Build.0 = Release.DLL|x64
+ {1DE84812-E143-4C4B-A61D-9267AAD55401}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
+ {1DE84812-E143-4C4B-A61D-9267AAD55401}.Release.DLL|x86.Build.0 = Release.DLL|Win32
+ {1DE84812-E143-4C4B-A61D-9267AAD55401}.Release|ARM64.ActiveCfg = Release|ARM64
+ {1DE84812-E143-4C4B-A61D-9267AAD55401}.Release|ARM64.Build.0 = Release|ARM64
+ {1DE84812-E143-4C4B-A61D-9267AAD55401}.Release|x64.ActiveCfg = Release|x64
+ {1DE84812-E143-4C4B-A61D-9267AAD55401}.Release|x64.Build.0 = Release|x64
+ {1DE84812-E143-4C4B-A61D-9267AAD55401}.Release|x86.ActiveCfg = Release|Win32
+ {1DE84812-E143-4C4B-A61D-9267AAD55401}.Release|x86.Build.0 = Release|Win32
+ {4A87569C-4BD3-4113-B4B9-573D65B3D3F8}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
+ {4A87569C-4BD3-4113-B4B9-573D65B3D3F8}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
+ {4A87569C-4BD3-4113-B4B9-573D65B3D3F8}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
+ {4A87569C-4BD3-4113-B4B9-573D65B3D3F8}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
+ {4A87569C-4BD3-4113-B4B9-573D65B3D3F8}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
+ {4A87569C-4BD3-4113-B4B9-573D65B3D3F8}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
+ {4A87569C-4BD3-4113-B4B9-573D65B3D3F8}.Debug|ARM64.ActiveCfg = Debug|ARM64
+ {4A87569C-4BD3-4113-B4B9-573D65B3D3F8}.Debug|ARM64.Build.0 = Debug|ARM64
+ {4A87569C-4BD3-4113-B4B9-573D65B3D3F8}.Debug|x64.ActiveCfg = Debug|x64
+ {4A87569C-4BD3-4113-B4B9-573D65B3D3F8}.Debug|x64.Build.0 = Debug|x64
+ {4A87569C-4BD3-4113-B4B9-573D65B3D3F8}.Debug|x86.ActiveCfg = Debug|Win32
+ {4A87569C-4BD3-4113-B4B9-573D65B3D3F8}.Debug|x86.Build.0 = Debug|Win32
+ {4A87569C-4BD3-4113-B4B9-573D65B3D3F8}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
+ {4A87569C-4BD3-4113-B4B9-573D65B3D3F8}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
+ {4A87569C-4BD3-4113-B4B9-573D65B3D3F8}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
+ {4A87569C-4BD3-4113-B4B9-573D65B3D3F8}.Release.DLL|x64.Build.0 = Release.DLL|x64
+ {4A87569C-4BD3-4113-B4B9-573D65B3D3F8}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
+ {4A87569C-4BD3-4113-B4B9-573D65B3D3F8}.Release.DLL|x86.Build.0 = Release.DLL|Win32
+ {4A87569C-4BD3-4113-B4B9-573D65B3D3F8}.Release|ARM64.ActiveCfg = Release|ARM64
+ {4A87569C-4BD3-4113-B4B9-573D65B3D3F8}.Release|ARM64.Build.0 = Release|ARM64
+ {4A87569C-4BD3-4113-B4B9-573D65B3D3F8}.Release|x64.ActiveCfg = Release|x64
+ {4A87569C-4BD3-4113-B4B9-573D65B3D3F8}.Release|x64.Build.0 = Release|x64
+ {4A87569C-4BD3-4113-B4B9-573D65B3D3F8}.Release|x86.ActiveCfg = Release|Win32
+ {4A87569C-4BD3-4113-B4B9-573D65B3D3F8}.Release|x86.Build.0 = Release|Win32
+ {769FF0C1-4424-4FA3-BC44-D7A7DA312A06}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
+ {769FF0C1-4424-4FA3-BC44-D7A7DA312A06}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
+ {769FF0C1-4424-4FA3-BC44-D7A7DA312A06}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
+ {769FF0C1-4424-4FA3-BC44-D7A7DA312A06}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
+ {769FF0C1-4424-4FA3-BC44-D7A7DA312A06}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
+ {769FF0C1-4424-4FA3-BC44-D7A7DA312A06}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
+ {769FF0C1-4424-4FA3-BC44-D7A7DA312A06}.Debug|ARM64.ActiveCfg = Debug|ARM64
+ {769FF0C1-4424-4FA3-BC44-D7A7DA312A06}.Debug|ARM64.Build.0 = Debug|ARM64
+ {769FF0C1-4424-4FA3-BC44-D7A7DA312A06}.Debug|x64.ActiveCfg = Debug|x64
+ {769FF0C1-4424-4FA3-BC44-D7A7DA312A06}.Debug|x64.Build.0 = Debug|x64
+ {769FF0C1-4424-4FA3-BC44-D7A7DA312A06}.Debug|x86.ActiveCfg = Debug|Win32
+ {769FF0C1-4424-4FA3-BC44-D7A7DA312A06}.Debug|x86.Build.0 = Debug|Win32
+ {769FF0C1-4424-4FA3-BC44-D7A7DA312A06}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
+ {769FF0C1-4424-4FA3-BC44-D7A7DA312A06}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
+ {769FF0C1-4424-4FA3-BC44-D7A7DA312A06}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
+ {769FF0C1-4424-4FA3-BC44-D7A7DA312A06}.Release.DLL|x64.Build.0 = Release.DLL|x64
+ {769FF0C1-4424-4FA3-BC44-D7A7DA312A06}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
+ {769FF0C1-4424-4FA3-BC44-D7A7DA312A06}.Release.DLL|x86.Build.0 = Release.DLL|Win32
+ {769FF0C1-4424-4FA3-BC44-D7A7DA312A06}.Release|ARM64.ActiveCfg = Release|ARM64
+ {769FF0C1-4424-4FA3-BC44-D7A7DA312A06}.Release|ARM64.Build.0 = Release|ARM64
+ {769FF0C1-4424-4FA3-BC44-D7A7DA312A06}.Release|x64.ActiveCfg = Release|x64
+ {769FF0C1-4424-4FA3-BC44-D7A7DA312A06}.Release|x64.Build.0 = Release|x64
+ {769FF0C1-4424-4FA3-BC44-D7A7DA312A06}.Release|x86.ActiveCfg = Release|Win32
+ {769FF0C1-4424-4FA3-BC44-D7A7DA312A06}.Release|x86.Build.0 = Release|Win32
+ {6D9E00D8-2893-45E4-9363-3F7F61D416BD}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
+ {6D9E00D8-2893-45E4-9363-3F7F61D416BD}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
+ {6D9E00D8-2893-45E4-9363-3F7F61D416BD}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
+ {6D9E00D8-2893-45E4-9363-3F7F61D416BD}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
+ {6D9E00D8-2893-45E4-9363-3F7F61D416BD}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
+ {6D9E00D8-2893-45E4-9363-3F7F61D416BD}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
+ {6D9E00D8-2893-45E4-9363-3F7F61D416BD}.Debug|ARM64.ActiveCfg = Debug|ARM64
+ {6D9E00D8-2893-45E4-9363-3F7F61D416BD}.Debug|ARM64.Build.0 = Debug|ARM64
+ {6D9E00D8-2893-45E4-9363-3F7F61D416BD}.Debug|x64.ActiveCfg = Debug|x64
+ {6D9E00D8-2893-45E4-9363-3F7F61D416BD}.Debug|x64.Build.0 = Debug|x64
+ {6D9E00D8-2893-45E4-9363-3F7F61D416BD}.Debug|x86.ActiveCfg = Debug|Win32
+ {6D9E00D8-2893-45E4-9363-3F7F61D416BD}.Debug|x86.Build.0 = Debug|Win32
+ {6D9E00D8-2893-45E4-9363-3F7F61D416BD}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
+ {6D9E00D8-2893-45E4-9363-3F7F61D416BD}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
+ {6D9E00D8-2893-45E4-9363-3F7F61D416BD}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
+ {6D9E00D8-2893-45E4-9363-3F7F61D416BD}.Release.DLL|x64.Build.0 = Release.DLL|x64
+ {6D9E00D8-2893-45E4-9363-3F7F61D416BD}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
+ {6D9E00D8-2893-45E4-9363-3F7F61D416BD}.Release.DLL|x86.Build.0 = Release.DLL|Win32
+ {6D9E00D8-2893-45E4-9363-3F7F61D416BD}.Release|ARM64.ActiveCfg = Release|ARM64
+ {6D9E00D8-2893-45E4-9363-3F7F61D416BD}.Release|ARM64.Build.0 = Release|ARM64
+ {6D9E00D8-2893-45E4-9363-3F7F61D416BD}.Release|x64.ActiveCfg = Release|x64
+ {6D9E00D8-2893-45E4-9363-3F7F61D416BD}.Release|x64.Build.0 = Release|x64
+ {6D9E00D8-2893-45E4-9363-3F7F61D416BD}.Release|x86.ActiveCfg = Release|Win32
+ {6D9E00D8-2893-45E4-9363-3F7F61D416BD}.Release|x86.Build.0 = Release|Win32
+ {70B35F59-AFC2-4D8F-8833-5314D2047A81}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
+ {70B35F59-AFC2-4D8F-8833-5314D2047A81}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
+ {70B35F59-AFC2-4D8F-8833-5314D2047A81}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
+ {70B35F59-AFC2-4D8F-8833-5314D2047A81}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
+ {70B35F59-AFC2-4D8F-8833-5314D2047A81}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
+ {70B35F59-AFC2-4D8F-8833-5314D2047A81}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
+ {70B35F59-AFC2-4D8F-8833-5314D2047A81}.Debug|ARM64.ActiveCfg = Debug|ARM64
+ {70B35F59-AFC2-4D8F-8833-5314D2047A81}.Debug|ARM64.Build.0 = Debug|ARM64
+ {70B35F59-AFC2-4D8F-8833-5314D2047A81}.Debug|x64.ActiveCfg = Debug|x64
+ {70B35F59-AFC2-4D8F-8833-5314D2047A81}.Debug|x64.Build.0 = Debug|x64
+ {70B35F59-AFC2-4D8F-8833-5314D2047A81}.Debug|x86.ActiveCfg = Debug|Win32
+ {70B35F59-AFC2-4D8F-8833-5314D2047A81}.Debug|x86.Build.0 = Debug|Win32
+ {70B35F59-AFC2-4D8F-8833-5314D2047A81}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
+ {70B35F59-AFC2-4D8F-8833-5314D2047A81}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
+ {70B35F59-AFC2-4D8F-8833-5314D2047A81}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
+ {70B35F59-AFC2-4D8F-8833-5314D2047A81}.Release.DLL|x64.Build.0 = Release.DLL|x64
+ {70B35F59-AFC2-4D8F-8833-5314D2047A81}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
+ {70B35F59-AFC2-4D8F-8833-5314D2047A81}.Release.DLL|x86.Build.0 = Release.DLL|Win32
+ {70B35F59-AFC2-4D8F-8833-5314D2047A81}.Release|ARM64.ActiveCfg = Release|ARM64
+ {70B35F59-AFC2-4D8F-8833-5314D2047A81}.Release|ARM64.Build.0 = Release|ARM64
+ {70B35F59-AFC2-4D8F-8833-5314D2047A81}.Release|x64.ActiveCfg = Release|x64
+ {70B35F59-AFC2-4D8F-8833-5314D2047A81}.Release|x64.Build.0 = Release|x64
+ {70B35F59-AFC2-4D8F-8833-5314D2047A81}.Release|x86.ActiveCfg = Release|Win32
+ {70B35F59-AFC2-4D8F-8833-5314D2047A81}.Release|x86.Build.0 = Release|Win32
+ {DFDE29A7-4F54-455D-B20B-D2BF79D3B3F7}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
+ {DFDE29A7-4F54-455D-B20B-D2BF79D3B3F7}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
+ {DFDE29A7-4F54-455D-B20B-D2BF79D3B3F7}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
+ {DFDE29A7-4F54-455D-B20B-D2BF79D3B3F7}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
+ {DFDE29A7-4F54-455D-B20B-D2BF79D3B3F7}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
+ {DFDE29A7-4F54-455D-B20B-D2BF79D3B3F7}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
+ {DFDE29A7-4F54-455D-B20B-D2BF79D3B3F7}.Debug|ARM64.ActiveCfg = Debug|ARM64
+ {DFDE29A7-4F54-455D-B20B-D2BF79D3B3F7}.Debug|ARM64.Build.0 = Debug|ARM64
+ {DFDE29A7-4F54-455D-B20B-D2BF79D3B3F7}.Debug|x64.ActiveCfg = Debug|x64
+ {DFDE29A7-4F54-455D-B20B-D2BF79D3B3F7}.Debug|x64.Build.0 = Debug|x64
+ {DFDE29A7-4F54-455D-B20B-D2BF79D3B3F7}.Debug|x86.ActiveCfg = Debug|Win32
+ {DFDE29A7-4F54-455D-B20B-D2BF79D3B3F7}.Debug|x86.Build.0 = Debug|Win32
+ {DFDE29A7-4F54-455D-B20B-D2BF79D3B3F7}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
+ {DFDE29A7-4F54-455D-B20B-D2BF79D3B3F7}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
+ {DFDE29A7-4F54-455D-B20B-D2BF79D3B3F7}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
+ {DFDE29A7-4F54-455D-B20B-D2BF79D3B3F7}.Release.DLL|x64.Build.0 = Release.DLL|x64
+ {DFDE29A7-4F54-455D-B20B-D2BF79D3B3F7}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
+ {DFDE29A7-4F54-455D-B20B-D2BF79D3B3F7}.Release.DLL|x86.Build.0 = Release.DLL|Win32
+ {DFDE29A7-4F54-455D-B20B-D2BF79D3B3F7}.Release|ARM64.ActiveCfg = Release|ARM64
+ {DFDE29A7-4F54-455D-B20B-D2BF79D3B3F7}.Release|ARM64.Build.0 = Release|ARM64
+ {DFDE29A7-4F54-455D-B20B-D2BF79D3B3F7}.Release|x64.ActiveCfg = Release|x64
+ {DFDE29A7-4F54-455D-B20B-D2BF79D3B3F7}.Release|x64.Build.0 = Release|x64
+ {DFDE29A7-4F54-455D-B20B-D2BF79D3B3F7}.Release|x86.ActiveCfg = Release|Win32
+ {DFDE29A7-4F54-455D-B20B-D2BF79D3B3F7}.Release|x86.Build.0 = Release|Win32
+ {3755E9F4-CB48-4EC3-B561-3B85964EBDEF}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
+ {3755E9F4-CB48-4EC3-B561-3B85964EBDEF}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
+ {3755E9F4-CB48-4EC3-B561-3B85964EBDEF}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
+ {3755E9F4-CB48-4EC3-B561-3B85964EBDEF}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
+ {3755E9F4-CB48-4EC3-B561-3B85964EBDEF}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
+ {3755E9F4-CB48-4EC3-B561-3B85964EBDEF}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
+ {3755E9F4-CB48-4EC3-B561-3B85964EBDEF}.Debug|ARM64.ActiveCfg = Debug|ARM64
+ {3755E9F4-CB48-4EC3-B561-3B85964EBDEF}.Debug|ARM64.Build.0 = Debug|ARM64
+ {3755E9F4-CB48-4EC3-B561-3B85964EBDEF}.Debug|x64.ActiveCfg = Debug|x64
+ {3755E9F4-CB48-4EC3-B561-3B85964EBDEF}.Debug|x64.Build.0 = Debug|x64
+ {3755E9F4-CB48-4EC3-B561-3B85964EBDEF}.Debug|x86.ActiveCfg = Debug|Win32
+ {3755E9F4-CB48-4EC3-B561-3B85964EBDEF}.Debug|x86.Build.0 = Debug|Win32
+ {3755E9F4-CB48-4EC3-B561-3B85964EBDEF}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
+ {3755E9F4-CB48-4EC3-B561-3B85964EBDEF}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
+ {3755E9F4-CB48-4EC3-B561-3B85964EBDEF}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
+ {3755E9F4-CB48-4EC3-B561-3B85964EBDEF}.Release.DLL|x64.Build.0 = Release.DLL|x64
+ {3755E9F4-CB48-4EC3-B561-3B85964EBDEF}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
+ {3755E9F4-CB48-4EC3-B561-3B85964EBDEF}.Release.DLL|x86.Build.0 = Release.DLL|Win32
+ {3755E9F4-CB48-4EC3-B561-3B85964EBDEF}.Release|ARM64.ActiveCfg = Release|ARM64
+ {3755E9F4-CB48-4EC3-B561-3B85964EBDEF}.Release|ARM64.Build.0 = Release|ARM64
+ {3755E9F4-CB48-4EC3-B561-3B85964EBDEF}.Release|x64.ActiveCfg = Release|x64
+ {3755E9F4-CB48-4EC3-B561-3B85964EBDEF}.Release|x64.Build.0 = Release|x64
+ {3755E9F4-CB48-4EC3-B561-3B85964EBDEF}.Release|x86.ActiveCfg = Release|Win32
+ {3755E9F4-CB48-4EC3-B561-3B85964EBDEF}.Release|x86.Build.0 = Release|Win32
+ {F81C5819-85B4-4D2E-B6DC-104A7634461B}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
+ {F81C5819-85B4-4D2E-B6DC-104A7634461B}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
+ {F81C5819-85B4-4D2E-B6DC-104A7634461B}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
+ {F81C5819-85B4-4D2E-B6DC-104A7634461B}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
+ {F81C5819-85B4-4D2E-B6DC-104A7634461B}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
+ {F81C5819-85B4-4D2E-B6DC-104A7634461B}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
+ {F81C5819-85B4-4D2E-B6DC-104A7634461B}.Debug|ARM64.ActiveCfg = Debug|ARM64
+ {F81C5819-85B4-4D2E-B6DC-104A7634461B}.Debug|ARM64.Build.0 = Debug|ARM64
+ {F81C5819-85B4-4D2E-B6DC-104A7634461B}.Debug|x64.ActiveCfg = Debug|x64
+ {F81C5819-85B4-4D2E-B6DC-104A7634461B}.Debug|x64.Build.0 = Debug|x64
+ {F81C5819-85B4-4D2E-B6DC-104A7634461B}.Debug|x86.ActiveCfg = Debug|Win32
+ {F81C5819-85B4-4D2E-B6DC-104A7634461B}.Debug|x86.Build.0 = Debug|Win32
+ {F81C5819-85B4-4D2E-B6DC-104A7634461B}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
+ {F81C5819-85B4-4D2E-B6DC-104A7634461B}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
+ {F81C5819-85B4-4D2E-B6DC-104A7634461B}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
+ {F81C5819-85B4-4D2E-B6DC-104A7634461B}.Release.DLL|x64.Build.0 = Release.DLL|x64
+ {F81C5819-85B4-4D2E-B6DC-104A7634461B}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
+ {F81C5819-85B4-4D2E-B6DC-104A7634461B}.Release.DLL|x86.Build.0 = Release.DLL|Win32
+ {F81C5819-85B4-4D2E-B6DC-104A7634461B}.Release|ARM64.ActiveCfg = Release|ARM64
+ {F81C5819-85B4-4D2E-B6DC-104A7634461B}.Release|ARM64.Build.0 = Release|ARM64
+ {F81C5819-85B4-4D2E-B6DC-104A7634461B}.Release|x64.ActiveCfg = Release|x64
+ {F81C5819-85B4-4D2E-B6DC-104A7634461B}.Release|x64.Build.0 = Release|x64
+ {F81C5819-85B4-4D2E-B6DC-104A7634461B}.Release|x86.ActiveCfg = Release|Win32
+ {F81C5819-85B4-4D2E-B6DC-104A7634461B}.Release|x86.Build.0 = Release|Win32
+ {CC62F7DB-D089-4677-8575-CAB7A7815C43}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
+ {CC62F7DB-D089-4677-8575-CAB7A7815C43}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
+ {CC62F7DB-D089-4677-8575-CAB7A7815C43}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
+ {CC62F7DB-D089-4677-8575-CAB7A7815C43}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
+ {CC62F7DB-D089-4677-8575-CAB7A7815C43}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
+ {CC62F7DB-D089-4677-8575-CAB7A7815C43}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
+ {CC62F7DB-D089-4677-8575-CAB7A7815C43}.Debug|ARM64.ActiveCfg = Debug|ARM64
+ {CC62F7DB-D089-4677-8575-CAB7A7815C43}.Debug|ARM64.Build.0 = Debug|ARM64
+ {CC62F7DB-D089-4677-8575-CAB7A7815C43}.Debug|x64.ActiveCfg = Debug|x64
+ {CC62F7DB-D089-4677-8575-CAB7A7815C43}.Debug|x64.Build.0 = Debug|x64
+ {CC62F7DB-D089-4677-8575-CAB7A7815C43}.Debug|x86.ActiveCfg = Debug|Win32
+ {CC62F7DB-D089-4677-8575-CAB7A7815C43}.Debug|x86.Build.0 = Debug|Win32
+ {CC62F7DB-D089-4677-8575-CAB7A7815C43}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
+ {CC62F7DB-D089-4677-8575-CAB7A7815C43}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
+ {CC62F7DB-D089-4677-8575-CAB7A7815C43}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
+ {CC62F7DB-D089-4677-8575-CAB7A7815C43}.Release.DLL|x64.Build.0 = Release.DLL|x64
+ {CC62F7DB-D089-4677-8575-CAB7A7815C43}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
+ {CC62F7DB-D089-4677-8575-CAB7A7815C43}.Release.DLL|x86.Build.0 = Release.DLL|Win32
+ {CC62F7DB-D089-4677-8575-CAB7A7815C43}.Release|ARM64.ActiveCfg = Release|ARM64
+ {CC62F7DB-D089-4677-8575-CAB7A7815C43}.Release|ARM64.Build.0 = Release|ARM64
+ {CC62F7DB-D089-4677-8575-CAB7A7815C43}.Release|x64.ActiveCfg = Release|x64
+ {CC62F7DB-D089-4677-8575-CAB7A7815C43}.Release|x64.Build.0 = Release|x64
+ {CC62F7DB-D089-4677-8575-CAB7A7815C43}.Release|x86.ActiveCfg = Release|Win32
+ {CC62F7DB-D089-4677-8575-CAB7A7815C43}.Release|x86.Build.0 = Release|Win32
+ {7AF97D44-707E-48DC-81CB-C9D8D7C9ED26}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
+ {7AF97D44-707E-48DC-81CB-C9D8D7C9ED26}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
+ {7AF97D44-707E-48DC-81CB-C9D8D7C9ED26}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
+ {7AF97D44-707E-48DC-81CB-C9D8D7C9ED26}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
+ {7AF97D44-707E-48DC-81CB-C9D8D7C9ED26}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
+ {7AF97D44-707E-48DC-81CB-C9D8D7C9ED26}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
+ {7AF97D44-707E-48DC-81CB-C9D8D7C9ED26}.Debug|ARM64.ActiveCfg = Debug|ARM64
+ {7AF97D44-707E-48DC-81CB-C9D8D7C9ED26}.Debug|ARM64.Build.0 = Debug|ARM64
+ {7AF97D44-707E-48DC-81CB-C9D8D7C9ED26}.Debug|x64.ActiveCfg = Debug|x64
+ {7AF97D44-707E-48DC-81CB-C9D8D7C9ED26}.Debug|x64.Build.0 = Debug|x64
+ {7AF97D44-707E-48DC-81CB-C9D8D7C9ED26}.Debug|x86.ActiveCfg = Debug|Win32
+ {7AF97D44-707E-48DC-81CB-C9D8D7C9ED26}.Debug|x86.Build.0 = Debug|Win32
+ {7AF97D44-707E-48DC-81CB-C9D8D7C9ED26}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
+ {7AF97D44-707E-48DC-81CB-C9D8D7C9ED26}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
+ {7AF97D44-707E-48DC-81CB-C9D8D7C9ED26}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
+ {7AF97D44-707E-48DC-81CB-C9D8D7C9ED26}.Release.DLL|x64.Build.0 = Release.DLL|x64
+ {7AF97D44-707E-48DC-81CB-C9D8D7C9ED26}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
+ {7AF97D44-707E-48DC-81CB-C9D8D7C9ED26}.Release.DLL|x86.Build.0 = Release.DLL|Win32
+ {7AF97D44-707E-48DC-81CB-C9D8D7C9ED26}.Release|ARM64.ActiveCfg = Release|ARM64
+ {7AF97D44-707E-48DC-81CB-C9D8D7C9ED26}.Release|ARM64.Build.0 = Release|ARM64
+ {7AF97D44-707E-48DC-81CB-C9D8D7C9ED26}.Release|x64.ActiveCfg = Release|x64
+ {7AF97D44-707E-48DC-81CB-C9D8D7C9ED26}.Release|x64.Build.0 = Release|x64
+ {7AF97D44-707E-48DC-81CB-C9D8D7C9ED26}.Release|x86.ActiveCfg = Release|Win32
+ {7AF97D44-707E-48DC-81CB-C9D8D7C9ED26}.Release|x86.Build.0 = Release|Win32
+ {A4B0D971-3CD6-41C9-8AB2-055D25A33373}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
+ {A4B0D971-3CD6-41C9-8AB2-055D25A33373}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
+ {A4B0D971-3CD6-41C9-8AB2-055D25A33373}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
+ {A4B0D971-3CD6-41C9-8AB2-055D25A33373}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
+ {A4B0D971-3CD6-41C9-8AB2-055D25A33373}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
+ {A4B0D971-3CD6-41C9-8AB2-055D25A33373}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
+ {A4B0D971-3CD6-41C9-8AB2-055D25A33373}.Debug|ARM64.ActiveCfg = Debug|ARM64
+ {A4B0D971-3CD6-41C9-8AB2-055D25A33373}.Debug|ARM64.Build.0 = Debug|ARM64
+ {A4B0D971-3CD6-41C9-8AB2-055D25A33373}.Debug|x64.ActiveCfg = Debug|x64
+ {A4B0D971-3CD6-41C9-8AB2-055D25A33373}.Debug|x64.Build.0 = Debug|x64
+ {A4B0D971-3CD6-41C9-8AB2-055D25A33373}.Debug|x86.ActiveCfg = Debug|Win32
+ {A4B0D971-3CD6-41C9-8AB2-055D25A33373}.Debug|x86.Build.0 = Debug|Win32
+ {A4B0D971-3CD6-41C9-8AB2-055D25A33373}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
+ {A4B0D971-3CD6-41C9-8AB2-055D25A33373}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
+ {A4B0D971-3CD6-41C9-8AB2-055D25A33373}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
+ {A4B0D971-3CD6-41C9-8AB2-055D25A33373}.Release.DLL|x64.Build.0 = Release.DLL|x64
+ {A4B0D971-3CD6-41C9-8AB2-055D25A33373}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
+ {A4B0D971-3CD6-41C9-8AB2-055D25A33373}.Release.DLL|x86.Build.0 = Release.DLL|Win32
+ {A4B0D971-3CD6-41C9-8AB2-055D25A33373}.Release|ARM64.ActiveCfg = Release|ARM64
+ {A4B0D971-3CD6-41C9-8AB2-055D25A33373}.Release|ARM64.Build.0 = Release|ARM64
+ {A4B0D971-3CD6-41C9-8AB2-055D25A33373}.Release|x64.ActiveCfg = Release|x64
+ {A4B0D971-3CD6-41C9-8AB2-055D25A33373}.Release|x64.Build.0 = Release|x64
+ {A4B0D971-3CD6-41C9-8AB2-055D25A33373}.Release|x86.ActiveCfg = Release|Win32
+ {A4B0D971-3CD6-41C9-8AB2-055D25A33373}.Release|x86.Build.0 = Release|Win32
+ {15CDD310-6980-42A6-8082-3A6B7730D13F}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
+ {15CDD310-6980-42A6-8082-3A6B7730D13F}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
+ {15CDD310-6980-42A6-8082-3A6B7730D13F}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
+ {15CDD310-6980-42A6-8082-3A6B7730D13F}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
+ {15CDD310-6980-42A6-8082-3A6B7730D13F}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
+ {15CDD310-6980-42A6-8082-3A6B7730D13F}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
+ {15CDD310-6980-42A6-8082-3A6B7730D13F}.Debug|ARM64.ActiveCfg = Debug|ARM64
+ {15CDD310-6980-42A6-8082-3A6B7730D13F}.Debug|ARM64.Build.0 = Debug|ARM64
+ {15CDD310-6980-42A6-8082-3A6B7730D13F}.Debug|x64.ActiveCfg = Debug|x64
+ {15CDD310-6980-42A6-8082-3A6B7730D13F}.Debug|x64.Build.0 = Debug|x64
+ {15CDD310-6980-42A6-8082-3A6B7730D13F}.Debug|x86.ActiveCfg = Debug|Win32
+ {15CDD310-6980-42A6-8082-3A6B7730D13F}.Debug|x86.Build.0 = Debug|Win32
+ {15CDD310-6980-42A6-8082-3A6B7730D13F}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
+ {15CDD310-6980-42A6-8082-3A6B7730D13F}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
+ {15CDD310-6980-42A6-8082-3A6B7730D13F}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
+ {15CDD310-6980-42A6-8082-3A6B7730D13F}.Release.DLL|x64.Build.0 = Release.DLL|x64
+ {15CDD310-6980-42A6-8082-3A6B7730D13F}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
+ {15CDD310-6980-42A6-8082-3A6B7730D13F}.Release.DLL|x86.Build.0 = Release.DLL|Win32
+ {15CDD310-6980-42A6-8082-3A6B7730D13F}.Release|ARM64.ActiveCfg = Release|ARM64
+ {15CDD310-6980-42A6-8082-3A6B7730D13F}.Release|ARM64.Build.0 = Release|ARM64
+ {15CDD310-6980-42A6-8082-3A6B7730D13F}.Release|x64.ActiveCfg = Release|x64
+ {15CDD310-6980-42A6-8082-3A6B7730D13F}.Release|x64.Build.0 = Release|x64
+ {15CDD310-6980-42A6-8082-3A6B7730D13F}.Release|x86.ActiveCfg = Release|Win32
+ {15CDD310-6980-42A6-8082-3A6B7730D13F}.Release|x86.Build.0 = Release|Win32
+ {71DB4284-5B1C-4E86-9AF5-B91542D44A6F}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
+ {71DB4284-5B1C-4E86-9AF5-B91542D44A6F}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
+ {71DB4284-5B1C-4E86-9AF5-B91542D44A6F}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
+ {71DB4284-5B1C-4E86-9AF5-B91542D44A6F}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
+ {71DB4284-5B1C-4E86-9AF5-B91542D44A6F}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
+ {71DB4284-5B1C-4E86-9AF5-B91542D44A6F}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
+ {71DB4284-5B1C-4E86-9AF5-B91542D44A6F}.Debug|ARM64.ActiveCfg = Debug|ARM64
+ {71DB4284-5B1C-4E86-9AF5-B91542D44A6F}.Debug|ARM64.Build.0 = Debug|ARM64
+ {71DB4284-5B1C-4E86-9AF5-B91542D44A6F}.Debug|x64.ActiveCfg = Debug|x64
+ {71DB4284-5B1C-4E86-9AF5-B91542D44A6F}.Debug|x64.Build.0 = Debug|x64
+ {71DB4284-5B1C-4E86-9AF5-B91542D44A6F}.Debug|x86.ActiveCfg = Debug|Win32
+ {71DB4284-5B1C-4E86-9AF5-B91542D44A6F}.Debug|x86.Build.0 = Debug|Win32
+ {71DB4284-5B1C-4E86-9AF5-B91542D44A6F}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
+ {71DB4284-5B1C-4E86-9AF5-B91542D44A6F}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
+ {71DB4284-5B1C-4E86-9AF5-B91542D44A6F}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
+ {71DB4284-5B1C-4E86-9AF5-B91542D44A6F}.Release.DLL|x64.Build.0 = Release.DLL|x64
+ {71DB4284-5B1C-4E86-9AF5-B91542D44A6F}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
+ {71DB4284-5B1C-4E86-9AF5-B91542D44A6F}.Release.DLL|x86.Build.0 = Release.DLL|Win32
+ {71DB4284-5B1C-4E86-9AF5-B91542D44A6F}.Release|ARM64.ActiveCfg = Release|ARM64
+ {71DB4284-5B1C-4E86-9AF5-B91542D44A6F}.Release|ARM64.Build.0 = Release|ARM64
+ {71DB4284-5B1C-4E86-9AF5-B91542D44A6F}.Release|x64.ActiveCfg = Release|x64
+ {71DB4284-5B1C-4E86-9AF5-B91542D44A6F}.Release|x64.Build.0 = Release|x64
+ {71DB4284-5B1C-4E86-9AF5-B91542D44A6F}.Release|x86.ActiveCfg = Release|Win32
+ {71DB4284-5B1C-4E86-9AF5-B91542D44A6F}.Release|x86.Build.0 = Release|Win32
+ {4B39E5FC-0A96-4057-9AA5-8D5A52880DA7}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
+ {4B39E5FC-0A96-4057-9AA5-8D5A52880DA7}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
+ {4B39E5FC-0A96-4057-9AA5-8D5A52880DA7}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
+ {4B39E5FC-0A96-4057-9AA5-8D5A52880DA7}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
+ {4B39E5FC-0A96-4057-9AA5-8D5A52880DA7}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
+ {4B39E5FC-0A96-4057-9AA5-8D5A52880DA7}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
+ {4B39E5FC-0A96-4057-9AA5-8D5A52880DA7}.Debug|ARM64.ActiveCfg = Debug|ARM64
+ {4B39E5FC-0A96-4057-9AA5-8D5A52880DA7}.Debug|ARM64.Build.0 = Debug|ARM64
+ {4B39E5FC-0A96-4057-9AA5-8D5A52880DA7}.Debug|x64.ActiveCfg = Debug|x64
+ {4B39E5FC-0A96-4057-9AA5-8D5A52880DA7}.Debug|x64.Build.0 = Debug|x64
+ {4B39E5FC-0A96-4057-9AA5-8D5A52880DA7}.Debug|x86.ActiveCfg = Debug|Win32
+ {4B39E5FC-0A96-4057-9AA5-8D5A52880DA7}.Debug|x86.Build.0 = Debug|Win32
+ {4B39E5FC-0A96-4057-9AA5-8D5A52880DA7}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
+ {4B39E5FC-0A96-4057-9AA5-8D5A52880DA7}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
+ {4B39E5FC-0A96-4057-9AA5-8D5A52880DA7}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
+ {4B39E5FC-0A96-4057-9AA5-8D5A52880DA7}.Release.DLL|x64.Build.0 = Release.DLL|x64
+ {4B39E5FC-0A96-4057-9AA5-8D5A52880DA7}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
+ {4B39E5FC-0A96-4057-9AA5-8D5A52880DA7}.Release.DLL|x86.Build.0 = Release.DLL|Win32
+ {4B39E5FC-0A96-4057-9AA5-8D5A52880DA7}.Release|ARM64.ActiveCfg = Release|ARM64
+ {4B39E5FC-0A96-4057-9AA5-8D5A52880DA7}.Release|ARM64.Build.0 = Release|ARM64
+ {4B39E5FC-0A96-4057-9AA5-8D5A52880DA7}.Release|x64.ActiveCfg = Release|x64
+ {4B39E5FC-0A96-4057-9AA5-8D5A52880DA7}.Release|x64.Build.0 = Release|x64
+ {4B39E5FC-0A96-4057-9AA5-8D5A52880DA7}.Release|x86.ActiveCfg = Release|Win32
+ {4B39E5FC-0A96-4057-9AA5-8D5A52880DA7}.Release|x86.Build.0 = Release|Win32
+ {88DE5AD6-0074-4A5A-BE22-C840153E35D5}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
+ {88DE5AD6-0074-4A5A-BE22-C840153E35D5}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
+ {88DE5AD6-0074-4A5A-BE22-C840153E35D5}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
+ {88DE5AD6-0074-4A5A-BE22-C840153E35D5}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
+ {88DE5AD6-0074-4A5A-BE22-C840153E35D5}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
+ {88DE5AD6-0074-4A5A-BE22-C840153E35D5}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
+ {88DE5AD6-0074-4A5A-BE22-C840153E35D5}.Debug|ARM64.ActiveCfg = Debug|ARM64
+ {88DE5AD6-0074-4A5A-BE22-C840153E35D5}.Debug|ARM64.Build.0 = Debug|ARM64
+ {88DE5AD6-0074-4A5A-BE22-C840153E35D5}.Debug|x64.ActiveCfg = Debug|x64
+ {88DE5AD6-0074-4A5A-BE22-C840153E35D5}.Debug|x64.Build.0 = Debug|x64
+ {88DE5AD6-0074-4A5A-BE22-C840153E35D5}.Debug|x86.ActiveCfg = Debug|Win32
+ {88DE5AD6-0074-4A5A-BE22-C840153E35D5}.Debug|x86.Build.0 = Debug|Win32
+ {88DE5AD6-0074-4A5A-BE22-C840153E35D5}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
+ {88DE5AD6-0074-4A5A-BE22-C840153E35D5}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
+ {88DE5AD6-0074-4A5A-BE22-C840153E35D5}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
+ {88DE5AD6-0074-4A5A-BE22-C840153E35D5}.Release.DLL|x64.Build.0 = Release.DLL|x64
+ {88DE5AD6-0074-4A5A-BE22-C840153E35D5}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
+ {88DE5AD6-0074-4A5A-BE22-C840153E35D5}.Release.DLL|x86.Build.0 = Release.DLL|Win32
+ {88DE5AD6-0074-4A5A-BE22-C840153E35D5}.Release|ARM64.ActiveCfg = Release|ARM64
+ {88DE5AD6-0074-4A5A-BE22-C840153E35D5}.Release|ARM64.Build.0 = Release|ARM64
+ {88DE5AD6-0074-4A5A-BE22-C840153E35D5}.Release|x64.ActiveCfg = Release|x64
+ {88DE5AD6-0074-4A5A-BE22-C840153E35D5}.Release|x64.Build.0 = Release|x64
+ {88DE5AD6-0074-4A5A-BE22-C840153E35D5}.Release|x86.ActiveCfg = Release|Win32
+ {88DE5AD6-0074-4A5A-BE22-C840153E35D5}.Release|x86.Build.0 = Release|Win32
+ {A546E75A-5242-46E6-9A9E-6C91554EAB84}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
+ {A546E75A-5242-46E6-9A9E-6C91554EAB84}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
+ {A546E75A-5242-46E6-9A9E-6C91554EAB84}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
+ {A546E75A-5242-46E6-9A9E-6C91554EAB84}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
+ {A546E75A-5242-46E6-9A9E-6C91554EAB84}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
+ {A546E75A-5242-46E6-9A9E-6C91554EAB84}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
+ {A546E75A-5242-46E6-9A9E-6C91554EAB84}.Debug|ARM64.ActiveCfg = Debug|ARM64
+ {A546E75A-5242-46E6-9A9E-6C91554EAB84}.Debug|ARM64.Build.0 = Debug|ARM64
+ {A546E75A-5242-46E6-9A9E-6C91554EAB84}.Debug|x64.ActiveCfg = Debug|x64
+ {A546E75A-5242-46E6-9A9E-6C91554EAB84}.Debug|x64.Build.0 = Debug|x64
+ {A546E75A-5242-46E6-9A9E-6C91554EAB84}.Debug|x86.ActiveCfg = Debug|Win32
+ {A546E75A-5242-46E6-9A9E-6C91554EAB84}.Debug|x86.Build.0 = Debug|Win32
+ {A546E75A-5242-46E6-9A9E-6C91554EAB84}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
+ {A546E75A-5242-46E6-9A9E-6C91554EAB84}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
+ {A546E75A-5242-46E6-9A9E-6C91554EAB84}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
+ {A546E75A-5242-46E6-9A9E-6C91554EAB84}.Release.DLL|x64.Build.0 = Release.DLL|x64
+ {A546E75A-5242-46E6-9A9E-6C91554EAB84}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
+ {A546E75A-5242-46E6-9A9E-6C91554EAB84}.Release.DLL|x86.Build.0 = Release.DLL|Win32
+ {A546E75A-5242-46E6-9A9E-6C91554EAB84}.Release|ARM64.ActiveCfg = Release|ARM64
+ {A546E75A-5242-46E6-9A9E-6C91554EAB84}.Release|ARM64.Build.0 = Release|ARM64
+ {A546E75A-5242-46E6-9A9E-6C91554EAB84}.Release|x64.ActiveCfg = Release|x64
+ {A546E75A-5242-46E6-9A9E-6C91554EAB84}.Release|x64.Build.0 = Release|x64
+ {A546E75A-5242-46E6-9A9E-6C91554EAB84}.Release|x86.ActiveCfg = Release|Win32
+ {A546E75A-5242-46E6-9A9E-6C91554EAB84}.Release|x86.Build.0 = Release|Win32
+ {EFA150D4-F93B-4D7D-A69C-9E8B4663BECD}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
+ {EFA150D4-F93B-4D7D-A69C-9E8B4663BECD}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
+ {EFA150D4-F93B-4D7D-A69C-9E8B4663BECD}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
+ {EFA150D4-F93B-4D7D-A69C-9E8B4663BECD}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
+ {EFA150D4-F93B-4D7D-A69C-9E8B4663BECD}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
+ {EFA150D4-F93B-4D7D-A69C-9E8B4663BECD}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
+ {EFA150D4-F93B-4D7D-A69C-9E8B4663BECD}.Debug|ARM64.ActiveCfg = Debug|ARM64
+ {EFA150D4-F93B-4D7D-A69C-9E8B4663BECD}.Debug|ARM64.Build.0 = Debug|ARM64
+ {EFA150D4-F93B-4D7D-A69C-9E8B4663BECD}.Debug|x64.ActiveCfg = Debug|x64
+ {EFA150D4-F93B-4D7D-A69C-9E8B4663BECD}.Debug|x64.Build.0 = Debug|x64
+ {EFA150D4-F93B-4D7D-A69C-9E8B4663BECD}.Debug|x86.ActiveCfg = Debug|Win32
+ {EFA150D4-F93B-4D7D-A69C-9E8B4663BECD}.Debug|x86.Build.0 = Debug|Win32
+ {EFA150D4-F93B-4D7D-A69C-9E8B4663BECD}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
+ {EFA150D4-F93B-4D7D-A69C-9E8B4663BECD}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
+ {EFA150D4-F93B-4D7D-A69C-9E8B4663BECD}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
+ {EFA150D4-F93B-4D7D-A69C-9E8B4663BECD}.Release.DLL|x64.Build.0 = Release.DLL|x64
+ {EFA150D4-F93B-4D7D-A69C-9E8B4663BECD}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
+ {EFA150D4-F93B-4D7D-A69C-9E8B4663BECD}.Release.DLL|x86.Build.0 = Release.DLL|Win32
+ {EFA150D4-F93B-4D7D-A69C-9E8B4663BECD}.Release|ARM64.ActiveCfg = Release|ARM64
+ {EFA150D4-F93B-4D7D-A69C-9E8B4663BECD}.Release|ARM64.Build.0 = Release|ARM64
+ {EFA150D4-F93B-4D7D-A69C-9E8B4663BECD}.Release|x64.ActiveCfg = Release|x64
+ {EFA150D4-F93B-4D7D-A69C-9E8B4663BECD}.Release|x64.Build.0 = Release|x64
+ {EFA150D4-F93B-4D7D-A69C-9E8B4663BECD}.Release|x86.ActiveCfg = Release|Win32
+ {EFA150D4-F93B-4D7D-A69C-9E8B4663BECD}.Release|x86.Build.0 = Release|Win32
+ {DF25E545-00FF-4E64-844C-7DF98991F901}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
+ {DF25E545-00FF-4E64-844C-7DF98991F901}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
+ {DF25E545-00FF-4E64-844C-7DF98991F901}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
+ {DF25E545-00FF-4E64-844C-7DF98991F901}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
+ {DF25E545-00FF-4E64-844C-7DF98991F901}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
+ {DF25E545-00FF-4E64-844C-7DF98991F901}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
+ {DF25E545-00FF-4E64-844C-7DF98991F901}.Debug|ARM64.ActiveCfg = Debug|ARM64
+ {DF25E545-00FF-4E64-844C-7DF98991F901}.Debug|ARM64.Build.0 = Debug|ARM64
+ {DF25E545-00FF-4E64-844C-7DF98991F901}.Debug|x64.ActiveCfg = Debug|x64
+ {DF25E545-00FF-4E64-844C-7DF98991F901}.Debug|x64.Build.0 = Debug|x64
+ {DF25E545-00FF-4E64-844C-7DF98991F901}.Debug|x86.ActiveCfg = Debug|Win32
+ {DF25E545-00FF-4E64-844C-7DF98991F901}.Debug|x86.Build.0 = Debug|Win32
+ {DF25E545-00FF-4E64-844C-7DF98991F901}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
+ {DF25E545-00FF-4E64-844C-7DF98991F901}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
+ {DF25E545-00FF-4E64-844C-7DF98991F901}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
+ {DF25E545-00FF-4E64-844C-7DF98991F901}.Release.DLL|x64.Build.0 = Release.DLL|x64
+ {DF25E545-00FF-4E64-844C-7DF98991F901}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
+ {DF25E545-00FF-4E64-844C-7DF98991F901}.Release.DLL|x86.Build.0 = Release.DLL|Win32
+ {DF25E545-00FF-4E64-844C-7DF98991F901}.Release|ARM64.ActiveCfg = Release|ARM64
+ {DF25E545-00FF-4E64-844C-7DF98991F901}.Release|ARM64.Build.0 = Release|ARM64
+ {DF25E545-00FF-4E64-844C-7DF98991F901}.Release|x64.ActiveCfg = Release|x64
+ {DF25E545-00FF-4E64-844C-7DF98991F901}.Release|x64.Build.0 = Release|x64
+ {DF25E545-00FF-4E64-844C-7DF98991F901}.Release|x86.ActiveCfg = Release|Win32
+ {DF25E545-00FF-4E64-844C-7DF98991F901}.Release|x86.Build.0 = Release|Win32
+ {703BE7BA-5B99-4F70-806D-3A259F6A991E}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
+ {703BE7BA-5B99-4F70-806D-3A259F6A991E}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
+ {703BE7BA-5B99-4F70-806D-3A259F6A991E}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
+ {703BE7BA-5B99-4F70-806D-3A259F6A991E}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
+ {703BE7BA-5B99-4F70-806D-3A259F6A991E}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
+ {703BE7BA-5B99-4F70-806D-3A259F6A991E}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
+ {703BE7BA-5B99-4F70-806D-3A259F6A991E}.Debug|ARM64.ActiveCfg = Debug|ARM64
+ {703BE7BA-5B99-4F70-806D-3A259F6A991E}.Debug|ARM64.Build.0 = Debug|ARM64
+ {703BE7BA-5B99-4F70-806D-3A259F6A991E}.Debug|x64.ActiveCfg = Debug|x64
+ {703BE7BA-5B99-4F70-806D-3A259F6A991E}.Debug|x64.Build.0 = Debug|x64
+ {703BE7BA-5B99-4F70-806D-3A259F6A991E}.Debug|x86.ActiveCfg = Debug|Win32
+ {703BE7BA-5B99-4F70-806D-3A259F6A991E}.Debug|x86.Build.0 = Debug|Win32
+ {703BE7BA-5B99-4F70-806D-3A259F6A991E}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
+ {703BE7BA-5B99-4F70-806D-3A259F6A991E}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
+ {703BE7BA-5B99-4F70-806D-3A259F6A991E}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
+ {703BE7BA-5B99-4F70-806D-3A259F6A991E}.Release.DLL|x64.Build.0 = Release.DLL|x64
+ {703BE7BA-5B99-4F70-806D-3A259F6A991E}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
+ {703BE7BA-5B99-4F70-806D-3A259F6A991E}.Release.DLL|x86.Build.0 = Release.DLL|Win32
+ {703BE7BA-5B99-4F70-806D-3A259F6A991E}.Release|ARM64.ActiveCfg = Release|ARM64
+ {703BE7BA-5B99-4F70-806D-3A259F6A991E}.Release|ARM64.Build.0 = Release|ARM64
+ {703BE7BA-5B99-4F70-806D-3A259F6A991E}.Release|x64.ActiveCfg = Release|x64
+ {703BE7BA-5B99-4F70-806D-3A259F6A991E}.Release|x64.Build.0 = Release|x64
+ {703BE7BA-5B99-4F70-806D-3A259F6A991E}.Release|x86.ActiveCfg = Release|Win32
+ {703BE7BA-5B99-4F70-806D-3A259F6A991E}.Release|x86.Build.0 = Release|Win32
+ {FAFEE2F9-24B0-4AF1-B512-433E9590033F}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
+ {FAFEE2F9-24B0-4AF1-B512-433E9590033F}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
+ {FAFEE2F9-24B0-4AF1-B512-433E9590033F}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
+ {FAFEE2F9-24B0-4AF1-B512-433E9590033F}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
+ {FAFEE2F9-24B0-4AF1-B512-433E9590033F}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
+ {FAFEE2F9-24B0-4AF1-B512-433E9590033F}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
+ {FAFEE2F9-24B0-4AF1-B512-433E9590033F}.Debug|ARM64.ActiveCfg = Debug|ARM64
+ {FAFEE2F9-24B0-4AF1-B512-433E9590033F}.Debug|ARM64.Build.0 = Debug|ARM64
+ {FAFEE2F9-24B0-4AF1-B512-433E9590033F}.Debug|x64.ActiveCfg = Debug|x64
+ {FAFEE2F9-24B0-4AF1-B512-433E9590033F}.Debug|x64.Build.0 = Debug|x64
+ {FAFEE2F9-24B0-4AF1-B512-433E9590033F}.Debug|x86.ActiveCfg = Debug|Win32
+ {FAFEE2F9-24B0-4AF1-B512-433E9590033F}.Debug|x86.Build.0 = Debug|Win32
+ {FAFEE2F9-24B0-4AF1-B512-433E9590033F}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
+ {FAFEE2F9-24B0-4AF1-B512-433E9590033F}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
+ {FAFEE2F9-24B0-4AF1-B512-433E9590033F}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
+ {FAFEE2F9-24B0-4AF1-B512-433E9590033F}.Release.DLL|x64.Build.0 = Release.DLL|x64
+ {FAFEE2F9-24B0-4AF1-B512-433E9590033F}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
+ {FAFEE2F9-24B0-4AF1-B512-433E9590033F}.Release.DLL|x86.Build.0 = Release.DLL|Win32
+ {FAFEE2F9-24B0-4AF1-B512-433E9590033F}.Release|ARM64.ActiveCfg = Release|ARM64
+ {FAFEE2F9-24B0-4AF1-B512-433E9590033F}.Release|ARM64.Build.0 = Release|ARM64
+ {FAFEE2F9-24B0-4AF1-B512-433E9590033F}.Release|x64.ActiveCfg = Release|x64
+ {FAFEE2F9-24B0-4AF1-B512-433E9590033F}.Release|x64.Build.0 = Release|x64
+ {FAFEE2F9-24B0-4AF1-B512-433E9590033F}.Release|x86.ActiveCfg = Release|Win32
+ {FAFEE2F9-24B0-4AF1-B512-433E9590033F}.Release|x86.Build.0 = Release|Win32
+ {8245DAD9-D402-4D5C-8F45-32229CD3B263}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
+ {8245DAD9-D402-4D5C-8F45-32229CD3B263}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
+ {8245DAD9-D402-4D5C-8F45-32229CD3B263}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
+ {8245DAD9-D402-4D5C-8F45-32229CD3B263}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
+ {8245DAD9-D402-4D5C-8F45-32229CD3B263}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
+ {8245DAD9-D402-4D5C-8F45-32229CD3B263}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
+ {8245DAD9-D402-4D5C-8F45-32229CD3B263}.Debug|ARM64.ActiveCfg = Debug|ARM64
+ {8245DAD9-D402-4D5C-8F45-32229CD3B263}.Debug|ARM64.Build.0 = Debug|ARM64
+ {8245DAD9-D402-4D5C-8F45-32229CD3B263}.Debug|x64.ActiveCfg = Debug|x64
+ {8245DAD9-D402-4D5C-8F45-32229CD3B263}.Debug|x64.Build.0 = Debug|x64
+ {8245DAD9-D402-4D5C-8F45-32229CD3B263}.Debug|x86.ActiveCfg = Debug|Win32
+ {8245DAD9-D402-4D5C-8F45-32229CD3B263}.Debug|x86.Build.0 = Debug|Win32
+ {8245DAD9-D402-4D5C-8F45-32229CD3B263}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
+ {8245DAD9-D402-4D5C-8F45-32229CD3B263}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
+ {8245DAD9-D402-4D5C-8F45-32229CD3B263}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
+ {8245DAD9-D402-4D5C-8F45-32229CD3B263}.Release.DLL|x64.Build.0 = Release.DLL|x64
+ {8245DAD9-D402-4D5C-8F45-32229CD3B263}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
+ {8245DAD9-D402-4D5C-8F45-32229CD3B263}.Release.DLL|x86.Build.0 = Release.DLL|Win32
+ {8245DAD9-D402-4D5C-8F45-32229CD3B263}.Release|ARM64.ActiveCfg = Release|ARM64
+ {8245DAD9-D402-4D5C-8F45-32229CD3B263}.Release|ARM64.Build.0 = Release|ARM64
+ {8245DAD9-D402-4D5C-8F45-32229CD3B263}.Release|x64.ActiveCfg = Release|x64
+ {8245DAD9-D402-4D5C-8F45-32229CD3B263}.Release|x64.Build.0 = Release|x64
+ {8245DAD9-D402-4D5C-8F45-32229CD3B263}.Release|x86.ActiveCfg = Release|Win32
+ {8245DAD9-D402-4D5C-8F45-32229CD3B263}.Release|x86.Build.0 = Release|Win32
+ {41BBCC10-6FDE-48A1-B2E0-A0EC6A668629}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
+ {41BBCC10-6FDE-48A1-B2E0-A0EC6A668629}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
+ {41BBCC10-6FDE-48A1-B2E0-A0EC6A668629}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
+ {41BBCC10-6FDE-48A1-B2E0-A0EC6A668629}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
+ {41BBCC10-6FDE-48A1-B2E0-A0EC6A668629}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
+ {41BBCC10-6FDE-48A1-B2E0-A0EC6A668629}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
+ {41BBCC10-6FDE-48A1-B2E0-A0EC6A668629}.Debug|ARM64.ActiveCfg = Debug|ARM64
+ {41BBCC10-6FDE-48A1-B2E0-A0EC6A668629}.Debug|ARM64.Build.0 = Debug|ARM64
+ {41BBCC10-6FDE-48A1-B2E0-A0EC6A668629}.Debug|x64.ActiveCfg = Debug|x64
+ {41BBCC10-6FDE-48A1-B2E0-A0EC6A668629}.Debug|x64.Build.0 = Debug|x64
+ {41BBCC10-6FDE-48A1-B2E0-A0EC6A668629}.Debug|x86.ActiveCfg = Debug|Win32
+ {41BBCC10-6FDE-48A1-B2E0-A0EC6A668629}.Debug|x86.Build.0 = Debug|Win32
+ {41BBCC10-6FDE-48A1-B2E0-A0EC6A668629}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
+ {41BBCC10-6FDE-48A1-B2E0-A0EC6A668629}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
+ {41BBCC10-6FDE-48A1-B2E0-A0EC6A668629}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
+ {41BBCC10-6FDE-48A1-B2E0-A0EC6A668629}.Release.DLL|x64.Build.0 = Release.DLL|x64
+ {41BBCC10-6FDE-48A1-B2E0-A0EC6A668629}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
+ {41BBCC10-6FDE-48A1-B2E0-A0EC6A668629}.Release.DLL|x86.Build.0 = Release.DLL|Win32
+ {41BBCC10-6FDE-48A1-B2E0-A0EC6A668629}.Release|ARM64.ActiveCfg = Release|ARM64
+ {41BBCC10-6FDE-48A1-B2E0-A0EC6A668629}.Release|ARM64.Build.0 = Release|ARM64
+ {41BBCC10-6FDE-48A1-B2E0-A0EC6A668629}.Release|x64.ActiveCfg = Release|x64
+ {41BBCC10-6FDE-48A1-B2E0-A0EC6A668629}.Release|x64.Build.0 = Release|x64
+ {41BBCC10-6FDE-48A1-B2E0-A0EC6A668629}.Release|x86.ActiveCfg = Release|Win32
+ {41BBCC10-6FDE-48A1-B2E0-A0EC6A668629}.Release|x86.Build.0 = Release|Win32
+ {3A7FE53D-35F7-49DC-9C9A-A5204A53523F}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
+ {3A7FE53D-35F7-49DC-9C9A-A5204A53523F}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
+ {3A7FE53D-35F7-49DC-9C9A-A5204A53523F}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
+ {3A7FE53D-35F7-49DC-9C9A-A5204A53523F}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
+ {3A7FE53D-35F7-49DC-9C9A-A5204A53523F}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
+ {3A7FE53D-35F7-49DC-9C9A-A5204A53523F}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
+ {3A7FE53D-35F7-49DC-9C9A-A5204A53523F}.Debug|ARM64.ActiveCfg = Debug|ARM64
+ {3A7FE53D-35F7-49DC-9C9A-A5204A53523F}.Debug|ARM64.Build.0 = Debug|ARM64
+ {3A7FE53D-35F7-49DC-9C9A-A5204A53523F}.Debug|x64.ActiveCfg = Debug|x64
+ {3A7FE53D-35F7-49DC-9C9A-A5204A53523F}.Debug|x64.Build.0 = Debug|x64
+ {3A7FE53D-35F7-49DC-9C9A-A5204A53523F}.Debug|x86.ActiveCfg = Debug|Win32
+ {3A7FE53D-35F7-49DC-9C9A-A5204A53523F}.Debug|x86.Build.0 = Debug|Win32
+ {3A7FE53D-35F7-49DC-9C9A-A5204A53523F}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
+ {3A7FE53D-35F7-49DC-9C9A-A5204A53523F}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
+ {3A7FE53D-35F7-49DC-9C9A-A5204A53523F}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
+ {3A7FE53D-35F7-49DC-9C9A-A5204A53523F}.Release.DLL|x64.Build.0 = Release.DLL|x64
+ {3A7FE53D-35F7-49DC-9C9A-A5204A53523F}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
+ {3A7FE53D-35F7-49DC-9C9A-A5204A53523F}.Release.DLL|x86.Build.0 = Release.DLL|Win32
+ {3A7FE53D-35F7-49DC-9C9A-A5204A53523F}.Release|ARM64.ActiveCfg = Release|ARM64
+ {3A7FE53D-35F7-49DC-9C9A-A5204A53523F}.Release|ARM64.Build.0 = Release|ARM64
+ {3A7FE53D-35F7-49DC-9C9A-A5204A53523F}.Release|x64.ActiveCfg = Release|x64
+ {3A7FE53D-35F7-49DC-9C9A-A5204A53523F}.Release|x64.Build.0 = Release|x64
+ {3A7FE53D-35F7-49DC-9C9A-A5204A53523F}.Release|x86.ActiveCfg = Release|Win32
+ {3A7FE53D-35F7-49DC-9C9A-A5204A53523F}.Release|x86.Build.0 = Release|Win32
+ {CCA63A76-D9FC-4130-9F67-4D97F9770D53}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
+ {CCA63A76-D9FC-4130-9F67-4D97F9770D53}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
+ {CCA63A76-D9FC-4130-9F67-4D97F9770D53}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
+ {CCA63A76-D9FC-4130-9F67-4D97F9770D53}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
+ {CCA63A76-D9FC-4130-9F67-4D97F9770D53}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
+ {CCA63A76-D9FC-4130-9F67-4D97F9770D53}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
+ {CCA63A76-D9FC-4130-9F67-4D97F9770D53}.Debug|ARM64.ActiveCfg = Debug|ARM64
+ {CCA63A76-D9FC-4130-9F67-4D97F9770D53}.Debug|ARM64.Build.0 = Debug|ARM64
+ {CCA63A76-D9FC-4130-9F67-4D97F9770D53}.Debug|x64.ActiveCfg = Debug|x64
+ {CCA63A76-D9FC-4130-9F67-4D97F9770D53}.Debug|x64.Build.0 = Debug|x64
+ {CCA63A76-D9FC-4130-9F67-4D97F9770D53}.Debug|x86.ActiveCfg = Debug|Win32
+ {CCA63A76-D9FC-4130-9F67-4D97F9770D53}.Debug|x86.Build.0 = Debug|Win32
+ {CCA63A76-D9FC-4130-9F67-4D97F9770D53}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
+ {CCA63A76-D9FC-4130-9F67-4D97F9770D53}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
+ {CCA63A76-D9FC-4130-9F67-4D97F9770D53}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
+ {CCA63A76-D9FC-4130-9F67-4D97F9770D53}.Release.DLL|x64.Build.0 = Release.DLL|x64
+ {CCA63A76-D9FC-4130-9F67-4D97F9770D53}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
+ {CCA63A76-D9FC-4130-9F67-4D97F9770D53}.Release.DLL|x86.Build.0 = Release.DLL|Win32
+ {CCA63A76-D9FC-4130-9F67-4D97F9770D53}.Release|ARM64.ActiveCfg = Release|ARM64
+ {CCA63A76-D9FC-4130-9F67-4D97F9770D53}.Release|ARM64.Build.0 = Release|ARM64
+ {CCA63A76-D9FC-4130-9F67-4D97F9770D53}.Release|x64.ActiveCfg = Release|x64
+ {CCA63A76-D9FC-4130-9F67-4D97F9770D53}.Release|x64.Build.0 = Release|x64
+ {CCA63A76-D9FC-4130-9F67-4D97F9770D53}.Release|x86.ActiveCfg = Release|Win32
+ {CCA63A76-D9FC-4130-9F67-4D97F9770D53}.Release|x86.Build.0 = Release|Win32
+ {D3493FFE-8873-4C53-8F6C-74DEF78EA3C4}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
+ {D3493FFE-8873-4C53-8F6C-74DEF78EA3C4}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
+ {D3493FFE-8873-4C53-8F6C-74DEF78EA3C4}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
+ {D3493FFE-8873-4C53-8F6C-74DEF78EA3C4}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
+ {D3493FFE-8873-4C53-8F6C-74DEF78EA3C4}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
+ {D3493FFE-8873-4C53-8F6C-74DEF78EA3C4}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
+ {D3493FFE-8873-4C53-8F6C-74DEF78EA3C4}.Debug|ARM64.ActiveCfg = Debug|ARM64
+ {D3493FFE-8873-4C53-8F6C-74DEF78EA3C4}.Debug|ARM64.Build.0 = Debug|ARM64
+ {D3493FFE-8873-4C53-8F6C-74DEF78EA3C4}.Debug|x64.ActiveCfg = Debug|x64
+ {D3493FFE-8873-4C53-8F6C-74DEF78EA3C4}.Debug|x64.Build.0 = Debug|x64
+ {D3493FFE-8873-4C53-8F6C-74DEF78EA3C4}.Debug|x86.ActiveCfg = Debug|Win32
+ {D3493FFE-8873-4C53-8F6C-74DEF78EA3C4}.Debug|x86.Build.0 = Debug|Win32
+ {D3493FFE-8873-4C53-8F6C-74DEF78EA3C4}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
+ {D3493FFE-8873-4C53-8F6C-74DEF78EA3C4}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
+ {D3493FFE-8873-4C53-8F6C-74DEF78EA3C4}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
+ {D3493FFE-8873-4C53-8F6C-74DEF78EA3C4}.Release.DLL|x64.Build.0 = Release.DLL|x64
+ {D3493FFE-8873-4C53-8F6C-74DEF78EA3C4}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
+ {D3493FFE-8873-4C53-8F6C-74DEF78EA3C4}.Release.DLL|x86.Build.0 = Release.DLL|Win32
+ {D3493FFE-8873-4C53-8F6C-74DEF78EA3C4}.Release|ARM64.ActiveCfg = Release|ARM64
+ {D3493FFE-8873-4C53-8F6C-74DEF78EA3C4}.Release|ARM64.Build.0 = Release|ARM64
+ {D3493FFE-8873-4C53-8F6C-74DEF78EA3C4}.Release|x64.ActiveCfg = Release|x64
+ {D3493FFE-8873-4C53-8F6C-74DEF78EA3C4}.Release|x64.Build.0 = Release|x64
+ {D3493FFE-8873-4C53-8F6C-74DEF78EA3C4}.Release|x86.ActiveCfg = Release|Win32
+ {D3493FFE-8873-4C53-8F6C-74DEF78EA3C4}.Release|x86.Build.0 = Release|Win32
+ {3384C257-3CFE-4A8F-838C-19DAC5C955DA}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
+ {3384C257-3CFE-4A8F-838C-19DAC5C955DA}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
+ {3384C257-3CFE-4A8F-838C-19DAC5C955DA}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
+ {3384C257-3CFE-4A8F-838C-19DAC5C955DA}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
+ {3384C257-3CFE-4A8F-838C-19DAC5C955DA}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
+ {3384C257-3CFE-4A8F-838C-19DAC5C955DA}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
+ {3384C257-3CFE-4A8F-838C-19DAC5C955DA}.Debug|ARM64.ActiveCfg = Debug|ARM64
+ {3384C257-3CFE-4A8F-838C-19DAC5C955DA}.Debug|ARM64.Build.0 = Debug|ARM64
+ {3384C257-3CFE-4A8F-838C-19DAC5C955DA}.Debug|x64.ActiveCfg = Debug|x64
+ {3384C257-3CFE-4A8F-838C-19DAC5C955DA}.Debug|x64.Build.0 = Debug|x64
+ {3384C257-3CFE-4A8F-838C-19DAC5C955DA}.Debug|x86.ActiveCfg = Debug|Win32
+ {3384C257-3CFE-4A8F-838C-19DAC5C955DA}.Debug|x86.Build.0 = Debug|Win32
+ {3384C257-3CFE-4A8F-838C-19DAC5C955DA}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
+ {3384C257-3CFE-4A8F-838C-19DAC5C955DA}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
+ {3384C257-3CFE-4A8F-838C-19DAC5C955DA}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
+ {3384C257-3CFE-4A8F-838C-19DAC5C955DA}.Release.DLL|x64.Build.0 = Release.DLL|x64
+ {3384C257-3CFE-4A8F-838C-19DAC5C955DA}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
+ {3384C257-3CFE-4A8F-838C-19DAC5C955DA}.Release.DLL|x86.Build.0 = Release.DLL|Win32
+ {3384C257-3CFE-4A8F-838C-19DAC5C955DA}.Release|ARM64.ActiveCfg = Release|ARM64
+ {3384C257-3CFE-4A8F-838C-19DAC5C955DA}.Release|ARM64.Build.0 = Release|ARM64
+ {3384C257-3CFE-4A8F-838C-19DAC5C955DA}.Release|x64.ActiveCfg = Release|x64
+ {3384C257-3CFE-4A8F-838C-19DAC5C955DA}.Release|x64.Build.0 = Release|x64
+ {3384C257-3CFE-4A8F-838C-19DAC5C955DA}.Release|x86.ActiveCfg = Release|Win32
+ {3384C257-3CFE-4A8F-838C-19DAC5C955DA}.Release|x86.Build.0 = Release|Win32
+ {2B140378-125F-4DE9-AC37-2CC1B73D7254}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
+ {2B140378-125F-4DE9-AC37-2CC1B73D7254}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
+ {2B140378-125F-4DE9-AC37-2CC1B73D7254}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
+ {2B140378-125F-4DE9-AC37-2CC1B73D7254}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
+ {2B140378-125F-4DE9-AC37-2CC1B73D7254}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
+ {2B140378-125F-4DE9-AC37-2CC1B73D7254}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
+ {2B140378-125F-4DE9-AC37-2CC1B73D7254}.Debug|ARM64.ActiveCfg = Debug|ARM64
+ {2B140378-125F-4DE9-AC37-2CC1B73D7254}.Debug|ARM64.Build.0 = Debug|ARM64
+ {2B140378-125F-4DE9-AC37-2CC1B73D7254}.Debug|x64.ActiveCfg = Debug|x64
+ {2B140378-125F-4DE9-AC37-2CC1B73D7254}.Debug|x64.Build.0 = Debug|x64
+ {2B140378-125F-4DE9-AC37-2CC1B73D7254}.Debug|x86.ActiveCfg = Debug|Win32
+ {2B140378-125F-4DE9-AC37-2CC1B73D7254}.Debug|x86.Build.0 = Debug|Win32
+ {2B140378-125F-4DE9-AC37-2CC1B73D7254}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
+ {2B140378-125F-4DE9-AC37-2CC1B73D7254}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
+ {2B140378-125F-4DE9-AC37-2CC1B73D7254}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
+ {2B140378-125F-4DE9-AC37-2CC1B73D7254}.Release.DLL|x64.Build.0 = Release.DLL|x64
+ {2B140378-125F-4DE9-AC37-2CC1B73D7254}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
+ {2B140378-125F-4DE9-AC37-2CC1B73D7254}.Release.DLL|x86.Build.0 = Release.DLL|Win32
+ {2B140378-125F-4DE9-AC37-2CC1B73D7254}.Release|ARM64.ActiveCfg = Release|ARM64
+ {2B140378-125F-4DE9-AC37-2CC1B73D7254}.Release|ARM64.Build.0 = Release|ARM64
+ {2B140378-125F-4DE9-AC37-2CC1B73D7254}.Release|x64.ActiveCfg = Release|x64
+ {2B140378-125F-4DE9-AC37-2CC1B73D7254}.Release|x64.Build.0 = Release|x64
+ {2B140378-125F-4DE9-AC37-2CC1B73D7254}.Release|x86.ActiveCfg = Release|Win32
+ {2B140378-125F-4DE9-AC37-2CC1B73D7254}.Release|x86.Build.0 = Release|Win32
+ {F4C55B99-E1C5-496A-8AC2-40188C38F4F6}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
+ {F4C55B99-E1C5-496A-8AC2-40188C38F4F6}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
+ {F4C55B99-E1C5-496A-8AC2-40188C38F4F6}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
+ {F4C55B99-E1C5-496A-8AC2-40188C38F4F6}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
+ {F4C55B99-E1C5-496A-8AC2-40188C38F4F6}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
+ {F4C55B99-E1C5-496A-8AC2-40188C38F4F6}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
+ {F4C55B99-E1C5-496A-8AC2-40188C38F4F6}.Debug|ARM64.ActiveCfg = Debug|ARM64
+ {F4C55B99-E1C5-496A-8AC2-40188C38F4F6}.Debug|ARM64.Build.0 = Debug|ARM64
+ {F4C55B99-E1C5-496A-8AC2-40188C38F4F6}.Debug|x64.ActiveCfg = Debug|x64
+ {F4C55B99-E1C5-496A-8AC2-40188C38F4F6}.Debug|x64.Build.0 = Debug|x64
+ {F4C55B99-E1C5-496A-8AC2-40188C38F4F6}.Debug|x86.ActiveCfg = Debug|Win32
+ {F4C55B99-E1C5-496A-8AC2-40188C38F4F6}.Debug|x86.Build.0 = Debug|Win32
+ {F4C55B99-E1C5-496A-8AC2-40188C38F4F6}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
+ {F4C55B99-E1C5-496A-8AC2-40188C38F4F6}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
+ {F4C55B99-E1C5-496A-8AC2-40188C38F4F6}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
+ {F4C55B99-E1C5-496A-8AC2-40188C38F4F6}.Release.DLL|x64.Build.0 = Release.DLL|x64
+ {F4C55B99-E1C5-496A-8AC2-40188C38F4F6}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
+ {F4C55B99-E1C5-496A-8AC2-40188C38F4F6}.Release.DLL|x86.Build.0 = Release.DLL|Win32
+ {F4C55B99-E1C5-496A-8AC2-40188C38F4F6}.Release|ARM64.ActiveCfg = Release|ARM64
+ {F4C55B99-E1C5-496A-8AC2-40188C38F4F6}.Release|ARM64.Build.0 = Release|ARM64
+ {F4C55B99-E1C5-496A-8AC2-40188C38F4F6}.Release|x64.ActiveCfg = Release|x64
+ {F4C55B99-E1C5-496A-8AC2-40188C38F4F6}.Release|x64.Build.0 = Release|x64
+ {F4C55B99-E1C5-496A-8AC2-40188C38F4F6}.Release|x86.ActiveCfg = Release|Win32
+ {F4C55B99-E1C5-496A-8AC2-40188C38F4F6}.Release|x86.Build.0 = Release|Win32
+ {2AA91EED-2D32-4B09-84A3-53D41EED1005}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
+ {2AA91EED-2D32-4B09-84A3-53D41EED1005}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
+ {2AA91EED-2D32-4B09-84A3-53D41EED1005}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
+ {2AA91EED-2D32-4B09-84A3-53D41EED1005}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
+ {2AA91EED-2D32-4B09-84A3-53D41EED1005}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
+ {2AA91EED-2D32-4B09-84A3-53D41EED1005}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
+ {2AA91EED-2D32-4B09-84A3-53D41EED1005}.Debug|ARM64.ActiveCfg = Debug|ARM64
+ {2AA91EED-2D32-4B09-84A3-53D41EED1005}.Debug|ARM64.Build.0 = Debug|ARM64
+ {2AA91EED-2D32-4B09-84A3-53D41EED1005}.Debug|x64.ActiveCfg = Debug|x64
+ {2AA91EED-2D32-4B09-84A3-53D41EED1005}.Debug|x64.Build.0 = Debug|x64
+ {2AA91EED-2D32-4B09-84A3-53D41EED1005}.Debug|x86.ActiveCfg = Debug|Win32
+ {2AA91EED-2D32-4B09-84A3-53D41EED1005}.Debug|x86.Build.0 = Debug|Win32
+ {2AA91EED-2D32-4B09-84A3-53D41EED1005}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
+ {2AA91EED-2D32-4B09-84A3-53D41EED1005}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
+ {2AA91EED-2D32-4B09-84A3-53D41EED1005}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
+ {2AA91EED-2D32-4B09-84A3-53D41EED1005}.Release.DLL|x64.Build.0 = Release.DLL|x64
+ {2AA91EED-2D32-4B09-84A3-53D41EED1005}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
+ {2AA91EED-2D32-4B09-84A3-53D41EED1005}.Release.DLL|x86.Build.0 = Release.DLL|Win32
+ {2AA91EED-2D32-4B09-84A3-53D41EED1005}.Release|ARM64.ActiveCfg = Release|ARM64
+ {2AA91EED-2D32-4B09-84A3-53D41EED1005}.Release|ARM64.Build.0 = Release|ARM64
+ {2AA91EED-2D32-4B09-84A3-53D41EED1005}.Release|x64.ActiveCfg = Release|x64
+ {2AA91EED-2D32-4B09-84A3-53D41EED1005}.Release|x64.Build.0 = Release|x64
+ {2AA91EED-2D32-4B09-84A3-53D41EED1005}.Release|x86.ActiveCfg = Release|Win32
+ {2AA91EED-2D32-4B09-84A3-53D41EED1005}.Release|x86.Build.0 = Release|Win32
+ {EC0910F6-8D66-4509-BF57-A5EE7AE9485F}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
+ {EC0910F6-8D66-4509-BF57-A5EE7AE9485F}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
+ {EC0910F6-8D66-4509-BF57-A5EE7AE9485F}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
+ {EC0910F6-8D66-4509-BF57-A5EE7AE9485F}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
+ {EC0910F6-8D66-4509-BF57-A5EE7AE9485F}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
+ {EC0910F6-8D66-4509-BF57-A5EE7AE9485F}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
+ {EC0910F6-8D66-4509-BF57-A5EE7AE9485F}.Debug|ARM64.ActiveCfg = Debug|ARM64
+ {EC0910F6-8D66-4509-BF57-A5EE7AE9485F}.Debug|ARM64.Build.0 = Debug|ARM64
+ {EC0910F6-8D66-4509-BF57-A5EE7AE9485F}.Debug|x64.ActiveCfg = Debug|x64
+ {EC0910F6-8D66-4509-BF57-A5EE7AE9485F}.Debug|x64.Build.0 = Debug|x64
+ {EC0910F6-8D66-4509-BF57-A5EE7AE9485F}.Debug|x86.ActiveCfg = Debug|Win32
+ {EC0910F6-8D66-4509-BF57-A5EE7AE9485F}.Debug|x86.Build.0 = Debug|Win32
+ {EC0910F6-8D66-4509-BF57-A5EE7AE9485F}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
+ {EC0910F6-8D66-4509-BF57-A5EE7AE9485F}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
+ {EC0910F6-8D66-4509-BF57-A5EE7AE9485F}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
+ {EC0910F6-8D66-4509-BF57-A5EE7AE9485F}.Release.DLL|x64.Build.0 = Release.DLL|x64
+ {EC0910F6-8D66-4509-BF57-A5EE7AE9485F}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
+ {EC0910F6-8D66-4509-BF57-A5EE7AE9485F}.Release.DLL|x86.Build.0 = Release.DLL|Win32
+ {EC0910F6-8D66-4509-BF57-A5EE7AE9485F}.Release|ARM64.ActiveCfg = Release|ARM64
+ {EC0910F6-8D66-4509-BF57-A5EE7AE9485F}.Release|ARM64.Build.0 = Release|ARM64
+ {EC0910F6-8D66-4509-BF57-A5EE7AE9485F}.Release|x64.ActiveCfg = Release|x64
+ {EC0910F6-8D66-4509-BF57-A5EE7AE9485F}.Release|x64.Build.0 = Release|x64
+ {EC0910F6-8D66-4509-BF57-A5EE7AE9485F}.Release|x86.ActiveCfg = Release|Win32
+ {EC0910F6-8D66-4509-BF57-A5EE7AE9485F}.Release|x86.Build.0 = Release|Win32
+ {921391C6-7626-4212-9928-BC82BC785461}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
+ {921391C6-7626-4212-9928-BC82BC785461}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
+ {921391C6-7626-4212-9928-BC82BC785461}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
+ {921391C6-7626-4212-9928-BC82BC785461}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
+ {921391C6-7626-4212-9928-BC82BC785461}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
+ {921391C6-7626-4212-9928-BC82BC785461}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
+ {921391C6-7626-4212-9928-BC82BC785461}.Debug|ARM64.ActiveCfg = Debug|ARM64
+ {921391C6-7626-4212-9928-BC82BC785461}.Debug|ARM64.Build.0 = Debug|ARM64
+ {921391C6-7626-4212-9928-BC82BC785461}.Debug|x64.ActiveCfg = Debug|x64
+ {921391C6-7626-4212-9928-BC82BC785461}.Debug|x64.Build.0 = Debug|x64
+ {921391C6-7626-4212-9928-BC82BC785461}.Debug|x86.ActiveCfg = Debug|Win32
+ {921391C6-7626-4212-9928-BC82BC785461}.Debug|x86.Build.0 = Debug|Win32
+ {921391C6-7626-4212-9928-BC82BC785461}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
+ {921391C6-7626-4212-9928-BC82BC785461}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
+ {921391C6-7626-4212-9928-BC82BC785461}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
+ {921391C6-7626-4212-9928-BC82BC785461}.Release.DLL|x64.Build.0 = Release.DLL|x64
+ {921391C6-7626-4212-9928-BC82BC785461}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
+ {921391C6-7626-4212-9928-BC82BC785461}.Release.DLL|x86.Build.0 = Release.DLL|Win32
+ {921391C6-7626-4212-9928-BC82BC785461}.Release|ARM64.ActiveCfg = Release|ARM64
+ {921391C6-7626-4212-9928-BC82BC785461}.Release|ARM64.Build.0 = Release|ARM64
+ {921391C6-7626-4212-9928-BC82BC785461}.Release|x64.ActiveCfg = Release|x64
+ {921391C6-7626-4212-9928-BC82BC785461}.Release|x64.Build.0 = Release|x64
+ {921391C6-7626-4212-9928-BC82BC785461}.Release|x86.ActiveCfg = Release|Win32
+ {921391C6-7626-4212-9928-BC82BC785461}.Release|x86.Build.0 = Release|Win32
+ {6B8C5711-6AB4-4023-9FDD-E9D976E8D18F}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
+ {6B8C5711-6AB4-4023-9FDD-E9D976E8D18F}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
+ {6B8C5711-6AB4-4023-9FDD-E9D976E8D18F}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
+ {6B8C5711-6AB4-4023-9FDD-E9D976E8D18F}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
+ {6B8C5711-6AB4-4023-9FDD-E9D976E8D18F}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
+ {6B8C5711-6AB4-4023-9FDD-E9D976E8D18F}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
+ {6B8C5711-6AB4-4023-9FDD-E9D976E8D18F}.Debug|ARM64.ActiveCfg = Debug|ARM64
+ {6B8C5711-6AB4-4023-9FDD-E9D976E8D18F}.Debug|ARM64.Build.0 = Debug|ARM64
+ {6B8C5711-6AB4-4023-9FDD-E9D976E8D18F}.Debug|x64.ActiveCfg = Debug|x64
+ {6B8C5711-6AB4-4023-9FDD-E9D976E8D18F}.Debug|x64.Build.0 = Debug|x64
+ {6B8C5711-6AB4-4023-9FDD-E9D976E8D18F}.Debug|x86.ActiveCfg = Debug|Win32
+ {6B8C5711-6AB4-4023-9FDD-E9D976E8D18F}.Debug|x86.Build.0 = Debug|Win32
+ {6B8C5711-6AB4-4023-9FDD-E9D976E8D18F}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
+ {6B8C5711-6AB4-4023-9FDD-E9D976E8D18F}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
+ {6B8C5711-6AB4-4023-9FDD-E9D976E8D18F}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
+ {6B8C5711-6AB4-4023-9FDD-E9D976E8D18F}.Release.DLL|x64.Build.0 = Release.DLL|x64
+ {6B8C5711-6AB4-4023-9FDD-E9D976E8D18F}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
+ {6B8C5711-6AB4-4023-9FDD-E9D976E8D18F}.Release.DLL|x86.Build.0 = Release.DLL|Win32
+ {6B8C5711-6AB4-4023-9FDD-E9D976E8D18F}.Release|ARM64.ActiveCfg = Release|ARM64
+ {6B8C5711-6AB4-4023-9FDD-E9D976E8D18F}.Release|ARM64.Build.0 = Release|ARM64
+ {6B8C5711-6AB4-4023-9FDD-E9D976E8D18F}.Release|x64.ActiveCfg = Release|x64
+ {6B8C5711-6AB4-4023-9FDD-E9D976E8D18F}.Release|x64.Build.0 = Release|x64
+ {6B8C5711-6AB4-4023-9FDD-E9D976E8D18F}.Release|x86.ActiveCfg = Release|Win32
+ {6B8C5711-6AB4-4023-9FDD-E9D976E8D18F}.Release|x86.Build.0 = Release|Win32
+ {4DF6D5E4-6796-4257-B466-BCD62DEBBCF8}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
+ {4DF6D5E4-6796-4257-B466-BCD62DEBBCF8}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
+ {4DF6D5E4-6796-4257-B466-BCD62DEBBCF8}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
+ {4DF6D5E4-6796-4257-B466-BCD62DEBBCF8}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
+ {4DF6D5E4-6796-4257-B466-BCD62DEBBCF8}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
+ {4DF6D5E4-6796-4257-B466-BCD62DEBBCF8}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
+ {4DF6D5E4-6796-4257-B466-BCD62DEBBCF8}.Debug|ARM64.ActiveCfg = Debug|ARM64
+ {4DF6D5E4-6796-4257-B466-BCD62DEBBCF8}.Debug|ARM64.Build.0 = Debug|ARM64
+ {4DF6D5E4-6796-4257-B466-BCD62DEBBCF8}.Debug|x64.ActiveCfg = Debug|x64
+ {4DF6D5E4-6796-4257-B466-BCD62DEBBCF8}.Debug|x64.Build.0 = Debug|x64
+ {4DF6D5E4-6796-4257-B466-BCD62DEBBCF8}.Debug|x86.ActiveCfg = Debug|Win32
+ {4DF6D5E4-6796-4257-B466-BCD62DEBBCF8}.Debug|x86.Build.0 = Debug|Win32
+ {4DF6D5E4-6796-4257-B466-BCD62DEBBCF8}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
+ {4DF6D5E4-6796-4257-B466-BCD62DEBBCF8}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
+ {4DF6D5E4-6796-4257-B466-BCD62DEBBCF8}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
+ {4DF6D5E4-6796-4257-B466-BCD62DEBBCF8}.Release.DLL|x64.Build.0 = Release.DLL|x64
+ {4DF6D5E4-6796-4257-B466-BCD62DEBBCF8}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
+ {4DF6D5E4-6796-4257-B466-BCD62DEBBCF8}.Release.DLL|x86.Build.0 = Release.DLL|Win32
+ {4DF6D5E4-6796-4257-B466-BCD62DEBBCF8}.Release|ARM64.ActiveCfg = Release|ARM64
+ {4DF6D5E4-6796-4257-B466-BCD62DEBBCF8}.Release|ARM64.Build.0 = Release|ARM64
+ {4DF6D5E4-6796-4257-B466-BCD62DEBBCF8}.Release|x64.ActiveCfg = Release|x64
+ {4DF6D5E4-6796-4257-B466-BCD62DEBBCF8}.Release|x64.Build.0 = Release|x64
+ {4DF6D5E4-6796-4257-B466-BCD62DEBBCF8}.Release|x86.ActiveCfg = Release|Win32
+ {4DF6D5E4-6796-4257-B466-BCD62DEBBCF8}.Release|x86.Build.0 = Release|Win32
+ {C54703BF-D68A-480D-BE27-49B62E45D582}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
+ {C54703BF-D68A-480D-BE27-49B62E45D582}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
+ {C54703BF-D68A-480D-BE27-49B62E45D582}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
+ {C54703BF-D68A-480D-BE27-49B62E45D582}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
+ {C54703BF-D68A-480D-BE27-49B62E45D582}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
+ {C54703BF-D68A-480D-BE27-49B62E45D582}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
+ {C54703BF-D68A-480D-BE27-49B62E45D582}.Debug|ARM64.ActiveCfg = Debug|ARM64
+ {C54703BF-D68A-480D-BE27-49B62E45D582}.Debug|ARM64.Build.0 = Debug|ARM64
+ {C54703BF-D68A-480D-BE27-49B62E45D582}.Debug|x64.ActiveCfg = Debug|x64
+ {C54703BF-D68A-480D-BE27-49B62E45D582}.Debug|x64.Build.0 = Debug|x64
+ {C54703BF-D68A-480D-BE27-49B62E45D582}.Debug|x86.ActiveCfg = Debug|Win32
+ {C54703BF-D68A-480D-BE27-49B62E45D582}.Debug|x86.Build.0 = Debug|Win32
+ {C54703BF-D68A-480D-BE27-49B62E45D582}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
+ {C54703BF-D68A-480D-BE27-49B62E45D582}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
+ {C54703BF-D68A-480D-BE27-49B62E45D582}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
+ {C54703BF-D68A-480D-BE27-49B62E45D582}.Release.DLL|x64.Build.0 = Release.DLL|x64
+ {C54703BF-D68A-480D-BE27-49B62E45D582}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
+ {C54703BF-D68A-480D-BE27-49B62E45D582}.Release.DLL|x86.Build.0 = Release.DLL|Win32
+ {C54703BF-D68A-480D-BE27-49B62E45D582}.Release|ARM64.ActiveCfg = Release|ARM64
+ {C54703BF-D68A-480D-BE27-49B62E45D582}.Release|ARM64.Build.0 = Release|ARM64
+ {C54703BF-D68A-480D-BE27-49B62E45D582}.Release|x64.ActiveCfg = Release|x64
+ {C54703BF-D68A-480D-BE27-49B62E45D582}.Release|x64.Build.0 = Release|x64
+ {C54703BF-D68A-480D-BE27-49B62E45D582}.Release|x86.ActiveCfg = Release|Win32
+ {C54703BF-D68A-480D-BE27-49B62E45D582}.Release|x86.Build.0 = Release|Win32
+ {9CD8BCAD-F212-4BCC-BA98-899743CE3279}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
+ {9CD8BCAD-F212-4BCC-BA98-899743CE3279}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
+ {9CD8BCAD-F212-4BCC-BA98-899743CE3279}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
+ {9CD8BCAD-F212-4BCC-BA98-899743CE3279}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
+ {9CD8BCAD-F212-4BCC-BA98-899743CE3279}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
+ {9CD8BCAD-F212-4BCC-BA98-899743CE3279}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
+ {9CD8BCAD-F212-4BCC-BA98-899743CE3279}.Debug|ARM64.ActiveCfg = Debug|ARM64
+ {9CD8BCAD-F212-4BCC-BA98-899743CE3279}.Debug|ARM64.Build.0 = Debug|ARM64
+ {9CD8BCAD-F212-4BCC-BA98-899743CE3279}.Debug|x64.ActiveCfg = Debug|x64
+ {9CD8BCAD-F212-4BCC-BA98-899743CE3279}.Debug|x64.Build.0 = Debug|x64
+ {9CD8BCAD-F212-4BCC-BA98-899743CE3279}.Debug|x86.ActiveCfg = Debug|Win32
+ {9CD8BCAD-F212-4BCC-BA98-899743CE3279}.Debug|x86.Build.0 = Debug|Win32
+ {9CD8BCAD-F212-4BCC-BA98-899743CE3279}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
+ {9CD8BCAD-F212-4BCC-BA98-899743CE3279}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
+ {9CD8BCAD-F212-4BCC-BA98-899743CE3279}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
+ {9CD8BCAD-F212-4BCC-BA98-899743CE3279}.Release.DLL|x64.Build.0 = Release.DLL|x64
+ {9CD8BCAD-F212-4BCC-BA98-899743CE3279}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
+ {9CD8BCAD-F212-4BCC-BA98-899743CE3279}.Release.DLL|x86.Build.0 = Release.DLL|Win32
+ {9CD8BCAD-F212-4BCC-BA98-899743CE3279}.Release|ARM64.ActiveCfg = Release|ARM64
+ {9CD8BCAD-F212-4BCC-BA98-899743CE3279}.Release|ARM64.Build.0 = Release|ARM64
+ {9CD8BCAD-F212-4BCC-BA98-899743CE3279}.Release|x64.ActiveCfg = Release|x64
+ {9CD8BCAD-F212-4BCC-BA98-899743CE3279}.Release|x64.Build.0 = Release|x64
+ {9CD8BCAD-F212-4BCC-BA98-899743CE3279}.Release|x86.ActiveCfg = Release|Win32
+ {9CD8BCAD-F212-4BCC-BA98-899743CE3279}.Release|x86.Build.0 = Release|Win32
+ {0981CA28-E4A5-4DF1-987F-A41D09131EFC}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
+ {0981CA28-E4A5-4DF1-987F-A41D09131EFC}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
+ {0981CA28-E4A5-4DF1-987F-A41D09131EFC}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
+ {0981CA28-E4A5-4DF1-987F-A41D09131EFC}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
+ {0981CA28-E4A5-4DF1-987F-A41D09131EFC}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
+ {0981CA28-E4A5-4DF1-987F-A41D09131EFC}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
+ {0981CA28-E4A5-4DF1-987F-A41D09131EFC}.Debug|ARM64.ActiveCfg = Debug|ARM64
+ {0981CA28-E4A5-4DF1-987F-A41D09131EFC}.Debug|ARM64.Build.0 = Debug|ARM64
+ {0981CA28-E4A5-4DF1-987F-A41D09131EFC}.Debug|x64.ActiveCfg = Debug|x64
+ {0981CA28-E4A5-4DF1-987F-A41D09131EFC}.Debug|x64.Build.0 = Debug|x64
+ {0981CA28-E4A5-4DF1-987F-A41D09131EFC}.Debug|x86.ActiveCfg = Debug|Win32
+ {0981CA28-E4A5-4DF1-987F-A41D09131EFC}.Debug|x86.Build.0 = Debug|Win32
+ {0981CA28-E4A5-4DF1-987F-A41D09131EFC}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
+ {0981CA28-E4A5-4DF1-987F-A41D09131EFC}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
+ {0981CA28-E4A5-4DF1-987F-A41D09131EFC}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
+ {0981CA28-E4A5-4DF1-987F-A41D09131EFC}.Release.DLL|x64.Build.0 = Release.DLL|x64
+ {0981CA28-E4A5-4DF1-987F-A41D09131EFC}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
+ {0981CA28-E4A5-4DF1-987F-A41D09131EFC}.Release.DLL|x86.Build.0 = Release.DLL|Win32
+ {0981CA28-E4A5-4DF1-987F-A41D09131EFC}.Release|ARM64.ActiveCfg = Release|ARM64
+ {0981CA28-E4A5-4DF1-987F-A41D09131EFC}.Release|ARM64.Build.0 = Release|ARM64
+ {0981CA28-E4A5-4DF1-987F-A41D09131EFC}.Release|x64.ActiveCfg = Release|x64
+ {0981CA28-E4A5-4DF1-987F-A41D09131EFC}.Release|x64.Build.0 = Release|x64
+ {0981CA28-E4A5-4DF1-987F-A41D09131EFC}.Release|x86.ActiveCfg = Release|Win32
+ {0981CA28-E4A5-4DF1-987F-A41D09131EFC}.Release|x86.Build.0 = Release|Win32
+ {6B1A933E-71B8-4C1F-9E79-02D98830E671}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
+ {6B1A933E-71B8-4C1F-9E79-02D98830E671}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
+ {6B1A933E-71B8-4C1F-9E79-02D98830E671}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
+ {6B1A933E-71B8-4C1F-9E79-02D98830E671}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
+ {6B1A933E-71B8-4C1F-9E79-02D98830E671}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
+ {6B1A933E-71B8-4C1F-9E79-02D98830E671}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
+ {6B1A933E-71B8-4C1F-9E79-02D98830E671}.Debug|ARM64.ActiveCfg = Debug|ARM64
+ {6B1A933E-71B8-4C1F-9E79-02D98830E671}.Debug|ARM64.Build.0 = Debug|ARM64
+ {6B1A933E-71B8-4C1F-9E79-02D98830E671}.Debug|x64.ActiveCfg = Debug|x64
+ {6B1A933E-71B8-4C1F-9E79-02D98830E671}.Debug|x64.Build.0 = Debug|x64
+ {6B1A933E-71B8-4C1F-9E79-02D98830E671}.Debug|x86.ActiveCfg = Debug|Win32
+ {6B1A933E-71B8-4C1F-9E79-02D98830E671}.Debug|x86.Build.0 = Debug|Win32
+ {6B1A933E-71B8-4C1F-9E79-02D98830E671}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
+ {6B1A933E-71B8-4C1F-9E79-02D98830E671}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
+ {6B1A933E-71B8-4C1F-9E79-02D98830E671}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
+ {6B1A933E-71B8-4C1F-9E79-02D98830E671}.Release.DLL|x64.Build.0 = Release.DLL|x64
+ {6B1A933E-71B8-4C1F-9E79-02D98830E671}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
+ {6B1A933E-71B8-4C1F-9E79-02D98830E671}.Release.DLL|x86.Build.0 = Release.DLL|Win32
+ {6B1A933E-71B8-4C1F-9E79-02D98830E671}.Release|ARM64.ActiveCfg = Release|ARM64
+ {6B1A933E-71B8-4C1F-9E79-02D98830E671}.Release|ARM64.Build.0 = Release|ARM64
+ {6B1A933E-71B8-4C1F-9E79-02D98830E671}.Release|x64.ActiveCfg = Release|x64
+ {6B1A933E-71B8-4C1F-9E79-02D98830E671}.Release|x64.Build.0 = Release|x64
+ {6B1A933E-71B8-4C1F-9E79-02D98830E671}.Release|x86.ActiveCfg = Release|Win32
+ {6B1A933E-71B8-4C1F-9E79-02D98830E671}.Release|x86.Build.0 = Release|Win32
+ {6BFF72EA-7362-4A3B-B6E5-9A3655BBBDA3}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
+ {6BFF72EA-7362-4A3B-B6E5-9A3655BBBDA3}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
+ {6BFF72EA-7362-4A3B-B6E5-9A3655BBBDA3}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
+ {6BFF72EA-7362-4A3B-B6E5-9A3655BBBDA3}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
+ {6BFF72EA-7362-4A3B-B6E5-9A3655BBBDA3}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
+ {6BFF72EA-7362-4A3B-B6E5-9A3655BBBDA3}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
+ {6BFF72EA-7362-4A3B-B6E5-9A3655BBBDA3}.Debug|ARM64.ActiveCfg = Debug|ARM64
+ {6BFF72EA-7362-4A3B-B6E5-9A3655BBBDA3}.Debug|ARM64.Build.0 = Debug|ARM64
+ {6BFF72EA-7362-4A3B-B6E5-9A3655BBBDA3}.Debug|x64.ActiveCfg = Debug|x64
+ {6BFF72EA-7362-4A3B-B6E5-9A3655BBBDA3}.Debug|x64.Build.0 = Debug|x64
+ {6BFF72EA-7362-4A3B-B6E5-9A3655BBBDA3}.Debug|x86.ActiveCfg = Debug|Win32
+ {6BFF72EA-7362-4A3B-B6E5-9A3655BBBDA3}.Debug|x86.Build.0 = Debug|Win32
+ {6BFF72EA-7362-4A3B-B6E5-9A3655BBBDA3}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
+ {6BFF72EA-7362-4A3B-B6E5-9A3655BBBDA3}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
+ {6BFF72EA-7362-4A3B-B6E5-9A3655BBBDA3}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
+ {6BFF72EA-7362-4A3B-B6E5-9A3655BBBDA3}.Release.DLL|x64.Build.0 = Release.DLL|x64
+ {6BFF72EA-7362-4A3B-B6E5-9A3655BBBDA3}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
+ {6BFF72EA-7362-4A3B-B6E5-9A3655BBBDA3}.Release.DLL|x86.Build.0 = Release.DLL|Win32
+ {6BFF72EA-7362-4A3B-B6E5-9A3655BBBDA3}.Release|ARM64.ActiveCfg = Release|ARM64
+ {6BFF72EA-7362-4A3B-B6E5-9A3655BBBDA3}.Release|ARM64.Build.0 = Release|ARM64
+ {6BFF72EA-7362-4A3B-B6E5-9A3655BBBDA3}.Release|x64.ActiveCfg = Release|x64
+ {6BFF72EA-7362-4A3B-B6E5-9A3655BBBDA3}.Release|x64.Build.0 = Release|x64
+ {6BFF72EA-7362-4A3B-B6E5-9A3655BBBDA3}.Release|x86.ActiveCfg = Release|Win32
+ {6BFF72EA-7362-4A3B-B6E5-9A3655BBBDA3}.Release|x86.Build.0 = Release|Win32
+ {6777EC3C-077C-42FC-B4AD-B799CE55CCE4}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
+ {6777EC3C-077C-42FC-B4AD-B799CE55CCE4}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
+ {6777EC3C-077C-42FC-B4AD-B799CE55CCE4}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
+ {6777EC3C-077C-42FC-B4AD-B799CE55CCE4}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
+ {6777EC3C-077C-42FC-B4AD-B799CE55CCE4}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
+ {6777EC3C-077C-42FC-B4AD-B799CE55CCE4}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
+ {6777EC3C-077C-42FC-B4AD-B799CE55CCE4}.Debug|ARM64.ActiveCfg = Debug|ARM64
+ {6777EC3C-077C-42FC-B4AD-B799CE55CCE4}.Debug|ARM64.Build.0 = Debug|ARM64
+ {6777EC3C-077C-42FC-B4AD-B799CE55CCE4}.Debug|x64.ActiveCfg = Debug|x64
+ {6777EC3C-077C-42FC-B4AD-B799CE55CCE4}.Debug|x64.Build.0 = Debug|x64
+ {6777EC3C-077C-42FC-B4AD-B799CE55CCE4}.Debug|x86.ActiveCfg = Debug|Win32
+ {6777EC3C-077C-42FC-B4AD-B799CE55CCE4}.Debug|x86.Build.0 = Debug|Win32
+ {6777EC3C-077C-42FC-B4AD-B799CE55CCE4}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
+ {6777EC3C-077C-42FC-B4AD-B799CE55CCE4}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
+ {6777EC3C-077C-42FC-B4AD-B799CE55CCE4}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
+ {6777EC3C-077C-42FC-B4AD-B799CE55CCE4}.Release.DLL|x64.Build.0 = Release.DLL|x64
+ {6777EC3C-077C-42FC-B4AD-B799CE55CCE4}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
+ {6777EC3C-077C-42FC-B4AD-B799CE55CCE4}.Release.DLL|x86.Build.0 = Release.DLL|Win32
+ {6777EC3C-077C-42FC-B4AD-B799CE55CCE4}.Release|ARM64.ActiveCfg = Release|ARM64
+ {6777EC3C-077C-42FC-B4AD-B799CE55CCE4}.Release|ARM64.Build.0 = Release|ARM64
+ {6777EC3C-077C-42FC-B4AD-B799CE55CCE4}.Release|x64.ActiveCfg = Release|x64
+ {6777EC3C-077C-42FC-B4AD-B799CE55CCE4}.Release|x64.Build.0 = Release|x64
+ {6777EC3C-077C-42FC-B4AD-B799CE55CCE4}.Release|x86.ActiveCfg = Release|Win32
+ {6777EC3C-077C-42FC-B4AD-B799CE55CCE4}.Release|x86.Build.0 = Release|Win32
+ {A61DAD9C-271C-4E95-81AA-DB4CD58564D4}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
+ {A61DAD9C-271C-4E95-81AA-DB4CD58564D4}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
+ {A61DAD9C-271C-4E95-81AA-DB4CD58564D4}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
+ {A61DAD9C-271C-4E95-81AA-DB4CD58564D4}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
+ {A61DAD9C-271C-4E95-81AA-DB4CD58564D4}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
+ {A61DAD9C-271C-4E95-81AA-DB4CD58564D4}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
+ {A61DAD9C-271C-4E95-81AA-DB4CD58564D4}.Debug|ARM64.ActiveCfg = Debug|ARM64
+ {A61DAD9C-271C-4E95-81AA-DB4CD58564D4}.Debug|ARM64.Build.0 = Debug|ARM64
+ {A61DAD9C-271C-4E95-81AA-DB4CD58564D4}.Debug|x64.ActiveCfg = Debug|x64
+ {A61DAD9C-271C-4E95-81AA-DB4CD58564D4}.Debug|x64.Build.0 = Debug|x64
+ {A61DAD9C-271C-4E95-81AA-DB4CD58564D4}.Debug|x86.ActiveCfg = Debug|Win32
+ {A61DAD9C-271C-4E95-81AA-DB4CD58564D4}.Debug|x86.Build.0 = Debug|Win32
+ {A61DAD9C-271C-4E95-81AA-DB4CD58564D4}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
+ {A61DAD9C-271C-4E95-81AA-DB4CD58564D4}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
+ {A61DAD9C-271C-4E95-81AA-DB4CD58564D4}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
+ {A61DAD9C-271C-4E95-81AA-DB4CD58564D4}.Release.DLL|x64.Build.0 = Release.DLL|x64
+ {A61DAD9C-271C-4E95-81AA-DB4CD58564D4}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
+ {A61DAD9C-271C-4E95-81AA-DB4CD58564D4}.Release.DLL|x86.Build.0 = Release.DLL|Win32
+ {A61DAD9C-271C-4E95-81AA-DB4CD58564D4}.Release|ARM64.ActiveCfg = Release|ARM64
+ {A61DAD9C-271C-4E95-81AA-DB4CD58564D4}.Release|ARM64.Build.0 = Release|ARM64
+ {A61DAD9C-271C-4E95-81AA-DB4CD58564D4}.Release|x64.ActiveCfg = Release|x64
+ {A61DAD9C-271C-4E95-81AA-DB4CD58564D4}.Release|x64.Build.0 = Release|x64
+ {A61DAD9C-271C-4E95-81AA-DB4CD58564D4}.Release|x86.ActiveCfg = Release|Win32
+ {A61DAD9C-271C-4E95-81AA-DB4CD58564D4}.Release|x86.Build.0 = Release|Win32
+ {49C67F03-1A56-4F96-B278-39B66EC93678}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
+ {49C67F03-1A56-4F96-B278-39B66EC93678}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
+ {49C67F03-1A56-4F96-B278-39B66EC93678}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
+ {49C67F03-1A56-4F96-B278-39B66EC93678}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
+ {49C67F03-1A56-4F96-B278-39B66EC93678}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
+ {49C67F03-1A56-4F96-B278-39B66EC93678}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
+ {49C67F03-1A56-4F96-B278-39B66EC93678}.Debug|ARM64.ActiveCfg = Debug|ARM64
+ {49C67F03-1A56-4F96-B278-39B66EC93678}.Debug|ARM64.Build.0 = Debug|ARM64
+ {49C67F03-1A56-4F96-B278-39B66EC93678}.Debug|x64.ActiveCfg = Debug|x64
+ {49C67F03-1A56-4F96-B278-39B66EC93678}.Debug|x64.Build.0 = Debug|x64
+ {49C67F03-1A56-4F96-B278-39B66EC93678}.Debug|x86.ActiveCfg = Debug|Win32
+ {49C67F03-1A56-4F96-B278-39B66EC93678}.Debug|x86.Build.0 = Debug|Win32
+ {49C67F03-1A56-4F96-B278-39B66EC93678}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
+ {49C67F03-1A56-4F96-B278-39B66EC93678}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
+ {49C67F03-1A56-4F96-B278-39B66EC93678}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
+ {49C67F03-1A56-4F96-B278-39B66EC93678}.Release.DLL|x64.Build.0 = Release.DLL|x64
+ {49C67F03-1A56-4F96-B278-39B66EC93678}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
+ {49C67F03-1A56-4F96-B278-39B66EC93678}.Release.DLL|x86.Build.0 = Release.DLL|Win32
+ {49C67F03-1A56-4F96-B278-39B66EC93678}.Release|ARM64.ActiveCfg = Release|ARM64
+ {49C67F03-1A56-4F96-B278-39B66EC93678}.Release|ARM64.Build.0 = Release|ARM64
+ {49C67F03-1A56-4F96-B278-39B66EC93678}.Release|x64.ActiveCfg = Release|x64
+ {49C67F03-1A56-4F96-B278-39B66EC93678}.Release|x64.Build.0 = Release|x64
+ {49C67F03-1A56-4F96-B278-39B66EC93678}.Release|x86.ActiveCfg = Release|Win32
+ {49C67F03-1A56-4F96-B278-39B66EC93678}.Release|x86.Build.0 = Release|Win32
+ {D496308F-3C3C-40B3-A3ED-EA327D244B3E}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
+ {D496308F-3C3C-40B3-A3ED-EA327D244B3E}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
+ {D496308F-3C3C-40B3-A3ED-EA327D244B3E}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
+ {D496308F-3C3C-40B3-A3ED-EA327D244B3E}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
+ {D496308F-3C3C-40B3-A3ED-EA327D244B3E}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
+ {D496308F-3C3C-40B3-A3ED-EA327D244B3E}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
+ {D496308F-3C3C-40B3-A3ED-EA327D244B3E}.Debug|ARM64.ActiveCfg = Debug|ARM64
+ {D496308F-3C3C-40B3-A3ED-EA327D244B3E}.Debug|ARM64.Build.0 = Debug|ARM64
+ {D496308F-3C3C-40B3-A3ED-EA327D244B3E}.Debug|x64.ActiveCfg = Debug|x64
+ {D496308F-3C3C-40B3-A3ED-EA327D244B3E}.Debug|x64.Build.0 = Debug|x64
+ {D496308F-3C3C-40B3-A3ED-EA327D244B3E}.Debug|x86.ActiveCfg = Debug|Win32
+ {D496308F-3C3C-40B3-A3ED-EA327D244B3E}.Debug|x86.Build.0 = Debug|Win32
+ {D496308F-3C3C-40B3-A3ED-EA327D244B3E}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
+ {D496308F-3C3C-40B3-A3ED-EA327D244B3E}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
+ {D496308F-3C3C-40B3-A3ED-EA327D244B3E}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
+ {D496308F-3C3C-40B3-A3ED-EA327D244B3E}.Release.DLL|x64.Build.0 = Release.DLL|x64
+ {D496308F-3C3C-40B3-A3ED-EA327D244B3E}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
+ {D496308F-3C3C-40B3-A3ED-EA327D244B3E}.Release.DLL|x86.Build.0 = Release.DLL|Win32
+ {D496308F-3C3C-40B3-A3ED-EA327D244B3E}.Release|ARM64.ActiveCfg = Release|ARM64
+ {D496308F-3C3C-40B3-A3ED-EA327D244B3E}.Release|ARM64.Build.0 = Release|ARM64
+ {D496308F-3C3C-40B3-A3ED-EA327D244B3E}.Release|x64.ActiveCfg = Release|x64
+ {D496308F-3C3C-40B3-A3ED-EA327D244B3E}.Release|x64.Build.0 = Release|x64
+ {D496308F-3C3C-40B3-A3ED-EA327D244B3E}.Release|x86.ActiveCfg = Release|Win32
+ {D496308F-3C3C-40B3-A3ED-EA327D244B3E}.Release|x86.Build.0 = Release|Win32
+ {3B27F358-2679-4F38-B297-17B536F580BB}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
+ {3B27F358-2679-4F38-B297-17B536F580BB}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
+ {3B27F358-2679-4F38-B297-17B536F580BB}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
+ {3B27F358-2679-4F38-B297-17B536F580BB}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
+ {3B27F358-2679-4F38-B297-17B536F580BB}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
+ {3B27F358-2679-4F38-B297-17B536F580BB}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
+ {3B27F358-2679-4F38-B297-17B536F580BB}.Debug|ARM64.ActiveCfg = Debug|ARM64
+ {3B27F358-2679-4F38-B297-17B536F580BB}.Debug|ARM64.Build.0 = Debug|ARM64
+ {3B27F358-2679-4F38-B297-17B536F580BB}.Debug|x64.ActiveCfg = Debug|x64
+ {3B27F358-2679-4F38-B297-17B536F580BB}.Debug|x64.Build.0 = Debug|x64
+ {3B27F358-2679-4F38-B297-17B536F580BB}.Debug|x86.ActiveCfg = Debug|Win32
+ {3B27F358-2679-4F38-B297-17B536F580BB}.Debug|x86.Build.0 = Debug|Win32
+ {3B27F358-2679-4F38-B297-17B536F580BB}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
+ {3B27F358-2679-4F38-B297-17B536F580BB}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
+ {3B27F358-2679-4F38-B297-17B536F580BB}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
+ {3B27F358-2679-4F38-B297-17B536F580BB}.Release.DLL|x64.Build.0 = Release.DLL|x64
+ {3B27F358-2679-4F38-B297-17B536F580BB}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
+ {3B27F358-2679-4F38-B297-17B536F580BB}.Release.DLL|x86.Build.0 = Release.DLL|Win32
+ {3B27F358-2679-4F38-B297-17B536F580BB}.Release|ARM64.ActiveCfg = Release|ARM64
+ {3B27F358-2679-4F38-B297-17B536F580BB}.Release|ARM64.Build.0 = Release|ARM64
+ {3B27F358-2679-4F38-B297-17B536F580BB}.Release|x64.ActiveCfg = Release|x64
+ {3B27F358-2679-4F38-B297-17B536F580BB}.Release|x64.Build.0 = Release|x64
+ {3B27F358-2679-4F38-B297-17B536F580BB}.Release|x86.ActiveCfg = Release|Win32
+ {3B27F358-2679-4F38-B297-17B536F580BB}.Release|x86.Build.0 = Release|Win32
+ {718FCBD0-591D-448C-B7D5-9F1CA8544E7B}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
+ {718FCBD0-591D-448C-B7D5-9F1CA8544E7B}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
+ {718FCBD0-591D-448C-B7D5-9F1CA8544E7B}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
+ {718FCBD0-591D-448C-B7D5-9F1CA8544E7B}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
+ {718FCBD0-591D-448C-B7D5-9F1CA8544E7B}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
+ {718FCBD0-591D-448C-B7D5-9F1CA8544E7B}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
+ {718FCBD0-591D-448C-B7D5-9F1CA8544E7B}.Debug|ARM64.ActiveCfg = Debug|ARM64
+ {718FCBD0-591D-448C-B7D5-9F1CA8544E7B}.Debug|ARM64.Build.0 = Debug|ARM64
+ {718FCBD0-591D-448C-B7D5-9F1CA8544E7B}.Debug|x64.ActiveCfg = Debug|x64
+ {718FCBD0-591D-448C-B7D5-9F1CA8544E7B}.Debug|x64.Build.0 = Debug|x64
+ {718FCBD0-591D-448C-B7D5-9F1CA8544E7B}.Debug|x86.ActiveCfg = Debug|Win32
+ {718FCBD0-591D-448C-B7D5-9F1CA8544E7B}.Debug|x86.Build.0 = Debug|Win32
+ {718FCBD0-591D-448C-B7D5-9F1CA8544E7B}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
+ {718FCBD0-591D-448C-B7D5-9F1CA8544E7B}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
+ {718FCBD0-591D-448C-B7D5-9F1CA8544E7B}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
+ {718FCBD0-591D-448C-B7D5-9F1CA8544E7B}.Release.DLL|x64.Build.0 = Release.DLL|x64
+ {718FCBD0-591D-448C-B7D5-9F1CA8544E7B}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
+ {718FCBD0-591D-448C-B7D5-9F1CA8544E7B}.Release.DLL|x86.Build.0 = Release.DLL|Win32
+ {718FCBD0-591D-448C-B7D5-9F1CA8544E7B}.Release|ARM64.ActiveCfg = Release|ARM64
+ {718FCBD0-591D-448C-B7D5-9F1CA8544E7B}.Release|ARM64.Build.0 = Release|ARM64
+ {718FCBD0-591D-448C-B7D5-9F1CA8544E7B}.Release|x64.ActiveCfg = Release|x64
+ {718FCBD0-591D-448C-B7D5-9F1CA8544E7B}.Release|x64.Build.0 = Release|x64
+ {718FCBD0-591D-448C-B7D5-9F1CA8544E7B}.Release|x86.ActiveCfg = Release|Win32
+ {718FCBD0-591D-448C-B7D5-9F1CA8544E7B}.Release|x86.Build.0 = Release|Win32
+ {19CA0070-B4B2-4394-90B7-D0C259AA35BA}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
+ {19CA0070-B4B2-4394-90B7-D0C259AA35BA}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
+ {19CA0070-B4B2-4394-90B7-D0C259AA35BA}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
+ {19CA0070-B4B2-4394-90B7-D0C259AA35BA}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
+ {19CA0070-B4B2-4394-90B7-D0C259AA35BA}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
+ {19CA0070-B4B2-4394-90B7-D0C259AA35BA}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
+ {19CA0070-B4B2-4394-90B7-D0C259AA35BA}.Debug|ARM64.ActiveCfg = Debug|ARM64
+ {19CA0070-B4B2-4394-90B7-D0C259AA35BA}.Debug|ARM64.Build.0 = Debug|ARM64
+ {19CA0070-B4B2-4394-90B7-D0C259AA35BA}.Debug|x64.ActiveCfg = Debug|x64
+ {19CA0070-B4B2-4394-90B7-D0C259AA35BA}.Debug|x64.Build.0 = Debug|x64
+ {19CA0070-B4B2-4394-90B7-D0C259AA35BA}.Debug|x86.ActiveCfg = Debug|Win32
+ {19CA0070-B4B2-4394-90B7-D0C259AA35BA}.Debug|x86.Build.0 = Debug|Win32
+ {19CA0070-B4B2-4394-90B7-D0C259AA35BA}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
+ {19CA0070-B4B2-4394-90B7-D0C259AA35BA}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
+ {19CA0070-B4B2-4394-90B7-D0C259AA35BA}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
+ {19CA0070-B4B2-4394-90B7-D0C259AA35BA}.Release.DLL|x64.Build.0 = Release.DLL|x64
+ {19CA0070-B4B2-4394-90B7-D0C259AA35BA}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
+ {19CA0070-B4B2-4394-90B7-D0C259AA35BA}.Release.DLL|x86.Build.0 = Release.DLL|Win32
+ {19CA0070-B4B2-4394-90B7-D0C259AA35BA}.Release|ARM64.ActiveCfg = Release|ARM64
+ {19CA0070-B4B2-4394-90B7-D0C259AA35BA}.Release|ARM64.Build.0 = Release|ARM64
+ {19CA0070-B4B2-4394-90B7-D0C259AA35BA}.Release|x64.ActiveCfg = Release|x64
+ {19CA0070-B4B2-4394-90B7-D0C259AA35BA}.Release|x64.Build.0 = Release|x64
+ {19CA0070-B4B2-4394-90B7-D0C259AA35BA}.Release|x86.ActiveCfg = Release|Win32
+ {19CA0070-B4B2-4394-90B7-D0C259AA35BA}.Release|x86.Build.0 = Release|Win32
+ {2CCCD9E4-9058-4291-BD89-39C979F0CA1E}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
+ {2CCCD9E4-9058-4291-BD89-39C979F0CA1E}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
+ {2CCCD9E4-9058-4291-BD89-39C979F0CA1E}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
+ {2CCCD9E4-9058-4291-BD89-39C979F0CA1E}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
+ {2CCCD9E4-9058-4291-BD89-39C979F0CA1E}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
+ {2CCCD9E4-9058-4291-BD89-39C979F0CA1E}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
+ {2CCCD9E4-9058-4291-BD89-39C979F0CA1E}.Debug|ARM64.ActiveCfg = Debug|ARM64
+ {2CCCD9E4-9058-4291-BD89-39C979F0CA1E}.Debug|ARM64.Build.0 = Debug|ARM64
+ {2CCCD9E4-9058-4291-BD89-39C979F0CA1E}.Debug|x64.ActiveCfg = Debug|x64
+ {2CCCD9E4-9058-4291-BD89-39C979F0CA1E}.Debug|x64.Build.0 = Debug|x64
+ {2CCCD9E4-9058-4291-BD89-39C979F0CA1E}.Debug|x86.ActiveCfg = Debug|Win32
+ {2CCCD9E4-9058-4291-BD89-39C979F0CA1E}.Debug|x86.Build.0 = Debug|Win32
+ {2CCCD9E4-9058-4291-BD89-39C979F0CA1E}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
+ {2CCCD9E4-9058-4291-BD89-39C979F0CA1E}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
+ {2CCCD9E4-9058-4291-BD89-39C979F0CA1E}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
+ {2CCCD9E4-9058-4291-BD89-39C979F0CA1E}.Release.DLL|x64.Build.0 = Release.DLL|x64
+ {2CCCD9E4-9058-4291-BD89-39C979F0CA1E}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
+ {2CCCD9E4-9058-4291-BD89-39C979F0CA1E}.Release.DLL|x86.Build.0 = Release.DLL|Win32
+ {2CCCD9E4-9058-4291-BD89-39C979F0CA1E}.Release|ARM64.ActiveCfg = Release|ARM64
+ {2CCCD9E4-9058-4291-BD89-39C979F0CA1E}.Release|ARM64.Build.0 = Release|ARM64
+ {2CCCD9E4-9058-4291-BD89-39C979F0CA1E}.Release|x64.ActiveCfg = Release|x64
+ {2CCCD9E4-9058-4291-BD89-39C979F0CA1E}.Release|x64.Build.0 = Release|x64
+ {2CCCD9E4-9058-4291-BD89-39C979F0CA1E}.Release|x86.ActiveCfg = Release|Win32
+ {2CCCD9E4-9058-4291-BD89-39C979F0CA1E}.Release|x86.Build.0 = Release|Win32
+ {9DB1F875-6E65-4195-B23F-ED8095C0B99C}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
+ {9DB1F875-6E65-4195-B23F-ED8095C0B99C}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
+ {9DB1F875-6E65-4195-B23F-ED8095C0B99C}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
+ {9DB1F875-6E65-4195-B23F-ED8095C0B99C}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
+ {9DB1F875-6E65-4195-B23F-ED8095C0B99C}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
+ {9DB1F875-6E65-4195-B23F-ED8095C0B99C}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
+ {9DB1F875-6E65-4195-B23F-ED8095C0B99C}.Debug|ARM64.ActiveCfg = Debug|ARM64
+ {9DB1F875-6E65-4195-B23F-ED8095C0B99C}.Debug|ARM64.Build.0 = Debug|ARM64
+ {9DB1F875-6E65-4195-B23F-ED8095C0B99C}.Debug|x64.ActiveCfg = Debug|x64
+ {9DB1F875-6E65-4195-B23F-ED8095C0B99C}.Debug|x64.Build.0 = Debug|x64
+ {9DB1F875-6E65-4195-B23F-ED8095C0B99C}.Debug|x86.ActiveCfg = Debug|Win32
+ {9DB1F875-6E65-4195-B23F-ED8095C0B99C}.Debug|x86.Build.0 = Debug|Win32
+ {9DB1F875-6E65-4195-B23F-ED8095C0B99C}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
+ {9DB1F875-6E65-4195-B23F-ED8095C0B99C}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
+ {9DB1F875-6E65-4195-B23F-ED8095C0B99C}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
+ {9DB1F875-6E65-4195-B23F-ED8095C0B99C}.Release.DLL|x64.Build.0 = Release.DLL|x64
+ {9DB1F875-6E65-4195-B23F-ED8095C0B99C}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
+ {9DB1F875-6E65-4195-B23F-ED8095C0B99C}.Release.DLL|x86.Build.0 = Release.DLL|Win32
+ {9DB1F875-6E65-4195-B23F-ED8095C0B99C}.Release|ARM64.ActiveCfg = Release|ARM64
+ {9DB1F875-6E65-4195-B23F-ED8095C0B99C}.Release|ARM64.Build.0 = Release|ARM64
+ {9DB1F875-6E65-4195-B23F-ED8095C0B99C}.Release|x64.ActiveCfg = Release|x64
+ {9DB1F875-6E65-4195-B23F-ED8095C0B99C}.Release|x64.Build.0 = Release|x64
+ {9DB1F875-6E65-4195-B23F-ED8095C0B99C}.Release|x86.ActiveCfg = Release|Win32
+ {9DB1F875-6E65-4195-B23F-ED8095C0B99C}.Release|x86.Build.0 = Release|Win32
+ {52BA9067-A5FC-4CE8-82AD-7204ECFDEF9F}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
+ {52BA9067-A5FC-4CE8-82AD-7204ECFDEF9F}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
+ {52BA9067-A5FC-4CE8-82AD-7204ECFDEF9F}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
+ {52BA9067-A5FC-4CE8-82AD-7204ECFDEF9F}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
+ {52BA9067-A5FC-4CE8-82AD-7204ECFDEF9F}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
+ {52BA9067-A5FC-4CE8-82AD-7204ECFDEF9F}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
+ {52BA9067-A5FC-4CE8-82AD-7204ECFDEF9F}.Debug|ARM64.ActiveCfg = Debug|ARM64
+ {52BA9067-A5FC-4CE8-82AD-7204ECFDEF9F}.Debug|ARM64.Build.0 = Debug|ARM64
+ {52BA9067-A5FC-4CE8-82AD-7204ECFDEF9F}.Debug|x64.ActiveCfg = Debug|x64
+ {52BA9067-A5FC-4CE8-82AD-7204ECFDEF9F}.Debug|x64.Build.0 = Debug|x64
+ {52BA9067-A5FC-4CE8-82AD-7204ECFDEF9F}.Debug|x86.ActiveCfg = Debug|Win32
+ {52BA9067-A5FC-4CE8-82AD-7204ECFDEF9F}.Debug|x86.Build.0 = Debug|Win32
+ {52BA9067-A5FC-4CE8-82AD-7204ECFDEF9F}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
+ {52BA9067-A5FC-4CE8-82AD-7204ECFDEF9F}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
+ {52BA9067-A5FC-4CE8-82AD-7204ECFDEF9F}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
+ {52BA9067-A5FC-4CE8-82AD-7204ECFDEF9F}.Release.DLL|x64.Build.0 = Release.DLL|x64
+ {52BA9067-A5FC-4CE8-82AD-7204ECFDEF9F}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
+ {52BA9067-A5FC-4CE8-82AD-7204ECFDEF9F}.Release.DLL|x86.Build.0 = Release.DLL|Win32
+ {52BA9067-A5FC-4CE8-82AD-7204ECFDEF9F}.Release|ARM64.ActiveCfg = Release|ARM64
+ {52BA9067-A5FC-4CE8-82AD-7204ECFDEF9F}.Release|ARM64.Build.0 = Release|ARM64
+ {52BA9067-A5FC-4CE8-82AD-7204ECFDEF9F}.Release|x64.ActiveCfg = Release|x64
+ {52BA9067-A5FC-4CE8-82AD-7204ECFDEF9F}.Release|x64.Build.0 = Release|x64
+ {52BA9067-A5FC-4CE8-82AD-7204ECFDEF9F}.Release|x86.ActiveCfg = Release|Win32
+ {52BA9067-A5FC-4CE8-82AD-7204ECFDEF9F}.Release|x86.Build.0 = Release|Win32
+ {8E132D5A-2C00-48D0-8747-97E41356F26F}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
+ {8E132D5A-2C00-48D0-8747-97E41356F26F}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
+ {8E132D5A-2C00-48D0-8747-97E41356F26F}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
+ {8E132D5A-2C00-48D0-8747-97E41356F26F}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
+ {8E132D5A-2C00-48D0-8747-97E41356F26F}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
+ {8E132D5A-2C00-48D0-8747-97E41356F26F}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
+ {8E132D5A-2C00-48D0-8747-97E41356F26F}.Debug|ARM64.ActiveCfg = Debug|ARM64
+ {8E132D5A-2C00-48D0-8747-97E41356F26F}.Debug|ARM64.Build.0 = Debug|ARM64
+ {8E132D5A-2C00-48D0-8747-97E41356F26F}.Debug|x64.ActiveCfg = Debug|x64
+ {8E132D5A-2C00-48D0-8747-97E41356F26F}.Debug|x64.Build.0 = Debug|x64
+ {8E132D5A-2C00-48D0-8747-97E41356F26F}.Debug|x86.ActiveCfg = Debug|Win32
+ {8E132D5A-2C00-48D0-8747-97E41356F26F}.Debug|x86.Build.0 = Debug|Win32
+ {8E132D5A-2C00-48D0-8747-97E41356F26F}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
+ {8E132D5A-2C00-48D0-8747-97E41356F26F}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
+ {8E132D5A-2C00-48D0-8747-97E41356F26F}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
+ {8E132D5A-2C00-48D0-8747-97E41356F26F}.Release.DLL|x64.Build.0 = Release.DLL|x64
+ {8E132D5A-2C00-48D0-8747-97E41356F26F}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
+ {8E132D5A-2C00-48D0-8747-97E41356F26F}.Release.DLL|x86.Build.0 = Release.DLL|Win32
+ {8E132D5A-2C00-48D0-8747-97E41356F26F}.Release|ARM64.ActiveCfg = Release|ARM64
+ {8E132D5A-2C00-48D0-8747-97E41356F26F}.Release|ARM64.Build.0 = Release|ARM64
+ {8E132D5A-2C00-48D0-8747-97E41356F26F}.Release|x64.ActiveCfg = Release|x64
+ {8E132D5A-2C00-48D0-8747-97E41356F26F}.Release|x64.Build.0 = Release|x64
+ {8E132D5A-2C00-48D0-8747-97E41356F26F}.Release|x86.ActiveCfg = Release|Win32
+ {8E132D5A-2C00-48D0-8747-97E41356F26F}.Release|x86.Build.0 = Release|Win32
+ {A4662163-83E7-4309-8CAA-B0BF13655FE6}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
+ {A4662163-83E7-4309-8CAA-B0BF13655FE6}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
+ {A4662163-83E7-4309-8CAA-B0BF13655FE6}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
+ {A4662163-83E7-4309-8CAA-B0BF13655FE6}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
+ {A4662163-83E7-4309-8CAA-B0BF13655FE6}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
+ {A4662163-83E7-4309-8CAA-B0BF13655FE6}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
+ {A4662163-83E7-4309-8CAA-B0BF13655FE6}.Debug|ARM64.ActiveCfg = Debug|ARM64
+ {A4662163-83E7-4309-8CAA-B0BF13655FE6}.Debug|ARM64.Build.0 = Debug|ARM64
+ {A4662163-83E7-4309-8CAA-B0BF13655FE6}.Debug|x64.ActiveCfg = Debug|x64
+ {A4662163-83E7-4309-8CAA-B0BF13655FE6}.Debug|x64.Build.0 = Debug|x64
+ {A4662163-83E7-4309-8CAA-B0BF13655FE6}.Debug|x86.ActiveCfg = Debug|Win32
+ {A4662163-83E7-4309-8CAA-B0BF13655FE6}.Debug|x86.Build.0 = Debug|Win32
+ {A4662163-83E7-4309-8CAA-B0BF13655FE6}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
+ {A4662163-83E7-4309-8CAA-B0BF13655FE6}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
+ {A4662163-83E7-4309-8CAA-B0BF13655FE6}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
+ {A4662163-83E7-4309-8CAA-B0BF13655FE6}.Release.DLL|x64.Build.0 = Release.DLL|x64
+ {A4662163-83E7-4309-8CAA-B0BF13655FE6}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
+ {A4662163-83E7-4309-8CAA-B0BF13655FE6}.Release.DLL|x86.Build.0 = Release.DLL|Win32
+ {A4662163-83E7-4309-8CAA-B0BF13655FE6}.Release|ARM64.ActiveCfg = Release|ARM64
+ {A4662163-83E7-4309-8CAA-B0BF13655FE6}.Release|ARM64.Build.0 = Release|ARM64
+ {A4662163-83E7-4309-8CAA-B0BF13655FE6}.Release|x64.ActiveCfg = Release|x64
+ {A4662163-83E7-4309-8CAA-B0BF13655FE6}.Release|x64.Build.0 = Release|x64
+ {A4662163-83E7-4309-8CAA-B0BF13655FE6}.Release|x86.ActiveCfg = Release|Win32
+ {A4662163-83E7-4309-8CAA-B0BF13655FE6}.Release|x86.Build.0 = Release|Win32
+ {5F4B766F-DD52-4B53-B6C3-BC7611E17F20}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
+ {5F4B766F-DD52-4B53-B6C3-BC7611E17F20}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
+ {5F4B766F-DD52-4B53-B6C3-BC7611E17F20}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
+ {5F4B766F-DD52-4B53-B6C3-BC7611E17F20}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
+ {5F4B766F-DD52-4B53-B6C3-BC7611E17F20}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
+ {5F4B766F-DD52-4B53-B6C3-BC7611E17F20}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
+ {5F4B766F-DD52-4B53-B6C3-BC7611E17F20}.Debug|ARM64.ActiveCfg = Debug|ARM64
+ {5F4B766F-DD52-4B53-B6C3-BC7611E17F20}.Debug|ARM64.Build.0 = Debug|ARM64
+ {5F4B766F-DD52-4B53-B6C3-BC7611E17F20}.Debug|x64.ActiveCfg = Debug|x64
+ {5F4B766F-DD52-4B53-B6C3-BC7611E17F20}.Debug|x64.Build.0 = Debug|x64
+ {5F4B766F-DD52-4B53-B6C3-BC7611E17F20}.Debug|x86.ActiveCfg = Debug|Win32
+ {5F4B766F-DD52-4B53-B6C3-BC7611E17F20}.Debug|x86.Build.0 = Debug|Win32
+ {5F4B766F-DD52-4B53-B6C3-BC7611E17F20}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
+ {5F4B766F-DD52-4B53-B6C3-BC7611E17F20}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
+ {5F4B766F-DD52-4B53-B6C3-BC7611E17F20}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
+ {5F4B766F-DD52-4B53-B6C3-BC7611E17F20}.Release.DLL|x64.Build.0 = Release.DLL|x64
+ {5F4B766F-DD52-4B53-B6C3-BC7611E17F20}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
+ {5F4B766F-DD52-4B53-B6C3-BC7611E17F20}.Release.DLL|x86.Build.0 = Release.DLL|Win32
+ {5F4B766F-DD52-4B53-B6C3-BC7611E17F20}.Release|ARM64.ActiveCfg = Release|ARM64
+ {5F4B766F-DD52-4B53-B6C3-BC7611E17F20}.Release|ARM64.Build.0 = Release|ARM64
+ {5F4B766F-DD52-4B53-B6C3-BC7611E17F20}.Release|x64.ActiveCfg = Release|x64
+ {5F4B766F-DD52-4B53-B6C3-BC7611E17F20}.Release|x64.Build.0 = Release|x64
+ {5F4B766F-DD52-4B53-B6C3-BC7611E17F20}.Release|x86.ActiveCfg = Release|Win32
+ {5F4B766F-DD52-4B53-B6C3-BC7611E17F20}.Release|x86.Build.0 = Release|Win32
+ {FF5F9EE9-29C5-40EE-BBCF-AE51B001FEC3}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
+ {FF5F9EE9-29C5-40EE-BBCF-AE51B001FEC3}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
+ {FF5F9EE9-29C5-40EE-BBCF-AE51B001FEC3}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
+ {FF5F9EE9-29C5-40EE-BBCF-AE51B001FEC3}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
+ {FF5F9EE9-29C5-40EE-BBCF-AE51B001FEC3}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
+ {FF5F9EE9-29C5-40EE-BBCF-AE51B001FEC3}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
+ {FF5F9EE9-29C5-40EE-BBCF-AE51B001FEC3}.Debug|ARM64.ActiveCfg = Debug|ARM64
+ {FF5F9EE9-29C5-40EE-BBCF-AE51B001FEC3}.Debug|ARM64.Build.0 = Debug|ARM64
+ {FF5F9EE9-29C5-40EE-BBCF-AE51B001FEC3}.Debug|x64.ActiveCfg = Debug|x64
+ {FF5F9EE9-29C5-40EE-BBCF-AE51B001FEC3}.Debug|x64.Build.0 = Debug|x64
+ {FF5F9EE9-29C5-40EE-BBCF-AE51B001FEC3}.Debug|x86.ActiveCfg = Debug|Win32
+ {FF5F9EE9-29C5-40EE-BBCF-AE51B001FEC3}.Debug|x86.Build.0 = Debug|Win32
+ {FF5F9EE9-29C5-40EE-BBCF-AE51B001FEC3}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
+ {FF5F9EE9-29C5-40EE-BBCF-AE51B001FEC3}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
+ {FF5F9EE9-29C5-40EE-BBCF-AE51B001FEC3}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
+ {FF5F9EE9-29C5-40EE-BBCF-AE51B001FEC3}.Release.DLL|x64.Build.0 = Release.DLL|x64
+ {FF5F9EE9-29C5-40EE-BBCF-AE51B001FEC3}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
+ {FF5F9EE9-29C5-40EE-BBCF-AE51B001FEC3}.Release.DLL|x86.Build.0 = Release.DLL|Win32
+ {FF5F9EE9-29C5-40EE-BBCF-AE51B001FEC3}.Release|ARM64.ActiveCfg = Release|ARM64
+ {FF5F9EE9-29C5-40EE-BBCF-AE51B001FEC3}.Release|ARM64.Build.0 = Release|ARM64
+ {FF5F9EE9-29C5-40EE-BBCF-AE51B001FEC3}.Release|x64.ActiveCfg = Release|x64
+ {FF5F9EE9-29C5-40EE-BBCF-AE51B001FEC3}.Release|x64.Build.0 = Release|x64
+ {FF5F9EE9-29C5-40EE-BBCF-AE51B001FEC3}.Release|x86.ActiveCfg = Release|Win32
+ {FF5F9EE9-29C5-40EE-BBCF-AE51B001FEC3}.Release|x86.Build.0 = Release|Win32
+ {0C442799-B09C-4CD1-9538-711B6E85E9BF}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
+ {0C442799-B09C-4CD1-9538-711B6E85E9BF}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
+ {0C442799-B09C-4CD1-9538-711B6E85E9BF}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
+ {0C442799-B09C-4CD1-9538-711B6E85E9BF}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
+ {0C442799-B09C-4CD1-9538-711B6E85E9BF}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
+ {0C442799-B09C-4CD1-9538-711B6E85E9BF}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
+ {0C442799-B09C-4CD1-9538-711B6E85E9BF}.Debug|ARM64.ActiveCfg = Debug|ARM64
+ {0C442799-B09C-4CD1-9538-711B6E85E9BF}.Debug|ARM64.Build.0 = Debug|ARM64
+ {0C442799-B09C-4CD1-9538-711B6E85E9BF}.Debug|x64.ActiveCfg = Debug|x64
+ {0C442799-B09C-4CD1-9538-711B6E85E9BF}.Debug|x64.Build.0 = Debug|x64
+ {0C442799-B09C-4CD1-9538-711B6E85E9BF}.Debug|x86.ActiveCfg = Debug|Win32
+ {0C442799-B09C-4CD1-9538-711B6E85E9BF}.Debug|x86.Build.0 = Debug|Win32
+ {0C442799-B09C-4CD1-9538-711B6E85E9BF}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
+ {0C442799-B09C-4CD1-9538-711B6E85E9BF}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
+ {0C442799-B09C-4CD1-9538-711B6E85E9BF}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
+ {0C442799-B09C-4CD1-9538-711B6E85E9BF}.Release.DLL|x64.Build.0 = Release.DLL|x64
+ {0C442799-B09C-4CD1-9538-711B6E85E9BF}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
+ {0C442799-B09C-4CD1-9538-711B6E85E9BF}.Release.DLL|x86.Build.0 = Release.DLL|Win32
+ {0C442799-B09C-4CD1-9538-711B6E85E9BF}.Release|ARM64.ActiveCfg = Release|ARM64
+ {0C442799-B09C-4CD1-9538-711B6E85E9BF}.Release|ARM64.Build.0 = Release|ARM64
+ {0C442799-B09C-4CD1-9538-711B6E85E9BF}.Release|x64.ActiveCfg = Release|x64
+ {0C442799-B09C-4CD1-9538-711B6E85E9BF}.Release|x64.Build.0 = Release|x64
+ {0C442799-B09C-4CD1-9538-711B6E85E9BF}.Release|x86.ActiveCfg = Release|Win32
+ {0C442799-B09C-4CD1-9538-711B6E85E9BF}.Release|x86.Build.0 = Release|Win32
+ {DFB40A10-F8B7-412A-BCC3-5EE49294D816}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
+ {DFB40A10-F8B7-412A-BCC3-5EE49294D816}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
+ {DFB40A10-F8B7-412A-BCC3-5EE49294D816}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
+ {DFB40A10-F8B7-412A-BCC3-5EE49294D816}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
+ {DFB40A10-F8B7-412A-BCC3-5EE49294D816}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
+ {DFB40A10-F8B7-412A-BCC3-5EE49294D816}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
+ {DFB40A10-F8B7-412A-BCC3-5EE49294D816}.Debug|ARM64.ActiveCfg = Debug|ARM64
+ {DFB40A10-F8B7-412A-BCC3-5EE49294D816}.Debug|ARM64.Build.0 = Debug|ARM64
+ {DFB40A10-F8B7-412A-BCC3-5EE49294D816}.Debug|x64.ActiveCfg = Debug|x64
+ {DFB40A10-F8B7-412A-BCC3-5EE49294D816}.Debug|x64.Build.0 = Debug|x64
+ {DFB40A10-F8B7-412A-BCC3-5EE49294D816}.Debug|x86.ActiveCfg = Debug|Win32
+ {DFB40A10-F8B7-412A-BCC3-5EE49294D816}.Debug|x86.Build.0 = Debug|Win32
+ {DFB40A10-F8B7-412A-BCC3-5EE49294D816}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
+ {DFB40A10-F8B7-412A-BCC3-5EE49294D816}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
+ {DFB40A10-F8B7-412A-BCC3-5EE49294D816}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
+ {DFB40A10-F8B7-412A-BCC3-5EE49294D816}.Release.DLL|x64.Build.0 = Release.DLL|x64
+ {DFB40A10-F8B7-412A-BCC3-5EE49294D816}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
+ {DFB40A10-F8B7-412A-BCC3-5EE49294D816}.Release.DLL|x86.Build.0 = Release.DLL|Win32
+ {DFB40A10-F8B7-412A-BCC3-5EE49294D816}.Release|ARM64.ActiveCfg = Release|ARM64
+ {DFB40A10-F8B7-412A-BCC3-5EE49294D816}.Release|ARM64.Build.0 = Release|ARM64
+ {DFB40A10-F8B7-412A-BCC3-5EE49294D816}.Release|x64.ActiveCfg = Release|x64
+ {DFB40A10-F8B7-412A-BCC3-5EE49294D816}.Release|x64.Build.0 = Release|x64
+ {DFB40A10-F8B7-412A-BCC3-5EE49294D816}.Release|x86.ActiveCfg = Release|Win32
+ {DFB40A10-F8B7-412A-BCC3-5EE49294D816}.Release|x86.Build.0 = Release|Win32
+ {BB58A5FB-1A35-4471-86D0-A5189EC541B3}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
+ {BB58A5FB-1A35-4471-86D0-A5189EC541B3}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
+ {BB58A5FB-1A35-4471-86D0-A5189EC541B3}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
+ {BB58A5FB-1A35-4471-86D0-A5189EC541B3}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
+ {BB58A5FB-1A35-4471-86D0-A5189EC541B3}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
+ {BB58A5FB-1A35-4471-86D0-A5189EC541B3}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
+ {BB58A5FB-1A35-4471-86D0-A5189EC541B3}.Debug|ARM64.ActiveCfg = Debug|ARM64
+ {BB58A5FB-1A35-4471-86D0-A5189EC541B3}.Debug|ARM64.Build.0 = Debug|ARM64
+ {BB58A5FB-1A35-4471-86D0-A5189EC541B3}.Debug|x64.ActiveCfg = Debug|x64
+ {BB58A5FB-1A35-4471-86D0-A5189EC541B3}.Debug|x64.Build.0 = Debug|x64
+ {BB58A5FB-1A35-4471-86D0-A5189EC541B3}.Debug|x86.ActiveCfg = Debug|Win32
+ {BB58A5FB-1A35-4471-86D0-A5189EC541B3}.Debug|x86.Build.0 = Debug|Win32
+ {BB58A5FB-1A35-4471-86D0-A5189EC541B3}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
+ {BB58A5FB-1A35-4471-86D0-A5189EC541B3}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
+ {BB58A5FB-1A35-4471-86D0-A5189EC541B3}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
+ {BB58A5FB-1A35-4471-86D0-A5189EC541B3}.Release.DLL|x64.Build.0 = Release.DLL|x64
+ {BB58A5FB-1A35-4471-86D0-A5189EC541B3}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
+ {BB58A5FB-1A35-4471-86D0-A5189EC541B3}.Release.DLL|x86.Build.0 = Release.DLL|Win32
+ {BB58A5FB-1A35-4471-86D0-A5189EC541B3}.Release|ARM64.ActiveCfg = Release|ARM64
+ {BB58A5FB-1A35-4471-86D0-A5189EC541B3}.Release|ARM64.Build.0 = Release|ARM64
+ {BB58A5FB-1A35-4471-86D0-A5189EC541B3}.Release|x64.ActiveCfg = Release|x64
+ {BB58A5FB-1A35-4471-86D0-A5189EC541B3}.Release|x64.Build.0 = Release|x64
+ {BB58A5FB-1A35-4471-86D0-A5189EC541B3}.Release|x86.ActiveCfg = Release|Win32
+ {BB58A5FB-1A35-4471-86D0-A5189EC541B3}.Release|x86.Build.0 = Release|Win32
+ {61997220-5383-4AE5-ABD4-5F45AE1B0F2A}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
+ {61997220-5383-4AE5-ABD4-5F45AE1B0F2A}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
+ {61997220-5383-4AE5-ABD4-5F45AE1B0F2A}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
+ {61997220-5383-4AE5-ABD4-5F45AE1B0F2A}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
+ {61997220-5383-4AE5-ABD4-5F45AE1B0F2A}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
+ {61997220-5383-4AE5-ABD4-5F45AE1B0F2A}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
+ {61997220-5383-4AE5-ABD4-5F45AE1B0F2A}.Debug|ARM64.ActiveCfg = Debug|ARM64
+ {61997220-5383-4AE5-ABD4-5F45AE1B0F2A}.Debug|ARM64.Build.0 = Debug|ARM64
+ {61997220-5383-4AE5-ABD4-5F45AE1B0F2A}.Debug|x64.ActiveCfg = Debug|x64
+ {61997220-5383-4AE5-ABD4-5F45AE1B0F2A}.Debug|x64.Build.0 = Debug|x64
+ {61997220-5383-4AE5-ABD4-5F45AE1B0F2A}.Debug|x86.ActiveCfg = Debug|Win32
+ {61997220-5383-4AE5-ABD4-5F45AE1B0F2A}.Debug|x86.Build.0 = Debug|Win32
+ {61997220-5383-4AE5-ABD4-5F45AE1B0F2A}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
+ {61997220-5383-4AE5-ABD4-5F45AE1B0F2A}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
+ {61997220-5383-4AE5-ABD4-5F45AE1B0F2A}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
+ {61997220-5383-4AE5-ABD4-5F45AE1B0F2A}.Release.DLL|x64.Build.0 = Release.DLL|x64
+ {61997220-5383-4AE5-ABD4-5F45AE1B0F2A}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
+ {61997220-5383-4AE5-ABD4-5F45AE1B0F2A}.Release.DLL|x86.Build.0 = Release.DLL|Win32
+ {61997220-5383-4AE5-ABD4-5F45AE1B0F2A}.Release|ARM64.ActiveCfg = Release|ARM64
+ {61997220-5383-4AE5-ABD4-5F45AE1B0F2A}.Release|ARM64.Build.0 = Release|ARM64
+ {61997220-5383-4AE5-ABD4-5F45AE1B0F2A}.Release|x64.ActiveCfg = Release|x64
+ {61997220-5383-4AE5-ABD4-5F45AE1B0F2A}.Release|x64.Build.0 = Release|x64
+ {61997220-5383-4AE5-ABD4-5F45AE1B0F2A}.Release|x86.ActiveCfg = Release|Win32
+ {61997220-5383-4AE5-ABD4-5F45AE1B0F2A}.Release|x86.Build.0 = Release|Win32
+ {7467E9AE-844F-444D-8A3F-17397544BA21}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
+ {7467E9AE-844F-444D-8A3F-17397544BA21}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
+ {7467E9AE-844F-444D-8A3F-17397544BA21}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
+ {7467E9AE-844F-444D-8A3F-17397544BA21}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
+ {7467E9AE-844F-444D-8A3F-17397544BA21}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
+ {7467E9AE-844F-444D-8A3F-17397544BA21}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
+ {7467E9AE-844F-444D-8A3F-17397544BA21}.Debug|ARM64.ActiveCfg = Debug|ARM64
+ {7467E9AE-844F-444D-8A3F-17397544BA21}.Debug|ARM64.Build.0 = Debug|ARM64
+ {7467E9AE-844F-444D-8A3F-17397544BA21}.Debug|x64.ActiveCfg = Debug|x64
+ {7467E9AE-844F-444D-8A3F-17397544BA21}.Debug|x64.Build.0 = Debug|x64
+ {7467E9AE-844F-444D-8A3F-17397544BA21}.Debug|x86.ActiveCfg = Debug|Win32
+ {7467E9AE-844F-444D-8A3F-17397544BA21}.Debug|x86.Build.0 = Debug|Win32
+ {7467E9AE-844F-444D-8A3F-17397544BA21}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
+ {7467E9AE-844F-444D-8A3F-17397544BA21}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
+ {7467E9AE-844F-444D-8A3F-17397544BA21}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
+ {7467E9AE-844F-444D-8A3F-17397544BA21}.Release.DLL|x64.Build.0 = Release.DLL|x64
+ {7467E9AE-844F-444D-8A3F-17397544BA21}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
+ {7467E9AE-844F-444D-8A3F-17397544BA21}.Release.DLL|x86.Build.0 = Release.DLL|Win32
+ {7467E9AE-844F-444D-8A3F-17397544BA21}.Release|ARM64.ActiveCfg = Release|ARM64
+ {7467E9AE-844F-444D-8A3F-17397544BA21}.Release|ARM64.Build.0 = Release|ARM64
+ {7467E9AE-844F-444D-8A3F-17397544BA21}.Release|x64.ActiveCfg = Release|x64
+ {7467E9AE-844F-444D-8A3F-17397544BA21}.Release|x64.Build.0 = Release|x64
+ {7467E9AE-844F-444D-8A3F-17397544BA21}.Release|x86.ActiveCfg = Release|Win32
+ {7467E9AE-844F-444D-8A3F-17397544BA21}.Release|x86.Build.0 = Release|Win32
+ {497FDF54-9762-4048-A833-61CC3980A0FB}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
+ {497FDF54-9762-4048-A833-61CC3980A0FB}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
+ {497FDF54-9762-4048-A833-61CC3980A0FB}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
+ {497FDF54-9762-4048-A833-61CC3980A0FB}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
+ {497FDF54-9762-4048-A833-61CC3980A0FB}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
+ {497FDF54-9762-4048-A833-61CC3980A0FB}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
+ {497FDF54-9762-4048-A833-61CC3980A0FB}.Debug|ARM64.ActiveCfg = Debug|ARM64
+ {497FDF54-9762-4048-A833-61CC3980A0FB}.Debug|ARM64.Build.0 = Debug|ARM64
+ {497FDF54-9762-4048-A833-61CC3980A0FB}.Debug|x64.ActiveCfg = Debug|x64
+ {497FDF54-9762-4048-A833-61CC3980A0FB}.Debug|x64.Build.0 = Debug|x64
+ {497FDF54-9762-4048-A833-61CC3980A0FB}.Debug|x86.ActiveCfg = Debug|Win32
+ {497FDF54-9762-4048-A833-61CC3980A0FB}.Debug|x86.Build.0 = Debug|Win32
+ {497FDF54-9762-4048-A833-61CC3980A0FB}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
+ {497FDF54-9762-4048-A833-61CC3980A0FB}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
+ {497FDF54-9762-4048-A833-61CC3980A0FB}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
+ {497FDF54-9762-4048-A833-61CC3980A0FB}.Release.DLL|x64.Build.0 = Release.DLL|x64
+ {497FDF54-9762-4048-A833-61CC3980A0FB}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
+ {497FDF54-9762-4048-A833-61CC3980A0FB}.Release.DLL|x86.Build.0 = Release.DLL|Win32
+ {497FDF54-9762-4048-A833-61CC3980A0FB}.Release|ARM64.ActiveCfg = Release|ARM64
+ {497FDF54-9762-4048-A833-61CC3980A0FB}.Release|ARM64.Build.0 = Release|ARM64
+ {497FDF54-9762-4048-A833-61CC3980A0FB}.Release|x64.ActiveCfg = Release|x64
+ {497FDF54-9762-4048-A833-61CC3980A0FB}.Release|x64.Build.0 = Release|x64
+ {497FDF54-9762-4048-A833-61CC3980A0FB}.Release|x86.ActiveCfg = Release|Win32
+ {497FDF54-9762-4048-A833-61CC3980A0FB}.Release|x86.Build.0 = Release|Win32
+ {29B00F47-BE91-4A1F-B87D-B1302F038316}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
+ {29B00F47-BE91-4A1F-B87D-B1302F038316}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
+ {29B00F47-BE91-4A1F-B87D-B1302F038316}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
+ {29B00F47-BE91-4A1F-B87D-B1302F038316}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
+ {29B00F47-BE91-4A1F-B87D-B1302F038316}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
+ {29B00F47-BE91-4A1F-B87D-B1302F038316}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
+ {29B00F47-BE91-4A1F-B87D-B1302F038316}.Debug|ARM64.ActiveCfg = Debug|ARM64
+ {29B00F47-BE91-4A1F-B87D-B1302F038316}.Debug|ARM64.Build.0 = Debug|ARM64
+ {29B00F47-BE91-4A1F-B87D-B1302F038316}.Debug|x64.ActiveCfg = Debug|x64
+ {29B00F47-BE91-4A1F-B87D-B1302F038316}.Debug|x64.Build.0 = Debug|x64
+ {29B00F47-BE91-4A1F-B87D-B1302F038316}.Debug|x86.ActiveCfg = Debug|Win32
+ {29B00F47-BE91-4A1F-B87D-B1302F038316}.Debug|x86.Build.0 = Debug|Win32
+ {29B00F47-BE91-4A1F-B87D-B1302F038316}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
+ {29B00F47-BE91-4A1F-B87D-B1302F038316}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
+ {29B00F47-BE91-4A1F-B87D-B1302F038316}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
+ {29B00F47-BE91-4A1F-B87D-B1302F038316}.Release.DLL|x64.Build.0 = Release.DLL|x64
+ {29B00F47-BE91-4A1F-B87D-B1302F038316}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
+ {29B00F47-BE91-4A1F-B87D-B1302F038316}.Release.DLL|x86.Build.0 = Release.DLL|Win32
+ {29B00F47-BE91-4A1F-B87D-B1302F038316}.Release|ARM64.ActiveCfg = Release|ARM64
+ {29B00F47-BE91-4A1F-B87D-B1302F038316}.Release|ARM64.Build.0 = Release|ARM64
+ {29B00F47-BE91-4A1F-B87D-B1302F038316}.Release|x64.ActiveCfg = Release|x64
+ {29B00F47-BE91-4A1F-B87D-B1302F038316}.Release|x64.Build.0 = Release|x64
+ {29B00F47-BE91-4A1F-B87D-B1302F038316}.Release|x86.ActiveCfg = Release|Win32
+ {29B00F47-BE91-4A1F-B87D-B1302F038316}.Release|x86.Build.0 = Release|Win32
+ {124935CC-73BB-489E-92E8-4F922A85DB5D}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
+ {124935CC-73BB-489E-92E8-4F922A85DB5D}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
+ {124935CC-73BB-489E-92E8-4F922A85DB5D}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
+ {124935CC-73BB-489E-92E8-4F922A85DB5D}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
+ {124935CC-73BB-489E-92E8-4F922A85DB5D}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
+ {124935CC-73BB-489E-92E8-4F922A85DB5D}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
+ {124935CC-73BB-489E-92E8-4F922A85DB5D}.Debug|ARM64.ActiveCfg = Debug|ARM64
+ {124935CC-73BB-489E-92E8-4F922A85DB5D}.Debug|ARM64.Build.0 = Debug|ARM64
+ {124935CC-73BB-489E-92E8-4F922A85DB5D}.Debug|x64.ActiveCfg = Debug|x64
+ {124935CC-73BB-489E-92E8-4F922A85DB5D}.Debug|x64.Build.0 = Debug|x64
+ {124935CC-73BB-489E-92E8-4F922A85DB5D}.Debug|x86.ActiveCfg = Debug|Win32
+ {124935CC-73BB-489E-92E8-4F922A85DB5D}.Debug|x86.Build.0 = Debug|Win32
+ {124935CC-73BB-489E-92E8-4F922A85DB5D}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
+ {124935CC-73BB-489E-92E8-4F922A85DB5D}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
+ {124935CC-73BB-489E-92E8-4F922A85DB5D}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
+ {124935CC-73BB-489E-92E8-4F922A85DB5D}.Release.DLL|x64.Build.0 = Release.DLL|x64
+ {124935CC-73BB-489E-92E8-4F922A85DB5D}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
+ {124935CC-73BB-489E-92E8-4F922A85DB5D}.Release.DLL|x86.Build.0 = Release.DLL|Win32
+ {124935CC-73BB-489E-92E8-4F922A85DB5D}.Release|ARM64.ActiveCfg = Release|ARM64
+ {124935CC-73BB-489E-92E8-4F922A85DB5D}.Release|ARM64.Build.0 = Release|ARM64
+ {124935CC-73BB-489E-92E8-4F922A85DB5D}.Release|x64.ActiveCfg = Release|x64
+ {124935CC-73BB-489E-92E8-4F922A85DB5D}.Release|x64.Build.0 = Release|x64
+ {124935CC-73BB-489E-92E8-4F922A85DB5D}.Release|x86.ActiveCfg = Release|Win32
+ {124935CC-73BB-489E-92E8-4F922A85DB5D}.Release|x86.Build.0 = Release|Win32
+ {AC215730-2B5F-4498-B7F5-5DB80AEFCA5F}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
+ {AC215730-2B5F-4498-B7F5-5DB80AEFCA5F}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
+ {AC215730-2B5F-4498-B7F5-5DB80AEFCA5F}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
+ {AC215730-2B5F-4498-B7F5-5DB80AEFCA5F}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
+ {AC215730-2B5F-4498-B7F5-5DB80AEFCA5F}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
+ {AC215730-2B5F-4498-B7F5-5DB80AEFCA5F}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
+ {AC215730-2B5F-4498-B7F5-5DB80AEFCA5F}.Debug|ARM64.ActiveCfg = Debug|ARM64
+ {AC215730-2B5F-4498-B7F5-5DB80AEFCA5F}.Debug|ARM64.Build.0 = Debug|ARM64
+ {AC215730-2B5F-4498-B7F5-5DB80AEFCA5F}.Debug|x64.ActiveCfg = Debug|x64
+ {AC215730-2B5F-4498-B7F5-5DB80AEFCA5F}.Debug|x64.Build.0 = Debug|x64
+ {AC215730-2B5F-4498-B7F5-5DB80AEFCA5F}.Debug|x86.ActiveCfg = Debug|Win32
+ {AC215730-2B5F-4498-B7F5-5DB80AEFCA5F}.Debug|x86.Build.0 = Debug|Win32
+ {AC215730-2B5F-4498-B7F5-5DB80AEFCA5F}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
+ {AC215730-2B5F-4498-B7F5-5DB80AEFCA5F}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
+ {AC215730-2B5F-4498-B7F5-5DB80AEFCA5F}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
+ {AC215730-2B5F-4498-B7F5-5DB80AEFCA5F}.Release.DLL|x64.Build.0 = Release.DLL|x64
+ {AC215730-2B5F-4498-B7F5-5DB80AEFCA5F}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
+ {AC215730-2B5F-4498-B7F5-5DB80AEFCA5F}.Release.DLL|x86.Build.0 = Release.DLL|Win32
+ {AC215730-2B5F-4498-B7F5-5DB80AEFCA5F}.Release|ARM64.ActiveCfg = Release|ARM64
+ {AC215730-2B5F-4498-B7F5-5DB80AEFCA5F}.Release|ARM64.Build.0 = Release|ARM64
+ {AC215730-2B5F-4498-B7F5-5DB80AEFCA5F}.Release|x64.ActiveCfg = Release|x64
+ {AC215730-2B5F-4498-B7F5-5DB80AEFCA5F}.Release|x64.Build.0 = Release|x64
+ {AC215730-2B5F-4498-B7F5-5DB80AEFCA5F}.Release|x86.ActiveCfg = Release|Win32
+ {AC215730-2B5F-4498-B7F5-5DB80AEFCA5F}.Release|x86.Build.0 = Release|Win32
+ {0835E6BF-0170-4E99-A55C-E06E1EF4C3B2}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
+ {0835E6BF-0170-4E99-A55C-E06E1EF4C3B2}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
+ {0835E6BF-0170-4E99-A55C-E06E1EF4C3B2}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
+ {0835E6BF-0170-4E99-A55C-E06E1EF4C3B2}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
+ {0835E6BF-0170-4E99-A55C-E06E1EF4C3B2}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
+ {0835E6BF-0170-4E99-A55C-E06E1EF4C3B2}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
+ {0835E6BF-0170-4E99-A55C-E06E1EF4C3B2}.Debug|ARM64.ActiveCfg = Debug|ARM64
+ {0835E6BF-0170-4E99-A55C-E06E1EF4C3B2}.Debug|ARM64.Build.0 = Debug|ARM64
+ {0835E6BF-0170-4E99-A55C-E06E1EF4C3B2}.Debug|x64.ActiveCfg = Debug|x64
+ {0835E6BF-0170-4E99-A55C-E06E1EF4C3B2}.Debug|x64.Build.0 = Debug|x64
+ {0835E6BF-0170-4E99-A55C-E06E1EF4C3B2}.Debug|x86.ActiveCfg = Debug|Win32
+ {0835E6BF-0170-4E99-A55C-E06E1EF4C3B2}.Debug|x86.Build.0 = Debug|Win32
+ {0835E6BF-0170-4E99-A55C-E06E1EF4C3B2}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
+ {0835E6BF-0170-4E99-A55C-E06E1EF4C3B2}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
+ {0835E6BF-0170-4E99-A55C-E06E1EF4C3B2}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
+ {0835E6BF-0170-4E99-A55C-E06E1EF4C3B2}.Release.DLL|x64.Build.0 = Release.DLL|x64
+ {0835E6BF-0170-4E99-A55C-E06E1EF4C3B2}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
+ {0835E6BF-0170-4E99-A55C-E06E1EF4C3B2}.Release.DLL|x86.Build.0 = Release.DLL|Win32
+ {0835E6BF-0170-4E99-A55C-E06E1EF4C3B2}.Release|ARM64.ActiveCfg = Release|ARM64
+ {0835E6BF-0170-4E99-A55C-E06E1EF4C3B2}.Release|ARM64.Build.0 = Release|ARM64
+ {0835E6BF-0170-4E99-A55C-E06E1EF4C3B2}.Release|x64.ActiveCfg = Release|x64
+ {0835E6BF-0170-4E99-A55C-E06E1EF4C3B2}.Release|x64.Build.0 = Release|x64
+ {0835E6BF-0170-4E99-A55C-E06E1EF4C3B2}.Release|x86.ActiveCfg = Release|Win32
+ {0835E6BF-0170-4E99-A55C-E06E1EF4C3B2}.Release|x86.Build.0 = Release|Win32
+ {EA4AD5A7-DB95-43C0-9A67-2D94146BCF91}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
+ {EA4AD5A7-DB95-43C0-9A67-2D94146BCF91}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
+ {EA4AD5A7-DB95-43C0-9A67-2D94146BCF91}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
+ {EA4AD5A7-DB95-43C0-9A67-2D94146BCF91}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
+ {EA4AD5A7-DB95-43C0-9A67-2D94146BCF91}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
+ {EA4AD5A7-DB95-43C0-9A67-2D94146BCF91}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
+ {EA4AD5A7-DB95-43C0-9A67-2D94146BCF91}.Debug|ARM64.ActiveCfg = Debug|ARM64
+ {EA4AD5A7-DB95-43C0-9A67-2D94146BCF91}.Debug|ARM64.Build.0 = Debug|ARM64
+ {EA4AD5A7-DB95-43C0-9A67-2D94146BCF91}.Debug|x64.ActiveCfg = Debug|x64
+ {EA4AD5A7-DB95-43C0-9A67-2D94146BCF91}.Debug|x64.Build.0 = Debug|x64
+ {EA4AD5A7-DB95-43C0-9A67-2D94146BCF91}.Debug|x86.ActiveCfg = Debug|Win32
+ {EA4AD5A7-DB95-43C0-9A67-2D94146BCF91}.Debug|x86.Build.0 = Debug|Win32
+ {EA4AD5A7-DB95-43C0-9A67-2D94146BCF91}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
+ {EA4AD5A7-DB95-43C0-9A67-2D94146BCF91}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
+ {EA4AD5A7-DB95-43C0-9A67-2D94146BCF91}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
+ {EA4AD5A7-DB95-43C0-9A67-2D94146BCF91}.Release.DLL|x64.Build.0 = Release.DLL|x64
+ {EA4AD5A7-DB95-43C0-9A67-2D94146BCF91}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
+ {EA4AD5A7-DB95-43C0-9A67-2D94146BCF91}.Release.DLL|x86.Build.0 = Release.DLL|Win32
+ {EA4AD5A7-DB95-43C0-9A67-2D94146BCF91}.Release|ARM64.ActiveCfg = Release|ARM64
+ {EA4AD5A7-DB95-43C0-9A67-2D94146BCF91}.Release|ARM64.Build.0 = Release|ARM64
+ {EA4AD5A7-DB95-43C0-9A67-2D94146BCF91}.Release|x64.ActiveCfg = Release|x64
+ {EA4AD5A7-DB95-43C0-9A67-2D94146BCF91}.Release|x64.Build.0 = Release|x64
+ {EA4AD5A7-DB95-43C0-9A67-2D94146BCF91}.Release|x86.ActiveCfg = Release|Win32
+ {EA4AD5A7-DB95-43C0-9A67-2D94146BCF91}.Release|x86.Build.0 = Release|Win32
+ {1ACC8236-EF4E-44B0-BD0C-AB1D95D5890F}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
+ {1ACC8236-EF4E-44B0-BD0C-AB1D95D5890F}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
+ {1ACC8236-EF4E-44B0-BD0C-AB1D95D5890F}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
+ {1ACC8236-EF4E-44B0-BD0C-AB1D95D5890F}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
+ {1ACC8236-EF4E-44B0-BD0C-AB1D95D5890F}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
+ {1ACC8236-EF4E-44B0-BD0C-AB1D95D5890F}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
+ {1ACC8236-EF4E-44B0-BD0C-AB1D95D5890F}.Debug|ARM64.ActiveCfg = Debug|ARM64
+ {1ACC8236-EF4E-44B0-BD0C-AB1D95D5890F}.Debug|ARM64.Build.0 = Debug|ARM64
+ {1ACC8236-EF4E-44B0-BD0C-AB1D95D5890F}.Debug|x64.ActiveCfg = Debug|x64
+ {1ACC8236-EF4E-44B0-BD0C-AB1D95D5890F}.Debug|x64.Build.0 = Debug|x64
+ {1ACC8236-EF4E-44B0-BD0C-AB1D95D5890F}.Debug|x86.ActiveCfg = Debug|Win32
+ {1ACC8236-EF4E-44B0-BD0C-AB1D95D5890F}.Debug|x86.Build.0 = Debug|Win32
+ {1ACC8236-EF4E-44B0-BD0C-AB1D95D5890F}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
+ {1ACC8236-EF4E-44B0-BD0C-AB1D95D5890F}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
+ {1ACC8236-EF4E-44B0-BD0C-AB1D95D5890F}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
+ {1ACC8236-EF4E-44B0-BD0C-AB1D95D5890F}.Release.DLL|x64.Build.0 = Release.DLL|x64
+ {1ACC8236-EF4E-44B0-BD0C-AB1D95D5890F}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
+ {1ACC8236-EF4E-44B0-BD0C-AB1D95D5890F}.Release.DLL|x86.Build.0 = Release.DLL|Win32
+ {1ACC8236-EF4E-44B0-BD0C-AB1D95D5890F}.Release|ARM64.ActiveCfg = Release|ARM64
+ {1ACC8236-EF4E-44B0-BD0C-AB1D95D5890F}.Release|ARM64.Build.0 = Release|ARM64
+ {1ACC8236-EF4E-44B0-BD0C-AB1D95D5890F}.Release|x64.ActiveCfg = Release|x64
+ {1ACC8236-EF4E-44B0-BD0C-AB1D95D5890F}.Release|x64.Build.0 = Release|x64
+ {1ACC8236-EF4E-44B0-BD0C-AB1D95D5890F}.Release|x86.ActiveCfg = Release|Win32
+ {1ACC8236-EF4E-44B0-BD0C-AB1D95D5890F}.Release|x86.Build.0 = Release|Win32
+ {9DE2FC01-A839-4F89-8319-9071D4C54821}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
+ {9DE2FC01-A839-4F89-8319-9071D4C54821}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
+ {9DE2FC01-A839-4F89-8319-9071D4C54821}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
+ {9DE2FC01-A839-4F89-8319-9071D4C54821}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
+ {9DE2FC01-A839-4F89-8319-9071D4C54821}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
+ {9DE2FC01-A839-4F89-8319-9071D4C54821}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
+ {9DE2FC01-A839-4F89-8319-9071D4C54821}.Debug|ARM64.ActiveCfg = Debug|ARM64
+ {9DE2FC01-A839-4F89-8319-9071D4C54821}.Debug|ARM64.Build.0 = Debug|ARM64
+ {9DE2FC01-A839-4F89-8319-9071D4C54821}.Debug|x64.ActiveCfg = Debug|x64
+ {9DE2FC01-A839-4F89-8319-9071D4C54821}.Debug|x64.Build.0 = Debug|x64
+ {9DE2FC01-A839-4F89-8319-9071D4C54821}.Debug|x86.ActiveCfg = Debug|Win32
+ {9DE2FC01-A839-4F89-8319-9071D4C54821}.Debug|x86.Build.0 = Debug|Win32
+ {9DE2FC01-A839-4F89-8319-9071D4C54821}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
+ {9DE2FC01-A839-4F89-8319-9071D4C54821}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
+ {9DE2FC01-A839-4F89-8319-9071D4C54821}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
+ {9DE2FC01-A839-4F89-8319-9071D4C54821}.Release.DLL|x64.Build.0 = Release.DLL|x64
+ {9DE2FC01-A839-4F89-8319-9071D4C54821}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
+ {9DE2FC01-A839-4F89-8319-9071D4C54821}.Release.DLL|x86.Build.0 = Release.DLL|Win32
+ {9DE2FC01-A839-4F89-8319-9071D4C54821}.Release|ARM64.ActiveCfg = Release|ARM64
+ {9DE2FC01-A839-4F89-8319-9071D4C54821}.Release|ARM64.Build.0 = Release|ARM64
+ {9DE2FC01-A839-4F89-8319-9071D4C54821}.Release|x64.ActiveCfg = Release|x64
+ {9DE2FC01-A839-4F89-8319-9071D4C54821}.Release|x64.Build.0 = Release|x64
+ {9DE2FC01-A839-4F89-8319-9071D4C54821}.Release|x86.ActiveCfg = Release|Win32
+ {9DE2FC01-A839-4F89-8319-9071D4C54821}.Release|x86.Build.0 = Release|Win32
+ {2F578155-D51F-4C03-AB7F-5C5122CA46CC}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
+ {2F578155-D51F-4C03-AB7F-5C5122CA46CC}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
+ {2F578155-D51F-4C03-AB7F-5C5122CA46CC}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
+ {2F578155-D51F-4C03-AB7F-5C5122CA46CC}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
+ {2F578155-D51F-4C03-AB7F-5C5122CA46CC}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
+ {2F578155-D51F-4C03-AB7F-5C5122CA46CC}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
+ {2F578155-D51F-4C03-AB7F-5C5122CA46CC}.Debug|ARM64.ActiveCfg = Debug|ARM64
+ {2F578155-D51F-4C03-AB7F-5C5122CA46CC}.Debug|ARM64.Build.0 = Debug|ARM64
+ {2F578155-D51F-4C03-AB7F-5C5122CA46CC}.Debug|x64.ActiveCfg = Debug|x64
+ {2F578155-D51F-4C03-AB7F-5C5122CA46CC}.Debug|x64.Build.0 = Debug|x64
+ {2F578155-D51F-4C03-AB7F-5C5122CA46CC}.Debug|x86.ActiveCfg = Debug|Win32
+ {2F578155-D51F-4C03-AB7F-5C5122CA46CC}.Debug|x86.Build.0 = Debug|Win32
+ {2F578155-D51F-4C03-AB7F-5C5122CA46CC}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
+ {2F578155-D51F-4C03-AB7F-5C5122CA46CC}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
+ {2F578155-D51F-4C03-AB7F-5C5122CA46CC}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
+ {2F578155-D51F-4C03-AB7F-5C5122CA46CC}.Release.DLL|x64.Build.0 = Release.DLL|x64
+ {2F578155-D51F-4C03-AB7F-5C5122CA46CC}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
+ {2F578155-D51F-4C03-AB7F-5C5122CA46CC}.Release.DLL|x86.Build.0 = Release.DLL|Win32
+ {2F578155-D51F-4C03-AB7F-5C5122CA46CC}.Release|ARM64.ActiveCfg = Release|ARM64
+ {2F578155-D51F-4C03-AB7F-5C5122CA46CC}.Release|ARM64.Build.0 = Release|ARM64
+ {2F578155-D51F-4C03-AB7F-5C5122CA46CC}.Release|x64.ActiveCfg = Release|x64
+ {2F578155-D51F-4C03-AB7F-5C5122CA46CC}.Release|x64.Build.0 = Release|x64
+ {2F578155-D51F-4C03-AB7F-5C5122CA46CC}.Release|x86.ActiveCfg = Release|Win32
+ {2F578155-D51F-4C03-AB7F-5C5122CA46CC}.Release|x86.Build.0 = Release|Win32
+ {1C829D1A-892C-451C-AF0B-AC65C85F5CC6}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
+ {1C829D1A-892C-451C-AF0B-AC65C85F5CC6}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
+ {1C829D1A-892C-451C-AF0B-AC65C85F5CC6}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
+ {1C829D1A-892C-451C-AF0B-AC65C85F5CC6}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
+ {1C829D1A-892C-451C-AF0B-AC65C85F5CC6}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
+ {1C829D1A-892C-451C-AF0B-AC65C85F5CC6}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
+ {1C829D1A-892C-451C-AF0B-AC65C85F5CC6}.Debug|ARM64.ActiveCfg = Debug|ARM64
+ {1C829D1A-892C-451C-AF0B-AC65C85F5CC6}.Debug|ARM64.Build.0 = Debug|ARM64
+ {1C829D1A-892C-451C-AF0B-AC65C85F5CC6}.Debug|x64.ActiveCfg = Debug|x64
+ {1C829D1A-892C-451C-AF0B-AC65C85F5CC6}.Debug|x64.Build.0 = Debug|x64
+ {1C829D1A-892C-451C-AF0B-AC65C85F5CC6}.Debug|x86.ActiveCfg = Debug|Win32
+ {1C829D1A-892C-451C-AF0B-AC65C85F5CC6}.Debug|x86.Build.0 = Debug|Win32
+ {1C829D1A-892C-451C-AF0B-AC65C85F5CC6}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
+ {1C829D1A-892C-451C-AF0B-AC65C85F5CC6}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
+ {1C829D1A-892C-451C-AF0B-AC65C85F5CC6}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
+ {1C829D1A-892C-451C-AF0B-AC65C85F5CC6}.Release.DLL|x64.Build.0 = Release.DLL|x64
+ {1C829D1A-892C-451C-AF0B-AC65C85F5CC6}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
+ {1C829D1A-892C-451C-AF0B-AC65C85F5CC6}.Release.DLL|x86.Build.0 = Release.DLL|Win32
+ {1C829D1A-892C-451C-AF0B-AC65C85F5CC6}.Release|ARM64.ActiveCfg = Release|ARM64
+ {1C829D1A-892C-451C-AF0B-AC65C85F5CC6}.Release|ARM64.Build.0 = Release|ARM64
+ {1C829D1A-892C-451C-AF0B-AC65C85F5CC6}.Release|x64.ActiveCfg = Release|x64
+ {1C829D1A-892C-451C-AF0B-AC65C85F5CC6}.Release|x64.Build.0 = Release|x64
+ {1C829D1A-892C-451C-AF0B-AC65C85F5CC6}.Release|x86.ActiveCfg = Release|Win32
+ {1C829D1A-892C-451C-AF0B-AC65C85F5CC6}.Release|x86.Build.0 = Release|Win32
+ {84DE22BB-C25F-425C-A7FE-0120CF107B83}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
+ {84DE22BB-C25F-425C-A7FE-0120CF107B83}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
+ {84DE22BB-C25F-425C-A7FE-0120CF107B83}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
+ {84DE22BB-C25F-425C-A7FE-0120CF107B83}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
+ {84DE22BB-C25F-425C-A7FE-0120CF107B83}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
+ {84DE22BB-C25F-425C-A7FE-0120CF107B83}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
+ {84DE22BB-C25F-425C-A7FE-0120CF107B83}.Debug|ARM64.ActiveCfg = Debug|ARM64
+ {84DE22BB-C25F-425C-A7FE-0120CF107B83}.Debug|ARM64.Build.0 = Debug|ARM64
+ {84DE22BB-C25F-425C-A7FE-0120CF107B83}.Debug|x64.ActiveCfg = Debug|x64
+ {84DE22BB-C25F-425C-A7FE-0120CF107B83}.Debug|x64.Build.0 = Debug|x64
+ {84DE22BB-C25F-425C-A7FE-0120CF107B83}.Debug|x86.ActiveCfg = Debug|Win32
+ {84DE22BB-C25F-425C-A7FE-0120CF107B83}.Debug|x86.Build.0 = Debug|Win32
+ {84DE22BB-C25F-425C-A7FE-0120CF107B83}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
+ {84DE22BB-C25F-425C-A7FE-0120CF107B83}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
+ {84DE22BB-C25F-425C-A7FE-0120CF107B83}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
+ {84DE22BB-C25F-425C-A7FE-0120CF107B83}.Release.DLL|x64.Build.0 = Release.DLL|x64
+ {84DE22BB-C25F-425C-A7FE-0120CF107B83}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
+ {84DE22BB-C25F-425C-A7FE-0120CF107B83}.Release.DLL|x86.Build.0 = Release.DLL|Win32
+ {84DE22BB-C25F-425C-A7FE-0120CF107B83}.Release|ARM64.ActiveCfg = Release|ARM64
+ {84DE22BB-C25F-425C-A7FE-0120CF107B83}.Release|ARM64.Build.0 = Release|ARM64
+ {84DE22BB-C25F-425C-A7FE-0120CF107B83}.Release|x64.ActiveCfg = Release|x64
+ {84DE22BB-C25F-425C-A7FE-0120CF107B83}.Release|x64.Build.0 = Release|x64
+ {84DE22BB-C25F-425C-A7FE-0120CF107B83}.Release|x86.ActiveCfg = Release|Win32
+ {84DE22BB-C25F-425C-A7FE-0120CF107B83}.Release|x86.Build.0 = Release|Win32
+ {98152EDD-7E28-4FA3-89D8-B636ED5D5F65}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
+ {98152EDD-7E28-4FA3-89D8-B636ED5D5F65}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
+ {98152EDD-7E28-4FA3-89D8-B636ED5D5F65}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
+ {98152EDD-7E28-4FA3-89D8-B636ED5D5F65}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
+ {98152EDD-7E28-4FA3-89D8-B636ED5D5F65}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
+ {98152EDD-7E28-4FA3-89D8-B636ED5D5F65}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
+ {98152EDD-7E28-4FA3-89D8-B636ED5D5F65}.Debug|ARM64.ActiveCfg = Debug|ARM64
+ {98152EDD-7E28-4FA3-89D8-B636ED5D5F65}.Debug|ARM64.Build.0 = Debug|ARM64
+ {98152EDD-7E28-4FA3-89D8-B636ED5D5F65}.Debug|x64.ActiveCfg = Debug|x64
+ {98152EDD-7E28-4FA3-89D8-B636ED5D5F65}.Debug|x64.Build.0 = Debug|x64
+ {98152EDD-7E28-4FA3-89D8-B636ED5D5F65}.Debug|x86.ActiveCfg = Debug|Win32
+ {98152EDD-7E28-4FA3-89D8-B636ED5D5F65}.Debug|x86.Build.0 = Debug|Win32
+ {98152EDD-7E28-4FA3-89D8-B636ED5D5F65}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
+ {98152EDD-7E28-4FA3-89D8-B636ED5D5F65}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
+ {98152EDD-7E28-4FA3-89D8-B636ED5D5F65}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
+ {98152EDD-7E28-4FA3-89D8-B636ED5D5F65}.Release.DLL|x64.Build.0 = Release.DLL|x64
+ {98152EDD-7E28-4FA3-89D8-B636ED5D5F65}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
+ {98152EDD-7E28-4FA3-89D8-B636ED5D5F65}.Release.DLL|x86.Build.0 = Release.DLL|Win32
+ {98152EDD-7E28-4FA3-89D8-B636ED5D5F65}.Release|ARM64.ActiveCfg = Release|ARM64
+ {98152EDD-7E28-4FA3-89D8-B636ED5D5F65}.Release|ARM64.Build.0 = Release|ARM64
+ {98152EDD-7E28-4FA3-89D8-B636ED5D5F65}.Release|x64.ActiveCfg = Release|x64
+ {98152EDD-7E28-4FA3-89D8-B636ED5D5F65}.Release|x64.Build.0 = Release|x64
+ {98152EDD-7E28-4FA3-89D8-B636ED5D5F65}.Release|x86.ActiveCfg = Release|Win32
+ {98152EDD-7E28-4FA3-89D8-B636ED5D5F65}.Release|x86.Build.0 = Release|Win32
+ {B7FDD40F-DDA4-468E-9C40-EEB175964A26}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
+ {B7FDD40F-DDA4-468E-9C40-EEB175964A26}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
+ {B7FDD40F-DDA4-468E-9C40-EEB175964A26}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
+ {B7FDD40F-DDA4-468E-9C40-EEB175964A26}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
+ {B7FDD40F-DDA4-468E-9C40-EEB175964A26}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
+ {B7FDD40F-DDA4-468E-9C40-EEB175964A26}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
+ {B7FDD40F-DDA4-468E-9C40-EEB175964A26}.Debug|ARM64.ActiveCfg = Debug|ARM64
+ {B7FDD40F-DDA4-468E-9C40-EEB175964A26}.Debug|ARM64.Build.0 = Debug|ARM64
+ {B7FDD40F-DDA4-468E-9C40-EEB175964A26}.Debug|x64.ActiveCfg = Debug|x64
+ {B7FDD40F-DDA4-468E-9C40-EEB175964A26}.Debug|x64.Build.0 = Debug|x64
+ {B7FDD40F-DDA4-468E-9C40-EEB175964A26}.Debug|x86.ActiveCfg = Debug|Win32
+ {B7FDD40F-DDA4-468E-9C40-EEB175964A26}.Debug|x86.Build.0 = Debug|Win32
+ {B7FDD40F-DDA4-468E-9C40-EEB175964A26}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
+ {B7FDD40F-DDA4-468E-9C40-EEB175964A26}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
+ {B7FDD40F-DDA4-468E-9C40-EEB175964A26}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
+ {B7FDD40F-DDA4-468E-9C40-EEB175964A26}.Release.DLL|x64.Build.0 = Release.DLL|x64
+ {B7FDD40F-DDA4-468E-9C40-EEB175964A26}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
+ {B7FDD40F-DDA4-468E-9C40-EEB175964A26}.Release.DLL|x86.Build.0 = Release.DLL|Win32
+ {B7FDD40F-DDA4-468E-9C40-EEB175964A26}.Release|ARM64.ActiveCfg = Release|ARM64
+ {B7FDD40F-DDA4-468E-9C40-EEB175964A26}.Release|ARM64.Build.0 = Release|ARM64
+ {B7FDD40F-DDA4-468E-9C40-EEB175964A26}.Release|x64.ActiveCfg = Release|x64
+ {B7FDD40F-DDA4-468E-9C40-EEB175964A26}.Release|x64.Build.0 = Release|x64
+ {B7FDD40F-DDA4-468E-9C40-EEB175964A26}.Release|x86.ActiveCfg = Release|Win32
+ {B7FDD40F-DDA4-468E-9C40-EEB175964A26}.Release|x86.Build.0 = Release|Win32
+ {028F0967-B253-45DA-B1C4-FACCE45D0D8D}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
+ {028F0967-B253-45DA-B1C4-FACCE45D0D8D}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
+ {028F0967-B253-45DA-B1C4-FACCE45D0D8D}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
+ {028F0967-B253-45DA-B1C4-FACCE45D0D8D}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
+ {028F0967-B253-45DA-B1C4-FACCE45D0D8D}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
+ {028F0967-B253-45DA-B1C4-FACCE45D0D8D}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
+ {028F0967-B253-45DA-B1C4-FACCE45D0D8D}.Debug|ARM64.ActiveCfg = Debug|ARM64
+ {028F0967-B253-45DA-B1C4-FACCE45D0D8D}.Debug|ARM64.Build.0 = Debug|ARM64
+ {028F0967-B253-45DA-B1C4-FACCE45D0D8D}.Debug|x64.ActiveCfg = Debug|x64
+ {028F0967-B253-45DA-B1C4-FACCE45D0D8D}.Debug|x64.Build.0 = Debug|x64
+ {028F0967-B253-45DA-B1C4-FACCE45D0D8D}.Debug|x86.ActiveCfg = Debug|Win32
+ {028F0967-B253-45DA-B1C4-FACCE45D0D8D}.Debug|x86.Build.0 = Debug|Win32
+ {028F0967-B253-45DA-B1C4-FACCE45D0D8D}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
+ {028F0967-B253-45DA-B1C4-FACCE45D0D8D}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
+ {028F0967-B253-45DA-B1C4-FACCE45D0D8D}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
+ {028F0967-B253-45DA-B1C4-FACCE45D0D8D}.Release.DLL|x64.Build.0 = Release.DLL|x64
+ {028F0967-B253-45DA-B1C4-FACCE45D0D8D}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
+ {028F0967-B253-45DA-B1C4-FACCE45D0D8D}.Release.DLL|x86.Build.0 = Release.DLL|Win32
+ {028F0967-B253-45DA-B1C4-FACCE45D0D8D}.Release|ARM64.ActiveCfg = Release|ARM64
+ {028F0967-B253-45DA-B1C4-FACCE45D0D8D}.Release|ARM64.Build.0 = Release|ARM64
+ {028F0967-B253-45DA-B1C4-FACCE45D0D8D}.Release|x64.ActiveCfg = Release|x64
+ {028F0967-B253-45DA-B1C4-FACCE45D0D8D}.Release|x64.Build.0 = Release|x64
+ {028F0967-B253-45DA-B1C4-FACCE45D0D8D}.Release|x86.ActiveCfg = Release|Win32
+ {028F0967-B253-45DA-B1C4-FACCE45D0D8D}.Release|x86.Build.0 = Release|Win32
+ {666346D7-C84B-498D-AE17-53B20C62DB1A}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
+ {666346D7-C84B-498D-AE17-53B20C62DB1A}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
+ {666346D7-C84B-498D-AE17-53B20C62DB1A}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
+ {666346D7-C84B-498D-AE17-53B20C62DB1A}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
+ {666346D7-C84B-498D-AE17-53B20C62DB1A}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
+ {666346D7-C84B-498D-AE17-53B20C62DB1A}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
+ {666346D7-C84B-498D-AE17-53B20C62DB1A}.Debug|ARM64.ActiveCfg = Debug|ARM64
+ {666346D7-C84B-498D-AE17-53B20C62DB1A}.Debug|ARM64.Build.0 = Debug|ARM64
+ {666346D7-C84B-498D-AE17-53B20C62DB1A}.Debug|x64.ActiveCfg = Debug|x64
+ {666346D7-C84B-498D-AE17-53B20C62DB1A}.Debug|x64.Build.0 = Debug|x64
+ {666346D7-C84B-498D-AE17-53B20C62DB1A}.Debug|x86.ActiveCfg = Debug|Win32
+ {666346D7-C84B-498D-AE17-53B20C62DB1A}.Debug|x86.Build.0 = Debug|Win32
+ {666346D7-C84B-498D-AE17-53B20C62DB1A}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
+ {666346D7-C84B-498D-AE17-53B20C62DB1A}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
+ {666346D7-C84B-498D-AE17-53B20C62DB1A}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
+ {666346D7-C84B-498D-AE17-53B20C62DB1A}.Release.DLL|x64.Build.0 = Release.DLL|x64
+ {666346D7-C84B-498D-AE17-53B20C62DB1A}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
+ {666346D7-C84B-498D-AE17-53B20C62DB1A}.Release.DLL|x86.Build.0 = Release.DLL|Win32
+ {666346D7-C84B-498D-AE17-53B20C62DB1A}.Release|ARM64.ActiveCfg = Release|ARM64
+ {666346D7-C84B-498D-AE17-53B20C62DB1A}.Release|ARM64.Build.0 = Release|ARM64
+ {666346D7-C84B-498D-AE17-53B20C62DB1A}.Release|x64.ActiveCfg = Release|x64
+ {666346D7-C84B-498D-AE17-53B20C62DB1A}.Release|x64.Build.0 = Release|x64
+ {666346D7-C84B-498D-AE17-53B20C62DB1A}.Release|x86.ActiveCfg = Release|Win32
+ {666346D7-C84B-498D-AE17-53B20C62DB1A}.Release|x86.Build.0 = Release|Win32
+ {AD66AA6A-1E36-4FF0-8670-4F9834BCDB91}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
+ {AD66AA6A-1E36-4FF0-8670-4F9834BCDB91}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
+ {AD66AA6A-1E36-4FF0-8670-4F9834BCDB91}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
+ {AD66AA6A-1E36-4FF0-8670-4F9834BCDB91}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
+ {AD66AA6A-1E36-4FF0-8670-4F9834BCDB91}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
+ {AD66AA6A-1E36-4FF0-8670-4F9834BCDB91}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
+ {AD66AA6A-1E36-4FF0-8670-4F9834BCDB91}.Debug|ARM64.ActiveCfg = Debug|ARM64
+ {AD66AA6A-1E36-4FF0-8670-4F9834BCDB91}.Debug|ARM64.Build.0 = Debug|ARM64
+ {AD66AA6A-1E36-4FF0-8670-4F9834BCDB91}.Debug|x64.ActiveCfg = Debug|x64
+ {AD66AA6A-1E36-4FF0-8670-4F9834BCDB91}.Debug|x64.Build.0 = Debug|x64
+ {AD66AA6A-1E36-4FF0-8670-4F9834BCDB91}.Debug|x86.ActiveCfg = Debug|Win32
+ {AD66AA6A-1E36-4FF0-8670-4F9834BCDB91}.Debug|x86.Build.0 = Debug|Win32
+ {AD66AA6A-1E36-4FF0-8670-4F9834BCDB91}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
+ {AD66AA6A-1E36-4FF0-8670-4F9834BCDB91}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
+ {AD66AA6A-1E36-4FF0-8670-4F9834BCDB91}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
+ {AD66AA6A-1E36-4FF0-8670-4F9834BCDB91}.Release.DLL|x64.Build.0 = Release.DLL|x64
+ {AD66AA6A-1E36-4FF0-8670-4F9834BCDB91}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
+ {AD66AA6A-1E36-4FF0-8670-4F9834BCDB91}.Release.DLL|x86.Build.0 = Release.DLL|Win32
+ {AD66AA6A-1E36-4FF0-8670-4F9834BCDB91}.Release|ARM64.ActiveCfg = Release|ARM64
+ {AD66AA6A-1E36-4FF0-8670-4F9834BCDB91}.Release|ARM64.Build.0 = Release|ARM64
+ {AD66AA6A-1E36-4FF0-8670-4F9834BCDB91}.Release|x64.ActiveCfg = Release|x64
+ {AD66AA6A-1E36-4FF0-8670-4F9834BCDB91}.Release|x64.Build.0 = Release|x64
+ {AD66AA6A-1E36-4FF0-8670-4F9834BCDB91}.Release|x86.ActiveCfg = Release|Win32
+ {AD66AA6A-1E36-4FF0-8670-4F9834BCDB91}.Release|x86.Build.0 = Release|Win32
+ {6C897101-BE52-4387-8AA2-062123A76BA1}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
+ {6C897101-BE52-4387-8AA2-062123A76BA1}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
+ {6C897101-BE52-4387-8AA2-062123A76BA1}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
+ {6C897101-BE52-4387-8AA2-062123A76BA1}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
+ {6C897101-BE52-4387-8AA2-062123A76BA1}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
+ {6C897101-BE52-4387-8AA2-062123A76BA1}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
+ {6C897101-BE52-4387-8AA2-062123A76BA1}.Debug|ARM64.ActiveCfg = Debug|ARM64
+ {6C897101-BE52-4387-8AA2-062123A76BA1}.Debug|ARM64.Build.0 = Debug|ARM64
+ {6C897101-BE52-4387-8AA2-062123A76BA1}.Debug|x64.ActiveCfg = Debug|x64
+ {6C897101-BE52-4387-8AA2-062123A76BA1}.Debug|x64.Build.0 = Debug|x64
+ {6C897101-BE52-4387-8AA2-062123A76BA1}.Debug|x86.ActiveCfg = Debug|Win32
+ {6C897101-BE52-4387-8AA2-062123A76BA1}.Debug|x86.Build.0 = Debug|Win32
+ {6C897101-BE52-4387-8AA2-062123A76BA1}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
+ {6C897101-BE52-4387-8AA2-062123A76BA1}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
+ {6C897101-BE52-4387-8AA2-062123A76BA1}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
+ {6C897101-BE52-4387-8AA2-062123A76BA1}.Release.DLL|x64.Build.0 = Release.DLL|x64
+ {6C897101-BE52-4387-8AA2-062123A76BA1}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
+ {6C897101-BE52-4387-8AA2-062123A76BA1}.Release.DLL|x86.Build.0 = Release.DLL|Win32
+ {6C897101-BE52-4387-8AA2-062123A76BA1}.Release|ARM64.ActiveCfg = Release|ARM64
+ {6C897101-BE52-4387-8AA2-062123A76BA1}.Release|ARM64.Build.0 = Release|ARM64
+ {6C897101-BE52-4387-8AA2-062123A76BA1}.Release|x64.ActiveCfg = Release|x64
+ {6C897101-BE52-4387-8AA2-062123A76BA1}.Release|x64.Build.0 = Release|x64
+ {6C897101-BE52-4387-8AA2-062123A76BA1}.Release|x86.ActiveCfg = Release|Win32
+ {6C897101-BE52-4387-8AA2-062123A76BA1}.Release|x86.Build.0 = Release|Win32
+ {4E9D2828-EE83-40C8-97E0-137EEDFBAAAD}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
+ {4E9D2828-EE83-40C8-97E0-137EEDFBAAAD}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
+ {4E9D2828-EE83-40C8-97E0-137EEDFBAAAD}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
+ {4E9D2828-EE83-40C8-97E0-137EEDFBAAAD}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
+ {4E9D2828-EE83-40C8-97E0-137EEDFBAAAD}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
+ {4E9D2828-EE83-40C8-97E0-137EEDFBAAAD}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
+ {4E9D2828-EE83-40C8-97E0-137EEDFBAAAD}.Debug|ARM64.ActiveCfg = Debug|ARM64
+ {4E9D2828-EE83-40C8-97E0-137EEDFBAAAD}.Debug|ARM64.Build.0 = Debug|ARM64
+ {4E9D2828-EE83-40C8-97E0-137EEDFBAAAD}.Debug|x64.ActiveCfg = Debug|x64
+ {4E9D2828-EE83-40C8-97E0-137EEDFBAAAD}.Debug|x64.Build.0 = Debug|x64
+ {4E9D2828-EE83-40C8-97E0-137EEDFBAAAD}.Debug|x86.ActiveCfg = Debug|Win32
+ {4E9D2828-EE83-40C8-97E0-137EEDFBAAAD}.Debug|x86.Build.0 = Debug|Win32
+ {4E9D2828-EE83-40C8-97E0-137EEDFBAAAD}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
+ {4E9D2828-EE83-40C8-97E0-137EEDFBAAAD}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
+ {4E9D2828-EE83-40C8-97E0-137EEDFBAAAD}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
+ {4E9D2828-EE83-40C8-97E0-137EEDFBAAAD}.Release.DLL|x64.Build.0 = Release.DLL|x64
+ {4E9D2828-EE83-40C8-97E0-137EEDFBAAAD}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
+ {4E9D2828-EE83-40C8-97E0-137EEDFBAAAD}.Release.DLL|x86.Build.0 = Release.DLL|Win32
+ {4E9D2828-EE83-40C8-97E0-137EEDFBAAAD}.Release|ARM64.ActiveCfg = Release|ARM64
+ {4E9D2828-EE83-40C8-97E0-137EEDFBAAAD}.Release|ARM64.Build.0 = Release|ARM64
+ {4E9D2828-EE83-40C8-97E0-137EEDFBAAAD}.Release|x64.ActiveCfg = Release|x64
+ {4E9D2828-EE83-40C8-97E0-137EEDFBAAAD}.Release|x64.Build.0 = Release|x64
+ {4E9D2828-EE83-40C8-97E0-137EEDFBAAAD}.Release|x86.ActiveCfg = Release|Win32
+ {4E9D2828-EE83-40C8-97E0-137EEDFBAAAD}.Release|x86.Build.0 = Release|Win32
+ {2B3CED91-973F-4936-9DD4-CC8B1C8ACC68}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
+ {2B3CED91-973F-4936-9DD4-CC8B1C8ACC68}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
+ {2B3CED91-973F-4936-9DD4-CC8B1C8ACC68}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
+ {2B3CED91-973F-4936-9DD4-CC8B1C8ACC68}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
+ {2B3CED91-973F-4936-9DD4-CC8B1C8ACC68}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
+ {2B3CED91-973F-4936-9DD4-CC8B1C8ACC68}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
+ {2B3CED91-973F-4936-9DD4-CC8B1C8ACC68}.Debug|ARM64.ActiveCfg = Debug|ARM64
+ {2B3CED91-973F-4936-9DD4-CC8B1C8ACC68}.Debug|ARM64.Build.0 = Debug|ARM64
+ {2B3CED91-973F-4936-9DD4-CC8B1C8ACC68}.Debug|x64.ActiveCfg = Debug|x64
+ {2B3CED91-973F-4936-9DD4-CC8B1C8ACC68}.Debug|x64.Build.0 = Debug|x64
+ {2B3CED91-973F-4936-9DD4-CC8B1C8ACC68}.Debug|x86.ActiveCfg = Debug|Win32
+ {2B3CED91-973F-4936-9DD4-CC8B1C8ACC68}.Debug|x86.Build.0 = Debug|Win32
+ {2B3CED91-973F-4936-9DD4-CC8B1C8ACC68}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
+ {2B3CED91-973F-4936-9DD4-CC8B1C8ACC68}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
+ {2B3CED91-973F-4936-9DD4-CC8B1C8ACC68}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
+ {2B3CED91-973F-4936-9DD4-CC8B1C8ACC68}.Release.DLL|x64.Build.0 = Release.DLL|x64
+ {2B3CED91-973F-4936-9DD4-CC8B1C8ACC68}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
+ {2B3CED91-973F-4936-9DD4-CC8B1C8ACC68}.Release.DLL|x86.Build.0 = Release.DLL|Win32
+ {2B3CED91-973F-4936-9DD4-CC8B1C8ACC68}.Release|ARM64.ActiveCfg = Release|ARM64
+ {2B3CED91-973F-4936-9DD4-CC8B1C8ACC68}.Release|ARM64.Build.0 = Release|ARM64
+ {2B3CED91-973F-4936-9DD4-CC8B1C8ACC68}.Release|x64.ActiveCfg = Release|x64
+ {2B3CED91-973F-4936-9DD4-CC8B1C8ACC68}.Release|x64.Build.0 = Release|x64
+ {2B3CED91-973F-4936-9DD4-CC8B1C8ACC68}.Release|x86.ActiveCfg = Release|Win32
+ {2B3CED91-973F-4936-9DD4-CC8B1C8ACC68}.Release|x86.Build.0 = Release|Win32
+ {30011884-25EE-42C9-BB15-888CAFB1AA6E}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
+ {30011884-25EE-42C9-BB15-888CAFB1AA6E}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
+ {30011884-25EE-42C9-BB15-888CAFB1AA6E}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
+ {30011884-25EE-42C9-BB15-888CAFB1AA6E}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
+ {30011884-25EE-42C9-BB15-888CAFB1AA6E}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
+ {30011884-25EE-42C9-BB15-888CAFB1AA6E}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
+ {30011884-25EE-42C9-BB15-888CAFB1AA6E}.Debug|ARM64.ActiveCfg = Debug|ARM64
+ {30011884-25EE-42C9-BB15-888CAFB1AA6E}.Debug|ARM64.Build.0 = Debug|ARM64
+ {30011884-25EE-42C9-BB15-888CAFB1AA6E}.Debug|x64.ActiveCfg = Debug|x64
+ {30011884-25EE-42C9-BB15-888CAFB1AA6E}.Debug|x64.Build.0 = Debug|x64
+ {30011884-25EE-42C9-BB15-888CAFB1AA6E}.Debug|x86.ActiveCfg = Debug|Win32
+ {30011884-25EE-42C9-BB15-888CAFB1AA6E}.Debug|x86.Build.0 = Debug|Win32
+ {30011884-25EE-42C9-BB15-888CAFB1AA6E}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
+ {30011884-25EE-42C9-BB15-888CAFB1AA6E}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
+ {30011884-25EE-42C9-BB15-888CAFB1AA6E}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
+ {30011884-25EE-42C9-BB15-888CAFB1AA6E}.Release.DLL|x64.Build.0 = Release.DLL|x64
+ {30011884-25EE-42C9-BB15-888CAFB1AA6E}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
+ {30011884-25EE-42C9-BB15-888CAFB1AA6E}.Release.DLL|x86.Build.0 = Release.DLL|Win32
+ {30011884-25EE-42C9-BB15-888CAFB1AA6E}.Release|ARM64.ActiveCfg = Release|ARM64
+ {30011884-25EE-42C9-BB15-888CAFB1AA6E}.Release|ARM64.Build.0 = Release|ARM64
+ {30011884-25EE-42C9-BB15-888CAFB1AA6E}.Release|x64.ActiveCfg = Release|x64
+ {30011884-25EE-42C9-BB15-888CAFB1AA6E}.Release|x64.Build.0 = Release|x64
+ {30011884-25EE-42C9-BB15-888CAFB1AA6E}.Release|x86.ActiveCfg = Release|Win32
+ {30011884-25EE-42C9-BB15-888CAFB1AA6E}.Release|x86.Build.0 = Release|Win32
+ {32FE2658-1D70-442E-8672-0AC5C6F0BD7B}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
+ {32FE2658-1D70-442E-8672-0AC5C6F0BD7B}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
+ {32FE2658-1D70-442E-8672-0AC5C6F0BD7B}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
+ {32FE2658-1D70-442E-8672-0AC5C6F0BD7B}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
+ {32FE2658-1D70-442E-8672-0AC5C6F0BD7B}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
+ {32FE2658-1D70-442E-8672-0AC5C6F0BD7B}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
+ {32FE2658-1D70-442E-8672-0AC5C6F0BD7B}.Debug|ARM64.ActiveCfg = Debug|ARM64
+ {32FE2658-1D70-442E-8672-0AC5C6F0BD7B}.Debug|ARM64.Build.0 = Debug|ARM64
+ {32FE2658-1D70-442E-8672-0AC5C6F0BD7B}.Debug|x64.ActiveCfg = Debug|x64
+ {32FE2658-1D70-442E-8672-0AC5C6F0BD7B}.Debug|x64.Build.0 = Debug|x64
+ {32FE2658-1D70-442E-8672-0AC5C6F0BD7B}.Debug|x86.ActiveCfg = Debug|Win32
+ {32FE2658-1D70-442E-8672-0AC5C6F0BD7B}.Debug|x86.Build.0 = Debug|Win32
+ {32FE2658-1D70-442E-8672-0AC5C6F0BD7B}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
+ {32FE2658-1D70-442E-8672-0AC5C6F0BD7B}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
+ {32FE2658-1D70-442E-8672-0AC5C6F0BD7B}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
+ {32FE2658-1D70-442E-8672-0AC5C6F0BD7B}.Release.DLL|x64.Build.0 = Release.DLL|x64
+ {32FE2658-1D70-442E-8672-0AC5C6F0BD7B}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
+ {32FE2658-1D70-442E-8672-0AC5C6F0BD7B}.Release.DLL|x86.Build.0 = Release.DLL|Win32
+ {32FE2658-1D70-442E-8672-0AC5C6F0BD7B}.Release|ARM64.ActiveCfg = Release|ARM64
+ {32FE2658-1D70-442E-8672-0AC5C6F0BD7B}.Release|ARM64.Build.0 = Release|ARM64
+ {32FE2658-1D70-442E-8672-0AC5C6F0BD7B}.Release|x64.ActiveCfg = Release|x64
+ {32FE2658-1D70-442E-8672-0AC5C6F0BD7B}.Release|x64.Build.0 = Release|x64
+ {32FE2658-1D70-442E-8672-0AC5C6F0BD7B}.Release|x86.ActiveCfg = Release|Win32
+ {32FE2658-1D70-442E-8672-0AC5C6F0BD7B}.Release|x86.Build.0 = Release|Win32
+ {842B6472-4AA6-4C2B-A5E5-A62F80DE2C4F}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
+ {842B6472-4AA6-4C2B-A5E5-A62F80DE2C4F}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
+ {842B6472-4AA6-4C2B-A5E5-A62F80DE2C4F}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
+ {842B6472-4AA6-4C2B-A5E5-A62F80DE2C4F}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
+ {842B6472-4AA6-4C2B-A5E5-A62F80DE2C4F}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
+ {842B6472-4AA6-4C2B-A5E5-A62F80DE2C4F}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
+ {842B6472-4AA6-4C2B-A5E5-A62F80DE2C4F}.Debug|ARM64.ActiveCfg = Debug|ARM64
+ {842B6472-4AA6-4C2B-A5E5-A62F80DE2C4F}.Debug|ARM64.Build.0 = Debug|ARM64
+ {842B6472-4AA6-4C2B-A5E5-A62F80DE2C4F}.Debug|x64.ActiveCfg = Debug|x64
+ {842B6472-4AA6-4C2B-A5E5-A62F80DE2C4F}.Debug|x64.Build.0 = Debug|x64
+ {842B6472-4AA6-4C2B-A5E5-A62F80DE2C4F}.Debug|x86.ActiveCfg = Debug|Win32
+ {842B6472-4AA6-4C2B-A5E5-A62F80DE2C4F}.Debug|x86.Build.0 = Debug|Win32
+ {842B6472-4AA6-4C2B-A5E5-A62F80DE2C4F}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
+ {842B6472-4AA6-4C2B-A5E5-A62F80DE2C4F}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
+ {842B6472-4AA6-4C2B-A5E5-A62F80DE2C4F}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
+ {842B6472-4AA6-4C2B-A5E5-A62F80DE2C4F}.Release.DLL|x64.Build.0 = Release.DLL|x64
+ {842B6472-4AA6-4C2B-A5E5-A62F80DE2C4F}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
+ {842B6472-4AA6-4C2B-A5E5-A62F80DE2C4F}.Release.DLL|x86.Build.0 = Release.DLL|Win32
+ {842B6472-4AA6-4C2B-A5E5-A62F80DE2C4F}.Release|ARM64.ActiveCfg = Release|ARM64
+ {842B6472-4AA6-4C2B-A5E5-A62F80DE2C4F}.Release|ARM64.Build.0 = Release|ARM64
+ {842B6472-4AA6-4C2B-A5E5-A62F80DE2C4F}.Release|x64.ActiveCfg = Release|x64
+ {842B6472-4AA6-4C2B-A5E5-A62F80DE2C4F}.Release|x64.Build.0 = Release|x64
+ {842B6472-4AA6-4C2B-A5E5-A62F80DE2C4F}.Release|x86.ActiveCfg = Release|Win32
+ {842B6472-4AA6-4C2B-A5E5-A62F80DE2C4F}.Release|x86.Build.0 = Release|Win32
+ {FC4DEBD2-4B17-4534-8EEA-BB24A2DBEB5F}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
+ {FC4DEBD2-4B17-4534-8EEA-BB24A2DBEB5F}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
+ {FC4DEBD2-4B17-4534-8EEA-BB24A2DBEB5F}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
+ {FC4DEBD2-4B17-4534-8EEA-BB24A2DBEB5F}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
+ {FC4DEBD2-4B17-4534-8EEA-BB24A2DBEB5F}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
+ {FC4DEBD2-4B17-4534-8EEA-BB24A2DBEB5F}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
+ {FC4DEBD2-4B17-4534-8EEA-BB24A2DBEB5F}.Debug|ARM64.ActiveCfg = Debug|ARM64
+ {FC4DEBD2-4B17-4534-8EEA-BB24A2DBEB5F}.Debug|ARM64.Build.0 = Debug|ARM64
+ {FC4DEBD2-4B17-4534-8EEA-BB24A2DBEB5F}.Debug|x64.ActiveCfg = Debug|x64
+ {FC4DEBD2-4B17-4534-8EEA-BB24A2DBEB5F}.Debug|x64.Build.0 = Debug|x64
+ {FC4DEBD2-4B17-4534-8EEA-BB24A2DBEB5F}.Debug|x86.ActiveCfg = Debug|Win32
+ {FC4DEBD2-4B17-4534-8EEA-BB24A2DBEB5F}.Debug|x86.Build.0 = Debug|Win32
+ {FC4DEBD2-4B17-4534-8EEA-BB24A2DBEB5F}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
+ {FC4DEBD2-4B17-4534-8EEA-BB24A2DBEB5F}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
+ {FC4DEBD2-4B17-4534-8EEA-BB24A2DBEB5F}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
+ {FC4DEBD2-4B17-4534-8EEA-BB24A2DBEB5F}.Release.DLL|x64.Build.0 = Release.DLL|x64
+ {FC4DEBD2-4B17-4534-8EEA-BB24A2DBEB5F}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
+ {FC4DEBD2-4B17-4534-8EEA-BB24A2DBEB5F}.Release.DLL|x86.Build.0 = Release.DLL|Win32
+ {FC4DEBD2-4B17-4534-8EEA-BB24A2DBEB5F}.Release|ARM64.ActiveCfg = Release|ARM64
+ {FC4DEBD2-4B17-4534-8EEA-BB24A2DBEB5F}.Release|ARM64.Build.0 = Release|ARM64
+ {FC4DEBD2-4B17-4534-8EEA-BB24A2DBEB5F}.Release|x64.ActiveCfg = Release|x64
+ {FC4DEBD2-4B17-4534-8EEA-BB24A2DBEB5F}.Release|x64.Build.0 = Release|x64
+ {FC4DEBD2-4B17-4534-8EEA-BB24A2DBEB5F}.Release|x86.ActiveCfg = Release|Win32
+ {FC4DEBD2-4B17-4534-8EEA-BB24A2DBEB5F}.Release|x86.Build.0 = Release|Win32
+ {0653AFAF-5578-4C02-AF29-0C873E7634AE}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
+ {0653AFAF-5578-4C02-AF29-0C873E7634AE}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
+ {0653AFAF-5578-4C02-AF29-0C873E7634AE}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
+ {0653AFAF-5578-4C02-AF29-0C873E7634AE}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
+ {0653AFAF-5578-4C02-AF29-0C873E7634AE}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
+ {0653AFAF-5578-4C02-AF29-0C873E7634AE}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
+ {0653AFAF-5578-4C02-AF29-0C873E7634AE}.Debug|ARM64.ActiveCfg = Debug|ARM64
+ {0653AFAF-5578-4C02-AF29-0C873E7634AE}.Debug|ARM64.Build.0 = Debug|ARM64
+ {0653AFAF-5578-4C02-AF29-0C873E7634AE}.Debug|x64.ActiveCfg = Debug|x64
+ {0653AFAF-5578-4C02-AF29-0C873E7634AE}.Debug|x64.Build.0 = Debug|x64
+ {0653AFAF-5578-4C02-AF29-0C873E7634AE}.Debug|x86.ActiveCfg = Debug|Win32
+ {0653AFAF-5578-4C02-AF29-0C873E7634AE}.Debug|x86.Build.0 = Debug|Win32
+ {0653AFAF-5578-4C02-AF29-0C873E7634AE}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
+ {0653AFAF-5578-4C02-AF29-0C873E7634AE}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
+ {0653AFAF-5578-4C02-AF29-0C873E7634AE}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
+ {0653AFAF-5578-4C02-AF29-0C873E7634AE}.Release.DLL|x64.Build.0 = Release.DLL|x64
+ {0653AFAF-5578-4C02-AF29-0C873E7634AE}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
+ {0653AFAF-5578-4C02-AF29-0C873E7634AE}.Release.DLL|x86.Build.0 = Release.DLL|Win32
+ {0653AFAF-5578-4C02-AF29-0C873E7634AE}.Release|ARM64.ActiveCfg = Release|ARM64
+ {0653AFAF-5578-4C02-AF29-0C873E7634AE}.Release|ARM64.Build.0 = Release|ARM64
+ {0653AFAF-5578-4C02-AF29-0C873E7634AE}.Release|x64.ActiveCfg = Release|x64
+ {0653AFAF-5578-4C02-AF29-0C873E7634AE}.Release|x64.Build.0 = Release|x64
+ {0653AFAF-5578-4C02-AF29-0C873E7634AE}.Release|x86.ActiveCfg = Release|Win32
+ {0653AFAF-5578-4C02-AF29-0C873E7634AE}.Release|x86.Build.0 = Release|Win32
+ {071E64F3-1396-4A97-97CA-98CAC059B168}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
+ {071E64F3-1396-4A97-97CA-98CAC059B168}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
+ {071E64F3-1396-4A97-97CA-98CAC059B168}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
+ {071E64F3-1396-4A97-97CA-98CAC059B168}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
+ {071E64F3-1396-4A97-97CA-98CAC059B168}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
+ {071E64F3-1396-4A97-97CA-98CAC059B168}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
+ {071E64F3-1396-4A97-97CA-98CAC059B168}.Debug|ARM64.ActiveCfg = Debug|ARM64
+ {071E64F3-1396-4A97-97CA-98CAC059B168}.Debug|ARM64.Build.0 = Debug|ARM64
+ {071E64F3-1396-4A97-97CA-98CAC059B168}.Debug|x64.ActiveCfg = Debug|x64
+ {071E64F3-1396-4A97-97CA-98CAC059B168}.Debug|x64.Build.0 = Debug|x64
+ {071E64F3-1396-4A97-97CA-98CAC059B168}.Debug|x86.ActiveCfg = Debug|Win32
+ {071E64F3-1396-4A97-97CA-98CAC059B168}.Debug|x86.Build.0 = Debug|Win32
+ {071E64F3-1396-4A97-97CA-98CAC059B168}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
+ {071E64F3-1396-4A97-97CA-98CAC059B168}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
+ {071E64F3-1396-4A97-97CA-98CAC059B168}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
+ {071E64F3-1396-4A97-97CA-98CAC059B168}.Release.DLL|x64.Build.0 = Release.DLL|x64
+ {071E64F3-1396-4A97-97CA-98CAC059B168}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
+ {071E64F3-1396-4A97-97CA-98CAC059B168}.Release.DLL|x86.Build.0 = Release.DLL|Win32
+ {071E64F3-1396-4A97-97CA-98CAC059B168}.Release|ARM64.ActiveCfg = Release|ARM64
+ {071E64F3-1396-4A97-97CA-98CAC059B168}.Release|ARM64.Build.0 = Release|ARM64
+ {071E64F3-1396-4A97-97CA-98CAC059B168}.Release|x64.ActiveCfg = Release|x64
+ {071E64F3-1396-4A97-97CA-98CAC059B168}.Release|x64.Build.0 = Release|x64
+ {071E64F3-1396-4A97-97CA-98CAC059B168}.Release|x86.ActiveCfg = Release|Win32
+ {071E64F3-1396-4A97-97CA-98CAC059B168}.Release|x86.Build.0 = Release|Win32
+ {7883D076-CA8F-4FF7-8B5D-0DFF41CEF8FC}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
+ {7883D076-CA8F-4FF7-8B5D-0DFF41CEF8FC}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
+ {7883D076-CA8F-4FF7-8B5D-0DFF41CEF8FC}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
+ {7883D076-CA8F-4FF7-8B5D-0DFF41CEF8FC}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
+ {7883D076-CA8F-4FF7-8B5D-0DFF41CEF8FC}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
+ {7883D076-CA8F-4FF7-8B5D-0DFF41CEF8FC}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
+ {7883D076-CA8F-4FF7-8B5D-0DFF41CEF8FC}.Debug|ARM64.ActiveCfg = Debug|ARM64
+ {7883D076-CA8F-4FF7-8B5D-0DFF41CEF8FC}.Debug|ARM64.Build.0 = Debug|ARM64
+ {7883D076-CA8F-4FF7-8B5D-0DFF41CEF8FC}.Debug|x64.ActiveCfg = Debug|x64
+ {7883D076-CA8F-4FF7-8B5D-0DFF41CEF8FC}.Debug|x64.Build.0 = Debug|x64
+ {7883D076-CA8F-4FF7-8B5D-0DFF41CEF8FC}.Debug|x86.ActiveCfg = Debug|Win32
+ {7883D076-CA8F-4FF7-8B5D-0DFF41CEF8FC}.Debug|x86.Build.0 = Debug|Win32
+ {7883D076-CA8F-4FF7-8B5D-0DFF41CEF8FC}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
+ {7883D076-CA8F-4FF7-8B5D-0DFF41CEF8FC}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
+ {7883D076-CA8F-4FF7-8B5D-0DFF41CEF8FC}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
+ {7883D076-CA8F-4FF7-8B5D-0DFF41CEF8FC}.Release.DLL|x64.Build.0 = Release.DLL|x64
+ {7883D076-CA8F-4FF7-8B5D-0DFF41CEF8FC}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
+ {7883D076-CA8F-4FF7-8B5D-0DFF41CEF8FC}.Release.DLL|x86.Build.0 = Release.DLL|Win32
+ {7883D076-CA8F-4FF7-8B5D-0DFF41CEF8FC}.Release|ARM64.ActiveCfg = Release|ARM64
+ {7883D076-CA8F-4FF7-8B5D-0DFF41CEF8FC}.Release|ARM64.Build.0 = Release|ARM64
+ {7883D076-CA8F-4FF7-8B5D-0DFF41CEF8FC}.Release|x64.ActiveCfg = Release|x64
+ {7883D076-CA8F-4FF7-8B5D-0DFF41CEF8FC}.Release|x64.Build.0 = Release|x64
+ {7883D076-CA8F-4FF7-8B5D-0DFF41CEF8FC}.Release|x86.ActiveCfg = Release|Win32
+ {7883D076-CA8F-4FF7-8B5D-0DFF41CEF8FC}.Release|x86.Build.0 = Release|Win32
+ {1F4722E7-F78E-413F-A106-D3490211EA57}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
+ {1F4722E7-F78E-413F-A106-D3490211EA57}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
+ {1F4722E7-F78E-413F-A106-D3490211EA57}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
+ {1F4722E7-F78E-413F-A106-D3490211EA57}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
+ {1F4722E7-F78E-413F-A106-D3490211EA57}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
+ {1F4722E7-F78E-413F-A106-D3490211EA57}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
+ {1F4722E7-F78E-413F-A106-D3490211EA57}.Debug|ARM64.ActiveCfg = Debug|ARM64
+ {1F4722E7-F78E-413F-A106-D3490211EA57}.Debug|ARM64.Build.0 = Debug|ARM64
+ {1F4722E7-F78E-413F-A106-D3490211EA57}.Debug|x64.ActiveCfg = Debug|x64
+ {1F4722E7-F78E-413F-A106-D3490211EA57}.Debug|x64.Build.0 = Debug|x64
+ {1F4722E7-F78E-413F-A106-D3490211EA57}.Debug|x86.ActiveCfg = Debug|Win32
+ {1F4722E7-F78E-413F-A106-D3490211EA57}.Debug|x86.Build.0 = Debug|Win32
+ {1F4722E7-F78E-413F-A106-D3490211EA57}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
+ {1F4722E7-F78E-413F-A106-D3490211EA57}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
+ {1F4722E7-F78E-413F-A106-D3490211EA57}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
+ {1F4722E7-F78E-413F-A106-D3490211EA57}.Release.DLL|x64.Build.0 = Release.DLL|x64
+ {1F4722E7-F78E-413F-A106-D3490211EA57}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
+ {1F4722E7-F78E-413F-A106-D3490211EA57}.Release.DLL|x86.Build.0 = Release.DLL|Win32
+ {1F4722E7-F78E-413F-A106-D3490211EA57}.Release|ARM64.ActiveCfg = Release|ARM64
+ {1F4722E7-F78E-413F-A106-D3490211EA57}.Release|ARM64.Build.0 = Release|ARM64
+ {1F4722E7-F78E-413F-A106-D3490211EA57}.Release|x64.ActiveCfg = Release|x64
+ {1F4722E7-F78E-413F-A106-D3490211EA57}.Release|x64.Build.0 = Release|x64
+ {1F4722E7-F78E-413F-A106-D3490211EA57}.Release|x86.ActiveCfg = Release|Win32
+ {1F4722E7-F78E-413F-A106-D3490211EA57}.Release|x86.Build.0 = Release|Win32
+ {0A0FC982-6E31-401F-BA77-3C5E8AB02C68}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
+ {0A0FC982-6E31-401F-BA77-3C5E8AB02C68}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
+ {0A0FC982-6E31-401F-BA77-3C5E8AB02C68}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
+ {0A0FC982-6E31-401F-BA77-3C5E8AB02C68}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
+ {0A0FC982-6E31-401F-BA77-3C5E8AB02C68}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
+ {0A0FC982-6E31-401F-BA77-3C5E8AB02C68}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
+ {0A0FC982-6E31-401F-BA77-3C5E8AB02C68}.Debug|ARM64.ActiveCfg = Debug|ARM64
+ {0A0FC982-6E31-401F-BA77-3C5E8AB02C68}.Debug|ARM64.Build.0 = Debug|ARM64
+ {0A0FC982-6E31-401F-BA77-3C5E8AB02C68}.Debug|x64.ActiveCfg = Debug|x64
+ {0A0FC982-6E31-401F-BA77-3C5E8AB02C68}.Debug|x64.Build.0 = Debug|x64
+ {0A0FC982-6E31-401F-BA77-3C5E8AB02C68}.Debug|x86.ActiveCfg = Debug|Win32
+ {0A0FC982-6E31-401F-BA77-3C5E8AB02C68}.Debug|x86.Build.0 = Debug|Win32
+ {0A0FC982-6E31-401F-BA77-3C5E8AB02C68}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
+ {0A0FC982-6E31-401F-BA77-3C5E8AB02C68}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
+ {0A0FC982-6E31-401F-BA77-3C5E8AB02C68}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
+ {0A0FC982-6E31-401F-BA77-3C5E8AB02C68}.Release.DLL|x64.Build.0 = Release.DLL|x64
+ {0A0FC982-6E31-401F-BA77-3C5E8AB02C68}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
+ {0A0FC982-6E31-401F-BA77-3C5E8AB02C68}.Release.DLL|x86.Build.0 = Release.DLL|Win32
+ {0A0FC982-6E31-401F-BA77-3C5E8AB02C68}.Release|ARM64.ActiveCfg = Release|ARM64
+ {0A0FC982-6E31-401F-BA77-3C5E8AB02C68}.Release|ARM64.Build.0 = Release|ARM64
+ {0A0FC982-6E31-401F-BA77-3C5E8AB02C68}.Release|x64.ActiveCfg = Release|x64
+ {0A0FC982-6E31-401F-BA77-3C5E8AB02C68}.Release|x64.Build.0 = Release|x64
+ {0A0FC982-6E31-401F-BA77-3C5E8AB02C68}.Release|x86.ActiveCfg = Release|Win32
+ {0A0FC982-6E31-401F-BA77-3C5E8AB02C68}.Release|x86.Build.0 = Release|Win32
+ {DC163251-16C3-4B72-B965-ACDBA0F02BD1}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
+ {DC163251-16C3-4B72-B965-ACDBA0F02BD1}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
+ {DC163251-16C3-4B72-B965-ACDBA0F02BD1}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
+ {DC163251-16C3-4B72-B965-ACDBA0F02BD1}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
+ {DC163251-16C3-4B72-B965-ACDBA0F02BD1}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
+ {DC163251-16C3-4B72-B965-ACDBA0F02BD1}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
+ {DC163251-16C3-4B72-B965-ACDBA0F02BD1}.Debug|ARM64.ActiveCfg = Debug|ARM64
+ {DC163251-16C3-4B72-B965-ACDBA0F02BD1}.Debug|ARM64.Build.0 = Debug|ARM64
+ {DC163251-16C3-4B72-B965-ACDBA0F02BD1}.Debug|x64.ActiveCfg = Debug|x64
+ {DC163251-16C3-4B72-B965-ACDBA0F02BD1}.Debug|x64.Build.0 = Debug|x64
+ {DC163251-16C3-4B72-B965-ACDBA0F02BD1}.Debug|x86.ActiveCfg = Debug|Win32
+ {DC163251-16C3-4B72-B965-ACDBA0F02BD1}.Debug|x86.Build.0 = Debug|Win32
+ {DC163251-16C3-4B72-B965-ACDBA0F02BD1}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
+ {DC163251-16C3-4B72-B965-ACDBA0F02BD1}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
+ {DC163251-16C3-4B72-B965-ACDBA0F02BD1}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
+ {DC163251-16C3-4B72-B965-ACDBA0F02BD1}.Release.DLL|x64.Build.0 = Release.DLL|x64
+ {DC163251-16C3-4B72-B965-ACDBA0F02BD1}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
+ {DC163251-16C3-4B72-B965-ACDBA0F02BD1}.Release.DLL|x86.Build.0 = Release.DLL|Win32
+ {DC163251-16C3-4B72-B965-ACDBA0F02BD1}.Release|ARM64.ActiveCfg = Release|ARM64
+ {DC163251-16C3-4B72-B965-ACDBA0F02BD1}.Release|ARM64.Build.0 = Release|ARM64
+ {DC163251-16C3-4B72-B965-ACDBA0F02BD1}.Release|x64.ActiveCfg = Release|x64
+ {DC163251-16C3-4B72-B965-ACDBA0F02BD1}.Release|x64.Build.0 = Release|x64
+ {DC163251-16C3-4B72-B965-ACDBA0F02BD1}.Release|x86.ActiveCfg = Release|Win32
+ {DC163251-16C3-4B72-B965-ACDBA0F02BD1}.Release|x86.Build.0 = Release|Win32
+ {D35D2FDA-B53F-4F70-81CA-24D95812B89C}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
+ {D35D2FDA-B53F-4F70-81CA-24D95812B89C}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
+ {D35D2FDA-B53F-4F70-81CA-24D95812B89C}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
+ {D35D2FDA-B53F-4F70-81CA-24D95812B89C}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
+ {D35D2FDA-B53F-4F70-81CA-24D95812B89C}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
+ {D35D2FDA-B53F-4F70-81CA-24D95812B89C}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
+ {D35D2FDA-B53F-4F70-81CA-24D95812B89C}.Debug|ARM64.ActiveCfg = Debug|ARM64
+ {D35D2FDA-B53F-4F70-81CA-24D95812B89C}.Debug|ARM64.Build.0 = Debug|ARM64
+ {D35D2FDA-B53F-4F70-81CA-24D95812B89C}.Debug|x64.ActiveCfg = Debug|x64
+ {D35D2FDA-B53F-4F70-81CA-24D95812B89C}.Debug|x64.Build.0 = Debug|x64
+ {D35D2FDA-B53F-4F70-81CA-24D95812B89C}.Debug|x86.ActiveCfg = Debug|Win32
+ {D35D2FDA-B53F-4F70-81CA-24D95812B89C}.Debug|x86.Build.0 = Debug|Win32
+ {D35D2FDA-B53F-4F70-81CA-24D95812B89C}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
+ {D35D2FDA-B53F-4F70-81CA-24D95812B89C}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
+ {D35D2FDA-B53F-4F70-81CA-24D95812B89C}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
+ {D35D2FDA-B53F-4F70-81CA-24D95812B89C}.Release.DLL|x64.Build.0 = Release.DLL|x64
+ {D35D2FDA-B53F-4F70-81CA-24D95812B89C}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
+ {D35D2FDA-B53F-4F70-81CA-24D95812B89C}.Release.DLL|x86.Build.0 = Release.DLL|Win32
+ {D35D2FDA-B53F-4F70-81CA-24D95812B89C}.Release|ARM64.ActiveCfg = Release|ARM64
+ {D35D2FDA-B53F-4F70-81CA-24D95812B89C}.Release|ARM64.Build.0 = Release|ARM64
+ {D35D2FDA-B53F-4F70-81CA-24D95812B89C}.Release|x64.ActiveCfg = Release|x64
+ {D35D2FDA-B53F-4F70-81CA-24D95812B89C}.Release|x64.Build.0 = Release|x64
+ {D35D2FDA-B53F-4F70-81CA-24D95812B89C}.Release|x86.ActiveCfg = Release|Win32
+ {D35D2FDA-B53F-4F70-81CA-24D95812B89C}.Release|x86.Build.0 = Release|Win32
+ {F8DC77C0-556C-4672-B5B3-D2FA4ADC505C}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
+ {F8DC77C0-556C-4672-B5B3-D2FA4ADC505C}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
+ {F8DC77C0-556C-4672-B5B3-D2FA4ADC505C}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
+ {F8DC77C0-556C-4672-B5B3-D2FA4ADC505C}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
+ {F8DC77C0-556C-4672-B5B3-D2FA4ADC505C}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
+ {F8DC77C0-556C-4672-B5B3-D2FA4ADC505C}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
+ {F8DC77C0-556C-4672-B5B3-D2FA4ADC505C}.Debug|ARM64.ActiveCfg = Debug|ARM64
+ {F8DC77C0-556C-4672-B5B3-D2FA4ADC505C}.Debug|ARM64.Build.0 = Debug|ARM64
+ {F8DC77C0-556C-4672-B5B3-D2FA4ADC505C}.Debug|x64.ActiveCfg = Debug|x64
+ {F8DC77C0-556C-4672-B5B3-D2FA4ADC505C}.Debug|x64.Build.0 = Debug|x64
+ {F8DC77C0-556C-4672-B5B3-D2FA4ADC505C}.Debug|x86.ActiveCfg = Debug|Win32
+ {F8DC77C0-556C-4672-B5B3-D2FA4ADC505C}.Debug|x86.Build.0 = Debug|Win32
+ {F8DC77C0-556C-4672-B5B3-D2FA4ADC505C}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
+ {F8DC77C0-556C-4672-B5B3-D2FA4ADC505C}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
+ {F8DC77C0-556C-4672-B5B3-D2FA4ADC505C}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
+ {F8DC77C0-556C-4672-B5B3-D2FA4ADC505C}.Release.DLL|x64.Build.0 = Release.DLL|x64
+ {F8DC77C0-556C-4672-B5B3-D2FA4ADC505C}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
+ {F8DC77C0-556C-4672-B5B3-D2FA4ADC505C}.Release.DLL|x86.Build.0 = Release.DLL|Win32
+ {F8DC77C0-556C-4672-B5B3-D2FA4ADC505C}.Release|ARM64.ActiveCfg = Release|ARM64
+ {F8DC77C0-556C-4672-B5B3-D2FA4ADC505C}.Release|ARM64.Build.0 = Release|ARM64
+ {F8DC77C0-556C-4672-B5B3-D2FA4ADC505C}.Release|x64.ActiveCfg = Release|x64
+ {F8DC77C0-556C-4672-B5B3-D2FA4ADC505C}.Release|x64.Build.0 = Release|x64
+ {F8DC77C0-556C-4672-B5B3-D2FA4ADC505C}.Release|x86.ActiveCfg = Release|Win32
+ {F8DC77C0-556C-4672-B5B3-D2FA4ADC505C}.Release|x86.Build.0 = Release|Win32
+ {4250CE87-9AA0-43BB-AB47-0636548922B5}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
+ {4250CE87-9AA0-43BB-AB47-0636548922B5}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
+ {4250CE87-9AA0-43BB-AB47-0636548922B5}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
+ {4250CE87-9AA0-43BB-AB47-0636548922B5}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
+ {4250CE87-9AA0-43BB-AB47-0636548922B5}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
+ {4250CE87-9AA0-43BB-AB47-0636548922B5}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
+ {4250CE87-9AA0-43BB-AB47-0636548922B5}.Debug|ARM64.ActiveCfg = Debug|ARM64
+ {4250CE87-9AA0-43BB-AB47-0636548922B5}.Debug|ARM64.Build.0 = Debug|ARM64
+ {4250CE87-9AA0-43BB-AB47-0636548922B5}.Debug|x64.ActiveCfg = Debug|x64
+ {4250CE87-9AA0-43BB-AB47-0636548922B5}.Debug|x64.Build.0 = Debug|x64
+ {4250CE87-9AA0-43BB-AB47-0636548922B5}.Debug|x86.ActiveCfg = Debug|Win32
+ {4250CE87-9AA0-43BB-AB47-0636548922B5}.Debug|x86.Build.0 = Debug|Win32
+ {4250CE87-9AA0-43BB-AB47-0636548922B5}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
+ {4250CE87-9AA0-43BB-AB47-0636548922B5}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
+ {4250CE87-9AA0-43BB-AB47-0636548922B5}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
+ {4250CE87-9AA0-43BB-AB47-0636548922B5}.Release.DLL|x64.Build.0 = Release.DLL|x64
+ {4250CE87-9AA0-43BB-AB47-0636548922B5}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
+ {4250CE87-9AA0-43BB-AB47-0636548922B5}.Release.DLL|x86.Build.0 = Release.DLL|Win32
+ {4250CE87-9AA0-43BB-AB47-0636548922B5}.Release|ARM64.ActiveCfg = Release|ARM64
+ {4250CE87-9AA0-43BB-AB47-0636548922B5}.Release|ARM64.Build.0 = Release|ARM64
+ {4250CE87-9AA0-43BB-AB47-0636548922B5}.Release|x64.ActiveCfg = Release|x64
+ {4250CE87-9AA0-43BB-AB47-0636548922B5}.Release|x64.Build.0 = Release|x64
+ {4250CE87-9AA0-43BB-AB47-0636548922B5}.Release|x86.ActiveCfg = Release|Win32
+ {4250CE87-9AA0-43BB-AB47-0636548922B5}.Release|x86.Build.0 = Release|Win32
+ {AEA9D0D4-B810-4624-BC75-10A291584ED6}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
+ {AEA9D0D4-B810-4624-BC75-10A291584ED6}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
+ {AEA9D0D4-B810-4624-BC75-10A291584ED6}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
+ {AEA9D0D4-B810-4624-BC75-10A291584ED6}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
+ {AEA9D0D4-B810-4624-BC75-10A291584ED6}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
+ {AEA9D0D4-B810-4624-BC75-10A291584ED6}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
+ {AEA9D0D4-B810-4624-BC75-10A291584ED6}.Debug|ARM64.ActiveCfg = Debug|ARM64
+ {AEA9D0D4-B810-4624-BC75-10A291584ED6}.Debug|ARM64.Build.0 = Debug|ARM64
+ {AEA9D0D4-B810-4624-BC75-10A291584ED6}.Debug|x64.ActiveCfg = Debug|x64
+ {AEA9D0D4-B810-4624-BC75-10A291584ED6}.Debug|x64.Build.0 = Debug|x64
+ {AEA9D0D4-B810-4624-BC75-10A291584ED6}.Debug|x86.ActiveCfg = Debug|Win32
+ {AEA9D0D4-B810-4624-BC75-10A291584ED6}.Debug|x86.Build.0 = Debug|Win32
+ {AEA9D0D4-B810-4624-BC75-10A291584ED6}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
+ {AEA9D0D4-B810-4624-BC75-10A291584ED6}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
+ {AEA9D0D4-B810-4624-BC75-10A291584ED6}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
+ {AEA9D0D4-B810-4624-BC75-10A291584ED6}.Release.DLL|x64.Build.0 = Release.DLL|x64
+ {AEA9D0D4-B810-4624-BC75-10A291584ED6}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
+ {AEA9D0D4-B810-4624-BC75-10A291584ED6}.Release.DLL|x86.Build.0 = Release.DLL|Win32
+ {AEA9D0D4-B810-4624-BC75-10A291584ED6}.Release|ARM64.ActiveCfg = Release|ARM64
+ {AEA9D0D4-B810-4624-BC75-10A291584ED6}.Release|ARM64.Build.0 = Release|ARM64
+ {AEA9D0D4-B810-4624-BC75-10A291584ED6}.Release|x64.ActiveCfg = Release|x64
+ {AEA9D0D4-B810-4624-BC75-10A291584ED6}.Release|x64.Build.0 = Release|x64
+ {AEA9D0D4-B810-4624-BC75-10A291584ED6}.Release|x86.ActiveCfg = Release|Win32
+ {AEA9D0D4-B810-4624-BC75-10A291584ED6}.Release|x86.Build.0 = Release|Win32
+ {AC751FE1-C986-4B6A-92A8-28ED89DEE671}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
+ {AC751FE1-C986-4B6A-92A8-28ED89DEE671}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
+ {AC751FE1-C986-4B6A-92A8-28ED89DEE671}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
+ {AC751FE1-C986-4B6A-92A8-28ED89DEE671}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
+ {AC751FE1-C986-4B6A-92A8-28ED89DEE671}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
+ {AC751FE1-C986-4B6A-92A8-28ED89DEE671}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
+ {AC751FE1-C986-4B6A-92A8-28ED89DEE671}.Debug|ARM64.ActiveCfg = Debug|ARM64
+ {AC751FE1-C986-4B6A-92A8-28ED89DEE671}.Debug|ARM64.Build.0 = Debug|ARM64
+ {AC751FE1-C986-4B6A-92A8-28ED89DEE671}.Debug|x64.ActiveCfg = Debug|x64
+ {AC751FE1-C986-4B6A-92A8-28ED89DEE671}.Debug|x64.Build.0 = Debug|x64
+ {AC751FE1-C986-4B6A-92A8-28ED89DEE671}.Debug|x86.ActiveCfg = Debug|Win32
+ {AC751FE1-C986-4B6A-92A8-28ED89DEE671}.Debug|x86.Build.0 = Debug|Win32
+ {AC751FE1-C986-4B6A-92A8-28ED89DEE671}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
+ {AC751FE1-C986-4B6A-92A8-28ED89DEE671}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
+ {AC751FE1-C986-4B6A-92A8-28ED89DEE671}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
+ {AC751FE1-C986-4B6A-92A8-28ED89DEE671}.Release.DLL|x64.Build.0 = Release.DLL|x64
+ {AC751FE1-C986-4B6A-92A8-28ED89DEE671}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
+ {AC751FE1-C986-4B6A-92A8-28ED89DEE671}.Release.DLL|x86.Build.0 = Release.DLL|Win32
+ {AC751FE1-C986-4B6A-92A8-28ED89DEE671}.Release|ARM64.ActiveCfg = Release|ARM64
+ {AC751FE1-C986-4B6A-92A8-28ED89DEE671}.Release|ARM64.Build.0 = Release|ARM64
+ {AC751FE1-C986-4B6A-92A8-28ED89DEE671}.Release|x64.ActiveCfg = Release|x64
+ {AC751FE1-C986-4B6A-92A8-28ED89DEE671}.Release|x64.Build.0 = Release|x64
+ {AC751FE1-C986-4B6A-92A8-28ED89DEE671}.Release|x86.ActiveCfg = Release|Win32
+ {AC751FE1-C986-4B6A-92A8-28ED89DEE671}.Release|x86.Build.0 = Release|Win32
+ {BB9C957D-34F1-46AE-B64A-9E0499C1746D}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|x64
+ {BB9C957D-34F1-46AE-B64A-9E0499C1746D}.Debug.DLL|ARM64.Build.0 = Debug.DLL|x64
+ {BB9C957D-34F1-46AE-B64A-9E0499C1746D}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
+ {BB9C957D-34F1-46AE-B64A-9E0499C1746D}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
+ {BB9C957D-34F1-46AE-B64A-9E0499C1746D}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
+ {BB9C957D-34F1-46AE-B64A-9E0499C1746D}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
+ {BB9C957D-34F1-46AE-B64A-9E0499C1746D}.Debug|ARM64.ActiveCfg = Debug|x64
+ {BB9C957D-34F1-46AE-B64A-9E0499C1746D}.Debug|ARM64.Build.0 = Debug|x64
+ {BB9C957D-34F1-46AE-B64A-9E0499C1746D}.Debug|x64.ActiveCfg = Debug|x64
+ {BB9C957D-34F1-46AE-B64A-9E0499C1746D}.Debug|x64.Build.0 = Debug|x64
+ {BB9C957D-34F1-46AE-B64A-9E0499C1746D}.Debug|x86.ActiveCfg = Debug|Win32
+ {BB9C957D-34F1-46AE-B64A-9E0499C1746D}.Debug|x86.Build.0 = Debug|Win32
+ {BB9C957D-34F1-46AE-B64A-9E0499C1746D}.Release.DLL|ARM64.ActiveCfg = Release.DLL|x64
+ {BB9C957D-34F1-46AE-B64A-9E0499C1746D}.Release.DLL|ARM64.Build.0 = Release.DLL|x64
+ {BB9C957D-34F1-46AE-B64A-9E0499C1746D}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
+ {BB9C957D-34F1-46AE-B64A-9E0499C1746D}.Release.DLL|x64.Build.0 = Release.DLL|x64
+ {BB9C957D-34F1-46AE-B64A-9E0499C1746D}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
+ {BB9C957D-34F1-46AE-B64A-9E0499C1746D}.Release.DLL|x86.Build.0 = Release.DLL|Win32
+ {BB9C957D-34F1-46AE-B64A-9E0499C1746D}.Release|ARM64.ActiveCfg = Release|x64
+ {BB9C957D-34F1-46AE-B64A-9E0499C1746D}.Release|ARM64.Build.0 = Release|x64
+ {BB9C957D-34F1-46AE-B64A-9E0499C1746D}.Release|x64.ActiveCfg = Release|x64
+ {BB9C957D-34F1-46AE-B64A-9E0499C1746D}.Release|x64.Build.0 = Release|x64
+ {BB9C957D-34F1-46AE-B64A-9E0499C1746D}.Release|x86.ActiveCfg = Release|Win32
+ {BB9C957D-34F1-46AE-B64A-9E0499C1746D}.Release|x86.Build.0 = Release|Win32
+ {4E7157E0-6CDB-47AE-A19A-FEC3876FA8A3}.Debug.DLL|ARM64.ActiveCfg = Debug.DLL|ARM64
+ {4E7157E0-6CDB-47AE-A19A-FEC3876FA8A3}.Debug.DLL|ARM64.Build.0 = Debug.DLL|ARM64
+ {4E7157E0-6CDB-47AE-A19A-FEC3876FA8A3}.Debug.DLL|x64.ActiveCfg = Debug.DLL|x64
+ {4E7157E0-6CDB-47AE-A19A-FEC3876FA8A3}.Debug.DLL|x64.Build.0 = Debug.DLL|x64
+ {4E7157E0-6CDB-47AE-A19A-FEC3876FA8A3}.Debug.DLL|x86.ActiveCfg = Debug.DLL|Win32
+ {4E7157E0-6CDB-47AE-A19A-FEC3876FA8A3}.Debug.DLL|x86.Build.0 = Debug.DLL|Win32
+ {4E7157E0-6CDB-47AE-A19A-FEC3876FA8A3}.Debug|ARM64.ActiveCfg = Debug|ARM64
+ {4E7157E0-6CDB-47AE-A19A-FEC3876FA8A3}.Debug|ARM64.Build.0 = Debug|ARM64
+ {4E7157E0-6CDB-47AE-A19A-FEC3876FA8A3}.Debug|x64.ActiveCfg = Debug|x64
+ {4E7157E0-6CDB-47AE-A19A-FEC3876FA8A3}.Debug|x64.Build.0 = Debug|x64
+ {4E7157E0-6CDB-47AE-A19A-FEC3876FA8A3}.Debug|x86.ActiveCfg = Debug|Win32
+ {4E7157E0-6CDB-47AE-A19A-FEC3876FA8A3}.Debug|x86.Build.0 = Debug|Win32
+ {4E7157E0-6CDB-47AE-A19A-FEC3876FA8A3}.Release.DLL|ARM64.ActiveCfg = Release.DLL|ARM64
+ {4E7157E0-6CDB-47AE-A19A-FEC3876FA8A3}.Release.DLL|ARM64.Build.0 = Release.DLL|ARM64
+ {4E7157E0-6CDB-47AE-A19A-FEC3876FA8A3}.Release.DLL|x64.ActiveCfg = Release.DLL|x64
+ {4E7157E0-6CDB-47AE-A19A-FEC3876FA8A3}.Release.DLL|x64.Build.0 = Release.DLL|x64
+ {4E7157E0-6CDB-47AE-A19A-FEC3876FA8A3}.Release.DLL|x86.ActiveCfg = Release.DLL|Win32
+ {4E7157E0-6CDB-47AE-A19A-FEC3876FA8A3}.Release.DLL|x86.Build.0 = Release.DLL|Win32
+ {4E7157E0-6CDB-47AE-A19A-FEC3876FA8A3}.Release|ARM64.ActiveCfg = Release|ARM64
+ {4E7157E0-6CDB-47AE-A19A-FEC3876FA8A3}.Release|ARM64.Build.0 = Release|ARM64
+ {4E7157E0-6CDB-47AE-A19A-FEC3876FA8A3}.Release|x64.ActiveCfg = Release|x64
+ {4E7157E0-6CDB-47AE-A19A-FEC3876FA8A3}.Release|x64.Build.0 = Release|x64
+ {4E7157E0-6CDB-47AE-A19A-FEC3876FA8A3}.Release|x86.ActiveCfg = Release|Win32
+ {4E7157E0-6CDB-47AE-A19A-FEC3876FA8A3}.Release|x86.Build.0 = Release|Win32
+ EndGlobalSection
+ GlobalSection(SolutionProperties) = preSolution
+ HideSolutionNode = FALSE
+ EndGlobalSection
+ GlobalSection(NestedProjects) = preSolution
+ {6C82BAAE-BDDF-457D-8FA8-7E2490B07035} = {8716DC0F-4FDE-4F57-8E25-5F78DFB80FE1}
+ {278D8859-20B1-428F-8448-064F46E1F021} = {8716DC0F-4FDE-4F57-8E25-5F78DFB80FE1}
+ {DA049009-21FF-4AC0-84E4-830DD1BCD0CE} = {8716DC0F-4FDE-4F57-8E25-5F78DFB80FE1}
+ {8D3C83B7-F1E0-4C2E-9E34-EE5F6AB2502A} = {8716DC0F-4FDE-4F57-8E25-5F78DFB80FE1}
+ {AF5BEC5C-1F2B-4DA8-B12D-D09FE569237C} = {8716DC0F-4FDE-4F57-8E25-5F78DFB80FE1}
+ {5317807F-61D4-4E0F-B6DC-2D9F12621ED9} = {8716DC0F-4FDE-4F57-8E25-5F78DFB80FE1}
+ {CC132A4D-D081-4C26-BFB9-AB11984054F8} = {8716DC0F-4FDE-4F57-8E25-5F78DFB80FE1}
+ {0981CA98-E4A5-4DF1-987F-A41D09131EFC} = {6C82BAAE-BDDF-457D-8FA8-7E2490B07035}
+ {C25D2CC6-80CA-4C8A-BE3B-2E0F4EA5D0CC} = {DA049009-21FF-4AC0-84E4-830DD1BCD0CE}
+ {103B292B-049B-4B15-85A1-9F902840DB2C} = {DA049009-21FF-4AC0-84E4-830DD1BCD0CE}
+ {0C2D2F82-AE67-400C-B19C-8C9B957B132A} = {DA049009-21FF-4AC0-84E4-830DD1BCD0CE}
+ {E6784F91-4E4E-4956-A079-73FAB1AC7BE6} = {CC132A4D-D081-4C26-BFB9-AB11984054F8}
+ {BFB22AB2-041B-4A1B-80C0-1D4BE410C8A9} = {CC132A4D-D081-4C26-BFB9-AB11984054F8}
+ {93A1F656-0D29-4C5E-B140-11F23FF5D6AB} = {CC132A4D-D081-4C26-BFB9-AB11984054F8}
+ {F81C5819-85B6-4D2E-B6DC-104A7634461B} = {CC132A4D-D081-4C26-BFB9-AB11984054F8}
+ {66CC5B13-881A-412F-8C51-746622A91C5A} = {6C82BAAE-BDDF-457D-8FA8-7E2490B07035}
+ {CB75B7C9-4E00-43B8-B2A9-9ACB4FC40F9B} = {6C82BAAE-BDDF-457D-8FA8-7E2490B07035}
+ {557138B0-7BE2-4392-B2E2-B45734031A62} = {6C82BAAE-BDDF-457D-8FA8-7E2490B07035}
+ {9EED87BB-527F-4D05-9384-6D16CFD627A8} = {6C82BAAE-BDDF-457D-8FA8-7E2490B07035}
+ {6D1CA2F1-7FCA-4249-9220-075C2DF4F965} = {6C82BAAE-BDDF-457D-8FA8-7E2490B07035}
+ {946A1700-C7AA-46F0-AEF2-67C98B5722AC} = {6C82BAAE-BDDF-457D-8FA8-7E2490B07035}
+ {FD193822-3D5C-4161-A147-884C2ABDE483} = {6C82BAAE-BDDF-457D-8FA8-7E2490B07035}
+ {20AD0AC9-9159-4744-99CC-6AC5779D6B87} = {6C82BAAE-BDDF-457D-8FA8-7E2490B07035}
+ {0199E349-0701-40BC-8A7F-06A54FFA3E7C} = {6C82BAAE-BDDF-457D-8FA8-7E2490B07035}
+ {BCB71111-8505-4B35-8CEF-EC6115DC9D4D} = {6C82BAAE-BDDF-457D-8FA8-7E2490B07035}
+ {8F19E3DA-8929-4000-87B5-3CA6929636CC} = {6C82BAAE-BDDF-457D-8FA8-7E2490B07035}
+ {51A00565-5787-4911-9CC0-28403AA4909D} = {6C82BAAE-BDDF-457D-8FA8-7E2490B07035}
+ {92B64AE7-D773-4F05-89F1-CE59BBF4F053} = {6C82BAAE-BDDF-457D-8FA8-7E2490B07035}
+ {A2BA5E5C-FDB9-4939-B0B5-2B753A5E33D3} = {6C82BAAE-BDDF-457D-8FA8-7E2490B07035}
+ {A643BB06-735D-47F3-BFE7-B6D3C36F7097} = {6C82BAAE-BDDF-457D-8FA8-7E2490B07035}
+ {6B8BAAF1-75C7-4C68-80B8-0E2A9EABBD9A} = {6C82BAAE-BDDF-457D-8FA8-7E2490B07035}
+ {B332DCA8-3599-4A99-917A-82261BDC27AC} = {6C82BAAE-BDDF-457D-8FA8-7E2490B07035}
+ {59089B0C-AAB4-4532-B294-44DEAE7178B7} = {6C82BAAE-BDDF-457D-8FA8-7E2490B07035}
+ {C298876B-6C12-4EA4-903B-33450BCD9884} = {6C82BAAE-BDDF-457D-8FA8-7E2490B07035}
+ {83F586FA-C801-4979-ACCA-006BD628CC88} = {6C82BAAE-BDDF-457D-8FA8-7E2490B07035}
+ {86CBE96B-F5FE-483C-BA4A-DC9B1D43AF22} = {6C82BAAE-BDDF-457D-8FA8-7E2490B07035}
+ {FF2970AE-E2E9-405F-B321-D523A1BD44A0} = {6C82BAAE-BDDF-457D-8FA8-7E2490B07035}
+ {79417CE2-FEEB-42F0-BC53-62D5267B19B1} = {6C82BAAE-BDDF-457D-8FA8-7E2490B07035}
+ {AFDDE100-2D36-4749-817D-12E54C56312F} = {AF5BEC5C-1F2B-4DA8-B12D-D09FE569237C}
+ {B7812167-50FB-4934-996F-DF6FE4CBBFDF} = {AF5BEC5C-1F2B-4DA8-B12D-D09FE569237C}
+ {39DB56C7-05F8-492C-A8D4-F19E40FECB59} = {AF5BEC5C-1F2B-4DA8-B12D-D09FE569237C}
+ {82F3D34B-8DB2-4C6A-98B1-132245DD9D99} = {AF5BEC5C-1F2B-4DA8-B12D-D09FE569237C}
+ {CBD6C0F8-8200-4E9A-9D7C-6505A2AA4A62} = {AF5BEC5C-1F2B-4DA8-B12D-D09FE569237C}
+ {14BA7F98-02CC-4648-9236-676BFF9458AF} = {AF5BEC5C-1F2B-4DA8-B12D-D09FE569237C}
+ {0859A973-E4FE-4688-8D16-0253163FDE24} = {AF5BEC5C-1F2B-4DA8-B12D-D09FE569237C}
+ {F3412853-2B6A-4334-8CF2-B796CDAE0850} = {AF5BEC5C-1F2B-4DA8-B12D-D09FE569237C}
+ {BE097E8F-B6F3-45DC-8A27-E0EBC31AB912} = {AF5BEC5C-1F2B-4DA8-B12D-D09FE569237C}
+ {D03F2C82-9553-4AFA-8F49-9234009122B6} = {AF5BEC5C-1F2B-4DA8-B12D-D09FE569237C}
+ {FE232CA5-6C0D-4ADF-9A21-775D4DC048D3} = {AF5BEC5C-1F2B-4DA8-B12D-D09FE569237C}
+ {A53CCF42-A972-478F-9336-0F618B3EC06A} = {AF5BEC5C-1F2B-4DA8-B12D-D09FE569237C}
+ {0037A3CD-4F50-48B2-9AC3-5A0D1D16D2CA} = {AF5BEC5C-1F2B-4DA8-B12D-D09FE569237C}
+ {870723DD-945A-4136-B65B-4AF3BF85369C} = {AF5BEC5C-1F2B-4DA8-B12D-D09FE569237C}
+ {EA6488AD-445B-4835-87FB-EBC9E2EDAF97} = {AF5BEC5C-1F2B-4DA8-B12D-D09FE569237C}
+ {E07B6DBE-3358-4BA0-AABF-CDD8F96AECF0} = {DA049009-21FF-4AC0-84E4-830DD1BCD0CE}
+ {472BCBDC-62E0-441D-B2FD-0EE0FC6CEEB4} = {DA049009-21FF-4AC0-84E4-830DD1BCD0CE}
+ {589C8E9B-0BB3-4D6D-A70C-0A28E469F20E} = {DA049009-21FF-4AC0-84E4-830DD1BCD0CE}
+ {3AD868E6-8355-4F29-B5ED-7DE94AD786E7} = {DA049009-21FF-4AC0-84E4-830DD1BCD0CE}
+ {2B78CF0A-5403-45E2-99BD-493F1679BCDB} = {DA049009-21FF-4AC0-84E4-830DD1BCD0CE}
+ {0AB968E0-E993-45CE-8875-7453C96DF583} = {DA049009-21FF-4AC0-84E4-830DD1BCD0CE}
+ {25923141-9859-4AFE-8168-0DF78322FC63} = {DA049009-21FF-4AC0-84E4-830DD1BCD0CE}
+ {7E855020-7FA4-482D-B510-2E709354FE8B} = {DA049009-21FF-4AC0-84E4-830DD1BCD0CE}
+ {9782E0C8-2BD3-4F67-B420-21CF19CA2435} = {DA049009-21FF-4AC0-84E4-830DD1BCD0CE}
+ {9F4135E3-9814-452C-9B35-0EFBCD792B49} = {DA049009-21FF-4AC0-84E4-830DD1BCD0CE}
+ {C45343E6-DAB6-4F3A-A00A-8BED71A098BE} = {DA049009-21FF-4AC0-84E4-830DD1BCD0CE}
+ {B19DD336-538E-4091-A559-EAA717FEC899} = {DA049009-21FF-4AC0-84E4-830DD1BCD0CE}
+ {0BF60202-43F7-48E9-8717-D31E56FA5BE0} = {DA049009-21FF-4AC0-84E4-830DD1BCD0CE}
+ {4E863E5B-0B95-43BE-8D4F-B9EB6C394FEC} = {DA049009-21FF-4AC0-84E4-830DD1BCD0CE}
+ {6D75CD88-1A03-4955-B8C7-ACFC3742154F} = {DA049009-21FF-4AC0-84E4-830DD1BCD0CE}
+ {8DD0EB7E-668E-452D-91D7-906C64A9C8AC} = {DA049009-21FF-4AC0-84E4-830DD1BCD0CE}
+ {F6FD9C75-AAA7-48C9-B19D-FD37C8FB9B7E} = {8D3C83B7-F1E0-4C2E-9E34-EE5F6AB2502A}
+ {1FE8758D-7E8A-41F3-9B6D-FD50E9A2A03D} = {8D3C83B7-F1E0-4C2E-9E34-EE5F6AB2502A}
+ {25BCB876-B60A-499B-9046-E9801CFD7780} = {8D3C83B7-F1E0-4C2E-9E34-EE5F6AB2502A}
+ {56FB0A45-145F-4EAE-B2C8-E5833E682D8F} = {8D3C83B7-F1E0-4C2E-9E34-EE5F6AB2502A}
+ {2BB0C1D4-9298-45AC-B244-67A99769A292} = {8D3C83B7-F1E0-4C2E-9E34-EE5F6AB2502A}
+ {99A40FC5-9DB0-4B80-8D97-867EF00FA2CB} = {8D3C83B7-F1E0-4C2E-9E34-EE5F6AB2502A}
+ {81064BCE-EEC1-43B0-9912-F05F2B54B11A} = {8D3C83B7-F1E0-4C2E-9E34-EE5F6AB2502A}
+ {31B41997-3890-45E3-93FE-C57B363E9C0D} = {8D3C83B7-F1E0-4C2E-9E34-EE5F6AB2502A}
+ {D550AB93-DF31-4B76-873F-F075018352F4} = {8D3C83B7-F1E0-4C2E-9E34-EE5F6AB2502A}
+ {8CF3F7BA-4C99-43EB-B4F1-7CA346817D0A} = {8D3C83B7-F1E0-4C2E-9E34-EE5F6AB2502A}
+ {F90FCDC5-EE14-4B89-96DB-4392E28F34AF} = {278D8859-20B1-428F-8448-064F46E1F021}
+ {93A864C9-93B7-4E5C-ACE7-E8FC5F9EFF79} = {278D8859-20B1-428F-8448-064F46E1F021}
+ {56E68E37-B3FC-4799-91AF-0CA10B6D55A5} = {278D8859-20B1-428F-8448-064F46E1F021}
+ {03E7018C-44A2-4C46-9CE7-F2A135A2692B} = {278D8859-20B1-428F-8448-064F46E1F021}
+ {F3F6FE4D-9D9E-451A-B0BA-81456104B672} = {278D8859-20B1-428F-8448-064F46E1F021}
+ {C27794B5-1293-4EA7-BC0E-0F18E6325539} = {278D8859-20B1-428F-8448-064F46E1F021}
+ {02F41059-12A2-4A96-8D77-07EFE4B108FD} = {278D8859-20B1-428F-8448-064F46E1F021}
+ {B774E0B9-9514-4E88-975F-4EB6C3B8D519} = {278D8859-20B1-428F-8448-064F46E1F021}
+ {D91367C2-2189-4859-A7FE-D2CAB84FA15C} = {278D8859-20B1-428F-8448-064F46E1F021}
+ {33459B4E-1839-4856-BF6B-22480D11FE31} = {278D8859-20B1-428F-8448-064F46E1F021}
+ {48871156-181A-475A-BD8D-200086A09675} = {278D8859-20B1-428F-8448-064F46E1F021}
+ {C4416DA1-9E62-46BA-9CD3-F8963C79E1A1} = {278D8859-20B1-428F-8448-064F46E1F021}
+ {1C49E35A-2838-49D9-9D5F-4B8134960EF6} = {278D8859-20B1-428F-8448-064F46E1F021}
+ {F91142E2-A999-47F0-9E74-38C1E2930EBE} = {278D8859-20B1-428F-8448-064F46E1F021}
+ {1EDD4BCF-345C-4065-8CBD-7285224293C3} = {278D8859-20B1-428F-8448-064F46E1F021}
+ {A6B2A11B-0669-4AF5-A025-8DD02DBBE5EA} = {5317807F-61D4-4E0F-B6DC-2D9F12621ED9}
+ {B176BB4A-CA31-4E2A-B790-3EA0ED2EE870} = {5317807F-61D4-4E0F-B6DC-2D9F12621ED9}
+ {D08AA2A0-2F94-4BF5-B42D-E92450F03FD1} = {5317807F-61D4-4E0F-B6DC-2D9F12621ED9}
+ {4A7D0ECA-D7CC-4E66-B741-C92E9C1B42FF} = {5317807F-61D4-4E0F-B6DC-2D9F12621ED9}
+ {CF3755C4-937D-4ABF-B7B3-95140808717F} = {5317807F-61D4-4E0F-B6DC-2D9F12621ED9}
+ {D34939FE-8873-4C53-8D6C-74DED78EA3C4} = {5317807F-61D4-4E0F-B6DC-2D9F12621ED9}
+ {D408A730-363A-4ABF-BCEF-5D63DCC66042} = {5317807F-61D4-4E0F-B6DC-2D9F12621ED9}
+ {F532AFBC-9E62-4A89-BB99-1044E4B2D8ED} = {5317807F-61D4-4E0F-B6DC-2D9F12621ED9}
+ {52FB7463-C128-42AF-A02F-78F48473EA9A} = {5317807F-61D4-4E0F-B6DC-2D9F12621ED9}
+ {7381D91E-5C72-48F0-AAB4-95C9B10D7484} = {5317807F-61D4-4E0F-B6DC-2D9F12621ED9}
+ {D36EC43E-B31F-4CF4-8285-93A7A9D90189} = {5317807F-61D4-4E0F-B6DC-2D9F12621ED9}
+ {274C0319-7E1E-4188-936B-8DF3331230B3} = {5317807F-61D4-4E0F-B6DC-2D9F12621ED9}
+ {41BBCC10-CFDE-48A1-B2E0-A0EC6A668629} = {5317807F-61D4-4E0F-B6DC-2D9F12621ED9}
+ {600C3D4F-0670-4DB4-B30F-520A729053B5} = {5317807F-61D4-4E0F-B6DC-2D9F12621ED9}
+ {11F33A39-74B7-4018-B5F9-CC285A673A8F} = {5317807F-61D4-4E0F-B6DC-2D9F12621ED9}
+ {A6F5E35E-B4A7-41B3-853A-75558E6E0715} = {5317807F-61D4-4E0F-B6DC-2D9F12621ED9}
+ {291B4975-8EFF-4C7C-8AF3-44A77B8491B8} = {5317807F-61D4-4E0F-B6DC-2D9F12621ED9}
+ {2F1B955B-275E-4D8E-8864-06FEC44D7912} = {AF5BEC5C-1F2B-4DA8-B12D-D09FE569237C}
+ {F5FC9279-DE63-4EF3-B31F-CFCEF9B11F71} = {AF5BEC5C-1F2B-4DA8-B12D-D09FE569237C}
+ {F2DB2E59-76BF-4D81-859A-AFC289C046C0} = {8D3C83B7-F1E0-4C2E-9E34-EE5F6AB2502A}
+ {3FE7E9B6-49AC-4246-A789-28DB4644567B} = {6C82BAAE-BDDF-457D-8FA8-7E2490B07035}
+ {EBBBF4A0-2DA2-4DE6-B4FE-C6654A2417A0} = {DA049009-21FF-4AC0-84E4-830DD1BCD0CE}
+ {191A5289-BA65-4638-A215-C521F0187313} = {DA049009-21FF-4AC0-84E4-830DD1BCD0CE}
+ {3CFF7AB8-32CB-4D6D-9FED-53DBEF277359} = {6C82BAAE-BDDF-457D-8FA8-7E2490B07035}
+ {8B1AF423-00F1-4924-AC54-F77D402D2AC9} = {6C82BAAE-BDDF-457D-8FA8-7E2490B07035}
+ {658A1B85-554E-4A5D-973A-FFE592CDD5F2} = {6C82BAAE-BDDF-457D-8FA8-7E2490B07035}
+ {27B110CC-43C0-400A-89D9-245E681647D7} = {8D3C83B7-F1E0-4C2E-9E34-EE5F6AB2502A}
+ {1DE84812-E143-4C4B-A61D-9267AAD55401} = {DA049009-21FF-4AC0-84E4-830DD1BCD0CE}
+ {4A87569C-4BD3-4113-B4B9-573D65B3D3F8} = {CC132A4D-D081-4C26-BFB9-AB11984054F8}
+ {769FF0C1-4424-4FA3-BC44-D7A7DA312A06} = {DA049009-21FF-4AC0-84E4-830DD1BCD0CE}
+ {6D9E00D8-2893-45E4-9363-3F7F61D416BD} = {AF5BEC5C-1F2B-4DA8-B12D-D09FE569237C}
+ {70B35F59-AFC2-4D8F-8833-5314D2047A81} = {5317807F-61D4-4E0F-B6DC-2D9F12621ED9}
+ {DFDE29A7-4F54-455D-B20B-D2BF79D3B3F7} = {5317807F-61D4-4E0F-B6DC-2D9F12621ED9}
+ {3755E9F4-CB48-4EC3-B561-3B85964EBDEF} = {5317807F-61D4-4E0F-B6DC-2D9F12621ED9}
+ {F81C5819-85B4-4D2E-B6DC-104A7634461B} = {CC132A4D-D081-4C26-BFB9-AB11984054F8}
+ {CC62F7DB-D089-4677-8575-CAB7A7815C43} = {6C82BAAE-BDDF-457D-8FA8-7E2490B07035}
+ {7AF97D44-707E-48DC-81CB-C9D8D7C9ED26} = {6C82BAAE-BDDF-457D-8FA8-7E2490B07035}
+ {A4B0D971-3CD6-41C9-8AB2-055D25A33373} = {CC132A4D-D081-4C26-BFB9-AB11984054F8}
+ {15CDD310-6980-42A6-8082-3A6B7730D13F} = {6C82BAAE-BDDF-457D-8FA8-7E2490B07035}
+ {71DB4284-5B1C-4E86-9AF5-B91542D44A6F} = {6C82BAAE-BDDF-457D-8FA8-7E2490B07035}
+ {4B39E5FC-0A96-4057-9AA5-8D5A52880DA7} = {AF5BEC5C-1F2B-4DA8-B12D-D09FE569237C}
+ {88DE5AD6-0074-4A5A-BE22-C840153E35D5} = {5317807F-61D4-4E0F-B6DC-2D9F12621ED9}
+ {A546E75A-5242-46E6-9A9E-6C91554EAB84} = {5317807F-61D4-4E0F-B6DC-2D9F12621ED9}
+ {EFA150D4-F93B-4D7D-A69C-9E8B4663BECD} = {5317807F-61D4-4E0F-B6DC-2D9F12621ED9}
+ {DF25E545-00FF-4E64-844C-7DF98991F901} = {278D8859-20B1-428F-8448-064F46E1F021}
+ {703BE7BA-5B99-4F70-806D-3A259F6A991E} = {278D8859-20B1-428F-8448-064F46E1F021}
+ {FAFEE2F9-24B0-4AF1-B512-433E9590033F} = {278D8859-20B1-428F-8448-064F46E1F021}
+ {8245DAD9-D402-4D5C-8F45-32229CD3B263} = {AF5BEC5C-1F2B-4DA8-B12D-D09FE569237C}
+ {41BBCC10-6FDE-48A1-B2E0-A0EC6A668629} = {5317807F-61D4-4E0F-B6DC-2D9F12621ED9}
+ {3A7FE53D-35F7-49DC-9C9A-A5204A53523F} = {AF5BEC5C-1F2B-4DA8-B12D-D09FE569237C}
+ {CCA63A76-D9FC-4130-9F67-4D97F9770D53} = {5317807F-61D4-4E0F-B6DC-2D9F12621ED9}
+ {D3493FFE-8873-4C53-8F6C-74DEF78EA3C4} = {5317807F-61D4-4E0F-B6DC-2D9F12621ED9}
+ {3384C257-3CFE-4A8F-838C-19DAC5C955DA} = {278D8859-20B1-428F-8448-064F46E1F021}
+ {2B140378-125F-4DE9-AC37-2CC1B73D7254} = {278D8859-20B1-428F-8448-064F46E1F021}
+ {F4C55B99-E1C5-496A-8AC2-40188C38F4F6} = {DA049009-21FF-4AC0-84E4-830DD1BCD0CE}
+ {2AA91EED-2D32-4B09-84A3-53D41EED1005} = {DA049009-21FF-4AC0-84E4-830DD1BCD0CE}
+ {EC0910F6-8D66-4509-BF57-A5EE7AE9485F} = {DA049009-21FF-4AC0-84E4-830DD1BCD0CE}
+ {921391C6-7626-4212-9928-BC82BC785461} = {AF5BEC5C-1F2B-4DA8-B12D-D09FE569237C}
+ {6B8C5711-6AB4-4023-9FDD-E9D976E8D18F} = {AF5BEC5C-1F2B-4DA8-B12D-D09FE569237C}
+ {4DF6D5E4-6796-4257-B466-BCD62DEBBCF8} = {5317807F-61D4-4E0F-B6DC-2D9F12621ED9}
+ {C54703BF-D68A-480D-BE27-49B62E45D582} = {5317807F-61D4-4E0F-B6DC-2D9F12621ED9}
+ {9CD8BCAD-F212-4BCC-BA98-899743CE3279} = {CC132A4D-D081-4C26-BFB9-AB11984054F8}
+ {0981CA28-E4A5-4DF1-987F-A41D09131EFC} = {6C82BAAE-BDDF-457D-8FA8-7E2490B07035}
+ {6B1A933E-71B8-4C1F-9E79-02D98830E671} = {6C82BAAE-BDDF-457D-8FA8-7E2490B07035}
+ {6BFF72EA-7362-4A3B-B6E5-9A3655BBBDA3} = {5317807F-61D4-4E0F-B6DC-2D9F12621ED9}
+ {6777EC3C-077C-42FC-B4AD-B799CE55CCE4} = {8D3C83B7-F1E0-4C2E-9E34-EE5F6AB2502A}
+ {A61DAD9C-271C-4E95-81AA-DB4CD58564D4} = {6C82BAAE-BDDF-457D-8FA8-7E2490B07035}
+ {49C67F03-1A56-4F96-B278-39B66EC93678} = {6C82BAAE-BDDF-457D-8FA8-7E2490B07035}
+ {D496308F-3C3C-40B3-A3ED-EA327D244B3E} = {8D3C83B7-F1E0-4C2E-9E34-EE5F6AB2502A}
+ {3B27F358-2679-4F38-B297-17B536F580BB} = {6C82BAAE-BDDF-457D-8FA8-7E2490B07035}
+ {718FCBD0-591D-448C-B7D5-9F1CA8544E7B} = {6C82BAAE-BDDF-457D-8FA8-7E2490B07035}
+ {19CA0070-B4B2-4394-90B7-D0C259AA35BA} = {6C82BAAE-BDDF-457D-8FA8-7E2490B07035}
+ {2CCCD9E4-9058-4291-BD89-39C979F0CA1E} = {278D8859-20B1-428F-8448-064F46E1F021}
+ {9DB1F875-6E65-4195-B23F-ED8095C0B99C} = {278D8859-20B1-428F-8448-064F46E1F021}
+ {52BA9067-A5FC-4CE8-82AD-7204ECFDEF9F} = {AF5BEC5C-1F2B-4DA8-B12D-D09FE569237C}
+ {8E132D5A-2C00-48D0-8747-97E41356F26F} = {278D8859-20B1-428F-8448-064F46E1F021}
+ {A4662163-83E7-4309-8CAA-B0BF13655FE6} = {AF5BEC5C-1F2B-4DA8-B12D-D09FE569237C}
+ {5F4B766F-DD52-4B53-B6C3-BC7611E17F20} = {278D8859-20B1-428F-8448-064F46E1F021}
+ {FF5F9EE9-29C5-40EE-BBCF-AE51B001FEC3} = {6C82BAAE-BDDF-457D-8FA8-7E2490B07035}
+ {0C442799-B09C-4CD1-9538-711B6E85E9BF} = {278D8859-20B1-428F-8448-064F46E1F021}
+ {DFB40A10-F8B7-412A-BCC3-5EE49294D816} = {278D8859-20B1-428F-8448-064F46E1F021}
+ {BB58A5FB-1A35-4471-86D0-A5189EC541B3} = {278D8859-20B1-428F-8448-064F46E1F021}
+ {61997220-5383-4AE5-ABD4-5F45AE1B0F2A} = {278D8859-20B1-428F-8448-064F46E1F021}
+ {7467E9AE-844F-444D-8A3F-17397544BA21} = {6C82BAAE-BDDF-457D-8FA8-7E2490B07035}
+ {497FDF54-9762-4048-A833-61CC3980A0FB} = {278D8859-20B1-428F-8448-064F46E1F021}
+ {29B00F47-BE91-4A1F-B87D-B1302F038316} = {8D3C83B7-F1E0-4C2E-9E34-EE5F6AB2502A}
+ {124935CC-73BB-489E-92E8-4F922A85DB5D} = {6C82BAAE-BDDF-457D-8FA8-7E2490B07035}
+ {AC215730-2B5F-4498-B7F5-5DB80AEFCA5F} = {278D8859-20B1-428F-8448-064F46E1F021}
+ {0835E6BF-0170-4E99-A55C-E06E1EF4C3B2} = {278D8859-20B1-428F-8448-064F46E1F021}
+ {EA4AD5A7-DB95-43C0-9A67-2D94146BCF91} = {278D8859-20B1-428F-8448-064F46E1F021}
+ {1ACC8236-EF4E-44B0-BD0C-AB1D95D5890F} = {6C82BAAE-BDDF-457D-8FA8-7E2490B07035}
+ {9DE2FC01-A839-4F89-8319-9071D4C54821} = {6C82BAAE-BDDF-457D-8FA8-7E2490B07035}
+ {2F578155-D51F-4C03-AB7F-5C5122CA46CC} = {6C82BAAE-BDDF-457D-8FA8-7E2490B07035}
+ {1C829D1A-892C-451C-AF0B-AC65C85F5CC6} = {5317807F-61D4-4E0F-B6DC-2D9F12621ED9}
+ {84DE22BB-C25F-425C-A7FE-0120CF107B83} = {278D8859-20B1-428F-8448-064F46E1F021}
+ {98152EDD-7E28-4FA3-89D8-B636ED5D5F65} = {5317807F-61D4-4E0F-B6DC-2D9F12621ED9}
+ {B7FDD40F-DDA4-468E-9C40-EEB175964A26} = {278D8859-20B1-428F-8448-064F46E1F021}
+ {028F0967-B253-45DA-B1C4-FACCE45D0D8D} = {AF5BEC5C-1F2B-4DA8-B12D-D09FE569237C}
+ {666346D7-C84B-498D-AE17-53B20C62DB1A} = {278D8859-20B1-428F-8448-064F46E1F021}
+ {AD66AA6A-1E36-4FF0-8670-4F9834BCDB91} = {6C82BAAE-BDDF-457D-8FA8-7E2490B07035}
+ {6C897101-BE52-4387-8AA2-062123A76BA1} = {6C82BAAE-BDDF-457D-8FA8-7E2490B07035}
+ {4E9D2828-EE83-40C8-97E0-137EEDFBAAAD} = {DA049009-21FF-4AC0-84E4-830DD1BCD0CE}
+ {2B3CED91-973F-4936-9DD4-CC8B1C8ACC68} = {CC132A4D-D081-4C26-BFB9-AB11984054F8}
+ {30011884-25EE-42C9-BB15-888CAFB1AA6E} = {AF5BEC5C-1F2B-4DA8-B12D-D09FE569237C}
+ {32FE2658-1D70-442E-8672-0AC5C6F0BD7B} = {278D8859-20B1-428F-8448-064F46E1F021}
+ {842B6472-4AA6-4C2B-A5E5-A62F80DE2C4F} = {278D8859-20B1-428F-8448-064F46E1F021}
+ {FC4DEBD2-4B17-4534-8EEA-BB24A2DBEB5F} = {DA049009-21FF-4AC0-84E4-830DD1BCD0CE}
+ {0653AFAF-5578-4C02-AF29-0C873E7634AE} = {278D8859-20B1-428F-8448-064F46E1F021}
+ {071E64F3-1396-4A97-97CA-98CAC059B168} = {5317807F-61D4-4E0F-B6DC-2D9F12621ED9}
+ {7883D076-CA8F-4FF7-8B5D-0DFF41CEF8FC} = {278D8859-20B1-428F-8448-064F46E1F021}
+ {1F4722E7-F78E-413F-A106-D3490211EA57} = {8D3C83B7-F1E0-4C2E-9E34-EE5F6AB2502A}
+ {0A0FC982-6E31-401F-BA77-3C5E8AB02C68} = {DA049009-21FF-4AC0-84E4-830DD1BCD0CE}
+ {DC163251-16C3-4B72-B965-ACDBA0F02BD1} = {278D8859-20B1-428F-8448-064F46E1F021}
+ {D35D2FDA-B53F-4F70-81CA-24D95812B89C} = {6C82BAAE-BDDF-457D-8FA8-7E2490B07035}
+ {F8DC77C0-556C-4672-B5B3-D2FA4ADC505C} = {DA049009-21FF-4AC0-84E4-830DD1BCD0CE}
+ {4250CE87-9AA0-43BB-AB47-0636548922B5} = {278D8859-20B1-428F-8448-064F46E1F021}
+ {AEA9D0D4-B810-4624-BC75-10A291584ED6} = {5317807F-61D4-4E0F-B6DC-2D9F12621ED9}
+ {AC751FE1-C986-4B6A-92A8-28ED89DEE671} = {AF5BEC5C-1F2B-4DA8-B12D-D09FE569237C}
+ {BB9C957D-34F1-46AE-B64A-9E0499C1746D} = {AF5BEC5C-1F2B-4DA8-B12D-D09FE569237C}
+ {4E7157E0-6CDB-47AE-A19A-FEC3876FA8A3} = {6C82BAAE-BDDF-457D-8FA8-7E2490B07035}
+ EndGlobalSection
+ GlobalSection(ExtensibilityGlobals) = postSolution
+ SolutionGuid = {E926C768-6307-4423-A1EC-57E95B1FAB29}
+ EndGlobalSection
+EndGlobal
diff --git a/src/platforms/rcore_desktop_glfw.c b/src/platforms/rcore_desktop_glfw.c
index 68a321ffd..af3e6b6c1 100644
--- a/src/platforms/rcore_desktop_glfw.c
+++ b/src/platforms/rcore_desktop_glfw.c
@@ -219,8 +219,9 @@ void ToggleFullscreen(void)
// and considered by GetWindowScaleDPI()
FLAG_CLEAR(CORE.Window.flags, FLAG_FULLSCREEN_MODE);
-#if !defined(__APPLE__)
+#if !defined(__APPLE__) && !defined(_GLFW_WAYLAND)
// Make sure to restore render size considering HighDPI scaling
+ // NOTE: On Wayland, GLFW_SCALE_FRAMEBUFFER handles scaling, skip manual resize
if (FLAG_IS_SET(CORE.Window.flags, FLAG_WINDOW_HIGHDPI))
{
Vector2 scaleDpi = GetWindowScaleDPI();
@@ -298,8 +299,9 @@ void ToggleBorderlessWindowed(void)
glfwSetWindowAttrib(platform.handle, GLFW_DECORATED, GLFW_TRUE);
FLAG_CLEAR(CORE.Window.flags, FLAG_WINDOW_UNDECORATED);
- #if !defined(__APPLE__)
+ #if !defined(__APPLE__) && !defined(_GLFW_WAYLAND)
// Make sure to restore size considering HighDPI scaling
+ // NOTE: On Wayland, GLFW_SCALE_FRAMEBUFFER handles scaling, skip manual resize
if (FLAG_IS_SET(CORE.Window.flags, FLAG_WINDOW_HIGHDPI))
{
Vector2 scaleDpi = GetWindowScaleDPI();
@@ -1464,6 +1466,11 @@ int InitPlatform(void)
glfwWindowHint(GLFW_SCALE_TO_MONITOR, GLFW_FALSE);
#if defined(__APPLE__)
glfwWindowHint(GLFW_SCALE_FRAMEBUFFER, GLFW_FALSE);
+#endif
+#if defined(_GLFW_WAYLAND) && !defined(_GLFW_X11)
+ // GLFW 3.4+ defaults GLFW_SCALE_FRAMEBUFFER to TRUE,
+ // causing framebuffer/window size mismatch on Wayland with display scaling
+ glfwWindowHint(GLFW_SCALE_FRAMEBUFFER, GLFW_FALSE);
#endif
}
@@ -1663,15 +1670,26 @@ int InitPlatform(void)
// NOTE: On APPLE platforms system manage window and input scaling
// Framebuffer scaling is activated with: glfwWindowHint(GLFW_SCALE_FRAMEBUFFER, GLFW_TRUE);
- // Screen scaling matrix is required in case desired screen area is different from display area
- CORE.Window.screenScale = MatrixScale(scaleDpi.x, scaleDpi.y, 1.0f);
-
#if !defined(__APPLE__)
- // Mouse input scaling for the new screen size
- SetMouseScale(1.0f/scaleDpi.x, 1.0f/scaleDpi.y);
+ if (glfwGetPlatform() == GLFW_PLATFORM_WAYLAND)
+ {
+ // On Wayland, GLFW_SCALE_FRAMEBUFFER handles scaling; read actual framebuffer size
+ // instead of resizing the window (which would double-scale)
+ int fbWidth = 0;
+ int fbHeight = 0;
+ glfwGetFramebufferSize(platform.handle, &fbWidth, &fbHeight);
+
+ CORE.Window.render.width = fbWidth;
+ CORE.Window.render.height = fbHeight;
+ }
+ else
+ {
+ // Mouse input scaling for the new screen size
+ SetMouseScale(1.0f/scaleDpi.x, 1.0f/scaleDpi.y);
- // Force window size (and framebuffer) refresh
- glfwSetWindowSize(platform.handle, CORE.Window.render.width, CORE.Window.render.height);
+ // Force window size (and framebuffer) refresh
+ glfwSetWindowSize(platform.handle, CORE.Window.render.width, CORE.Window.render.height);
+ }
#endif
}
else CORE.Window.render = CORE.Window.screen;
@@ -1855,6 +1873,26 @@ static void FramebufferSizeCallback(GLFWwindow *window, int width, int height)
CORE.Window.screen.height = height;
CORE.Window.screenScale = MatrixScale(1.0f, 1.0f, 1.0f);
SetMouseScale(1.0f, 1.0f);
+
+ // On Wayland with GLFW_SCALE_FRAMEBUFFER, the framebuffer is still scaled in fullscreen, use logical window size as screen and apply screenScale
+#if defined(_GLFW_WAYLAND) && !defined(_GLFW_X11)
+ if (FLAG_IS_SET(CORE.Window.flags, FLAG_WINDOW_HIGHDPI))
+ {
+ int winWidth = 0;
+ int winHeight = 0;
+ glfwGetWindowSize(platform.handle, &winWidth, &winHeight);
+
+ if ((winWidth != width) || (winHeight != height))
+ {
+ CORE.Window.screen.width = winWidth;
+ CORE.Window.screen.height = winHeight;
+ float scaleX = (float)width/winWidth;
+ float scaleY = (float)height/winHeight;
+
+ CORE.Window.screenScale = MatrixScale(scaleX, scaleY, 1.0f);
+ }
+ }
+#endif
}
else // Window mode (including borderless window)
{
@@ -1866,8 +1904,8 @@ static void FramebufferSizeCallback(GLFWwindow *window, int width, int height)
CORE.Window.screen.width = (int)((float)width/scaleDpi.x);
CORE.Window.screen.height = (int)((float)height/scaleDpi.y);
CORE.Window.screenScale = MatrixScale(scaleDpi.x, scaleDpi.y, 1.0f);
-#if !defined(__APPLE__)
- // Mouse input scaling for the new screen size
+#if !defined(__APPLE__) && !defined(_GLFW_WAYLAND)
+ // On macOS and Linux-Wayland, mouse coords are already in logical space
SetMouseScale(1.0f/scaleDpi.x, 1.0f/scaleDpi.y);
#endif
}
@@ -1896,8 +1934,8 @@ static void WindowContentScaleCallback(GLFWwindow *window, float scalex, float s
// Framebuffer scaling is activated with: glfwWindowHint(GLFW_SCALE_FRAMEBUFFER, GLFW_TRUE);
CORE.Window.screenScale = MatrixScale(scalex, scaley, 1.0f);
-#if !defined(__APPLE__)
- // Mouse input scaling for the new screen size
+#if !defined(__APPLE__) && !defined(_GLFW_WAYLAND)
+ // On macOS and Linux-Wayland, mouse coords are already in logical space
SetMouseScale(1.0f/scalex, 1.0f/scaley);
#endif
}
diff --git a/src/raylib.h b/src/raylib.h
index f9c504680..06138ceca 100644
--- a/src/raylib.h
+++ b/src/raylib.h
@@ -1621,6 +1621,8 @@ RLAPI void SetModelMeshMaterial(Model *model, int meshId, int materialId);
RLAPI ModelAnimation *LoadModelAnimations(const char *fileName, int *animCount); // Load model animations from file
RLAPI void UpdateModelAnimation(Model model, ModelAnimation anim, int frame); // Update model animation pose (CPU)
RLAPI void UpdateModelAnimationBones(Model model, ModelAnimation anim, int frame); // Update model animation mesh bone matrices (GPU skinning)
+RLAPI void UpdateModelAnimationBonesLerp(Model model, ModelAnimation animA, int frameA, ModelAnimation animB, int frameB, float value); // Update model animation mesh bone matrices with interpolation between two poses(GPU skinning)
+RLAPI void UpdateModelVertsToCurrentBones(Model model); // Update model vertices according to mesh bone matrices (CPU)
RLAPI void UnloadModelAnimation(ModelAnimation anim); // Unload animation data
RLAPI void UnloadModelAnimations(ModelAnimation *animations, int animCount); // Unload animation array data
RLAPI bool IsModelAnimationValid(Model model, ModelAnimation anim); // Check model animation skeleton match
diff --git a/src/rcore.c b/src/rcore.c
index 49a928372..c29fb1e19 100644
--- a/src/rcore.c
+++ b/src/rcore.c
@@ -682,8 +682,6 @@ void InitWindow(int width, int height, const char *title)
// Initialize window data
CORE.Window.screen.width = width;
CORE.Window.screen.height = height;
- CORE.Window.currentFbo.width = CORE.Window.screen.width;
- CORE.Window.currentFbo.height = CORE.Window.screen.height;
CORE.Window.eventWaiting = false;
CORE.Window.screenScale = MatrixIdentity(); // No draw scaling required by default
@@ -709,10 +707,10 @@ void InitWindow(int width, int height, const char *title)
// Initialize rlgl default data (buffers and shaders)
// NOTE: Current fbo size stored as globals in rlgl for convenience
- rlglInit(CORE.Window.currentFbo.width, CORE.Window.currentFbo.height);
+ rlglInit(CORE.Window.render.width, CORE.Window.render.height);
// Setup default viewport
- SetupViewport(CORE.Window.currentFbo.width, CORE.Window.currentFbo.height);
+ SetupViewport(CORE.Window.render.width, CORE.Window.render.height);
#if defined(SUPPORT_MODULE_RTEXT)
#if defined(SUPPORT_DEFAULT_FONT)
@@ -2775,6 +2773,8 @@ FilePathList LoadDirectoryFilesEx(const char *basePath, const char *filter, bool
if (DirectoryExists(basePath)) // It's a directory
{
+ if ((filter != NULL) && (filter[0] == '\0')) filter = NULL;
+
// SCAN 1: Count files
unsigned int fileCounter = GetDirectoryFileCountEx(basePath, filter, scanSubdirs);
diff --git a/src/rlgl.h b/src/rlgl.h
index d05bc42cb..3168b6a63 100644
--- a/src/rlgl.h
+++ b/src/rlgl.h
@@ -3432,6 +3432,13 @@ unsigned int rlLoadTextureDepth(int width, int height, bool useRenderBuffer)
else glInternalFormat = GL_DEPTH_COMPONENT16;
}
#endif
+#if defined(GRAPHICS_API_OPENGL_ES3)
+ // NOTE: This sized internal format should also work for WebGL 2.0
+ // WARNING: Specification only allows GL_DEPTH_COMPONENT32F for GL_FLOAT type
+ // REF: https://registry.khronos.org/OpenGL-Refpages/es3.0/html/glTexImage2D.xhtml
+ if (RLGL.ExtSupported.maxDepthBits == 24) glInternalFormat = GL_DEPTH_COMPONENT24;
+ else glInternalFormat = GL_DEPTH_COMPONENT16;
+#endif
if (!useRenderBuffer && RLGL.ExtSupported.texDepth)
{
diff --git a/src/rmodels.c b/src/rmodels.c
index eadc16f07..b90b6a53f 100644
--- a/src/rmodels.c
+++ b/src/rmodels.c
@@ -2346,12 +2346,70 @@ void UpdateModelAnimationBones(Model model, ModelAnimation anim, int frame)
}
}
-// at least 2x speed up vs the old method
-// Update model animated vertex data (positions and normals) for a given frame
-// NOTE: Updated data is uploaded to GPU
-void UpdateModelAnimation(Model model, ModelAnimation anim, int frame)
+// Update model animated bones transform matrices by interpolating between two different given frames of different ModelAnimation(could be same too)
+// NOTE: Updated data is not uploaded to GPU but kept at model.meshes[i].boneMatrices[boneId],
+// to be uploaded to shader at drawing, in case GPU skinning is enabled
+void UpdateModelAnimationBonesLerp(Model model, ModelAnimation animA, int frameA, ModelAnimation animB, int frameB, float value)
{
- UpdateModelAnimationBones(model,anim,frame);
+ if ((animA.frameCount > 0) && (animA.bones != NULL) && (animA.framePoses != NULL) &&
+ (animB.frameCount > 0) && (animB.bones != NULL) && (animB.framePoses != NULL) &&
+ (value >= 0.0f) && (value <= 1.0f))
+ {
+ frameA = frameA % animA.frameCount;
+ frameB = frameB % animB.frameCount;
+
+ for (int i = 0; i < model.meshCount; i++)
+ {
+ if (model.meshes[i].boneMatrices)
+ {
+ assert(model.meshes[i].boneCount == animA.boneCount);
+ assert(model.meshes[i].boneCount == animB.boneCount);
+
+ for (int boneId = 0; boneId < model.meshes[i].boneCount; boneId++)
+ {
+ Vector3 inTranslation = model.bindPose[boneId].translation;
+ Quaternion inRotation = model.bindPose[boneId].rotation;
+ Vector3 inScale = model.bindPose[boneId].scale;
+
+ Vector3 outATranslation = animA.framePoses[frameA][boneId].translation;
+ Quaternion outARotation = animA.framePoses[frameA][boneId].rotation;
+ Vector3 outAScale = animA.framePoses[frameA][boneId].scale;
+
+ Vector3 outBTranslation = animB.framePoses[frameB][boneId].translation;
+ Quaternion outBRotation = animB.framePoses[frameB][boneId].rotation;
+ Vector3 outBScale = animB.framePoses[frameB][boneId].scale;
+
+ Vector3 outTranslation = Vector3Lerp(outATranslation, outBTranslation, value);
+ Quaternion outRotation = QuaternionSlerp(outARotation, outBRotation, value);
+ Vector3 outScale = Vector3Lerp(outAScale, outBScale, value);
+
+ Vector3 invTranslation = Vector3RotateByQuaternion(Vector3Negate(inTranslation), QuaternionInvert(inRotation));
+ Quaternion invRotation = QuaternionInvert(inRotation);
+ Vector3 invScale = Vector3Divide((Vector3){ 1.0f, 1.0f, 1.0f }, inScale);
+
+ Vector3 boneTranslation = Vector3Add(
+ Vector3RotateByQuaternion(Vector3Multiply(outScale, invTranslation),
+ outRotation), outTranslation);
+ Quaternion boneRotation = QuaternionMultiply(outRotation, invRotation);
+ Vector3 boneScale = Vector3Multiply(outScale, invScale);
+
+ Matrix boneMatrix = MatrixMultiply(MatrixMultiply(
+ QuaternionToMatrix(boneRotation),
+ MatrixTranslate(boneTranslation.x, boneTranslation.y, boneTranslation.z)),
+ MatrixScale(boneScale.x, boneScale.y, boneScale.z));
+
+ model.meshes[i].boneMatrices[boneId] = boneMatrix;
+ }
+ }
+ }
+ }
+}
+
+// Update model vertex data (positions and normals) from mesh bone data
+// NOTE: Updated data is uploaded to GPU
+void UpdateModelVertsToCurrentBones(Model model)
+{
+ //UpdateModelAnimationBones(model, anim, frame); // TODO: Review
for (int m = 0; m < model.meshCount; m++)
{
@@ -2416,6 +2474,15 @@ void UpdateModelAnimation(Model model, ModelAnimation anim, int frame)
}
}
+// at least 2x speed up vs the old method
+// Update model animated vertex data (positions and normals) for a given frame
+// NOTE: Updated data is uploaded to GPU
+void UpdateModelAnimation(Model model, ModelAnimation anim, int frame)
+{
+ UpdateModelAnimationBones(model,anim,frame);
+ UpdateModelVertsToCurrentBones(model);
+}
+
// Unload animation array data
void UnloadModelAnimations(ModelAnimation *animations, int animCount)
{
@@ -5373,6 +5440,7 @@ static Model LoadGLTF(const char *fileName)
if (result != cgltf_result_success) TRACELOG(LOG_INFO, "MODEL: [%s] Failed to load mesh/material buffers", fileName);
int primitivesCount = 0;
+ bool dracoCompression = false;
// NOTE: We will load every primitive in the glTF as a separate raylib Mesh
// Determine total number of meshes needed from the node hierarchy
@@ -5384,9 +5452,22 @@ static Model LoadGLTF(const char *fileName)
for (unsigned int p = 0; p < mesh->primitives_count; p++)
{
- if (mesh->primitives[p].type == cgltf_primitive_type_triangles) primitivesCount++;
+ if (mesh->primitives[p].has_draco_mesh_compression)
+ {
+ dracoCompression = true;
+ TRACELOG(LOG_WARNING, "MODEL: [%s] Failed to load mesh data, Draco compression not supported", fileName);
+ break;
+ }
+ else if (mesh->primitives[p].type == cgltf_primitive_type_triangles) primitivesCount++;
}
}
+
+ if (dracoCompression)
+ {
+ return model;
+ TRACELOG(LOG_WARNING, "MODEL: [%s] Failed to load glTF data", fileName);
+ }
+
TRACELOG(LOG_DEBUG, " > Primitives (triangles only) count based on hierarchy : %i", primitivesCount);
// Load our model data: meshes and materials
diff --git a/src/rtext.c b/src/rtext.c
index 8e7fafec2..e0aa4fddd 100644
--- a/src/rtext.c
+++ b/src/rtext.c
@@ -796,7 +796,7 @@ Image GenImageFontAtlas(const GlyphInfo *glyphs, Rectangle **glyphRecs, int glyp
if (glyphs == NULL)
{
- TRACELOG(LOG_WARNING, "FONT: Provided chars info not valid, returning empty image atlas");
+ TRACELOG(LOG_WARNING, "FONT: Provided glyphs info not valid, returning empty image atlas");
return atlas;
}
@@ -818,25 +818,11 @@ Image GenImageFontAtlas(const GlyphInfo *glyphs, Rectangle **glyphRecs, int glyp
totalWidth += glyphs[i].image.width + 2*padding;
}
-//#define SUPPORT_FONT_ATLAS_SIZE_CONSERVATIVE
-#if defined(SUPPORT_FONT_ATLAS_SIZE_CONSERVATIVE)
- int rowCount = 0;
- int imageSize = 64; // Define minimum starting value to avoid unnecessary calculation steps for very small images
-
- // NOTE: maxGlyphWidth is maximum possible space left at the end of row
- while (totalWidth > (imageSize - maxGlyphWidth)*rowCount)
- {
- imageSize *= 2; // Double the size of image (to keep POT)
- rowCount = imageSize/(fontSize + 2*padding); // Calculate new row count for the new image size
- }
-
- atlas.width = imageSize; // Atlas bitmap width
- atlas.height = imageSize; // Atlas bitmap height
-#else
int paddedFontSize = fontSize + 2*padding;
- // No need for a so-conservative atlas generation
- // NOTE: Multiplying total expected are by 1.2f scale factor
+ // Estimate image atlas size from available data
+ // NOTE: Multiplying total expected area by 1.2f scale factor but in case
+ // some glyphs do not fit, the atlas height is scaled x2 to fit them
float totalArea = totalWidth*paddedFontSize*1.2f;
float imageMinSize = sqrtf(totalArea);
int imageSize = (int)powf(2, ceilf(logf(imageMinSize)/logf(2)));
@@ -851,7 +837,6 @@ Image GenImageFontAtlas(const GlyphInfo *glyphs, Rectangle **glyphRecs, int glyp
atlas.width = imageSize; // Atlas bitmap width
atlas.height = imageSize; // Atlas bitmap height
}
-#endif
int atlasDataSize = atlas.width*atlas.height; // Save total size for bounds checking
atlas.data = (unsigned char *)RL_CALLOC(atlasDataSize, 1); // Create a bitmap to store characters (8 bpp)
@@ -881,16 +866,17 @@ Image GenImageFontAtlas(const GlyphInfo *glyphs, Rectangle **glyphRecs, int glyp
if (offsetY > (atlas.height - fontSize - padding))
{
- for (int j = i + 1; j < glyphCount; j++)
- {
- TRACELOG(LOG_WARNING, "FONT: Failed to package character (0x%02x)", glyphs[j].value);
- // Make sure remaining recs contain valid data
- recs[j].x = 0;
- recs[j].y = 0;
- recs[j].width = 0;
- recs[j].height = 0;
- }
- break; // Break for() loop, stop processing glyphs
+ TRACELOG(LOG_WARNING, "FONT: Updating atlas size to fit all characters");
+
+ // TODO: Increment atlas size (atlas.height*2) and continue adding glyphs
+ int updatedAtlasHeight = atlas.height*2;
+ int updatedAtlasDataSize = atlas.width*atlas.height;
+ unsigned char *updatedAtlasData = (unsigned char *)RL_CALLOC(updatedAtlasDataSize, 1);
+
+ memcpy(updatedAtlasData, atlas.data, atlasDataSize);
+ RL_FREE(atlas.data);
+ atlas.height = updatedAtlasHeight;
+ atlasDataSize = updatedAtlasDataSize;
}
}
@@ -967,7 +953,7 @@ Image GenImageFontAtlas(const GlyphInfo *glyphs, Rectangle **glyphRecs, int glyp
}
}
}
- else TRACELOG(LOG_WARNING, "FONT: Failed to package character (0x%02x)", glyphs[i].value);
+ else TRACELOG(LOG_WARNING, "FONT: Failed to package glyph (0x%02x)", glyphs[i].value);
}
RL_FREE(rects);
diff --git a/tools/rexm/reports/examples_issues.md b/tools/rexm/reports/examples_issues.md
index 081170806..3fcc136e5 100644
--- a/tools/rexm/reports/examples_issues.md
+++ b/tools/rexm/reports/examples_issues.md
@@ -20,10 +20,4 @@ Example elements validated:
```
| **EXAMPLE NAME** | [C] | [CAT]| [INFO]|[PNG]|[WPNG]| [RES]| [MK] |[MKWEB]| [VCX]| [SOL]|[RDME]|[JS] | [WOUT]|[WMETA]|
|:---------------------------------|:---:|:----:|:-----:|:---:|:----:|:----:|:----:|:-----:|:----:|:----:|:----:|:---:|:-----:|:-----:|
-| core_highdpi_testbed | ✔ | ✔ | ✔ | ✔ | ❌ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ |
-| rlgl_standalone | ✔ | ❌ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ |
-| rlgl_compute_shader | ✔ | ❌ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ |
-| easings_testbed | ✔ | ❌ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ |
-| raylib_opengl_interop | ✔ | ❌ | ❌ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ❌ | ✔ | ✔ | ✔ | ✔ |
-| embedded_files_loading | ✔ | ❌ | ✔ | ✔ | ✔ | ❌ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ |
-| web_basic_window | ✔ | ❌ | ❌ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ |
+| models_animation_bone_blending | ✔ | ✔ | ✔ | ❌ | ❌ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ |
diff --git a/tools/rexm/reports/examples_validation.md b/tools/rexm/reports/examples_validation.md
index d8f4a9521..9c0c02956 100644
--- a/tools/rexm/reports/examples_validation.md
+++ b/tools/rexm/reports/examples_validation.md
@@ -62,12 +62,13 @@ Example elements validated:
| core_viewport_scaling | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ |
| core_input_actions | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ |
| core_directory_files | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ |
-| core_highdpi_testbed | ✔ | ✔ | ✔ | ✔ | ❌ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ |
+| core_highdpi_testbed | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ |
| core_screen_recording | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ |
| core_clipboard_text | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ |
| core_text_file_loading | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ |
| core_compute_hash | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ |
| core_keyboard_testbed | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ |
+| core_window_web | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ |
| shapes_basic_shapes | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ |
| shapes_bouncing_ball | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ |
| shapes_bullet_hell | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ |
@@ -107,6 +108,7 @@ Example elements validated:
| shapes_ball_physics | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ |
| shapes_penrose_tile | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ |
| shapes_hilbert_curve | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ |
+| shapes_easings_testbed | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ |
| textures_logo_raylib | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ |
| textures_srcrec_dstrec | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ |
| textures_image_drawing | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ |
@@ -180,6 +182,8 @@ Example elements validated:
| models_rotating_cube | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ |
| models_decals | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ |
| models_directional_billboard | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ |
+| models_animation_bone_blending | ✔ | ✔ | ✔ | ❌ | ❌ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ |
+| models_animation_blending | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ |
| shaders_ascii_rendering | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ |
| shaders_basic_lighting | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ |
| shaders_model_shader | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ |
@@ -213,6 +217,7 @@ Example elements validated:
| shaders_rounded_rectangle | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ |
| shaders_depth_rendering | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ |
| shaders_game_of_life | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ |
+| shaders_rlgl_compute | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ |
| audio_module_playing | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ |
| audio_music_stream | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ |
| audio_raw_stream | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ |
@@ -222,9 +227,3 @@ Example elements validated:
| audio_sound_multi | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ |
| audio_sound_positioning | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ |
| audio_spectrum_visualizer | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ |
-| rlgl_standalone | ✔ | ❌ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ |
-| rlgl_compute_shader | ✔ | ❌ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ |
-| easings_testbed | ✔ | ❌ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ |
-| raylib_opengl_interop | ✔ | ❌ | ❌ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ❌ | ✔ | ✔ | ✔ | ✔ |
-| embedded_files_loading | ✔ | ❌ | ✔ | ✔ | ✔ | ❌ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ |
-| web_basic_window | ✔ | ❌ | ❌ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ |
diff --git a/tools/rexm/rexm.c b/tools/rexm/rexm.c
index 70001a5f3..30ef6411f 100644
--- a/tools/rexm/rexm.c
+++ b/tools/rexm/rexm.c
@@ -63,7 +63,7 @@
#endif
#define REXM_MAX_EXAMPLES 512
-#define REXM_MAX_EXAMPLE_CATEGORIES 8
+#define REXM_MAX_EXAMPLE_CATEGORIES 7
#define REXM_MAX_BUFFER_SIZE (2*1024*1024) // 2MB
@@ -83,7 +83,7 @@
//----------------------------------------------------------------------------------
// raylib example info struct
typedef struct {
- char category[16]; // Example category: core, shapes, textures, text, models, shaders, audio, [others]
+ char category[16]; // Example category: core, shapes, textures, text, models, shaders, audio
char name[128]; // Example name: _name_part
int stars; // Example stars count: ★☆☆☆
char verCreated[12]; // Example raylib creation version
@@ -151,7 +151,7 @@ typedef enum {
OP_TESTLOG = 9, // Process available examples logs to generate report
} rlExampleOperation;
-static const char *exCategories[REXM_MAX_EXAMPLE_CATEGORIES] = { "core", "shapes", "textures", "text", "models", "shaders", "audio", "others" };
+static const char *exCategories[REXM_MAX_EXAMPLE_CATEGORIES] = { "core", "shapes", "textures", "text", "models", "shaders", "audio" };
// Paths required for examples management
// NOTE: Paths can be provided with environment variables
@@ -170,7 +170,7 @@ static const char *exVSProjectSolutionFile = NULL; // Env REXM_EXAMPLES_VS2022_S
static int UpdateRequiredFiles(void);
// Load examples collection information
-// NOTE 1: Load by category: "ALL", "core", "shapes", "textures", "text", "models", "shaders", others"
+// NOTE 1: Load by category: "ALL", "core", "shapes", "textures", "text", "models", "shaders", audio"
// NOTE 2: Sort examples list on request flag
static rlExampleInfo *LoadExampleData(const char *filter, bool sort, int *exCount);
static void UnloadExampleData(rlExampleInfo *exInfo);
@@ -590,7 +590,6 @@ int main(int argc, char *argv[])
else if (TextIsEqual(exCategory, "models")) nextCategoryIndex = 5;
else if (TextIsEqual(exCategory, "shaders")) nextCategoryIndex = 6;
else if (TextIsEqual(exCategory, "audio")) nextCategoryIndex = 7;
- else if (TextIsEqual(exCategory, "others")) nextCategoryIndex = -1; // Add to EOF
// Get required example info from example file header (if provided)
@@ -1039,7 +1038,7 @@ int main(int argc, char *argv[])
if (nextCatIndex > (REXM_MAX_EXAMPLE_CATEGORIES - 1)) nextCatIndex = -1; // EOF
// Find position to add new example on list, just before the following category
- // Category order: core, shapes, textures, text, models, shaders, audio, [others]
+ // Category order: core, shapes, textures, text, models, shaders, audio
int exListNextCatIndex = -1;
if (nextCatIndex != -1) exListNextCatIndex = TextFindIndex(exList, exCategories[nextCatIndex]);
else exListNextCatIndex = exListLen; // EOF
@@ -1972,7 +1971,6 @@ static int UpdateRequiredFiles(void)
//------------------------------------------------------------------------------------------------
// Edit: raylib/examples/Makefile.Web --> Update from collection
- // NOTE: We avoid the "others" category on web building
//------------------------------------------------------------------------------------------------
LOG("INFO: Updating raylib/examples/Makefile.Web\n");
char *mkwText = LoadFileText(TextFormat("%s/Makefile.Web", exBasePath));
@@ -1985,8 +1983,7 @@ static int UpdateRequiredFiles(void)
memcpy(mkwTextUpdated, mkwText, mkwListStartIndex);
mkwIndex = sprintf(mkwTextUpdated + mkwListStartIndex, "#EXAMPLES_LIST_START\n");
- // NOTE: We avoid the "others" category on web building
- for (int i = 0; i < REXM_MAX_EXAMPLE_CATEGORIES - 1; i++)
+ for (int i = 0; i < REXM_MAX_EXAMPLE_CATEGORIES; i++)
{
mkwIndex += sprintf(mkwTextUpdated + mkwListStartIndex + mkwIndex, TextFormat("%s = \\\n", TextToUpper(exCategories[i])));
@@ -2011,8 +2008,7 @@ static int UpdateRequiredFiles(void)
mkwIndex += sprintf(mkwTextUpdated + mkwListStartIndex + mkwIndex, "shaders: $(SHADERS)\n");
mkwIndex += sprintf(mkwTextUpdated + mkwListStartIndex + mkwIndex, "audio: $(AUDIO)\n\n");
- // NOTE: We avoid the "others" category on web building
- for (int i = 0; i < REXM_MAX_EXAMPLE_CATEGORIES - 1; i++)
+ for (int i = 0; i < REXM_MAX_EXAMPLE_CATEGORIES; i++)
{
mkwIndex += sprintf(mkwTextUpdated + mkwListStartIndex + mkwIndex, TextFormat("# Compile %s examples\n", TextToUpper(exCategories[i])));
@@ -2159,12 +2155,6 @@ static int UpdateRequiredFiles(void)
mdIndex += sprintf(mdTextUpdated + mdListStartIndex + mdIndex,
"Examples using raylib audio functionality, including sound/music loading and playing. This functionality is provided by raylib [raudio](../src/raudio.c) module. Note this module can be used standalone independently of raylib.\n\n");
}
- else if (i == 7) // "others"
- {
- mdIndex += sprintf(mdTextUpdated + mdListStartIndex + mdIndex, TextFormat("\n### category: others [%i]\n\n", exCollectionCount));
- mdIndex += sprintf(mdTextUpdated + mdListStartIndex + mdIndex,
- "Examples showing raylib misc functionality that does not fit in other categories, like standalone modules usage or examples integrating external libraries.\n\n");
- }
// Table header required
mdIndex += sprintf(mdTextUpdated + mdListStartIndex + mdIndex, "| example | image | difficulty
level | version
created | last version
updated | original
developer |\n");
@@ -2227,8 +2217,7 @@ static int UpdateRequiredFiles(void)
char starsText[16] = { 0 };
- // NOTE: We avoid "others" category
- for (int i = 0; i < REXM_MAX_EXAMPLE_CATEGORIES - 1; i++)
+ for (int i = 0; i < REXM_MAX_EXAMPLE_CATEGORIES; i++)
{
int exCollectionCount = 0;
rlExampleInfo *exCollection = LoadExampleData(exCategories[i], false, &exCollectionCount);
@@ -2295,8 +2284,7 @@ static rlExampleInfo *LoadExampleData(const char *filter, bool sort, int *exCoun
(lines[i][0] == 's') || // shapes, shaders
(lines[i][0] == 't') || // textures, text
(lines[i][0] == 'm') || // models
- (lines[i][0] == 'a') || // audio
- (lines[i][0] == 'o'))) // TODO: Get others category?
+ (lines[i][0] == 'a'))) // audio
{
rlExampleInfo info = { 0 };
int result = ParseExampleInfoLine(lines[i], &info);
diff --git a/tools/rlparser/output/raylib_api.json b/tools/rlparser/output/raylib_api.json
index 96875fe87..f102abb1d 100644
--- a/tools/rlparser/output/raylib_api.json
+++ b/tools/rlparser/output/raylib_api.json
@@ -11436,6 +11436,48 @@
}
]
},
+ {
+ "name": "UpdateModelAnimationBonesLerp",
+ "description": "Update model animation mesh bone matrices with interpolation between two poses(GPU skinning)",
+ "returnType": "void",
+ "params": [
+ {
+ "type": "Model",
+ "name": "model"
+ },
+ {
+ "type": "ModelAnimation",
+ "name": "animA"
+ },
+ {
+ "type": "int",
+ "name": "frameA"
+ },
+ {
+ "type": "ModelAnimation",
+ "name": "animB"
+ },
+ {
+ "type": "int",
+ "name": "frameB"
+ },
+ {
+ "type": "float",
+ "name": "value"
+ }
+ ]
+ },
+ {
+ "name": "UpdateModelVertsToCurrentBones",
+ "description": "Update model vertices according to mesh bone matrices (CPU)",
+ "returnType": "void",
+ "params": [
+ {
+ "type": "Model",
+ "name": "model"
+ }
+ ]
+ },
{
"name": "UnloadModelAnimation",
"description": "Unload animation data",
diff --git a/tools/rlparser/output/raylib_api.lua b/tools/rlparser/output/raylib_api.lua
index a1f79cbe6..3707896bb 100644
--- a/tools/rlparser/output/raylib_api.lua
+++ b/tools/rlparser/output/raylib_api.lua
@@ -7812,6 +7812,27 @@ return {
{type = "int", name = "frame"}
}
},
+ {
+ name = "UpdateModelAnimationBonesLerp",
+ description = "Update model animation mesh bone matrices with interpolation between two poses(GPU skinning)",
+ returnType = "void",
+ params = {
+ {type = "Model", name = "model"},
+ {type = "ModelAnimation", name = "animA"},
+ {type = "int", name = "frameA"},
+ {type = "ModelAnimation", name = "animB"},
+ {type = "int", name = "frameB"},
+ {type = "float", name = "value"}
+ }
+ },
+ {
+ name = "UpdateModelVertsToCurrentBones",
+ description = "Update model vertices according to mesh bone matrices (CPU)",
+ returnType = "void",
+ params = {
+ {type = "Model", name = "model"}
+ }
+ },
{
name = "UnloadModelAnimation",
description = "Unload animation data",
diff --git a/tools/rlparser/output/raylib_api.txt b/tools/rlparser/output/raylib_api.txt
index e7ff4c98b..9c25843f5 100644
--- a/tools/rlparser/output/raylib_api.txt
+++ b/tools/rlparser/output/raylib_api.txt
@@ -992,7 +992,7 @@ Callback 006: AudioCallback() (2 input parameters)
Param[1]: bufferData (type: void *)
Param[2]: frames (type: unsigned int)
-Functions found: 599
+Functions found: 601
Function 001: InitWindow() (3 input parameters)
Name: InitWindow
@@ -4354,24 +4354,39 @@ Function 522: UpdateModelAnimationBones() (3 input parameters)
Param[1]: model (type: Model)
Param[2]: anim (type: ModelAnimation)
Param[3]: frame (type: int)
-Function 523: UnloadModelAnimation() (1 input parameters)
+Function 523: UpdateModelAnimationBonesLerp() (6 input parameters)
+ Name: UpdateModelAnimationBonesLerp
+ Return type: void
+ Description: Update model animation mesh bone matrices with interpolation between two poses(GPU skinning)
+ Param[1]: model (type: Model)
+ Param[2]: animA (type: ModelAnimation)
+ Param[3]: frameA (type: int)
+ Param[4]: animB (type: ModelAnimation)
+ Param[5]: frameB (type: int)
+ Param[6]: value (type: float)
+Function 524: UpdateModelVertsToCurrentBones() (1 input parameters)
+ Name: UpdateModelVertsToCurrentBones
+ Return type: void
+ Description: Update model vertices according to mesh bone matrices (CPU)
+ Param[1]: model (type: Model)
+Function 525: UnloadModelAnimation() (1 input parameters)
Name: UnloadModelAnimation
Return type: void
Description: Unload animation data
Param[1]: anim (type: ModelAnimation)
-Function 524: UnloadModelAnimations() (2 input parameters)
+Function 526: UnloadModelAnimations() (2 input parameters)
Name: UnloadModelAnimations
Return type: void
Description: Unload animation array data
Param[1]: animations (type: ModelAnimation *)
Param[2]: animCount (type: int)
-Function 525: IsModelAnimationValid() (2 input parameters)
+Function 527: IsModelAnimationValid() (2 input parameters)
Name: IsModelAnimationValid
Return type: bool
Description: Check model animation skeleton match
Param[1]: model (type: Model)
Param[2]: anim (type: ModelAnimation)
-Function 526: CheckCollisionSpheres() (4 input parameters)
+Function 528: CheckCollisionSpheres() (4 input parameters)
Name: CheckCollisionSpheres
Return type: bool
Description: Check collision between two spheres
@@ -4379,40 +4394,40 @@ Function 526: CheckCollisionSpheres() (4 input parameters)
Param[2]: radius1 (type: float)
Param[3]: center2 (type: Vector3)
Param[4]: radius2 (type: float)
-Function 527: CheckCollisionBoxes() (2 input parameters)
+Function 529: CheckCollisionBoxes() (2 input parameters)
Name: CheckCollisionBoxes
Return type: bool
Description: Check collision between two bounding boxes
Param[1]: box1 (type: BoundingBox)
Param[2]: box2 (type: BoundingBox)
-Function 528: CheckCollisionBoxSphere() (3 input parameters)
+Function 530: CheckCollisionBoxSphere() (3 input parameters)
Name: CheckCollisionBoxSphere
Return type: bool
Description: Check collision between box and sphere
Param[1]: box (type: BoundingBox)
Param[2]: center (type: Vector3)
Param[3]: radius (type: float)
-Function 529: GetRayCollisionSphere() (3 input parameters)
+Function 531: GetRayCollisionSphere() (3 input parameters)
Name: GetRayCollisionSphere
Return type: RayCollision
Description: Get collision info between ray and sphere
Param[1]: ray (type: Ray)
Param[2]: center (type: Vector3)
Param[3]: radius (type: float)
-Function 530: GetRayCollisionBox() (2 input parameters)
+Function 532: GetRayCollisionBox() (2 input parameters)
Name: GetRayCollisionBox
Return type: RayCollision
Description: Get collision info between ray and box
Param[1]: ray (type: Ray)
Param[2]: box (type: BoundingBox)
-Function 531: GetRayCollisionMesh() (3 input parameters)
+Function 533: GetRayCollisionMesh() (3 input parameters)
Name: GetRayCollisionMesh
Return type: RayCollision
Description: Get collision info between ray and mesh
Param[1]: ray (type: Ray)
Param[2]: mesh (type: Mesh)
Param[3]: transform (type: Matrix)
-Function 532: GetRayCollisionTriangle() (4 input parameters)
+Function 534: GetRayCollisionTriangle() (4 input parameters)
Name: GetRayCollisionTriangle
Return type: RayCollision
Description: Get collision info between ray and triangle
@@ -4420,7 +4435,7 @@ Function 532: GetRayCollisionTriangle() (4 input parameters)
Param[2]: p1 (type: Vector3)
Param[3]: p2 (type: Vector3)
Param[4]: p3 (type: Vector3)
-Function 533: GetRayCollisionQuad() (5 input parameters)
+Function 535: GetRayCollisionQuad() (5 input parameters)
Name: GetRayCollisionQuad
Return type: RayCollision
Description: Get collision info between ray and quad
@@ -4429,158 +4444,158 @@ Function 533: GetRayCollisionQuad() (5 input parameters)
Param[3]: p2 (type: Vector3)
Param[4]: p3 (type: Vector3)
Param[5]: p4 (type: Vector3)
-Function 534: InitAudioDevice() (0 input parameters)
+Function 536: InitAudioDevice() (0 input parameters)
Name: InitAudioDevice
Return type: void
Description: Initialize audio device and context
No input parameters
-Function 535: CloseAudioDevice() (0 input parameters)
+Function 537: CloseAudioDevice() (0 input parameters)
Name: CloseAudioDevice
Return type: void
Description: Close the audio device and context
No input parameters
-Function 536: IsAudioDeviceReady() (0 input parameters)
+Function 538: IsAudioDeviceReady() (0 input parameters)
Name: IsAudioDeviceReady
Return type: bool
Description: Check if audio device has been initialized successfully
No input parameters
-Function 537: SetMasterVolume() (1 input parameters)
+Function 539: SetMasterVolume() (1 input parameters)
Name: SetMasterVolume
Return type: void
Description: Set master volume (listener)
Param[1]: volume (type: float)
-Function 538: GetMasterVolume() (0 input parameters)
+Function 540: GetMasterVolume() (0 input parameters)
Name: GetMasterVolume
Return type: float
Description: Get master volume (listener)
No input parameters
-Function 539: LoadWave() (1 input parameters)
+Function 541: LoadWave() (1 input parameters)
Name: LoadWave
Return type: Wave
Description: Load wave data from file
Param[1]: fileName (type: const char *)
-Function 540: LoadWaveFromMemory() (3 input parameters)
+Function 542: LoadWaveFromMemory() (3 input parameters)
Name: LoadWaveFromMemory
Return type: Wave
Description: Load wave from memory buffer, fileType refers to extension: i.e. '.wav'
Param[1]: fileType (type: const char *)
Param[2]: fileData (type: const unsigned char *)
Param[3]: dataSize (type: int)
-Function 541: IsWaveValid() (1 input parameters)
+Function 543: IsWaveValid() (1 input parameters)
Name: IsWaveValid
Return type: bool
Description: Checks if wave data is valid (data loaded and parameters)
Param[1]: wave (type: Wave)
-Function 542: LoadSound() (1 input parameters)
+Function 544: LoadSound() (1 input parameters)
Name: LoadSound
Return type: Sound
Description: Load sound from file
Param[1]: fileName (type: const char *)
-Function 543: LoadSoundFromWave() (1 input parameters)
+Function 545: LoadSoundFromWave() (1 input parameters)
Name: LoadSoundFromWave
Return type: Sound
Description: Load sound from wave data
Param[1]: wave (type: Wave)
-Function 544: LoadSoundAlias() (1 input parameters)
+Function 546: LoadSoundAlias() (1 input parameters)
Name: LoadSoundAlias
Return type: Sound
Description: Create a new sound that shares the same sample data as the source sound, does not own the sound data
Param[1]: source (type: Sound)
-Function 545: IsSoundValid() (1 input parameters)
+Function 547: IsSoundValid() (1 input parameters)
Name: IsSoundValid
Return type: bool
Description: Checks if a sound is valid (data loaded and buffers initialized)
Param[1]: sound (type: Sound)
-Function 546: UpdateSound() (3 input parameters)
+Function 548: UpdateSound() (3 input parameters)
Name: UpdateSound
Return type: void
Description: Update sound buffer with new data (default data format: 32 bit float, stereo)
Param[1]: sound (type: Sound)
Param[2]: data (type: const void *)
Param[3]: sampleCount (type: int)
-Function 547: UnloadWave() (1 input parameters)
+Function 549: UnloadWave() (1 input parameters)
Name: UnloadWave
Return type: void
Description: Unload wave data
Param[1]: wave (type: Wave)
-Function 548: UnloadSound() (1 input parameters)
+Function 550: UnloadSound() (1 input parameters)
Name: UnloadSound
Return type: void
Description: Unload sound
Param[1]: sound (type: Sound)
-Function 549: UnloadSoundAlias() (1 input parameters)
+Function 551: UnloadSoundAlias() (1 input parameters)
Name: UnloadSoundAlias
Return type: void
Description: Unload a sound alias (does not deallocate sample data)
Param[1]: alias (type: Sound)
-Function 550: ExportWave() (2 input parameters)
+Function 552: ExportWave() (2 input parameters)
Name: ExportWave
Return type: bool
Description: Export wave data to file, returns true on success
Param[1]: wave (type: Wave)
Param[2]: fileName (type: const char *)
-Function 551: ExportWaveAsCode() (2 input parameters)
+Function 553: ExportWaveAsCode() (2 input parameters)
Name: ExportWaveAsCode
Return type: bool
Description: Export wave sample data to code (.h), returns true on success
Param[1]: wave (type: Wave)
Param[2]: fileName (type: const char *)
-Function 552: PlaySound() (1 input parameters)
+Function 554: PlaySound() (1 input parameters)
Name: PlaySound
Return type: void
Description: Play a sound
Param[1]: sound (type: Sound)
-Function 553: StopSound() (1 input parameters)
+Function 555: StopSound() (1 input parameters)
Name: StopSound
Return type: void
Description: Stop playing a sound
Param[1]: sound (type: Sound)
-Function 554: PauseSound() (1 input parameters)
+Function 556: PauseSound() (1 input parameters)
Name: PauseSound
Return type: void
Description: Pause a sound
Param[1]: sound (type: Sound)
-Function 555: ResumeSound() (1 input parameters)
+Function 557: ResumeSound() (1 input parameters)
Name: ResumeSound
Return type: void
Description: Resume a paused sound
Param[1]: sound (type: Sound)
-Function 556: IsSoundPlaying() (1 input parameters)
+Function 558: IsSoundPlaying() (1 input parameters)
Name: IsSoundPlaying
Return type: bool
Description: Check if a sound is currently playing
Param[1]: sound (type: Sound)
-Function 557: SetSoundVolume() (2 input parameters)
+Function 559: SetSoundVolume() (2 input parameters)
Name: SetSoundVolume
Return type: void
Description: Set volume for a sound (1.0 is max level)
Param[1]: sound (type: Sound)
Param[2]: volume (type: float)
-Function 558: SetSoundPitch() (2 input parameters)
+Function 560: SetSoundPitch() (2 input parameters)
Name: SetSoundPitch
Return type: void
Description: Set pitch for a sound (1.0 is base level)
Param[1]: sound (type: Sound)
Param[2]: pitch (type: float)
-Function 559: SetSoundPan() (2 input parameters)
+Function 561: SetSoundPan() (2 input parameters)
Name: SetSoundPan
Return type: void
Description: Set pan for a sound (-1.0 left, 0.0 center, 1.0 right)
Param[1]: sound (type: Sound)
Param[2]: pan (type: float)
-Function 560: WaveCopy() (1 input parameters)
+Function 562: WaveCopy() (1 input parameters)
Name: WaveCopy
Return type: Wave
Description: Copy a wave to a new wave
Param[1]: wave (type: Wave)
-Function 561: WaveCrop() (3 input parameters)
+Function 563: WaveCrop() (3 input parameters)
Name: WaveCrop
Return type: void
Description: Crop a wave to defined frames range
Param[1]: wave (type: Wave *)
Param[2]: initFrame (type: int)
Param[3]: finalFrame (type: int)
-Function 562: WaveFormat() (4 input parameters)
+Function 564: WaveFormat() (4 input parameters)
Name: WaveFormat
Return type: void
Description: Convert wave data to desired format
@@ -4588,203 +4603,203 @@ Function 562: WaveFormat() (4 input parameters)
Param[2]: sampleRate (type: int)
Param[3]: sampleSize (type: int)
Param[4]: channels (type: int)
-Function 563: LoadWaveSamples() (1 input parameters)
+Function 565: LoadWaveSamples() (1 input parameters)
Name: LoadWaveSamples
Return type: float *
Description: Load samples data from wave as a 32bit float data array
Param[1]: wave (type: Wave)
-Function 564: UnloadWaveSamples() (1 input parameters)
+Function 566: UnloadWaveSamples() (1 input parameters)
Name: UnloadWaveSamples
Return type: void
Description: Unload samples data loaded with LoadWaveSamples()
Param[1]: samples (type: float *)
-Function 565: LoadMusicStream() (1 input parameters)
+Function 567: LoadMusicStream() (1 input parameters)
Name: LoadMusicStream
Return type: Music
Description: Load music stream from file
Param[1]: fileName (type: const char *)
-Function 566: LoadMusicStreamFromMemory() (3 input parameters)
+Function 568: LoadMusicStreamFromMemory() (3 input parameters)
Name: LoadMusicStreamFromMemory
Return type: Music
Description: Load music stream from data
Param[1]: fileType (type: const char *)
Param[2]: data (type: const unsigned char *)
Param[3]: dataSize (type: int)
-Function 567: IsMusicValid() (1 input parameters)
+Function 569: IsMusicValid() (1 input parameters)
Name: IsMusicValid
Return type: bool
Description: Checks if a music stream is valid (context and buffers initialized)
Param[1]: music (type: Music)
-Function 568: UnloadMusicStream() (1 input parameters)
+Function 570: UnloadMusicStream() (1 input parameters)
Name: UnloadMusicStream
Return type: void
Description: Unload music stream
Param[1]: music (type: Music)
-Function 569: PlayMusicStream() (1 input parameters)
+Function 571: PlayMusicStream() (1 input parameters)
Name: PlayMusicStream
Return type: void
Description: Start music playing
Param[1]: music (type: Music)
-Function 570: IsMusicStreamPlaying() (1 input parameters)
+Function 572: IsMusicStreamPlaying() (1 input parameters)
Name: IsMusicStreamPlaying
Return type: bool
Description: Check if music is playing
Param[1]: music (type: Music)
-Function 571: UpdateMusicStream() (1 input parameters)
+Function 573: UpdateMusicStream() (1 input parameters)
Name: UpdateMusicStream
Return type: void
Description: Updates buffers for music streaming
Param[1]: music (type: Music)
-Function 572: StopMusicStream() (1 input parameters)
+Function 574: StopMusicStream() (1 input parameters)
Name: StopMusicStream
Return type: void
Description: Stop music playing
Param[1]: music (type: Music)
-Function 573: PauseMusicStream() (1 input parameters)
+Function 575: PauseMusicStream() (1 input parameters)
Name: PauseMusicStream
Return type: void
Description: Pause music playing
Param[1]: music (type: Music)
-Function 574: ResumeMusicStream() (1 input parameters)
+Function 576: ResumeMusicStream() (1 input parameters)
Name: ResumeMusicStream
Return type: void
Description: Resume playing paused music
Param[1]: music (type: Music)
-Function 575: SeekMusicStream() (2 input parameters)
+Function 577: SeekMusicStream() (2 input parameters)
Name: SeekMusicStream
Return type: void
Description: Seek music to a position (in seconds)
Param[1]: music (type: Music)
Param[2]: position (type: float)
-Function 576: SetMusicVolume() (2 input parameters)
+Function 578: SetMusicVolume() (2 input parameters)
Name: SetMusicVolume
Return type: void
Description: Set volume for music (1.0 is max level)
Param[1]: music (type: Music)
Param[2]: volume (type: float)
-Function 577: SetMusicPitch() (2 input parameters)
+Function 579: SetMusicPitch() (2 input parameters)
Name: SetMusicPitch
Return type: void
Description: Set pitch for a music (1.0 is base level)
Param[1]: music (type: Music)
Param[2]: pitch (type: float)
-Function 578: SetMusicPan() (2 input parameters)
+Function 580: SetMusicPan() (2 input parameters)
Name: SetMusicPan
Return type: void
Description: Set pan for a music (-1.0 left, 0.0 center, 1.0 right)
Param[1]: music (type: Music)
Param[2]: pan (type: float)
-Function 579: GetMusicTimeLength() (1 input parameters)
+Function 581: GetMusicTimeLength() (1 input parameters)
Name: GetMusicTimeLength
Return type: float
Description: Get music time length (in seconds)
Param[1]: music (type: Music)
-Function 580: GetMusicTimePlayed() (1 input parameters)
+Function 582: GetMusicTimePlayed() (1 input parameters)
Name: GetMusicTimePlayed
Return type: float
Description: Get current music time played (in seconds)
Param[1]: music (type: Music)
-Function 581: LoadAudioStream() (3 input parameters)
+Function 583: LoadAudioStream() (3 input parameters)
Name: LoadAudioStream
Return type: AudioStream
Description: Load audio stream (to stream raw audio pcm data)
Param[1]: sampleRate (type: unsigned int)
Param[2]: sampleSize (type: unsigned int)
Param[3]: channels (type: unsigned int)
-Function 582: IsAudioStreamValid() (1 input parameters)
+Function 584: IsAudioStreamValid() (1 input parameters)
Name: IsAudioStreamValid
Return type: bool
Description: Checks if an audio stream is valid (buffers initialized)
Param[1]: stream (type: AudioStream)
-Function 583: UnloadAudioStream() (1 input parameters)
+Function 585: UnloadAudioStream() (1 input parameters)
Name: UnloadAudioStream
Return type: void
Description: Unload audio stream and free memory
Param[1]: stream (type: AudioStream)
-Function 584: UpdateAudioStream() (3 input parameters)
+Function 586: UpdateAudioStream() (3 input parameters)
Name: UpdateAudioStream
Return type: void
Description: Update audio stream buffers with data
Param[1]: stream (type: AudioStream)
Param[2]: data (type: const void *)
Param[3]: frameCount (type: int)
-Function 585: IsAudioStreamProcessed() (1 input parameters)
+Function 587: IsAudioStreamProcessed() (1 input parameters)
Name: IsAudioStreamProcessed
Return type: bool
Description: Check if any audio stream buffers requires refill
Param[1]: stream (type: AudioStream)
-Function 586: PlayAudioStream() (1 input parameters)
+Function 588: PlayAudioStream() (1 input parameters)
Name: PlayAudioStream
Return type: void
Description: Play audio stream
Param[1]: stream (type: AudioStream)
-Function 587: PauseAudioStream() (1 input parameters)
+Function 589: PauseAudioStream() (1 input parameters)
Name: PauseAudioStream
Return type: void
Description: Pause audio stream
Param[1]: stream (type: AudioStream)
-Function 588: ResumeAudioStream() (1 input parameters)
+Function 590: ResumeAudioStream() (1 input parameters)
Name: ResumeAudioStream
Return type: void
Description: Resume audio stream
Param[1]: stream (type: AudioStream)
-Function 589: IsAudioStreamPlaying() (1 input parameters)
+Function 591: IsAudioStreamPlaying() (1 input parameters)
Name: IsAudioStreamPlaying
Return type: bool
Description: Check if audio stream is playing
Param[1]: stream (type: AudioStream)
-Function 590: StopAudioStream() (1 input parameters)
+Function 592: StopAudioStream() (1 input parameters)
Name: StopAudioStream
Return type: void
Description: Stop audio stream
Param[1]: stream (type: AudioStream)
-Function 591: SetAudioStreamVolume() (2 input parameters)
+Function 593: SetAudioStreamVolume() (2 input parameters)
Name: SetAudioStreamVolume
Return type: void
Description: Set volume for audio stream (1.0 is max level)
Param[1]: stream (type: AudioStream)
Param[2]: volume (type: float)
-Function 592: SetAudioStreamPitch() (2 input parameters)
+Function 594: SetAudioStreamPitch() (2 input parameters)
Name: SetAudioStreamPitch
Return type: void
Description: Set pitch for audio stream (1.0 is base level)
Param[1]: stream (type: AudioStream)
Param[2]: pitch (type: float)
-Function 593: SetAudioStreamPan() (2 input parameters)
+Function 595: SetAudioStreamPan() (2 input parameters)
Name: SetAudioStreamPan
Return type: void
Description: Set pan for audio stream (0.5 is centered)
Param[1]: stream (type: AudioStream)
Param[2]: pan (type: float)
-Function 594: SetAudioStreamBufferSizeDefault() (1 input parameters)
+Function 596: SetAudioStreamBufferSizeDefault() (1 input parameters)
Name: SetAudioStreamBufferSizeDefault
Return type: void
Description: Default size for new audio streams
Param[1]: size (type: int)
-Function 595: SetAudioStreamCallback() (2 input parameters)
+Function 597: SetAudioStreamCallback() (2 input parameters)
Name: SetAudioStreamCallback
Return type: void
Description: Audio thread callback to request new data
Param[1]: stream (type: AudioStream)
Param[2]: callback (type: AudioCallback)
-Function 596: AttachAudioStreamProcessor() (2 input parameters)
+Function 598: AttachAudioStreamProcessor() (2 input parameters)
Name: AttachAudioStreamProcessor
Return type: void
Description: Attach audio stream processor to stream, receives frames x 2 samples as 'float' (stereo)
Param[1]: stream (type: AudioStream)
Param[2]: processor (type: AudioCallback)
-Function 597: DetachAudioStreamProcessor() (2 input parameters)
+Function 599: DetachAudioStreamProcessor() (2 input parameters)
Name: DetachAudioStreamProcessor
Return type: void
Description: Detach audio stream processor from stream
Param[1]: stream (type: AudioStream)
Param[2]: processor (type: AudioCallback)
-Function 598: AttachAudioMixedProcessor() (1 input parameters)
+Function 600: AttachAudioMixedProcessor() (1 input parameters)
Name: AttachAudioMixedProcessor
Return type: void
Description: Attach audio stream processor to the entire audio pipeline, receives frames x 2 samples as 'float' (stereo)
Param[1]: processor (type: AudioCallback)
-Function 599: DetachAudioMixedProcessor() (1 input parameters)
+Function 601: DetachAudioMixedProcessor() (1 input parameters)
Name: DetachAudioMixedProcessor
Return type: void
Description: Detach audio stream processor from the entire audio pipeline
diff --git a/tools/rlparser/output/raylib_api.xml b/tools/rlparser/output/raylib_api.xml
index 8734f405d..d3314a5d1 100644
--- a/tools/rlparser/output/raylib_api.xml
+++ b/tools/rlparser/output/raylib_api.xml
@@ -678,7 +678,7 @@
-
+
@@ -2918,6 +2918,17 @@
+
+
+
+
+
+
+
+
+
+
+