diff --git a/CMakeFiles/Makefile.cmake b/CMakeFiles/Makefile.cmake
index 3ee62f1..f6a4270 100644
--- a/CMakeFiles/Makefile.cmake
+++ b/CMakeFiles/Makefile.cmake
@@ -11,88 +11,18 @@ set(CMAKE_MAKEFILE_DEPENDS
   "CMakeFiles/3.22.1/CMakeCXXCompiler.cmake"
   "CMakeFiles/3.22.1/CMakeSystem.cmake"
   "CMakeLists.txt"
-  "/usr/share/cmake-3.22/Modules/CMakeCCompiler.cmake.in"
-  "/usr/share/cmake-3.22/Modules/CMakeCCompilerABI.c"
   "/usr/share/cmake-3.22/Modules/CMakeCInformation.cmake"
-  "/usr/share/cmake-3.22/Modules/CMakeCXXCompiler.cmake.in"
-  "/usr/share/cmake-3.22/Modules/CMakeCXXCompilerABI.cpp"
   "/usr/share/cmake-3.22/Modules/CMakeCXXInformation.cmake"
   "/usr/share/cmake-3.22/Modules/CMakeCommonLanguageInclude.cmake"
-  "/usr/share/cmake-3.22/Modules/CMakeCompilerIdDetection.cmake"
-  "/usr/share/cmake-3.22/Modules/CMakeDetermineCCompiler.cmake"
-  "/usr/share/cmake-3.22/Modules/CMakeDetermineCXXCompiler.cmake"
-  "/usr/share/cmake-3.22/Modules/CMakeDetermineCompileFeatures.cmake"
-  "/usr/share/cmake-3.22/Modules/CMakeDetermineCompiler.cmake"
-  "/usr/share/cmake-3.22/Modules/CMakeDetermineCompilerABI.cmake"
-  "/usr/share/cmake-3.22/Modules/CMakeDetermineCompilerId.cmake"
-  "/usr/share/cmake-3.22/Modules/CMakeDetermineSystem.cmake"
-  "/usr/share/cmake-3.22/Modules/CMakeFindBinUtils.cmake"
   "/usr/share/cmake-3.22/Modules/CMakeGenericSystem.cmake"
   "/usr/share/cmake-3.22/Modules/CMakeInitializeConfigs.cmake"
   "/usr/share/cmake-3.22/Modules/CMakeLanguageInformation.cmake"
-  "/usr/share/cmake-3.22/Modules/CMakeParseImplicitIncludeInfo.cmake"
-  "/usr/share/cmake-3.22/Modules/CMakeParseImplicitLinkInfo.cmake"
-  "/usr/share/cmake-3.22/Modules/CMakeParseLibraryArchitecture.cmake"
-  "/usr/share/cmake-3.22/Modules/CMakeSystem.cmake.in"
   "/usr/share/cmake-3.22/Modules/CMakeSystemSpecificInformation.cmake"
   "/usr/share/cmake-3.22/Modules/CMakeSystemSpecificInitialize.cmake"
-  "/usr/share/cmake-3.22/Modules/CMakeTestCCompiler.cmake"
-  "/usr/share/cmake-3.22/Modules/CMakeTestCXXCompiler.cmake"
-  "/usr/share/cmake-3.22/Modules/CMakeTestCompilerCommon.cmake"
-  "/usr/share/cmake-3.22/Modules/CMakeUnixFindMake.cmake"
-  "/usr/share/cmake-3.22/Modules/Compiler/ADSP-DetermineCompiler.cmake"
-  "/usr/share/cmake-3.22/Modules/Compiler/ARMCC-DetermineCompiler.cmake"
-  "/usr/share/cmake-3.22/Modules/Compiler/ARMClang-DetermineCompiler.cmake"
-  "/usr/share/cmake-3.22/Modules/Compiler/AppleClang-DetermineCompiler.cmake"
-  "/usr/share/cmake-3.22/Modules/Compiler/Borland-DetermineCompiler.cmake"
-  "/usr/share/cmake-3.22/Modules/Compiler/Bruce-C-DetermineCompiler.cmake"
   "/usr/share/cmake-3.22/Modules/Compiler/CMakeCommonCompilerMacros.cmake"
-  "/usr/share/cmake-3.22/Modules/Compiler/Clang-DetermineCompiler.cmake"
-  "/usr/share/cmake-3.22/Modules/Compiler/Clang-DetermineCompilerInternal.cmake"
-  "/usr/share/cmake-3.22/Modules/Compiler/Comeau-CXX-DetermineCompiler.cmake"
-  "/usr/share/cmake-3.22/Modules/Compiler/Compaq-C-DetermineCompiler.cmake"
-  "/usr/share/cmake-3.22/Modules/Compiler/Compaq-CXX-DetermineCompiler.cmake"
-  "/usr/share/cmake-3.22/Modules/Compiler/Cray-DetermineCompiler.cmake"
-  "/usr/share/cmake-3.22/Modules/Compiler/Embarcadero-DetermineCompiler.cmake"
-  "/usr/share/cmake-3.22/Modules/Compiler/Fujitsu-DetermineCompiler.cmake"
-  "/usr/share/cmake-3.22/Modules/Compiler/FujitsuClang-DetermineCompiler.cmake"
-  "/usr/share/cmake-3.22/Modules/Compiler/GHS-DetermineCompiler.cmake"
-  "/usr/share/cmake-3.22/Modules/Compiler/GNU-C-DetermineCompiler.cmake"
   "/usr/share/cmake-3.22/Modules/Compiler/GNU-C.cmake"
-  "/usr/share/cmake-3.22/Modules/Compiler/GNU-CXX-DetermineCompiler.cmake"
   "/usr/share/cmake-3.22/Modules/Compiler/GNU-CXX.cmake"
-  "/usr/share/cmake-3.22/Modules/Compiler/GNU-FindBinUtils.cmake"
   "/usr/share/cmake-3.22/Modules/Compiler/GNU.cmake"
-  "/usr/share/cmake-3.22/Modules/Compiler/HP-C-DetermineCompiler.cmake"
-  "/usr/share/cmake-3.22/Modules/Compiler/HP-CXX-DetermineCompiler.cmake"
-  "/usr/share/cmake-3.22/Modules/Compiler/IAR-DetermineCompiler.cmake"
-  "/usr/share/cmake-3.22/Modules/Compiler/IBMCPP-C-DetermineVersionInternal.cmake"
-  "/usr/share/cmake-3.22/Modules/Compiler/IBMCPP-CXX-DetermineVersionInternal.cmake"
-  "/usr/share/cmake-3.22/Modules/Compiler/Intel-DetermineCompiler.cmake"
-  "/usr/share/cmake-3.22/Modules/Compiler/IntelLLVM-DetermineCompiler.cmake"
-  "/usr/share/cmake-3.22/Modules/Compiler/MSVC-DetermineCompiler.cmake"
-  "/usr/share/cmake-3.22/Modules/Compiler/NVHPC-DetermineCompiler.cmake"
-  "/usr/share/cmake-3.22/Modules/Compiler/NVIDIA-DetermineCompiler.cmake"
-  "/usr/share/cmake-3.22/Modules/Compiler/OpenWatcom-DetermineCompiler.cmake"
-  "/usr/share/cmake-3.22/Modules/Compiler/PGI-DetermineCompiler.cmake"
-  "/usr/share/cmake-3.22/Modules/Compiler/PathScale-DetermineCompiler.cmake"
-  "/usr/share/cmake-3.22/Modules/Compiler/SCO-DetermineCompiler.cmake"
-  "/usr/share/cmake-3.22/Modules/Compiler/SDCC-C-DetermineCompiler.cmake"
-  "/usr/share/cmake-3.22/Modules/Compiler/SunPro-C-DetermineCompiler.cmake"
-  "/usr/share/cmake-3.22/Modules/Compiler/SunPro-CXX-DetermineCompiler.cmake"
-  "/usr/share/cmake-3.22/Modules/Compiler/TI-DetermineCompiler.cmake"
-  "/usr/share/cmake-3.22/Modules/Compiler/TinyCC-C-DetermineCompiler.cmake"
-  "/usr/share/cmake-3.22/Modules/Compiler/VisualAge-C-DetermineCompiler.cmake"
-  "/usr/share/cmake-3.22/Modules/Compiler/VisualAge-CXX-DetermineCompiler.cmake"
-  "/usr/share/cmake-3.22/Modules/Compiler/Watcom-DetermineCompiler.cmake"
-  "/usr/share/cmake-3.22/Modules/Compiler/XL-C-DetermineCompiler.cmake"
-  "/usr/share/cmake-3.22/Modules/Compiler/XL-CXX-DetermineCompiler.cmake"
-  "/usr/share/cmake-3.22/Modules/Compiler/XLClang-C-DetermineCompiler.cmake"
-  "/usr/share/cmake-3.22/Modules/Compiler/XLClang-CXX-DetermineCompiler.cmake"
-  "/usr/share/cmake-3.22/Modules/Compiler/zOS-C-DetermineCompiler.cmake"
-  "/usr/share/cmake-3.22/Modules/Compiler/zOS-CXX-DetermineCompiler.cmake"
-  "/usr/share/cmake-3.22/Modules/Internal/FeatureTesting.cmake"
-  "/usr/share/cmake-3.22/Modules/Platform/Linux-Determine-CXX.cmake"
   "/usr/share/cmake-3.22/Modules/Platform/Linux-GNU-C.cmake"
   "/usr/share/cmake-3.22/Modules/Platform/Linux-GNU-CXX.cmake"
   "/usr/share/cmake-3.22/Modules/Platform/Linux-GNU.cmake"
@@ -108,11 +38,6 @@ set(CMAKE_MAKEFILE_OUTPUTS
 
 # Byproducts of CMake generate step:
 set(CMAKE_MAKEFILE_PRODUCTS
-  "CMakeFiles/3.22.1/CMakeSystem.cmake"
-  "CMakeFiles/3.22.1/CMakeCCompiler.cmake"
-  "CMakeFiles/3.22.1/CMakeCXXCompiler.cmake"
-  "CMakeFiles/3.22.1/CMakeCCompiler.cmake"
-  "CMakeFiles/3.22.1/CMakeCXXCompiler.cmake"
   "CMakeFiles/CMakeDirectoryInformation.cmake"
   )
 
@@ -120,4 +45,5 @@ set(CMAKE_MAKEFILE_PRODUCTS
 set(CMAKE_DEPEND_INFO_FILES
   "CMakeFiles/candata.dir/DependInfo.cmake"
   "CMakeFiles/main.dir/DependInfo.cmake"
+  "CMakeFiles/main_test.dir/DependInfo.cmake"
   )
diff --git a/CMakeFiles/Makefile2 b/CMakeFiles/Makefile2
index 2c35d20..842fca9 100644
--- a/CMakeFiles/Makefile2
+++ b/CMakeFiles/Makefile2
@@ -65,6 +65,7 @@ CMAKE_BINARY_DIR = /home/coventry/Documents/7166CEM
 # The main recursive "all" target.
 all: CMakeFiles/candata.dir/all
 all: CMakeFiles/main.dir/all
+all: CMakeFiles/main_test.dir/all
 .PHONY : all
 
 # The main recursive "preinstall" target.
@@ -74,6 +75,7 @@ preinstall:
 # The main recursive "clean" target.
 clean: CMakeFiles/candata.dir/clean
 clean: CMakeFiles/main.dir/clean
+clean: CMakeFiles/main_test.dir/clean
 .PHONY : clean
 
 #=============================================================================
@@ -128,6 +130,32 @@ CMakeFiles/main.dir/clean:
 	$(MAKE) $(MAKESILENT) -f CMakeFiles/main.dir/build.make CMakeFiles/main.dir/clean
 .PHONY : CMakeFiles/main.dir/clean
 
+#=============================================================================
+# Target rules for target CMakeFiles/main_test.dir
+
+# All Build rule for target.
+CMakeFiles/main_test.dir/all: CMakeFiles/candata.dir/all
+	$(MAKE) $(MAKESILENT) -f CMakeFiles/main_test.dir/build.make CMakeFiles/main_test.dir/depend
+	$(MAKE) $(MAKESILENT) -f CMakeFiles/main_test.dir/build.make CMakeFiles/main_test.dir/build
+	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --progress-dir=/home/coventry/Documents/7166CEM/CMakeFiles --progress-num=6,7 "Built target main_test"
+.PHONY : CMakeFiles/main_test.dir/all
+
+# Build rule for subdir invocation for target.
+CMakeFiles/main_test.dir/rule: cmake_check_build_system
+	$(CMAKE_COMMAND) -E cmake_progress_start /home/coventry/Documents/7166CEM/CMakeFiles 5
+	$(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 CMakeFiles/main_test.dir/all
+	$(CMAKE_COMMAND) -E cmake_progress_start /home/coventry/Documents/7166CEM/CMakeFiles 0
+.PHONY : CMakeFiles/main_test.dir/rule
+
+# Convenience name for target.
+main_test: CMakeFiles/main_test.dir/rule
+.PHONY : main_test
+
+# clean rule for target.
+CMakeFiles/main_test.dir/clean:
+	$(MAKE) $(MAKESILENT) -f CMakeFiles/main_test.dir/build.make CMakeFiles/main_test.dir/clean
+.PHONY : CMakeFiles/main_test.dir/clean
+
 #=============================================================================
 # Special targets to cleanup operation of make.
 
diff --git a/CMakeFiles/TargetDirectories.txt b/CMakeFiles/TargetDirectories.txt
index 5cb8191..f91702e 100644
--- a/CMakeFiles/TargetDirectories.txt
+++ b/CMakeFiles/TargetDirectories.txt
@@ -1,4 +1,5 @@
 /home/coventry/Documents/7166CEM/CMakeFiles/candata.dir
 /home/coventry/Documents/7166CEM/CMakeFiles/main.dir
+/home/coventry/Documents/7166CEM/CMakeFiles/main_test.dir
 /home/coventry/Documents/7166CEM/CMakeFiles/edit_cache.dir
 /home/coventry/Documents/7166CEM/CMakeFiles/rebuild_cache.dir
diff --git a/CMakeFiles/main.dir/compiler_depend.internal b/CMakeFiles/main.dir/compiler_depend.internal
index 242f9fa..40b9277 100644
--- a/CMakeFiles/main.dir/compiler_depend.internal
+++ b/CMakeFiles/main.dir/compiler_depend.internal
@@ -118,4 +118,5 @@ CMakeFiles/main.dir/src/main.c.o
  /usr/include/stdint.h
  /usr/include/x86_64-linux-gnu/bits/wchar.h
  /usr/include/x86_64-linux-gnu/bits/stdint-uintn.h
+ /home/coventry/Documents/7166CEM/include/signal.h
 
diff --git a/CMakeFiles/main.dir/compiler_depend.make b/CMakeFiles/main.dir/compiler_depend.make
index e3257cc..19a84ca 100644
--- a/CMakeFiles/main.dir/compiler_depend.make
+++ b/CMakeFiles/main.dir/compiler_depend.make
@@ -116,9 +116,12 @@ CMakeFiles/main.dir/src/main.c.o: src/main.c \
   /usr/lib/gcc/x86_64-linux-gnu/11/include/stdint.h \
   /usr/include/stdint.h \
   /usr/include/x86_64-linux-gnu/bits/wchar.h \
-  /usr/include/x86_64-linux-gnu/bits/stdint-uintn.h
+  /usr/include/x86_64-linux-gnu/bits/stdint-uintn.h \
+  include/signal.h
 
 
+include/signal.h:
+
 /usr/include/x86_64-linux-gnu/bits/stdint-uintn.h:
 
 /usr/include/x86_64-linux-gnu/bits/wchar.h:
diff --git a/CMakeFiles/main.dir/src/main.c.o b/CMakeFiles/main.dir/src/main.c.o
index e9674b8..0ab803d 100644
Binary files a/CMakeFiles/main.dir/src/main.c.o and b/CMakeFiles/main.dir/src/main.c.o differ
diff --git a/CMakeFiles/main.dir/src/main.c.o.d b/CMakeFiles/main.dir/src/main.c.o.d
index 46f5457..5ace180 100644
--- a/CMakeFiles/main.dir/src/main.c.o.d
+++ b/CMakeFiles/main.dir/src/main.c.o.d
@@ -98,4 +98,5 @@ CMakeFiles/main.dir/src/main.c.o: \
  /home/coventry/Documents/7166CEM/src_autogen/candata.h \
  /usr/lib/gcc/x86_64-linux-gnu/11/include/stdint.h /usr/include/stdint.h \
  /usr/include/x86_64-linux-gnu/bits/wchar.h \
- /usr/include/x86_64-linux-gnu/bits/stdint-uintn.h
+ /usr/include/x86_64-linux-gnu/bits/stdint-uintn.h \
+ /home/coventry/Documents/7166CEM/include/signal.h
diff --git a/CMakeFiles/main_test.dir/DependInfo.cmake b/CMakeFiles/main_test.dir/DependInfo.cmake
new file mode 100644
index 0000000..52b8e46
--- /dev/null
+++ b/CMakeFiles/main_test.dir/DependInfo.cmake
@@ -0,0 +1,20 @@
+
+# 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
+  "/home/coventry/Documents/7166CEM/src/main_test.c" "CMakeFiles/main_test.dir/src/main_test.c.o" "gcc" "CMakeFiles/main_test.dir/src/main_test.c.o.d"
+  )
+
+# Targets to which this target links.
+set(CMAKE_TARGET_LINKED_INFO_FILES
+  "/home/coventry/Documents/7166CEM/CMakeFiles/candata.dir/DependInfo.cmake"
+  )
+
+# Fortran module output directory.
+set(CMAKE_Fortran_TARGET_MODULE_DIR "")
diff --git a/CMakeFiles/main_test.dir/build.make b/CMakeFiles/main_test.dir/build.make
new file mode 100644
index 0000000..ea89225
--- /dev/null
+++ b/CMakeFiles/main_test.dir/build.make
@@ -0,0 +1,111 @@
+# CMAKE generated file: DO NOT EDIT!
+# Generated by "Unix Makefiles" Generator, CMake Version 3.22
+
+# 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 = /usr/bin/cmake
+
+# The command to remove a file.
+RM = /usr/bin/cmake -E rm -f
+
+# Escaping for special characters.
+EQUALS = =
+
+# The top-level source directory on which CMake was run.
+CMAKE_SOURCE_DIR = /home/coventry/Documents/7166CEM
+
+# The top-level build directory on which CMake was run.
+CMAKE_BINARY_DIR = /home/coventry/Documents/7166CEM
+
+# Include any dependencies generated for this target.
+include CMakeFiles/main_test.dir/depend.make
+# Include any dependencies generated by the compiler for this target.
+include CMakeFiles/main_test.dir/compiler_depend.make
+
+# Include the progress variables for this target.
+include CMakeFiles/main_test.dir/progress.make
+
+# Include the compile flags for this target's objects.
+include CMakeFiles/main_test.dir/flags.make
+
+CMakeFiles/main_test.dir/src/main_test.c.o: CMakeFiles/main_test.dir/flags.make
+CMakeFiles/main_test.dir/src/main_test.c.o: src/main_test.c
+CMakeFiles/main_test.dir/src/main_test.c.o: CMakeFiles/main_test.dir/compiler_depend.ts
+	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green --progress-dir=/home/coventry/Documents/7166CEM/CMakeFiles --progress-num=$(CMAKE_PROGRESS_1) "Building C object CMakeFiles/main_test.dir/src/main_test.c.o"
+	/usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -MD -MT CMakeFiles/main_test.dir/src/main_test.c.o -MF CMakeFiles/main_test.dir/src/main_test.c.o.d -o CMakeFiles/main_test.dir/src/main_test.c.o -c /home/coventry/Documents/7166CEM/src/main_test.c
+
+CMakeFiles/main_test.dir/src/main_test.c.i: cmake_force
+	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing C source to CMakeFiles/main_test.dir/src/main_test.c.i"
+	/usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -E /home/coventry/Documents/7166CEM/src/main_test.c > CMakeFiles/main_test.dir/src/main_test.c.i
+
+CMakeFiles/main_test.dir/src/main_test.c.s: cmake_force
+	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling C source to assembly CMakeFiles/main_test.dir/src/main_test.c.s"
+	/usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -S /home/coventry/Documents/7166CEM/src/main_test.c -o CMakeFiles/main_test.dir/src/main_test.c.s
+
+# Object files for target main_test
+main_test_OBJECTS = \
+"CMakeFiles/main_test.dir/src/main_test.c.o"
+
+# External object files for target main_test
+main_test_EXTERNAL_OBJECTS =
+
+bin/main_test: CMakeFiles/main_test.dir/src/main_test.c.o
+bin/main_test: CMakeFiles/main_test.dir/build.make
+bin/main_test: lib/libcandata.so
+bin/main_test: CMakeFiles/main_test.dir/link.txt
+	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green --bold --progress-dir=/home/coventry/Documents/7166CEM/CMakeFiles --progress-num=$(CMAKE_PROGRESS_2) "Linking C executable bin/main_test"
+	$(CMAKE_COMMAND) -E cmake_link_script CMakeFiles/main_test.dir/link.txt --verbose=$(VERBOSE)
+
+# Rule to build all files generated by this target.
+CMakeFiles/main_test.dir/build: bin/main_test
+.PHONY : CMakeFiles/main_test.dir/build
+
+CMakeFiles/main_test.dir/clean:
+	$(CMAKE_COMMAND) -P CMakeFiles/main_test.dir/cmake_clean.cmake
+.PHONY : CMakeFiles/main_test.dir/clean
+
+CMakeFiles/main_test.dir/depend:
+	cd /home/coventry/Documents/7166CEM && $(CMAKE_COMMAND) -E cmake_depends "Unix Makefiles" /home/coventry/Documents/7166CEM /home/coventry/Documents/7166CEM /home/coventry/Documents/7166CEM /home/coventry/Documents/7166CEM /home/coventry/Documents/7166CEM/CMakeFiles/main_test.dir/DependInfo.cmake --color=$(COLOR)
+.PHONY : CMakeFiles/main_test.dir/depend
+
diff --git a/CMakeFiles/main_test.dir/cmake_clean.cmake b/CMakeFiles/main_test.dir/cmake_clean.cmake
new file mode 100644
index 0000000..6a9f2ac
--- /dev/null
+++ b/CMakeFiles/main_test.dir/cmake_clean.cmake
@@ -0,0 +1,11 @@
+file(REMOVE_RECURSE
+  "CMakeFiles/main_test.dir/src/main_test.c.o"
+  "CMakeFiles/main_test.dir/src/main_test.c.o.d"
+  "bin/main_test"
+  "bin/main_test.pdb"
+)
+
+# Per-language clean rules from dependency scanning.
+foreach(lang C)
+  include(CMakeFiles/main_test.dir/cmake_clean_${lang}.cmake OPTIONAL)
+endforeach()
diff --git a/CMakeFiles/main_test.dir/compiler_depend.make b/CMakeFiles/main_test.dir/compiler_depend.make
new file mode 100644
index 0000000..7965239
--- /dev/null
+++ b/CMakeFiles/main_test.dir/compiler_depend.make
@@ -0,0 +1,2 @@
+# Empty compiler generated dependencies file for main_test.
+# This may be replaced when dependencies are built.
diff --git a/CMakeFiles/main_test.dir/compiler_depend.ts b/CMakeFiles/main_test.dir/compiler_depend.ts
new file mode 100644
index 0000000..030bba8
--- /dev/null
+++ b/CMakeFiles/main_test.dir/compiler_depend.ts
@@ -0,0 +1,2 @@
+# CMAKE generated file: DO NOT EDIT!
+# Timestamp file for compiler generated dependencies management for main_test.
diff --git a/CMakeFiles/main_test.dir/depend.make b/CMakeFiles/main_test.dir/depend.make
new file mode 100644
index 0000000..348630b
--- /dev/null
+++ b/CMakeFiles/main_test.dir/depend.make
@@ -0,0 +1,2 @@
+# Empty dependencies file for main_test.
+# This may be replaced when dependencies are built.
diff --git a/CMakeFiles/main_test.dir/flags.make b/CMakeFiles/main_test.dir/flags.make
new file mode 100644
index 0000000..89f1d71
--- /dev/null
+++ b/CMakeFiles/main_test.dir/flags.make
@@ -0,0 +1,10 @@
+# CMAKE generated file: DO NOT EDIT!
+# Generated by "Unix Makefiles" Generator, CMake Version 3.22
+
+# compile C with /usr/bin/cc
+C_DEFINES = 
+
+C_INCLUDES = -I/home/coventry/Documents/7166CEM/include -I/home/coventry/Documents/7166CEM/src_autogen
+
+C_FLAGS = 
+
diff --git a/CMakeFiles/main_test.dir/link.txt b/CMakeFiles/main_test.dir/link.txt
new file mode 100644
index 0000000..8442408
--- /dev/null
+++ b/CMakeFiles/main_test.dir/link.txt
@@ -0,0 +1 @@
+/usr/bin/cc -rdynamic CMakeFiles/main_test.dir/src/main_test.c.o -o bin/main_test  -Wl,-rpath,/home/coventry/Documents/7166CEM/lib lib/libcandata.so 
diff --git a/CMakeFiles/main_test.dir/progress.make b/CMakeFiles/main_test.dir/progress.make
new file mode 100644
index 0000000..8808896
--- /dev/null
+++ b/CMakeFiles/main_test.dir/progress.make
@@ -0,0 +1,3 @@
+CMAKE_PROGRESS_1 = 6
+CMAKE_PROGRESS_2 = 7
+
diff --git a/CMakeFiles/main_test.dir/src/main_test.c.o b/CMakeFiles/main_test.dir/src/main_test.c.o
new file mode 100644
index 0000000..114384a
Binary files /dev/null and b/CMakeFiles/main_test.dir/src/main_test.c.o differ
diff --git a/CMakeFiles/main_test.dir/src/main_test.c.o.d b/CMakeFiles/main_test.dir/src/main_test.c.o.d
new file mode 100644
index 0000000..c966770
--- /dev/null
+++ b/CMakeFiles/main_test.dir/src/main_test.c.o.d
@@ -0,0 +1,102 @@
+CMakeFiles/main_test.dir/src/main_test.c.o: \
+ /home/coventry/Documents/7166CEM/src/main_test.c \
+ /usr/include/stdc-predef.h /usr/include/math.h \
+ /usr/include/x86_64-linux-gnu/bits/libc-header-start.h \
+ /usr/include/features.h /usr/include/features-time64.h \
+ /usr/include/x86_64-linux-gnu/bits/wordsize.h \
+ /usr/include/x86_64-linux-gnu/bits/timesize.h \
+ /usr/include/x86_64-linux-gnu/sys/cdefs.h \
+ /usr/include/x86_64-linux-gnu/bits/long-double.h \
+ /usr/include/x86_64-linux-gnu/gnu/stubs.h \
+ /usr/include/x86_64-linux-gnu/gnu/stubs-64.h \
+ /usr/include/x86_64-linux-gnu/bits/types.h \
+ /usr/include/x86_64-linux-gnu/bits/typesizes.h \
+ /usr/include/x86_64-linux-gnu/bits/time64.h \
+ /usr/include/x86_64-linux-gnu/bits/math-vector.h \
+ /usr/include/x86_64-linux-gnu/bits/libm-simd-decl-stubs.h \
+ /usr/include/x86_64-linux-gnu/bits/floatn.h \
+ /usr/include/x86_64-linux-gnu/bits/floatn-common.h \
+ /usr/include/x86_64-linux-gnu/bits/flt-eval-method.h \
+ /usr/include/x86_64-linux-gnu/bits/fp-logb.h \
+ /usr/include/x86_64-linux-gnu/bits/fp-fast.h \
+ /usr/include/x86_64-linux-gnu/bits/mathcalls-helper-functions.h \
+ /usr/include/x86_64-linux-gnu/bits/mathcalls.h /usr/include/stdio.h \
+ /usr/lib/gcc/x86_64-linux-gnu/11/include/stddef.h \
+ /usr/lib/gcc/x86_64-linux-gnu/11/include/stdarg.h \
+ /usr/include/x86_64-linux-gnu/bits/types/__fpos_t.h \
+ /usr/include/x86_64-linux-gnu/bits/types/__mbstate_t.h \
+ /usr/include/x86_64-linux-gnu/bits/types/__fpos64_t.h \
+ /usr/include/x86_64-linux-gnu/bits/types/__FILE.h \
+ /usr/include/x86_64-linux-gnu/bits/types/FILE.h \
+ /usr/include/x86_64-linux-gnu/bits/types/struct_FILE.h \
+ /usr/include/x86_64-linux-gnu/bits/stdio_lim.h /usr/include/stdlib.h \
+ /usr/include/x86_64-linux-gnu/bits/waitflags.h \
+ /usr/include/x86_64-linux-gnu/bits/waitstatus.h \
+ /usr/include/x86_64-linux-gnu/sys/types.h \
+ /usr/include/x86_64-linux-gnu/bits/types/clock_t.h \
+ /usr/include/x86_64-linux-gnu/bits/types/clockid_t.h \
+ /usr/include/x86_64-linux-gnu/bits/types/time_t.h \
+ /usr/include/x86_64-linux-gnu/bits/types/timer_t.h \
+ /usr/include/x86_64-linux-gnu/bits/stdint-intn.h /usr/include/endian.h \
+ /usr/include/x86_64-linux-gnu/bits/endian.h \
+ /usr/include/x86_64-linux-gnu/bits/endianness.h \
+ /usr/include/x86_64-linux-gnu/bits/byteswap.h \
+ /usr/include/x86_64-linux-gnu/bits/uintn-identity.h \
+ /usr/include/x86_64-linux-gnu/sys/select.h \
+ /usr/include/x86_64-linux-gnu/bits/select.h \
+ /usr/include/x86_64-linux-gnu/bits/types/sigset_t.h \
+ /usr/include/x86_64-linux-gnu/bits/types/__sigset_t.h \
+ /usr/include/x86_64-linux-gnu/bits/types/struct_timeval.h \
+ /usr/include/x86_64-linux-gnu/bits/types/struct_timespec.h \
+ /usr/include/x86_64-linux-gnu/bits/pthreadtypes.h \
+ /usr/include/x86_64-linux-gnu/bits/thread-shared-types.h \
+ /usr/include/x86_64-linux-gnu/bits/pthreadtypes-arch.h \
+ /usr/include/x86_64-linux-gnu/bits/atomic_wide_counter.h \
+ /usr/include/x86_64-linux-gnu/bits/struct_mutex.h \
+ /usr/include/x86_64-linux-gnu/bits/struct_rwlock.h /usr/include/alloca.h \
+ /usr/include/x86_64-linux-gnu/bits/stdlib-float.h /usr/include/string.h \
+ /usr/include/x86_64-linux-gnu/bits/types/locale_t.h \
+ /usr/include/x86_64-linux-gnu/bits/types/__locale_t.h \
+ /usr/include/strings.h /usr/include/unistd.h \
+ /usr/include/x86_64-linux-gnu/bits/posix_opt.h \
+ /usr/include/x86_64-linux-gnu/bits/environments.h \
+ /usr/include/x86_64-linux-gnu/bits/confname.h \
+ /usr/include/x86_64-linux-gnu/bits/getopt_posix.h \
+ /usr/include/x86_64-linux-gnu/bits/getopt_core.h \
+ /usr/include/x86_64-linux-gnu/bits/unistd_ext.h /usr/include/linux/can.h \
+ /usr/include/linux/types.h /usr/include/x86_64-linux-gnu/asm/types.h \
+ /usr/include/asm-generic/types.h /usr/include/asm-generic/int-ll64.h \
+ /usr/include/x86_64-linux-gnu/asm/bitsperlong.h \
+ /usr/include/asm-generic/bitsperlong.h /usr/include/linux/posix_types.h \
+ /usr/include/linux/stddef.h \
+ /usr/include/x86_64-linux-gnu/asm/posix_types.h \
+ /usr/include/x86_64-linux-gnu/asm/posix_types_64.h \
+ /usr/include/asm-generic/posix_types.h /usr/include/linux/socket.h \
+ /usr/include/linux/can/raw.h \
+ /home/coventry/Documents/7166CEM/include/can_wrap.h \
+ /usr/include/linux/if.h /usr/include/linux/libc-compat.h \
+ /usr/include/x86_64-linux-gnu/sys/socket.h \
+ /usr/include/x86_64-linux-gnu/bits/types/struct_iovec.h \
+ /usr/include/x86_64-linux-gnu/bits/socket.h \
+ /usr/include/x86_64-linux-gnu/bits/socket_type.h \
+ /usr/include/x86_64-linux-gnu/bits/sockaddr.h \
+ /usr/include/x86_64-linux-gnu/asm/socket.h \
+ /usr/include/asm-generic/socket.h \
+ /usr/include/x86_64-linux-gnu/asm/sockios.h \
+ /usr/include/asm-generic/sockios.h \
+ /usr/include/x86_64-linux-gnu/bits/types/struct_osockaddr.h \
+ /usr/include/linux/hdlc/ioctl.h \
+ /usr/include/x86_64-linux-gnu/sys/ioctl.h \
+ /usr/include/x86_64-linux-gnu/bits/ioctls.h \
+ /usr/include/x86_64-linux-gnu/asm/ioctls.h \
+ /usr/include/asm-generic/ioctls.h /usr/include/linux/ioctl.h \
+ /usr/include/x86_64-linux-gnu/asm/ioctl.h \
+ /usr/include/asm-generic/ioctl.h \
+ /usr/include/x86_64-linux-gnu/bits/ioctl-types.h \
+ /usr/include/x86_64-linux-gnu/sys/ttydefaults.h \
+ /usr/lib/gcc/x86_64-linux-gnu/11/include/stdbool.h \
+ /home/coventry/Documents/7166CEM/src_autogen/candata.h \
+ /usr/lib/gcc/x86_64-linux-gnu/11/include/stdint.h /usr/include/stdint.h \
+ /usr/include/x86_64-linux-gnu/bits/wchar.h \
+ /usr/include/x86_64-linux-gnu/bits/stdint-uintn.h \
+ /home/coventry/Documents/7166CEM/include/signal.h
diff --git a/CMakeFiles/progress.marks b/CMakeFiles/progress.marks
index 7ed6ff8..7f8f011 100644
--- a/CMakeFiles/progress.marks
+++ b/CMakeFiles/progress.marks
@@ -1 +1 @@
-5
+7
diff --git a/CMakeLists.txt b/CMakeLists.txt
index d6106e9..d6d2cb3 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -27,3 +27,6 @@ target_include_directories( candata PUBLIC src_autogen )
 
 add_executable( main src/main.c )
 target_link_libraries( main PRIVATE candata )
+
+add_executable( main_test src/main_test.c)
+target_link_libraries( main_test PRIVATE candata )
diff --git a/Makefile b/Makefile
index d031987..a3fe9e8 100644
--- a/Makefile
+++ b/Makefile
@@ -142,6 +142,19 @@ main/fast:
 	$(MAKE) $(MAKESILENT) -f CMakeFiles/main.dir/build.make CMakeFiles/main.dir/build
 .PHONY : main/fast
 
+#=============================================================================
+# Target rules for targets named main_test
+
+# Build rule for target.
+main_test: cmake_check_build_system
+	$(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 main_test
+.PHONY : main_test
+
+# fast build rule for target.
+main_test/fast:
+	$(MAKE) $(MAKESILENT) -f CMakeFiles/main_test.dir/build.make CMakeFiles/main_test.dir/build
+.PHONY : main_test/fast
+
 src/main.o: src/main.c.o
 .PHONY : src/main.o
 
@@ -166,6 +179,30 @@ src/main.c.s:
 	$(MAKE) $(MAKESILENT) -f CMakeFiles/main.dir/build.make CMakeFiles/main.dir/src/main.c.s
 .PHONY : src/main.c.s
 
+src/main_test.o: src/main_test.c.o
+.PHONY : src/main_test.o
+
+# target to build an object file
+src/main_test.c.o:
+	$(MAKE) $(MAKESILENT) -f CMakeFiles/main_test.dir/build.make CMakeFiles/main_test.dir/src/main_test.c.o
+.PHONY : src/main_test.c.o
+
+src/main_test.i: src/main_test.c.i
+.PHONY : src/main_test.i
+
+# target to preprocess a source file
+src/main_test.c.i:
+	$(MAKE) $(MAKESILENT) -f CMakeFiles/main_test.dir/build.make CMakeFiles/main_test.dir/src/main_test.c.i
+.PHONY : src/main_test.c.i
+
+src/main_test.s: src/main_test.c.s
+.PHONY : src/main_test.s
+
+# target to generate assembly for a file
+src/main_test.c.s:
+	$(MAKE) $(MAKESILENT) -f CMakeFiles/main_test.dir/build.make CMakeFiles/main_test.dir/src/main_test.c.s
+.PHONY : src/main_test.c.s
+
 src_autogen/candata.o: src_autogen/candata.c.o
 .PHONY : src_autogen/candata.o
 
@@ -200,9 +237,13 @@ help:
 	@echo "... rebuild_cache"
 	@echo "... candata"
 	@echo "... main"
+	@echo "... main_test"
 	@echo "... src/main.o"
 	@echo "... src/main.i"
 	@echo "... src/main.s"
+	@echo "... src/main_test.o"
+	@echo "... src/main_test.i"
+	@echo "... src/main_test.s"
 	@echo "... src_autogen/candata.o"
 	@echo "... src_autogen/candata.i"
 	@echo "... src_autogen/candata.s"
diff --git a/src/main_test.c b/src/main_test.c
index 775aace..5f439b1 100644
--- a/src/main_test.c
+++ b/src/main_test.c
@@ -114,10 +114,9 @@ void Test_004() {
 
 int main(int argc, char *argv[]) {
 
-   bool TEST_CONTINUE = FALSE;
    int tmp;
   while (1) {
-  printf("Enter choices 1/0");
+  printf("Enter choices 1/0 :");
   scanf("%d",&tmp);
    if( tmp < 1)
       break;