diff --git a/source/1.0/test_results/1.0.4/Mac_OS_X-10.8.2.txt b/source/1.0/test_results/1.0.4/Mac_OS_X-10.8.2.txt
new file mode 100644
index 0000000..ea19f26
--- /dev/null
+++ b/source/1.0/test_results/1.0.4/Mac_OS_X-10.8.2.txt
@@ -0,0 +1,311 @@
+#------------------------------------------------------------------------------
+# System data
+#
+
+# test run info
+shells="/bin/sh /bin/bash /bin/dash /bin/ksh /bin/pdksh /bin/zsh"
+tests=" shflags_test_defines.sh shflags_test_parsing.sh shflags_test_private.sh shflags_test_public.sh"
+
+# system info
+$ date
+Sun Jan  6 17:07:57 CET 2013
+$ uname -mprsv
+Darwin 12.2.0 Darwin Kernel Version 12.2.0: Sat Aug 25 00:48:52 PDT 2012; root:xnu-2050.18.24~1/RELEASE_X86_64 x86_64 i386
+
+
+#------------------------------------------------------------------------------
+# Running the test suite with /bin/sh
+#
+shell name: sh
+shell version: unknown
+
+--- Executing the 'defines' test suite ---
+testFlagsDefine
+testBoolean
+testFloat
+testInteger
+testString
+testShortNameLength
+testFlagNameIsReserved
+
+Ran 7 tests.
+
+OK
+
+--- Executing the 'parsing' test suite ---
+test:WARN Standard version of getopt found. Enhanced tests will be skipped.
+testGetoptStandard
+testGetoptEnhanced
+testValidBoolsShort
+testValidBoolsLong
+testValidFloats
+testInvalidFloats
+testValidIntegers
+testInvalidIntegers
+testValidStrings
+testMultipleFlags
+testSingleNonFlagArg
+testMultipleNonFlagArgs
+testMultipleNonFlagStringArgsWithSpaces
+testFlagsWithEquals
+testComplicatedCommandLineStandard
+testComplicatedCommandLineEnhanced
+
+Ran 16 tests.
+
+OK
+
+--- Executing the 'private' test suite ---
+testColumns
+testExpr
+testGenOptStr
+testGetFlagInfo
+testItemInList
+testValidBool
+testValidFloatBuiltin
+testValidFloatExpr
+testValidIntBuiltin
+testValidIntExpr
+testMathBuiltin
+testMathExpr
+
+Ran 12 tests.
+
+OK
+
+--- Executing the 'public' test suite ---
+test:WARN Standard version of getopt found. Enhanced tests will be skipped.
+testHelp
+testStandardHelpOutput
+testEnhancedHelpOutput
+testNoHelp
+
+Ran 4 tests.
+
+OK (skipped=7)
+
+
+#------------------------------------------------------------------------------
+# Running the test suite with /bin/bash
+#
+shell name: bash
+shell version: 3.2.48(1)-release
+
+--- Executing the 'defines' test suite ---
+testFlagsDefine
+testBoolean
+testFloat
+testInteger
+testString
+testShortNameLength
+testFlagNameIsReserved
+
+Ran 7 tests.
+
+OK
+
+--- Executing the 'parsing' test suite ---
+test:WARN Standard version of getopt found. Enhanced tests will be skipped.
+testGetoptStandard
+testGetoptEnhanced
+testValidBoolsShort
+testValidBoolsLong
+testValidFloats
+testInvalidFloats
+testValidIntegers
+testInvalidIntegers
+testValidStrings
+testMultipleFlags
+testSingleNonFlagArg
+testMultipleNonFlagArgs
+testMultipleNonFlagStringArgsWithSpaces
+testFlagsWithEquals
+testComplicatedCommandLineStandard
+testComplicatedCommandLineEnhanced
+
+Ran 16 tests.
+
+OK
+
+--- Executing the 'private' test suite ---
+testColumns
+testExpr
+testGenOptStr
+testGetFlagInfo
+testItemInList
+testValidBool
+testValidFloatBuiltin
+testValidFloatExpr
+testValidIntBuiltin
+testValidIntExpr
+testMathBuiltin
+testMathExpr
+
+Ran 12 tests.
+
+OK
+
+--- Executing the 'public' test suite ---
+test:WARN Standard version of getopt found. Enhanced tests will be skipped.
+testHelp
+testStandardHelpOutput
+testEnhancedHelpOutput
+testNoHelp
+
+Ran 4 tests.
+
+OK (skipped=7)
+
+
+#------------------------------------------------------------------------------
+# Running the test suite with /bin/dash
+#
+
+
+#------------------------------------------------------------------------------
+# Running the test suite with /bin/ksh
+#
+shell name: ksh
+shell version: 2011-02-08
+
+--- Executing the 'defines' test suite ---
+testFlagsDefine
+testBoolean
+testFloat
+testInteger
+testString
+testShortNameLength
+testFlagNameIsReserved
+
+Ran 7 tests.
+
+OK
+
+--- Executing the 'parsing' test suite ---
+test:WARN Standard version of getopt found. Enhanced tests will be skipped.
+testGetoptStandard
+testGetoptEnhanced
+testValidBoolsShort
+testValidBoolsLong
+testValidFloats
+testInvalidFloats
+testValidIntegers
+testInvalidIntegers
+testValidStrings
+testMultipleFlags
+testSingleNonFlagArg
+testMultipleNonFlagArgs
+testMultipleNonFlagStringArgsWithSpaces
+testFlagsWithEquals
+testComplicatedCommandLineStandard
+testComplicatedCommandLineEnhanced
+
+Ran 16 tests.
+
+OK
+
+--- Executing the 'private' test suite ---
+testColumns
+testExpr
+testGenOptStr
+testGetFlagInfo
+testItemInList
+testValidBool
+testValidFloatBuiltin
+testValidFloatExpr
+testValidIntBuiltin
+testValidIntExpr
+testMathBuiltin
+testMathExpr
+
+Ran 12 tests.
+
+OK
+
+--- Executing the 'public' test suite ---
+test:WARN Standard version of getopt found. Enhanced tests will be skipped.
+testHelp
+testStandardHelpOutput
+testEnhancedHelpOutput
+testNoHelp
+
+Ran 4 tests.
+
+OK (skipped=7)
+
+
+#------------------------------------------------------------------------------
+# Running the test suite with /bin/pdksh
+#
+
+
+#------------------------------------------------------------------------------
+# Running the test suite with /bin/zsh
+#
+shell name: zsh
+shell version: 4.3.11
+
+--- Executing the 'defines' test suite ---
+testFlagsDefine
+testBoolean
+testFloat
+testInteger
+testString
+testShortNameLength
+testFlagNameIsReserved
+
+Ran 7 tests.
+
+OK
+
+--- Executing the 'parsing' test suite ---
+test:WARN Standard version of getopt found. Enhanced tests will be skipped.
+testGetoptStandard
+testGetoptEnhanced
+testValidBoolsShort
+testValidBoolsLong
+testValidFloats
+testInvalidFloats
+testValidIntegers
+testInvalidIntegers
+testValidStrings
+testMultipleFlags
+testSingleNonFlagArg
+testMultipleNonFlagArgs
+testMultipleNonFlagStringArgsWithSpaces
+testFlagsWithEquals
+testComplicatedCommandLineStandard
+testComplicatedCommandLineEnhanced
+
+Ran 16 tests.
+
+OK
+
+--- Executing the 'private' test suite ---
+testColumns
+testExpr
+testGenOptStr
+testGetFlagInfo
+testItemInList
+testValidBool
+testValidFloatBuiltin
+testValidFloatExpr
+testValidIntBuiltin
+testValidIntExpr
+testMathBuiltin
+testMathExpr
+
+Ran 12 tests.
+
+OK
+
+--- Executing the 'public' test suite ---
+test:WARN Standard version of getopt found. Enhanced tests will be skipped.
+testHelp
+testStandardHelpOutput
+testEnhancedHelpOutput
+testNoHelp
+
+Ran 4 tests.
+
+OK (skipped=7)
