diff --git a/cmd_line_main.c b/cmd_line_main.c
index 54adb50..5a68709 100644
--- a/cmd_line_main.c
+++ b/cmd_line_main.c
@@ -1,3 +1,29 @@
+/*==============================================================================
+ Copyright 2018 Laurence Lundblade
+ 
+ Permission is hereby granted, free of charge, to any person obtaining
+ a copy of this software and associated documentation files (the
+ "Software"), to deal in the Software without restriction, including
+ without limitation the rights to use, copy, modify, merge, publish,
+ distribute, sublicense, and/or sell copies of the Software, and to
+ permit persons to whom the Software is furnished to do so, subject to
+ the following conditions:
+ 
+ The above copyright notice and this permission notice shall be included
+ in all copies or substantial portions of the Software.
+ 
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
+ EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
+ MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
+ NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS
+ BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN
+ ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
+ CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
+ SOFTWARE.
+ 
+ (This is the MIT license)
+ ==============================================================================*/
+
 //
 //  main.c
 //  QCBOR
@@ -9,11 +35,22 @@
 #include <stdio.h>
 
 #include "basic_test.h"
+#include "half_precision_test.h"
+
+
+int fputs_wrapper(const char *szString, void *ctx)
+{
+    return fputs(szString, (FILE *)ctx);
+}
+
 
 int main(int argc, const char * argv[]) {
-    // insert code here...
-    printf("Hello, World! %d\n", basic_test_one());
     
+    half_precision_decode_basic();
     
-    return 0;
+    half_precision_encode_basic();
+    
+    int nNumTestsFailed = run_tests(&fputs_wrapper, stdout, NULL);
+
+    return nNumTestsFailed;
 }
