diff --git a/CMakeLists.txt b/CMakeLists.txt
index 24745792221651a125f92428324e3f98ca87eb44..dd3f7b8f9b34b04102c2b4415fbe729c67ff9da2 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -7,13 +7,33 @@ set(CMAKE_C_STANDARD 99)
 set(CMAKE_CXX_STANDARD 20)
 set(CMAKE_EXPORT_COMPILE_COMMANDS ON)
 
-file(GLOB sources CONFIGURE_DEPENDS "src/*.cpp")
-# file(GLOB sources CONFIGURE_DEPENDS "src/*.c")
+find_package(Protobuf REQUIRED)
+include_directories(${Protobuf_INCLUDE_DIRS})
+include_directories(${CMAKE_CURRENT_BINARY_DIR})
+protobuf_generate_cpp(PROTO_SRCS PROTO_HDRS ${TARGET_NAME}.proto)
 
-add_executable(${TARGET_NAME} ${sources})
+find_package(PkgConfig)
+pkg_check_modules(BOTAN2 REQUIRED botan-2)
 
+
+set(server_sources src/server_main.cpp src/server.cpp src/game.cpp ${PROTO_SRCS} ${PROTO_HDRS})
+add_executable(${TARGET_NAME}_server ${server_sources})
+target_link_libraries(${TARGET_NAME}_server ${Protobuf_LIBRARIES})
+target_link_libraries(${TARGET_NAME}_server ${BOTAN2_LIBRARIES} ${BOTAN2_LDFLAGS})
+target_include_directories(
+  ${TARGET_NAME}_server PRIVATE
+  ${CMAKE_SOURCE_DIR}/src
+  ${CMAKE_SOURCE_DIR}/include
+  ${BOTAN2_INCLUDE_DIRS}
+)
+
+set(client_sources src/client_main.cpp src/client.cpp ${PROTO_SRCS} ${PROTO_HDRS})
+add_executable(${TARGET_NAME}_client ${client_sources})
+target_link_libraries(${TARGET_NAME}_client ${Protobuf_LIBRARIES})
+target_link_libraries(${TARGET_NAME}_client ${BOTAN2_LIBRARIES} ${BOTAN2_LDFLAGS})
 target_include_directories(
-  ${TARGET_NAME} PRIVATE
+  ${TARGET_NAME}_client PRIVATE
   ${CMAKE_SOURCE_DIR}/src
   ${CMAKE_SOURCE_DIR}/include
+  ${BOTAN2_INCLUDE_DIRS}
 )
diff --git a/codeblocks/CMakeCache.txt b/codeblocks/CMakeCache.txt
new file mode 100644
index 0000000000000000000000000000000000000000..c035e875b831ec3bf1290bc2af29c00c0605512e
--- /dev/null
+++ b/codeblocks/CMakeCache.txt
@@ -0,0 +1,484 @@
+# This is the CMakeCache file.
+# For build in directory: /Users/lukas/bht/03_NEP/wordle_de/codeblocks
+# It was generated by CMake: /opt/homebrew/Cellar/cmake/3.23.0/bin/cmake
+# You can edit this file to change values found and used by cmake.
+# If you do not want to change any of the values, simply exit the editor.
+# If you do want to change a value, simply edit, save, and exit the editor.
+# The syntax for the file is as follows:
+# KEY:TYPE=VALUE
+# KEY is the name of a variable in the cache.
+# TYPE is a hint to GUIs for the type of VALUE, DO NOT EDIT TYPE!.
+# VALUE is the current value for the KEY.
+
+########################
+# EXTERNAL cache entries
+########################
+
+//Path to a program.
+CMAKE_ADDR2LINE:FILEPATH=CMAKE_ADDR2LINE-NOTFOUND
+
+//Path to a program.
+CMAKE_AR:FILEPATH=/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ar
+
+//Choose the type of build, options are: None Debug Release RelWithDebInfo
+// MinSizeRel ...
+CMAKE_BUILD_TYPE:STRING=
+
+//Id string of the compiler for the CodeBlocks IDE. Automatically
+// detected when left empty
+CMAKE_CODEBLOCKS_COMPILER_ID:STRING=
+
+//The CodeBlocks executable
+CMAKE_CODEBLOCKS_EXECUTABLE:FILEPATH=CMAKE_CODEBLOCKS_EXECUTABLE-NOTFOUND
+
+//Additional command line arguments when CodeBlocks invokes make.
+// Enter e.g. -j<some_number> to get parallel builds
+CMAKE_CODEBLOCKS_MAKE_ARGUMENTS:STRING=-j8
+
+//Enable/Disable color output during build.
+CMAKE_COLOR_MAKEFILE:BOOL=ON
+
+//CXX compiler
+CMAKE_CXX_COMPILER:FILEPATH=/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/c++
+
+//Flags used by the CXX compiler during all build types.
+CMAKE_CXX_FLAGS:STRING=
+
+//Flags used by the CXX compiler during DEBUG builds.
+CMAKE_CXX_FLAGS_DEBUG:STRING=-g
+
+//Flags used by the CXX compiler during MINSIZEREL builds.
+CMAKE_CXX_FLAGS_MINSIZEREL:STRING=-Os -DNDEBUG
+
+//Flags used by the CXX compiler during RELEASE builds.
+CMAKE_CXX_FLAGS_RELEASE:STRING=-O3 -DNDEBUG
+
+//Flags used by the CXX compiler during RELWITHDEBINFO builds.
+CMAKE_CXX_FLAGS_RELWITHDEBINFO:STRING=-O2 -g -DNDEBUG
+
+//C compiler
+CMAKE_C_COMPILER:FILEPATH=/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/cc
+
+//Flags used by the C compiler during all build types.
+CMAKE_C_FLAGS:STRING=
+
+//Flags used by the C compiler during DEBUG builds.
+CMAKE_C_FLAGS_DEBUG:STRING=-g
+
+//Flags used by the C compiler during MINSIZEREL builds.
+CMAKE_C_FLAGS_MINSIZEREL:STRING=-Os -DNDEBUG
+
+//Flags used by the C compiler during RELEASE builds.
+CMAKE_C_FLAGS_RELEASE:STRING=-O3 -DNDEBUG
+
+//Flags used by the C compiler during RELWITHDEBINFO builds.
+CMAKE_C_FLAGS_RELWITHDEBINFO:STRING=-O2 -g -DNDEBUG
+
+//Path to a program.
+CMAKE_DLLTOOL:FILEPATH=CMAKE_DLLTOOL-NOTFOUND
+
+//Flags used by the linker during all build types.
+CMAKE_EXE_LINKER_FLAGS:STRING=
+
+//Flags used by the linker during DEBUG builds.
+CMAKE_EXE_LINKER_FLAGS_DEBUG:STRING=
+
+//Flags used by the linker during MINSIZEREL builds.
+CMAKE_EXE_LINKER_FLAGS_MINSIZEREL:STRING=
+
+//Flags used by the linker during RELEASE builds.
+CMAKE_EXE_LINKER_FLAGS_RELEASE:STRING=
+
+//Flags used by the linker during RELWITHDEBINFO builds.
+CMAKE_EXE_LINKER_FLAGS_RELWITHDEBINFO:STRING=
+
+//Enable/Disable output of compile commands during generation.
+CMAKE_EXPORT_COMPILE_COMMANDS:BOOL=
+
+//Path to a program.
+CMAKE_INSTALL_NAME_TOOL:FILEPATH=/usr/bin/install_name_tool
+
+//Install path prefix, prepended onto install directories.
+CMAKE_INSTALL_PREFIX:PATH=/usr/local
+
+//Path to a program.
+CMAKE_LINKER:FILEPATH=/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ld
+
+//Path to a program.
+CMAKE_MAKE_PROGRAM:FILEPATH=/opt/homebrew/bin/gmake
+
+//Flags used by the linker during the creation of modules during
+// all build types.
+CMAKE_MODULE_LINKER_FLAGS:STRING=
+
+//Flags used by the linker during the creation of modules during
+// DEBUG builds.
+CMAKE_MODULE_LINKER_FLAGS_DEBUG:STRING=
+
+//Flags used by the linker during the creation of modules during
+// MINSIZEREL builds.
+CMAKE_MODULE_LINKER_FLAGS_MINSIZEREL:STRING=
+
+//Flags used by the linker during the creation of modules during
+// RELEASE builds.
+CMAKE_MODULE_LINKER_FLAGS_RELEASE:STRING=
+
+//Flags used by the linker during the creation of modules during
+// RELWITHDEBINFO builds.
+CMAKE_MODULE_LINKER_FLAGS_RELWITHDEBINFO:STRING=
+
+//Path to a program.
+CMAKE_NM:FILEPATH=/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/nm
+
+//Path to a program.
+CMAKE_OBJCOPY:FILEPATH=CMAKE_OBJCOPY-NOTFOUND
+
+//Path to a program.
+CMAKE_OBJDUMP:FILEPATH=/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/objdump
+
+//Build architectures for OSX
+CMAKE_OSX_ARCHITECTURES:STRING=
+
+//Minimum OS X version to target for deployment (at runtime); newer
+// APIs weak linked. Set to empty string for default value.
+CMAKE_OSX_DEPLOYMENT_TARGET:STRING=
+
+//The product will be built against the headers and libraries located
+// inside the indicated SDK.
+CMAKE_OSX_SYSROOT:PATH=/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX12.3.sdk
+
+//Value Computed by CMake
+CMAKE_PROJECT_DESCRIPTION:STATIC=
+
+//Value Computed by CMake
+CMAKE_PROJECT_HOMEPAGE_URL:STATIC=
+
+//Value Computed by CMake
+CMAKE_PROJECT_NAME:STATIC=wordle_de
+
+//Path to a program.
+CMAKE_RANLIB:FILEPATH=/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ranlib
+
+//Path to a program.
+CMAKE_READELF:FILEPATH=CMAKE_READELF-NOTFOUND
+
+//Flags used by the linker during the creation of shared libraries
+// during all build types.
+CMAKE_SHARED_LINKER_FLAGS:STRING=
+
+//Flags used by the linker during the creation of shared libraries
+// during DEBUG builds.
+CMAKE_SHARED_LINKER_FLAGS_DEBUG:STRING=
+
+//Flags used by the linker during the creation of shared libraries
+// during MINSIZEREL builds.
+CMAKE_SHARED_LINKER_FLAGS_MINSIZEREL:STRING=
+
+//Flags used by the linker during the creation of shared libraries
+// during RELEASE builds.
+CMAKE_SHARED_LINKER_FLAGS_RELEASE:STRING=
+
+//Flags used by the linker during the creation of shared libraries
+// during RELWITHDEBINFO builds.
+CMAKE_SHARED_LINKER_FLAGS_RELWITHDEBINFO:STRING=
+
+//If set, runtime paths are not added when installing shared libraries,
+// but are added when building.
+CMAKE_SKIP_INSTALL_RPATH:BOOL=NO
+
+//If set, runtime paths are not added when using shared libraries.
+CMAKE_SKIP_RPATH:BOOL=NO
+
+//Flags used by the linker during the creation of static libraries
+// during all build types.
+CMAKE_STATIC_LINKER_FLAGS:STRING=
+
+//Flags used by the linker during the creation of static libraries
+// during DEBUG builds.
+CMAKE_STATIC_LINKER_FLAGS_DEBUG:STRING=
+
+//Flags used by the linker during the creation of static libraries
+// during MINSIZEREL builds.
+CMAKE_STATIC_LINKER_FLAGS_MINSIZEREL:STRING=
+
+//Flags used by the linker during the creation of static libraries
+// during RELEASE builds.
+CMAKE_STATIC_LINKER_FLAGS_RELEASE:STRING=
+
+//Flags used by the linker during the creation of static libraries
+// during RELWITHDEBINFO builds.
+CMAKE_STATIC_LINKER_FLAGS_RELWITHDEBINFO:STRING=
+
+//Path to a program.
+CMAKE_STRIP:FILEPATH=/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/strip
+
+//If this value is on, makefiles will be generated without the
+// .SILENT directive, and all commands will be echoed to the console
+// during the make.  This is useful for debugging only. With Visual
+// Studio IDE projects all commands are done without /nologo.
+CMAKE_VERBOSE_MAKEFILE:BOOL=FALSE
+
+//Arguments to supply to pkg-config
+PKG_CONFIG_ARGN:STRING=
+
+//pkg-config executable
+PKG_CONFIG_EXECUTABLE:FILEPATH=/opt/homebrew/bin/pkg-config
+
+//Path to a program.
+ProcessorCount_cmd_sysctl:FILEPATH=/usr/sbin/sysctl
+
+//Path to a file.
+Protobuf_INCLUDE_DIR:PATH=/opt/homebrew/include
+
+//Path to a library.
+Protobuf_LIBRARY_DEBUG:FILEPATH=/opt/homebrew/lib/libprotobuf.dylib
+
+//Path to a library.
+Protobuf_LIBRARY_RELEASE:FILEPATH=/opt/homebrew/lib/libprotobuf.dylib
+
+//Path to a library.
+Protobuf_LITE_LIBRARY_DEBUG:FILEPATH=/opt/homebrew/lib/libprotobuf-lite.dylib
+
+//Path to a library.
+Protobuf_LITE_LIBRARY_RELEASE:FILEPATH=/opt/homebrew/lib/libprotobuf-lite.dylib
+
+//The Google Protocol Buffers Compiler
+Protobuf_PROTOC_EXECUTABLE:FILEPATH=/opt/homebrew/bin/protoc
+
+//Path to a library.
+Protobuf_PROTOC_LIBRARY_DEBUG:FILEPATH=/opt/homebrew/lib/libprotoc.dylib
+
+//Path to a library.
+Protobuf_PROTOC_LIBRARY_RELEASE:FILEPATH=/opt/homebrew/lib/libprotoc.dylib
+
+//Path to a library.
+pkgcfg_lib_BOTAN2_botan-2:FILEPATH=/opt/homebrew/Cellar/botan/2.19.1/lib/libbotan-2.dylib
+
+//Value Computed by CMake
+wordle_de_BINARY_DIR:STATIC=/Users/lukas/bht/03_NEP/wordle_de/codeblocks
+
+//Value Computed by CMake
+wordle_de_IS_TOP_LEVEL:STATIC=ON
+
+//Value Computed by CMake
+wordle_de_SOURCE_DIR:STATIC=/Users/lukas/bht/03_NEP/wordle_de
+
+
+########################
+# INTERNAL cache entries
+########################
+
+BOTAN2_CFLAGS:INTERNAL=-I/opt/homebrew/Cellar/botan/2.19.1/include/botan-2
+BOTAN2_CFLAGS_I:INTERNAL=
+BOTAN2_CFLAGS_OTHER:INTERNAL=
+BOTAN2_FOUND:INTERNAL=1
+BOTAN2_INCLUDEDIR:INTERNAL=/opt/homebrew/Cellar/botan/2.19.1/include/botan-2
+BOTAN2_INCLUDE_DIRS:INTERNAL=/opt/homebrew/Cellar/botan/2.19.1/include/botan-2
+BOTAN2_LDFLAGS:INTERNAL=-L/opt/homebrew/Cellar/botan/2.19.1/lib;-lbotan-2;-fstack-protector;-pthread;-stdlib=libc++
+BOTAN2_LDFLAGS_OTHER:INTERNAL=-fstack-protector;-pthread;-stdlib=libc++
+BOTAN2_LIBDIR:INTERNAL=/opt/homebrew/Cellar/botan/2.19.1/lib
+BOTAN2_LIBRARIES:INTERNAL=botan-2
+BOTAN2_LIBRARY_DIRS:INTERNAL=/opt/homebrew/Cellar/botan/2.19.1/lib
+BOTAN2_LIBS:INTERNAL=
+BOTAN2_LIBS_L:INTERNAL=
+BOTAN2_LIBS_OTHER:INTERNAL=
+BOTAN2_LIBS_PATHS:INTERNAL=
+BOTAN2_MODULE_NAME:INTERNAL=botan-2
+BOTAN2_PREFIX:INTERNAL=/opt/homebrew/Cellar/botan/2.19.1
+BOTAN2_STATIC_CFLAGS:INTERNAL=-I/opt/homebrew/Cellar/botan/2.19.1/include/botan-2
+BOTAN2_STATIC_CFLAGS_I:INTERNAL=
+BOTAN2_STATIC_CFLAGS_OTHER:INTERNAL=
+BOTAN2_STATIC_INCLUDE_DIRS:INTERNAL=/opt/homebrew/Cellar/botan/2.19.1/include/botan-2
+BOTAN2_STATIC_LDFLAGS:INTERNAL=-L/opt/homebrew/Cellar/botan/2.19.1/lib;-lbotan-2;-fstack-protector;-pthread;-stdlib=libc++;-lbz2;-ldl;-lsqlite3;-lz;-framework;CoreFoundation;-framework;Security
+BOTAN2_STATIC_LDFLAGS_OTHER:INTERNAL=-fstack-protector;-pthread;-stdlib=libc++;-framework;CoreFoundation;-framework;Security
+BOTAN2_STATIC_LIBDIR:INTERNAL=
+BOTAN2_STATIC_LIBRARIES:INTERNAL=botan-2;bz2;dl;sqlite3;z
+BOTAN2_STATIC_LIBRARY_DIRS:INTERNAL=/opt/homebrew/Cellar/botan/2.19.1/lib
+BOTAN2_STATIC_LIBS:INTERNAL=
+BOTAN2_STATIC_LIBS_L:INTERNAL=
+BOTAN2_STATIC_LIBS_OTHER:INTERNAL=
+BOTAN2_STATIC_LIBS_PATHS:INTERNAL=
+BOTAN2_VERSION:INTERNAL=2.19.1
+BOTAN2_botan-2_INCLUDEDIR:INTERNAL=
+BOTAN2_botan-2_LIBDIR:INTERNAL=
+BOTAN2_botan-2_PREFIX:INTERNAL=
+BOTAN2_botan-2_VERSION:INTERNAL=
+//ADVANCED property for variable: CMAKE_ADDR2LINE
+CMAKE_ADDR2LINE-ADVANCED:INTERNAL=1
+//ADVANCED property for variable: CMAKE_AR
+CMAKE_AR-ADVANCED:INTERNAL=1
+//This is the directory where this CMakeCache.txt was created
+CMAKE_CACHEFILE_DIR:INTERNAL=/Users/lukas/bht/03_NEP/wordle_de/codeblocks
+//Major version of cmake used to create the current loaded cache
+CMAKE_CACHE_MAJOR_VERSION:INTERNAL=3
+//Minor version of cmake used to create the current loaded cache
+CMAKE_CACHE_MINOR_VERSION:INTERNAL=23
+//Patch version of cmake used to create the current loaded cache
+CMAKE_CACHE_PATCH_VERSION:INTERNAL=0
+//ADVANCED property for variable: CMAKE_COLOR_MAKEFILE
+CMAKE_COLOR_MAKEFILE-ADVANCED:INTERNAL=1
+//Path to CMake executable.
+CMAKE_COMMAND:INTERNAL=/opt/homebrew/Cellar/cmake/3.23.0/bin/cmake
+//Path to cpack program executable.
+CMAKE_CPACK_COMMAND:INTERNAL=/opt/homebrew/Cellar/cmake/3.23.0/bin/cpack
+//Path to ctest program executable.
+CMAKE_CTEST_COMMAND:INTERNAL=/opt/homebrew/Cellar/cmake/3.23.0/bin/ctest
+//ADVANCED property for variable: CMAKE_CXX_COMPILER
+CMAKE_CXX_COMPILER-ADVANCED:INTERNAL=1
+//ADVANCED property for variable: CMAKE_CXX_FLAGS
+CMAKE_CXX_FLAGS-ADVANCED:INTERNAL=1
+//ADVANCED property for variable: CMAKE_CXX_FLAGS_DEBUG
+CMAKE_CXX_FLAGS_DEBUG-ADVANCED:INTERNAL=1
+//ADVANCED property for variable: CMAKE_CXX_FLAGS_MINSIZEREL
+CMAKE_CXX_FLAGS_MINSIZEREL-ADVANCED:INTERNAL=1
+//ADVANCED property for variable: CMAKE_CXX_FLAGS_RELEASE
+CMAKE_CXX_FLAGS_RELEASE-ADVANCED:INTERNAL=1
+//ADVANCED property for variable: CMAKE_CXX_FLAGS_RELWITHDEBINFO
+CMAKE_CXX_FLAGS_RELWITHDEBINFO-ADVANCED:INTERNAL=1
+//ADVANCED property for variable: CMAKE_C_COMPILER
+CMAKE_C_COMPILER-ADVANCED:INTERNAL=1
+//ADVANCED property for variable: CMAKE_C_FLAGS
+CMAKE_C_FLAGS-ADVANCED:INTERNAL=1
+//ADVANCED property for variable: CMAKE_C_FLAGS_DEBUG
+CMAKE_C_FLAGS_DEBUG-ADVANCED:INTERNAL=1
+//ADVANCED property for variable: CMAKE_C_FLAGS_MINSIZEREL
+CMAKE_C_FLAGS_MINSIZEREL-ADVANCED:INTERNAL=1
+//ADVANCED property for variable: CMAKE_C_FLAGS_RELEASE
+CMAKE_C_FLAGS_RELEASE-ADVANCED:INTERNAL=1
+//ADVANCED property for variable: CMAKE_C_FLAGS_RELWITHDEBINFO
+CMAKE_C_FLAGS_RELWITHDEBINFO-ADVANCED:INTERNAL=1
+//ADVANCED property for variable: CMAKE_DLLTOOL
+CMAKE_DLLTOOL-ADVANCED:INTERNAL=1
+//Executable file format
+CMAKE_EXECUTABLE_FORMAT:INTERNAL=MACHO
+//ADVANCED property for variable: CMAKE_EXE_LINKER_FLAGS
+CMAKE_EXE_LINKER_FLAGS-ADVANCED:INTERNAL=1
+//ADVANCED property for variable: CMAKE_EXE_LINKER_FLAGS_DEBUG
+CMAKE_EXE_LINKER_FLAGS_DEBUG-ADVANCED:INTERNAL=1
+//ADVANCED property for variable: CMAKE_EXE_LINKER_FLAGS_MINSIZEREL
+CMAKE_EXE_LINKER_FLAGS_MINSIZEREL-ADVANCED:INTERNAL=1
+//ADVANCED property for variable: CMAKE_EXE_LINKER_FLAGS_RELEASE
+CMAKE_EXE_LINKER_FLAGS_RELEASE-ADVANCED:INTERNAL=1
+//ADVANCED property for variable: CMAKE_EXE_LINKER_FLAGS_RELWITHDEBINFO
+CMAKE_EXE_LINKER_FLAGS_RELWITHDEBINFO-ADVANCED:INTERNAL=1
+//ADVANCED property for variable: CMAKE_EXPORT_COMPILE_COMMANDS
+CMAKE_EXPORT_COMPILE_COMMANDS-ADVANCED:INTERNAL=1
+//Name of external makefile project generator.
+CMAKE_EXTRA_GENERATOR:INTERNAL=CodeBlocks
+//CXX compiler system defined macros
+CMAKE_EXTRA_GENERATOR_CXX_SYSTEM_DEFINED_MACROS:INTERNAL=__llvm__;1;__clang__;1;__clang_major__;13;__clang_minor__;1;__clang_patchlevel__;6;__clang_version__;"13.1.6 (clang-1316.0.21.2.3)";__GNUC__;4;__GNUC_MINOR__;2;__GNUC_PATCHLEVEL__;1;__GXX_ABI_VERSION;1002;__ATOMIC_RELAXED;0;__ATOMIC_CONSUME;1;__ATOMIC_ACQUIRE;2;__ATOMIC_RELEASE;3;__ATOMIC_ACQ_REL;4;__ATOMIC_SEQ_CST;5;__OPENCL_MEMORY_SCOPE_WORK_ITEM;0;__OPENCL_MEMORY_SCOPE_WORK_GROUP;1;__OPENCL_MEMORY_SCOPE_DEVICE;2;__OPENCL_MEMORY_SCOPE_ALL_SVM_DEVICES;3;__OPENCL_MEMORY_SCOPE_SUB_GROUP;4;__PRAGMA_REDEFINE_EXTNAME;1;__VERSION__;"Apple LLVM 13.1.6 (clang-1316.0.21.2.3)";__OBJC_BOOL_IS_BOOL;1;__CONSTANT_CFSTRINGS__;1;__block;__attribute__((__blocks__(byref)));__BLOCKS__;1;__clang_literal_encoding__;"UTF-8";__clang_wide_literal_encoding__;"UTF-32";__ORDER_LITTLE_ENDIAN__;1234;__ORDER_BIG_ENDIAN__;4321;__ORDER_PDP_ENDIAN__;3412;__BYTE_ORDER__;__ORDER_LITTLE_ENDIAN__;__LITTLE_ENDIAN__;1;_LP64;1;__LP64__;1;__CHAR_BIT__;8;__SCHAR_MAX__;127;__SHRT_MAX__;32767;__INT_MAX__;2147483647;__LONG_MAX__;9223372036854775807L;__LONG_LONG_MAX__;9223372036854775807LL;__WCHAR_MAX__;2147483647;__WINT_MAX__;2147483647;__INTMAX_MAX__;9223372036854775807L;__SIZE_MAX__;18446744073709551615UL;__UINTMAX_MAX__;18446744073709551615UL;__PTRDIFF_MAX__;9223372036854775807L;__INTPTR_MAX__;9223372036854775807L;__UINTPTR_MAX__;18446744073709551615UL;__SIZEOF_DOUBLE__;8;__SIZEOF_FLOAT__;4;__SIZEOF_INT__;4;__SIZEOF_LONG__;8;__SIZEOF_LONG_DOUBLE__;8;__SIZEOF_LONG_LONG__;8;__SIZEOF_POINTER__;8;__SIZEOF_SHORT__;2;__SIZEOF_PTRDIFF_T__;8;__SIZEOF_SIZE_T__;8;__SIZEOF_WCHAR_T__;4;__SIZEOF_WINT_T__;4;__SIZEOF_INT128__;16;__INTMAX_TYPE__;long int;__INTMAX_FMTd__;"ld";__INTMAX_FMTi__;"li";__INTMAX_C_SUFFIX__;L;__UINTMAX_TYPE__;long unsigned int;__UINTMAX_FMTo__;"lo";__UINTMAX_FMTu__;"lu";__UINTMAX_FMTx__;"lx";__UINTMAX_FMTX__;"lX";__UINTMAX_C_SUFFIX__;UL;__INTMAX_WIDTH__;64;__PTRDIFF_TYPE__;long int;__PTRDIFF_FMTd__;"ld";__PTRDIFF_FMTi__;"li";__PTRDIFF_WIDTH__;64;__INTPTR_TYPE__;long int;__INTPTR_FMTd__;"ld";__INTPTR_FMTi__;"li";__INTPTR_WIDTH__;64;__SIZE_TYPE__;long unsigned int;__SIZE_FMTo__;"lo";__SIZE_FMTu__;"lu";__SIZE_FMTx__;"lx";__SIZE_FMTX__;"lX";__SIZE_WIDTH__;64;__WCHAR_TYPE__;int;__WCHAR_WIDTH__;32;__WINT_TYPE__;int;__WINT_WIDTH__;32;__SIG_ATOMIC_WIDTH__;32;__SIG_ATOMIC_MAX__;2147483647;__CHAR16_TYPE__;unsigned short;__CHAR32_TYPE__;unsigned int;__UINTMAX_WIDTH__;64;__UINTPTR_TYPE__;long unsigned int;__UINTPTR_FMTo__;"lo";__UINTPTR_FMTu__;"lu";__UINTPTR_FMTx__;"lx";__UINTPTR_FMTX__;"lX";__UINTPTR_WIDTH__;64;__FLT16_DENORM_MIN__;5.9604644775390625e-8F16;__FLT16_HAS_DENORM__;1;__FLT16_DIG__;3;__FLT16_DECIMAL_DIG__;5;__FLT16_EPSILON__;9.765625e-4F16;__FLT16_HAS_INFINITY__;1;__FLT16_HAS_QUIET_NAN__;1;__FLT16_MANT_DIG__;11;__FLT16_MAX_10_EXP__;4;__FLT16_MAX_EXP__;16;__FLT16_MAX__;6.5504e+4F16;__FLT16_MIN_10_EXP__;(-4);__FLT16_MIN_EXP__;(-13);__FLT16_MIN__;6.103515625e-5F16;__FLT_DENORM_MIN__;1.40129846e-45F;__FLT_HAS_DENORM__;1;__FLT_DIG__;6;__FLT_DECIMAL_DIG__;9;__FLT_EPSILON__;1.19209290e-7F;__FLT_HAS_INFINITY__;1;__FLT_HAS_QUIET_NAN__;1;__FLT_MANT_DIG__;24;__FLT_MAX_10_EXP__;38;__FLT_MAX_EXP__;128;__FLT_MAX__;3.40282347e+38F;__FLT_MIN_10_EXP__;(-37);__FLT_MIN_EXP__;(-125);__FLT_MIN__;1.17549435e-38F;__DBL_DENORM_MIN__;4.9406564584124654e-324;__DBL_HAS_DENORM__;1;__DBL_DIG__;15;__DBL_DECIMAL_DIG__;17;__DBL_EPSILON__;2.2204460492503131e-16;__DBL_HAS_INFINITY__;1;__DBL_HAS_QUIET_NAN__;1;__DBL_MANT_DIG__;53;__DBL_MAX_10_EXP__;308;__DBL_MAX_EXP__;1024;__DBL_MAX__;1.7976931348623157e+308;__DBL_MIN_10_EXP__;(-307);__DBL_MIN_EXP__;(-1021);__DBL_MIN__;2.2250738585072014e-308;__LDBL_DENORM_MIN__;4.9406564584124654e-324L;__LDBL_HAS_DENORM__;1;__LDBL_DIG__;15;__LDBL_DECIMAL_DIG__;17;__LDBL_EPSILON__;2.2204460492503131e-16L;__LDBL_HAS_INFINITY__;1;__LDBL_HAS_QUIET_NAN__;1;__LDBL_MANT_DIG__;53;__LDBL_MAX_10_EXP__;308;__LDBL_MAX_EXP__;1024;__LDBL_MAX__;1.7976931348623157e+308L;__LDBL_MIN_10_EXP__;(-307);__LDBL_MIN_EXP__;(-1021);__LDBL_MIN__;2.2250738585072014e-308L;__POINTER_WIDTH__;64;__BIGGEST_ALIGNMENT__;8;__INT8_TYPE__;signed char;__INT8_FMTd__;"hhd";__INT8_FMTi__;"hhi";__INT8_C_SUFFIX__; ;__INT16_TYPE__;short;__INT16_FMTd__;"hd";__INT16_FMTi__;"hi";__INT16_C_SUFFIX__; ;__INT32_TYPE__;int;__INT32_FMTd__;"d";__INT32_FMTi__;"i";__INT32_C_SUFFIX__; ;__INT64_TYPE__;long long int;__INT64_FMTd__;"lld";__INT64_FMTi__;"lli";__INT64_C_SUFFIX__;LL;__UINT8_TYPE__;unsigned char;__UINT8_FMTo__;"hho";__UINT8_FMTu__;"hhu";__UINT8_FMTx__;"hhx";__UINT8_FMTX__;"hhX";__UINT8_C_SUFFIX__; ;__UINT8_MAX__;255;__INT8_MAX__;127;__UINT16_TYPE__;unsigned short;__UINT16_FMTo__;"ho";__UINT16_FMTu__;"hu";__UINT16_FMTx__;"hx";__UINT16_FMTX__;"hX";__UINT16_C_SUFFIX__; ;__UINT16_MAX__;65535;__INT16_MAX__;32767;__UINT32_TYPE__;unsigned int;__UINT32_FMTo__;"o";__UINT32_FMTu__;"u";__UINT32_FMTx__;"x";__UINT32_FMTX__;"X";__UINT32_C_SUFFIX__;U;__UINT32_MAX__;4294967295U;__INT32_MAX__;2147483647;__UINT64_TYPE__;long long unsigned int;__UINT64_FMTo__;"llo";__UINT64_FMTu__;"llu";__UINT64_FMTx__;"llx";__UINT64_FMTX__;"llX";__UINT64_C_SUFFIX__;ULL;__UINT64_MAX__;18446744073709551615ULL;__INT64_MAX__;9223372036854775807LL;__INT_LEAST8_TYPE__;signed char;__INT_LEAST8_MAX__;127;__INT_LEAST8_FMTd__;"hhd";__INT_LEAST8_FMTi__;"hhi";__UINT_LEAST8_TYPE__;unsigned char;__UINT_LEAST8_MAX__;255;__UINT_LEAST8_FMTo__;"hho";__UINT_LEAST8_FMTu__;"hhu";__UINT_LEAST8_FMTx__;"hhx";__UINT_LEAST8_FMTX__;"hhX";__INT_LEAST16_TYPE__;short;__INT_LEAST16_MAX__;32767;__INT_LEAST16_FMTd__;"hd";__INT_LEAST16_FMTi__;"hi";__UINT_LEAST16_TYPE__;unsigned short;__UINT_LEAST16_MAX__;65535;__UINT_LEAST16_FMTo__;"ho";__UINT_LEAST16_FMTu__;"hu";__UINT_LEAST16_FMTx__;"hx";__UINT_LEAST16_FMTX__;"hX";__INT_LEAST32_TYPE__;int;__INT_LEAST32_MAX__;2147483647;__INT_LEAST32_FMTd__;"d";__INT_LEAST32_FMTi__;"i";__UINT_LEAST32_TYPE__;unsigned int;__UINT_LEAST32_MAX__;4294967295U;__UINT_LEAST32_FMTo__;"o";__UINT_LEAST32_FMTu__;"u";__UINT_LEAST32_FMTx__;"x";__UINT_LEAST32_FMTX__;"X";__INT_LEAST64_TYPE__;long long int;__INT_LEAST64_MAX__;9223372036854775807LL;__INT_LEAST64_FMTd__;"lld";__INT_LEAST64_FMTi__;"lli";__UINT_LEAST64_TYPE__;long long unsigned int;__UINT_LEAST64_MAX__;18446744073709551615ULL;__UINT_LEAST64_FMTo__;"llo";__UINT_LEAST64_FMTu__;"llu";__UINT_LEAST64_FMTx__;"llx";__UINT_LEAST64_FMTX__;"llX";__INT_FAST8_TYPE__;signed char;__INT_FAST8_MAX__;127;__INT_FAST8_FMTd__;"hhd";__INT_FAST8_FMTi__;"hhi";__UINT_FAST8_TYPE__;unsigned char;__UINT_FAST8_MAX__;255;__UINT_FAST8_FMTo__;"hho";__UINT_FAST8_FMTu__;"hhu";__UINT_FAST8_FMTx__;"hhx";__UINT_FAST8_FMTX__;"hhX";__INT_FAST16_TYPE__;short;__INT_FAST16_MAX__;32767;__INT_FAST16_FMTd__;"hd";__INT_FAST16_FMTi__;"hi";__UINT_FAST16_TYPE__;unsigned short;__UINT_FAST16_MAX__;65535;__UINT_FAST16_FMTo__;"ho";__UINT_FAST16_FMTu__;"hu";__UINT_FAST16_FMTx__;"hx";__UINT_FAST16_FMTX__;"hX";__INT_FAST32_TYPE__;int;__INT_FAST32_MAX__;2147483647;__INT_FAST32_FMTd__;"d";__INT_FAST32_FMTi__;"i";__UINT_FAST32_TYPE__;unsigned int;__UINT_FAST32_MAX__;4294967295U;__UINT_FAST32_FMTo__;"o";__UINT_FAST32_FMTu__;"u";__UINT_FAST32_FMTx__;"x";__UINT_FAST32_FMTX__;"X";__INT_FAST64_TYPE__;long long int;__INT_FAST64_MAX__;9223372036854775807LL;__INT_FAST64_FMTd__;"lld";__INT_FAST64_FMTi__;"lli";__UINT_FAST64_TYPE__;long long unsigned int;__UINT_FAST64_MAX__;18446744073709551615ULL;__UINT_FAST64_FMTo__;"llo";__UINT_FAST64_FMTu__;"llu";__UINT_FAST64_FMTx__;"llx";__UINT_FAST64_FMTX__;"llX";__USER_LABEL_PREFIX__;_;__FINITE_MATH_ONLY__;0;__GNUC_STDC_INLINE__;1;__GCC_ATOMIC_TEST_AND_SET_TRUEVAL;1;__CLANG_ATOMIC_BOOL_LOCK_FREE;2;__CLANG_ATOMIC_CHAR_LOCK_FREE;2;__CLANG_ATOMIC_CHAR16_T_LOCK_FREE;2;__CLANG_ATOMIC_CHAR32_T_LOCK_FREE;2;__CLANG_ATOMIC_WCHAR_T_LOCK_FREE;2;__CLANG_ATOMIC_SHORT_LOCK_FREE;2;__CLANG_ATOMIC_INT_LOCK_FREE;2;__CLANG_ATOMIC_LONG_LOCK_FREE;2;__CLANG_ATOMIC_LLONG_LOCK_FREE;2;__CLANG_ATOMIC_POINTER_LOCK_FREE;2;__GCC_ATOMIC_BOOL_LOCK_FREE;2;__GCC_ATOMIC_CHAR_LOCK_FREE;2;__GCC_ATOMIC_CHAR16_T_LOCK_FREE;2;__GCC_ATOMIC_CHAR32_T_LOCK_FREE;2;__GCC_ATOMIC_WCHAR_T_LOCK_FREE;2;__GCC_ATOMIC_SHORT_LOCK_FREE;2;__GCC_ATOMIC_INT_LOCK_FREE;2;__GCC_ATOMIC_LONG_LOCK_FREE;2;__GCC_ATOMIC_LLONG_LOCK_FREE;2;__GCC_ATOMIC_POINTER_LOCK_FREE;2;__NO_INLINE__;1;__PIC__;2;__pic__;2;__FLT_EVAL_METHOD__;0;__FLT_RADIX__;2;__DECIMAL_DIG__;__LDBL_DECIMAL_DIG__;__SSP__;1;__nonnull;_Nonnull;__null_unspecified;_Null_unspecified;__nullable;_Nullable;__AARCH64EL__;1;__aarch64__;1;_LP64;1;__LP64__;1;__AARCH64_CMODEL_SMALL__;1;__ARM_ACLE;200;__ARM_ARCH;8;__ARM_ARCH_PROFILE;'A';__ARM_64BIT_STATE;1;__ARM_PCS_AAPCS64;1;__ARM_ARCH_ISA_A64;1;__ARM_FEATURE_CLZ;1;__ARM_FEATURE_FMA;1;__ARM_FEATURE_LDREX;0xF;__ARM_FEATURE_IDIV;1;__ARM_FEATURE_DIV;1;__ARM_FEATURE_NUMERIC_MAXMIN;1;__ARM_FEATURE_DIRECTED_ROUNDING;1;__ARM_ALIGN_MAX_STACK_PWR;4;__ARM_FP;0xE;__ARM_FP16_FORMAT_IEEE;1;__ARM_FP16_ARGS;1;__ARM_SIZEOF_WCHAR_T;4;__ARM_SIZEOF_MINIMAL_ENUM;4;__ARM_NEON;1;__ARM_NEON_FP;0xE;__ARM_FEATURE_CRC32;1;__ARM_FEATURE_CRYPTO;1;__ARM_FEATURE_AES;1;__ARM_FEATURE_SHA2;1;__ARM_FEATURE_SHA3;1;__ARM_FEATURE_SHA512;1;__ARM_FEATURE_SM3;1;__ARM_FEATURE_SM4;1;__ARM_FEATURE_UNALIGNED;1;__ARM_FEATURE_FP16_VECTOR_ARITHMETIC;1;__ARM_FEATURE_FP16_SCALAR_ARITHMETIC;1;__ARM_FEATURE_DOTPROD;1;__ARM_FEATURE_ATOMICS;1;__ARM_FEATURE_FP16_FML;1;__ARM_FEATURE_FRINT;1;__ARM_ARCH_8_3__;1;__ARM_FEATURE_COMPLEX;1;__ARM_FEATURE_JCVT;1;__ARM_FEATURE_QRDMX;1;__ARM_FEATURE_ATOMICS;1;__ARM_FEATURE_CRC32;1;__ARM_ARCH_8_4__;1;__ARM_ARCH_8_5__;1;__GCC_HAVE_SYNC_COMPARE_AND_SWAP_1;1;__GCC_HAVE_SYNC_COMPARE_AND_SWAP_2;1;__GCC_HAVE_SYNC_COMPARE_AND_SWAP_4;1;__GCC_HAVE_SYNC_COMPARE_AND_SWAP_8;1;__AARCH64_SIMD__;1;__ARM64_ARCH_8__;1;__ARM_NEON__;1;__LITTLE_ENDIAN__;1;__REGISTER_PREFIX__; ;__arm64;1;__arm64__;1;__APPLE_CC__;6000;__APPLE__;1;__STDC_NO_THREADS__;1;__apple_build_version__;13160021;__weak;__attribute__((objc_gc(weak)));__strong; ;__unsafe_unretained; ;__DYNAMIC__;1;__ENVIRONMENT_MAC_OS_X_VERSION_MIN_REQUIRED__;120000;__ENVIRONMENT_OS_VERSION_MIN_REQUIRED__;120000;__MACH__;1;__STDC__;1;__STDC_HOSTED__;1;__STDC_VERSION__;201710L;__STDC_UTF_16__;1;__STDC_UTF_32__;1;__GCC_HAVE_DWARF2_CFI_ASM;1;__llvm__;1;__clang__;1;__clang_major__;13;__clang_minor__;1;__clang_patchlevel__;6;__clang_version__;"13.1.6 (clang-1316.0.21.2.3)";__GNUC__;4;__GNUC_MINOR__;2;__GNUC_PATCHLEVEL__;1;__GXX_ABI_VERSION;1002;__GNUG__;4;__GXX_WEAK__;1;__ATOMIC_RELAXED;0;__ATOMIC_CONSUME;1;__ATOMIC_ACQUIRE;2;__ATOMIC_RELEASE;3;__ATOMIC_ACQ_REL;4;__ATOMIC_SEQ_CST;5;__OPENCL_MEMORY_SCOPE_WORK_ITEM;0;__OPENCL_MEMORY_SCOPE_WORK_GROUP;1;__OPENCL_MEMORY_SCOPE_DEVICE;2;__OPENCL_MEMORY_SCOPE_ALL_SVM_DEVICES;3;__OPENCL_MEMORY_SCOPE_SUB_GROUP;4;__PRAGMA_REDEFINE_EXTNAME;1;__VERSION__;"Apple LLVM 13.1.6 (clang-1316.0.21.2.3)";__OBJC_BOOL_IS_BOOL;1;__cpp_rtti;199711L;__cpp_exceptions;199711L;__cpp_threadsafe_static_init;200806L;__cpp_impl_destroying_delete;201806L;__CONSTANT_CFSTRINGS__;1;__block;__attribute__((__blocks__(byref)));__BLOCKS__;1;__EXCEPTIONS;1;__GXX_RTTI;1;__DEPRECATED;1;__private_extern__;extern;__clang_literal_encoding__;"UTF-8";__clang_wide_literal_encoding__;"UTF-32";__ORDER_LITTLE_ENDIAN__;1234;__ORDER_BIG_ENDIAN__;4321;__ORDER_PDP_ENDIAN__;3412;__BYTE_ORDER__;__ORDER_LITTLE_ENDIAN__;__LITTLE_ENDIAN__;1;_LP64;1;__LP64__;1;__CHAR_BIT__;8;__SCHAR_MAX__;127;__SHRT_MAX__;32767;__INT_MAX__;2147483647;__LONG_MAX__;9223372036854775807L;__LONG_LONG_MAX__;9223372036854775807LL;__WCHAR_MAX__;2147483647;__WINT_MAX__;2147483647;__INTMAX_MAX__;9223372036854775807L;__SIZE_MAX__;18446744073709551615UL;__UINTMAX_MAX__;18446744073709551615UL;__PTRDIFF_MAX__;9223372036854775807L;__INTPTR_MAX__;9223372036854775807L;__UINTPTR_MAX__;18446744073709551615UL;__SIZEOF_DOUBLE__;8;__SIZEOF_FLOAT__;4;__SIZEOF_INT__;4;__SIZEOF_LONG__;8;__SIZEOF_LONG_DOUBLE__;8;__SIZEOF_LONG_LONG__;8;__SIZEOF_POINTER__;8;__SIZEOF_SHORT__;2;__SIZEOF_PTRDIFF_T__;8;__SIZEOF_SIZE_T__;8;__SIZEOF_WCHAR_T__;4;__SIZEOF_WINT_T__;4;__SIZEOF_INT128__;16;__INTMAX_TYPE__;long int;__INTMAX_FMTd__;"ld";__INTMAX_FMTi__;"li";__INTMAX_C_SUFFIX__;L;__UINTMAX_TYPE__;long unsigned int;__UINTMAX_FMTo__;"lo";__UINTMAX_FMTu__;"lu";__UINTMAX_FMTx__;"lx";__UINTMAX_FMTX__;"lX";__UINTMAX_C_SUFFIX__;UL;__INTMAX_WIDTH__;64;__PTRDIFF_TYPE__;long int;__PTRDIFF_FMTd__;"ld";__PTRDIFF_FMTi__;"li";__PTRDIFF_WIDTH__;64;__INTPTR_TYPE__;long int;__INTPTR_FMTd__;"ld";__INTPTR_FMTi__;"li";__INTPTR_WIDTH__;64;__SIZE_TYPE__;long unsigned int;__SIZE_FMTo__;"lo";__SIZE_FMTu__;"lu";__SIZE_FMTx__;"lx";__SIZE_FMTX__;"lX";__SIZE_WIDTH__;64;__WCHAR_TYPE__;int;__WCHAR_WIDTH__;32;__WINT_TYPE__;int;__WINT_WIDTH__;32;__SIG_ATOMIC_WIDTH__;32;__SIG_ATOMIC_MAX__;2147483647;__CHAR16_TYPE__;unsigned short;__CHAR32_TYPE__;unsigned int;__UINTMAX_WIDTH__;64;__UINTPTR_TYPE__;long unsigned int;__UINTPTR_FMTo__;"lo";__UINTPTR_FMTu__;"lu";__UINTPTR_FMTx__;"lx";__UINTPTR_FMTX__;"lX";__UINTPTR_WIDTH__;64;__FLT16_DENORM_MIN__;5.9604644775390625e-8F16;__FLT16_HAS_DENORM__;1;__FLT16_DIG__;3;__FLT16_DECIMAL_DIG__;5;__FLT16_EPSILON__;9.765625e-4F16;__FLT16_HAS_INFINITY__;1;__FLT16_HAS_QUIET_NAN__;1;__FLT16_MANT_DIG__;11;__FLT16_MAX_10_EXP__;4;__FLT16_MAX_EXP__;16;__FLT16_MAX__;6.5504e+4F16;__FLT16_MIN_10_EXP__;(-4);__FLT16_MIN_EXP__;(-13);__FLT16_MIN__;6.103515625e-5F16;__FLT_DENORM_MIN__;1.40129846e-45F;__FLT_HAS_DENORM__;1;__FLT_DIG__;6;__FLT_DECIMAL_DIG__;9;__FLT_EPSILON__;1.19209290e-7F;__FLT_HAS_INFINITY__;1;__FLT_HAS_QUIET_NAN__;1;__FLT_MANT_DIG__;24;__FLT_MAX_10_EXP__;38;__FLT_MAX_EXP__;128;__FLT_MAX__;3.40282347e+38F;__FLT_MIN_10_EXP__;(-37);__FLT_MIN_EXP__;(-125);__FLT_MIN__;1.17549435e-38F;__DBL_DENORM_MIN__;4.9406564584124654e-324;__DBL_HAS_DENORM__;1;__DBL_DIG__;15;__DBL_DECIMAL_DIG__;17;__DBL_EPSILON__;2.2204460492503131e-16;__DBL_HAS_INFINITY__;1;__DBL_HAS_QUIET_NAN__;1;__DBL_MANT_DIG__;53;__DBL_MAX_10_EXP__;308;__DBL_MAX_EXP__;1024;__DBL_MAX__;1.7976931348623157e+308;__DBL_MIN_10_EXP__;(-307);__DBL_MIN_EXP__;(-1021);__DBL_MIN__;2.2250738585072014e-308;__LDBL_DENORM_MIN__;4.9406564584124654e-324L;__LDBL_HAS_DENORM__;1;__LDBL_DIG__;15;__LDBL_DECIMAL_DIG__;17;__LDBL_EPSILON__;2.2204460492503131e-16L;__LDBL_HAS_INFINITY__;1;__LDBL_HAS_QUIET_NAN__;1;__LDBL_MANT_DIG__;53;__LDBL_MAX_10_EXP__;308;__LDBL_MAX_EXP__;1024;__LDBL_MAX__;1.7976931348623157e+308L;__LDBL_MIN_10_EXP__;(-307);__LDBL_MIN_EXP__;(-1021);__LDBL_MIN__;2.2250738585072014e-308L;__POINTER_WIDTH__;64;__BIGGEST_ALIGNMENT__;8;__INT8_TYPE__;signed char;__INT8_FMTd__;"hhd";__INT8_FMTi__;"hhi";__INT8_C_SUFFIX__; ;__INT16_TYPE__;short;__INT16_FMTd__;"hd";__INT16_FMTi__;"hi";__INT16_C_SUFFIX__; ;__INT32_TYPE__;int;__INT32_FMTd__;"d";__INT32_FMTi__;"i";__INT32_C_SUFFIX__; ;__INT64_TYPE__;long long int;__INT64_FMTd__;"lld";__INT64_FMTi__;"lli";__INT64_C_SUFFIX__;LL;__UINT8_TYPE__;unsigned char;__UINT8_FMTo__;"hho";__UINT8_FMTu__;"hhu";__UINT8_FMTx__;"hhx";__UINT8_FMTX__;"hhX";__UINT8_C_SUFFIX__; ;__UINT8_MAX__;255;__INT8_MAX__;127;__UINT16_TYPE__;unsigned short;__UINT16_FMTo__;"ho";__UINT16_FMTu__;"hu";__UINT16_FMTx__;"hx";__UINT16_FMTX__;"hX";__UINT16_C_SUFFIX__; ;__UINT16_MAX__;65535;__INT16_MAX__;32767;__UINT32_TYPE__;unsigned int;__UINT32_FMTo__;"o";__UINT32_FMTu__;"u";__UINT32_FMTx__;"x";__UINT32_FMTX__;"X";__UINT32_C_SUFFIX__;U;__UINT32_MAX__;4294967295U;__INT32_MAX__;2147483647;__UINT64_TYPE__;long long unsigned int;__UINT64_FMTo__;"llo";__UINT64_FMTu__;"llu";__UINT64_FMTx__;"llx";__UINT64_FMTX__;"llX";__UINT64_C_SUFFIX__;ULL;__UINT64_MAX__;18446744073709551615ULL;__INT64_MAX__;9223372036854775807LL;__INT_LEAST8_TYPE__;signed char;__INT_LEAST8_MAX__;127;__INT_LEAST8_FMTd__;"hhd";__INT_LEAST8_FMTi__;"hhi";__UINT_LEAST8_TYPE__;unsigned char;__UINT_LEAST8_MAX__;255;__UINT_LEAST8_FMTo__;"hho";__UINT_LEAST8_FMTu__;"hhu";__UINT_LEAST8_FMTx__;"hhx";__UINT_LEAST8_FMTX__;"hhX";__INT_LEAST16_TYPE__;short;__INT_LEAST16_MAX__;32767;__INT_LEAST16_FMTd__;"hd";__INT_LEAST16_FMTi__;"hi";__UINT_LEAST16_TYPE__;unsigned short;__UINT_LEAST16_MAX__;65535;__UINT_LEAST16_FMTo__;"ho";__UINT_LEAST16_FMTu__;"hu";__UINT_LEAST16_FMTx__;"hx";__UINT_LEAST16_FMTX__;"hX";__INT_LEAST32_TYPE__;int;__INT_LEAST32_MAX__;2147483647;__INT_LEAST32_FMTd__;"d";__INT_LEAST32_FMTi__;"i";__UINT_LEAST32_TYPE__;unsigned int;__UINT_LEAST32_MAX__;4294967295U;__UINT_LEAST32_FMTo__;"o";__UINT_LEAST32_FMTu__;"u";__UINT_LEAST32_FMTx__;"x";__UINT_LEAST32_FMTX__;"X";__INT_LEAST64_TYPE__;long long int;__INT_LEAST64_MAX__;9223372036854775807LL;__INT_LEAST64_FMTd__;"lld";__INT_LEAST64_FMTi__;"lli";__UINT_LEAST64_TYPE__;long long unsigned int;__UINT_LEAST64_MAX__;18446744073709551615ULL;__UINT_LEAST64_FMTo__;"llo";__UINT_LEAST64_FMTu__;"llu";__UINT_LEAST64_FMTx__;"llx";__UINT_LEAST64_FMTX__;"llX";__INT_FAST8_TYPE__;signed char;__INT_FAST8_MAX__;127;__INT_FAST8_FMTd__;"hhd";__INT_FAST8_FMTi__;"hhi";__UINT_FAST8_TYPE__;unsigned char;__UINT_FAST8_MAX__;255;__UINT_FAST8_FMTo__;"hho";__UINT_FAST8_FMTu__;"hhu";__UINT_FAST8_FMTx__;"hhx";__UINT_FAST8_FMTX__;"hhX";__INT_FAST16_TYPE__;short;__INT_FAST16_MAX__;32767;__INT_FAST16_FMTd__;"hd";__INT_FAST16_FMTi__;"hi";__UINT_FAST16_TYPE__;unsigned short;__UINT_FAST16_MAX__;65535;__UINT_FAST16_FMTo__;"ho";__UINT_FAST16_FMTu__;"hu";__UINT_FAST16_FMTx__;"hx";__UINT_FAST16_FMTX__;"hX";__INT_FAST32_TYPE__;int;__INT_FAST32_MAX__;2147483647;__INT_FAST32_FMTd__;"d";__INT_FAST32_FMTi__;"i";__UINT_FAST32_TYPE__;unsigned int;__UINT_FAST32_MAX__;4294967295U;__UINT_FAST32_FMTo__;"o";__UINT_FAST32_FMTu__;"u";__UINT_FAST32_FMTx__;"x";__UINT_FAST32_FMTX__;"X";__INT_FAST64_TYPE__;long long int;__INT_FAST64_MAX__;9223372036854775807LL;__INT_FAST64_FMTd__;"lld";__INT_FAST64_FMTi__;"lli";__UINT_FAST64_TYPE__;long long unsigned int;__UINT_FAST64_MAX__;18446744073709551615ULL;__UINT_FAST64_FMTo__;"llo";__UINT_FAST64_FMTu__;"llu";__UINT_FAST64_FMTx__;"llx";__UINT_FAST64_FMTX__;"llX";__USER_LABEL_PREFIX__;_;__FINITE_MATH_ONLY__;0;__GNUC_GNU_INLINE__;1;__GCC_ATOMIC_TEST_AND_SET_TRUEVAL;1;__CLANG_ATOMIC_BOOL_LOCK_FREE;2;__CLANG_ATOMIC_CHAR_LOCK_FREE;2;__CLANG_ATOMIC_CHAR16_T_LOCK_FREE;2;__CLANG_ATOMIC_CHAR32_T_LOCK_FREE;2;__CLANG_ATOMIC_WCHAR_T_LOCK_FREE;2;__CLANG_ATOMIC_SHORT_LOCK_FREE;2;__CLANG_ATOMIC_INT_LOCK_FREE;2;__CLANG_ATOMIC_LONG_LOCK_FREE;2;__CLANG_ATOMIC_LLONG_LOCK_FREE;2;__CLANG_ATOMIC_POINTER_LOCK_FREE;2;__GCC_ATOMIC_BOOL_LOCK_FREE;2;__GCC_ATOMIC_CHAR_LOCK_FREE;2;__GCC_ATOMIC_CHAR16_T_LOCK_FREE;2;__GCC_ATOMIC_CHAR32_T_LOCK_FREE;2;__GCC_ATOMIC_WCHAR_T_LOCK_FREE;2;__GCC_ATOMIC_SHORT_LOCK_FREE;2;__GCC_ATOMIC_INT_LOCK_FREE;2;__GCC_ATOMIC_LONG_LOCK_FREE;2;__GCC_ATOMIC_LLONG_LOCK_FREE;2;__GCC_ATOMIC_POINTER_LOCK_FREE;2;__NO_INLINE__;1;__PIC__;2;__pic__;2;__FLT_EVAL_METHOD__;0;__FLT_RADIX__;2;__DECIMAL_DIG__;__LDBL_DECIMAL_DIG__;__SSP__;1;__nonnull;_Nonnull;__null_unspecified;_Null_unspecified;__nullable;_Nullable;__GLIBCXX_TYPE_INT_N_0;__int128;__GLIBCXX_BITSIZE_INT_N_0;128;__AARCH64EL__;1;__aarch64__;1;_LP64;1;__LP64__;1;__AARCH64_CMODEL_SMALL__;1;__ARM_ACLE;200;__ARM_ARCH;8;__ARM_ARCH_PROFILE;'A';__ARM_64BIT_STATE;1;__ARM_PCS_AAPCS64;1;__ARM_ARCH_ISA_A64;1;__ARM_FEATURE_CLZ;1;__ARM_FEATURE_FMA;1;__ARM_FEATURE_LDREX;0xF;__ARM_FEATURE_IDIV;1;__ARM_FEATURE_DIV;1;__ARM_FEATURE_NUMERIC_MAXMIN;1;__ARM_FEATURE_DIRECTED_ROUNDING;1;__ARM_ALIGN_MAX_STACK_PWR;4;__ARM_FP;0xE;__ARM_FP16_FORMAT_IEEE;1;__ARM_FP16_ARGS;1;__ARM_SIZEOF_WCHAR_T;4;__ARM_SIZEOF_MINIMAL_ENUM;4;__ARM_NEON;1;__ARM_NEON_FP;0xE;__ARM_FEATURE_CRC32;1;__ARM_FEATURE_CRYPTO;1;__ARM_FEATURE_AES;1;__ARM_FEATURE_SHA2;1;__ARM_FEATURE_SHA3;1;__ARM_FEATURE_SHA512;1;__ARM_FEATURE_SM3;1;__ARM_FEATURE_SM4;1;__ARM_FEATURE_UNALIGNED;1;__ARM_FEATURE_FP16_VECTOR_ARITHMETIC;1;__ARM_FEATURE_FP16_SCALAR_ARITHMETIC;1;__ARM_FEATURE_DOTPROD;1;__ARM_FEATURE_ATOMICS;1;__ARM_FEATURE_FP16_FML;1;__ARM_FEATURE_FRINT;1;__ARM_ARCH_8_3__;1;__ARM_FEATURE_COMPLEX;1;__ARM_FEATURE_JCVT;1;__ARM_FEATURE_QRDMX;1;__ARM_FEATURE_ATOMICS;1;__ARM_FEATURE_CRC32;1;__ARM_ARCH_8_4__;1;__ARM_ARCH_8_5__;1;__GCC_HAVE_SYNC_COMPARE_AND_SWAP_1;1;__GCC_HAVE_SYNC_COMPARE_AND_SWAP_2;1;__GCC_HAVE_SYNC_COMPARE_AND_SWAP_4;1;__GCC_HAVE_SYNC_COMPARE_AND_SWAP_8;1;__AARCH64_SIMD__;1;__ARM64_ARCH_8__;1;__ARM_NEON__;1;__LITTLE_ENDIAN__;1;__REGISTER_PREFIX__; ;__arm64;1;__arm64__;1;__APPLE_CC__;6000;__APPLE__;1;__STDC_NO_THREADS__;1;__apple_build_version__;13160021;__weak;__attribute__((objc_gc(weak)));__strong; ;__unsafe_unretained; ;__DYNAMIC__;1;__ENVIRONMENT_MAC_OS_X_VERSION_MIN_REQUIRED__;120000;__ENVIRONMENT_OS_VERSION_MIN_REQUIRED__;120000;__MACH__;1;__STDC__;1;__STDC_HOSTED__;1;__cplusplus;199711L;__STDCPP_DEFAULT_NEW_ALIGNMENT__;16UL;__STDCPP_THREADS__;1;__STDC_UTF_16__;1;__STDC_UTF_32__;1;__GCC_HAVE_DWARF2_CFI_ASM;1
+//CXX compiler system include directories
+CMAKE_EXTRA_GENERATOR_CXX_SYSTEM_INCLUDE_DIRS:INTERNAL=/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/../include/c++/v1;/usr/local/include;/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/lib/clang/13.1.6/include;/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/include;/System/Library/Frameworks;/Library/Frameworks
+//C compiler system defined macros
+CMAKE_EXTRA_GENERATOR_C_SYSTEM_DEFINED_MACROS:INTERNAL=__llvm__;1;__clang__;1;__clang_major__;13;__clang_minor__;1;__clang_patchlevel__;6;__clang_version__;"13.1.6 (clang-1316.0.21.2.3)";__GNUC__;4;__GNUC_MINOR__;2;__GNUC_PATCHLEVEL__;1;__GXX_ABI_VERSION;1002;__ATOMIC_RELAXED;0;__ATOMIC_CONSUME;1;__ATOMIC_ACQUIRE;2;__ATOMIC_RELEASE;3;__ATOMIC_ACQ_REL;4;__ATOMIC_SEQ_CST;5;__OPENCL_MEMORY_SCOPE_WORK_ITEM;0;__OPENCL_MEMORY_SCOPE_WORK_GROUP;1;__OPENCL_MEMORY_SCOPE_DEVICE;2;__OPENCL_MEMORY_SCOPE_ALL_SVM_DEVICES;3;__OPENCL_MEMORY_SCOPE_SUB_GROUP;4;__PRAGMA_REDEFINE_EXTNAME;1;__VERSION__;"Apple LLVM 13.1.6 (clang-1316.0.21.2.3)";__OBJC_BOOL_IS_BOOL;1;__CONSTANT_CFSTRINGS__;1;__block;__attribute__((__blocks__(byref)));__BLOCKS__;1;__clang_literal_encoding__;"UTF-8";__clang_wide_literal_encoding__;"UTF-32";__ORDER_LITTLE_ENDIAN__;1234;__ORDER_BIG_ENDIAN__;4321;__ORDER_PDP_ENDIAN__;3412;__BYTE_ORDER__;__ORDER_LITTLE_ENDIAN__;__LITTLE_ENDIAN__;1;_LP64;1;__LP64__;1;__CHAR_BIT__;8;__SCHAR_MAX__;127;__SHRT_MAX__;32767;__INT_MAX__;2147483647;__LONG_MAX__;9223372036854775807L;__LONG_LONG_MAX__;9223372036854775807LL;__WCHAR_MAX__;2147483647;__WINT_MAX__;2147483647;__INTMAX_MAX__;9223372036854775807L;__SIZE_MAX__;18446744073709551615UL;__UINTMAX_MAX__;18446744073709551615UL;__PTRDIFF_MAX__;9223372036854775807L;__INTPTR_MAX__;9223372036854775807L;__UINTPTR_MAX__;18446744073709551615UL;__SIZEOF_DOUBLE__;8;__SIZEOF_FLOAT__;4;__SIZEOF_INT__;4;__SIZEOF_LONG__;8;__SIZEOF_LONG_DOUBLE__;8;__SIZEOF_LONG_LONG__;8;__SIZEOF_POINTER__;8;__SIZEOF_SHORT__;2;__SIZEOF_PTRDIFF_T__;8;__SIZEOF_SIZE_T__;8;__SIZEOF_WCHAR_T__;4;__SIZEOF_WINT_T__;4;__SIZEOF_INT128__;16;__INTMAX_TYPE__;long int;__INTMAX_FMTd__;"ld";__INTMAX_FMTi__;"li";__INTMAX_C_SUFFIX__;L;__UINTMAX_TYPE__;long unsigned int;__UINTMAX_FMTo__;"lo";__UINTMAX_FMTu__;"lu";__UINTMAX_FMTx__;"lx";__UINTMAX_FMTX__;"lX";__UINTMAX_C_SUFFIX__;UL;__INTMAX_WIDTH__;64;__PTRDIFF_TYPE__;long int;__PTRDIFF_FMTd__;"ld";__PTRDIFF_FMTi__;"li";__PTRDIFF_WIDTH__;64;__INTPTR_TYPE__;long int;__INTPTR_FMTd__;"ld";__INTPTR_FMTi__;"li";__INTPTR_WIDTH__;64;__SIZE_TYPE__;long unsigned int;__SIZE_FMTo__;"lo";__SIZE_FMTu__;"lu";__SIZE_FMTx__;"lx";__SIZE_FMTX__;"lX";__SIZE_WIDTH__;64;__WCHAR_TYPE__;int;__WCHAR_WIDTH__;32;__WINT_TYPE__;int;__WINT_WIDTH__;32;__SIG_ATOMIC_WIDTH__;32;__SIG_ATOMIC_MAX__;2147483647;__CHAR16_TYPE__;unsigned short;__CHAR32_TYPE__;unsigned int;__UINTMAX_WIDTH__;64;__UINTPTR_TYPE__;long unsigned int;__UINTPTR_FMTo__;"lo";__UINTPTR_FMTu__;"lu";__UINTPTR_FMTx__;"lx";__UINTPTR_FMTX__;"lX";__UINTPTR_WIDTH__;64;__FLT16_DENORM_MIN__;5.9604644775390625e-8F16;__FLT16_HAS_DENORM__;1;__FLT16_DIG__;3;__FLT16_DECIMAL_DIG__;5;__FLT16_EPSILON__;9.765625e-4F16;__FLT16_HAS_INFINITY__;1;__FLT16_HAS_QUIET_NAN__;1;__FLT16_MANT_DIG__;11;__FLT16_MAX_10_EXP__;4;__FLT16_MAX_EXP__;16;__FLT16_MAX__;6.5504e+4F16;__FLT16_MIN_10_EXP__;(-4);__FLT16_MIN_EXP__;(-13);__FLT16_MIN__;6.103515625e-5F16;__FLT_DENORM_MIN__;1.40129846e-45F;__FLT_HAS_DENORM__;1;__FLT_DIG__;6;__FLT_DECIMAL_DIG__;9;__FLT_EPSILON__;1.19209290e-7F;__FLT_HAS_INFINITY__;1;__FLT_HAS_QUIET_NAN__;1;__FLT_MANT_DIG__;24;__FLT_MAX_10_EXP__;38;__FLT_MAX_EXP__;128;__FLT_MAX__;3.40282347e+38F;__FLT_MIN_10_EXP__;(-37);__FLT_MIN_EXP__;(-125);__FLT_MIN__;1.17549435e-38F;__DBL_DENORM_MIN__;4.9406564584124654e-324;__DBL_HAS_DENORM__;1;__DBL_DIG__;15;__DBL_DECIMAL_DIG__;17;__DBL_EPSILON__;2.2204460492503131e-16;__DBL_HAS_INFINITY__;1;__DBL_HAS_QUIET_NAN__;1;__DBL_MANT_DIG__;53;__DBL_MAX_10_EXP__;308;__DBL_MAX_EXP__;1024;__DBL_MAX__;1.7976931348623157e+308;__DBL_MIN_10_EXP__;(-307);__DBL_MIN_EXP__;(-1021);__DBL_MIN__;2.2250738585072014e-308;__LDBL_DENORM_MIN__;4.9406564584124654e-324L;__LDBL_HAS_DENORM__;1;__LDBL_DIG__;15;__LDBL_DECIMAL_DIG__;17;__LDBL_EPSILON__;2.2204460492503131e-16L;__LDBL_HAS_INFINITY__;1;__LDBL_HAS_QUIET_NAN__;1;__LDBL_MANT_DIG__;53;__LDBL_MAX_10_EXP__;308;__LDBL_MAX_EXP__;1024;__LDBL_MAX__;1.7976931348623157e+308L;__LDBL_MIN_10_EXP__;(-307);__LDBL_MIN_EXP__;(-1021);__LDBL_MIN__;2.2250738585072014e-308L;__POINTER_WIDTH__;64;__BIGGEST_ALIGNMENT__;8;__INT8_TYPE__;signed char;__INT8_FMTd__;"hhd";__INT8_FMTi__;"hhi";__INT8_C_SUFFIX__; ;__INT16_TYPE__;short;__INT16_FMTd__;"hd";__INT16_FMTi__;"hi";__INT16_C_SUFFIX__; ;__INT32_TYPE__;int;__INT32_FMTd__;"d";__INT32_FMTi__;"i";__INT32_C_SUFFIX__; ;__INT64_TYPE__;long long int;__INT64_FMTd__;"lld";__INT64_FMTi__;"lli";__INT64_C_SUFFIX__;LL;__UINT8_TYPE__;unsigned char;__UINT8_FMTo__;"hho";__UINT8_FMTu__;"hhu";__UINT8_FMTx__;"hhx";__UINT8_FMTX__;"hhX";__UINT8_C_SUFFIX__; ;__UINT8_MAX__;255;__INT8_MAX__;127;__UINT16_TYPE__;unsigned short;__UINT16_FMTo__;"ho";__UINT16_FMTu__;"hu";__UINT16_FMTx__;"hx";__UINT16_FMTX__;"hX";__UINT16_C_SUFFIX__; ;__UINT16_MAX__;65535;__INT16_MAX__;32767;__UINT32_TYPE__;unsigned int;__UINT32_FMTo__;"o";__UINT32_FMTu__;"u";__UINT32_FMTx__;"x";__UINT32_FMTX__;"X";__UINT32_C_SUFFIX__;U;__UINT32_MAX__;4294967295U;__INT32_MAX__;2147483647;__UINT64_TYPE__;long long unsigned int;__UINT64_FMTo__;"llo";__UINT64_FMTu__;"llu";__UINT64_FMTx__;"llx";__UINT64_FMTX__;"llX";__UINT64_C_SUFFIX__;ULL;__UINT64_MAX__;18446744073709551615ULL;__INT64_MAX__;9223372036854775807LL;__INT_LEAST8_TYPE__;signed char;__INT_LEAST8_MAX__;127;__INT_LEAST8_FMTd__;"hhd";__INT_LEAST8_FMTi__;"hhi";__UINT_LEAST8_TYPE__;unsigned char;__UINT_LEAST8_MAX__;255;__UINT_LEAST8_FMTo__;"hho";__UINT_LEAST8_FMTu__;"hhu";__UINT_LEAST8_FMTx__;"hhx";__UINT_LEAST8_FMTX__;"hhX";__INT_LEAST16_TYPE__;short;__INT_LEAST16_MAX__;32767;__INT_LEAST16_FMTd__;"hd";__INT_LEAST16_FMTi__;"hi";__UINT_LEAST16_TYPE__;unsigned short;__UINT_LEAST16_MAX__;65535;__UINT_LEAST16_FMTo__;"ho";__UINT_LEAST16_FMTu__;"hu";__UINT_LEAST16_FMTx__;"hx";__UINT_LEAST16_FMTX__;"hX";__INT_LEAST32_TYPE__;int;__INT_LEAST32_MAX__;2147483647;__INT_LEAST32_FMTd__;"d";__INT_LEAST32_FMTi__;"i";__UINT_LEAST32_TYPE__;unsigned int;__UINT_LEAST32_MAX__;4294967295U;__UINT_LEAST32_FMTo__;"o";__UINT_LEAST32_FMTu__;"u";__UINT_LEAST32_FMTx__;"x";__UINT_LEAST32_FMTX__;"X";__INT_LEAST64_TYPE__;long long int;__INT_LEAST64_MAX__;9223372036854775807LL;__INT_LEAST64_FMTd__;"lld";__INT_LEAST64_FMTi__;"lli";__UINT_LEAST64_TYPE__;long long unsigned int;__UINT_LEAST64_MAX__;18446744073709551615ULL;__UINT_LEAST64_FMTo__;"llo";__UINT_LEAST64_FMTu__;"llu";__UINT_LEAST64_FMTx__;"llx";__UINT_LEAST64_FMTX__;"llX";__INT_FAST8_TYPE__;signed char;__INT_FAST8_MAX__;127;__INT_FAST8_FMTd__;"hhd";__INT_FAST8_FMTi__;"hhi";__UINT_FAST8_TYPE__;unsigned char;__UINT_FAST8_MAX__;255;__UINT_FAST8_FMTo__;"hho";__UINT_FAST8_FMTu__;"hhu";__UINT_FAST8_FMTx__;"hhx";__UINT_FAST8_FMTX__;"hhX";__INT_FAST16_TYPE__;short;__INT_FAST16_MAX__;32767;__INT_FAST16_FMTd__;"hd";__INT_FAST16_FMTi__;"hi";__UINT_FAST16_TYPE__;unsigned short;__UINT_FAST16_MAX__;65535;__UINT_FAST16_FMTo__;"ho";__UINT_FAST16_FMTu__;"hu";__UINT_FAST16_FMTx__;"hx";__UINT_FAST16_FMTX__;"hX";__INT_FAST32_TYPE__;int;__INT_FAST32_MAX__;2147483647;__INT_FAST32_FMTd__;"d";__INT_FAST32_FMTi__;"i";__UINT_FAST32_TYPE__;unsigned int;__UINT_FAST32_MAX__;4294967295U;__UINT_FAST32_FMTo__;"o";__UINT_FAST32_FMTu__;"u";__UINT_FAST32_FMTx__;"x";__UINT_FAST32_FMTX__;"X";__INT_FAST64_TYPE__;long long int;__INT_FAST64_MAX__;9223372036854775807LL;__INT_FAST64_FMTd__;"lld";__INT_FAST64_FMTi__;"lli";__UINT_FAST64_TYPE__;long long unsigned int;__UINT_FAST64_MAX__;18446744073709551615ULL;__UINT_FAST64_FMTo__;"llo";__UINT_FAST64_FMTu__;"llu";__UINT_FAST64_FMTx__;"llx";__UINT_FAST64_FMTX__;"llX";__USER_LABEL_PREFIX__;_;__FINITE_MATH_ONLY__;0;__GNUC_STDC_INLINE__;1;__GCC_ATOMIC_TEST_AND_SET_TRUEVAL;1;__CLANG_ATOMIC_BOOL_LOCK_FREE;2;__CLANG_ATOMIC_CHAR_LOCK_FREE;2;__CLANG_ATOMIC_CHAR16_T_LOCK_FREE;2;__CLANG_ATOMIC_CHAR32_T_LOCK_FREE;2;__CLANG_ATOMIC_WCHAR_T_LOCK_FREE;2;__CLANG_ATOMIC_SHORT_LOCK_FREE;2;__CLANG_ATOMIC_INT_LOCK_FREE;2;__CLANG_ATOMIC_LONG_LOCK_FREE;2;__CLANG_ATOMIC_LLONG_LOCK_FREE;2;__CLANG_ATOMIC_POINTER_LOCK_FREE;2;__GCC_ATOMIC_BOOL_LOCK_FREE;2;__GCC_ATOMIC_CHAR_LOCK_FREE;2;__GCC_ATOMIC_CHAR16_T_LOCK_FREE;2;__GCC_ATOMIC_CHAR32_T_LOCK_FREE;2;__GCC_ATOMIC_WCHAR_T_LOCK_FREE;2;__GCC_ATOMIC_SHORT_LOCK_FREE;2;__GCC_ATOMIC_INT_LOCK_FREE;2;__GCC_ATOMIC_LONG_LOCK_FREE;2;__GCC_ATOMIC_LLONG_LOCK_FREE;2;__GCC_ATOMIC_POINTER_LOCK_FREE;2;__NO_INLINE__;1;__PIC__;2;__pic__;2;__FLT_EVAL_METHOD__;0;__FLT_RADIX__;2;__DECIMAL_DIG__;__LDBL_DECIMAL_DIG__;__SSP__;1;__nonnull;_Nonnull;__null_unspecified;_Null_unspecified;__nullable;_Nullable;__AARCH64EL__;1;__aarch64__;1;_LP64;1;__LP64__;1;__AARCH64_CMODEL_SMALL__;1;__ARM_ACLE;200;__ARM_ARCH;8;__ARM_ARCH_PROFILE;'A';__ARM_64BIT_STATE;1;__ARM_PCS_AAPCS64;1;__ARM_ARCH_ISA_A64;1;__ARM_FEATURE_CLZ;1;__ARM_FEATURE_FMA;1;__ARM_FEATURE_LDREX;0xF;__ARM_FEATURE_IDIV;1;__ARM_FEATURE_DIV;1;__ARM_FEATURE_NUMERIC_MAXMIN;1;__ARM_FEATURE_DIRECTED_ROUNDING;1;__ARM_ALIGN_MAX_STACK_PWR;4;__ARM_FP;0xE;__ARM_FP16_FORMAT_IEEE;1;__ARM_FP16_ARGS;1;__ARM_SIZEOF_WCHAR_T;4;__ARM_SIZEOF_MINIMAL_ENUM;4;__ARM_NEON;1;__ARM_NEON_FP;0xE;__ARM_FEATURE_CRC32;1;__ARM_FEATURE_CRYPTO;1;__ARM_FEATURE_AES;1;__ARM_FEATURE_SHA2;1;__ARM_FEATURE_SHA3;1;__ARM_FEATURE_SHA512;1;__ARM_FEATURE_SM3;1;__ARM_FEATURE_SM4;1;__ARM_FEATURE_UNALIGNED;1;__ARM_FEATURE_FP16_VECTOR_ARITHMETIC;1;__ARM_FEATURE_FP16_SCALAR_ARITHMETIC;1;__ARM_FEATURE_DOTPROD;1;__ARM_FEATURE_ATOMICS;1;__ARM_FEATURE_FP16_FML;1;__ARM_FEATURE_FRINT;1;__ARM_ARCH_8_3__;1;__ARM_FEATURE_COMPLEX;1;__ARM_FEATURE_JCVT;1;__ARM_FEATURE_QRDMX;1;__ARM_FEATURE_ATOMICS;1;__ARM_FEATURE_CRC32;1;__ARM_ARCH_8_4__;1;__ARM_ARCH_8_5__;1;__GCC_HAVE_SYNC_COMPARE_AND_SWAP_1;1;__GCC_HAVE_SYNC_COMPARE_AND_SWAP_2;1;__GCC_HAVE_SYNC_COMPARE_AND_SWAP_4;1;__GCC_HAVE_SYNC_COMPARE_AND_SWAP_8;1;__AARCH64_SIMD__;1;__ARM64_ARCH_8__;1;__ARM_NEON__;1;__LITTLE_ENDIAN__;1;__REGISTER_PREFIX__; ;__arm64;1;__arm64__;1;__APPLE_CC__;6000;__APPLE__;1;__STDC_NO_THREADS__;1;__apple_build_version__;13160021;__weak;__attribute__((objc_gc(weak)));__strong; ;__unsafe_unretained; ;__DYNAMIC__;1;__ENVIRONMENT_MAC_OS_X_VERSION_MIN_REQUIRED__;120000;__ENVIRONMENT_OS_VERSION_MIN_REQUIRED__;120000;__MACH__;1;__STDC__;1;__STDC_HOSTED__;1;__STDC_VERSION__;201710L;__STDC_UTF_16__;1;__STDC_UTF_32__;1;__GCC_HAVE_DWARF2_CFI_ASM;1
+//C compiler system include directories
+CMAKE_EXTRA_GENERATOR_C_SYSTEM_INCLUDE_DIRS:INTERNAL=/usr/local/include;/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/lib/clang/13.1.6/include;/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/include;/System/Library/Frameworks;/Library/Frameworks
+//Name of generator.
+CMAKE_GENERATOR:INTERNAL=Unix Makefiles
+//Generator instance identifier.
+CMAKE_GENERATOR_INSTANCE:INTERNAL=
+//Name of generator platform.
+CMAKE_GENERATOR_PLATFORM:INTERNAL=
+//Name of generator toolset.
+CMAKE_GENERATOR_TOOLSET:INTERNAL=
+//Test CMAKE_HAVE_LIBC_PTHREAD
+CMAKE_HAVE_LIBC_PTHREAD:INTERNAL=1
+//Have include pthread.h
+CMAKE_HAVE_PTHREAD_H:INTERNAL=1
+//Source directory with the top level CMakeLists.txt file for this
+// project
+CMAKE_HOME_DIRECTORY:INTERNAL=/Users/lukas/bht/03_NEP/wordle_de
+//ADVANCED property for variable: CMAKE_INSTALL_NAME_TOOL
+CMAKE_INSTALL_NAME_TOOL-ADVANCED:INTERNAL=1
+//ADVANCED property for variable: CMAKE_LINKER
+CMAKE_LINKER-ADVANCED:INTERNAL=1
+//ADVANCED property for variable: CMAKE_MAKE_PROGRAM
+CMAKE_MAKE_PROGRAM-ADVANCED:INTERNAL=1
+//ADVANCED property for variable: CMAKE_MODULE_LINKER_FLAGS
+CMAKE_MODULE_LINKER_FLAGS-ADVANCED:INTERNAL=1
+//ADVANCED property for variable: CMAKE_MODULE_LINKER_FLAGS_DEBUG
+CMAKE_MODULE_LINKER_FLAGS_DEBUG-ADVANCED:INTERNAL=1
+//ADVANCED property for variable: CMAKE_MODULE_LINKER_FLAGS_MINSIZEREL
+CMAKE_MODULE_LINKER_FLAGS_MINSIZEREL-ADVANCED:INTERNAL=1
+//ADVANCED property for variable: CMAKE_MODULE_LINKER_FLAGS_RELEASE
+CMAKE_MODULE_LINKER_FLAGS_RELEASE-ADVANCED:INTERNAL=1
+//ADVANCED property for variable: CMAKE_MODULE_LINKER_FLAGS_RELWITHDEBINFO
+CMAKE_MODULE_LINKER_FLAGS_RELWITHDEBINFO-ADVANCED:INTERNAL=1
+//ADVANCED property for variable: CMAKE_NM
+CMAKE_NM-ADVANCED:INTERNAL=1
+//number of local generators
+CMAKE_NUMBER_OF_MAKEFILES:INTERNAL=1
+//ADVANCED property for variable: CMAKE_OBJCOPY
+CMAKE_OBJCOPY-ADVANCED:INTERNAL=1
+//ADVANCED property for variable: CMAKE_OBJDUMP
+CMAKE_OBJDUMP-ADVANCED:INTERNAL=1
+//Platform information initialized
+CMAKE_PLATFORM_INFO_INITIALIZED:INTERNAL=1
+//ADVANCED property for variable: CMAKE_RANLIB
+CMAKE_RANLIB-ADVANCED:INTERNAL=1
+//ADVANCED property for variable: CMAKE_READELF
+CMAKE_READELF-ADVANCED:INTERNAL=1
+//Path to CMake installation.
+CMAKE_ROOT:INTERNAL=/opt/homebrew/Cellar/cmake/3.23.0/share/cmake
+//ADVANCED property for variable: CMAKE_SHARED_LINKER_FLAGS
+CMAKE_SHARED_LINKER_FLAGS-ADVANCED:INTERNAL=1
+//ADVANCED property for variable: CMAKE_SHARED_LINKER_FLAGS_DEBUG
+CMAKE_SHARED_LINKER_FLAGS_DEBUG-ADVANCED:INTERNAL=1
+//ADVANCED property for variable: CMAKE_SHARED_LINKER_FLAGS_MINSIZEREL
+CMAKE_SHARED_LINKER_FLAGS_MINSIZEREL-ADVANCED:INTERNAL=1
+//ADVANCED property for variable: CMAKE_SHARED_LINKER_FLAGS_RELEASE
+CMAKE_SHARED_LINKER_FLAGS_RELEASE-ADVANCED:INTERNAL=1
+//ADVANCED property for variable: CMAKE_SHARED_LINKER_FLAGS_RELWITHDEBINFO
+CMAKE_SHARED_LINKER_FLAGS_RELWITHDEBINFO-ADVANCED:INTERNAL=1
+//ADVANCED property for variable: CMAKE_SKIP_INSTALL_RPATH
+CMAKE_SKIP_INSTALL_RPATH-ADVANCED:INTERNAL=1
+//ADVANCED property for variable: CMAKE_SKIP_RPATH
+CMAKE_SKIP_RPATH-ADVANCED:INTERNAL=1
+//ADVANCED property for variable: CMAKE_STATIC_LINKER_FLAGS
+CMAKE_STATIC_LINKER_FLAGS-ADVANCED:INTERNAL=1
+//ADVANCED property for variable: CMAKE_STATIC_LINKER_FLAGS_DEBUG
+CMAKE_STATIC_LINKER_FLAGS_DEBUG-ADVANCED:INTERNAL=1
+//ADVANCED property for variable: CMAKE_STATIC_LINKER_FLAGS_MINSIZEREL
+CMAKE_STATIC_LINKER_FLAGS_MINSIZEREL-ADVANCED:INTERNAL=1
+//ADVANCED property for variable: CMAKE_STATIC_LINKER_FLAGS_RELEASE
+CMAKE_STATIC_LINKER_FLAGS_RELEASE-ADVANCED:INTERNAL=1
+//ADVANCED property for variable: CMAKE_STATIC_LINKER_FLAGS_RELWITHDEBINFO
+CMAKE_STATIC_LINKER_FLAGS_RELWITHDEBINFO-ADVANCED:INTERNAL=1
+//ADVANCED property for variable: CMAKE_STRIP
+CMAKE_STRIP-ADVANCED:INTERNAL=1
+//uname command
+CMAKE_UNAME:INTERNAL=/usr/bin/uname
+//ADVANCED property for variable: CMAKE_VERBOSE_MAKEFILE
+CMAKE_VERBOSE_MAKEFILE-ADVANCED:INTERNAL=1
+//Details about finding PkgConfig
+FIND_PACKAGE_MESSAGE_DETAILS_PkgConfig:INTERNAL=[/opt/homebrew/bin/pkg-config][v0.29.2()]
+//Details about finding Protobuf
+FIND_PACKAGE_MESSAGE_DETAILS_Protobuf:INTERNAL=[/opt/homebrew/lib/libprotobuf.dylib][/opt/homebrew/include][v3.19.4()]
+//ADVANCED property for variable: PKG_CONFIG_ARGN
+PKG_CONFIG_ARGN-ADVANCED:INTERNAL=1
+//ADVANCED property for variable: PKG_CONFIG_EXECUTABLE
+PKG_CONFIG_EXECUTABLE-ADVANCED:INTERNAL=1
+//ADVANCED property for variable: ProcessorCount_cmd_sysctl
+ProcessorCount_cmd_sysctl-ADVANCED:INTERNAL=1
+//ADVANCED property for variable: Protobuf_INCLUDE_DIR
+Protobuf_INCLUDE_DIR-ADVANCED:INTERNAL=1
+//ADVANCED property for variable: Protobuf_LIBRARY_DEBUG
+Protobuf_LIBRARY_DEBUG-ADVANCED:INTERNAL=1
+//ADVANCED property for variable: Protobuf_LIBRARY_RELEASE
+Protobuf_LIBRARY_RELEASE-ADVANCED:INTERNAL=1
+//ADVANCED property for variable: Protobuf_LITE_LIBRARY_DEBUG
+Protobuf_LITE_LIBRARY_DEBUG-ADVANCED:INTERNAL=1
+//ADVANCED property for variable: Protobuf_LITE_LIBRARY_RELEASE
+Protobuf_LITE_LIBRARY_RELEASE-ADVANCED:INTERNAL=1
+//ADVANCED property for variable: Protobuf_PROTOC_EXECUTABLE
+Protobuf_PROTOC_EXECUTABLE-ADVANCED:INTERNAL=1
+//ADVANCED property for variable: Protobuf_PROTOC_LIBRARY_DEBUG
+Protobuf_PROTOC_LIBRARY_DEBUG-ADVANCED:INTERNAL=1
+//ADVANCED property for variable: Protobuf_PROTOC_LIBRARY_RELEASE
+Protobuf_PROTOC_LIBRARY_RELEASE-ADVANCED:INTERNAL=1
+__pkg_config_arguments_BOTAN2:INTERNAL=REQUIRED;botan-2
+__pkg_config_checked_BOTAN2:INTERNAL=1
+//ADVANCED property for variable: pkgcfg_lib_BOTAN2_botan-2
+pkgcfg_lib_BOTAN2_botan-2-ADVANCED:INTERNAL=1
+prefix_result:INTERNAL=/opt/homebrew/Cellar/botan/2.19.1/lib
+
diff --git a/codeblocks/CMakeFiles/3.23.0/CMakeCCompiler.cmake b/codeblocks/CMakeFiles/3.23.0/CMakeCCompiler.cmake
new file mode 100644
index 0000000000000000000000000000000000000000..b8dff313852d49252eb87fe890f641300a70639a
--- /dev/null
+++ b/codeblocks/CMakeFiles/3.23.0/CMakeCCompiler.cmake
@@ -0,0 +1,72 @@
+set(CMAKE_C_COMPILER "/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/cc")
+set(CMAKE_C_COMPILER_ARG1 "")
+set(CMAKE_C_COMPILER_ID "AppleClang")
+set(CMAKE_C_COMPILER_VERSION "13.1.6.13160021")
+set(CMAKE_C_COMPILER_VERSION_INTERNAL "")
+set(CMAKE_C_COMPILER_WRAPPER "")
+set(CMAKE_C_STANDARD_COMPUTED_DEFAULT "17")
+set(CMAKE_C_EXTENSIONS_COMPUTED_DEFAULT "ON")
+set(CMAKE_C_COMPILE_FEATURES "c_std_90;c_function_prototypes;c_std_99;c_restrict;c_variadic_macros;c_std_11;c_static_assert;c_std_17;c_std_23")
+set(CMAKE_C90_COMPILE_FEATURES "c_std_90;c_function_prototypes")
+set(CMAKE_C99_COMPILE_FEATURES "c_std_99;c_restrict;c_variadic_macros")
+set(CMAKE_C11_COMPILE_FEATURES "c_std_11;c_static_assert")
+set(CMAKE_C17_COMPILE_FEATURES "c_std_17")
+set(CMAKE_C23_COMPILE_FEATURES "c_std_23")
+
+set(CMAKE_C_PLATFORM_ID "Darwin")
+set(CMAKE_C_SIMULATE_ID "")
+set(CMAKE_C_COMPILER_FRONTEND_VARIANT "")
+set(CMAKE_C_SIMULATE_VERSION "")
+
+
+
+
+set(CMAKE_AR "/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ar")
+set(CMAKE_C_COMPILER_AR "")
+set(CMAKE_RANLIB "/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ranlib")
+set(CMAKE_C_COMPILER_RANLIB "")
+set(CMAKE_LINKER "/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ld")
+set(CMAKE_MT "")
+set(CMAKE_COMPILER_IS_GNUCC )
+set(CMAKE_C_COMPILER_LOADED 1)
+set(CMAKE_C_COMPILER_WORKS TRUE)
+set(CMAKE_C_ABI_COMPILED TRUE)
+
+set(CMAKE_C_COMPILER_ENV_VAR "CC")
+
+set(CMAKE_C_COMPILER_ID_RUN 1)
+set(CMAKE_C_SOURCE_FILE_EXTENSIONS c;m)
+set(CMAKE_C_IGNORE_EXTENSIONS h;H;o;O;obj;OBJ;def;DEF;rc;RC)
+set(CMAKE_C_LINKER_PREFERENCE 10)
+
+# Save compiler ABI information.
+set(CMAKE_C_SIZEOF_DATA_PTR "8")
+set(CMAKE_C_COMPILER_ABI "")
+set(CMAKE_C_BYTE_ORDER "LITTLE_ENDIAN")
+set(CMAKE_C_LIBRARY_ARCHITECTURE "")
+
+if(CMAKE_C_SIZEOF_DATA_PTR)
+  set(CMAKE_SIZEOF_VOID_P "${CMAKE_C_SIZEOF_DATA_PTR}")
+endif()
+
+if(CMAKE_C_COMPILER_ABI)
+  set(CMAKE_INTERNAL_PLATFORM_ABI "${CMAKE_C_COMPILER_ABI}")
+endif()
+
+if(CMAKE_C_LIBRARY_ARCHITECTURE)
+  set(CMAKE_LIBRARY_ARCHITECTURE "")
+endif()
+
+set(CMAKE_C_CL_SHOWINCLUDES_PREFIX "")
+if(CMAKE_C_CL_SHOWINCLUDES_PREFIX)
+  set(CMAKE_CL_SHOWINCLUDES_PREFIX "${CMAKE_C_CL_SHOWINCLUDES_PREFIX}")
+endif()
+
+
+
+
+
+set(CMAKE_C_IMPLICIT_INCLUDE_DIRECTORIES "/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/lib/clang/13.1.6/include;/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX12.3.sdk/usr/include;/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/include")
+set(CMAKE_C_IMPLICIT_LINK_LIBRARIES "")
+set(CMAKE_C_IMPLICIT_LINK_DIRECTORIES "/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX12.3.sdk/usr/lib")
+set(CMAKE_C_IMPLICIT_LINK_FRAMEWORK_DIRECTORIES "/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX12.3.sdk/System/Library/Frameworks")
diff --git a/codeblocks/CMakeFiles/3.23.0/CMakeCXXCompiler.cmake b/codeblocks/CMakeFiles/3.23.0/CMakeCXXCompiler.cmake
new file mode 100644
index 0000000000000000000000000000000000000000..f0a6a2d6ea86eb7cf9d3346cd0267a5e956c8d6c
--- /dev/null
+++ b/codeblocks/CMakeFiles/3.23.0/CMakeCXXCompiler.cmake
@@ -0,0 +1,83 @@
+set(CMAKE_CXX_COMPILER "/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/c++")
+set(CMAKE_CXX_COMPILER_ARG1 "")
+set(CMAKE_CXX_COMPILER_ID "AppleClang")
+set(CMAKE_CXX_COMPILER_VERSION "13.1.6.13160021")
+set(CMAKE_CXX_COMPILER_VERSION_INTERNAL "")
+set(CMAKE_CXX_COMPILER_WRAPPER "")
+set(CMAKE_CXX_STANDARD_COMPUTED_DEFAULT "98")
+set(CMAKE_CXX_EXTENSIONS_COMPUTED_DEFAULT "ON")
+set(CMAKE_CXX_COMPILE_FEATURES "cxx_std_98;cxx_template_template_parameters;cxx_std_11;cxx_alias_templates;cxx_alignas;cxx_alignof;cxx_attributes;cxx_auto_type;cxx_constexpr;cxx_decltype;cxx_decltype_incomplete_return_types;cxx_default_function_template_args;cxx_defaulted_functions;cxx_defaulted_move_initializers;cxx_delegating_constructors;cxx_deleted_functions;cxx_enum_forward_declarations;cxx_explicit_conversions;cxx_extended_friend_declarations;cxx_extern_templates;cxx_final;cxx_func_identifier;cxx_generalized_initializers;cxx_inheriting_constructors;cxx_inline_namespaces;cxx_lambdas;cxx_local_type_template_args;cxx_long_long_type;cxx_noexcept;cxx_nonstatic_member_init;cxx_nullptr;cxx_override;cxx_range_for;cxx_raw_string_literals;cxx_reference_qualified_functions;cxx_right_angle_brackets;cxx_rvalue_references;cxx_sizeof_member;cxx_static_assert;cxx_strong_enums;cxx_thread_local;cxx_trailing_return_types;cxx_unicode_literals;cxx_uniform_initialization;cxx_unrestricted_unions;cxx_user_literals;cxx_variadic_macros;cxx_variadic_templates;cxx_std_14;cxx_aggregate_default_initializers;cxx_attribute_deprecated;cxx_binary_literals;cxx_contextual_conversions;cxx_decltype_auto;cxx_digit_separators;cxx_generic_lambdas;cxx_lambda_init_captures;cxx_relaxed_constexpr;cxx_return_type_deduction;cxx_variable_templates;cxx_std_17;cxx_std_20;cxx_std_23")
+set(CMAKE_CXX98_COMPILE_FEATURES "cxx_std_98;cxx_template_template_parameters")
+set(CMAKE_CXX11_COMPILE_FEATURES "cxx_std_11;cxx_alias_templates;cxx_alignas;cxx_alignof;cxx_attributes;cxx_auto_type;cxx_constexpr;cxx_decltype;cxx_decltype_incomplete_return_types;cxx_default_function_template_args;cxx_defaulted_functions;cxx_defaulted_move_initializers;cxx_delegating_constructors;cxx_deleted_functions;cxx_enum_forward_declarations;cxx_explicit_conversions;cxx_extended_friend_declarations;cxx_extern_templates;cxx_final;cxx_func_identifier;cxx_generalized_initializers;cxx_inheriting_constructors;cxx_inline_namespaces;cxx_lambdas;cxx_local_type_template_args;cxx_long_long_type;cxx_noexcept;cxx_nonstatic_member_init;cxx_nullptr;cxx_override;cxx_range_for;cxx_raw_string_literals;cxx_reference_qualified_functions;cxx_right_angle_brackets;cxx_rvalue_references;cxx_sizeof_member;cxx_static_assert;cxx_strong_enums;cxx_thread_local;cxx_trailing_return_types;cxx_unicode_literals;cxx_uniform_initialization;cxx_unrestricted_unions;cxx_user_literals;cxx_variadic_macros;cxx_variadic_templates")
+set(CMAKE_CXX14_COMPILE_FEATURES "cxx_std_14;cxx_aggregate_default_initializers;cxx_attribute_deprecated;cxx_binary_literals;cxx_contextual_conversions;cxx_decltype_auto;cxx_digit_separators;cxx_generic_lambdas;cxx_lambda_init_captures;cxx_relaxed_constexpr;cxx_return_type_deduction;cxx_variable_templates")
+set(CMAKE_CXX17_COMPILE_FEATURES "cxx_std_17")
+set(CMAKE_CXX20_COMPILE_FEATURES "cxx_std_20")
+set(CMAKE_CXX23_COMPILE_FEATURES "cxx_std_23")
+
+set(CMAKE_CXX_PLATFORM_ID "Darwin")
+set(CMAKE_CXX_SIMULATE_ID "")
+set(CMAKE_CXX_COMPILER_FRONTEND_VARIANT "")
+set(CMAKE_CXX_SIMULATE_VERSION "")
+
+
+
+
+set(CMAKE_AR "/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ar")
+set(CMAKE_CXX_COMPILER_AR "")
+set(CMAKE_RANLIB "/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ranlib")
+set(CMAKE_CXX_COMPILER_RANLIB "")
+set(CMAKE_LINKER "/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ld")
+set(CMAKE_MT "")
+set(CMAKE_COMPILER_IS_GNUCXX )
+set(CMAKE_CXX_COMPILER_LOADED 1)
+set(CMAKE_CXX_COMPILER_WORKS TRUE)
+set(CMAKE_CXX_ABI_COMPILED TRUE)
+
+set(CMAKE_CXX_COMPILER_ENV_VAR "CXX")
+
+set(CMAKE_CXX_COMPILER_ID_RUN 1)
+set(CMAKE_CXX_SOURCE_FILE_EXTENSIONS C;M;c++;cc;cpp;cxx;m;mm;mpp;CPP;ixx;cppm)
+set(CMAKE_CXX_IGNORE_EXTENSIONS inl;h;hpp;HPP;H;o;O;obj;OBJ;def;DEF;rc;RC)
+
+foreach (lang C OBJC OBJCXX)
+  if (CMAKE_${lang}_COMPILER_ID_RUN)
+    foreach(extension IN LISTS CMAKE_${lang}_SOURCE_FILE_EXTENSIONS)
+      list(REMOVE_ITEM CMAKE_CXX_SOURCE_FILE_EXTENSIONS ${extension})
+    endforeach()
+  endif()
+endforeach()
+
+set(CMAKE_CXX_LINKER_PREFERENCE 30)
+set(CMAKE_CXX_LINKER_PREFERENCE_PROPAGATES 1)
+
+# Save compiler ABI information.
+set(CMAKE_CXX_SIZEOF_DATA_PTR "8")
+set(CMAKE_CXX_COMPILER_ABI "")
+set(CMAKE_CXX_BYTE_ORDER "LITTLE_ENDIAN")
+set(CMAKE_CXX_LIBRARY_ARCHITECTURE "")
+
+if(CMAKE_CXX_SIZEOF_DATA_PTR)
+  set(CMAKE_SIZEOF_VOID_P "${CMAKE_CXX_SIZEOF_DATA_PTR}")
+endif()
+
+if(CMAKE_CXX_COMPILER_ABI)
+  set(CMAKE_INTERNAL_PLATFORM_ABI "${CMAKE_CXX_COMPILER_ABI}")
+endif()
+
+if(CMAKE_CXX_LIBRARY_ARCHITECTURE)
+  set(CMAKE_LIBRARY_ARCHITECTURE "")
+endif()
+
+set(CMAKE_CXX_CL_SHOWINCLUDES_PREFIX "")
+if(CMAKE_CXX_CL_SHOWINCLUDES_PREFIX)
+  set(CMAKE_CL_SHOWINCLUDES_PREFIX "${CMAKE_CXX_CL_SHOWINCLUDES_PREFIX}")
+endif()
+
+
+
+
+
+set(CMAKE_CXX_IMPLICIT_INCLUDE_DIRECTORIES "/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX12.3.sdk/usr/include/c++/v1;/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/lib/clang/13.1.6/include;/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX12.3.sdk/usr/include;/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/include")
+set(CMAKE_CXX_IMPLICIT_LINK_LIBRARIES "c++")
+set(CMAKE_CXX_IMPLICIT_LINK_DIRECTORIES "/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX12.3.sdk/usr/lib")
+set(CMAKE_CXX_IMPLICIT_LINK_FRAMEWORK_DIRECTORIES "/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX12.3.sdk/System/Library/Frameworks")
diff --git a/codeblocks/CMakeFiles/3.23.0/CMakeDetermineCompilerABI_C.bin b/codeblocks/CMakeFiles/3.23.0/CMakeDetermineCompilerABI_C.bin
new file mode 100755
index 0000000000000000000000000000000000000000..375e128bf71b9d954c81bb5f92dc28ee58985eb0
Binary files /dev/null and b/codeblocks/CMakeFiles/3.23.0/CMakeDetermineCompilerABI_C.bin differ
diff --git a/codeblocks/CMakeFiles/3.23.0/CMakeDetermineCompilerABI_CXX.bin b/codeblocks/CMakeFiles/3.23.0/CMakeDetermineCompilerABI_CXX.bin
new file mode 100755
index 0000000000000000000000000000000000000000..cd1b753ac97736e635e74d4ec23f9df74d0a0805
Binary files /dev/null and b/codeblocks/CMakeFiles/3.23.0/CMakeDetermineCompilerABI_CXX.bin differ
diff --git a/codeblocks/CMakeFiles/3.23.0/CMakeSystem.cmake b/codeblocks/CMakeFiles/3.23.0/CMakeSystem.cmake
new file mode 100644
index 0000000000000000000000000000000000000000..22253c2e9611d9b0eb99e51a918a38001f897131
--- /dev/null
+++ b/codeblocks/CMakeFiles/3.23.0/CMakeSystem.cmake
@@ -0,0 +1,15 @@
+set(CMAKE_HOST_SYSTEM "Darwin-21.4.0")
+set(CMAKE_HOST_SYSTEM_NAME "Darwin")
+set(CMAKE_HOST_SYSTEM_VERSION "21.4.0")
+set(CMAKE_HOST_SYSTEM_PROCESSOR "arm64")
+
+
+
+set(CMAKE_SYSTEM "Darwin-21.4.0")
+set(CMAKE_SYSTEM_NAME "Darwin")
+set(CMAKE_SYSTEM_VERSION "21.4.0")
+set(CMAKE_SYSTEM_PROCESSOR "arm64")
+
+set(CMAKE_CROSSCOMPILING "FALSE")
+
+set(CMAKE_SYSTEM_LOADED 1)
diff --git a/codeblocks/CMakeFiles/3.23.0/CompilerIdC/CMakeCCompilerId.c b/codeblocks/CMakeFiles/3.23.0/CompilerIdC/CMakeCCompilerId.c
new file mode 100644
index 0000000000000000000000000000000000000000..26b2f9e6482c75a9e3a7c81e6e3990b5e75f0e5b
--- /dev/null
+++ b/codeblocks/CMakeFiles/3.23.0/CompilerIdC/CMakeCCompilerId.c
@@ -0,0 +1,828 @@
+#ifdef __cplusplus
+# error "A C++ compiler has been selected for C."
+#endif
+
+#if defined(__18CXX)
+# define ID_VOID_MAIN
+#endif
+#if defined(__CLASSIC_C__)
+/* cv-qualifiers did not exist in K&R C */
+# define const
+# define volatile
+#endif
+
+#if !defined(__has_include)
+/* If the compiler does not have __has_include, pretend the answer is
+   always no.  */
+#  define __has_include(x) 0
+#endif
+
+
+/* Version number components: V=Version, R=Revision, P=Patch
+   Version date components:   YYYY=Year, MM=Month,   DD=Day  */
+
+#if defined(__INTEL_COMPILER) || defined(__ICC)
+# define COMPILER_ID "Intel"
+# if defined(_MSC_VER)
+#  define SIMULATE_ID "MSVC"
+# endif
+# if defined(__GNUC__)
+#  define SIMULATE_ID "GNU"
+# endif
+  /* __INTEL_COMPILER = VRP prior to 2021, and then VVVV for 2021 and later,
+     except that a few beta releases use the old format with V=2021.  */
+# if __INTEL_COMPILER < 2021 || __INTEL_COMPILER == 202110 || __INTEL_COMPILER == 202111
+#  define COMPILER_VERSION_MAJOR DEC(__INTEL_COMPILER/100)
+#  define COMPILER_VERSION_MINOR DEC(__INTEL_COMPILER/10 % 10)
+#  if defined(__INTEL_COMPILER_UPDATE)
+#   define COMPILER_VERSION_PATCH DEC(__INTEL_COMPILER_UPDATE)
+#  else
+#   define COMPILER_VERSION_PATCH DEC(__INTEL_COMPILER   % 10)
+#  endif
+# else
+#  define COMPILER_VERSION_MAJOR DEC(__INTEL_COMPILER)
+#  define COMPILER_VERSION_MINOR DEC(__INTEL_COMPILER_UPDATE)
+   /* The third version component from --version is an update index,
+      but no macro is provided for it.  */
+#  define COMPILER_VERSION_PATCH DEC(0)
+# endif
+# if defined(__INTEL_COMPILER_BUILD_DATE)
+   /* __INTEL_COMPILER_BUILD_DATE = YYYYMMDD */
+#  define COMPILER_VERSION_TWEAK DEC(__INTEL_COMPILER_BUILD_DATE)
+# endif
+# if defined(_MSC_VER)
+   /* _MSC_VER = VVRR */
+#  define SIMULATE_VERSION_MAJOR DEC(_MSC_VER / 100)
+#  define SIMULATE_VERSION_MINOR DEC(_MSC_VER % 100)
+# endif
+# if defined(__GNUC__)
+#  define SIMULATE_VERSION_MAJOR DEC(__GNUC__)
+# elif defined(__GNUG__)
+#  define SIMULATE_VERSION_MAJOR DEC(__GNUG__)
+# endif
+# if defined(__GNUC_MINOR__)
+#  define SIMULATE_VERSION_MINOR DEC(__GNUC_MINOR__)
+# endif
+# if defined(__GNUC_PATCHLEVEL__)
+#  define SIMULATE_VERSION_PATCH DEC(__GNUC_PATCHLEVEL__)
+# endif
+
+#elif (defined(__clang__) && defined(__INTEL_CLANG_COMPILER)) || defined(__INTEL_LLVM_COMPILER)
+# define COMPILER_ID "IntelLLVM"
+#if defined(_MSC_VER)
+# define SIMULATE_ID "MSVC"
+#endif
+#if defined(__GNUC__)
+# define SIMULATE_ID "GNU"
+#endif
+/* __INTEL_LLVM_COMPILER = VVVVRP prior to 2021.2.0, VVVVRRPP for 2021.2.0 and
+ * later.  Look for 6 digit vs. 8 digit version number to decide encoding.
+ * VVVV is no smaller than the current year when a version is released.
+ */
+#if __INTEL_LLVM_COMPILER < 1000000L
+# define COMPILER_VERSION_MAJOR DEC(__INTEL_LLVM_COMPILER/100)
+# define COMPILER_VERSION_MINOR DEC(__INTEL_LLVM_COMPILER/10 % 10)
+# define COMPILER_VERSION_PATCH DEC(__INTEL_LLVM_COMPILER    % 10)
+#else
+# define COMPILER_VERSION_MAJOR DEC(__INTEL_LLVM_COMPILER/10000)
+# define COMPILER_VERSION_MINOR DEC(__INTEL_LLVM_COMPILER/100 % 100)
+# define COMPILER_VERSION_PATCH DEC(__INTEL_LLVM_COMPILER     % 100)
+#endif
+#if defined(_MSC_VER)
+  /* _MSC_VER = VVRR */
+# define SIMULATE_VERSION_MAJOR DEC(_MSC_VER / 100)
+# define SIMULATE_VERSION_MINOR DEC(_MSC_VER % 100)
+#endif
+#if defined(__GNUC__)
+# define SIMULATE_VERSION_MAJOR DEC(__GNUC__)
+#elif defined(__GNUG__)
+# define SIMULATE_VERSION_MAJOR DEC(__GNUG__)
+#endif
+#if defined(__GNUC_MINOR__)
+# define SIMULATE_VERSION_MINOR DEC(__GNUC_MINOR__)
+#endif
+#if defined(__GNUC_PATCHLEVEL__)
+# define SIMULATE_VERSION_PATCH DEC(__GNUC_PATCHLEVEL__)
+#endif
+
+#elif defined(__PATHCC__)
+# define COMPILER_ID "PathScale"
+# define COMPILER_VERSION_MAJOR DEC(__PATHCC__)
+# define COMPILER_VERSION_MINOR DEC(__PATHCC_MINOR__)
+# if defined(__PATHCC_PATCHLEVEL__)
+#  define COMPILER_VERSION_PATCH DEC(__PATHCC_PATCHLEVEL__)
+# endif
+
+#elif defined(__BORLANDC__) && defined(__CODEGEARC_VERSION__)
+# define COMPILER_ID "Embarcadero"
+# define COMPILER_VERSION_MAJOR HEX(__CODEGEARC_VERSION__>>24 & 0x00FF)
+# define COMPILER_VERSION_MINOR HEX(__CODEGEARC_VERSION__>>16 & 0x00FF)
+# define COMPILER_VERSION_PATCH DEC(__CODEGEARC_VERSION__     & 0xFFFF)
+
+#elif defined(__BORLANDC__)
+# define COMPILER_ID "Borland"
+  /* __BORLANDC__ = 0xVRR */
+# define COMPILER_VERSION_MAJOR HEX(__BORLANDC__>>8)
+# define COMPILER_VERSION_MINOR HEX(__BORLANDC__ & 0xFF)
+
+#elif defined(__WATCOMC__) && __WATCOMC__ < 1200
+# define COMPILER_ID "Watcom"
+   /* __WATCOMC__ = VVRR */
+# define COMPILER_VERSION_MAJOR DEC(__WATCOMC__ / 100)
+# define COMPILER_VERSION_MINOR DEC((__WATCOMC__ / 10) % 10)
+# if (__WATCOMC__ % 10) > 0
+#  define COMPILER_VERSION_PATCH DEC(__WATCOMC__ % 10)
+# endif
+
+#elif defined(__WATCOMC__)
+# define COMPILER_ID "OpenWatcom"
+   /* __WATCOMC__ = VVRP + 1100 */
+# define COMPILER_VERSION_MAJOR DEC((__WATCOMC__ - 1100) / 100)
+# define COMPILER_VERSION_MINOR DEC((__WATCOMC__ / 10) % 10)
+# if (__WATCOMC__ % 10) > 0
+#  define COMPILER_VERSION_PATCH DEC(__WATCOMC__ % 10)
+# endif
+
+#elif defined(__SUNPRO_C)
+# define COMPILER_ID "SunPro"
+# if __SUNPRO_C >= 0x5100
+   /* __SUNPRO_C = 0xVRRP */
+#  define COMPILER_VERSION_MAJOR HEX(__SUNPRO_C>>12)
+#  define COMPILER_VERSION_MINOR HEX(__SUNPRO_C>>4 & 0xFF)
+#  define COMPILER_VERSION_PATCH HEX(__SUNPRO_C    & 0xF)
+# else
+   /* __SUNPRO_CC = 0xVRP */
+#  define COMPILER_VERSION_MAJOR HEX(__SUNPRO_C>>8)
+#  define COMPILER_VERSION_MINOR HEX(__SUNPRO_C>>4 & 0xF)
+#  define COMPILER_VERSION_PATCH HEX(__SUNPRO_C    & 0xF)
+# endif
+
+#elif defined(__HP_cc)
+# define COMPILER_ID "HP"
+  /* __HP_cc = VVRRPP */
+# define COMPILER_VERSION_MAJOR DEC(__HP_cc/10000)
+# define COMPILER_VERSION_MINOR DEC(__HP_cc/100 % 100)
+# define COMPILER_VERSION_PATCH DEC(__HP_cc     % 100)
+
+#elif defined(__DECC)
+# define COMPILER_ID "Compaq"
+  /* __DECC_VER = VVRRTPPPP */
+# define COMPILER_VERSION_MAJOR DEC(__DECC_VER/10000000)
+# define COMPILER_VERSION_MINOR DEC(__DECC_VER/100000  % 100)
+# define COMPILER_VERSION_PATCH DEC(__DECC_VER         % 10000)
+
+#elif defined(__IBMC__) && defined(__COMPILER_VER__)
+# define COMPILER_ID "zOS"
+  /* __IBMC__ = VRP */
+# define COMPILER_VERSION_MAJOR DEC(__IBMC__/100)
+# define COMPILER_VERSION_MINOR DEC(__IBMC__/10 % 10)
+# define COMPILER_VERSION_PATCH DEC(__IBMC__    % 10)
+
+#elif defined(__open_xl__) && defined(__clang__)
+# define COMPILER_ID "IBMClang"
+# define COMPILER_VERSION_MAJOR DEC(__open_xl_version__)
+# define COMPILER_VERSION_MINOR DEC(__open_xl_release__)
+# define COMPILER_VERSION_PATCH DEC(__open_xl_modification__)
+# define COMPILER_VERSION_TWEAK DEC(__open_xl_ptf_fix_level__)
+
+
+#elif defined(__ibmxl__) && defined(__clang__)
+# define COMPILER_ID "XLClang"
+# define COMPILER_VERSION_MAJOR DEC(__ibmxl_version__)
+# define COMPILER_VERSION_MINOR DEC(__ibmxl_release__)
+# define COMPILER_VERSION_PATCH DEC(__ibmxl_modification__)
+# define COMPILER_VERSION_TWEAK DEC(__ibmxl_ptf_fix_level__)
+
+
+#elif defined(__IBMC__) && !defined(__COMPILER_VER__) && __IBMC__ >= 800
+# define COMPILER_ID "XL"
+  /* __IBMC__ = VRP */
+# define COMPILER_VERSION_MAJOR DEC(__IBMC__/100)
+# define COMPILER_VERSION_MINOR DEC(__IBMC__/10 % 10)
+# define COMPILER_VERSION_PATCH DEC(__IBMC__    % 10)
+
+#elif defined(__IBMC__) && !defined(__COMPILER_VER__) && __IBMC__ < 800
+# define COMPILER_ID "VisualAge"
+  /* __IBMC__ = VRP */
+# define COMPILER_VERSION_MAJOR DEC(__IBMC__/100)
+# define COMPILER_VERSION_MINOR DEC(__IBMC__/10 % 10)
+# define COMPILER_VERSION_PATCH DEC(__IBMC__    % 10)
+
+#elif defined(__NVCOMPILER)
+# define COMPILER_ID "NVHPC"
+# define COMPILER_VERSION_MAJOR DEC(__NVCOMPILER_MAJOR__)
+# define COMPILER_VERSION_MINOR DEC(__NVCOMPILER_MINOR__)
+# if defined(__NVCOMPILER_PATCHLEVEL__)
+#  define COMPILER_VERSION_PATCH DEC(__NVCOMPILER_PATCHLEVEL__)
+# endif
+
+#elif defined(__PGI)
+# define COMPILER_ID "PGI"
+# define COMPILER_VERSION_MAJOR DEC(__PGIC__)
+# define COMPILER_VERSION_MINOR DEC(__PGIC_MINOR__)
+# if defined(__PGIC_PATCHLEVEL__)
+#  define COMPILER_VERSION_PATCH DEC(__PGIC_PATCHLEVEL__)
+# endif
+
+#elif defined(_CRAYC)
+# define COMPILER_ID "Cray"
+# define COMPILER_VERSION_MAJOR DEC(_RELEASE_MAJOR)
+# define COMPILER_VERSION_MINOR DEC(_RELEASE_MINOR)
+
+#elif defined(__TI_COMPILER_VERSION__)
+# define COMPILER_ID "TI"
+  /* __TI_COMPILER_VERSION__ = VVVRRRPPP */
+# define COMPILER_VERSION_MAJOR DEC(__TI_COMPILER_VERSION__/1000000)
+# define COMPILER_VERSION_MINOR DEC(__TI_COMPILER_VERSION__/1000   % 1000)
+# define COMPILER_VERSION_PATCH DEC(__TI_COMPILER_VERSION__        % 1000)
+
+#elif defined(__CLANG_FUJITSU)
+# define COMPILER_ID "FujitsuClang"
+# define COMPILER_VERSION_MAJOR DEC(__FCC_major__)
+# define COMPILER_VERSION_MINOR DEC(__FCC_minor__)
+# define COMPILER_VERSION_PATCH DEC(__FCC_patchlevel__)
+# define COMPILER_VERSION_INTERNAL_STR __clang_version__
+
+
+#elif defined(__FUJITSU)
+# define COMPILER_ID "Fujitsu"
+# if defined(__FCC_version__)
+#   define COMPILER_VERSION __FCC_version__
+# elif defined(__FCC_major__)
+#   define COMPILER_VERSION_MAJOR DEC(__FCC_major__)
+#   define COMPILER_VERSION_MINOR DEC(__FCC_minor__)
+#   define COMPILER_VERSION_PATCH DEC(__FCC_patchlevel__)
+# endif
+# if defined(__fcc_version)
+#   define COMPILER_VERSION_INTERNAL DEC(__fcc_version)
+# elif defined(__FCC_VERSION)
+#   define COMPILER_VERSION_INTERNAL DEC(__FCC_VERSION)
+# endif
+
+
+#elif defined(__ghs__)
+# define COMPILER_ID "GHS"
+/* __GHS_VERSION_NUMBER = VVVVRP */
+# ifdef __GHS_VERSION_NUMBER
+# define COMPILER_VERSION_MAJOR DEC(__GHS_VERSION_NUMBER / 100)
+# define COMPILER_VERSION_MINOR DEC(__GHS_VERSION_NUMBER / 10 % 10)
+# define COMPILER_VERSION_PATCH DEC(__GHS_VERSION_NUMBER      % 10)
+# endif
+
+#elif defined(__TINYC__)
+# define COMPILER_ID "TinyCC"
+
+#elif defined(__BCC__)
+# define COMPILER_ID "Bruce"
+
+#elif defined(__SCO_VERSION__)
+# define COMPILER_ID "SCO"
+
+#elif defined(__ARMCC_VERSION) && !defined(__clang__)
+# define COMPILER_ID "ARMCC"
+#if __ARMCC_VERSION >= 1000000
+  /* __ARMCC_VERSION = VRRPPPP */
+  # define COMPILER_VERSION_MAJOR DEC(__ARMCC_VERSION/1000000)
+  # define COMPILER_VERSION_MINOR DEC(__ARMCC_VERSION/10000 % 100)
+  # define COMPILER_VERSION_PATCH DEC(__ARMCC_VERSION     % 10000)
+#else
+  /* __ARMCC_VERSION = VRPPPP */
+  # define COMPILER_VERSION_MAJOR DEC(__ARMCC_VERSION/100000)
+  # define COMPILER_VERSION_MINOR DEC(__ARMCC_VERSION/10000 % 10)
+  # define COMPILER_VERSION_PATCH DEC(__ARMCC_VERSION    % 10000)
+#endif
+
+
+#elif defined(__clang__) && defined(__apple_build_version__)
+# define COMPILER_ID "AppleClang"
+# if defined(_MSC_VER)
+#  define SIMULATE_ID "MSVC"
+# endif
+# define COMPILER_VERSION_MAJOR DEC(__clang_major__)
+# define COMPILER_VERSION_MINOR DEC(__clang_minor__)
+# define COMPILER_VERSION_PATCH DEC(__clang_patchlevel__)
+# if defined(_MSC_VER)
+   /* _MSC_VER = VVRR */
+#  define SIMULATE_VERSION_MAJOR DEC(_MSC_VER / 100)
+#  define SIMULATE_VERSION_MINOR DEC(_MSC_VER % 100)
+# endif
+# define COMPILER_VERSION_TWEAK DEC(__apple_build_version__)
+
+#elif defined(__clang__) && defined(__ARMCOMPILER_VERSION)
+# define COMPILER_ID "ARMClang"
+  # define COMPILER_VERSION_MAJOR DEC(__ARMCOMPILER_VERSION/1000000)
+  # define COMPILER_VERSION_MINOR DEC(__ARMCOMPILER_VERSION/10000 % 100)
+  # define COMPILER_VERSION_PATCH DEC(__ARMCOMPILER_VERSION     % 10000)
+# define COMPILER_VERSION_INTERNAL DEC(__ARMCOMPILER_VERSION)
+
+#elif defined(__clang__)
+# define COMPILER_ID "Clang"
+# if defined(_MSC_VER)
+#  define SIMULATE_ID "MSVC"
+# endif
+# define COMPILER_VERSION_MAJOR DEC(__clang_major__)
+# define COMPILER_VERSION_MINOR DEC(__clang_minor__)
+# define COMPILER_VERSION_PATCH DEC(__clang_patchlevel__)
+# if defined(_MSC_VER)
+   /* _MSC_VER = VVRR */
+#  define SIMULATE_VERSION_MAJOR DEC(_MSC_VER / 100)
+#  define SIMULATE_VERSION_MINOR DEC(_MSC_VER % 100)
+# endif
+
+#elif defined(__LCC__) && (defined(__GNUC__) || defined(__GNUG__) || defined(__MCST__))
+# define COMPILER_ID "LCC"
+# define COMPILER_VERSION_MAJOR DEC(1)
+# if defined(__LCC__)
+#  define COMPILER_VERSION_MINOR DEC(__LCC__- 100)
+# endif
+# if defined(__LCC_MINOR__)
+#  define COMPILER_VERSION_PATCH DEC(__LCC_MINOR__)
+# endif
+# if defined(__GNUC__) && defined(__GNUC_MINOR__)
+#  define SIMULATE_ID "GNU"
+#  define SIMULATE_VERSION_MAJOR DEC(__GNUC__)
+#  define SIMULATE_VERSION_MINOR DEC(__GNUC_MINOR__)
+#  if defined(__GNUC_PATCHLEVEL__)
+#   define SIMULATE_VERSION_PATCH DEC(__GNUC_PATCHLEVEL__)
+#  endif
+# endif
+
+#elif defined(__GNUC__)
+# define COMPILER_ID "GNU"
+# define COMPILER_VERSION_MAJOR DEC(__GNUC__)
+# if defined(__GNUC_MINOR__)
+#  define COMPILER_VERSION_MINOR DEC(__GNUC_MINOR__)
+# endif
+# if defined(__GNUC_PATCHLEVEL__)
+#  define COMPILER_VERSION_PATCH DEC(__GNUC_PATCHLEVEL__)
+# endif
+
+#elif defined(_MSC_VER)
+# define COMPILER_ID "MSVC"
+  /* _MSC_VER = VVRR */
+# define COMPILER_VERSION_MAJOR DEC(_MSC_VER / 100)
+# define COMPILER_VERSION_MINOR DEC(_MSC_VER % 100)
+# if defined(_MSC_FULL_VER)
+#  if _MSC_VER >= 1400
+    /* _MSC_FULL_VER = VVRRPPPPP */
+#   define COMPILER_VERSION_PATCH DEC(_MSC_FULL_VER % 100000)
+#  else
+    /* _MSC_FULL_VER = VVRRPPPP */
+#   define COMPILER_VERSION_PATCH DEC(_MSC_FULL_VER % 10000)
+#  endif
+# endif
+# if defined(_MSC_BUILD)
+#  define COMPILER_VERSION_TWEAK DEC(_MSC_BUILD)
+# endif
+
+#elif defined(__VISUALDSPVERSION__) || defined(__ADSPBLACKFIN__) || defined(__ADSPTS__) || defined(__ADSP21000__)
+# define COMPILER_ID "ADSP"
+#if defined(__VISUALDSPVERSION__)
+  /* __VISUALDSPVERSION__ = 0xVVRRPP00 */
+# define COMPILER_VERSION_MAJOR HEX(__VISUALDSPVERSION__>>24)
+# define COMPILER_VERSION_MINOR HEX(__VISUALDSPVERSION__>>16 & 0xFF)
+# define COMPILER_VERSION_PATCH HEX(__VISUALDSPVERSION__>>8  & 0xFF)
+#endif
+
+#elif defined(__IAR_SYSTEMS_ICC__) || defined(__IAR_SYSTEMS_ICC)
+# define COMPILER_ID "IAR"
+# if defined(__VER__) && defined(__ICCARM__)
+#  define COMPILER_VERSION_MAJOR DEC((__VER__) / 1000000)
+#  define COMPILER_VERSION_MINOR DEC(((__VER__) / 1000) % 1000)
+#  define COMPILER_VERSION_PATCH DEC((__VER__) % 1000)
+#  define COMPILER_VERSION_INTERNAL DEC(__IAR_SYSTEMS_ICC__)
+# elif defined(__VER__) && (defined(__ICCAVR__) || defined(__ICCRX__) || defined(__ICCRH850__) || defined(__ICCRL78__) || defined(__ICC430__) || defined(__ICCRISCV__) || defined(__ICCV850__) || defined(__ICC8051__) || defined(__ICCSTM8__))
+#  define COMPILER_VERSION_MAJOR DEC((__VER__) / 100)
+#  define COMPILER_VERSION_MINOR DEC((__VER__) - (((__VER__) / 100)*100))
+#  define COMPILER_VERSION_PATCH DEC(__SUBVERSION__)
+#  define COMPILER_VERSION_INTERNAL DEC(__IAR_SYSTEMS_ICC__)
+# endif
+
+#elif defined(__SDCC_VERSION_MAJOR) || defined(SDCC)
+# define COMPILER_ID "SDCC"
+# if defined(__SDCC_VERSION_MAJOR)
+#  define COMPILER_VERSION_MAJOR DEC(__SDCC_VERSION_MAJOR)
+#  define COMPILER_VERSION_MINOR DEC(__SDCC_VERSION_MINOR)
+#  define COMPILER_VERSION_PATCH DEC(__SDCC_VERSION_PATCH)
+# else
+  /* SDCC = VRP */
+#  define COMPILER_VERSION_MAJOR DEC(SDCC/100)
+#  define COMPILER_VERSION_MINOR DEC(SDCC/10 % 10)
+#  define COMPILER_VERSION_PATCH DEC(SDCC    % 10)
+# endif
+
+
+/* These compilers are either not known or too old to define an
+  identification macro.  Try to identify the platform and guess that
+  it is the native compiler.  */
+#elif defined(__hpux) || defined(__hpua)
+# define COMPILER_ID "HP"
+
+#else /* unknown compiler */
+# define COMPILER_ID ""
+#endif
+
+/* Construct the string literal in pieces to prevent the source from
+   getting matched.  Store it in a pointer rather than an array
+   because some compilers will just produce instructions to fill the
+   array rather than assigning a pointer to a static array.  */
+char const* info_compiler = "INFO" ":" "compiler[" COMPILER_ID "]";
+#ifdef SIMULATE_ID
+char const* info_simulate = "INFO" ":" "simulate[" SIMULATE_ID "]";
+#endif
+
+#ifdef __QNXNTO__
+char const* qnxnto = "INFO" ":" "qnxnto[]";
+#endif
+
+#if defined(__CRAYXT_COMPUTE_LINUX_TARGET)
+char const *info_cray = "INFO" ":" "compiler_wrapper[CrayPrgEnv]";
+#endif
+
+#define STRINGIFY_HELPER(X) #X
+#define STRINGIFY(X) STRINGIFY_HELPER(X)
+
+/* Identify known platforms by name.  */
+#if defined(__linux) || defined(__linux__) || defined(linux)
+# define PLATFORM_ID "Linux"
+
+#elif defined(__MSYS__)
+# define PLATFORM_ID "MSYS"
+
+#elif defined(__CYGWIN__)
+# define PLATFORM_ID "Cygwin"
+
+#elif defined(__MINGW32__)
+# define PLATFORM_ID "MinGW"
+
+#elif defined(__APPLE__)
+# define PLATFORM_ID "Darwin"
+
+#elif defined(_WIN32) || defined(__WIN32__) || defined(WIN32)
+# define PLATFORM_ID "Windows"
+
+#elif defined(__FreeBSD__) || defined(__FreeBSD)
+# define PLATFORM_ID "FreeBSD"
+
+#elif defined(__NetBSD__) || defined(__NetBSD)
+# define PLATFORM_ID "NetBSD"
+
+#elif defined(__OpenBSD__) || defined(__OPENBSD)
+# define PLATFORM_ID "OpenBSD"
+
+#elif defined(__sun) || defined(sun)
+# define PLATFORM_ID "SunOS"
+
+#elif defined(_AIX) || defined(__AIX) || defined(__AIX__) || defined(__aix) || defined(__aix__)
+# define PLATFORM_ID "AIX"
+
+#elif defined(__hpux) || defined(__hpux__)
+# define PLATFORM_ID "HP-UX"
+
+#elif defined(__HAIKU__)
+# define PLATFORM_ID "Haiku"
+
+#elif defined(__BeOS) || defined(__BEOS__) || defined(_BEOS)
+# define PLATFORM_ID "BeOS"
+
+#elif defined(__QNX__) || defined(__QNXNTO__)
+# define PLATFORM_ID "QNX"
+
+#elif defined(__tru64) || defined(_tru64) || defined(__TRU64__)
+# define PLATFORM_ID "Tru64"
+
+#elif defined(__riscos) || defined(__riscos__)
+# define PLATFORM_ID "RISCos"
+
+#elif defined(__sinix) || defined(__sinix__) || defined(__SINIX__)
+# define PLATFORM_ID "SINIX"
+
+#elif defined(__UNIX_SV__)
+# define PLATFORM_ID "UNIX_SV"
+
+#elif defined(__bsdos__)
+# define PLATFORM_ID "BSDOS"
+
+#elif defined(_MPRAS) || defined(MPRAS)
+# define PLATFORM_ID "MP-RAS"
+
+#elif defined(__osf) || defined(__osf__)
+# define PLATFORM_ID "OSF1"
+
+#elif defined(_SCO_SV) || defined(SCO_SV) || defined(sco_sv)
+# define PLATFORM_ID "SCO_SV"
+
+#elif defined(__ultrix) || defined(__ultrix__) || defined(_ULTRIX)
+# define PLATFORM_ID "ULTRIX"
+
+#elif defined(__XENIX__) || defined(_XENIX) || defined(XENIX)
+# define PLATFORM_ID "Xenix"
+
+#elif defined(__WATCOMC__)
+# if defined(__LINUX__)
+#  define PLATFORM_ID "Linux"
+
+# elif defined(__DOS__)
+#  define PLATFORM_ID "DOS"
+
+# elif defined(__OS2__)
+#  define PLATFORM_ID "OS2"
+
+# elif defined(__WINDOWS__)
+#  define PLATFORM_ID "Windows3x"
+
+# elif defined(__VXWORKS__)
+#  define PLATFORM_ID "VxWorks"
+
+# else /* unknown platform */
+#  define PLATFORM_ID
+# endif
+
+#elif defined(__INTEGRITY)
+# if defined(INT_178B)
+#  define PLATFORM_ID "Integrity178"
+
+# else /* regular Integrity */
+#  define PLATFORM_ID "Integrity"
+# endif
+
+#else /* unknown platform */
+# define PLATFORM_ID
+
+#endif
+
+/* For windows compilers MSVC and Intel we can determine
+   the architecture of the compiler being used.  This is because
+   the compilers do not have flags that can change the architecture,
+   but rather depend on which compiler is being used
+*/
+#if defined(_WIN32) && defined(_MSC_VER)
+# if defined(_M_IA64)
+#  define ARCHITECTURE_ID "IA64"
+
+# elif defined(_M_ARM64EC)
+#  define ARCHITECTURE_ID "ARM64EC"
+
+# elif defined(_M_X64) || defined(_M_AMD64)
+#  define ARCHITECTURE_ID "x64"
+
+# elif defined(_M_IX86)
+#  define ARCHITECTURE_ID "X86"
+
+# elif defined(_M_ARM64)
+#  define ARCHITECTURE_ID "ARM64"
+
+# elif defined(_M_ARM)
+#  if _M_ARM == 4
+#   define ARCHITECTURE_ID "ARMV4I"
+#  elif _M_ARM == 5
+#   define ARCHITECTURE_ID "ARMV5I"
+#  else
+#   define ARCHITECTURE_ID "ARMV" STRINGIFY(_M_ARM)
+#  endif
+
+# elif defined(_M_MIPS)
+#  define ARCHITECTURE_ID "MIPS"
+
+# elif defined(_M_SH)
+#  define ARCHITECTURE_ID "SHx"
+
+# else /* unknown architecture */
+#  define ARCHITECTURE_ID ""
+# endif
+
+#elif defined(__WATCOMC__)
+# if defined(_M_I86)
+#  define ARCHITECTURE_ID "I86"
+
+# elif defined(_M_IX86)
+#  define ARCHITECTURE_ID "X86"
+
+# else /* unknown architecture */
+#  define ARCHITECTURE_ID ""
+# endif
+
+#elif defined(__IAR_SYSTEMS_ICC__) || defined(__IAR_SYSTEMS_ICC)
+# if defined(__ICCARM__)
+#  define ARCHITECTURE_ID "ARM"
+
+# elif defined(__ICCRX__)
+#  define ARCHITECTURE_ID "RX"
+
+# elif defined(__ICCRH850__)
+#  define ARCHITECTURE_ID "RH850"
+
+# elif defined(__ICCRL78__)
+#  define ARCHITECTURE_ID "RL78"
+
+# elif defined(__ICCRISCV__)
+#  define ARCHITECTURE_ID "RISCV"
+
+# elif defined(__ICCAVR__)
+#  define ARCHITECTURE_ID "AVR"
+
+# elif defined(__ICC430__)
+#  define ARCHITECTURE_ID "MSP430"
+
+# elif defined(__ICCV850__)
+#  define ARCHITECTURE_ID "V850"
+
+# elif defined(__ICC8051__)
+#  define ARCHITECTURE_ID "8051"
+
+# elif defined(__ICCSTM8__)
+#  define ARCHITECTURE_ID "STM8"
+
+# else /* unknown architecture */
+#  define ARCHITECTURE_ID ""
+# endif
+
+#elif defined(__ghs__)
+# if defined(__PPC64__)
+#  define ARCHITECTURE_ID "PPC64"
+
+# elif defined(__ppc__)
+#  define ARCHITECTURE_ID "PPC"
+
+# elif defined(__ARM__)
+#  define ARCHITECTURE_ID "ARM"
+
+# elif defined(__x86_64__)
+#  define ARCHITECTURE_ID "x64"
+
+# elif defined(__i386__)
+#  define ARCHITECTURE_ID "X86"
+
+# else /* unknown architecture */
+#  define ARCHITECTURE_ID ""
+# endif
+
+#elif defined(__TI_COMPILER_VERSION__)
+# if defined(__TI_ARM__)
+#  define ARCHITECTURE_ID "ARM"
+
+# elif defined(__MSP430__)
+#  define ARCHITECTURE_ID "MSP430"
+
+# elif defined(__TMS320C28XX__)
+#  define ARCHITECTURE_ID "TMS320C28x"
+
+# elif defined(__TMS320C6X__) || defined(_TMS320C6X)
+#  define ARCHITECTURE_ID "TMS320C6x"
+
+# else /* unknown architecture */
+#  define ARCHITECTURE_ID ""
+# endif
+
+#else
+#  define ARCHITECTURE_ID
+#endif
+
+/* Convert integer to decimal digit literals.  */
+#define DEC(n)                   \
+  ('0' + (((n) / 10000000)%10)), \
+  ('0' + (((n) / 1000000)%10)),  \
+  ('0' + (((n) / 100000)%10)),   \
+  ('0' + (((n) / 10000)%10)),    \
+  ('0' + (((n) / 1000)%10)),     \
+  ('0' + (((n) / 100)%10)),      \
+  ('0' + (((n) / 10)%10)),       \
+  ('0' +  ((n) % 10))
+
+/* Convert integer to hex digit literals.  */
+#define HEX(n)             \
+  ('0' + ((n)>>28 & 0xF)), \
+  ('0' + ((n)>>24 & 0xF)), \
+  ('0' + ((n)>>20 & 0xF)), \
+  ('0' + ((n)>>16 & 0xF)), \
+  ('0' + ((n)>>12 & 0xF)), \
+  ('0' + ((n)>>8  & 0xF)), \
+  ('0' + ((n)>>4  & 0xF)), \
+  ('0' + ((n)     & 0xF))
+
+/* Construct a string literal encoding the version number. */
+#ifdef COMPILER_VERSION
+char const* info_version = "INFO" ":" "compiler_version[" COMPILER_VERSION "]";
+
+/* Construct a string literal encoding the version number components. */
+#elif defined(COMPILER_VERSION_MAJOR)
+char const info_version[] = {
+  'I', 'N', 'F', 'O', ':',
+  'c','o','m','p','i','l','e','r','_','v','e','r','s','i','o','n','[',
+  COMPILER_VERSION_MAJOR,
+# ifdef COMPILER_VERSION_MINOR
+  '.', COMPILER_VERSION_MINOR,
+#  ifdef COMPILER_VERSION_PATCH
+   '.', COMPILER_VERSION_PATCH,
+#   ifdef COMPILER_VERSION_TWEAK
+    '.', COMPILER_VERSION_TWEAK,
+#   endif
+#  endif
+# endif
+  ']','\0'};
+#endif
+
+/* Construct a string literal encoding the internal version number. */
+#ifdef COMPILER_VERSION_INTERNAL
+char const info_version_internal[] = {
+  'I', 'N', 'F', 'O', ':',
+  'c','o','m','p','i','l','e','r','_','v','e','r','s','i','o','n','_',
+  'i','n','t','e','r','n','a','l','[',
+  COMPILER_VERSION_INTERNAL,']','\0'};
+#elif defined(COMPILER_VERSION_INTERNAL_STR)
+char const* info_version_internal = "INFO" ":" "compiler_version_internal[" COMPILER_VERSION_INTERNAL_STR "]";
+#endif
+
+/* Construct a string literal encoding the version number components. */
+#ifdef SIMULATE_VERSION_MAJOR
+char const info_simulate_version[] = {
+  'I', 'N', 'F', 'O', ':',
+  's','i','m','u','l','a','t','e','_','v','e','r','s','i','o','n','[',
+  SIMULATE_VERSION_MAJOR,
+# ifdef SIMULATE_VERSION_MINOR
+  '.', SIMULATE_VERSION_MINOR,
+#  ifdef SIMULATE_VERSION_PATCH
+   '.', SIMULATE_VERSION_PATCH,
+#   ifdef SIMULATE_VERSION_TWEAK
+    '.', SIMULATE_VERSION_TWEAK,
+#   endif
+#  endif
+# endif
+  ']','\0'};
+#endif
+
+/* Construct the string literal in pieces to prevent the source from
+   getting matched.  Store it in a pointer rather than an array
+   because some compilers will just produce instructions to fill the
+   array rather than assigning a pointer to a static array.  */
+char const* info_platform = "INFO" ":" "platform[" PLATFORM_ID "]";
+char const* info_arch = "INFO" ":" "arch[" ARCHITECTURE_ID "]";
+
+
+
+#if !defined(__STDC__) && !defined(__clang__)
+# if defined(_MSC_VER) || defined(__ibmxl__) || defined(__IBMC__)
+#  define C_VERSION "90"
+# else
+#  define C_VERSION
+# endif
+#elif __STDC_VERSION__ > 201710L
+# define C_VERSION "23"
+#elif __STDC_VERSION__ >= 201710L
+# define C_VERSION "17"
+#elif __STDC_VERSION__ >= 201000L
+# define C_VERSION "11"
+#elif __STDC_VERSION__ >= 199901L
+# define C_VERSION "99"
+#else
+# define C_VERSION "90"
+#endif
+const char* info_language_standard_default =
+  "INFO" ":" "standard_default[" C_VERSION "]";
+
+const char* info_language_extensions_default = "INFO" ":" "extensions_default["
+#if (defined(__clang__) || defined(__GNUC__) || defined(__xlC__) ||           \
+     defined(__TI_COMPILER_VERSION__)) &&                                     \
+  !defined(__STRICT_ANSI__)
+  "ON"
+#else
+  "OFF"
+#endif
+"]";
+
+/*--------------------------------------------------------------------------*/
+
+#ifdef ID_VOID_MAIN
+void main() {}
+#else
+# if defined(__CLASSIC_C__)
+int main(argc, argv) int argc; char *argv[];
+# else
+int main(int argc, char* argv[])
+# endif
+{
+  int require = 0;
+  require += info_compiler[argc];
+  require += info_platform[argc];
+  require += info_arch[argc];
+#ifdef COMPILER_VERSION_MAJOR
+  require += info_version[argc];
+#endif
+#ifdef COMPILER_VERSION_INTERNAL
+  require += info_version_internal[argc];
+#endif
+#ifdef SIMULATE_ID
+  require += info_simulate[argc];
+#endif
+#ifdef SIMULATE_VERSION_MAJOR
+  require += info_simulate_version[argc];
+#endif
+#if defined(__CRAYXT_COMPUTE_LINUX_TARGET)
+  require += info_cray[argc];
+#endif
+  require += info_language_standard_default[argc];
+  require += info_language_extensions_default[argc];
+  (void)argv;
+  return require;
+}
+#endif
diff --git a/codeblocks/CMakeFiles/3.23.0/CompilerIdC/CMakeCCompilerId.o b/codeblocks/CMakeFiles/3.23.0/CompilerIdC/CMakeCCompilerId.o
new file mode 100644
index 0000000000000000000000000000000000000000..537fbf261a76f93972038901b25169a2bbc47274
Binary files /dev/null and b/codeblocks/CMakeFiles/3.23.0/CompilerIdC/CMakeCCompilerId.o differ
diff --git a/codeblocks/CMakeFiles/3.23.0/CompilerIdCXX/CMakeCXXCompilerId.cpp b/codeblocks/CMakeFiles/3.23.0/CompilerIdCXX/CMakeCXXCompilerId.cpp
new file mode 100644
index 0000000000000000000000000000000000000000..57a7a8515a589571a070fa8d579cc6c2e529600a
--- /dev/null
+++ b/codeblocks/CMakeFiles/3.23.0/CompilerIdCXX/CMakeCXXCompilerId.cpp
@@ -0,0 +1,816 @@
+/* This source file must have a .cpp extension so that all C++ compilers
+   recognize the extension without flags.  Borland does not know .cxx for
+   example.  */
+#ifndef __cplusplus
+# error "A C compiler has been selected for C++."
+#endif
+
+#if !defined(__has_include)
+/* If the compiler does not have __has_include, pretend the answer is
+   always no.  */
+#  define __has_include(x) 0
+#endif
+
+
+/* Version number components: V=Version, R=Revision, P=Patch
+   Version date components:   YYYY=Year, MM=Month,   DD=Day  */
+
+#if defined(__COMO__)
+# define COMPILER_ID "Comeau"
+  /* __COMO_VERSION__ = VRR */
+# define COMPILER_VERSION_MAJOR DEC(__COMO_VERSION__ / 100)
+# define COMPILER_VERSION_MINOR DEC(__COMO_VERSION__ % 100)
+
+#elif defined(__INTEL_COMPILER) || defined(__ICC)
+# define COMPILER_ID "Intel"
+# if defined(_MSC_VER)
+#  define SIMULATE_ID "MSVC"
+# endif
+# if defined(__GNUC__)
+#  define SIMULATE_ID "GNU"
+# endif
+  /* __INTEL_COMPILER = VRP prior to 2021, and then VVVV for 2021 and later,
+     except that a few beta releases use the old format with V=2021.  */
+# if __INTEL_COMPILER < 2021 || __INTEL_COMPILER == 202110 || __INTEL_COMPILER == 202111
+#  define COMPILER_VERSION_MAJOR DEC(__INTEL_COMPILER/100)
+#  define COMPILER_VERSION_MINOR DEC(__INTEL_COMPILER/10 % 10)
+#  if defined(__INTEL_COMPILER_UPDATE)
+#   define COMPILER_VERSION_PATCH DEC(__INTEL_COMPILER_UPDATE)
+#  else
+#   define COMPILER_VERSION_PATCH DEC(__INTEL_COMPILER   % 10)
+#  endif
+# else
+#  define COMPILER_VERSION_MAJOR DEC(__INTEL_COMPILER)
+#  define COMPILER_VERSION_MINOR DEC(__INTEL_COMPILER_UPDATE)
+   /* The third version component from --version is an update index,
+      but no macro is provided for it.  */
+#  define COMPILER_VERSION_PATCH DEC(0)
+# endif
+# if defined(__INTEL_COMPILER_BUILD_DATE)
+   /* __INTEL_COMPILER_BUILD_DATE = YYYYMMDD */
+#  define COMPILER_VERSION_TWEAK DEC(__INTEL_COMPILER_BUILD_DATE)
+# endif
+# if defined(_MSC_VER)
+   /* _MSC_VER = VVRR */
+#  define SIMULATE_VERSION_MAJOR DEC(_MSC_VER / 100)
+#  define SIMULATE_VERSION_MINOR DEC(_MSC_VER % 100)
+# endif
+# if defined(__GNUC__)
+#  define SIMULATE_VERSION_MAJOR DEC(__GNUC__)
+# elif defined(__GNUG__)
+#  define SIMULATE_VERSION_MAJOR DEC(__GNUG__)
+# endif
+# if defined(__GNUC_MINOR__)
+#  define SIMULATE_VERSION_MINOR DEC(__GNUC_MINOR__)
+# endif
+# if defined(__GNUC_PATCHLEVEL__)
+#  define SIMULATE_VERSION_PATCH DEC(__GNUC_PATCHLEVEL__)
+# endif
+
+#elif (defined(__clang__) && defined(__INTEL_CLANG_COMPILER)) || defined(__INTEL_LLVM_COMPILER)
+# define COMPILER_ID "IntelLLVM"
+#if defined(_MSC_VER)
+# define SIMULATE_ID "MSVC"
+#endif
+#if defined(__GNUC__)
+# define SIMULATE_ID "GNU"
+#endif
+/* __INTEL_LLVM_COMPILER = VVVVRP prior to 2021.2.0, VVVVRRPP for 2021.2.0 and
+ * later.  Look for 6 digit vs. 8 digit version number to decide encoding.
+ * VVVV is no smaller than the current year when a version is released.
+ */
+#if __INTEL_LLVM_COMPILER < 1000000L
+# define COMPILER_VERSION_MAJOR DEC(__INTEL_LLVM_COMPILER/100)
+# define COMPILER_VERSION_MINOR DEC(__INTEL_LLVM_COMPILER/10 % 10)
+# define COMPILER_VERSION_PATCH DEC(__INTEL_LLVM_COMPILER    % 10)
+#else
+# define COMPILER_VERSION_MAJOR DEC(__INTEL_LLVM_COMPILER/10000)
+# define COMPILER_VERSION_MINOR DEC(__INTEL_LLVM_COMPILER/100 % 100)
+# define COMPILER_VERSION_PATCH DEC(__INTEL_LLVM_COMPILER     % 100)
+#endif
+#if defined(_MSC_VER)
+  /* _MSC_VER = VVRR */
+# define SIMULATE_VERSION_MAJOR DEC(_MSC_VER / 100)
+# define SIMULATE_VERSION_MINOR DEC(_MSC_VER % 100)
+#endif
+#if defined(__GNUC__)
+# define SIMULATE_VERSION_MAJOR DEC(__GNUC__)
+#elif defined(__GNUG__)
+# define SIMULATE_VERSION_MAJOR DEC(__GNUG__)
+#endif
+#if defined(__GNUC_MINOR__)
+# define SIMULATE_VERSION_MINOR DEC(__GNUC_MINOR__)
+#endif
+#if defined(__GNUC_PATCHLEVEL__)
+# define SIMULATE_VERSION_PATCH DEC(__GNUC_PATCHLEVEL__)
+#endif
+
+#elif defined(__PATHCC__)
+# define COMPILER_ID "PathScale"
+# define COMPILER_VERSION_MAJOR DEC(__PATHCC__)
+# define COMPILER_VERSION_MINOR DEC(__PATHCC_MINOR__)
+# if defined(__PATHCC_PATCHLEVEL__)
+#  define COMPILER_VERSION_PATCH DEC(__PATHCC_PATCHLEVEL__)
+# endif
+
+#elif defined(__BORLANDC__) && defined(__CODEGEARC_VERSION__)
+# define COMPILER_ID "Embarcadero"
+# define COMPILER_VERSION_MAJOR HEX(__CODEGEARC_VERSION__>>24 & 0x00FF)
+# define COMPILER_VERSION_MINOR HEX(__CODEGEARC_VERSION__>>16 & 0x00FF)
+# define COMPILER_VERSION_PATCH DEC(__CODEGEARC_VERSION__     & 0xFFFF)
+
+#elif defined(__BORLANDC__)
+# define COMPILER_ID "Borland"
+  /* __BORLANDC__ = 0xVRR */
+# define COMPILER_VERSION_MAJOR HEX(__BORLANDC__>>8)
+# define COMPILER_VERSION_MINOR HEX(__BORLANDC__ & 0xFF)
+
+#elif defined(__WATCOMC__) && __WATCOMC__ < 1200
+# define COMPILER_ID "Watcom"
+   /* __WATCOMC__ = VVRR */
+# define COMPILER_VERSION_MAJOR DEC(__WATCOMC__ / 100)
+# define COMPILER_VERSION_MINOR DEC((__WATCOMC__ / 10) % 10)
+# if (__WATCOMC__ % 10) > 0
+#  define COMPILER_VERSION_PATCH DEC(__WATCOMC__ % 10)
+# endif
+
+#elif defined(__WATCOMC__)
+# define COMPILER_ID "OpenWatcom"
+   /* __WATCOMC__ = VVRP + 1100 */
+# define COMPILER_VERSION_MAJOR DEC((__WATCOMC__ - 1100) / 100)
+# define COMPILER_VERSION_MINOR DEC((__WATCOMC__ / 10) % 10)
+# if (__WATCOMC__ % 10) > 0
+#  define COMPILER_VERSION_PATCH DEC(__WATCOMC__ % 10)
+# endif
+
+#elif defined(__SUNPRO_CC)
+# define COMPILER_ID "SunPro"
+# if __SUNPRO_CC >= 0x5100
+   /* __SUNPRO_CC = 0xVRRP */
+#  define COMPILER_VERSION_MAJOR HEX(__SUNPRO_CC>>12)
+#  define COMPILER_VERSION_MINOR HEX(__SUNPRO_CC>>4 & 0xFF)
+#  define COMPILER_VERSION_PATCH HEX(__SUNPRO_CC    & 0xF)
+# else
+   /* __SUNPRO_CC = 0xVRP */
+#  define COMPILER_VERSION_MAJOR HEX(__SUNPRO_CC>>8)
+#  define COMPILER_VERSION_MINOR HEX(__SUNPRO_CC>>4 & 0xF)
+#  define COMPILER_VERSION_PATCH HEX(__SUNPRO_CC    & 0xF)
+# endif
+
+#elif defined(__HP_aCC)
+# define COMPILER_ID "HP"
+  /* __HP_aCC = VVRRPP */
+# define COMPILER_VERSION_MAJOR DEC(__HP_aCC/10000)
+# define COMPILER_VERSION_MINOR DEC(__HP_aCC/100 % 100)
+# define COMPILER_VERSION_PATCH DEC(__HP_aCC     % 100)
+
+#elif defined(__DECCXX)
+# define COMPILER_ID "Compaq"
+  /* __DECCXX_VER = VVRRTPPPP */
+# define COMPILER_VERSION_MAJOR DEC(__DECCXX_VER/10000000)
+# define COMPILER_VERSION_MINOR DEC(__DECCXX_VER/100000  % 100)
+# define COMPILER_VERSION_PATCH DEC(__DECCXX_VER         % 10000)
+
+#elif defined(__IBMCPP__) && defined(__COMPILER_VER__)
+# define COMPILER_ID "zOS"
+  /* __IBMCPP__ = VRP */
+# define COMPILER_VERSION_MAJOR DEC(__IBMCPP__/100)
+# define COMPILER_VERSION_MINOR DEC(__IBMCPP__/10 % 10)
+# define COMPILER_VERSION_PATCH DEC(__IBMCPP__    % 10)
+
+#elif defined(__open_xl__) && defined(__clang__)
+# define COMPILER_ID "IBMClang"
+# define COMPILER_VERSION_MAJOR DEC(__open_xl_version__)
+# define COMPILER_VERSION_MINOR DEC(__open_xl_release__)
+# define COMPILER_VERSION_PATCH DEC(__open_xl_modification__)
+# define COMPILER_VERSION_TWEAK DEC(__open_xl_ptf_fix_level__)
+
+
+#elif defined(__ibmxl__) && defined(__clang__)
+# define COMPILER_ID "XLClang"
+# define COMPILER_VERSION_MAJOR DEC(__ibmxl_version__)
+# define COMPILER_VERSION_MINOR DEC(__ibmxl_release__)
+# define COMPILER_VERSION_PATCH DEC(__ibmxl_modification__)
+# define COMPILER_VERSION_TWEAK DEC(__ibmxl_ptf_fix_level__)
+
+
+#elif defined(__IBMCPP__) && !defined(__COMPILER_VER__) && __IBMCPP__ >= 800
+# define COMPILER_ID "XL"
+  /* __IBMCPP__ = VRP */
+# define COMPILER_VERSION_MAJOR DEC(__IBMCPP__/100)
+# define COMPILER_VERSION_MINOR DEC(__IBMCPP__/10 % 10)
+# define COMPILER_VERSION_PATCH DEC(__IBMCPP__    % 10)
+
+#elif defined(__IBMCPP__) && !defined(__COMPILER_VER__) && __IBMCPP__ < 800
+# define COMPILER_ID "VisualAge"
+  /* __IBMCPP__ = VRP */
+# define COMPILER_VERSION_MAJOR DEC(__IBMCPP__/100)
+# define COMPILER_VERSION_MINOR DEC(__IBMCPP__/10 % 10)
+# define COMPILER_VERSION_PATCH DEC(__IBMCPP__    % 10)
+
+#elif defined(__NVCOMPILER)
+# define COMPILER_ID "NVHPC"
+# define COMPILER_VERSION_MAJOR DEC(__NVCOMPILER_MAJOR__)
+# define COMPILER_VERSION_MINOR DEC(__NVCOMPILER_MINOR__)
+# if defined(__NVCOMPILER_PATCHLEVEL__)
+#  define COMPILER_VERSION_PATCH DEC(__NVCOMPILER_PATCHLEVEL__)
+# endif
+
+#elif defined(__PGI)
+# define COMPILER_ID "PGI"
+# define COMPILER_VERSION_MAJOR DEC(__PGIC__)
+# define COMPILER_VERSION_MINOR DEC(__PGIC_MINOR__)
+# if defined(__PGIC_PATCHLEVEL__)
+#  define COMPILER_VERSION_PATCH DEC(__PGIC_PATCHLEVEL__)
+# endif
+
+#elif defined(_CRAYC)
+# define COMPILER_ID "Cray"
+# define COMPILER_VERSION_MAJOR DEC(_RELEASE_MAJOR)
+# define COMPILER_VERSION_MINOR DEC(_RELEASE_MINOR)
+
+#elif defined(__TI_COMPILER_VERSION__)
+# define COMPILER_ID "TI"
+  /* __TI_COMPILER_VERSION__ = VVVRRRPPP */
+# define COMPILER_VERSION_MAJOR DEC(__TI_COMPILER_VERSION__/1000000)
+# define COMPILER_VERSION_MINOR DEC(__TI_COMPILER_VERSION__/1000   % 1000)
+# define COMPILER_VERSION_PATCH DEC(__TI_COMPILER_VERSION__        % 1000)
+
+#elif defined(__CLANG_FUJITSU)
+# define COMPILER_ID "FujitsuClang"
+# define COMPILER_VERSION_MAJOR DEC(__FCC_major__)
+# define COMPILER_VERSION_MINOR DEC(__FCC_minor__)
+# define COMPILER_VERSION_PATCH DEC(__FCC_patchlevel__)
+# define COMPILER_VERSION_INTERNAL_STR __clang_version__
+
+
+#elif defined(__FUJITSU)
+# define COMPILER_ID "Fujitsu"
+# if defined(__FCC_version__)
+#   define COMPILER_VERSION __FCC_version__
+# elif defined(__FCC_major__)
+#   define COMPILER_VERSION_MAJOR DEC(__FCC_major__)
+#   define COMPILER_VERSION_MINOR DEC(__FCC_minor__)
+#   define COMPILER_VERSION_PATCH DEC(__FCC_patchlevel__)
+# endif
+# if defined(__fcc_version)
+#   define COMPILER_VERSION_INTERNAL DEC(__fcc_version)
+# elif defined(__FCC_VERSION)
+#   define COMPILER_VERSION_INTERNAL DEC(__FCC_VERSION)
+# endif
+
+
+#elif defined(__ghs__)
+# define COMPILER_ID "GHS"
+/* __GHS_VERSION_NUMBER = VVVVRP */
+# ifdef __GHS_VERSION_NUMBER
+# define COMPILER_VERSION_MAJOR DEC(__GHS_VERSION_NUMBER / 100)
+# define COMPILER_VERSION_MINOR DEC(__GHS_VERSION_NUMBER / 10 % 10)
+# define COMPILER_VERSION_PATCH DEC(__GHS_VERSION_NUMBER      % 10)
+# endif
+
+#elif defined(__SCO_VERSION__)
+# define COMPILER_ID "SCO"
+
+#elif defined(__ARMCC_VERSION) && !defined(__clang__)
+# define COMPILER_ID "ARMCC"
+#if __ARMCC_VERSION >= 1000000
+  /* __ARMCC_VERSION = VRRPPPP */
+  # define COMPILER_VERSION_MAJOR DEC(__ARMCC_VERSION/1000000)
+  # define COMPILER_VERSION_MINOR DEC(__ARMCC_VERSION/10000 % 100)
+  # define COMPILER_VERSION_PATCH DEC(__ARMCC_VERSION     % 10000)
+#else
+  /* __ARMCC_VERSION = VRPPPP */
+  # define COMPILER_VERSION_MAJOR DEC(__ARMCC_VERSION/100000)
+  # define COMPILER_VERSION_MINOR DEC(__ARMCC_VERSION/10000 % 10)
+  # define COMPILER_VERSION_PATCH DEC(__ARMCC_VERSION    % 10000)
+#endif
+
+
+#elif defined(__clang__) && defined(__apple_build_version__)
+# define COMPILER_ID "AppleClang"
+# if defined(_MSC_VER)
+#  define SIMULATE_ID "MSVC"
+# endif
+# define COMPILER_VERSION_MAJOR DEC(__clang_major__)
+# define COMPILER_VERSION_MINOR DEC(__clang_minor__)
+# define COMPILER_VERSION_PATCH DEC(__clang_patchlevel__)
+# if defined(_MSC_VER)
+   /* _MSC_VER = VVRR */
+#  define SIMULATE_VERSION_MAJOR DEC(_MSC_VER / 100)
+#  define SIMULATE_VERSION_MINOR DEC(_MSC_VER % 100)
+# endif
+# define COMPILER_VERSION_TWEAK DEC(__apple_build_version__)
+
+#elif defined(__clang__) && defined(__ARMCOMPILER_VERSION)
+# define COMPILER_ID "ARMClang"
+  # define COMPILER_VERSION_MAJOR DEC(__ARMCOMPILER_VERSION/1000000)
+  # define COMPILER_VERSION_MINOR DEC(__ARMCOMPILER_VERSION/10000 % 100)
+  # define COMPILER_VERSION_PATCH DEC(__ARMCOMPILER_VERSION     % 10000)
+# define COMPILER_VERSION_INTERNAL DEC(__ARMCOMPILER_VERSION)
+
+#elif defined(__clang__)
+# define COMPILER_ID "Clang"
+# if defined(_MSC_VER)
+#  define SIMULATE_ID "MSVC"
+# endif
+# define COMPILER_VERSION_MAJOR DEC(__clang_major__)
+# define COMPILER_VERSION_MINOR DEC(__clang_minor__)
+# define COMPILER_VERSION_PATCH DEC(__clang_patchlevel__)
+# if defined(_MSC_VER)
+   /* _MSC_VER = VVRR */
+#  define SIMULATE_VERSION_MAJOR DEC(_MSC_VER / 100)
+#  define SIMULATE_VERSION_MINOR DEC(_MSC_VER % 100)
+# endif
+
+#elif defined(__LCC__) && (defined(__GNUC__) || defined(__GNUG__) || defined(__MCST__))
+# define COMPILER_ID "LCC"
+# define COMPILER_VERSION_MAJOR DEC(1)
+# if defined(__LCC__)
+#  define COMPILER_VERSION_MINOR DEC(__LCC__- 100)
+# endif
+# if defined(__LCC_MINOR__)
+#  define COMPILER_VERSION_PATCH DEC(__LCC_MINOR__)
+# endif
+# if defined(__GNUC__) && defined(__GNUC_MINOR__)
+#  define SIMULATE_ID "GNU"
+#  define SIMULATE_VERSION_MAJOR DEC(__GNUC__)
+#  define SIMULATE_VERSION_MINOR DEC(__GNUC_MINOR__)
+#  if defined(__GNUC_PATCHLEVEL__)
+#   define SIMULATE_VERSION_PATCH DEC(__GNUC_PATCHLEVEL__)
+#  endif
+# endif
+
+#elif defined(__GNUC__) || defined(__GNUG__)
+# define COMPILER_ID "GNU"
+# if defined(__GNUC__)
+#  define COMPILER_VERSION_MAJOR DEC(__GNUC__)
+# else
+#  define COMPILER_VERSION_MAJOR DEC(__GNUG__)
+# endif
+# if defined(__GNUC_MINOR__)
+#  define COMPILER_VERSION_MINOR DEC(__GNUC_MINOR__)
+# endif
+# if defined(__GNUC_PATCHLEVEL__)
+#  define COMPILER_VERSION_PATCH DEC(__GNUC_PATCHLEVEL__)
+# endif
+
+#elif defined(_MSC_VER)
+# define COMPILER_ID "MSVC"
+  /* _MSC_VER = VVRR */
+# define COMPILER_VERSION_MAJOR DEC(_MSC_VER / 100)
+# define COMPILER_VERSION_MINOR DEC(_MSC_VER % 100)
+# if defined(_MSC_FULL_VER)
+#  if _MSC_VER >= 1400
+    /* _MSC_FULL_VER = VVRRPPPPP */
+#   define COMPILER_VERSION_PATCH DEC(_MSC_FULL_VER % 100000)
+#  else
+    /* _MSC_FULL_VER = VVRRPPPP */
+#   define COMPILER_VERSION_PATCH DEC(_MSC_FULL_VER % 10000)
+#  endif
+# endif
+# if defined(_MSC_BUILD)
+#  define COMPILER_VERSION_TWEAK DEC(_MSC_BUILD)
+# endif
+
+#elif defined(__VISUALDSPVERSION__) || defined(__ADSPBLACKFIN__) || defined(__ADSPTS__) || defined(__ADSP21000__)
+# define COMPILER_ID "ADSP"
+#if defined(__VISUALDSPVERSION__)
+  /* __VISUALDSPVERSION__ = 0xVVRRPP00 */
+# define COMPILER_VERSION_MAJOR HEX(__VISUALDSPVERSION__>>24)
+# define COMPILER_VERSION_MINOR HEX(__VISUALDSPVERSION__>>16 & 0xFF)
+# define COMPILER_VERSION_PATCH HEX(__VISUALDSPVERSION__>>8  & 0xFF)
+#endif
+
+#elif defined(__IAR_SYSTEMS_ICC__) || defined(__IAR_SYSTEMS_ICC)
+# define COMPILER_ID "IAR"
+# if defined(__VER__) && defined(__ICCARM__)
+#  define COMPILER_VERSION_MAJOR DEC((__VER__) / 1000000)
+#  define COMPILER_VERSION_MINOR DEC(((__VER__) / 1000) % 1000)
+#  define COMPILER_VERSION_PATCH DEC((__VER__) % 1000)
+#  define COMPILER_VERSION_INTERNAL DEC(__IAR_SYSTEMS_ICC__)
+# elif defined(__VER__) && (defined(__ICCAVR__) || defined(__ICCRX__) || defined(__ICCRH850__) || defined(__ICCRL78__) || defined(__ICC430__) || defined(__ICCRISCV__) || defined(__ICCV850__) || defined(__ICC8051__) || defined(__ICCSTM8__))
+#  define COMPILER_VERSION_MAJOR DEC((__VER__) / 100)
+#  define COMPILER_VERSION_MINOR DEC((__VER__) - (((__VER__) / 100)*100))
+#  define COMPILER_VERSION_PATCH DEC(__SUBVERSION__)
+#  define COMPILER_VERSION_INTERNAL DEC(__IAR_SYSTEMS_ICC__)
+# endif
+
+
+/* These compilers are either not known or too old to define an
+  identification macro.  Try to identify the platform and guess that
+  it is the native compiler.  */
+#elif defined(__hpux) || defined(__hpua)
+# define COMPILER_ID "HP"
+
+#else /* unknown compiler */
+# define COMPILER_ID ""
+#endif
+
+/* Construct the string literal in pieces to prevent the source from
+   getting matched.  Store it in a pointer rather than an array
+   because some compilers will just produce instructions to fill the
+   array rather than assigning a pointer to a static array.  */
+char const* info_compiler = "INFO" ":" "compiler[" COMPILER_ID "]";
+#ifdef SIMULATE_ID
+char const* info_simulate = "INFO" ":" "simulate[" SIMULATE_ID "]";
+#endif
+
+#ifdef __QNXNTO__
+char const* qnxnto = "INFO" ":" "qnxnto[]";
+#endif
+
+#if defined(__CRAYXT_COMPUTE_LINUX_TARGET)
+char const *info_cray = "INFO" ":" "compiler_wrapper[CrayPrgEnv]";
+#endif
+
+#define STRINGIFY_HELPER(X) #X
+#define STRINGIFY(X) STRINGIFY_HELPER(X)
+
+/* Identify known platforms by name.  */
+#if defined(__linux) || defined(__linux__) || defined(linux)
+# define PLATFORM_ID "Linux"
+
+#elif defined(__MSYS__)
+# define PLATFORM_ID "MSYS"
+
+#elif defined(__CYGWIN__)
+# define PLATFORM_ID "Cygwin"
+
+#elif defined(__MINGW32__)
+# define PLATFORM_ID "MinGW"
+
+#elif defined(__APPLE__)
+# define PLATFORM_ID "Darwin"
+
+#elif defined(_WIN32) || defined(__WIN32__) || defined(WIN32)
+# define PLATFORM_ID "Windows"
+
+#elif defined(__FreeBSD__) || defined(__FreeBSD)
+# define PLATFORM_ID "FreeBSD"
+
+#elif defined(__NetBSD__) || defined(__NetBSD)
+# define PLATFORM_ID "NetBSD"
+
+#elif defined(__OpenBSD__) || defined(__OPENBSD)
+# define PLATFORM_ID "OpenBSD"
+
+#elif defined(__sun) || defined(sun)
+# define PLATFORM_ID "SunOS"
+
+#elif defined(_AIX) || defined(__AIX) || defined(__AIX__) || defined(__aix) || defined(__aix__)
+# define PLATFORM_ID "AIX"
+
+#elif defined(__hpux) || defined(__hpux__)
+# define PLATFORM_ID "HP-UX"
+
+#elif defined(__HAIKU__)
+# define PLATFORM_ID "Haiku"
+
+#elif defined(__BeOS) || defined(__BEOS__) || defined(_BEOS)
+# define PLATFORM_ID "BeOS"
+
+#elif defined(__QNX__) || defined(__QNXNTO__)
+# define PLATFORM_ID "QNX"
+
+#elif defined(__tru64) || defined(_tru64) || defined(__TRU64__)
+# define PLATFORM_ID "Tru64"
+
+#elif defined(__riscos) || defined(__riscos__)
+# define PLATFORM_ID "RISCos"
+
+#elif defined(__sinix) || defined(__sinix__) || defined(__SINIX__)
+# define PLATFORM_ID "SINIX"
+
+#elif defined(__UNIX_SV__)
+# define PLATFORM_ID "UNIX_SV"
+
+#elif defined(__bsdos__)
+# define PLATFORM_ID "BSDOS"
+
+#elif defined(_MPRAS) || defined(MPRAS)
+# define PLATFORM_ID "MP-RAS"
+
+#elif defined(__osf) || defined(__osf__)
+# define PLATFORM_ID "OSF1"
+
+#elif defined(_SCO_SV) || defined(SCO_SV) || defined(sco_sv)
+# define PLATFORM_ID "SCO_SV"
+
+#elif defined(__ultrix) || defined(__ultrix__) || defined(_ULTRIX)
+# define PLATFORM_ID "ULTRIX"
+
+#elif defined(__XENIX__) || defined(_XENIX) || defined(XENIX)
+# define PLATFORM_ID "Xenix"
+
+#elif defined(__WATCOMC__)
+# if defined(__LINUX__)
+#  define PLATFORM_ID "Linux"
+
+# elif defined(__DOS__)
+#  define PLATFORM_ID "DOS"
+
+# elif defined(__OS2__)
+#  define PLATFORM_ID "OS2"
+
+# elif defined(__WINDOWS__)
+#  define PLATFORM_ID "Windows3x"
+
+# elif defined(__VXWORKS__)
+#  define PLATFORM_ID "VxWorks"
+
+# else /* unknown platform */
+#  define PLATFORM_ID
+# endif
+
+#elif defined(__INTEGRITY)
+# if defined(INT_178B)
+#  define PLATFORM_ID "Integrity178"
+
+# else /* regular Integrity */
+#  define PLATFORM_ID "Integrity"
+# endif
+
+#else /* unknown platform */
+# define PLATFORM_ID
+
+#endif
+
+/* For windows compilers MSVC and Intel we can determine
+   the architecture of the compiler being used.  This is because
+   the compilers do not have flags that can change the architecture,
+   but rather depend on which compiler is being used
+*/
+#if defined(_WIN32) && defined(_MSC_VER)
+# if defined(_M_IA64)
+#  define ARCHITECTURE_ID "IA64"
+
+# elif defined(_M_ARM64EC)
+#  define ARCHITECTURE_ID "ARM64EC"
+
+# elif defined(_M_X64) || defined(_M_AMD64)
+#  define ARCHITECTURE_ID "x64"
+
+# elif defined(_M_IX86)
+#  define ARCHITECTURE_ID "X86"
+
+# elif defined(_M_ARM64)
+#  define ARCHITECTURE_ID "ARM64"
+
+# elif defined(_M_ARM)
+#  if _M_ARM == 4
+#   define ARCHITECTURE_ID "ARMV4I"
+#  elif _M_ARM == 5
+#   define ARCHITECTURE_ID "ARMV5I"
+#  else
+#   define ARCHITECTURE_ID "ARMV" STRINGIFY(_M_ARM)
+#  endif
+
+# elif defined(_M_MIPS)
+#  define ARCHITECTURE_ID "MIPS"
+
+# elif defined(_M_SH)
+#  define ARCHITECTURE_ID "SHx"
+
+# else /* unknown architecture */
+#  define ARCHITECTURE_ID ""
+# endif
+
+#elif defined(__WATCOMC__)
+# if defined(_M_I86)
+#  define ARCHITECTURE_ID "I86"
+
+# elif defined(_M_IX86)
+#  define ARCHITECTURE_ID "X86"
+
+# else /* unknown architecture */
+#  define ARCHITECTURE_ID ""
+# endif
+
+#elif defined(__IAR_SYSTEMS_ICC__) || defined(__IAR_SYSTEMS_ICC)
+# if defined(__ICCARM__)
+#  define ARCHITECTURE_ID "ARM"
+
+# elif defined(__ICCRX__)
+#  define ARCHITECTURE_ID "RX"
+
+# elif defined(__ICCRH850__)
+#  define ARCHITECTURE_ID "RH850"
+
+# elif defined(__ICCRL78__)
+#  define ARCHITECTURE_ID "RL78"
+
+# elif defined(__ICCRISCV__)
+#  define ARCHITECTURE_ID "RISCV"
+
+# elif defined(__ICCAVR__)
+#  define ARCHITECTURE_ID "AVR"
+
+# elif defined(__ICC430__)
+#  define ARCHITECTURE_ID "MSP430"
+
+# elif defined(__ICCV850__)
+#  define ARCHITECTURE_ID "V850"
+
+# elif defined(__ICC8051__)
+#  define ARCHITECTURE_ID "8051"
+
+# elif defined(__ICCSTM8__)
+#  define ARCHITECTURE_ID "STM8"
+
+# else /* unknown architecture */
+#  define ARCHITECTURE_ID ""
+# endif
+
+#elif defined(__ghs__)
+# if defined(__PPC64__)
+#  define ARCHITECTURE_ID "PPC64"
+
+# elif defined(__ppc__)
+#  define ARCHITECTURE_ID "PPC"
+
+# elif defined(__ARM__)
+#  define ARCHITECTURE_ID "ARM"
+
+# elif defined(__x86_64__)
+#  define ARCHITECTURE_ID "x64"
+
+# elif defined(__i386__)
+#  define ARCHITECTURE_ID "X86"
+
+# else /* unknown architecture */
+#  define ARCHITECTURE_ID ""
+# endif
+
+#elif defined(__TI_COMPILER_VERSION__)
+# if defined(__TI_ARM__)
+#  define ARCHITECTURE_ID "ARM"
+
+# elif defined(__MSP430__)
+#  define ARCHITECTURE_ID "MSP430"
+
+# elif defined(__TMS320C28XX__)
+#  define ARCHITECTURE_ID "TMS320C28x"
+
+# elif defined(__TMS320C6X__) || defined(_TMS320C6X)
+#  define ARCHITECTURE_ID "TMS320C6x"
+
+# else /* unknown architecture */
+#  define ARCHITECTURE_ID ""
+# endif
+
+#else
+#  define ARCHITECTURE_ID
+#endif
+
+/* Convert integer to decimal digit literals.  */
+#define DEC(n)                   \
+  ('0' + (((n) / 10000000)%10)), \
+  ('0' + (((n) / 1000000)%10)),  \
+  ('0' + (((n) / 100000)%10)),   \
+  ('0' + (((n) / 10000)%10)),    \
+  ('0' + (((n) / 1000)%10)),     \
+  ('0' + (((n) / 100)%10)),      \
+  ('0' + (((n) / 10)%10)),       \
+  ('0' +  ((n) % 10))
+
+/* Convert integer to hex digit literals.  */
+#define HEX(n)             \
+  ('0' + ((n)>>28 & 0xF)), \
+  ('0' + ((n)>>24 & 0xF)), \
+  ('0' + ((n)>>20 & 0xF)), \
+  ('0' + ((n)>>16 & 0xF)), \
+  ('0' + ((n)>>12 & 0xF)), \
+  ('0' + ((n)>>8  & 0xF)), \
+  ('0' + ((n)>>4  & 0xF)), \
+  ('0' + ((n)     & 0xF))
+
+/* Construct a string literal encoding the version number. */
+#ifdef COMPILER_VERSION
+char const* info_version = "INFO" ":" "compiler_version[" COMPILER_VERSION "]";
+
+/* Construct a string literal encoding the version number components. */
+#elif defined(COMPILER_VERSION_MAJOR)
+char const info_version[] = {
+  'I', 'N', 'F', 'O', ':',
+  'c','o','m','p','i','l','e','r','_','v','e','r','s','i','o','n','[',
+  COMPILER_VERSION_MAJOR,
+# ifdef COMPILER_VERSION_MINOR
+  '.', COMPILER_VERSION_MINOR,
+#  ifdef COMPILER_VERSION_PATCH
+   '.', COMPILER_VERSION_PATCH,
+#   ifdef COMPILER_VERSION_TWEAK
+    '.', COMPILER_VERSION_TWEAK,
+#   endif
+#  endif
+# endif
+  ']','\0'};
+#endif
+
+/* Construct a string literal encoding the internal version number. */
+#ifdef COMPILER_VERSION_INTERNAL
+char const info_version_internal[] = {
+  'I', 'N', 'F', 'O', ':',
+  'c','o','m','p','i','l','e','r','_','v','e','r','s','i','o','n','_',
+  'i','n','t','e','r','n','a','l','[',
+  COMPILER_VERSION_INTERNAL,']','\0'};
+#elif defined(COMPILER_VERSION_INTERNAL_STR)
+char const* info_version_internal = "INFO" ":" "compiler_version_internal[" COMPILER_VERSION_INTERNAL_STR "]";
+#endif
+
+/* Construct a string literal encoding the version number components. */
+#ifdef SIMULATE_VERSION_MAJOR
+char const info_simulate_version[] = {
+  'I', 'N', 'F', 'O', ':',
+  's','i','m','u','l','a','t','e','_','v','e','r','s','i','o','n','[',
+  SIMULATE_VERSION_MAJOR,
+# ifdef SIMULATE_VERSION_MINOR
+  '.', SIMULATE_VERSION_MINOR,
+#  ifdef SIMULATE_VERSION_PATCH
+   '.', SIMULATE_VERSION_PATCH,
+#   ifdef SIMULATE_VERSION_TWEAK
+    '.', SIMULATE_VERSION_TWEAK,
+#   endif
+#  endif
+# endif
+  ']','\0'};
+#endif
+
+/* Construct the string literal in pieces to prevent the source from
+   getting matched.  Store it in a pointer rather than an array
+   because some compilers will just produce instructions to fill the
+   array rather than assigning a pointer to a static array.  */
+char const* info_platform = "INFO" ":" "platform[" PLATFORM_ID "]";
+char const* info_arch = "INFO" ":" "arch[" ARCHITECTURE_ID "]";
+
+
+
+#if defined(__INTEL_COMPILER) && defined(_MSVC_LANG) && _MSVC_LANG < 201403L
+#  if defined(__INTEL_CXX11_MODE__)
+#    if defined(__cpp_aggregate_nsdmi)
+#      define CXX_STD 201402L
+#    else
+#      define CXX_STD 201103L
+#    endif
+#  else
+#    define CXX_STD 199711L
+#  endif
+#elif defined(_MSC_VER) && defined(_MSVC_LANG)
+#  define CXX_STD _MSVC_LANG
+#else
+#  define CXX_STD __cplusplus
+#endif
+
+const char* info_language_standard_default = "INFO" ":" "standard_default["
+#if CXX_STD > 202002L
+  "23"
+#elif CXX_STD > 201703L
+  "20"
+#elif CXX_STD >= 201703L
+  "17"
+#elif CXX_STD >= 201402L
+  "14"
+#elif CXX_STD >= 201103L
+  "11"
+#else
+  "98"
+#endif
+"]";
+
+const char* info_language_extensions_default = "INFO" ":" "extensions_default["
+#if (defined(__clang__) || defined(__GNUC__) || defined(__xlC__) ||           \
+     defined(__TI_COMPILER_VERSION__)) &&                                     \
+  !defined(__STRICT_ANSI__)
+  "ON"
+#else
+  "OFF"
+#endif
+"]";
+
+/*--------------------------------------------------------------------------*/
+
+int main(int argc, char* argv[])
+{
+  int require = 0;
+  require += info_compiler[argc];
+  require += info_platform[argc];
+#ifdef COMPILER_VERSION_MAJOR
+  require += info_version[argc];
+#endif
+#ifdef COMPILER_VERSION_INTERNAL
+  require += info_version_internal[argc];
+#endif
+#ifdef SIMULATE_ID
+  require += info_simulate[argc];
+#endif
+#ifdef SIMULATE_VERSION_MAJOR
+  require += info_simulate_version[argc];
+#endif
+#if defined(__CRAYXT_COMPUTE_LINUX_TARGET)
+  require += info_cray[argc];
+#endif
+  require += info_language_standard_default[argc];
+  require += info_language_extensions_default[argc];
+  (void)argv;
+  return require;
+}
diff --git a/codeblocks/CMakeFiles/3.23.0/CompilerIdCXX/CMakeCXXCompilerId.o b/codeblocks/CMakeFiles/3.23.0/CompilerIdCXX/CMakeCXXCompilerId.o
new file mode 100644
index 0000000000000000000000000000000000000000..7e41923007cbf8e9923698f0c4719fc884c6a8be
Binary files /dev/null and b/codeblocks/CMakeFiles/3.23.0/CompilerIdCXX/CMakeCXXCompilerId.o differ
diff --git a/codeblocks/CMakeFiles/CMakeDirectoryInformation.cmake b/codeblocks/CMakeFiles/CMakeDirectoryInformation.cmake
new file mode 100644
index 0000000000000000000000000000000000000000..757ec86b4cb5d9528d2d2e64a9265b47b4ef6a21
--- /dev/null
+++ b/codeblocks/CMakeFiles/CMakeDirectoryInformation.cmake
@@ -0,0 +1,16 @@
+# CMAKE generated file: DO NOT EDIT!
+# Generated by "Unix Makefiles" Generator, CMake Version 3.23
+
+# Relative path conversion top directories.
+set(CMAKE_RELATIVE_PATH_TOP_SOURCE "/Users/lukas/bht/03_NEP/wordle_de")
+set(CMAKE_RELATIVE_PATH_TOP_BINARY "/Users/lukas/bht/03_NEP/wordle_de/codeblocks")
+
+# Force unix paths in dependencies.
+set(CMAKE_FORCE_UNIX_PATHS 1)
+
+
+# The C and CXX include file regular expressions for this directory.
+set(CMAKE_C_INCLUDE_REGEX_SCAN "^.*$")
+set(CMAKE_C_INCLUDE_REGEX_COMPLAIN "^$")
+set(CMAKE_CXX_INCLUDE_REGEX_SCAN ${CMAKE_C_INCLUDE_REGEX_SCAN})
+set(CMAKE_CXX_INCLUDE_REGEX_COMPLAIN ${CMAKE_C_INCLUDE_REGEX_COMPLAIN})
diff --git a/codeblocks/CMakeFiles/CMakeError.log b/codeblocks/CMakeFiles/CMakeError.log
new file mode 100644
index 0000000000000000000000000000000000000000..10a254e16dbbb197edfbc4fec2baa21195f9eb2b
--- /dev/null
+++ b/codeblocks/CMakeFiles/CMakeError.log
@@ -0,0 +1,22 @@
+Compiling the C compiler identification source file "CMakeCCompilerId.c" failed.
+Compiler: /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/cc 
+Build flags: 
+Id flags:  
+
+The output was:
+1
+ld: library not found for -lSystem
+clang: error: linker command failed with exit code 1 (use -v to see invocation)
+
+
+Compiling the CXX compiler identification source file "CMakeCXXCompilerId.cpp" failed.
+Compiler: /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/c++ 
+Build flags: 
+Id flags:  
+
+The output was:
+1
+ld: library not found for -lc++
+clang: error: linker command failed with exit code 1 (use -v to see invocation)
+
+
diff --git a/codeblocks/CMakeFiles/CMakeOutput.log b/codeblocks/CMakeFiles/CMakeOutput.log
new file mode 100644
index 0000000000000000000000000000000000000000..c4e344b214ee05a518c81aa89530229da751a480
--- /dev/null
+++ b/codeblocks/CMakeFiles/CMakeOutput.log
@@ -0,0 +1,320 @@
+The system is: Darwin - 21.4.0 - arm64
+Compiling the C compiler identification source file "CMakeCCompilerId.c" succeeded.
+Compiler: /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/cc 
+Build flags: 
+Id flags: -c 
+
+The output was:
+0
+
+
+Compilation of the C compiler identification source "CMakeCCompilerId.c" produced "CMakeCCompilerId.o"
+
+The C compiler identification is AppleClang, found in "/Users/lukas/bht/03_NEP/wordle_de/codeblocks/CMakeFiles/3.23.0/CompilerIdC/CMakeCCompilerId.o"
+
+Compiling the CXX compiler identification source file "CMakeCXXCompilerId.cpp" succeeded.
+Compiler: /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/c++ 
+Build flags: 
+Id flags: -c 
+
+The output was:
+0
+
+
+Compilation of the CXX compiler identification source "CMakeCXXCompilerId.cpp" produced "CMakeCXXCompilerId.o"
+
+The CXX compiler identification is AppleClang, found in "/Users/lukas/bht/03_NEP/wordle_de/codeblocks/CMakeFiles/3.23.0/CompilerIdCXX/CMakeCXXCompilerId.o"
+
+Detecting C compiler ABI info compiled with the following output:
+Change Dir: /Users/lukas/bht/03_NEP/wordle_de/codeblocks/CMakeFiles/CMakeTmp
+
+Run Build Command(s):/opt/homebrew/bin/gmake -f Makefile cmTC_0f861/fast && /opt/homebrew/bin/gmake  -f CMakeFiles/cmTC_0f861.dir/build.make CMakeFiles/cmTC_0f861.dir/build
+gmake[1]: Entering directory '/Users/lukas/bht/03_NEP/wordle_de/codeblocks/CMakeFiles/CMakeTmp'
+Building C object CMakeFiles/cmTC_0f861.dir/CMakeCCompilerABI.c.o
+/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/cc   -arch arm64 -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX12.3.sdk   -v -Wl,-v -MD -MT CMakeFiles/cmTC_0f861.dir/CMakeCCompilerABI.c.o -MF CMakeFiles/cmTC_0f861.dir/CMakeCCompilerABI.c.o.d -o CMakeFiles/cmTC_0f861.dir/CMakeCCompilerABI.c.o -c /opt/homebrew/Cellar/cmake/3.23.0/share/cmake/Modules/CMakeCCompilerABI.c
+Apple clang version 13.1.6 (clang-1316.0.21.2.3)
+Target: arm64-apple-darwin21.4.0
+Thread model: posix
+InstalledDir: /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin
+clang: warning: -Wl,-v: 'linker' input unused [-Wunused-command-line-argument]
+ "/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/clang" -cc1 -triple arm64-apple-macosx12.0.0 -Wundef-prefix=TARGET_OS_ -Wdeprecated-objc-isa-usage -Werror=deprecated-objc-isa-usage -Werror=implicit-function-declaration -emit-obj -mrelax-all --mrelax-relocations -disable-free -disable-llvm-verifier -discard-value-names -main-file-name CMakeCCompilerABI.c -mrelocation-model pic -pic-level 2 -mframe-pointer=non-leaf -fno-strict-return -fno-rounding-math -munwind-tables -target-sdk-version=12.3 -fvisibility-inlines-hidden-static-local-var -target-cpu apple-m1 -target-feature +v8.5a -target-feature +fp-armv8 -target-feature +neon -target-feature +crc -target-feature +crypto -target-feature +dotprod -target-feature +fp16fml -target-feature +ras -target-feature +lse -target-feature +rdm -target-feature +rcpc -target-feature +zcm -target-feature +zcz -target-feature +fullfp16 -target-feature +sm4 -target-feature +sha3 -target-feature +sha2 -target-feature +aes -target-abi darwinpcs -fallow-half-arguments-and-returns -debugger-tuning=lldb -target-linker-version 762 -v -resource-dir /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/lib/clang/13.1.6 -dependency-file CMakeFiles/cmTC_0f861.dir/CMakeCCompilerABI.c.o.d -skip-unused-modulemap-deps -MT CMakeFiles/cmTC_0f861.dir/CMakeCCompilerABI.c.o -sys-header-deps -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX12.3.sdk -internal-isystem /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX12.3.sdk/usr/local/include -internal-isystem /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/lib/clang/13.1.6/include -internal-externc-isystem /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX12.3.sdk/usr/include -internal-externc-isystem /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/include -Wno-reorder-init-list -Wno-implicit-int-float-conversion -Wno-c99-designator -Wno-final-dtor-non-final-class -Wno-extra-semi-stmt -Wno-misleading-indentation -Wno-quoted-include-in-framework-header -Wno-implicit-fallthrough -Wno-enum-enum-conversion -Wno-enum-float-conversion -Wno-elaborated-enum-base -Wno-reserved-identifier -Wno-gnu-folding-constant -Wno-objc-load-method -fdebug-compilation-dir=/Users/lukas/bht/03_NEP/wordle_de/codeblocks/CMakeFiles/CMakeTmp -ferror-limit 19 -stack-protector 1 -fstack-check -mdarwin-stkchk-strong-link -fblocks -fencode-extended-block-signature -fregister-global-dtors-with-atexit -fgnuc-version=4.2.1 -fmax-type-align=16 -fcommon -clang-vendor-feature=+messageToSelfInClassMethodIdReturnType -clang-vendor-feature=+disableInferNewAvailabilityFromInit -clang-vendor-feature=+disableNonDependentMemberExprInCurrentInstantiation -fno-odr-hash-protocols -clang-vendor-feature=+enableAggressiveVLAFolding -clang-vendor-feature=+revert09abecef7bbf -clang-vendor-feature=+thisNoAlignAttr -clang-vendor-feature=+thisNoNullAttr -mllvm -disable-aligned-alloc-awareness=1 -D__GCC_HAVE_DWARF2_CFI_ASM=1 -o CMakeFiles/cmTC_0f861.dir/CMakeCCompilerABI.c.o -x c /opt/homebrew/Cellar/cmake/3.23.0/share/cmake/Modules/CMakeCCompilerABI.c
+clang -cc1 version 13.1.6 (clang-1316.0.21.2.3) default target arm64-apple-darwin21.4.0
+ignoring nonexistent directory "/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX12.3.sdk/usr/local/include"
+ignoring nonexistent directory "/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX12.3.sdk/Library/Frameworks"
+#include "..." search starts here:
+#include <...> search starts here:
+ /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/lib/clang/13.1.6/include
+ /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX12.3.sdk/usr/include
+ /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/include
+ /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX12.3.sdk/System/Library/Frameworks (framework directory)
+End of search list.
+Linking C executable cmTC_0f861
+/opt/homebrew/Cellar/cmake/3.23.0/bin/cmake -E cmake_link_script CMakeFiles/cmTC_0f861.dir/link.txt --verbose=1
+/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/cc  -arch arm64 -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX12.3.sdk -Wl,-search_paths_first -Wl,-headerpad_max_install_names  -v -Wl,-v CMakeFiles/cmTC_0f861.dir/CMakeCCompilerABI.c.o -o cmTC_0f861 
+Apple clang version 13.1.6 (clang-1316.0.21.2.3)
+Target: arm64-apple-darwin21.4.0
+Thread model: posix
+InstalledDir: /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin
+ "/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ld" -demangle -lto_library /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/lib/libLTO.dylib -dynamic -arch arm64 -platform_version macos 12.0.0 12.3 -syslibroot /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX12.3.sdk -o cmTC_0f861 -search_paths_first -headerpad_max_install_names -v CMakeFiles/cmTC_0f861.dir/CMakeCCompilerABI.c.o -lSystem /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/lib/clang/13.1.6/lib/darwin/libclang_rt.osx.a
+@(#)PROGRAM:ld  PROJECT:ld64-762
+BUILD 12:49:08 Mar 30 2022
+configured to support archs: armv6 armv7 armv7s arm64 arm64e arm64_32 i386 x86_64 x86_64h armv6m armv7k armv7m armv7em
+Library search paths:
+	/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX12.3.sdk/usr/lib
+Framework search paths:
+	/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX12.3.sdk/System/Library/Frameworks/
+gmake[1]: Leaving directory '/Users/lukas/bht/03_NEP/wordle_de/codeblocks/CMakeFiles/CMakeTmp'
+
+
+
+Parsed C implicit include dir info from above output: rv=done
+  found start of include info
+  found start of implicit include info
+    add: [/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/lib/clang/13.1.6/include]
+    add: [/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX12.3.sdk/usr/include]
+    add: [/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/include]
+  end of search list found
+  collapse include dir [/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/lib/clang/13.1.6/include] ==> [/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/lib/clang/13.1.6/include]
+  collapse include dir [/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX12.3.sdk/usr/include] ==> [/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX12.3.sdk/usr/include]
+  collapse include dir [/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/include] ==> [/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/include]
+  implicit include dirs: [/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/lib/clang/13.1.6/include;/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX12.3.sdk/usr/include;/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/include]
+
+
+Parsed C implicit link information from above output:
+  link line regex: [^( *|.*[/\])(ld|CMAKE_LINK_STARTFILE-NOTFOUND|([^/\]+-)?ld|collect2)[^/\]*( |$)]
+  ignore line: [Change Dir: /Users/lukas/bht/03_NEP/wordle_de/codeblocks/CMakeFiles/CMakeTmp]
+  ignore line: []
+  ignore line: [Run Build Command(s):/opt/homebrew/bin/gmake -f Makefile cmTC_0f861/fast && /opt/homebrew/bin/gmake  -f CMakeFiles/cmTC_0f861.dir/build.make CMakeFiles/cmTC_0f861.dir/build]
+  ignore line: [gmake[1]: Entering directory '/Users/lukas/bht/03_NEP/wordle_de/codeblocks/CMakeFiles/CMakeTmp']
+  ignore line: [Building C object CMakeFiles/cmTC_0f861.dir/CMakeCCompilerABI.c.o]
+  ignore line: [/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/cc   -arch arm64 -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX12.3.sdk   -v -Wl -v -MD -MT CMakeFiles/cmTC_0f861.dir/CMakeCCompilerABI.c.o -MF CMakeFiles/cmTC_0f861.dir/CMakeCCompilerABI.c.o.d -o CMakeFiles/cmTC_0f861.dir/CMakeCCompilerABI.c.o -c /opt/homebrew/Cellar/cmake/3.23.0/share/cmake/Modules/CMakeCCompilerABI.c]
+  ignore line: [Apple clang version 13.1.6 (clang-1316.0.21.2.3)]
+  ignore line: [Target: arm64-apple-darwin21.4.0]
+  ignore line: [Thread model: posix]
+  ignore line: [InstalledDir: /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin]
+  ignore line: [clang: warning: -Wl -v: 'linker' input unused [-Wunused-command-line-argument]]
+  ignore line: [ "/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/clang" -cc1 -triple arm64-apple-macosx12.0.0 -Wundef-prefix=TARGET_OS_ -Wdeprecated-objc-isa-usage -Werror=deprecated-objc-isa-usage -Werror=implicit-function-declaration -emit-obj -mrelax-all --mrelax-relocations -disable-free -disable-llvm-verifier -discard-value-names -main-file-name CMakeCCompilerABI.c -mrelocation-model pic -pic-level 2 -mframe-pointer=non-leaf -fno-strict-return -fno-rounding-math -munwind-tables -target-sdk-version=12.3 -fvisibility-inlines-hidden-static-local-var -target-cpu apple-m1 -target-feature +v8.5a -target-feature +fp-armv8 -target-feature +neon -target-feature +crc -target-feature +crypto -target-feature +dotprod -target-feature +fp16fml -target-feature +ras -target-feature +lse -target-feature +rdm -target-feature +rcpc -target-feature +zcm -target-feature +zcz -target-feature +fullfp16 -target-feature +sm4 -target-feature +sha3 -target-feature +sha2 -target-feature +aes -target-abi darwinpcs -fallow-half-arguments-and-returns -debugger-tuning=lldb -target-linker-version 762 -v -resource-dir /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/lib/clang/13.1.6 -dependency-file CMakeFiles/cmTC_0f861.dir/CMakeCCompilerABI.c.o.d -skip-unused-modulemap-deps -MT CMakeFiles/cmTC_0f861.dir/CMakeCCompilerABI.c.o -sys-header-deps -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX12.3.sdk -internal-isystem /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX12.3.sdk/usr/local/include -internal-isystem /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/lib/clang/13.1.6/include -internal-externc-isystem /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX12.3.sdk/usr/include -internal-externc-isystem /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/include -Wno-reorder-init-list -Wno-implicit-int-float-conversion -Wno-c99-designator -Wno-final-dtor-non-final-class -Wno-extra-semi-stmt -Wno-misleading-indentation -Wno-quoted-include-in-framework-header -Wno-implicit-fallthrough -Wno-enum-enum-conversion -Wno-enum-float-conversion -Wno-elaborated-enum-base -Wno-reserved-identifier -Wno-gnu-folding-constant -Wno-objc-load-method -fdebug-compilation-dir=/Users/lukas/bht/03_NEP/wordle_de/codeblocks/CMakeFiles/CMakeTmp -ferror-limit 19 -stack-protector 1 -fstack-check -mdarwin-stkchk-strong-link -fblocks -fencode-extended-block-signature -fregister-global-dtors-with-atexit -fgnuc-version=4.2.1 -fmax-type-align=16 -fcommon -clang-vendor-feature=+messageToSelfInClassMethodIdReturnType -clang-vendor-feature=+disableInferNewAvailabilityFromInit -clang-vendor-feature=+disableNonDependentMemberExprInCurrentInstantiation -fno-odr-hash-protocols -clang-vendor-feature=+enableAggressiveVLAFolding -clang-vendor-feature=+revert09abecef7bbf -clang-vendor-feature=+thisNoAlignAttr -clang-vendor-feature=+thisNoNullAttr -mllvm -disable-aligned-alloc-awareness=1 -D__GCC_HAVE_DWARF2_CFI_ASM=1 -o CMakeFiles/cmTC_0f861.dir/CMakeCCompilerABI.c.o -x c /opt/homebrew/Cellar/cmake/3.23.0/share/cmake/Modules/CMakeCCompilerABI.c]
+  ignore line: [clang -cc1 version 13.1.6 (clang-1316.0.21.2.3) default target arm64-apple-darwin21.4.0]
+  ignore line: [ignoring nonexistent directory "/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX12.3.sdk/usr/local/include"]
+  ignore line: [ignoring nonexistent directory "/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX12.3.sdk/Library/Frameworks"]
+  ignore line: [#include "..." search starts here:]
+  ignore line: [#include <...> search starts here:]
+  ignore line: [ /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/lib/clang/13.1.6/include]
+  ignore line: [ /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX12.3.sdk/usr/include]
+  ignore line: [ /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/include]
+  ignore line: [ /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX12.3.sdk/System/Library/Frameworks (framework directory)]
+  ignore line: [End of search list.]
+  ignore line: [Linking C executable cmTC_0f861]
+  ignore line: [/opt/homebrew/Cellar/cmake/3.23.0/bin/cmake -E cmake_link_script CMakeFiles/cmTC_0f861.dir/link.txt --verbose=1]
+  ignore line: [/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/cc  -arch arm64 -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX12.3.sdk -Wl -search_paths_first -Wl -headerpad_max_install_names  -v -Wl -v CMakeFiles/cmTC_0f861.dir/CMakeCCompilerABI.c.o -o cmTC_0f861 ]
+  ignore line: [Apple clang version 13.1.6 (clang-1316.0.21.2.3)]
+  ignore line: [Target: arm64-apple-darwin21.4.0]
+  ignore line: [Thread model: posix]
+  ignore line: [InstalledDir: /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin]
+  link line: [ "/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ld" -demangle -lto_library /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/lib/libLTO.dylib -dynamic -arch arm64 -platform_version macos 12.0.0 12.3 -syslibroot /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX12.3.sdk -o cmTC_0f861 -search_paths_first -headerpad_max_install_names -v CMakeFiles/cmTC_0f861.dir/CMakeCCompilerABI.c.o -lSystem /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/lib/clang/13.1.6/lib/darwin/libclang_rt.osx.a]
+    arg [/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ld] ==> ignore
+    arg [-demangle] ==> ignore
+    arg [-lto_library] ==> ignore, skip following value
+    arg [/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/lib/libLTO.dylib] ==> skip value of -lto_library
+    arg [-dynamic] ==> ignore
+    arg [-arch] ==> ignore
+    arg [arm64] ==> ignore
+    arg [-platform_version] ==> ignore
+    arg [macos] ==> ignore
+    arg [12.0.0] ==> ignore
+    arg [12.3] ==> ignore
+    arg [-syslibroot] ==> ignore
+    arg [/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX12.3.sdk] ==> ignore
+    arg [-o] ==> ignore
+    arg [cmTC_0f861] ==> ignore
+    arg [-search_paths_first] ==> ignore
+    arg [-headerpad_max_install_names] ==> ignore
+    arg [-v] ==> ignore
+    arg [CMakeFiles/cmTC_0f861.dir/CMakeCCompilerABI.c.o] ==> ignore
+    arg [-lSystem] ==> lib [System]
+    arg [/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/lib/clang/13.1.6/lib/darwin/libclang_rt.osx.a] ==> lib [/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/lib/clang/13.1.6/lib/darwin/libclang_rt.osx.a]
+  Library search paths: [;/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX12.3.sdk/usr/lib]
+  Framework search paths: [;/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX12.3.sdk/System/Library/Frameworks/]
+  remove lib [System]
+  remove lib [/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/lib/clang/13.1.6/lib/darwin/libclang_rt.osx.a]
+  collapse library dir [/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX12.3.sdk/usr/lib] ==> [/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX12.3.sdk/usr/lib]
+  collapse framework dir [/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX12.3.sdk/System/Library/Frameworks/] ==> [/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX12.3.sdk/System/Library/Frameworks]
+  implicit libs: []
+  implicit objs: []
+  implicit dirs: [/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX12.3.sdk/usr/lib]
+  implicit fwks: [/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX12.3.sdk/System/Library/Frameworks]
+
+
+Detecting CXX compiler ABI info compiled with the following output:
+Change Dir: /Users/lukas/bht/03_NEP/wordle_de/codeblocks/CMakeFiles/CMakeTmp
+
+Run Build Command(s):/opt/homebrew/bin/gmake -f Makefile cmTC_5c498/fast && /opt/homebrew/bin/gmake  -f CMakeFiles/cmTC_5c498.dir/build.make CMakeFiles/cmTC_5c498.dir/build
+gmake[1]: Entering directory '/Users/lukas/bht/03_NEP/wordle_de/codeblocks/CMakeFiles/CMakeTmp'
+Building CXX object CMakeFiles/cmTC_5c498.dir/CMakeCXXCompilerABI.cpp.o
+/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/c++   -arch arm64 -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX12.3.sdk   -v -Wl,-v -MD -MT CMakeFiles/cmTC_5c498.dir/CMakeCXXCompilerABI.cpp.o -MF CMakeFiles/cmTC_5c498.dir/CMakeCXXCompilerABI.cpp.o.d -o CMakeFiles/cmTC_5c498.dir/CMakeCXXCompilerABI.cpp.o -c /opt/homebrew/Cellar/cmake/3.23.0/share/cmake/Modules/CMakeCXXCompilerABI.cpp
+Apple clang version 13.1.6 (clang-1316.0.21.2.3)
+Target: arm64-apple-darwin21.4.0
+Thread model: posix
+InstalledDir: /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin
+clang: warning: -Wl,-v: 'linker' input unused [-Wunused-command-line-argument]
+ "/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/clang" -cc1 -triple arm64-apple-macosx12.0.0 -Wundef-prefix=TARGET_OS_ -Wdeprecated-objc-isa-usage -Werror=deprecated-objc-isa-usage -Werror=implicit-function-declaration -emit-obj -mrelax-all --mrelax-relocations -disable-free -disable-llvm-verifier -discard-value-names -main-file-name CMakeCXXCompilerABI.cpp -mrelocation-model pic -pic-level 2 -mframe-pointer=non-leaf -fno-strict-return -fno-rounding-math -munwind-tables -target-sdk-version=12.3 -fvisibility-inlines-hidden-static-local-var -target-cpu apple-m1 -target-feature +v8.5a -target-feature +fp-armv8 -target-feature +neon -target-feature +crc -target-feature +crypto -target-feature +dotprod -target-feature +fp16fml -target-feature +ras -target-feature +lse -target-feature +rdm -target-feature +rcpc -target-feature +zcm -target-feature +zcz -target-feature +fullfp16 -target-feature +sm4 -target-feature +sha3 -target-feature +sha2 -target-feature +aes -target-abi darwinpcs -fallow-half-arguments-and-returns -debugger-tuning=lldb -target-linker-version 762 -v -resource-dir /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/lib/clang/13.1.6 -dependency-file CMakeFiles/cmTC_5c498.dir/CMakeCXXCompilerABI.cpp.o.d -skip-unused-modulemap-deps -MT CMakeFiles/cmTC_5c498.dir/CMakeCXXCompilerABI.cpp.o -sys-header-deps -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX12.3.sdk -stdlib=libc++ -internal-isystem /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX12.3.sdk/usr/include/c++/v1 -internal-isystem /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX12.3.sdk/usr/local/include -internal-isystem /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/lib/clang/13.1.6/include -internal-externc-isystem /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX12.3.sdk/usr/include -internal-externc-isystem /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/include -Wno-reorder-init-list -Wno-implicit-int-float-conversion -Wno-c99-designator -Wno-final-dtor-non-final-class -Wno-extra-semi-stmt -Wno-misleading-indentation -Wno-quoted-include-in-framework-header -Wno-implicit-fallthrough -Wno-enum-enum-conversion -Wno-enum-float-conversion -Wno-elaborated-enum-base -Wno-reserved-identifier -Wno-gnu-folding-constant -Wno-objc-load-method -fdeprecated-macro -fdebug-compilation-dir=/Users/lukas/bht/03_NEP/wordle_de/codeblocks/CMakeFiles/CMakeTmp -ferror-limit 19 -stack-protector 1 -fstack-check -mdarwin-stkchk-strong-link -fblocks -fencode-extended-block-signature -fregister-global-dtors-with-atexit -fgnuc-version=4.2.1 -fno-cxx-modules -fcxx-exceptions -fexceptions -fmax-type-align=16 -fcommon -clang-vendor-feature=+messageToSelfInClassMethodIdReturnType -clang-vendor-feature=+disableInferNewAvailabilityFromInit -clang-vendor-feature=+disableNonDependentMemberExprInCurrentInstantiation -fno-odr-hash-protocols -clang-vendor-feature=+enableAggressiveVLAFolding -clang-vendor-feature=+revert09abecef7bbf -clang-vendor-feature=+thisNoAlignAttr -clang-vendor-feature=+thisNoNullAttr -mllvm -disable-aligned-alloc-awareness=1 -D__GCC_HAVE_DWARF2_CFI_ASM=1 -o CMakeFiles/cmTC_5c498.dir/CMakeCXXCompilerABI.cpp.o -x c++ /opt/homebrew/Cellar/cmake/3.23.0/share/cmake/Modules/CMakeCXXCompilerABI.cpp
+clang -cc1 version 13.1.6 (clang-1316.0.21.2.3) default target arm64-apple-darwin21.4.0
+ignoring nonexistent directory "/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX12.3.sdk/usr/local/include"
+ignoring nonexistent directory "/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX12.3.sdk/Library/Frameworks"
+#include "..." search starts here:
+#include <...> search starts here:
+ /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX12.3.sdk/usr/include/c++/v1
+ /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/lib/clang/13.1.6/include
+ /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX12.3.sdk/usr/include
+ /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/include
+ /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX12.3.sdk/System/Library/Frameworks (framework directory)
+End of search list.
+Linking CXX executable cmTC_5c498
+/opt/homebrew/Cellar/cmake/3.23.0/bin/cmake -E cmake_link_script CMakeFiles/cmTC_5c498.dir/link.txt --verbose=1
+/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/c++  -arch arm64 -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX12.3.sdk -Wl,-search_paths_first -Wl,-headerpad_max_install_names  -v -Wl,-v CMakeFiles/cmTC_5c498.dir/CMakeCXXCompilerABI.cpp.o -o cmTC_5c498 
+Apple clang version 13.1.6 (clang-1316.0.21.2.3)
+Target: arm64-apple-darwin21.4.0
+Thread model: posix
+InstalledDir: /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin
+ "/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ld" -demangle -lto_library /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/lib/libLTO.dylib -dynamic -arch arm64 -platform_version macos 12.0.0 12.3 -syslibroot /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX12.3.sdk -o cmTC_5c498 -search_paths_first -headerpad_max_install_names -v CMakeFiles/cmTC_5c498.dir/CMakeCXXCompilerABI.cpp.o -lc++ -lSystem /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/lib/clang/13.1.6/lib/darwin/libclang_rt.osx.a
+@(#)PROGRAM:ld  PROJECT:ld64-762
+BUILD 12:49:08 Mar 30 2022
+configured to support archs: armv6 armv7 armv7s arm64 arm64e arm64_32 i386 x86_64 x86_64h armv6m armv7k armv7m armv7em
+Library search paths:
+	/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX12.3.sdk/usr/lib
+Framework search paths:
+	/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX12.3.sdk/System/Library/Frameworks/
+gmake[1]: Leaving directory '/Users/lukas/bht/03_NEP/wordle_de/codeblocks/CMakeFiles/CMakeTmp'
+
+
+
+Parsed CXX implicit include dir info from above output: rv=done
+  found start of include info
+  found start of implicit include info
+    add: [/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX12.3.sdk/usr/include/c++/v1]
+    add: [/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/lib/clang/13.1.6/include]
+    add: [/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX12.3.sdk/usr/include]
+    add: [/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/include]
+  end of search list found
+  collapse include dir [/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX12.3.sdk/usr/include/c++/v1] ==> [/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX12.3.sdk/usr/include/c++/v1]
+  collapse include dir [/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/lib/clang/13.1.6/include] ==> [/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/lib/clang/13.1.6/include]
+  collapse include dir [/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX12.3.sdk/usr/include] ==> [/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX12.3.sdk/usr/include]
+  collapse include dir [/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/include] ==> [/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/include]
+  implicit include dirs: [/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX12.3.sdk/usr/include/c++/v1;/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/lib/clang/13.1.6/include;/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX12.3.sdk/usr/include;/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/include]
+
+
+Parsed CXX implicit link information from above output:
+  link line regex: [^( *|.*[/\])(ld|CMAKE_LINK_STARTFILE-NOTFOUND|([^/\]+-)?ld|collect2)[^/\]*( |$)]
+  ignore line: [Change Dir: /Users/lukas/bht/03_NEP/wordle_de/codeblocks/CMakeFiles/CMakeTmp]
+  ignore line: []
+  ignore line: [Run Build Command(s):/opt/homebrew/bin/gmake -f Makefile cmTC_5c498/fast && /opt/homebrew/bin/gmake  -f CMakeFiles/cmTC_5c498.dir/build.make CMakeFiles/cmTC_5c498.dir/build]
+  ignore line: [gmake[1]: Entering directory '/Users/lukas/bht/03_NEP/wordle_de/codeblocks/CMakeFiles/CMakeTmp']
+  ignore line: [Building CXX object CMakeFiles/cmTC_5c498.dir/CMakeCXXCompilerABI.cpp.o]
+  ignore line: [/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/c++   -arch arm64 -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX12.3.sdk   -v -Wl -v -MD -MT CMakeFiles/cmTC_5c498.dir/CMakeCXXCompilerABI.cpp.o -MF CMakeFiles/cmTC_5c498.dir/CMakeCXXCompilerABI.cpp.o.d -o CMakeFiles/cmTC_5c498.dir/CMakeCXXCompilerABI.cpp.o -c /opt/homebrew/Cellar/cmake/3.23.0/share/cmake/Modules/CMakeCXXCompilerABI.cpp]
+  ignore line: [Apple clang version 13.1.6 (clang-1316.0.21.2.3)]
+  ignore line: [Target: arm64-apple-darwin21.4.0]
+  ignore line: [Thread model: posix]
+  ignore line: [InstalledDir: /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin]
+  ignore line: [clang: warning: -Wl -v: 'linker' input unused [-Wunused-command-line-argument]]
+  ignore line: [ "/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/clang" -cc1 -triple arm64-apple-macosx12.0.0 -Wundef-prefix=TARGET_OS_ -Wdeprecated-objc-isa-usage -Werror=deprecated-objc-isa-usage -Werror=implicit-function-declaration -emit-obj -mrelax-all --mrelax-relocations -disable-free -disable-llvm-verifier -discard-value-names -main-file-name CMakeCXXCompilerABI.cpp -mrelocation-model pic -pic-level 2 -mframe-pointer=non-leaf -fno-strict-return -fno-rounding-math -munwind-tables -target-sdk-version=12.3 -fvisibility-inlines-hidden-static-local-var -target-cpu apple-m1 -target-feature +v8.5a -target-feature +fp-armv8 -target-feature +neon -target-feature +crc -target-feature +crypto -target-feature +dotprod -target-feature +fp16fml -target-feature +ras -target-feature +lse -target-feature +rdm -target-feature +rcpc -target-feature +zcm -target-feature +zcz -target-feature +fullfp16 -target-feature +sm4 -target-feature +sha3 -target-feature +sha2 -target-feature +aes -target-abi darwinpcs -fallow-half-arguments-and-returns -debugger-tuning=lldb -target-linker-version 762 -v -resource-dir /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/lib/clang/13.1.6 -dependency-file CMakeFiles/cmTC_5c498.dir/CMakeCXXCompilerABI.cpp.o.d -skip-unused-modulemap-deps -MT CMakeFiles/cmTC_5c498.dir/CMakeCXXCompilerABI.cpp.o -sys-header-deps -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX12.3.sdk -stdlib=libc++ -internal-isystem /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX12.3.sdk/usr/include/c++/v1 -internal-isystem /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX12.3.sdk/usr/local/include -internal-isystem /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/lib/clang/13.1.6/include -internal-externc-isystem /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX12.3.sdk/usr/include -internal-externc-isystem /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/include -Wno-reorder-init-list -Wno-implicit-int-float-conversion -Wno-c99-designator -Wno-final-dtor-non-final-class -Wno-extra-semi-stmt -Wno-misleading-indentation -Wno-quoted-include-in-framework-header -Wno-implicit-fallthrough -Wno-enum-enum-conversion -Wno-enum-float-conversion -Wno-elaborated-enum-base -Wno-reserved-identifier -Wno-gnu-folding-constant -Wno-objc-load-method -fdeprecated-macro -fdebug-compilation-dir=/Users/lukas/bht/03_NEP/wordle_de/codeblocks/CMakeFiles/CMakeTmp -ferror-limit 19 -stack-protector 1 -fstack-check -mdarwin-stkchk-strong-link -fblocks -fencode-extended-block-signature -fregister-global-dtors-with-atexit -fgnuc-version=4.2.1 -fno-cxx-modules -fcxx-exceptions -fexceptions -fmax-type-align=16 -fcommon -clang-vendor-feature=+messageToSelfInClassMethodIdReturnType -clang-vendor-feature=+disableInferNewAvailabilityFromInit -clang-vendor-feature=+disableNonDependentMemberExprInCurrentInstantiation -fno-odr-hash-protocols -clang-vendor-feature=+enableAggressiveVLAFolding -clang-vendor-feature=+revert09abecef7bbf -clang-vendor-feature=+thisNoAlignAttr -clang-vendor-feature=+thisNoNullAttr -mllvm -disable-aligned-alloc-awareness=1 -D__GCC_HAVE_DWARF2_CFI_ASM=1 -o CMakeFiles/cmTC_5c498.dir/CMakeCXXCompilerABI.cpp.o -x c++ /opt/homebrew/Cellar/cmake/3.23.0/share/cmake/Modules/CMakeCXXCompilerABI.cpp]
+  ignore line: [clang -cc1 version 13.1.6 (clang-1316.0.21.2.3) default target arm64-apple-darwin21.4.0]
+  ignore line: [ignoring nonexistent directory "/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX12.3.sdk/usr/local/include"]
+  ignore line: [ignoring nonexistent directory "/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX12.3.sdk/Library/Frameworks"]
+  ignore line: [#include "..." search starts here:]
+  ignore line: [#include <...> search starts here:]
+  ignore line: [ /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX12.3.sdk/usr/include/c++/v1]
+  ignore line: [ /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/lib/clang/13.1.6/include]
+  ignore line: [ /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX12.3.sdk/usr/include]
+  ignore line: [ /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/include]
+  ignore line: [ /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX12.3.sdk/System/Library/Frameworks (framework directory)]
+  ignore line: [End of search list.]
+  ignore line: [Linking CXX executable cmTC_5c498]
+  ignore line: [/opt/homebrew/Cellar/cmake/3.23.0/bin/cmake -E cmake_link_script CMakeFiles/cmTC_5c498.dir/link.txt --verbose=1]
+  ignore line: [/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/c++  -arch arm64 -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX12.3.sdk -Wl -search_paths_first -Wl -headerpad_max_install_names  -v -Wl -v CMakeFiles/cmTC_5c498.dir/CMakeCXXCompilerABI.cpp.o -o cmTC_5c498 ]
+  ignore line: [Apple clang version 13.1.6 (clang-1316.0.21.2.3)]
+  ignore line: [Target: arm64-apple-darwin21.4.0]
+  ignore line: [Thread model: posix]
+  ignore line: [InstalledDir: /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin]
+  link line: [ "/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ld" -demangle -lto_library /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/lib/libLTO.dylib -dynamic -arch arm64 -platform_version macos 12.0.0 12.3 -syslibroot /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX12.3.sdk -o cmTC_5c498 -search_paths_first -headerpad_max_install_names -v CMakeFiles/cmTC_5c498.dir/CMakeCXXCompilerABI.cpp.o -lc++ -lSystem /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/lib/clang/13.1.6/lib/darwin/libclang_rt.osx.a]
+    arg [/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ld] ==> ignore
+    arg [-demangle] ==> ignore
+    arg [-lto_library] ==> ignore, skip following value
+    arg [/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/lib/libLTO.dylib] ==> skip value of -lto_library
+    arg [-dynamic] ==> ignore
+    arg [-arch] ==> ignore
+    arg [arm64] ==> ignore
+    arg [-platform_version] ==> ignore
+    arg [macos] ==> ignore
+    arg [12.0.0] ==> ignore
+    arg [12.3] ==> ignore
+    arg [-syslibroot] ==> ignore
+    arg [/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX12.3.sdk] ==> ignore
+    arg [-o] ==> ignore
+    arg [cmTC_5c498] ==> ignore
+    arg [-search_paths_first] ==> ignore
+    arg [-headerpad_max_install_names] ==> ignore
+    arg [-v] ==> ignore
+    arg [CMakeFiles/cmTC_5c498.dir/CMakeCXXCompilerABI.cpp.o] ==> ignore
+    arg [-lc++] ==> lib [c++]
+    arg [-lSystem] ==> lib [System]
+    arg [/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/lib/clang/13.1.6/lib/darwin/libclang_rt.osx.a] ==> lib [/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/lib/clang/13.1.6/lib/darwin/libclang_rt.osx.a]
+  Library search paths: [;/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX12.3.sdk/usr/lib]
+  Framework search paths: [;/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX12.3.sdk/System/Library/Frameworks/]
+  remove lib [System]
+  remove lib [/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/lib/clang/13.1.6/lib/darwin/libclang_rt.osx.a]
+  collapse library dir [/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX12.3.sdk/usr/lib] ==> [/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX12.3.sdk/usr/lib]
+  collapse framework dir [/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX12.3.sdk/System/Library/Frameworks/] ==> [/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX12.3.sdk/System/Library/Frameworks]
+  implicit libs: [c++]
+  implicit objs: []
+  implicit dirs: [/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX12.3.sdk/usr/lib]
+  implicit fwks: [/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX12.3.sdk/System/Library/Frameworks]
+
+
+Determining if the include file pthread.h exists passed with the following output:
+Change Dir: /Users/lukas/bht/03_NEP/wordle_de/codeblocks/CMakeFiles/CMakeTmp
+
+Run Build Command(s):/opt/homebrew/bin/gmake -f Makefile cmTC_1a448/fast && /opt/homebrew/bin/gmake  -f CMakeFiles/cmTC_1a448.dir/build.make CMakeFiles/cmTC_1a448.dir/build
+gmake[1]: Entering directory '/Users/lukas/bht/03_NEP/wordle_de/codeblocks/CMakeFiles/CMakeTmp'
+Building C object CMakeFiles/cmTC_1a448.dir/CheckIncludeFile.c.o
+/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/cc   -arch arm64 -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX12.3.sdk -std=gnu99 -MD -MT CMakeFiles/cmTC_1a448.dir/CheckIncludeFile.c.o -MF CMakeFiles/cmTC_1a448.dir/CheckIncludeFile.c.o.d -o CMakeFiles/cmTC_1a448.dir/CheckIncludeFile.c.o -c /Users/lukas/bht/03_NEP/wordle_de/codeblocks/CMakeFiles/CMakeTmp/CheckIncludeFile.c
+Linking C executable cmTC_1a448
+/opt/homebrew/Cellar/cmake/3.23.0/bin/cmake -E cmake_link_script CMakeFiles/cmTC_1a448.dir/link.txt --verbose=1
+/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/cc  -arch arm64 -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX12.3.sdk -Wl,-search_paths_first -Wl,-headerpad_max_install_names CMakeFiles/cmTC_1a448.dir/CheckIncludeFile.c.o -o cmTC_1a448 
+gmake[1]: Leaving directory '/Users/lukas/bht/03_NEP/wordle_de/codeblocks/CMakeFiles/CMakeTmp'
+
+
+
+Performing C SOURCE FILE Test CMAKE_HAVE_LIBC_PTHREAD succeeded with the following output:
+Change Dir: /Users/lukas/bht/03_NEP/wordle_de/codeblocks/CMakeFiles/CMakeTmp
+
+Run Build Command(s):/opt/homebrew/bin/gmake -f Makefile cmTC_8d959/fast && /opt/homebrew/bin/gmake  -f CMakeFiles/cmTC_8d959.dir/build.make CMakeFiles/cmTC_8d959.dir/build
+gmake[1]: Entering directory '/Users/lukas/bht/03_NEP/wordle_de/codeblocks/CMakeFiles/CMakeTmp'
+Building C object CMakeFiles/cmTC_8d959.dir/src.c.o
+/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/cc -DCMAKE_HAVE_LIBC_PTHREAD  -arch arm64 -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX12.3.sdk -std=gnu99 -MD -MT CMakeFiles/cmTC_8d959.dir/src.c.o -MF CMakeFiles/cmTC_8d959.dir/src.c.o.d -o CMakeFiles/cmTC_8d959.dir/src.c.o -c /Users/lukas/bht/03_NEP/wordle_de/codeblocks/CMakeFiles/CMakeTmp/src.c
+Linking C executable cmTC_8d959
+/opt/homebrew/Cellar/cmake/3.23.0/bin/cmake -E cmake_link_script CMakeFiles/cmTC_8d959.dir/link.txt --verbose=1
+/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/cc  -arch arm64 -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX12.3.sdk -Wl,-search_paths_first -Wl,-headerpad_max_install_names CMakeFiles/cmTC_8d959.dir/src.c.o -o cmTC_8d959 
+gmake[1]: Leaving directory '/Users/lukas/bht/03_NEP/wordle_de/codeblocks/CMakeFiles/CMakeTmp'
+
+
+Source file was:
+#include <pthread.h>
+
+static void* test_func(void* data)
+{
+  return data;
+}
+
+int main(void)
+{
+  pthread_t thread;
+  pthread_create(&thread, NULL, test_func, NULL);
+  pthread_detach(thread);
+  pthread_cancel(thread);
+  pthread_join(thread, NULL);
+  pthread_atfork(NULL, NULL, NULL);
+  pthread_exit(NULL);
+
+  return 0;
+}
+
diff --git a/codeblocks/CMakeFiles/CMakeRuleHashes.txt b/codeblocks/CMakeFiles/CMakeRuleHashes.txt
new file mode 100644
index 0000000000000000000000000000000000000000..472545364c9c8edb2fdafd8a8fcdadddbe59066a
--- /dev/null
+++ b/codeblocks/CMakeFiles/CMakeRuleHashes.txt
@@ -0,0 +1,2 @@
+# Hashes of file build rules.
+a9fa86ae436895ebde24e336b40ca0fd wordle_de.pb.h
diff --git a/codeblocks/CMakeFiles/Makefile.cmake b/codeblocks/CMakeFiles/Makefile.cmake
new file mode 100644
index 0000000000000000000000000000000000000000..eb4d70a5d0f72da44a1328245bbc81b6f25b38ba
--- /dev/null
+++ b/codeblocks/CMakeFiles/Makefile.cmake
@@ -0,0 +1,144 @@
+# CMAKE generated file: DO NOT EDIT!
+# Generated by "Unix Makefiles" Generator, CMake Version 3.23
+
+# The generator used is:
+set(CMAKE_DEPENDS_GENERATOR "Unix Makefiles")
+
+# The top level Makefile was generated from the following files:
+set(CMAKE_MAKEFILE_DEPENDS
+  "CMakeCache.txt"
+  "../CMakeLists.txt"
+  "CMakeFiles/3.23.0/CMakeCCompiler.cmake"
+  "CMakeFiles/3.23.0/CMakeCXXCompiler.cmake"
+  "CMakeFiles/3.23.0/CMakeSystem.cmake"
+  "/opt/homebrew/Cellar/cmake/3.23.0/share/cmake/Modules/CMakeCCompiler.cmake.in"
+  "/opt/homebrew/Cellar/cmake/3.23.0/share/cmake/Modules/CMakeCCompilerABI.c"
+  "/opt/homebrew/Cellar/cmake/3.23.0/share/cmake/Modules/CMakeCInformation.cmake"
+  "/opt/homebrew/Cellar/cmake/3.23.0/share/cmake/Modules/CMakeCXXCompiler.cmake.in"
+  "/opt/homebrew/Cellar/cmake/3.23.0/share/cmake/Modules/CMakeCXXCompilerABI.cpp"
+  "/opt/homebrew/Cellar/cmake/3.23.0/share/cmake/Modules/CMakeCXXInformation.cmake"
+  "/opt/homebrew/Cellar/cmake/3.23.0/share/cmake/Modules/CMakeCommonLanguageInclude.cmake"
+  "/opt/homebrew/Cellar/cmake/3.23.0/share/cmake/Modules/CMakeCompilerIdDetection.cmake"
+  "/opt/homebrew/Cellar/cmake/3.23.0/share/cmake/Modules/CMakeDetermineCCompiler.cmake"
+  "/opt/homebrew/Cellar/cmake/3.23.0/share/cmake/Modules/CMakeDetermineCXXCompiler.cmake"
+  "/opt/homebrew/Cellar/cmake/3.23.0/share/cmake/Modules/CMakeDetermineCompileFeatures.cmake"
+  "/opt/homebrew/Cellar/cmake/3.23.0/share/cmake/Modules/CMakeDetermineCompiler.cmake"
+  "/opt/homebrew/Cellar/cmake/3.23.0/share/cmake/Modules/CMakeDetermineCompilerABI.cmake"
+  "/opt/homebrew/Cellar/cmake/3.23.0/share/cmake/Modules/CMakeDetermineCompilerId.cmake"
+  "/opt/homebrew/Cellar/cmake/3.23.0/share/cmake/Modules/CMakeDetermineSystem.cmake"
+  "/opt/homebrew/Cellar/cmake/3.23.0/share/cmake/Modules/CMakeExtraGeneratorDetermineCompilerMacrosAndIncludeDirs.cmake"
+  "/opt/homebrew/Cellar/cmake/3.23.0/share/cmake/Modules/CMakeFindBinUtils.cmake"
+  "/opt/homebrew/Cellar/cmake/3.23.0/share/cmake/Modules/CMakeFindCodeBlocks.cmake"
+  "/opt/homebrew/Cellar/cmake/3.23.0/share/cmake/Modules/CMakeGenericSystem.cmake"
+  "/opt/homebrew/Cellar/cmake/3.23.0/share/cmake/Modules/CMakeInitializeConfigs.cmake"
+  "/opt/homebrew/Cellar/cmake/3.23.0/share/cmake/Modules/CMakeLanguageInformation.cmake"
+  "/opt/homebrew/Cellar/cmake/3.23.0/share/cmake/Modules/CMakeParseImplicitIncludeInfo.cmake"
+  "/opt/homebrew/Cellar/cmake/3.23.0/share/cmake/Modules/CMakeParseImplicitLinkInfo.cmake"
+  "/opt/homebrew/Cellar/cmake/3.23.0/share/cmake/Modules/CMakeParseLibraryArchitecture.cmake"
+  "/opt/homebrew/Cellar/cmake/3.23.0/share/cmake/Modules/CMakeSystem.cmake.in"
+  "/opt/homebrew/Cellar/cmake/3.23.0/share/cmake/Modules/CMakeSystemSpecificInformation.cmake"
+  "/opt/homebrew/Cellar/cmake/3.23.0/share/cmake/Modules/CMakeSystemSpecificInitialize.cmake"
+  "/opt/homebrew/Cellar/cmake/3.23.0/share/cmake/Modules/CMakeTestCCompiler.cmake"
+  "/opt/homebrew/Cellar/cmake/3.23.0/share/cmake/Modules/CMakeTestCXXCompiler.cmake"
+  "/opt/homebrew/Cellar/cmake/3.23.0/share/cmake/Modules/CMakeTestCompilerCommon.cmake"
+  "/opt/homebrew/Cellar/cmake/3.23.0/share/cmake/Modules/CMakeUnixFindMake.cmake"
+  "/opt/homebrew/Cellar/cmake/3.23.0/share/cmake/Modules/CheckCSourceCompiles.cmake"
+  "/opt/homebrew/Cellar/cmake/3.23.0/share/cmake/Modules/CheckIncludeFile.c.in"
+  "/opt/homebrew/Cellar/cmake/3.23.0/share/cmake/Modules/CheckIncludeFile.cmake"
+  "/opt/homebrew/Cellar/cmake/3.23.0/share/cmake/Modules/CheckLibraryExists.cmake"
+  "/opt/homebrew/Cellar/cmake/3.23.0/share/cmake/Modules/Compiler/ADSP-DetermineCompiler.cmake"
+  "/opt/homebrew/Cellar/cmake/3.23.0/share/cmake/Modules/Compiler/ARMCC-DetermineCompiler.cmake"
+  "/opt/homebrew/Cellar/cmake/3.23.0/share/cmake/Modules/Compiler/ARMClang-DetermineCompiler.cmake"
+  "/opt/homebrew/Cellar/cmake/3.23.0/share/cmake/Modules/Compiler/AppleClang-C.cmake"
+  "/opt/homebrew/Cellar/cmake/3.23.0/share/cmake/Modules/Compiler/AppleClang-CXX.cmake"
+  "/opt/homebrew/Cellar/cmake/3.23.0/share/cmake/Modules/Compiler/AppleClang-DetermineCompiler.cmake"
+  "/opt/homebrew/Cellar/cmake/3.23.0/share/cmake/Modules/Compiler/Borland-DetermineCompiler.cmake"
+  "/opt/homebrew/Cellar/cmake/3.23.0/share/cmake/Modules/Compiler/Bruce-C-DetermineCompiler.cmake"
+  "/opt/homebrew/Cellar/cmake/3.23.0/share/cmake/Modules/Compiler/CMakeCommonCompilerMacros.cmake"
+  "/opt/homebrew/Cellar/cmake/3.23.0/share/cmake/Modules/Compiler/Clang-DetermineCompiler.cmake"
+  "/opt/homebrew/Cellar/cmake/3.23.0/share/cmake/Modules/Compiler/Clang-DetermineCompilerInternal.cmake"
+  "/opt/homebrew/Cellar/cmake/3.23.0/share/cmake/Modules/Compiler/Clang.cmake"
+  "/opt/homebrew/Cellar/cmake/3.23.0/share/cmake/Modules/Compiler/Comeau-CXX-DetermineCompiler.cmake"
+  "/opt/homebrew/Cellar/cmake/3.23.0/share/cmake/Modules/Compiler/Compaq-C-DetermineCompiler.cmake"
+  "/opt/homebrew/Cellar/cmake/3.23.0/share/cmake/Modules/Compiler/Compaq-CXX-DetermineCompiler.cmake"
+  "/opt/homebrew/Cellar/cmake/3.23.0/share/cmake/Modules/Compiler/Cray-DetermineCompiler.cmake"
+  "/opt/homebrew/Cellar/cmake/3.23.0/share/cmake/Modules/Compiler/Embarcadero-DetermineCompiler.cmake"
+  "/opt/homebrew/Cellar/cmake/3.23.0/share/cmake/Modules/Compiler/Fujitsu-DetermineCompiler.cmake"
+  "/opt/homebrew/Cellar/cmake/3.23.0/share/cmake/Modules/Compiler/FujitsuClang-DetermineCompiler.cmake"
+  "/opt/homebrew/Cellar/cmake/3.23.0/share/cmake/Modules/Compiler/GHS-DetermineCompiler.cmake"
+  "/opt/homebrew/Cellar/cmake/3.23.0/share/cmake/Modules/Compiler/GNU-C-DetermineCompiler.cmake"
+  "/opt/homebrew/Cellar/cmake/3.23.0/share/cmake/Modules/Compiler/GNU-CXX-DetermineCompiler.cmake"
+  "/opt/homebrew/Cellar/cmake/3.23.0/share/cmake/Modules/Compiler/GNU.cmake"
+  "/opt/homebrew/Cellar/cmake/3.23.0/share/cmake/Modules/Compiler/HP-C-DetermineCompiler.cmake"
+  "/opt/homebrew/Cellar/cmake/3.23.0/share/cmake/Modules/Compiler/HP-CXX-DetermineCompiler.cmake"
+  "/opt/homebrew/Cellar/cmake/3.23.0/share/cmake/Modules/Compiler/IAR-DetermineCompiler.cmake"
+  "/opt/homebrew/Cellar/cmake/3.23.0/share/cmake/Modules/Compiler/IBMCPP-C-DetermineVersionInternal.cmake"
+  "/opt/homebrew/Cellar/cmake/3.23.0/share/cmake/Modules/Compiler/IBMCPP-CXX-DetermineVersionInternal.cmake"
+  "/opt/homebrew/Cellar/cmake/3.23.0/share/cmake/Modules/Compiler/IBMClang-C-DetermineCompiler.cmake"
+  "/opt/homebrew/Cellar/cmake/3.23.0/share/cmake/Modules/Compiler/IBMClang-CXX-DetermineCompiler.cmake"
+  "/opt/homebrew/Cellar/cmake/3.23.0/share/cmake/Modules/Compiler/Intel-DetermineCompiler.cmake"
+  "/opt/homebrew/Cellar/cmake/3.23.0/share/cmake/Modules/Compiler/IntelLLVM-DetermineCompiler.cmake"
+  "/opt/homebrew/Cellar/cmake/3.23.0/share/cmake/Modules/Compiler/LCC-C-DetermineCompiler.cmake"
+  "/opt/homebrew/Cellar/cmake/3.23.0/share/cmake/Modules/Compiler/LCC-CXX-DetermineCompiler.cmake"
+  "/opt/homebrew/Cellar/cmake/3.23.0/share/cmake/Modules/Compiler/MSVC-DetermineCompiler.cmake"
+  "/opt/homebrew/Cellar/cmake/3.23.0/share/cmake/Modules/Compiler/NVHPC-DetermineCompiler.cmake"
+  "/opt/homebrew/Cellar/cmake/3.23.0/share/cmake/Modules/Compiler/NVIDIA-DetermineCompiler.cmake"
+  "/opt/homebrew/Cellar/cmake/3.23.0/share/cmake/Modules/Compiler/OpenWatcom-DetermineCompiler.cmake"
+  "/opt/homebrew/Cellar/cmake/3.23.0/share/cmake/Modules/Compiler/PGI-DetermineCompiler.cmake"
+  "/opt/homebrew/Cellar/cmake/3.23.0/share/cmake/Modules/Compiler/PathScale-DetermineCompiler.cmake"
+  "/opt/homebrew/Cellar/cmake/3.23.0/share/cmake/Modules/Compiler/SCO-DetermineCompiler.cmake"
+  "/opt/homebrew/Cellar/cmake/3.23.0/share/cmake/Modules/Compiler/SDCC-C-DetermineCompiler.cmake"
+  "/opt/homebrew/Cellar/cmake/3.23.0/share/cmake/Modules/Compiler/SunPro-C-DetermineCompiler.cmake"
+  "/opt/homebrew/Cellar/cmake/3.23.0/share/cmake/Modules/Compiler/SunPro-CXX-DetermineCompiler.cmake"
+  "/opt/homebrew/Cellar/cmake/3.23.0/share/cmake/Modules/Compiler/TI-DetermineCompiler.cmake"
+  "/opt/homebrew/Cellar/cmake/3.23.0/share/cmake/Modules/Compiler/TinyCC-C-DetermineCompiler.cmake"
+  "/opt/homebrew/Cellar/cmake/3.23.0/share/cmake/Modules/Compiler/VisualAge-C-DetermineCompiler.cmake"
+  "/opt/homebrew/Cellar/cmake/3.23.0/share/cmake/Modules/Compiler/VisualAge-CXX-DetermineCompiler.cmake"
+  "/opt/homebrew/Cellar/cmake/3.23.0/share/cmake/Modules/Compiler/Watcom-DetermineCompiler.cmake"
+  "/opt/homebrew/Cellar/cmake/3.23.0/share/cmake/Modules/Compiler/XL-C-DetermineCompiler.cmake"
+  "/opt/homebrew/Cellar/cmake/3.23.0/share/cmake/Modules/Compiler/XL-CXX-DetermineCompiler.cmake"
+  "/opt/homebrew/Cellar/cmake/3.23.0/share/cmake/Modules/Compiler/XLClang-C-DetermineCompiler.cmake"
+  "/opt/homebrew/Cellar/cmake/3.23.0/share/cmake/Modules/Compiler/XLClang-CXX-DetermineCompiler.cmake"
+  "/opt/homebrew/Cellar/cmake/3.23.0/share/cmake/Modules/Compiler/zOS-C-DetermineCompiler.cmake"
+  "/opt/homebrew/Cellar/cmake/3.23.0/share/cmake/Modules/Compiler/zOS-CXX-DetermineCompiler.cmake"
+  "/opt/homebrew/Cellar/cmake/3.23.0/share/cmake/Modules/FindPackageHandleStandardArgs.cmake"
+  "/opt/homebrew/Cellar/cmake/3.23.0/share/cmake/Modules/FindPackageMessage.cmake"
+  "/opt/homebrew/Cellar/cmake/3.23.0/share/cmake/Modules/FindPkgConfig.cmake"
+  "/opt/homebrew/Cellar/cmake/3.23.0/share/cmake/Modules/FindProtobuf.cmake"
+  "/opt/homebrew/Cellar/cmake/3.23.0/share/cmake/Modules/FindThreads.cmake"
+  "/opt/homebrew/Cellar/cmake/3.23.0/share/cmake/Modules/Internal/CheckSourceCompiles.cmake"
+  "/opt/homebrew/Cellar/cmake/3.23.0/share/cmake/Modules/Internal/FeatureTesting.cmake"
+  "/opt/homebrew/Cellar/cmake/3.23.0/share/cmake/Modules/Platform/Apple-AppleClang-C.cmake"
+  "/opt/homebrew/Cellar/cmake/3.23.0/share/cmake/Modules/Platform/Apple-AppleClang-CXX.cmake"
+  "/opt/homebrew/Cellar/cmake/3.23.0/share/cmake/Modules/Platform/Apple-Clang-C.cmake"
+  "/opt/homebrew/Cellar/cmake/3.23.0/share/cmake/Modules/Platform/Apple-Clang-CXX.cmake"
+  "/opt/homebrew/Cellar/cmake/3.23.0/share/cmake/Modules/Platform/Apple-Clang.cmake"
+  "/opt/homebrew/Cellar/cmake/3.23.0/share/cmake/Modules/Platform/Darwin-Determine-CXX.cmake"
+  "/opt/homebrew/Cellar/cmake/3.23.0/share/cmake/Modules/Platform/Darwin-Initialize.cmake"
+  "/opt/homebrew/Cellar/cmake/3.23.0/share/cmake/Modules/Platform/Darwin.cmake"
+  "/opt/homebrew/Cellar/cmake/3.23.0/share/cmake/Modules/Platform/UnixPaths.cmake"
+  "/opt/homebrew/Cellar/cmake/3.23.0/share/cmake/Modules/ProcessorCount.cmake"
+  "/opt/homebrew/Cellar/cmake/3.23.0/share/cmake/Modules/SelectLibraryConfigurations.cmake"
+  )
+
+# The corresponding makefile is:
+set(CMAKE_MAKEFILE_OUTPUTS
+  "Makefile"
+  "CMakeFiles/cmake.check_cache"
+  )
+
+# Byproducts of CMake generate step:
+set(CMAKE_MAKEFILE_PRODUCTS
+  "CMakeFiles/3.23.0/CMakeSystem.cmake"
+  "CMakeFiles/3.23.0/CMakeCCompiler.cmake"
+  "CMakeFiles/3.23.0/CMakeCXXCompiler.cmake"
+  "CMakeFiles/3.23.0/CMakeCCompiler.cmake"
+  "CMakeFiles/3.23.0/CMakeCXXCompiler.cmake"
+  "CMakeFiles/CMakeDirectoryInformation.cmake"
+  )
+
+# Dependency information for all targets:
+set(CMAKE_DEPEND_INFO_FILES
+  "CMakeFiles/wordle_de_server.dir/DependInfo.cmake"
+  "CMakeFiles/wordle_de_client.dir/DependInfo.cmake"
+  )
diff --git a/codeblocks/CMakeFiles/Makefile2 b/codeblocks/CMakeFiles/Makefile2
new file mode 100644
index 0000000000000000000000000000000000000000..8da6e2c2b63e729ee1a4b9bb9c5c481095f006d4
--- /dev/null
+++ b/codeblocks/CMakeFiles/Makefile2
@@ -0,0 +1,140 @@
+# CMAKE generated file: DO NOT EDIT!
+# Generated by "Unix Makefiles" Generator, CMake Version 3.23
+
+# Default target executed when no arguments are given to make.
+default_target: all
+.PHONY : default_target
+
+#=============================================================================
+# Special targets provided by cmake.
+
+# Disable implicit rules so canonical targets will work.
+.SUFFIXES:
+
+# Disable VCS-based implicit rules.
+% : %,v
+
+# Disable VCS-based implicit rules.
+% : RCS/%
+
+# Disable VCS-based implicit rules.
+% : RCS/%,v
+
+# Disable VCS-based implicit rules.
+% : SCCS/s.%
+
+# Disable VCS-based implicit rules.
+% : s.%
+
+.SUFFIXES: .hpux_make_needs_suffix_list
+
+# Command-line flag to silence nested $(MAKE).
+$(VERBOSE)MAKESILENT = -s
+
+#Suppress display of executed commands.
+$(VERBOSE).SILENT:
+
+# A target that is always out of date.
+cmake_force:
+.PHONY : cmake_force
+
+#=============================================================================
+# Set environment variables for the build.
+
+# The shell in which to execute make rules.
+SHELL = /bin/sh
+
+# The CMake executable.
+CMAKE_COMMAND = /opt/homebrew/Cellar/cmake/3.23.0/bin/cmake
+
+# The command to remove a file.
+RM = /opt/homebrew/Cellar/cmake/3.23.0/bin/cmake -E rm -f
+
+# Escaping for special characters.
+EQUALS = =
+
+# The top-level source directory on which CMake was run.
+CMAKE_SOURCE_DIR = /Users/lukas/bht/03_NEP/wordle_de
+
+# The top-level build directory on which CMake was run.
+CMAKE_BINARY_DIR = /Users/lukas/bht/03_NEP/wordle_de/codeblocks
+
+#=============================================================================
+# Directory level rules for the build root directory
+
+# The main recursive "all" target.
+all: CMakeFiles/wordle_de_server.dir/all
+all: CMakeFiles/wordle_de_client.dir/all
+.PHONY : all
+
+# The main recursive "preinstall" target.
+preinstall:
+.PHONY : preinstall
+
+# The main recursive "clean" target.
+clean: CMakeFiles/wordle_de_server.dir/clean
+clean: CMakeFiles/wordle_de_client.dir/clean
+.PHONY : clean
+
+#=============================================================================
+# Target rules for target CMakeFiles/wordle_de_server.dir
+
+# All Build rule for target.
+CMakeFiles/wordle_de_server.dir/all:
+	$(MAKE) $(MAKESILENT) -f CMakeFiles/wordle_de_server.dir/build.make CMakeFiles/wordle_de_server.dir/depend
+	$(MAKE) $(MAKESILENT) -f CMakeFiles/wordle_de_server.dir/build.make CMakeFiles/wordle_de_server.dir/build
+	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --progress-dir=/Users/lukas/bht/03_NEP/wordle_de/codeblocks/CMakeFiles --progress-num=6,7,8,9,10,11 "Built target wordle_de_server"
+.PHONY : CMakeFiles/wordle_de_server.dir/all
+
+# Build rule for subdir invocation for target.
+CMakeFiles/wordle_de_server.dir/rule: cmake_check_build_system
+	$(CMAKE_COMMAND) -E cmake_progress_start /Users/lukas/bht/03_NEP/wordle_de/codeblocks/CMakeFiles 6
+	$(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 CMakeFiles/wordle_de_server.dir/all
+	$(CMAKE_COMMAND) -E cmake_progress_start /Users/lukas/bht/03_NEP/wordle_de/codeblocks/CMakeFiles 0
+.PHONY : CMakeFiles/wordle_de_server.dir/rule
+
+# Convenience name for target.
+wordle_de_server: CMakeFiles/wordle_de_server.dir/rule
+.PHONY : wordle_de_server
+
+# clean rule for target.
+CMakeFiles/wordle_de_server.dir/clean:
+	$(MAKE) $(MAKESILENT) -f CMakeFiles/wordle_de_server.dir/build.make CMakeFiles/wordle_de_server.dir/clean
+.PHONY : CMakeFiles/wordle_de_server.dir/clean
+
+#=============================================================================
+# Target rules for target CMakeFiles/wordle_de_client.dir
+
+# All Build rule for target.
+CMakeFiles/wordle_de_client.dir/all:
+	$(MAKE) $(MAKESILENT) -f CMakeFiles/wordle_de_client.dir/build.make CMakeFiles/wordle_de_client.dir/depend
+	$(MAKE) $(MAKESILENT) -f CMakeFiles/wordle_de_client.dir/build.make CMakeFiles/wordle_de_client.dir/build
+	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --progress-dir=/Users/lukas/bht/03_NEP/wordle_de/codeblocks/CMakeFiles --progress-num=1,2,3,4,5 "Built target wordle_de_client"
+.PHONY : CMakeFiles/wordle_de_client.dir/all
+
+# Build rule for subdir invocation for target.
+CMakeFiles/wordle_de_client.dir/rule: cmake_check_build_system
+	$(CMAKE_COMMAND) -E cmake_progress_start /Users/lukas/bht/03_NEP/wordle_de/codeblocks/CMakeFiles 5
+	$(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 CMakeFiles/wordle_de_client.dir/all
+	$(CMAKE_COMMAND) -E cmake_progress_start /Users/lukas/bht/03_NEP/wordle_de/codeblocks/CMakeFiles 0
+.PHONY : CMakeFiles/wordle_de_client.dir/rule
+
+# Convenience name for target.
+wordle_de_client: CMakeFiles/wordle_de_client.dir/rule
+.PHONY : wordle_de_client
+
+# clean rule for target.
+CMakeFiles/wordle_de_client.dir/clean:
+	$(MAKE) $(MAKESILENT) -f CMakeFiles/wordle_de_client.dir/build.make CMakeFiles/wordle_de_client.dir/clean
+.PHONY : CMakeFiles/wordle_de_client.dir/clean
+
+#=============================================================================
+# Special targets to cleanup operation of make.
+
+# Special rule to run CMake to check the build system integrity.
+# No rule that depends on this can have commands that come from listfiles
+# because they might be regenerated.
+cmake_check_build_system:
+	$(CMAKE_COMMAND) -S$(CMAKE_SOURCE_DIR) -B$(CMAKE_BINARY_DIR) --check-build-system CMakeFiles/Makefile.cmake 0
+.PHONY : cmake_check_build_system
+
diff --git a/codeblocks/CMakeFiles/TargetDirectories.txt b/codeblocks/CMakeFiles/TargetDirectories.txt
new file mode 100644
index 0000000000000000000000000000000000000000..0788ceffc18c9c3f2b5cca646033447d51568248
--- /dev/null
+++ b/codeblocks/CMakeFiles/TargetDirectories.txt
@@ -0,0 +1,4 @@
+/Users/lukas/bht/03_NEP/wordle_de/codeblocks/CMakeFiles/wordle_de_server.dir
+/Users/lukas/bht/03_NEP/wordle_de/codeblocks/CMakeFiles/wordle_de_client.dir
+/Users/lukas/bht/03_NEP/wordle_de/codeblocks/CMakeFiles/edit_cache.dir
+/Users/lukas/bht/03_NEP/wordle_de/codeblocks/CMakeFiles/rebuild_cache.dir
diff --git a/codeblocks/CMakeFiles/cmake.check_cache b/codeblocks/CMakeFiles/cmake.check_cache
new file mode 100644
index 0000000000000000000000000000000000000000..3dccd731726d7faa8b29d8d7dba3b981a53ca497
--- /dev/null
+++ b/codeblocks/CMakeFiles/cmake.check_cache
@@ -0,0 +1 @@
+# This file is generated by cmake for dependency checking of the CMakeCache.txt file
diff --git a/codeblocks/CMakeFiles/progress.marks b/codeblocks/CMakeFiles/progress.marks
new file mode 100644
index 0000000000000000000000000000000000000000..b4de3947675361a7770d29b8982c407b0ec6b2a0
--- /dev/null
+++ b/codeblocks/CMakeFiles/progress.marks
@@ -0,0 +1 @@
+11
diff --git a/codeblocks/CMakeFiles/wordle_de_client.dir/DependInfo.cmake b/codeblocks/CMakeFiles/wordle_de_client.dir/DependInfo.cmake
new file mode 100644
index 0000000000000000000000000000000000000000..613dd699db9359fcec58c6fc34c1cfa8c39640d4
--- /dev/null
+++ b/codeblocks/CMakeFiles/wordle_de_client.dir/DependInfo.cmake
@@ -0,0 +1,27 @@
+
+# Consider dependencies only in project.
+set(CMAKE_DEPENDS_IN_PROJECT_ONLY OFF)
+
+# The set of languages for which implicit dependencies are needed:
+set(CMAKE_DEPENDS_LANGUAGES
+  )
+
+# The set of dependency files which are needed:
+set(CMAKE_DEPENDS_DEPENDENCY_FILES
+  "/Users/lukas/bht/03_NEP/wordle_de/src/client.cpp" "CMakeFiles/wordle_de_client.dir/src/client.cpp.o" "gcc" "CMakeFiles/wordle_de_client.dir/src/client.cpp.o.d"
+  "/Users/lukas/bht/03_NEP/wordle_de/src/client_main.cpp" "CMakeFiles/wordle_de_client.dir/src/client_main.cpp.o" "gcc" "CMakeFiles/wordle_de_client.dir/src/client_main.cpp.o.d"
+  "/Users/lukas/bht/03_NEP/wordle_de/codeblocks/wordle_de.pb.cc" "CMakeFiles/wordle_de_client.dir/wordle_de.pb.cc.o" "gcc" "CMakeFiles/wordle_de_client.dir/wordle_de.pb.cc.o.d"
+  )
+
+# Pairs of files generated by the same build rule.
+set(CMAKE_MULTIPLE_OUTPUT_PAIRS
+  "/Users/lukas/bht/03_NEP/wordle_de/codeblocks/wordle_de.pb.cc" "/Users/lukas/bht/03_NEP/wordle_de/codeblocks/wordle_de.pb.h"
+  )
+
+
+# Targets to which this target links.
+set(CMAKE_TARGET_LINKED_INFO_FILES
+  )
+
+# Fortran module output directory.
+set(CMAKE_Fortran_TARGET_MODULE_DIR "")
diff --git a/codeblocks/CMakeFiles/wordle_de_client.dir/build.make b/codeblocks/CMakeFiles/wordle_de_client.dir/build.make
new file mode 100644
index 0000000000000000000000000000000000000000..6847395ae419ef83fa0f6ddcdd2fb3724eb69516
--- /dev/null
+++ b/codeblocks/CMakeFiles/wordle_de_client.dir/build.make
@@ -0,0 +1,152 @@
+# CMAKE generated file: DO NOT EDIT!
+# Generated by "Unix Makefiles" Generator, CMake Version 3.23
+
+# Delete rule output on recipe failure.
+.DELETE_ON_ERROR:
+
+#=============================================================================
+# Special targets provided by cmake.
+
+# Disable implicit rules so canonical targets will work.
+.SUFFIXES:
+
+# Disable VCS-based implicit rules.
+% : %,v
+
+# Disable VCS-based implicit rules.
+% : RCS/%
+
+# Disable VCS-based implicit rules.
+% : RCS/%,v
+
+# Disable VCS-based implicit rules.
+% : SCCS/s.%
+
+# Disable VCS-based implicit rules.
+% : s.%
+
+.SUFFIXES: .hpux_make_needs_suffix_list
+
+# Command-line flag to silence nested $(MAKE).
+$(VERBOSE)MAKESILENT = -s
+
+#Suppress display of executed commands.
+$(VERBOSE).SILENT:
+
+# A target that is always out of date.
+cmake_force:
+.PHONY : cmake_force
+
+#=============================================================================
+# Set environment variables for the build.
+
+# The shell in which to execute make rules.
+SHELL = /bin/sh
+
+# The CMake executable.
+CMAKE_COMMAND = /opt/homebrew/Cellar/cmake/3.23.0/bin/cmake
+
+# The command to remove a file.
+RM = /opt/homebrew/Cellar/cmake/3.23.0/bin/cmake -E rm -f
+
+# Escaping for special characters.
+EQUALS = =
+
+# The top-level source directory on which CMake was run.
+CMAKE_SOURCE_DIR = /Users/lukas/bht/03_NEP/wordle_de
+
+# The top-level build directory on which CMake was run.
+CMAKE_BINARY_DIR = /Users/lukas/bht/03_NEP/wordle_de/codeblocks
+
+# Include any dependencies generated for this target.
+include CMakeFiles/wordle_de_client.dir/depend.make
+# Include any dependencies generated by the compiler for this target.
+include CMakeFiles/wordle_de_client.dir/compiler_depend.make
+
+# Include the progress variables for this target.
+include CMakeFiles/wordle_de_client.dir/progress.make
+
+# Include the compile flags for this target's objects.
+include CMakeFiles/wordle_de_client.dir/flags.make
+
+wordle_de.pb.h: ../wordle_de.proto
+wordle_de.pb.h: /opt/homebrew/bin/protoc
+	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --blue --bold --progress-dir=/Users/lukas/bht/03_NEP/wordle_de/codeblocks/CMakeFiles --progress-num=$(CMAKE_PROGRESS_1) "Running cpp protocol buffer compiler on wordle_de.proto"
+	/opt/homebrew/bin/protoc --cpp_out /Users/lukas/bht/03_NEP/wordle_de/codeblocks -I /Users/lukas/bht/03_NEP/wordle_de /Users/lukas/bht/03_NEP/wordle_de/wordle_de.proto
+
+wordle_de.pb.cc: wordle_de.pb.h
+	@$(CMAKE_COMMAND) -E touch_nocreate wordle_de.pb.cc
+
+CMakeFiles/wordle_de_client.dir/src/client_main.cpp.o: CMakeFiles/wordle_de_client.dir/flags.make
+CMakeFiles/wordle_de_client.dir/src/client_main.cpp.o: ../src/client_main.cpp
+CMakeFiles/wordle_de_client.dir/src/client_main.cpp.o: CMakeFiles/wordle_de_client.dir/compiler_depend.ts
+	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green --progress-dir=/Users/lukas/bht/03_NEP/wordle_de/codeblocks/CMakeFiles --progress-num=$(CMAKE_PROGRESS_2) "Building CXX object CMakeFiles/wordle_de_client.dir/src/client_main.cpp.o"
+	/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -MD -MT CMakeFiles/wordle_de_client.dir/src/client_main.cpp.o -MF CMakeFiles/wordle_de_client.dir/src/client_main.cpp.o.d -o CMakeFiles/wordle_de_client.dir/src/client_main.cpp.o -c /Users/lukas/bht/03_NEP/wordle_de/src/client_main.cpp
+
+CMakeFiles/wordle_de_client.dir/src/client_main.cpp.i: cmake_force
+	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/wordle_de_client.dir/src/client_main.cpp.i"
+	/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -E /Users/lukas/bht/03_NEP/wordle_de/src/client_main.cpp > CMakeFiles/wordle_de_client.dir/src/client_main.cpp.i
+
+CMakeFiles/wordle_de_client.dir/src/client_main.cpp.s: cmake_force
+	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/wordle_de_client.dir/src/client_main.cpp.s"
+	/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -S /Users/lukas/bht/03_NEP/wordle_de/src/client_main.cpp -o CMakeFiles/wordle_de_client.dir/src/client_main.cpp.s
+
+CMakeFiles/wordle_de_client.dir/src/client.cpp.o: CMakeFiles/wordle_de_client.dir/flags.make
+CMakeFiles/wordle_de_client.dir/src/client.cpp.o: ../src/client.cpp
+CMakeFiles/wordle_de_client.dir/src/client.cpp.o: CMakeFiles/wordle_de_client.dir/compiler_depend.ts
+	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green --progress-dir=/Users/lukas/bht/03_NEP/wordle_de/codeblocks/CMakeFiles --progress-num=$(CMAKE_PROGRESS_3) "Building CXX object CMakeFiles/wordle_de_client.dir/src/client.cpp.o"
+	/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -MD -MT CMakeFiles/wordle_de_client.dir/src/client.cpp.o -MF CMakeFiles/wordle_de_client.dir/src/client.cpp.o.d -o CMakeFiles/wordle_de_client.dir/src/client.cpp.o -c /Users/lukas/bht/03_NEP/wordle_de/src/client.cpp
+
+CMakeFiles/wordle_de_client.dir/src/client.cpp.i: cmake_force
+	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/wordle_de_client.dir/src/client.cpp.i"
+	/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -E /Users/lukas/bht/03_NEP/wordle_de/src/client.cpp > CMakeFiles/wordle_de_client.dir/src/client.cpp.i
+
+CMakeFiles/wordle_de_client.dir/src/client.cpp.s: cmake_force
+	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/wordle_de_client.dir/src/client.cpp.s"
+	/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -S /Users/lukas/bht/03_NEP/wordle_de/src/client.cpp -o CMakeFiles/wordle_de_client.dir/src/client.cpp.s
+
+CMakeFiles/wordle_de_client.dir/wordle_de.pb.cc.o: CMakeFiles/wordle_de_client.dir/flags.make
+CMakeFiles/wordle_de_client.dir/wordle_de.pb.cc.o: wordle_de.pb.cc
+CMakeFiles/wordle_de_client.dir/wordle_de.pb.cc.o: CMakeFiles/wordle_de_client.dir/compiler_depend.ts
+	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green --progress-dir=/Users/lukas/bht/03_NEP/wordle_de/codeblocks/CMakeFiles --progress-num=$(CMAKE_PROGRESS_4) "Building CXX object CMakeFiles/wordle_de_client.dir/wordle_de.pb.cc.o"
+	/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -MD -MT CMakeFiles/wordle_de_client.dir/wordle_de.pb.cc.o -MF CMakeFiles/wordle_de_client.dir/wordle_de.pb.cc.o.d -o CMakeFiles/wordle_de_client.dir/wordle_de.pb.cc.o -c /Users/lukas/bht/03_NEP/wordle_de/codeblocks/wordle_de.pb.cc
+
+CMakeFiles/wordle_de_client.dir/wordle_de.pb.cc.i: cmake_force
+	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/wordle_de_client.dir/wordle_de.pb.cc.i"
+	/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -E /Users/lukas/bht/03_NEP/wordle_de/codeblocks/wordle_de.pb.cc > CMakeFiles/wordle_de_client.dir/wordle_de.pb.cc.i
+
+CMakeFiles/wordle_de_client.dir/wordle_de.pb.cc.s: cmake_force
+	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/wordle_de_client.dir/wordle_de.pb.cc.s"
+	/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -S /Users/lukas/bht/03_NEP/wordle_de/codeblocks/wordle_de.pb.cc -o CMakeFiles/wordle_de_client.dir/wordle_de.pb.cc.s
+
+# Object files for target wordle_de_client
+wordle_de_client_OBJECTS = \
+"CMakeFiles/wordle_de_client.dir/src/client_main.cpp.o" \
+"CMakeFiles/wordle_de_client.dir/src/client.cpp.o" \
+"CMakeFiles/wordle_de_client.dir/wordle_de.pb.cc.o"
+
+# External object files for target wordle_de_client
+wordle_de_client_EXTERNAL_OBJECTS =
+
+wordle_de_client: CMakeFiles/wordle_de_client.dir/src/client_main.cpp.o
+wordle_de_client: CMakeFiles/wordle_de_client.dir/src/client.cpp.o
+wordle_de_client: CMakeFiles/wordle_de_client.dir/wordle_de.pb.cc.o
+wordle_de_client: CMakeFiles/wordle_de_client.dir/build.make
+wordle_de_client: /opt/homebrew/lib/libprotobuf.dylib
+wordle_de_client: CMakeFiles/wordle_de_client.dir/link.txt
+	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green --bold --progress-dir=/Users/lukas/bht/03_NEP/wordle_de/codeblocks/CMakeFiles --progress-num=$(CMAKE_PROGRESS_5) "Linking CXX executable wordle_de_client"
+	$(CMAKE_COMMAND) -E cmake_link_script CMakeFiles/wordle_de_client.dir/link.txt --verbose=$(VERBOSE)
+
+# Rule to build all files generated by this target.
+CMakeFiles/wordle_de_client.dir/build: wordle_de_client
+.PHONY : CMakeFiles/wordle_de_client.dir/build
+
+CMakeFiles/wordle_de_client.dir/clean:
+	$(CMAKE_COMMAND) -P CMakeFiles/wordle_de_client.dir/cmake_clean.cmake
+.PHONY : CMakeFiles/wordle_de_client.dir/clean
+
+CMakeFiles/wordle_de_client.dir/depend: wordle_de.pb.cc
+CMakeFiles/wordle_de_client.dir/depend: wordle_de.pb.h
+	cd /Users/lukas/bht/03_NEP/wordle_de/codeblocks && $(CMAKE_COMMAND) -E cmake_depends "Unix Makefiles" /Users/lukas/bht/03_NEP/wordle_de /Users/lukas/bht/03_NEP/wordle_de /Users/lukas/bht/03_NEP/wordle_de/codeblocks /Users/lukas/bht/03_NEP/wordle_de/codeblocks /Users/lukas/bht/03_NEP/wordle_de/codeblocks/CMakeFiles/wordle_de_client.dir/DependInfo.cmake --color=$(COLOR)
+.PHONY : CMakeFiles/wordle_de_client.dir/depend
+
diff --git a/codeblocks/CMakeFiles/wordle_de_client.dir/cmake_clean.cmake b/codeblocks/CMakeFiles/wordle_de_client.dir/cmake_clean.cmake
new file mode 100644
index 0000000000000000000000000000000000000000..f92c9f8caf8b5f54690fca7c07b342d4425e3afd
--- /dev/null
+++ b/codeblocks/CMakeFiles/wordle_de_client.dir/cmake_clean.cmake
@@ -0,0 +1,17 @@
+file(REMOVE_RECURSE
+  "CMakeFiles/wordle_de_client.dir/src/client.cpp.o"
+  "CMakeFiles/wordle_de_client.dir/src/client.cpp.o.d"
+  "CMakeFiles/wordle_de_client.dir/src/client_main.cpp.o"
+  "CMakeFiles/wordle_de_client.dir/src/client_main.cpp.o.d"
+  "CMakeFiles/wordle_de_client.dir/wordle_de.pb.cc.o"
+  "CMakeFiles/wordle_de_client.dir/wordle_de.pb.cc.o.d"
+  "wordle_de.pb.cc"
+  "wordle_de.pb.h"
+  "wordle_de_client"
+  "wordle_de_client.pdb"
+)
+
+# Per-language clean rules from dependency scanning.
+foreach(lang CXX)
+  include(CMakeFiles/wordle_de_client.dir/cmake_clean_${lang}.cmake OPTIONAL)
+endforeach()
diff --git a/codeblocks/CMakeFiles/wordle_de_client.dir/compiler_depend.make b/codeblocks/CMakeFiles/wordle_de_client.dir/compiler_depend.make
new file mode 100644
index 0000000000000000000000000000000000000000..15679cd88a08dd82123fb5cf604f3ca7705dffd5
--- /dev/null
+++ b/codeblocks/CMakeFiles/wordle_de_client.dir/compiler_depend.make
@@ -0,0 +1,2 @@
+# Empty compiler generated dependencies file for wordle_de_client.
+# This may be replaced when dependencies are built.
diff --git a/codeblocks/CMakeFiles/wordle_de_client.dir/compiler_depend.ts b/codeblocks/CMakeFiles/wordle_de_client.dir/compiler_depend.ts
new file mode 100644
index 0000000000000000000000000000000000000000..4940acf13f7add5c3aa199894818aa7ee9ac046c
--- /dev/null
+++ b/codeblocks/CMakeFiles/wordle_de_client.dir/compiler_depend.ts
@@ -0,0 +1,2 @@
+# CMAKE generated file: DO NOT EDIT!
+# Timestamp file for compiler generated dependencies management for wordle_de_client.
diff --git a/codeblocks/CMakeFiles/wordle_de_client.dir/depend.make b/codeblocks/CMakeFiles/wordle_de_client.dir/depend.make
new file mode 100644
index 0000000000000000000000000000000000000000..3d679ec64191c1e0fdaf2e368e63b7d5a9b364e8
--- /dev/null
+++ b/codeblocks/CMakeFiles/wordle_de_client.dir/depend.make
@@ -0,0 +1,2 @@
+# Empty dependencies file for wordle_de_client.
+# This may be replaced when dependencies are built.
diff --git a/codeblocks/CMakeFiles/wordle_de_client.dir/flags.make b/codeblocks/CMakeFiles/wordle_de_client.dir/flags.make
new file mode 100644
index 0000000000000000000000000000000000000000..72c361282cdc155447b021dcb0d5dbc59bf955d6
--- /dev/null
+++ b/codeblocks/CMakeFiles/wordle_de_client.dir/flags.make
@@ -0,0 +1,12 @@
+# CMAKE generated file: DO NOT EDIT!
+# Generated by "Unix Makefiles" Generator, CMake Version 3.23
+
+# compile CXX with /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/c++
+CXX_DEFINES = 
+
+CXX_INCLUDES = -I/opt/homebrew/include -I/Users/lukas/bht/03_NEP/wordle_de/codeblocks -I/Users/lukas/bht/03_NEP/wordle_de/src -I/Users/lukas/bht/03_NEP/wordle_de/include -I/opt/homebrew/Cellar/botan/2.19.1/include/botan-2
+
+CXX_FLAGSarm64 =  -arch arm64 -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX12.3.sdk -std=gnu++20
+
+CXX_FLAGS =  -arch arm64 -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX12.3.sdk -std=gnu++20
+
diff --git a/codeblocks/CMakeFiles/wordle_de_client.dir/link.txt b/codeblocks/CMakeFiles/wordle_de_client.dir/link.txt
new file mode 100644
index 0000000000000000000000000000000000000000..d1dd3ebe7383ec17a75126e090cfc32929462f46
--- /dev/null
+++ b/codeblocks/CMakeFiles/wordle_de_client.dir/link.txt
@@ -0,0 +1 @@
+/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/c++  -arch arm64 -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX12.3.sdk -Wl,-search_paths_first -Wl,-headerpad_max_install_names CMakeFiles/wordle_de_client.dir/src/client_main.cpp.o CMakeFiles/wordle_de_client.dir/src/client.cpp.o CMakeFiles/wordle_de_client.dir/wordle_de.pb.cc.o -o wordle_de_client  /opt/homebrew/lib/libprotobuf.dylib -lbotan-2 -L/opt/homebrew/Cellar/botan/2.19.1/lib -lbotan-2 -fstack-protector -pthread -stdlib=libc++ 
diff --git a/codeblocks/CMakeFiles/wordle_de_client.dir/progress.make b/codeblocks/CMakeFiles/wordle_de_client.dir/progress.make
new file mode 100644
index 0000000000000000000000000000000000000000..33e6bffba3730113ad4bec358b7c8a00b5a67431
--- /dev/null
+++ b/codeblocks/CMakeFiles/wordle_de_client.dir/progress.make
@@ -0,0 +1,6 @@
+CMAKE_PROGRESS_1 = 1
+CMAKE_PROGRESS_2 = 2
+CMAKE_PROGRESS_3 = 3
+CMAKE_PROGRESS_4 = 4
+CMAKE_PROGRESS_5 = 5
+
diff --git a/codeblocks/CMakeFiles/wordle_de_server.dir/DependInfo.cmake b/codeblocks/CMakeFiles/wordle_de_server.dir/DependInfo.cmake
new file mode 100644
index 0000000000000000000000000000000000000000..52ed823954042ea30b8d7688f80c177ccd226ade
--- /dev/null
+++ b/codeblocks/CMakeFiles/wordle_de_server.dir/DependInfo.cmake
@@ -0,0 +1,28 @@
+
+# Consider dependencies only in project.
+set(CMAKE_DEPENDS_IN_PROJECT_ONLY OFF)
+
+# The set of languages for which implicit dependencies are needed:
+set(CMAKE_DEPENDS_LANGUAGES
+  )
+
+# The set of dependency files which are needed:
+set(CMAKE_DEPENDS_DEPENDENCY_FILES
+  "/Users/lukas/bht/03_NEP/wordle_de/src/game.cpp" "CMakeFiles/wordle_de_server.dir/src/game.cpp.o" "gcc" "CMakeFiles/wordle_de_server.dir/src/game.cpp.o.d"
+  "/Users/lukas/bht/03_NEP/wordle_de/src/server.cpp" "CMakeFiles/wordle_de_server.dir/src/server.cpp.o" "gcc" "CMakeFiles/wordle_de_server.dir/src/server.cpp.o.d"
+  "/Users/lukas/bht/03_NEP/wordle_de/src/server_main.cpp" "CMakeFiles/wordle_de_server.dir/src/server_main.cpp.o" "gcc" "CMakeFiles/wordle_de_server.dir/src/server_main.cpp.o.d"
+  "/Users/lukas/bht/03_NEP/wordle_de/codeblocks/wordle_de.pb.cc" "CMakeFiles/wordle_de_server.dir/wordle_de.pb.cc.o" "gcc" "CMakeFiles/wordle_de_server.dir/wordle_de.pb.cc.o.d"
+  )
+
+# Pairs of files generated by the same build rule.
+set(CMAKE_MULTIPLE_OUTPUT_PAIRS
+  "/Users/lukas/bht/03_NEP/wordle_de/codeblocks/wordle_de.pb.cc" "/Users/lukas/bht/03_NEP/wordle_de/codeblocks/wordle_de.pb.h"
+  )
+
+
+# Targets to which this target links.
+set(CMAKE_TARGET_LINKED_INFO_FILES
+  )
+
+# Fortran module output directory.
+set(CMAKE_Fortran_TARGET_MODULE_DIR "")
diff --git a/codeblocks/CMakeFiles/wordle_de_server.dir/build.make b/codeblocks/CMakeFiles/wordle_de_server.dir/build.make
new file mode 100644
index 0000000000000000000000000000000000000000..c8d8e55fbb31dd830835e46ca81df4ac1f033b2d
--- /dev/null
+++ b/codeblocks/CMakeFiles/wordle_de_server.dir/build.make
@@ -0,0 +1,168 @@
+# CMAKE generated file: DO NOT EDIT!
+# Generated by "Unix Makefiles" Generator, CMake Version 3.23
+
+# Delete rule output on recipe failure.
+.DELETE_ON_ERROR:
+
+#=============================================================================
+# Special targets provided by cmake.
+
+# Disable implicit rules so canonical targets will work.
+.SUFFIXES:
+
+# Disable VCS-based implicit rules.
+% : %,v
+
+# Disable VCS-based implicit rules.
+% : RCS/%
+
+# Disable VCS-based implicit rules.
+% : RCS/%,v
+
+# Disable VCS-based implicit rules.
+% : SCCS/s.%
+
+# Disable VCS-based implicit rules.
+% : s.%
+
+.SUFFIXES: .hpux_make_needs_suffix_list
+
+# Command-line flag to silence nested $(MAKE).
+$(VERBOSE)MAKESILENT = -s
+
+#Suppress display of executed commands.
+$(VERBOSE).SILENT:
+
+# A target that is always out of date.
+cmake_force:
+.PHONY : cmake_force
+
+#=============================================================================
+# Set environment variables for the build.
+
+# The shell in which to execute make rules.
+SHELL = /bin/sh
+
+# The CMake executable.
+CMAKE_COMMAND = /opt/homebrew/Cellar/cmake/3.23.0/bin/cmake
+
+# The command to remove a file.
+RM = /opt/homebrew/Cellar/cmake/3.23.0/bin/cmake -E rm -f
+
+# Escaping for special characters.
+EQUALS = =
+
+# The top-level source directory on which CMake was run.
+CMAKE_SOURCE_DIR = /Users/lukas/bht/03_NEP/wordle_de
+
+# The top-level build directory on which CMake was run.
+CMAKE_BINARY_DIR = /Users/lukas/bht/03_NEP/wordle_de/codeblocks
+
+# Include any dependencies generated for this target.
+include CMakeFiles/wordle_de_server.dir/depend.make
+# Include any dependencies generated by the compiler for this target.
+include CMakeFiles/wordle_de_server.dir/compiler_depend.make
+
+# Include the progress variables for this target.
+include CMakeFiles/wordle_de_server.dir/progress.make
+
+# Include the compile flags for this target's objects.
+include CMakeFiles/wordle_de_server.dir/flags.make
+
+wordle_de.pb.h: ../wordle_de.proto
+wordle_de.pb.h: /opt/homebrew/bin/protoc
+	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --blue --bold --progress-dir=/Users/lukas/bht/03_NEP/wordle_de/codeblocks/CMakeFiles --progress-num=$(CMAKE_PROGRESS_1) "Running cpp protocol buffer compiler on wordle_de.proto"
+	/opt/homebrew/bin/protoc --cpp_out /Users/lukas/bht/03_NEP/wordle_de/codeblocks -I /Users/lukas/bht/03_NEP/wordle_de /Users/lukas/bht/03_NEP/wordle_de/wordle_de.proto
+
+wordle_de.pb.cc: wordle_de.pb.h
+	@$(CMAKE_COMMAND) -E touch_nocreate wordle_de.pb.cc
+
+CMakeFiles/wordle_de_server.dir/src/server_main.cpp.o: CMakeFiles/wordle_de_server.dir/flags.make
+CMakeFiles/wordle_de_server.dir/src/server_main.cpp.o: ../src/server_main.cpp
+CMakeFiles/wordle_de_server.dir/src/server_main.cpp.o: CMakeFiles/wordle_de_server.dir/compiler_depend.ts
+	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green --progress-dir=/Users/lukas/bht/03_NEP/wordle_de/codeblocks/CMakeFiles --progress-num=$(CMAKE_PROGRESS_2) "Building CXX object CMakeFiles/wordle_de_server.dir/src/server_main.cpp.o"
+	/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -MD -MT CMakeFiles/wordle_de_server.dir/src/server_main.cpp.o -MF CMakeFiles/wordle_de_server.dir/src/server_main.cpp.o.d -o CMakeFiles/wordle_de_server.dir/src/server_main.cpp.o -c /Users/lukas/bht/03_NEP/wordle_de/src/server_main.cpp
+
+CMakeFiles/wordle_de_server.dir/src/server_main.cpp.i: cmake_force
+	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/wordle_de_server.dir/src/server_main.cpp.i"
+	/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -E /Users/lukas/bht/03_NEP/wordle_de/src/server_main.cpp > CMakeFiles/wordle_de_server.dir/src/server_main.cpp.i
+
+CMakeFiles/wordle_de_server.dir/src/server_main.cpp.s: cmake_force
+	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/wordle_de_server.dir/src/server_main.cpp.s"
+	/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -S /Users/lukas/bht/03_NEP/wordle_de/src/server_main.cpp -o CMakeFiles/wordle_de_server.dir/src/server_main.cpp.s
+
+CMakeFiles/wordle_de_server.dir/src/server.cpp.o: CMakeFiles/wordle_de_server.dir/flags.make
+CMakeFiles/wordle_de_server.dir/src/server.cpp.o: ../src/server.cpp
+CMakeFiles/wordle_de_server.dir/src/server.cpp.o: CMakeFiles/wordle_de_server.dir/compiler_depend.ts
+	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green --progress-dir=/Users/lukas/bht/03_NEP/wordle_de/codeblocks/CMakeFiles --progress-num=$(CMAKE_PROGRESS_3) "Building CXX object CMakeFiles/wordle_de_server.dir/src/server.cpp.o"
+	/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -MD -MT CMakeFiles/wordle_de_server.dir/src/server.cpp.o -MF CMakeFiles/wordle_de_server.dir/src/server.cpp.o.d -o CMakeFiles/wordle_de_server.dir/src/server.cpp.o -c /Users/lukas/bht/03_NEP/wordle_de/src/server.cpp
+
+CMakeFiles/wordle_de_server.dir/src/server.cpp.i: cmake_force
+	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/wordle_de_server.dir/src/server.cpp.i"
+	/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -E /Users/lukas/bht/03_NEP/wordle_de/src/server.cpp > CMakeFiles/wordle_de_server.dir/src/server.cpp.i
+
+CMakeFiles/wordle_de_server.dir/src/server.cpp.s: cmake_force
+	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/wordle_de_server.dir/src/server.cpp.s"
+	/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -S /Users/lukas/bht/03_NEP/wordle_de/src/server.cpp -o CMakeFiles/wordle_de_server.dir/src/server.cpp.s
+
+CMakeFiles/wordle_de_server.dir/src/game.cpp.o: CMakeFiles/wordle_de_server.dir/flags.make
+CMakeFiles/wordle_de_server.dir/src/game.cpp.o: ../src/game.cpp
+CMakeFiles/wordle_de_server.dir/src/game.cpp.o: CMakeFiles/wordle_de_server.dir/compiler_depend.ts
+	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green --progress-dir=/Users/lukas/bht/03_NEP/wordle_de/codeblocks/CMakeFiles --progress-num=$(CMAKE_PROGRESS_4) "Building CXX object CMakeFiles/wordle_de_server.dir/src/game.cpp.o"
+	/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -MD -MT CMakeFiles/wordle_de_server.dir/src/game.cpp.o -MF CMakeFiles/wordle_de_server.dir/src/game.cpp.o.d -o CMakeFiles/wordle_de_server.dir/src/game.cpp.o -c /Users/lukas/bht/03_NEP/wordle_de/src/game.cpp
+
+CMakeFiles/wordle_de_server.dir/src/game.cpp.i: cmake_force
+	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/wordle_de_server.dir/src/game.cpp.i"
+	/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -E /Users/lukas/bht/03_NEP/wordle_de/src/game.cpp > CMakeFiles/wordle_de_server.dir/src/game.cpp.i
+
+CMakeFiles/wordle_de_server.dir/src/game.cpp.s: cmake_force
+	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/wordle_de_server.dir/src/game.cpp.s"
+	/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -S /Users/lukas/bht/03_NEP/wordle_de/src/game.cpp -o CMakeFiles/wordle_de_server.dir/src/game.cpp.s
+
+CMakeFiles/wordle_de_server.dir/wordle_de.pb.cc.o: CMakeFiles/wordle_de_server.dir/flags.make
+CMakeFiles/wordle_de_server.dir/wordle_de.pb.cc.o: wordle_de.pb.cc
+CMakeFiles/wordle_de_server.dir/wordle_de.pb.cc.o: CMakeFiles/wordle_de_server.dir/compiler_depend.ts
+	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green --progress-dir=/Users/lukas/bht/03_NEP/wordle_de/codeblocks/CMakeFiles --progress-num=$(CMAKE_PROGRESS_5) "Building CXX object CMakeFiles/wordle_de_server.dir/wordle_de.pb.cc.o"
+	/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -MD -MT CMakeFiles/wordle_de_server.dir/wordle_de.pb.cc.o -MF CMakeFiles/wordle_de_server.dir/wordle_de.pb.cc.o.d -o CMakeFiles/wordle_de_server.dir/wordle_de.pb.cc.o -c /Users/lukas/bht/03_NEP/wordle_de/codeblocks/wordle_de.pb.cc
+
+CMakeFiles/wordle_de_server.dir/wordle_de.pb.cc.i: cmake_force
+	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/wordle_de_server.dir/wordle_de.pb.cc.i"
+	/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -E /Users/lukas/bht/03_NEP/wordle_de/codeblocks/wordle_de.pb.cc > CMakeFiles/wordle_de_server.dir/wordle_de.pb.cc.i
+
+CMakeFiles/wordle_de_server.dir/wordle_de.pb.cc.s: cmake_force
+	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/wordle_de_server.dir/wordle_de.pb.cc.s"
+	/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -S /Users/lukas/bht/03_NEP/wordle_de/codeblocks/wordle_de.pb.cc -o CMakeFiles/wordle_de_server.dir/wordle_de.pb.cc.s
+
+# Object files for target wordle_de_server
+wordle_de_server_OBJECTS = \
+"CMakeFiles/wordle_de_server.dir/src/server_main.cpp.o" \
+"CMakeFiles/wordle_de_server.dir/src/server.cpp.o" \
+"CMakeFiles/wordle_de_server.dir/src/game.cpp.o" \
+"CMakeFiles/wordle_de_server.dir/wordle_de.pb.cc.o"
+
+# External object files for target wordle_de_server
+wordle_de_server_EXTERNAL_OBJECTS =
+
+wordle_de_server: CMakeFiles/wordle_de_server.dir/src/server_main.cpp.o
+wordle_de_server: CMakeFiles/wordle_de_server.dir/src/server.cpp.o
+wordle_de_server: CMakeFiles/wordle_de_server.dir/src/game.cpp.o
+wordle_de_server: CMakeFiles/wordle_de_server.dir/wordle_de.pb.cc.o
+wordle_de_server: CMakeFiles/wordle_de_server.dir/build.make
+wordle_de_server: /opt/homebrew/lib/libprotobuf.dylib
+wordle_de_server: CMakeFiles/wordle_de_server.dir/link.txt
+	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green --bold --progress-dir=/Users/lukas/bht/03_NEP/wordle_de/codeblocks/CMakeFiles --progress-num=$(CMAKE_PROGRESS_6) "Linking CXX executable wordle_de_server"
+	$(CMAKE_COMMAND) -E cmake_link_script CMakeFiles/wordle_de_server.dir/link.txt --verbose=$(VERBOSE)
+
+# Rule to build all files generated by this target.
+CMakeFiles/wordle_de_server.dir/build: wordle_de_server
+.PHONY : CMakeFiles/wordle_de_server.dir/build
+
+CMakeFiles/wordle_de_server.dir/clean:
+	$(CMAKE_COMMAND) -P CMakeFiles/wordle_de_server.dir/cmake_clean.cmake
+.PHONY : CMakeFiles/wordle_de_server.dir/clean
+
+CMakeFiles/wordle_de_server.dir/depend: wordle_de.pb.cc
+CMakeFiles/wordle_de_server.dir/depend: wordle_de.pb.h
+	cd /Users/lukas/bht/03_NEP/wordle_de/codeblocks && $(CMAKE_COMMAND) -E cmake_depends "Unix Makefiles" /Users/lukas/bht/03_NEP/wordle_de /Users/lukas/bht/03_NEP/wordle_de /Users/lukas/bht/03_NEP/wordle_de/codeblocks /Users/lukas/bht/03_NEP/wordle_de/codeblocks /Users/lukas/bht/03_NEP/wordle_de/codeblocks/CMakeFiles/wordle_de_server.dir/DependInfo.cmake --color=$(COLOR)
+.PHONY : CMakeFiles/wordle_de_server.dir/depend
+
diff --git a/codeblocks/CMakeFiles/wordle_de_server.dir/cmake_clean.cmake b/codeblocks/CMakeFiles/wordle_de_server.dir/cmake_clean.cmake
new file mode 100644
index 0000000000000000000000000000000000000000..500e35daa0b20cc837833770ab473ce29072b670
--- /dev/null
+++ b/codeblocks/CMakeFiles/wordle_de_server.dir/cmake_clean.cmake
@@ -0,0 +1,19 @@
+file(REMOVE_RECURSE
+  "CMakeFiles/wordle_de_server.dir/src/game.cpp.o"
+  "CMakeFiles/wordle_de_server.dir/src/game.cpp.o.d"
+  "CMakeFiles/wordle_de_server.dir/src/server.cpp.o"
+  "CMakeFiles/wordle_de_server.dir/src/server.cpp.o.d"
+  "CMakeFiles/wordle_de_server.dir/src/server_main.cpp.o"
+  "CMakeFiles/wordle_de_server.dir/src/server_main.cpp.o.d"
+  "CMakeFiles/wordle_de_server.dir/wordle_de.pb.cc.o"
+  "CMakeFiles/wordle_de_server.dir/wordle_de.pb.cc.o.d"
+  "wordle_de.pb.cc"
+  "wordle_de.pb.h"
+  "wordle_de_server"
+  "wordle_de_server.pdb"
+)
+
+# Per-language clean rules from dependency scanning.
+foreach(lang CXX)
+  include(CMakeFiles/wordle_de_server.dir/cmake_clean_${lang}.cmake OPTIONAL)
+endforeach()
diff --git a/codeblocks/CMakeFiles/wordle_de_server.dir/compiler_depend.make b/codeblocks/CMakeFiles/wordle_de_server.dir/compiler_depend.make
new file mode 100644
index 0000000000000000000000000000000000000000..0376839384ef14184a132239336bec88a2591cca
--- /dev/null
+++ b/codeblocks/CMakeFiles/wordle_de_server.dir/compiler_depend.make
@@ -0,0 +1,2 @@
+# Empty compiler generated dependencies file for wordle_de_server.
+# This may be replaced when dependencies are built.
diff --git a/codeblocks/CMakeFiles/wordle_de_server.dir/compiler_depend.ts b/codeblocks/CMakeFiles/wordle_de_server.dir/compiler_depend.ts
new file mode 100644
index 0000000000000000000000000000000000000000..f7c50c323240309fb4d22f4a9ed1d75d23cb235c
--- /dev/null
+++ b/codeblocks/CMakeFiles/wordle_de_server.dir/compiler_depend.ts
@@ -0,0 +1,2 @@
+# CMAKE generated file: DO NOT EDIT!
+# Timestamp file for compiler generated dependencies management for wordle_de_server.
diff --git a/codeblocks/CMakeFiles/wordle_de_server.dir/depend.make b/codeblocks/CMakeFiles/wordle_de_server.dir/depend.make
new file mode 100644
index 0000000000000000000000000000000000000000..e2ed0cbf3bf70378c727af35a87f9160274e7236
--- /dev/null
+++ b/codeblocks/CMakeFiles/wordle_de_server.dir/depend.make
@@ -0,0 +1,2 @@
+# Empty dependencies file for wordle_de_server.
+# This may be replaced when dependencies are built.
diff --git a/codeblocks/CMakeFiles/wordle_de_server.dir/flags.make b/codeblocks/CMakeFiles/wordle_de_server.dir/flags.make
new file mode 100644
index 0000000000000000000000000000000000000000..72c361282cdc155447b021dcb0d5dbc59bf955d6
--- /dev/null
+++ b/codeblocks/CMakeFiles/wordle_de_server.dir/flags.make
@@ -0,0 +1,12 @@
+# CMAKE generated file: DO NOT EDIT!
+# Generated by "Unix Makefiles" Generator, CMake Version 3.23
+
+# compile CXX with /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/c++
+CXX_DEFINES = 
+
+CXX_INCLUDES = -I/opt/homebrew/include -I/Users/lukas/bht/03_NEP/wordle_de/codeblocks -I/Users/lukas/bht/03_NEP/wordle_de/src -I/Users/lukas/bht/03_NEP/wordle_de/include -I/opt/homebrew/Cellar/botan/2.19.1/include/botan-2
+
+CXX_FLAGSarm64 =  -arch arm64 -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX12.3.sdk -std=gnu++20
+
+CXX_FLAGS =  -arch arm64 -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX12.3.sdk -std=gnu++20
+
diff --git a/codeblocks/CMakeFiles/wordle_de_server.dir/link.txt b/codeblocks/CMakeFiles/wordle_de_server.dir/link.txt
new file mode 100644
index 0000000000000000000000000000000000000000..fd3f4c0e84bcf17017f41ec7815e078c1dfcafdf
--- /dev/null
+++ b/codeblocks/CMakeFiles/wordle_de_server.dir/link.txt
@@ -0,0 +1 @@
+/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/c++  -arch arm64 -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX12.3.sdk -Wl,-search_paths_first -Wl,-headerpad_max_install_names CMakeFiles/wordle_de_server.dir/src/server_main.cpp.o CMakeFiles/wordle_de_server.dir/src/server.cpp.o CMakeFiles/wordle_de_server.dir/src/game.cpp.o CMakeFiles/wordle_de_server.dir/wordle_de.pb.cc.o -o wordle_de_server  /opt/homebrew/lib/libprotobuf.dylib -lbotan-2 -L/opt/homebrew/Cellar/botan/2.19.1/lib -lbotan-2 -fstack-protector -pthread -stdlib=libc++ 
diff --git a/codeblocks/CMakeFiles/wordle_de_server.dir/progress.make b/codeblocks/CMakeFiles/wordle_de_server.dir/progress.make
new file mode 100644
index 0000000000000000000000000000000000000000..9c10aa616aaeec27a77e6f1c6f5423920e2d7d46
--- /dev/null
+++ b/codeblocks/CMakeFiles/wordle_de_server.dir/progress.make
@@ -0,0 +1,7 @@
+CMAKE_PROGRESS_1 = 6
+CMAKE_PROGRESS_2 = 7
+CMAKE_PROGRESS_3 = 8
+CMAKE_PROGRESS_4 = 9
+CMAKE_PROGRESS_5 = 10
+CMAKE_PROGRESS_6 = 11
+
diff --git a/codeblocks/Makefile b/codeblocks/Makefile
new file mode 100644
index 0000000000000000000000000000000000000000..eb5adc983482e90c569f180d0d08140c0f05122a
--- /dev/null
+++ b/codeblocks/Makefile
@@ -0,0 +1,333 @@
+# CMAKE generated file: DO NOT EDIT!
+# Generated by "Unix Makefiles" Generator, CMake Version 3.23
+
+# Default target executed when no arguments are given to make.
+default_target: all
+.PHONY : default_target
+
+# Allow only one "make -f Makefile2" at a time, but pass parallelism.
+.NOTPARALLEL:
+
+#=============================================================================
+# Special targets provided by cmake.
+
+# Disable implicit rules so canonical targets will work.
+.SUFFIXES:
+
+# Disable VCS-based implicit rules.
+% : %,v
+
+# Disable VCS-based implicit rules.
+% : RCS/%
+
+# Disable VCS-based implicit rules.
+% : RCS/%,v
+
+# Disable VCS-based implicit rules.
+% : SCCS/s.%
+
+# Disable VCS-based implicit rules.
+% : s.%
+
+.SUFFIXES: .hpux_make_needs_suffix_list
+
+# Command-line flag to silence nested $(MAKE).
+$(VERBOSE)MAKESILENT = -s
+
+#Suppress display of executed commands.
+$(VERBOSE).SILENT:
+
+# A target that is always out of date.
+cmake_force:
+.PHONY : cmake_force
+
+#=============================================================================
+# Set environment variables for the build.
+
+# The shell in which to execute make rules.
+SHELL = /bin/sh
+
+# The CMake executable.
+CMAKE_COMMAND = /opt/homebrew/Cellar/cmake/3.23.0/bin/cmake
+
+# The command to remove a file.
+RM = /opt/homebrew/Cellar/cmake/3.23.0/bin/cmake -E rm -f
+
+# Escaping for special characters.
+EQUALS = =
+
+# The top-level source directory on which CMake was run.
+CMAKE_SOURCE_DIR = /Users/lukas/bht/03_NEP/wordle_de
+
+# The top-level build directory on which CMake was run.
+CMAKE_BINARY_DIR = /Users/lukas/bht/03_NEP/wordle_de/codeblocks
+
+#=============================================================================
+# Targets provided globally by CMake.
+
+# Special rule for the target edit_cache
+edit_cache:
+	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "No interactive CMake dialog available..."
+	/opt/homebrew/Cellar/cmake/3.23.0/bin/cmake -E echo No\ interactive\ CMake\ dialog\ available.
+.PHONY : edit_cache
+
+# Special rule for the target edit_cache
+edit_cache/fast: edit_cache
+.PHONY : edit_cache/fast
+
+# Special rule for the target rebuild_cache
+rebuild_cache:
+	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Running CMake to regenerate build system..."
+	/opt/homebrew/Cellar/cmake/3.23.0/bin/cmake --regenerate-during-build -S$(CMAKE_SOURCE_DIR) -B$(CMAKE_BINARY_DIR)
+.PHONY : rebuild_cache
+
+# Special rule for the target rebuild_cache
+rebuild_cache/fast: rebuild_cache
+.PHONY : rebuild_cache/fast
+
+# The main all target
+all: cmake_check_build_system
+	$(CMAKE_COMMAND) -E cmake_progress_start /Users/lukas/bht/03_NEP/wordle_de/codeblocks/CMakeFiles /Users/lukas/bht/03_NEP/wordle_de/codeblocks//CMakeFiles/progress.marks
+	$(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 all
+	$(CMAKE_COMMAND) -E cmake_progress_start /Users/lukas/bht/03_NEP/wordle_de/codeblocks/CMakeFiles 0
+.PHONY : all
+
+# The main clean target
+clean:
+	$(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 clean
+.PHONY : clean
+
+# The main clean target
+clean/fast: clean
+.PHONY : clean/fast
+
+# Prepare targets for installation.
+preinstall: all
+	$(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 preinstall
+.PHONY : preinstall
+
+# Prepare targets for installation.
+preinstall/fast:
+	$(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 preinstall
+.PHONY : preinstall/fast
+
+# clear depends
+depend:
+	$(CMAKE_COMMAND) -S$(CMAKE_SOURCE_DIR) -B$(CMAKE_BINARY_DIR) --check-build-system CMakeFiles/Makefile.cmake 1
+.PHONY : depend
+
+#=============================================================================
+# Target rules for targets named wordle_de_server
+
+# Build rule for target.
+wordle_de_server: cmake_check_build_system
+	$(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 wordle_de_server
+.PHONY : wordle_de_server
+
+# fast build rule for target.
+wordle_de_server/fast:
+	$(MAKE) $(MAKESILENT) -f CMakeFiles/wordle_de_server.dir/build.make CMakeFiles/wordle_de_server.dir/build
+.PHONY : wordle_de_server/fast
+
+#=============================================================================
+# Target rules for targets named wordle_de_client
+
+# Build rule for target.
+wordle_de_client: cmake_check_build_system
+	$(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 wordle_de_client
+.PHONY : wordle_de_client
+
+# fast build rule for target.
+wordle_de_client/fast:
+	$(MAKE) $(MAKESILENT) -f CMakeFiles/wordle_de_client.dir/build.make CMakeFiles/wordle_de_client.dir/build
+.PHONY : wordle_de_client/fast
+
+src/client.o: src/client.cpp.o
+.PHONY : src/client.o
+
+# target to build an object file
+src/client.cpp.o:
+	$(MAKE) $(MAKESILENT) -f CMakeFiles/wordle_de_client.dir/build.make CMakeFiles/wordle_de_client.dir/src/client.cpp.o
+.PHONY : src/client.cpp.o
+
+src/client.i: src/client.cpp.i
+.PHONY : src/client.i
+
+# target to preprocess a source file
+src/client.cpp.i:
+	$(MAKE) $(MAKESILENT) -f CMakeFiles/wordle_de_client.dir/build.make CMakeFiles/wordle_de_client.dir/src/client.cpp.i
+.PHONY : src/client.cpp.i
+
+src/client.s: src/client.cpp.s
+.PHONY : src/client.s
+
+# target to generate assembly for a file
+src/client.cpp.s:
+	$(MAKE) $(MAKESILENT) -f CMakeFiles/wordle_de_client.dir/build.make CMakeFiles/wordle_de_client.dir/src/client.cpp.s
+.PHONY : src/client.cpp.s
+
+src/client_main.o: src/client_main.cpp.o
+.PHONY : src/client_main.o
+
+# target to build an object file
+src/client_main.cpp.o:
+	$(MAKE) $(MAKESILENT) -f CMakeFiles/wordle_de_client.dir/build.make CMakeFiles/wordle_de_client.dir/src/client_main.cpp.o
+.PHONY : src/client_main.cpp.o
+
+src/client_main.i: src/client_main.cpp.i
+.PHONY : src/client_main.i
+
+# target to preprocess a source file
+src/client_main.cpp.i:
+	$(MAKE) $(MAKESILENT) -f CMakeFiles/wordle_de_client.dir/build.make CMakeFiles/wordle_de_client.dir/src/client_main.cpp.i
+.PHONY : src/client_main.cpp.i
+
+src/client_main.s: src/client_main.cpp.s
+.PHONY : src/client_main.s
+
+# target to generate assembly for a file
+src/client_main.cpp.s:
+	$(MAKE) $(MAKESILENT) -f CMakeFiles/wordle_de_client.dir/build.make CMakeFiles/wordle_de_client.dir/src/client_main.cpp.s
+.PHONY : src/client_main.cpp.s
+
+src/game.o: src/game.cpp.o
+.PHONY : src/game.o
+
+# target to build an object file
+src/game.cpp.o:
+	$(MAKE) $(MAKESILENT) -f CMakeFiles/wordle_de_server.dir/build.make CMakeFiles/wordle_de_server.dir/src/game.cpp.o
+.PHONY : src/game.cpp.o
+
+src/game.i: src/game.cpp.i
+.PHONY : src/game.i
+
+# target to preprocess a source file
+src/game.cpp.i:
+	$(MAKE) $(MAKESILENT) -f CMakeFiles/wordle_de_server.dir/build.make CMakeFiles/wordle_de_server.dir/src/game.cpp.i
+.PHONY : src/game.cpp.i
+
+src/game.s: src/game.cpp.s
+.PHONY : src/game.s
+
+# target to generate assembly for a file
+src/game.cpp.s:
+	$(MAKE) $(MAKESILENT) -f CMakeFiles/wordle_de_server.dir/build.make CMakeFiles/wordle_de_server.dir/src/game.cpp.s
+.PHONY : src/game.cpp.s
+
+src/server.o: src/server.cpp.o
+.PHONY : src/server.o
+
+# target to build an object file
+src/server.cpp.o:
+	$(MAKE) $(MAKESILENT) -f CMakeFiles/wordle_de_server.dir/build.make CMakeFiles/wordle_de_server.dir/src/server.cpp.o
+.PHONY : src/server.cpp.o
+
+src/server.i: src/server.cpp.i
+.PHONY : src/server.i
+
+# target to preprocess a source file
+src/server.cpp.i:
+	$(MAKE) $(MAKESILENT) -f CMakeFiles/wordle_de_server.dir/build.make CMakeFiles/wordle_de_server.dir/src/server.cpp.i
+.PHONY : src/server.cpp.i
+
+src/server.s: src/server.cpp.s
+.PHONY : src/server.s
+
+# target to generate assembly for a file
+src/server.cpp.s:
+	$(MAKE) $(MAKESILENT) -f CMakeFiles/wordle_de_server.dir/build.make CMakeFiles/wordle_de_server.dir/src/server.cpp.s
+.PHONY : src/server.cpp.s
+
+src/server_main.o: src/server_main.cpp.o
+.PHONY : src/server_main.o
+
+# target to build an object file
+src/server_main.cpp.o:
+	$(MAKE) $(MAKESILENT) -f CMakeFiles/wordle_de_server.dir/build.make CMakeFiles/wordle_de_server.dir/src/server_main.cpp.o
+.PHONY : src/server_main.cpp.o
+
+src/server_main.i: src/server_main.cpp.i
+.PHONY : src/server_main.i
+
+# target to preprocess a source file
+src/server_main.cpp.i:
+	$(MAKE) $(MAKESILENT) -f CMakeFiles/wordle_de_server.dir/build.make CMakeFiles/wordle_de_server.dir/src/server_main.cpp.i
+.PHONY : src/server_main.cpp.i
+
+src/server_main.s: src/server_main.cpp.s
+.PHONY : src/server_main.s
+
+# target to generate assembly for a file
+src/server_main.cpp.s:
+	$(MAKE) $(MAKESILENT) -f CMakeFiles/wordle_de_server.dir/build.make CMakeFiles/wordle_de_server.dir/src/server_main.cpp.s
+.PHONY : src/server_main.cpp.s
+
+wordle_de.pb.o: wordle_de.pb.cc.o
+.PHONY : wordle_de.pb.o
+
+# target to build an object file
+wordle_de.pb.cc.o:
+	$(MAKE) $(MAKESILENT) -f CMakeFiles/wordle_de_server.dir/build.make CMakeFiles/wordle_de_server.dir/wordle_de.pb.cc.o
+	$(MAKE) $(MAKESILENT) -f CMakeFiles/wordle_de_client.dir/build.make CMakeFiles/wordle_de_client.dir/wordle_de.pb.cc.o
+.PHONY : wordle_de.pb.cc.o
+
+wordle_de.pb.i: wordle_de.pb.cc.i
+.PHONY : wordle_de.pb.i
+
+# target to preprocess a source file
+wordle_de.pb.cc.i:
+	$(MAKE) $(MAKESILENT) -f CMakeFiles/wordle_de_server.dir/build.make CMakeFiles/wordle_de_server.dir/wordle_de.pb.cc.i
+	$(MAKE) $(MAKESILENT) -f CMakeFiles/wordle_de_client.dir/build.make CMakeFiles/wordle_de_client.dir/wordle_de.pb.cc.i
+.PHONY : wordle_de.pb.cc.i
+
+wordle_de.pb.s: wordle_de.pb.cc.s
+.PHONY : wordle_de.pb.s
+
+# target to generate assembly for a file
+wordle_de.pb.cc.s:
+	$(MAKE) $(MAKESILENT) -f CMakeFiles/wordle_de_server.dir/build.make CMakeFiles/wordle_de_server.dir/wordle_de.pb.cc.s
+	$(MAKE) $(MAKESILENT) -f CMakeFiles/wordle_de_client.dir/build.make CMakeFiles/wordle_de_client.dir/wordle_de.pb.cc.s
+.PHONY : wordle_de.pb.cc.s
+
+# Help Target
+help:
+	@echo "The following are some of the valid targets for this Makefile:"
+	@echo "... all (the default if no target is provided)"
+	@echo "... clean"
+	@echo "... depend"
+	@echo "... edit_cache"
+	@echo "... rebuild_cache"
+	@echo "... wordle_de_client"
+	@echo "... wordle_de_server"
+	@echo "... src/client.o"
+	@echo "... src/client.i"
+	@echo "... src/client.s"
+	@echo "... src/client_main.o"
+	@echo "... src/client_main.i"
+	@echo "... src/client_main.s"
+	@echo "... src/game.o"
+	@echo "... src/game.i"
+	@echo "... src/game.s"
+	@echo "... src/server.o"
+	@echo "... src/server.i"
+	@echo "... src/server.s"
+	@echo "... src/server_main.o"
+	@echo "... src/server_main.i"
+	@echo "... src/server_main.s"
+	@echo "... wordle_de.pb.o"
+	@echo "... wordle_de.pb.i"
+	@echo "... wordle_de.pb.s"
+.PHONY : help
+
+
+
+#=============================================================================
+# Special targets to cleanup operation of make.
+
+# Special rule to run CMake to check the build system integrity.
+# No rule that depends on this can have commands that come from listfiles
+# because they might be regenerated.
+cmake_check_build_system:
+	$(CMAKE_COMMAND) -S$(CMAKE_SOURCE_DIR) -B$(CMAKE_BINARY_DIR) --check-build-system CMakeFiles/Makefile.cmake 0
+.PHONY : cmake_check_build_system
+
diff --git a/codeblocks/cmake_install.cmake b/codeblocks/cmake_install.cmake
new file mode 100644
index 0000000000000000000000000000000000000000..a8f1486c4f3a83657e85125acdb0275c22d30b87
--- /dev/null
+++ b/codeblocks/cmake_install.cmake
@@ -0,0 +1,49 @@
+# Install script for directory: /Users/lukas/bht/03_NEP/wordle_de
+
+# Set the install prefix
+if(NOT DEFINED CMAKE_INSTALL_PREFIX)
+  set(CMAKE_INSTALL_PREFIX "/usr/local")
+endif()
+string(REGEX REPLACE "/$" "" CMAKE_INSTALL_PREFIX "${CMAKE_INSTALL_PREFIX}")
+
+# Set the install configuration name.
+if(NOT DEFINED CMAKE_INSTALL_CONFIG_NAME)
+  if(BUILD_TYPE)
+    string(REGEX REPLACE "^[^A-Za-z0-9_]+" ""
+           CMAKE_INSTALL_CONFIG_NAME "${BUILD_TYPE}")
+  else()
+    set(CMAKE_INSTALL_CONFIG_NAME "")
+  endif()
+  message(STATUS "Install configuration: \"${CMAKE_INSTALL_CONFIG_NAME}\"")
+endif()
+
+# Set the component getting installed.
+if(NOT CMAKE_INSTALL_COMPONENT)
+  if(COMPONENT)
+    message(STATUS "Install component: \"${COMPONENT}\"")
+    set(CMAKE_INSTALL_COMPONENT "${COMPONENT}")
+  else()
+    set(CMAKE_INSTALL_COMPONENT)
+  endif()
+endif()
+
+# Is this installation the result of a crosscompile?
+if(NOT DEFINED CMAKE_CROSSCOMPILING)
+  set(CMAKE_CROSSCOMPILING "FALSE")
+endif()
+
+# Set default install directory permissions.
+if(NOT DEFINED CMAKE_OBJDUMP)
+  set(CMAKE_OBJDUMP "/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/objdump")
+endif()
+
+if(CMAKE_INSTALL_COMPONENT)
+  set(CMAKE_INSTALL_MANIFEST "install_manifest_${CMAKE_INSTALL_COMPONENT}.txt")
+else()
+  set(CMAKE_INSTALL_MANIFEST "install_manifest.txt")
+endif()
+
+string(REPLACE ";" "\n" CMAKE_INSTALL_MANIFEST_CONTENT
+       "${CMAKE_INSTALL_MANIFEST_FILES}")
+file(WRITE "/Users/lukas/bht/03_NEP/wordle_de/codeblocks/${CMAKE_INSTALL_MANIFEST}"
+     "${CMAKE_INSTALL_MANIFEST_CONTENT}")
diff --git a/codeblocks/compile_commands.json b/codeblocks/compile_commands.json
new file mode 100644
index 0000000000000000000000000000000000000000..adf6ccbd35d86a74e1f751b3cd336efbb855cfb9
--- /dev/null
+++ b/codeblocks/compile_commands.json
@@ -0,0 +1,37 @@
+[
+{
+  "directory": "/Users/lukas/bht/03_NEP/wordle_de/codeblocks",
+  "command": "/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/c++  -I/opt/homebrew/include -I/Users/lukas/bht/03_NEP/wordle_de/codeblocks -I/Users/lukas/bht/03_NEP/wordle_de/src -I/Users/lukas/bht/03_NEP/wordle_de/include -I/opt/homebrew/Cellar/botan/2.19.1/include/botan-2  -arch arm64 -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX12.3.sdk -std=gnu++20 -o CMakeFiles/wordle_de_server.dir/src/server_main.cpp.o -c /Users/lukas/bht/03_NEP/wordle_de/src/server_main.cpp",
+  "file": "/Users/lukas/bht/03_NEP/wordle_de/src/server_main.cpp"
+},
+{
+  "directory": "/Users/lukas/bht/03_NEP/wordle_de/codeblocks",
+  "command": "/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/c++  -I/opt/homebrew/include -I/Users/lukas/bht/03_NEP/wordle_de/codeblocks -I/Users/lukas/bht/03_NEP/wordle_de/src -I/Users/lukas/bht/03_NEP/wordle_de/include -I/opt/homebrew/Cellar/botan/2.19.1/include/botan-2  -arch arm64 -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX12.3.sdk -std=gnu++20 -o CMakeFiles/wordle_de_server.dir/src/server.cpp.o -c /Users/lukas/bht/03_NEP/wordle_de/src/server.cpp",
+  "file": "/Users/lukas/bht/03_NEP/wordle_de/src/server.cpp"
+},
+{
+  "directory": "/Users/lukas/bht/03_NEP/wordle_de/codeblocks",
+  "command": "/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/c++  -I/opt/homebrew/include -I/Users/lukas/bht/03_NEP/wordle_de/codeblocks -I/Users/lukas/bht/03_NEP/wordle_de/src -I/Users/lukas/bht/03_NEP/wordle_de/include -I/opt/homebrew/Cellar/botan/2.19.1/include/botan-2  -arch arm64 -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX12.3.sdk -std=gnu++20 -o CMakeFiles/wordle_de_server.dir/src/game.cpp.o -c /Users/lukas/bht/03_NEP/wordle_de/src/game.cpp",
+  "file": "/Users/lukas/bht/03_NEP/wordle_de/src/game.cpp"
+},
+{
+  "directory": "/Users/lukas/bht/03_NEP/wordle_de/codeblocks",
+  "command": "/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/c++  -I/opt/homebrew/include -I/Users/lukas/bht/03_NEP/wordle_de/codeblocks -I/Users/lukas/bht/03_NEP/wordle_de/src -I/Users/lukas/bht/03_NEP/wordle_de/include -I/opt/homebrew/Cellar/botan/2.19.1/include/botan-2  -arch arm64 -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX12.3.sdk -std=gnu++20 -o CMakeFiles/wordle_de_server.dir/wordle_de.pb.cc.o -c /Users/lukas/bht/03_NEP/wordle_de/codeblocks/wordle_de.pb.cc",
+  "file": "/Users/lukas/bht/03_NEP/wordle_de/codeblocks/wordle_de.pb.cc"
+},
+{
+  "directory": "/Users/lukas/bht/03_NEP/wordle_de/codeblocks",
+  "command": "/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/c++  -I/opt/homebrew/include -I/Users/lukas/bht/03_NEP/wordle_de/codeblocks -I/Users/lukas/bht/03_NEP/wordle_de/src -I/Users/lukas/bht/03_NEP/wordle_de/include -I/opt/homebrew/Cellar/botan/2.19.1/include/botan-2  -arch arm64 -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX12.3.sdk -std=gnu++20 -o CMakeFiles/wordle_de_client.dir/src/client_main.cpp.o -c /Users/lukas/bht/03_NEP/wordle_de/src/client_main.cpp",
+  "file": "/Users/lukas/bht/03_NEP/wordle_de/src/client_main.cpp"
+},
+{
+  "directory": "/Users/lukas/bht/03_NEP/wordle_de/codeblocks",
+  "command": "/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/c++  -I/opt/homebrew/include -I/Users/lukas/bht/03_NEP/wordle_de/codeblocks -I/Users/lukas/bht/03_NEP/wordle_de/src -I/Users/lukas/bht/03_NEP/wordle_de/include -I/opt/homebrew/Cellar/botan/2.19.1/include/botan-2  -arch arm64 -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX12.3.sdk -std=gnu++20 -o CMakeFiles/wordle_de_client.dir/src/client.cpp.o -c /Users/lukas/bht/03_NEP/wordle_de/src/client.cpp",
+  "file": "/Users/lukas/bht/03_NEP/wordle_de/src/client.cpp"
+},
+{
+  "directory": "/Users/lukas/bht/03_NEP/wordle_de/codeblocks",
+  "command": "/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/c++  -I/opt/homebrew/include -I/Users/lukas/bht/03_NEP/wordle_de/codeblocks -I/Users/lukas/bht/03_NEP/wordle_de/src -I/Users/lukas/bht/03_NEP/wordle_de/include -I/opt/homebrew/Cellar/botan/2.19.1/include/botan-2  -arch arm64 -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX12.3.sdk -std=gnu++20 -o CMakeFiles/wordle_de_client.dir/wordle_de.pb.cc.o -c /Users/lukas/bht/03_NEP/wordle_de/codeblocks/wordle_de.pb.cc",
+  "file": "/Users/lukas/bht/03_NEP/wordle_de/codeblocks/wordle_de.pb.cc"
+}
+]
\ No newline at end of file
diff --git a/codeblocks/wordle_de.cbp b/codeblocks/wordle_de.cbp
new file mode 100644
index 0000000000000000000000000000000000000000..7b30e42a9a5b326dbfb5f0f67f06d229ba15dc6e
--- /dev/null
+++ b/codeblocks/wordle_de.cbp
@@ -0,0 +1,185 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<CodeBlocks_project_file>
+	<FileVersion major="1" minor="6"/>
+	<Project>
+		<Option title="wordle_de"/>
+		<Option makefile_is_custom="1"/>
+		<Option compiler="gcc"/>
+		<Option virtualFolders="CMake Files\;"/>
+		<Build>
+			<Target title="all">
+				<Option working_dir="/Users/lukas/bht/03_NEP/wordle_de/codeblocks"/>
+				<Option type="4"/>
+				<MakeCommands>
+					<Build command="/opt/homebrew/bin/gmake -j8 -f &quot;/Users/lukas/bht/03_NEP/wordle_de/codeblocks/Makefile&quot;  VERBOSE=1 all"/>
+					<CompileFile command="/opt/homebrew/bin/gmake -j8 -f &quot;/Users/lukas/bht/03_NEP/wordle_de/codeblocks/Makefile&quot;  VERBOSE=1 &quot;$file&quot;"/>
+					<Clean command="/opt/homebrew/bin/gmake -j8 -f &quot;/Users/lukas/bht/03_NEP/wordle_de/codeblocks/Makefile&quot;  VERBOSE=1 clean"/>
+					<DistClean command="/opt/homebrew/bin/gmake -j8 -f &quot;/Users/lukas/bht/03_NEP/wordle_de/codeblocks/Makefile&quot;  VERBOSE=1 clean"/>
+				</MakeCommands>
+			</Target>
+			<Target title="wordle_de_server">
+				<Option output="/Users/lukas/bht/03_NEP/wordle_de/codeblocks/wordle_de_server" prefix_auto="0" extension_auto="0"/>
+				<Option working_dir="/Users/lukas/bht/03_NEP/wordle_de/codeblocks"/>
+				<Option object_output="./"/>
+				<Option type="1"/>
+				<Option compiler="gcc"/>
+				<Compiler>
+					<Add directory="/opt/homebrew/include"/>
+					<Add directory="/Users/lukas/bht/03_NEP/wordle_de/codeblocks"/>
+					<Add directory="/Users/lukas/bht/03_NEP/wordle_de/src"/>
+					<Add directory="/Users/lukas/bht/03_NEP/wordle_de/include"/>
+					<Add directory="/opt/homebrew/Cellar/botan/2.19.1/include/botan-2"/>
+					<Add directory="/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/../include/c++/v1"/>
+					<Add directory="/usr/local/include"/>
+					<Add directory="/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/lib/clang/13.1.6/include"/>
+					<Add directory="/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/include"/>
+					<Add directory="/System/Library/Frameworks"/>
+					<Add directory="/Library/Frameworks"/>
+				</Compiler>
+				<MakeCommands>
+					<Build command="/opt/homebrew/bin/gmake -j8 -f &quot;/Users/lukas/bht/03_NEP/wordle_de/codeblocks/Makefile&quot;  VERBOSE=1 wordle_de_server"/>
+					<CompileFile command="/opt/homebrew/bin/gmake -j8 -f &quot;/Users/lukas/bht/03_NEP/wordle_de/codeblocks/Makefile&quot;  VERBOSE=1 &quot;$file&quot;"/>
+					<Clean command="/opt/homebrew/bin/gmake -j8 -f &quot;/Users/lukas/bht/03_NEP/wordle_de/codeblocks/Makefile&quot;  VERBOSE=1 clean"/>
+					<DistClean command="/opt/homebrew/bin/gmake -j8 -f &quot;/Users/lukas/bht/03_NEP/wordle_de/codeblocks/Makefile&quot;  VERBOSE=1 clean"/>
+				</MakeCommands>
+			</Target>
+			<Target title="wordle_de_server/fast">
+				<Option output="/Users/lukas/bht/03_NEP/wordle_de/codeblocks/wordle_de_server" prefix_auto="0" extension_auto="0"/>
+				<Option working_dir="/Users/lukas/bht/03_NEP/wordle_de/codeblocks"/>
+				<Option object_output="./"/>
+				<Option type="1"/>
+				<Option compiler="gcc"/>
+				<Compiler>
+					<Add directory="/opt/homebrew/include"/>
+					<Add directory="/Users/lukas/bht/03_NEP/wordle_de/codeblocks"/>
+					<Add directory="/Users/lukas/bht/03_NEP/wordle_de/src"/>
+					<Add directory="/Users/lukas/bht/03_NEP/wordle_de/include"/>
+					<Add directory="/opt/homebrew/Cellar/botan/2.19.1/include/botan-2"/>
+					<Add directory="/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/../include/c++/v1"/>
+					<Add directory="/usr/local/include"/>
+					<Add directory="/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/lib/clang/13.1.6/include"/>
+					<Add directory="/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/include"/>
+					<Add directory="/System/Library/Frameworks"/>
+					<Add directory="/Library/Frameworks"/>
+				</Compiler>
+				<MakeCommands>
+					<Build command="/opt/homebrew/bin/gmake -j8 -f &quot;/Users/lukas/bht/03_NEP/wordle_de/codeblocks/Makefile&quot;  VERBOSE=1 wordle_de_server/fast"/>
+					<CompileFile command="/opt/homebrew/bin/gmake -j8 -f &quot;/Users/lukas/bht/03_NEP/wordle_de/codeblocks/Makefile&quot;  VERBOSE=1 &quot;$file&quot;"/>
+					<Clean command="/opt/homebrew/bin/gmake -j8 -f &quot;/Users/lukas/bht/03_NEP/wordle_de/codeblocks/Makefile&quot;  VERBOSE=1 clean"/>
+					<DistClean command="/opt/homebrew/bin/gmake -j8 -f &quot;/Users/lukas/bht/03_NEP/wordle_de/codeblocks/Makefile&quot;  VERBOSE=1 clean"/>
+				</MakeCommands>
+			</Target>
+			<Target title="wordle_de_client">
+				<Option output="/Users/lukas/bht/03_NEP/wordle_de/codeblocks/wordle_de_client" prefix_auto="0" extension_auto="0"/>
+				<Option working_dir="/Users/lukas/bht/03_NEP/wordle_de/codeblocks"/>
+				<Option object_output="./"/>
+				<Option type="1"/>
+				<Option compiler="gcc"/>
+				<Compiler>
+					<Add directory="/opt/homebrew/include"/>
+					<Add directory="/Users/lukas/bht/03_NEP/wordle_de/codeblocks"/>
+					<Add directory="/Users/lukas/bht/03_NEP/wordle_de/src"/>
+					<Add directory="/Users/lukas/bht/03_NEP/wordle_de/include"/>
+					<Add directory="/opt/homebrew/Cellar/botan/2.19.1/include/botan-2"/>
+					<Add directory="/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/../include/c++/v1"/>
+					<Add directory="/usr/local/include"/>
+					<Add directory="/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/lib/clang/13.1.6/include"/>
+					<Add directory="/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/include"/>
+					<Add directory="/System/Library/Frameworks"/>
+					<Add directory="/Library/Frameworks"/>
+				</Compiler>
+				<MakeCommands>
+					<Build command="/opt/homebrew/bin/gmake -j8 -f &quot;/Users/lukas/bht/03_NEP/wordle_de/codeblocks/Makefile&quot;  VERBOSE=1 wordle_de_client"/>
+					<CompileFile command="/opt/homebrew/bin/gmake -j8 -f &quot;/Users/lukas/bht/03_NEP/wordle_de/codeblocks/Makefile&quot;  VERBOSE=1 &quot;$file&quot;"/>
+					<Clean command="/opt/homebrew/bin/gmake -j8 -f &quot;/Users/lukas/bht/03_NEP/wordle_de/codeblocks/Makefile&quot;  VERBOSE=1 clean"/>
+					<DistClean command="/opt/homebrew/bin/gmake -j8 -f &quot;/Users/lukas/bht/03_NEP/wordle_de/codeblocks/Makefile&quot;  VERBOSE=1 clean"/>
+				</MakeCommands>
+			</Target>
+			<Target title="wordle_de_client/fast">
+				<Option output="/Users/lukas/bht/03_NEP/wordle_de/codeblocks/wordle_de_client" prefix_auto="0" extension_auto="0"/>
+				<Option working_dir="/Users/lukas/bht/03_NEP/wordle_de/codeblocks"/>
+				<Option object_output="./"/>
+				<Option type="1"/>
+				<Option compiler="gcc"/>
+				<Compiler>
+					<Add directory="/opt/homebrew/include"/>
+					<Add directory="/Users/lukas/bht/03_NEP/wordle_de/codeblocks"/>
+					<Add directory="/Users/lukas/bht/03_NEP/wordle_de/src"/>
+					<Add directory="/Users/lukas/bht/03_NEP/wordle_de/include"/>
+					<Add directory="/opt/homebrew/Cellar/botan/2.19.1/include/botan-2"/>
+					<Add directory="/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/../include/c++/v1"/>
+					<Add directory="/usr/local/include"/>
+					<Add directory="/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/lib/clang/13.1.6/include"/>
+					<Add directory="/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/include"/>
+					<Add directory="/System/Library/Frameworks"/>
+					<Add directory="/Library/Frameworks"/>
+				</Compiler>
+				<MakeCommands>
+					<Build command="/opt/homebrew/bin/gmake -j8 -f &quot;/Users/lukas/bht/03_NEP/wordle_de/codeblocks/Makefile&quot;  VERBOSE=1 wordle_de_client/fast"/>
+					<CompileFile command="/opt/homebrew/bin/gmake -j8 -f &quot;/Users/lukas/bht/03_NEP/wordle_de/codeblocks/Makefile&quot;  VERBOSE=1 &quot;$file&quot;"/>
+					<Clean command="/opt/homebrew/bin/gmake -j8 -f &quot;/Users/lukas/bht/03_NEP/wordle_de/codeblocks/Makefile&quot;  VERBOSE=1 clean"/>
+					<DistClean command="/opt/homebrew/bin/gmake -j8 -f &quot;/Users/lukas/bht/03_NEP/wordle_de/codeblocks/Makefile&quot;  VERBOSE=1 clean"/>
+				</MakeCommands>
+			</Target>
+			<Target title="edit_cache">
+				<Option working_dir="/Users/lukas/bht/03_NEP/wordle_de/codeblocks"/>
+				<Option type="4"/>
+				<MakeCommands>
+					<Build command="/opt/homebrew/bin/gmake -j8 -f &quot;/Users/lukas/bht/03_NEP/wordle_de/codeblocks/Makefile&quot;  VERBOSE=1 edit_cache"/>
+					<CompileFile command="/opt/homebrew/bin/gmake -j8 -f &quot;/Users/lukas/bht/03_NEP/wordle_de/codeblocks/Makefile&quot;  VERBOSE=1 &quot;$file&quot;"/>
+					<Clean command="/opt/homebrew/bin/gmake -j8 -f &quot;/Users/lukas/bht/03_NEP/wordle_de/codeblocks/Makefile&quot;  VERBOSE=1 clean"/>
+					<DistClean command="/opt/homebrew/bin/gmake -j8 -f &quot;/Users/lukas/bht/03_NEP/wordle_de/codeblocks/Makefile&quot;  VERBOSE=1 clean"/>
+				</MakeCommands>
+			</Target>
+			<Target title="rebuild_cache">
+				<Option working_dir="/Users/lukas/bht/03_NEP/wordle_de/codeblocks"/>
+				<Option type="4"/>
+				<MakeCommands>
+					<Build command="/opt/homebrew/bin/gmake -j8 -f &quot;/Users/lukas/bht/03_NEP/wordle_de/codeblocks/Makefile&quot;  VERBOSE=1 rebuild_cache"/>
+					<CompileFile command="/opt/homebrew/bin/gmake -j8 -f &quot;/Users/lukas/bht/03_NEP/wordle_de/codeblocks/Makefile&quot;  VERBOSE=1 &quot;$file&quot;"/>
+					<Clean command="/opt/homebrew/bin/gmake -j8 -f &quot;/Users/lukas/bht/03_NEP/wordle_de/codeblocks/Makefile&quot;  VERBOSE=1 clean"/>
+					<DistClean command="/opt/homebrew/bin/gmake -j8 -f &quot;/Users/lukas/bht/03_NEP/wordle_de/codeblocks/Makefile&quot;  VERBOSE=1 clean"/>
+				</MakeCommands>
+			</Target>
+		</Build>
+		<Unit filename="/Users/lukas/bht/03_NEP/wordle_de/codeblocks/wordle_de.pb.cc">
+			<Option target="wordle_de_server"/>
+			<Option target="wordle_de_client"/>
+		</Unit>
+		<Unit filename="/Users/lukas/bht/03_NEP/wordle_de/codeblocks/wordle_de.pb.h">
+			<Option target="wordle_de_server"/>
+			<Option target="wordle_de_client"/>
+		</Unit>
+		<Unit filename="/Users/lukas/bht/03_NEP/wordle_de/codeblocks/wordle_de.pb.h.rule">
+			<Option target="wordle_de_server"/>
+			<Option target="wordle_de_client"/>
+		</Unit>
+		<Unit filename="/Users/lukas/bht/03_NEP/wordle_de/src/client.cpp">
+			<Option target="wordle_de_client"/>
+		</Unit>
+		<Unit filename="/Users/lukas/bht/03_NEP/wordle_de/src/client.hpp">
+			<Option target="wordle_de_client"/>
+		</Unit>
+		<Unit filename="/Users/lukas/bht/03_NEP/wordle_de/src/client_main.cpp">
+			<Option target="wordle_de_client"/>
+		</Unit>
+		<Unit filename="/Users/lukas/bht/03_NEP/wordle_de/src/game.cpp">
+			<Option target="wordle_de_server"/>
+		</Unit>
+		<Unit filename="/Users/lukas/bht/03_NEP/wordle_de/src/game.hpp">
+			<Option target="wordle_de_server"/>
+		</Unit>
+		<Unit filename="/Users/lukas/bht/03_NEP/wordle_de/src/server.cpp">
+			<Option target="wordle_de_server"/>
+		</Unit>
+		<Unit filename="/Users/lukas/bht/03_NEP/wordle_de/src/server.hpp">
+			<Option target="wordle_de_server"/>
+		</Unit>
+		<Unit filename="/Users/lukas/bht/03_NEP/wordle_de/src/server_main.cpp">
+			<Option target="wordle_de_server"/>
+		</Unit>
+		<Unit filename="/Users/lukas/bht/03_NEP/wordle_de/CMakeLists.txt">
+			<Option virtualFolder="CMake Files\"/>
+		</Unit>
+	</Project>
+</CodeBlocks_project_file>
diff --git a/protocol.md b/protocol.md
new file mode 100644
index 0000000000000000000000000000000000000000..6566d251eaf6e1e6c7a4017d6c1799a8037c3239
--- /dev/null
+++ b/protocol.md
@@ -0,0 +1,6 @@
+# Protokollbeschreibung für das Spiel "wordle_de"
+
+## Struktur
+
+### Server
+- 
diff --git a/specification.md b/specification.md
index 37ee05fd58d9db80c7a862b4ee4b6f872b6def73..1aaf52f4bf39f10ad891d8d38d623f901008831e 100644
--- a/specification.md
+++ b/specification.md
@@ -9,3 +9,19 @@ Es gibt die Möglichkeit mit einem eigenen Namen anzumelden und so seinen Spiels
 - das Wort besteht aus 5 Zeichen und besitzt keine Zeichen, die doppelt vorkommen
 - rät der Spieler ein Wort, wird ihm angezeigt, ob die geratenen Buchstaben im Wort vorkommen und an der richtigen Stelle sind
 - jedes Wort, das geraten wird, muss ein "richtiges" Wort sein, es dürfen also keine Phantasiewörter oder unzusammenhängende Buchstaben geraten werden
+
+## Rollenverteilung
+
+### Server
+- wählt Wort aus
+- prüft, ob geratenes Wort korrekt ist
+- meldet zurück, welche Buchstaben richtig geraten oder an der richtigen Stelle sind
+- speichert Spielstände pro Benutzer
+
+### Client
+- nimmt Benutzereingaben entgegen
+- verschickt Benutzereingaben an Server
+- updated sich 
+
+### Protokoll
+Es wird immer der gesamte Spielstatus übertragen, da es nur wenige Daten sind und so kein State im Client gehalten werden muss.
diff --git a/src/client.cpp b/src/client.cpp
new file mode 100644
index 0000000000000000000000000000000000000000..2ab4e6befcfa8ceeb41ba4abc59f1449b73e07b2
--- /dev/null
+++ b/src/client.cpp
@@ -0,0 +1,53 @@
+#include "client.hpp"
+#include "definitions.hpp"
+#include "server.hpp"
+#include <cstdio>
+#include <strings.h>
+#include <unistd.h>
+
+Client::Client() : sock(), serverAddr() {
+  sock = socket(AF_INET, SOCK_STREAM, 0);
+  serverAddr.sin_family = AF_INET;
+  serverAddr.sin_port = htons(DEFAULT_PORT);
+  inet_aton(DEFAULT_IP, &serverAddr.sin_addr);
+  int rc = connect(sock, (struct sockaddr *)&serverAddr, sizeof(serverAddr));
+  if (rc < 0) {
+    perror("connect() failed");
+    return;
+  }
+}
+
+Client::Client(const std::string &addr, const int &port) {
+  sock = socket(AF_INET, SOCK_STREAM, 0);
+  serverAddr.sin_family = AF_INET;
+  serverAddr.sin_port = htons(port);
+  inet_aton(addr.c_str(), &serverAddr.sin_addr);
+  int rc = connect(sock, (struct sockaddr *)&serverAddr, sizeof(serverAddr));
+  if (rc < 0) {
+    perror("connect() failed");
+    return;
+  }
+}
+
+void Client::disconnect() { close(sock); }
+
+uint16_t Client::sendMessage(const char *msg) {
+  return send(sock, msg, strlen(msg) + 1, 0);
+}
+
+void Client::receiveMessage() {
+  int nbytesrecv = recv(sock, inputBuffer, INPUT_BUFFER_SIZE, 0);
+
+  if (nbytesrecv <= 0) {
+    if (nbytesrecv == 0) {
+      disconnect();
+      return;
+    } else {
+      perror("recv() failed");
+    }
+    close(sock);
+    return;
+  }
+  receiveCallback(sock, inputBuffer);
+  bzero(&inputBuffer, INPUT_BUFFER_SIZE);
+}
diff --git a/src/client.hpp b/src/client.hpp
new file mode 100644
index 0000000000000000000000000000000000000000..13052fd2fb801e54af4c99dc8d009a70d0e4a67c
--- /dev/null
+++ b/src/client.hpp
@@ -0,0 +1,29 @@
+#ifndef _CLIENT_HPP
+#define _CLIENT_HPP
+
+#include <arpa/inet.h>
+#include <functional>
+#include <string>
+
+#define INPUT_BUFFER_SIZE 1000
+class Client {
+  int sock;
+  sockaddr_in serverAddr;
+  char inputBuffer[INPUT_BUFFER_SIZE];
+
+  typedef std::function<void(uint16_t, char *)> receiveCallbackType;
+
+public:
+  Client();
+  Client(const std::string &serverAddr, const int &port);
+
+  void disconnect();
+  uint16_t sendMessage(const char *);
+  void receiveMessage();
+
+  void onInput(receiveCallbackType cb);
+
+private:
+  receiveCallbackType receiveCallback;
+};
+#endif // !_CLIENT_HPP
diff --git a/src/client_main.cpp b/src/client_main.cpp
new file mode 100644
index 0000000000000000000000000000000000000000..8e7d1d04aa30177b7b58af4368a9ca628638c1b4
--- /dev/null
+++ b/src/client_main.cpp
@@ -0,0 +1,60 @@
+#include "client.hpp"
+#include "definitions.hpp"
+#include "wordle_de.pb.h"
+#include <iostream>
+#include <string>
+
+using namespace wordle_de;
+std::string getUsernameFromInput() {
+  std::string username;
+  std::getline(std::cin, username);
+  if (username.empty()) {
+    throw "empty username is not allowed";
+  }
+  if (username.length() > USERNAME_MAX_LENGTH) {
+    throw "username is too long";
+  }
+  return username;
+}
+
+std::string getPasswordFromInput() {
+  std::string password;
+  std::getline(std::cin, password);
+  if (password.empty()) {
+    throw "empty password is not allowed";
+  }
+  if (password.length() < 8) {
+    throw "password is too short";
+  }
+  return password;
+}
+
+int main() {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+  std::cout << "Willkommen zu Wordle auf Deutsch!" << std::endl;
+  std::cout << "Bitte gib deinen Benutzernamen und Passwort ein:" << std::endl;
+  std::string username, password;
+  while (true) {
+    try {
+      std::cout << "Benutzername: ";
+      username = getUsernameFromInput();
+      std::cout << "Passwort: ";
+      password = getPasswordFromInput();
+      break;
+    } catch (const char *error) {
+      std::cout << "Error: " << error << std::endl;
+    }
+  }
+
+  // try to connect to server
+  auto cl = Client();
+  std::cout << "Connected to server!" << std::endl;
+  std::cout << "Logging in..." << std::endl;
+  auto msg = Message();
+
+  auto login = new Login();
+  login->set_username(username);
+  login->set_password(password);
+  msg.set_allocated_login(login);
+  cl.sendMessage(msg.SerializeAsString().c_str());
+}
diff --git a/src/definitions.hpp b/src/definitions.hpp
index 8ba22b01290b15d263337241b3a816780dccc216..73fa3acf66ae0dee3667e32249f16f7b46a1435d 100644
--- a/src/definitions.hpp
+++ b/src/definitions.hpp
@@ -1,6 +1,13 @@
 #ifndef _DEFINITIONS_H
 #define _DEFINITIONS_H
 
-#define WORD_LENGTH 5
+#include <stdint.h>
+#include <string>
+
+const uint8_t WORD_LENGTH = 5;
+const uint8_t MAX_GUESSES = 5;
+const uint16_t USERNAME_MAX_LENGTH = 100;
+const int DEFAULT_PORT = 40000;
+const char DEFAULT_IP[] = "127.0.0.1";
 
 #endif // _DEFINITIONS_H
diff --git a/src/state.cpp b/src/game.cpp
similarity index 97%
rename from src/state.cpp
rename to src/game.cpp
index 530a655fc2130e3fd0a29169eda6117ab300bf84..40b8e0736db0da2acc7c9337b0cc2f9ce35f6ef7 100644
--- a/src/state.cpp
+++ b/src/game.cpp
@@ -1,4 +1,4 @@
-#include "state.hpp"
+#include "game.hpp"
 
 GameState::GameState() : word(), tries(0), guesses() {}
 
diff --git a/src/state.hpp b/src/game.hpp
similarity index 60%
rename from src/state.hpp
rename to src/game.hpp
index f5584146a4048448c16a57447467a18b3bb8d126..f91bbb9eff75e603475fbe04dcea251b2eb929f5 100644
--- a/src/state.hpp
+++ b/src/game.hpp
@@ -4,20 +4,26 @@
 #include "definitions.hpp"
 #include <array>
 #include <string>
+#include <vector>
 
 class GameState {
 public:
   enum matchType { NO_MATCH, MATCH, EXACT_MATCH };
+  typedef std::array<matchType, WORD_LENGTH> guessResultT;
+  struct guess {
+    std::string guess;
+    guessResultT result;
+  };
 
 private:
   std::string word;
   uint8_t tries;
-  std::array<std::string, WORD_LENGTH> guesses;
+  std::vector<std::string> guesses;
 
 public:
   GameState();
   GameState(const std::string &word);
   void setWord(const std::string &);
-  std::array<matchType, WORD_LENGTH> guess(const std::string &);
+  guessResultT guess(const std::string &);
 };
 #endif // _STATE_H
diff --git a/src/main.cpp b/src/main.cpp
deleted file mode 100644
index d9bef57d963031ae988e93acb4ad023bf6c0a2c7..0000000000000000000000000000000000000000
--- a/src/main.cpp
+++ /dev/null
@@ -1,33 +0,0 @@
-#include "player.hpp"
-#include "state.hpp"
-#include <arpa/inet.h>
-#include <netinet/ip.h>
-#include <stdio.h>
-#include <stdlib.h>
-#include <string.h>
-#include <unistd.h>
-
-int main(void) {
-  std::string word = "Hello";
-  std::string guess = "hello";
-  auto s = GameState();
-  s.setWord(word);
-  auto res = s.guess(guess);
-  printf("Word: %s\n", word.c_str());
-  printf("Guess: %s\n", guess.c_str());
-  for (const auto &r : res) {
-    switch (r) {
-    case GameState::NO_MATCH:
-      printf("X");
-      break;
-    case GameState::MATCH:
-      printf("m");
-      break;
-    case GameState::EXACT_MATCH:
-      printf("M");
-      break;
-    }
-  }
-  printf("\n");
-  return 0;
-}
diff --git a/src/player.hpp b/src/player.hpp
index 8aac54725bef7ebc295fb79038af317f5a784777..ee0513417323a4502c011e7ab0b71bdfe3b64c14 100644
--- a/src/player.hpp
+++ b/src/player.hpp
@@ -1,18 +1,26 @@
 #ifndef _PLAYER_H
 #define _PLAYER_H
-#include "state.hpp"
-#include <functional>
-#include <iostream>
+#include "game.hpp"
+#include <botan/argon2.h>
+#include <botan/system_rng.h>
 
 class Player {
-  unsigned int id;
-  std::string name;
+  std::string username;
+  std::string hashedPw;
+
   GameState state;
 
 public:
-  Player(const std::string &name)
-      : state(), id(std::hash<std::string>{}(name)) {}
+  Player(const std::string &name, const std::string &pw) : state() {
+    Botan::System_RNG rng;
+
+    hashedPw = Botan::argon2_generate_pwhash(pw.c_str(), sizeof(pw.c_str()),
+                                             rng, 1, 4000, 1);
+  }
 
+  bool authenticate(const std::string &pw) {
+    return Botan::argon2_check_pwhash(pw.c_str(), pw.size(), hashedPw);
+  }
   std::array<GameState::matchType, WORD_LENGTH>
   guess(const std::string &guess) {
     return state.guess(guess);
diff --git a/src/server.cpp b/src/server.cpp
index d77fea1ccfc1ec24d6e0a86a066baebc0e113455..d528da2573b71a2fc42c2944064be83cfa55e0ad 100644
--- a/src/server.cpp
+++ b/src/server.cpp
@@ -1,4 +1,5 @@
 #include "server.hpp"
+#include <definitions.hpp>
 #include <sys/socket.h>
 
 Server::Server() { setup(DEFAULT_PORT); }
@@ -89,7 +90,7 @@ void Server::recvInputFromExisting(int fd) {
   bzero(&input_buffer, INPUT_BUFFER_SIZE);
 }
 
-void Server::start() {
+void Server::run() {
   tmpfds = masterfds;
   int sel = select(maxfd + 1, &tmpfds, NULL, NULL, NULL);
   if (sel < 0) {
@@ -128,10 +129,10 @@ void Server::onDisconnect(disconnectCallbackType cb) {
   disconnectCallback = cb;
 }
 
-uint16_t Server::sendMessage(Connector conn, char *messageBuffer) {
-  return send(conn.source_fd, messageBuffer, strlen(messageBuffer), 0);
+uint16_t Server::sendMessage(int source_fd, char *messageBuffer) {
+  return send(source_fd, messageBuffer, strlen(messageBuffer), 0);
 }
 
-uint16_t Server::sendMessage(Connector conn, const char *messageBuffer) {
-  return send(conn.source_fd, messageBuffer, strlen(messageBuffer), 0);
+uint16_t Server::sendMessage(int source_fd, const char *messageBuffer) {
+  return send(source_fd, messageBuffer, strlen(messageBuffer), 0);
 }
diff --git a/src/server.hpp b/src/server.hpp
index 77fbbae1762e53b0507fcd9e85600a69c015df82..28176f52ad7c51a1c3f28168e666c9dfc8b432d4 100644
--- a/src/server.hpp
+++ b/src/server.hpp
@@ -6,25 +6,22 @@
 #include <unistd.h>
 #include <vector>
 
-#define DEFAULT_PORT 40000
 #define INPUT_BUFFER_SIZE 1000
 
-typedef std::function<void(uint16_t, char *)> receiveCallbackType;
-typedef std::function<void(uint16_t)> newConnectionCallbackType;
-typedef std::function<void(uint16_t)> disconnectCallbackType;
-
 class Server {
+public:
+  typedef std::function<void(uint16_t, char *)> receiveCallbackType;
+  typedef std::function<void(uint16_t)> newConnectionCallbackType;
+  typedef std::function<void(uint16_t)> disconnectCallbackType;
+
 public:
   Server();
   Server(const int &);
   Server(const Server &) {}
   virtual ~Server();
-  struct Connector {
-    uint32_t source_fd;
-  };
 
   void init();
-  void start();
+  void run();
   void stop();
 
   // callback setters
@@ -32,8 +29,8 @@ public:
   void onInput(receiveCallbackType cb);
   void onDisconnect(disconnectCallbackType cb);
 
-  uint16_t sendMessage(Connector conn, const char *messageBuffer);
-  uint16_t sendMessage(Connector conn, char *messageBuffer);
+  uint16_t sendMessage(int source_fd, const char *messageBuffer);
+  uint16_t sendMessage(int source_fd, char *messageBuffer);
 
 private:
   // file descriptor sets
diff --git a/src/server_main.cpp b/src/server_main.cpp
new file mode 100644
index 0000000000000000000000000000000000000000..a81e563a23f6431ef2bb08d1c765cd3966deb91d
--- /dev/null
+++ b/src/server_main.cpp
@@ -0,0 +1,94 @@
+#include "game.hpp"
+#include "player.hpp"
+#include "server.hpp"
+#include <arpa/inet.h>
+#include <iostream>
+#include <map>
+#include <netinet/ip.h>
+#include <stdio.h>
+#include <stdlib.h>
+#include <string.h>
+#include <unistd.h>
+#include <wordle_de.pb.h>
+
+std::map<std::string, Player *> players;
+
+void connected(uint16_t fd) { std::cout << "Connected" << std::endl; }
+void disconnected(uint16_t fd) { std::cout << "Disconnected" << std::endl; }
+void received(uint16_t fd, char *buffer) {
+
+  wordle_de::Message msg;
+  msg.ParseFromString(buffer);
+
+  switch (msg.msg_case()) {
+  case wordle_de::Message::kLogin: {
+    auto login = msg.mutable_login();
+    std::cout << "Received Login" << std::endl;
+    std::string username = login->username();
+    std::string password = login->password();
+    std::cout << "Username: " << username << ", Password: " << password
+              << std::endl;
+    // check if player is registered
+    if (players.contains(username)) {
+      std::cout << "player known" << std::endl;
+      auto player = players.at(username);
+      // authenticate player
+      if (player->authenticate(password)) {
+        std::cout << "Player '" << username << "' authenticated" << std::endl;
+      } else {
+        std::cout << "wrong password" << std::endl;
+      }
+    }
+    auto player = new Player(username, password);
+    players[username] = player;
+    break;
+  }
+  case wordle_de::Message::kGuess: {
+    if (!msg.has_guess()) {
+      throw "malformed message";
+    }
+    auto guess = msg.guess();
+    std::cout << "Received Guess: " << guess.guess() << std::endl;
+    break;
+  }
+  case wordle_de::Message::kGameState:
+    break;
+  case wordle_de::Message::MSG_NOT_SET:
+    break;
+  }
+}
+
+int main(void) {
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+  auto srv = Server();
+  srv.onConnect(connected);
+  srv.onDisconnect(disconnected);
+  srv.onInput(received);
+  std::cout << "Run..." << std::endl;
+  srv.init();
+  while (true) {
+    srv.run();
+  }
+  std::string word = "Hello";
+  std::string guess = "hello";
+  auto s = GameState();
+  s.setWord(word);
+  auto res = s.guess(guess);
+  printf("Word: %s\n", word.c_str());
+  printf("Guess: %s\n", guess.c_str());
+  for (const auto &r : res) {
+    switch (r) {
+    case GameState::NO_MATCH:
+      printf("X");
+      break;
+    case GameState::MATCH:
+      printf("m");
+      break;
+    case GameState::EXACT_MATCH:
+      printf("M");
+      break;
+    }
+  }
+  printf("\n");
+  return 0;
+}
diff --git a/wordle_de.proto b/wordle_de.proto
new file mode 100644
index 0000000000000000000000000000000000000000..d674b64a0f6e4184313437bc8f408004b6808acf
--- /dev/null
+++ b/wordle_de.proto
@@ -0,0 +1,26 @@
+syntax = "proto2";
+
+package wordle_de;
+
+message Login {
+  optional string username = 1;
+  optional string password = 2;
+}
+
+message Guess {
+  optional string guess = 1;
+}
+
+message GameState {
+ optional uint32 tries = 1;
+ repeated Guess guesses = 2;
+ optional bool newWord = 3;
+}
+
+message Message {
+  oneof msg {
+    Login login = 2;
+    Guess guess = 3;
+    GameState gameState = 4;
+  }
+}