summaryrefslogtreecommitdiffstats
path: root/tools/testfiles
diff options
context:
space:
mode:
authorAllen Byrne <byrn@hdfgroup.org>2013-02-18 19:03:53 (GMT)
committerAllen Byrne <byrn@hdfgroup.org>2013-02-18 19:03:53 (GMT)
commit1629fd1ee78c33fdfd8328eef520a7e10aa945a8 (patch)
tree492cbade970f0660eb3436c5bcde3e712e30e37e /tools/testfiles
parent79bc86c220bfc7de65f1fe5e5c49088d9cfbd659 (diff)
downloadhdf5-1629fd1ee78c33fdfd8328eef520a7e10aa945a8.zip
hdf5-1629fd1ee78c33fdfd8328eef520a7e10aa945a8.tar.gz
hdf5-1629fd1ee78c33fdfd8328eef520a7e10aa945a8.tar.bz2
[svn-r23301]
Diffstat (limited to 'tools/testfiles')
-rw-r--r--tools/testfiles/h5dump-help.txt2
-rw-r--r--tools/testfiles/h5mkgrp_nested_lp.ls13
-rw-r--r--tools/testfiles/h5mkgrp_nested_mult_lp.ls21
-rw-r--r--tools/testfiles/h5mkgrp_nested_mult_p.ls16
-rw-r--r--tools/testfiles/h5mkgrp_nested_p.ls10
-rw-r--r--tools/testfiles/h5mkgrp_several.ls5
-rw-r--r--tools/testfiles/h5mkgrp_several_l.ls13
-rw-r--r--tools/testfiles/h5mkgrp_several_p.ls10
-rw-r--r--tools/testfiles/h5mkgrp_several_v.ls10
-rw-r--r--tools/testfiles/h5mkgrp_single.ls5
-rw-r--r--tools/testfiles/h5mkgrp_single_l.ls9
-rw-r--r--tools/testfiles/h5mkgrp_single_p.ls7
-rw-r--r--tools/testfiles/h5mkgrp_single_v.ls7
-rw-r--r--tools/testfiles/h5mkgrp_version.ls4
-rw-r--r--tools/testfiles/help-1.ls4
-rw-r--r--tools/testfiles/help-2.ls4
-rw-r--r--tools/testfiles/help-3.ls4
-rw-r--r--tools/testfiles/tall-6.exp11
-rw-r--r--tools/testfiles/textlinksrc-nodangle-1.ls4
-rw-r--r--tools/testfiles/tgroup-1.ls4
-rw-r--r--tools/testfiles/tnoattrdata.ddl39
-rw-r--r--tools/testfiles/tnoattrddl.ddl7
-rw-r--r--tools/testfiles/tnodata.ddl58
-rw-r--r--tools/testfiles/tnoddl.ddl402
-rw-r--r--tools/testfiles/tnoddlfile.ddl0
-rw-r--r--tools/testfiles/tnoddlfile.exp402
-rw-r--r--tools/testfiles/tnofilename-with-packed-bits.ddl2
-rw-r--r--tools/testfiles/tpbitsIncomplete.ddl2
-rw-r--r--tools/testfiles/tpbitsLengthExceeded.ddl2
-rw-r--r--tools/testfiles/tpbitsLengthPositive.ddl2
-rw-r--r--tools/testfiles/tpbitsMaxExceeded.ddl2
-rw-r--r--tools/testfiles/tpbitsOffsetExceeded.ddl2
-rw-r--r--tools/testfiles/tpbitsOffsetNegative.ddl2
-rw-r--r--tools/testfiles/trawdatafile.ddl58
-rw-r--r--tools/testfiles/trawdatafile.exp402
-rw-r--r--tools/testfiles/tscalarattrintsize.ddl130
-rw-r--r--tools/testfiles/tscalarattrintsize.h5bin0 -> 12944 bytes
-rw-r--r--tools/testfiles/tscalarintsize.ddl130
-rw-r--r--tools/testfiles/tscalarintsize.h5bin0 -> 15968 bytes
-rw-r--r--tools/testfiles/tscalarstring.ddl28
-rw-r--r--tools/testfiles/tscalarstring.h5bin0 -> 2208 bytes
-rw-r--r--tools/testfiles/twithddl.exp58
-rw-r--r--tools/testfiles/twithddlfile.ddl0
-rw-r--r--tools/testfiles/twithddlfile.exp402
44 files changed, 2271 insertions, 22 deletions
diff --git a/tools/testfiles/h5dump-help.txt b/tools/testfiles/h5dump-help.txt
index 74fc104..40510a4 100644
--- a/tools/testfiles/h5dump-help.txt
+++ b/tools/testfiles/h5dump-help.txt
@@ -46,6 +46,8 @@ usage: h5dump [OPTIONS] files
occur.
--no-compact-subset Disable compact form of subsetting and allow the use
of "[" in dataset names.
+ -O F, --ddl=F Output ddl text into file F
+ Do not use filename F to suppress ddl display
Subsetting is available by using the following options with a dataset
attribute. Subsetting is done by selecting a hyperslab from the data.
diff --git a/tools/testfiles/h5mkgrp_nested_lp.ls b/tools/testfiles/h5mkgrp_nested_lp.ls
new file mode 100644
index 0000000..1fe8ce8
--- /dev/null
+++ b/tools/testfiles/h5mkgrp_nested_lp.ls
@@ -0,0 +1,13 @@
+Opened "h5mkgrp_nested_lp.h5" with sec2 driver.
+/ Group
+ Location: 1:48
+ Links: 1
+ Modified: XXXX-XX-XX XX:XX:XX XXX
+/one Group
+ Location: 1:195
+ Links: 1
+ Modified: XXXX-XX-XX XX:XX:XX XXX
+/one/two Group
+ Location: 1:342
+ Links: 1
+ Modified: XXXX-XX-XX XX:XX:XX XXX
diff --git a/tools/testfiles/h5mkgrp_nested_mult_lp.ls b/tools/testfiles/h5mkgrp_nested_mult_lp.ls
new file mode 100644
index 0000000..50380ec
--- /dev/null
+++ b/tools/testfiles/h5mkgrp_nested_mult_lp.ls
@@ -0,0 +1,21 @@
+Opened "h5mkgrp_nested_mult_lp.h5" with sec2 driver.
+/ Group
+ Location: 1:48
+ Links: 1
+ Modified: XXXX-XX-XX XX:XX:XX XXX
+/one Group
+ Location: 1:195
+ Links: 1
+ Modified: XXXX-XX-XX XX:XX:XX XXX
+/one/two Group
+ Location: 1:342
+ Links: 1
+ Modified: XXXX-XX-XX XX:XX:XX XXX
+/three Group
+ Location: 1:489
+ Links: 1
+ Modified: XXXX-XX-XX XX:XX:XX XXX
+/three/four Group
+ Location: 1:636
+ Links: 1
+ Modified: XXXX-XX-XX XX:XX:XX XXX
diff --git a/tools/testfiles/h5mkgrp_nested_mult_p.ls b/tools/testfiles/h5mkgrp_nested_mult_p.ls
new file mode 100644
index 0000000..f2b3b4b
--- /dev/null
+++ b/tools/testfiles/h5mkgrp_nested_mult_p.ls
@@ -0,0 +1,16 @@
+Opened "h5mkgrp_nested_mult_p.h5" with sec2 driver.
+/ Group
+ Location: 1:96
+ Links: 1
+/one Group
+ Location: 1:800
+ Links: 1
+/one/two Group
+ Location: 1:1832
+ Links: 1
+/three Group
+ Location: 1:2864
+ Links: 1
+/three/four Group
+ Location: 1:3568
+ Links: 1
diff --git a/tools/testfiles/h5mkgrp_nested_p.ls b/tools/testfiles/h5mkgrp_nested_p.ls
new file mode 100644
index 0000000..3034dbb
--- /dev/null
+++ b/tools/testfiles/h5mkgrp_nested_p.ls
@@ -0,0 +1,10 @@
+Opened "h5mkgrp_nested_p.h5" with sec2 driver.
+/ Group
+ Location: 1:96
+ Links: 1
+/one Group
+ Location: 1:800
+ Links: 1
+/one/two Group
+ Location: 1:1832
+ Links: 1
diff --git a/tools/testfiles/h5mkgrp_several.ls b/tools/testfiles/h5mkgrp_several.ls
index bbf5c92..68a3f9c 100644
--- a/tools/testfiles/h5mkgrp_several.ls
+++ b/tools/testfiles/h5mkgrp_several.ls
@@ -1,7 +1,4 @@
-#############################
-Expected output for 'h5ls ../testfiles/h5mkgrp_several.h5'
-#############################
-Opened "../testfiles/h5mkgrp_several.h5" with sec2 driver.
+Opened "h5mkgrp_several.h5" with sec2 driver.
/ Group
Location: 1:96
Links: 1
diff --git a/tools/testfiles/h5mkgrp_several_l.ls b/tools/testfiles/h5mkgrp_several_l.ls
new file mode 100644
index 0000000..5e1b4be
--- /dev/null
+++ b/tools/testfiles/h5mkgrp_several_l.ls
@@ -0,0 +1,13 @@
+Opened "h5mkgrp_several_l.h5" with sec2 driver.
+/ Group
+ Location: 1:48
+ Links: 1
+ Modified: XXXX-XX-XX XX:XX:XX XXX
+/one Group
+ Location: 1:195
+ Links: 1
+ Modified: XXXX-XX-XX XX:XX:XX XXX
+/two Group
+ Location: 1:342
+ Links: 1
+ Modified: XXXX-XX-XX XX:XX:XX XXX
diff --git a/tools/testfiles/h5mkgrp_several_p.ls b/tools/testfiles/h5mkgrp_several_p.ls
new file mode 100644
index 0000000..43f1ce5
--- /dev/null
+++ b/tools/testfiles/h5mkgrp_several_p.ls
@@ -0,0 +1,10 @@
+Opened "h5mkgrp_several_p.h5" with sec2 driver.
+/ Group
+ Location: 1:96
+ Links: 1
+/one Group
+ Location: 1:800
+ Links: 1
+/two Group
+ Location: 1:1832
+ Links: 1
diff --git a/tools/testfiles/h5mkgrp_several_v.ls b/tools/testfiles/h5mkgrp_several_v.ls
new file mode 100644
index 0000000..a6df87b
--- /dev/null
+++ b/tools/testfiles/h5mkgrp_several_v.ls
@@ -0,0 +1,10 @@
+Opened "h5mkgrp_several_v.h5" with sec2 driver.
+/ Group
+ Location: 1:96
+ Links: 1
+/one Group
+ Location: 1:800
+ Links: 1
+/two Group
+ Location: 1:1832
+ Links: 1
diff --git a/tools/testfiles/h5mkgrp_single.ls b/tools/testfiles/h5mkgrp_single.ls
index e9932f7..f2bd01c 100644
--- a/tools/testfiles/h5mkgrp_single.ls
+++ b/tools/testfiles/h5mkgrp_single.ls
@@ -1,7 +1,4 @@
-#############################
-Expected output for 'h5ls ../testfiles/h5mkgrp_single.h5'
-#############################
-Opened "../testfiles/h5mkgrp_single.h5" with sec2 driver.
+Opened "h5mkgrp_single.h5" with sec2 driver.
/ Group
Location: 1:96
Links: 1
diff --git a/tools/testfiles/h5mkgrp_single_l.ls b/tools/testfiles/h5mkgrp_single_l.ls
new file mode 100644
index 0000000..1763a61
--- /dev/null
+++ b/tools/testfiles/h5mkgrp_single_l.ls
@@ -0,0 +1,9 @@
+Opened "h5mkgrp_single_l.h5" with sec2 driver.
+/ Group
+ Location: 1:48
+ Links: 1
+ Modified: XXXX-XX-XX XX:XX:XX XXX
+/latest Group
+ Location: 1:195
+ Links: 1
+ Modified: XXXX-XX-XX XX:XX:XX XXX
diff --git a/tools/testfiles/h5mkgrp_single_p.ls b/tools/testfiles/h5mkgrp_single_p.ls
new file mode 100644
index 0000000..e82dc31
--- /dev/null
+++ b/tools/testfiles/h5mkgrp_single_p.ls
@@ -0,0 +1,7 @@
+Opened "h5mkgrp_single_p.h5" with sec2 driver.
+/ Group
+ Location: 1:96
+ Links: 1
+/single Group
+ Location: 1:800
+ Links: 1
diff --git a/tools/testfiles/h5mkgrp_single_v.ls b/tools/testfiles/h5mkgrp_single_v.ls
new file mode 100644
index 0000000..7360865
--- /dev/null
+++ b/tools/testfiles/h5mkgrp_single_v.ls
@@ -0,0 +1,7 @@
+Opened "h5mkgrp_single_v.h5" with sec2 driver.
+/ Group
+ Location: 1:96
+ Links: 1
+/single Group
+ Location: 1:800
+ Links: 1
diff --git a/tools/testfiles/h5mkgrp_version.ls b/tools/testfiles/h5mkgrp_version.ls
deleted file mode 100644
index 907f0ad..0000000
--- a/tools/testfiles/h5mkgrp_version.ls
+++ /dev/null
@@ -1,4 +0,0 @@
-#############################
-Expected output for 'h5ls ../testfiles/h5mkgrp_version.h5'
-#############################
-../testfiles/h5mkgrp_version.h5: unable to open file
diff --git a/tools/testfiles/help-1.ls b/tools/testfiles/help-1.ls
index aaba608..491f696 100644
--- a/tools/testfiles/help-1.ls
+++ b/tools/testfiles/help-1.ls
@@ -1,4 +1,4 @@
-usage: h5ls [OPTIONS] [OBJECTS...]
+usage: h5ls [OPTIONS] file[/OBJECT] [file[/[OBJECT]...]
OPTIONS
-h, -?, --help Print a usage message and exit
-a, --address Print raw data address. If dataset is contiguous, address
@@ -38,7 +38,7 @@ usage: h5ls [OPTIONS] [OBJECTS...]
--vfd=DRIVER Use the specified virtual file driver
-x, --hexdump Show raw data in hexadecimal format
- OBJECTS
+ file/OBJECT
Each object consists of an HDF5 file name optionally followed by a
slash and an object name within the file (if no object is specified
within the file then the contents of the root group are displayed).
diff --git a/tools/testfiles/help-2.ls b/tools/testfiles/help-2.ls
index aaba608..491f696 100644
--- a/tools/testfiles/help-2.ls
+++ b/tools/testfiles/help-2.ls
@@ -1,4 +1,4 @@
-usage: h5ls [OPTIONS] [OBJECTS...]
+usage: h5ls [OPTIONS] file[/OBJECT] [file[/[OBJECT]...]
OPTIONS
-h, -?, --help Print a usage message and exit
-a, --address Print raw data address. If dataset is contiguous, address
@@ -38,7 +38,7 @@ usage: h5ls [OPTIONS] [OBJECTS...]
--vfd=DRIVER Use the specified virtual file driver
-x, --hexdump Show raw data in hexadecimal format
- OBJECTS
+ file/OBJECT
Each object consists of an HDF5 file name optionally followed by a
slash and an object name within the file (if no object is specified
within the file then the contents of the root group are displayed).
diff --git a/tools/testfiles/help-3.ls b/tools/testfiles/help-3.ls
index aaba608..491f696 100644
--- a/tools/testfiles/help-3.ls
+++ b/tools/testfiles/help-3.ls
@@ -1,4 +1,4 @@
-usage: h5ls [OPTIONS] [OBJECTS...]
+usage: h5ls [OPTIONS] file[/OBJECT] [file[/[OBJECT]...]
OPTIONS
-h, -?, --help Print a usage message and exit
-a, --address Print raw data address. If dataset is contiguous, address
@@ -38,7 +38,7 @@ usage: h5ls [OPTIONS] [OBJECTS...]
--vfd=DRIVER Use the specified virtual file driver
-x, --hexdump Show raw data in hexadecimal format
- OBJECTS
+ file/OBJECT
Each object consists of an HDF5 file name optionally followed by a
slash and an object name within the file (if no object is specified
within the file then the contents of the root group are displayed).
diff --git a/tools/testfiles/tall-6.exp b/tools/testfiles/tall-6.exp
new file mode 100644
index 0000000..8580cd6
--- /dev/null
+++ b/tools/testfiles/tall-6.exp
@@ -0,0 +1,11 @@
+
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 1, 2, 3, 4, 5, 6, 7, 8, 9,
+ 0, 2, 4, 6, 8, 10, 12, 14, 16, 18,
+ 0, 3, 6, 9, 12, 15, 18, 21, 24, 27,
+ 0, 4, 8, 12, 16, 20, 24, 28, 32, 36,
+ 0, 5, 10, 15, 20, 25, 30, 35, 40, 45,
+ 0, 6, 12, 18, 24, 30, 36, 42, 48, 54,
+ 0, 7, 14, 21, 28, 35, 42, 49, 56, 63,
+ 0, 8, 16, 24, 32, 40, 48, 56, 64, 72,
+ 0, 9, 18, 27, 36, 45, 54, 63, 72, 81 \ No newline at end of file
diff --git a/tools/testfiles/textlinksrc-nodangle-1.ls b/tools/testfiles/textlinksrc-nodangle-1.ls
index 7427e1c..9c19957 100644
--- a/tools/testfiles/textlinksrc-nodangle-1.ls
+++ b/tools/testfiles/textlinksrc-nodangle-1.ls
@@ -1,6 +1,6 @@
Error: --no-dangling-links must be used along with --follow-symlinks option!
-usage: h5ls [OPTIONS] [OBJECTS...]
+usage: h5ls [OPTIONS] file[/OBJECT] [file[/[OBJECT]...]
OPTIONS
-h, -?, --help Print a usage message and exit
-a, --address Print raw data address. If dataset is contiguous, address
@@ -40,7 +40,7 @@ usage: h5ls [OPTIONS] [OBJECTS...]
--vfd=DRIVER Use the specified virtual file driver
-x, --hexdump Show raw data in hexadecimal format
- OBJECTS
+ file/OBJECT
Each object consists of an HDF5 file name optionally followed by a
slash and an object name within the file (if no object is specified
within the file then the contents of the root group are displayed).
diff --git a/tools/testfiles/tgroup-1.ls b/tools/testfiles/tgroup-1.ls
index effaf5a..893c9ce 100644
--- a/tools/testfiles/tgroup-1.ls
+++ b/tools/testfiles/tgroup-1.ls
@@ -1,6 +1,6 @@
Error: 'recursive' option not compatible with 'group info' option!
-usage: h5ls [OPTIONS] [OBJECTS...]
+usage: h5ls [OPTIONS] file[/OBJECT] [file[/[OBJECT]...]
OPTIONS
-h, -?, --help Print a usage message and exit
-a, --address Print raw data address. If dataset is contiguous, address
@@ -40,7 +40,7 @@ usage: h5ls [OPTIONS] [OBJECTS...]
--vfd=DRIVER Use the specified virtual file driver
-x, --hexdump Show raw data in hexadecimal format
- OBJECTS
+ file/OBJECT
Each object consists of an HDF5 file name optionally followed by a
slash and an object name within the file (if no object is specified
within the file then the contents of the root group are displayed).
diff --git a/tools/testfiles/tnoattrdata.ddl b/tools/testfiles/tnoattrdata.ddl
new file mode 100644
index 0000000..a5d40fe
--- /dev/null
+++ b/tools/testfiles/tnoattrdata.ddl
@@ -0,0 +1,39 @@
+HDF5 "tattr.h5" {
+GROUP "/" {
+ ATTRIBUTE "/attr1" {
+ DATATYPE H5T_STD_I8BE
+ DATASPACE SIMPLE { ( 24 ) / ( 24 ) }
+ DATA {
+ }
+ }
+ ATTRIBUTE "attr2" {
+ DATATYPE H5T_STD_I32BE
+ DATASPACE SIMPLE { ( 10 ) / ( 10 ) }
+ DATA {
+ }
+ }
+ ATTRIBUTE "attr3" {
+ DATATYPE H5T_IEEE_F64BE
+ DATASPACE SIMPLE { ( 10 ) / ( 10 ) }
+ DATA {
+ }
+ }
+ ATTRIBUTE "attr4" {
+ DATATYPE H5T_STD_I32BE
+ DATASPACE SCALAR
+ DATA {
+ }
+ }
+ ATTRIBUTE "attr5" {
+ DATATYPE H5T_STRING {
+ STRSIZE 17;
+ STRPAD H5T_STR_NULLTERM;
+ CSET H5T_CSET_ASCII;
+ CTYPE H5T_C_S1;
+ }
+ DATASPACE SCALAR
+ DATA {
+ }
+ }
+}
+}
diff --git a/tools/testfiles/tnoattrddl.ddl b/tools/testfiles/tnoattrddl.ddl
new file mode 100644
index 0000000..f7326d0
--- /dev/null
+++ b/tools/testfiles/tnoattrddl.ddl
@@ -0,0 +1,7 @@
+
+ 97, 116, 116, 114, 105, 98, 117, 116, 101, 32, 111, 102, 32, 114, 111,
+ 111, 116, 32, 103, 114, 111, 117, 112, 0
+ 1, 2, 3, 4, 5, 6, 7, 8, 9, 10
+ 0, 0.1, 0.2, 0.3, 0.4, 0.5, 0.6, 0.7, 0.8, 0.9
+ 100
+ "string attribute"
diff --git a/tools/testfiles/tnodata.ddl b/tools/testfiles/tnodata.ddl
new file mode 100644
index 0000000..f99d906
--- /dev/null
+++ b/tools/testfiles/tnodata.ddl
@@ -0,0 +1,58 @@
+HDF5 "packedbits.h5" {
+GROUP "/" {
+ DATASET "DS08BITS" {
+ DATATYPE H5T_STD_I8LE
+ DATASPACE SIMPLE { ( 8, 8 ) / ( 8, 8 ) }
+ DATA {
+ }
+ }
+ DATASET "DS16BITS" {
+ DATATYPE H5T_STD_I16LE
+ DATASPACE SIMPLE { ( 8, 16 ) / ( 8, 16 ) }
+ DATA {
+ }
+ }
+ DATASET "DS32BITS" {
+ DATATYPE H5T_STD_I32LE
+ DATASPACE SIMPLE { ( 8, 32 ) / ( 8, 32 ) }
+ DATA {
+ }
+ }
+ DATASET "DS64BITS" {
+ DATATYPE H5T_STD_I64LE
+ DATASPACE SIMPLE { ( 8, 64 ) / ( 8, 64 ) }
+ DATA {
+ }
+ }
+ DATASET "DU08BITS" {
+ DATATYPE H5T_STD_U8LE
+ DATASPACE SIMPLE { ( 8, 8 ) / ( 8, 8 ) }
+ DATA {
+ }
+ }
+ DATASET "DU16BITS" {
+ DATATYPE H5T_STD_U16LE
+ DATASPACE SIMPLE { ( 8, 16 ) / ( 8, 16 ) }
+ DATA {
+ }
+ }
+ DATASET "DU32BITS" {
+ DATATYPE H5T_STD_U32LE
+ DATASPACE SIMPLE { ( 8, 32 ) / ( 8, 32 ) }
+ DATA {
+ }
+ }
+ DATASET "DU64BITS" {
+ DATATYPE H5T_STD_U64LE
+ DATASPACE SIMPLE { ( 8, 64 ) / ( 8, 64 ) }
+ DATA {
+ }
+ }
+ DATASET "DummyDBL" {
+ DATATYPE H5T_IEEE_F64BE
+ DATASPACE SIMPLE { ( 8, 8 ) / ( 8, 8 ) }
+ DATA {
+ }
+ }
+}
+}
diff --git a/tools/testfiles/tnoddl.ddl b/tools/testfiles/tnoddl.ddl
new file mode 100644
index 0000000..5238777
--- /dev/null
+++ b/tools/testfiles/tnoddl.ddl
@@ -0,0 +1,402 @@
+
+ -1, -2, -4, -8, -16, -32, -64, -128,
+ -2, -4, -8, -16, -32, -64, -128, 0,
+ -4, -8, -16, -32, -64, -128, 0, 0,
+ -8, -16, -32, -64, -128, 0, 0, 0,
+ -16, -32, -64, -128, 0, 0, 0, 0,
+ -32, -64, -128, 0, 0, 0, 0, 0,
+ -64, -128, 0, 0, 0, 0, 0, 0,
+ -128, 0, 0, 0, 0, 0, 0, 0
+ -1, -2, -4, -8, -16, -32, -64, -128, -256, -512, -1024, -2048, -4096,
+ -8192, -16384, -32768,
+ -2, -4, -8, -16, -32, -64, -128, -256, -512, -1024, -2048, -4096,
+ -8192, -16384, -32768, 0,
+ -4, -8, -16, -32, -64, -128, -256, -512, -1024, -2048, -4096, -8192,
+ -16384, -32768, 0, 0,
+ -8, -16, -32, -64, -128, -256, -512, -1024, -2048, -4096, -8192,
+ -16384, -32768, 0, 0, 0,
+ -16, -32, -64, -128, -256, -512, -1024, -2048, -4096, -8192, -16384,
+ -32768, 0, 0, 0, 0,
+ -32, -64, -128, -256, -512, -1024, -2048, -4096, -8192, -16384, -32768,
+ 0, 0, 0, 0, 0,
+ -64, -128, -256, -512, -1024, -2048, -4096, -8192, -16384, -32768, 0,
+ 0, 0, 0, 0, 0,
+ -128, -256, -512, -1024, -2048, -4096, -8192, -16384, -32768, 0, 0, 0,
+ 0, 0, 0, 0
+ -1, -2, -4, -8, -16, -32, -64, -128, -256, -512, -1024, -2048, -4096,
+ -8192, -16384, -32768, -65536, -131072, -262144, -524288, -1048576,
+ -2097152, -4194304, -8388608, -16777216, -33554432, -67108864,
+ -134217728, -268435456, -536870912, -1073741824, -2147483648,
+ -2, -4, -8, -16, -32, -64, -128, -256, -512, -1024, -2048, -4096,
+ -8192, -16384, -32768, -65536, -131072, -262144, -524288, -1048576,
+ -2097152, -4194304, -8388608, -16777216, -33554432, -67108864,
+ -134217728, -268435456, -536870912, -1073741824, -2147483648, 0,
+ -4, -8, -16, -32, -64, -128, -256, -512, -1024, -2048, -4096, -8192,
+ -16384, -32768, -65536, -131072, -262144, -524288, -1048576, -2097152,
+ -4194304, -8388608, -16777216, -33554432, -67108864, -134217728,
+ -268435456, -536870912, -1073741824, -2147483648, 0, 0,
+ -8, -16, -32, -64, -128, -256, -512, -1024, -2048, -4096, -8192,
+ -16384, -32768, -65536, -131072, -262144, -524288, -1048576, -2097152,
+ -4194304, -8388608, -16777216, -33554432, -67108864, -134217728,
+ -268435456, -536870912, -1073741824, -2147483648, 0, 0, 0,
+ -16, -32, -64, -128, -256, -512, -1024, -2048, -4096, -8192, -16384,
+ -32768, -65536, -131072, -262144, -524288, -1048576, -2097152,
+ -4194304, -8388608, -16777216, -33554432, -67108864, -134217728,
+ -268435456, -536870912, -1073741824, -2147483648, 0, 0, 0, 0,
+ -32, -64, -128, -256, -512, -1024, -2048, -4096, -8192, -16384, -32768,
+ -65536, -131072, -262144, -524288, -1048576, -2097152, -4194304,
+ -8388608, -16777216, -33554432, -67108864, -134217728, -268435456,
+ -536870912, -1073741824, -2147483648, 0, 0, 0, 0, 0,
+ -64, -128, -256, -512, -1024, -2048, -4096, -8192, -16384, -32768,
+ -65536, -131072, -262144, -524288, -1048576, -2097152, -4194304,
+ -8388608, -16777216, -33554432, -67108864, -134217728, -268435456,
+ -536870912, -1073741824, -2147483648, 0, 0, 0, 0, 0, 0,
+ -128, -256, -512, -1024, -2048, -4096, -8192, -16384, -32768, -65536,
+ -131072, -262144, -524288, -1048576, -2097152, -4194304, -8388608,
+ -16777216, -33554432, -67108864, -134217728, -268435456, -536870912,
+ -1073741824, -2147483648, 0, 0, 0, 0, 0, 0, 0
+ -1, -2, -4, -8, -16, -32, -64, -128, -256, -512, -1024, -2048, -4096,
+ -8192, -16384, -32768, -65536, -131072, -262144, -524288, -1048576,
+ -2097152, -4194304, -8388608, -16777216, -33554432, -67108864,
+ -134217728, -268435456, -536870912, -1073741824, -2147483648,
+ -4294967296, -8589934592, -17179869184, -34359738368, -68719476736,
+ -137438953472, -274877906944, -549755813888, -1099511627776,
+ -2199023255552, -4398046511104, -8796093022208, -17592186044416,
+ -35184372088832, -70368744177664, -140737488355328, -281474976710656,
+ -562949953421312, -1125899906842624, -2251799813685248,
+ -4503599627370496, -9007199254740992, -18014398509481984,
+ -36028797018963968, -72057594037927936, -144115188075855872,
+ -288230376151711744, -576460752303423488, -1152921504606846976,
+ -2305843009213693952, -4611686018427387904, -9223372036854775808,
+ -2, -4, -8, -16, -32, -64, -128, -256, -512, -1024, -2048, -4096,
+ -8192, -16384, -32768, -65536, -131072, -262144, -524288, -1048576,
+ -2097152, -4194304, -8388608, -16777216, -33554432, -67108864,
+ -134217728, -268435456, -536870912, -1073741824, -2147483648,
+ -4294967296, -8589934592, -17179869184, -34359738368, -68719476736,
+ -137438953472, -274877906944, -549755813888, -1099511627776,
+ -2199023255552, -4398046511104, -8796093022208, -17592186044416,
+ -35184372088832, -70368744177664, -140737488355328, -281474976710656,
+ -562949953421312, -1125899906842624, -2251799813685248,
+ -4503599627370496, -9007199254740992, -18014398509481984,
+ -36028797018963968, -72057594037927936, -144115188075855872,
+ -288230376151711744, -576460752303423488, -1152921504606846976,
+ -2305843009213693952, -4611686018427387904, -9223372036854775808, 0,
+ -4, -8, -16, -32, -64, -128, -256, -512, -1024, -2048, -4096, -8192,
+ -16384, -32768, -65536, -131072, -262144, -524288, -1048576, -2097152,
+ -4194304, -8388608, -16777216, -33554432, -67108864, -134217728,
+ -268435456, -536870912, -1073741824, -2147483648, -4294967296,
+ -8589934592, -17179869184, -34359738368, -68719476736, -137438953472,
+ -274877906944, -549755813888, -1099511627776, -2199023255552,
+ -4398046511104, -8796093022208, -17592186044416, -35184372088832,
+ -70368744177664, -140737488355328, -281474976710656, -562949953421312,
+ -1125899906842624, -2251799813685248, -4503599627370496,
+ -9007199254740992, -18014398509481984, -36028797018963968,
+ -72057594037927936, -144115188075855872, -288230376151711744,
+ -576460752303423488, -1152921504606846976, -2305843009213693952,
+ -4611686018427387904, -9223372036854775808, 0, 0,
+ -8, -16, -32, -64, -128, -256, -512, -1024, -2048, -4096, -8192,
+ -16384, -32768, -65536, -131072, -262144, -524288, -1048576, -2097152,
+ -4194304, -8388608, -16777216, -33554432, -67108864, -134217728,
+ -268435456, -536870912, -1073741824, -2147483648, -4294967296,
+ -8589934592, -17179869184, -34359738368, -68719476736, -137438953472,
+ -274877906944, -549755813888, -1099511627776, -2199023255552,
+ -4398046511104, -8796093022208, -17592186044416, -35184372088832,
+ -70368744177664, -140737488355328, -281474976710656, -562949953421312,
+ -1125899906842624, -2251799813685248, -4503599627370496,
+ -9007199254740992, -18014398509481984, -36028797018963968,
+ -72057594037927936, -144115188075855872, -288230376151711744,
+ -576460752303423488, -1152921504606846976, -2305843009213693952,
+ -4611686018427387904, -9223372036854775808, 0, 0, 0,
+ -16, -32, -64, -128, -256, -512, -1024, -2048, -4096, -8192, -16384,
+ -32768, -65536, -131072, -262144, -524288, -1048576, -2097152,
+ -4194304, -8388608, -16777216, -33554432, -67108864, -134217728,
+ -268435456, -536870912, -1073741824, -2147483648, -4294967296,
+ -8589934592, -17179869184, -34359738368, -68719476736, -137438953472,
+ -274877906944, -549755813888, -1099511627776, -2199023255552,
+ -4398046511104, -8796093022208, -17592186044416, -35184372088832,
+ -70368744177664, -140737488355328, -281474976710656, -562949953421312,
+ -1125899906842624, -2251799813685248, -4503599627370496,
+ -9007199254740992, -18014398509481984, -36028797018963968,
+ -72057594037927936, -144115188075855872, -288230376151711744,
+ -576460752303423488, -1152921504606846976, -2305843009213693952,
+ -4611686018427387904, -9223372036854775808, 0, 0, 0, 0,
+ -32, -64, -128, -256, -512, -1024, -2048, -4096, -8192, -16384, -32768,
+ -65536, -131072, -262144, -524288, -1048576, -2097152, -4194304,
+ -8388608, -16777216, -33554432, -67108864, -134217728, -268435456,
+ -536870912, -1073741824, -2147483648, -4294967296, -8589934592,
+ -17179869184, -34359738368, -68719476736, -137438953472, -274877906944,
+ -549755813888, -1099511627776, -2199023255552, -4398046511104,
+ -8796093022208, -17592186044416, -35184372088832, -70368744177664,
+ -140737488355328, -281474976710656, -562949953421312,
+ -1125899906842624, -2251799813685248, -4503599627370496,
+ -9007199254740992, -18014398509481984, -36028797018963968,
+ -72057594037927936, -144115188075855872, -288230376151711744,
+ -576460752303423488, -1152921504606846976, -2305843009213693952,
+ -4611686018427387904, -9223372036854775808, 0, 0, 0, 0, 0,
+ -64, -128, -256, -512, -1024, -2048, -4096, -8192, -16384, -32768,
+ -65536, -131072, -262144, -524288, -1048576, -2097152, -4194304,
+ -8388608, -16777216, -33554432, -67108864, -134217728, -268435456,
+ -536870912, -1073741824, -2147483648, -4294967296, -8589934592,
+ -17179869184, -34359738368, -68719476736, -137438953472, -274877906944,
+ -549755813888, -1099511627776, -2199023255552, -4398046511104,
+ -8796093022208, -17592186044416, -35184372088832, -70368744177664,
+ -140737488355328, -281474976710656, -562949953421312,
+ -1125899906842624, -2251799813685248, -4503599627370496,
+ -9007199254740992, -18014398509481984, -36028797018963968,
+ -72057594037927936, -144115188075855872, -288230376151711744,
+ -576460752303423488, -1152921504606846976, -2305843009213693952,
+ -4611686018427387904, -9223372036854775808, 0, 0, 0, 0, 0, 0,
+ -128, -256, -512, -1024, -2048, -4096, -8192, -16384, -32768, -65536,
+ -131072, -262144, -524288, -1048576, -2097152, -4194304, -8388608,
+ -16777216, -33554432, -67108864, -134217728, -268435456, -536870912,
+ -1073741824, -2147483648, -4294967296, -8589934592, -17179869184,
+ -34359738368, -68719476736, -137438953472, -274877906944,
+ -549755813888, -1099511627776, -2199023255552, -4398046511104,
+ -8796093022208, -17592186044416, -35184372088832, -70368744177664,
+ -140737488355328, -281474976710656, -562949953421312,
+ -1125899906842624, -2251799813685248, -4503599627370496,
+ -9007199254740992, -18014398509481984, -36028797018963968,
+ -72057594037927936, -144115188075855872, -288230376151711744,
+ -576460752303423488, -1152921504606846976, -2305843009213693952,
+ -4611686018427387904, -9223372036854775808, 0, 0, 0, 0, 0, 0, 0
+ 255, 254, 252, 248, 240, 224, 192, 128,
+ 254, 252, 248, 240, 224, 192, 128, 0,
+ 252, 248, 240, 224, 192, 128, 0, 0,
+ 248, 240, 224, 192, 128, 0, 0, 0,
+ 240, 224, 192, 128, 0, 0, 0, 0,
+ 224, 192, 128, 0, 0, 0, 0, 0,
+ 192, 128, 0, 0, 0, 0, 0, 0,
+ 128, 0, 0, 0, 0, 0, 0, 0
+ 65535, 65534, 65532, 65528, 65520, 65504, 65472, 65408, 65280, 65024,
+ 64512, 63488, 61440, 57344, 49152, 32768,
+ 65534, 65532, 65528, 65520, 65504, 65472, 65408, 65280, 65024, 64512,
+ 63488, 61440, 57344, 49152, 32768, 0,
+ 65532, 65528, 65520, 65504, 65472, 65408, 65280, 65024, 64512, 63488,
+ 61440, 57344, 49152, 32768, 0, 0,
+ 65528, 65520, 65504, 65472, 65408, 65280, 65024, 64512, 63488, 61440,
+ 57344, 49152, 32768, 0, 0, 0,
+ 65520, 65504, 65472, 65408, 65280, 65024, 64512, 63488, 61440, 57344,
+ 49152, 32768, 0, 0, 0, 0,
+ 65504, 65472, 65408, 65280, 65024, 64512, 63488, 61440, 57344, 49152,
+ 32768, 0, 0, 0, 0, 0,
+ 65472, 65408, 65280, 65024, 64512, 63488, 61440, 57344, 49152, 32768,
+ 0, 0, 0, 0, 0, 0,
+ 65408, 65280, 65024, 64512, 63488, 61440, 57344, 49152, 32768, 0, 0, 0,
+ 0, 0, 0, 0
+ 4294967295, 4294967294, 4294967292, 4294967288, 4294967280, 4294967264,
+ 4294967232, 4294967168, 4294967040, 4294966784, 4294966272, 4294965248,
+ 4294963200, 4294959104, 4294950912, 4294934528, 4294901760, 4294836224,
+ 4294705152, 4294443008, 4293918720, 4292870144, 4290772992, 4286578688,
+ 4278190080, 4261412864, 4227858432, 4160749568, 4026531840, 3758096384,
+ 3221225472, 2147483648,
+ 4294967294, 4294967292, 4294967288, 4294967280, 4294967264, 4294967232,
+ 4294967168, 4294967040, 4294966784, 4294966272, 4294965248, 4294963200,
+ 4294959104, 4294950912, 4294934528, 4294901760, 4294836224, 4294705152,
+ 4294443008, 4293918720, 4292870144, 4290772992, 4286578688, 4278190080,
+ 4261412864, 4227858432, 4160749568, 4026531840, 3758096384, 3221225472,
+ 2147483648, 0,
+ 4294967292, 4294967288, 4294967280, 4294967264, 4294967232, 4294967168,
+ 4294967040, 4294966784, 4294966272, 4294965248, 4294963200, 4294959104,
+ 4294950912, 4294934528, 4294901760, 4294836224, 4294705152, 4294443008,
+ 4293918720, 4292870144, 4290772992, 4286578688, 4278190080, 4261412864,
+ 4227858432, 4160749568, 4026531840, 3758096384, 3221225472, 2147483648,
+ 0, 0,
+ 4294967288, 4294967280, 4294967264, 4294967232, 4294967168, 4294967040,
+ 4294966784, 4294966272, 4294965248, 4294963200, 4294959104, 4294950912,
+ 4294934528, 4294901760, 4294836224, 4294705152, 4294443008, 4293918720,
+ 4292870144, 4290772992, 4286578688, 4278190080, 4261412864, 4227858432,
+ 4160749568, 4026531840, 3758096384, 3221225472, 2147483648, 0, 0, 0,
+ 4294967280, 4294967264, 4294967232, 4294967168, 4294967040, 4294966784,
+ 4294966272, 4294965248, 4294963200, 4294959104, 4294950912, 4294934528,
+ 4294901760, 4294836224, 4294705152, 4294443008, 4293918720, 4292870144,
+ 4290772992, 4286578688, 4278190080, 4261412864, 4227858432, 4160749568,
+ 4026531840, 3758096384, 3221225472, 2147483648, 0, 0, 0, 0,
+ 4294967264, 4294967232, 4294967168, 4294967040, 4294966784, 4294966272,
+ 4294965248, 4294963200, 4294959104, 4294950912, 4294934528, 4294901760,
+ 4294836224, 4294705152, 4294443008, 4293918720, 4292870144, 4290772992,
+ 4286578688, 4278190080, 4261412864, 4227858432, 4160749568, 4026531840,
+ 3758096384, 3221225472, 2147483648, 0, 0, 0, 0, 0,
+ 4294967232, 4294967168, 4294967040, 4294966784, 4294966272, 4294965248,
+ 4294963200, 4294959104, 4294950912, 4294934528, 4294901760, 4294836224,
+ 4294705152, 4294443008, 4293918720, 4292870144, 4290772992, 4286578688,
+ 4278190080, 4261412864, 4227858432, 4160749568, 4026531840, 3758096384,
+ 3221225472, 2147483648, 0, 0, 0, 0, 0, 0,
+ 4294967168, 4294967040, 4294966784, 4294966272, 4294965248, 4294963200,
+ 4294959104, 4294950912, 4294934528, 4294901760, 4294836224, 4294705152,
+ 4294443008, 4293918720, 4292870144, 4290772992, 4286578688, 4278190080,
+ 4261412864, 4227858432, 4160749568, 4026531840, 3758096384, 3221225472,
+ 2147483648, 0, 0, 0, 0, 0, 0, 0
+ 18446744073709551615, 18446744073709551614, 18446744073709551612,
+ 18446744073709551608, 18446744073709551600, 18446744073709551584,
+ 18446744073709551552, 18446744073709551488, 18446744073709551360,
+ 18446744073709551104, 18446744073709550592, 18446744073709549568,
+ 18446744073709547520, 18446744073709543424, 18446744073709535232,
+ 18446744073709518848, 18446744073709486080, 18446744073709420544,
+ 18446744073709289472, 18446744073709027328, 18446744073708503040,
+ 18446744073707454464, 18446744073705357312, 18446744073701163008,
+ 18446744073692774400, 18446744073675997184, 18446744073642442752,
+ 18446744073575333888, 18446744073441116160, 18446744073172680704,
+ 18446744072635809792, 18446744071562067968, 18446744069414584320,
+ 18446744065119617024, 18446744056529682432, 18446744039349813248,
+ 18446744004990074880, 18446743936270598144, 18446743798831644672,
+ 18446743523953737728, 18446742974197923840, 18446741874686296064,
+ 18446739675663040512, 18446735277616529408, 18446726481523507200,
+ 18446708889337462784, 18446673704965373952, 18446603336221196288,
+ 18446462598732840960, 18446181123756130304, 18445618173802708992,
+ 18444492273895866368, 18442240474082181120, 18437736874454810624,
+ 18428729675200069632, 18410715276690587648, 18374686479671623680,
+ 18302628885633695744, 18158513697557839872, 17870283321406128128,
+ 17293822569102704640, 16140901064495857664, 13835058055282163712,
+ 9223372036854775808,
+ 18446744073709551614, 18446744073709551612, 18446744073709551608,
+ 18446744073709551600, 18446744073709551584, 18446744073709551552,
+ 18446744073709551488, 18446744073709551360, 18446744073709551104,
+ 18446744073709550592, 18446744073709549568, 18446744073709547520,
+ 18446744073709543424, 18446744073709535232, 18446744073709518848,
+ 18446744073709486080, 18446744073709420544, 18446744073709289472,
+ 18446744073709027328, 18446744073708503040, 18446744073707454464,
+ 18446744073705357312, 18446744073701163008, 18446744073692774400,
+ 18446744073675997184, 18446744073642442752, 18446744073575333888,
+ 18446744073441116160, 18446744073172680704, 18446744072635809792,
+ 18446744071562067968, 18446744069414584320, 18446744065119617024,
+ 18446744056529682432, 18446744039349813248, 18446744004990074880,
+ 18446743936270598144, 18446743798831644672, 18446743523953737728,
+ 18446742974197923840, 18446741874686296064, 18446739675663040512,
+ 18446735277616529408, 18446726481523507200, 18446708889337462784,
+ 18446673704965373952, 18446603336221196288, 18446462598732840960,
+ 18446181123756130304, 18445618173802708992, 18444492273895866368,
+ 18442240474082181120, 18437736874454810624, 18428729675200069632,
+ 18410715276690587648, 18374686479671623680, 18302628885633695744,
+ 18158513697557839872, 17870283321406128128, 17293822569102704640,
+ 16140901064495857664, 13835058055282163712, 9223372036854775808, 0,
+ 18446744073709551612, 18446744073709551608, 18446744073709551600,
+ 18446744073709551584, 18446744073709551552, 18446744073709551488,
+ 18446744073709551360, 18446744073709551104, 18446744073709550592,
+ 18446744073709549568, 18446744073709547520, 18446744073709543424,
+ 18446744073709535232, 18446744073709518848, 18446744073709486080,
+ 18446744073709420544, 18446744073709289472, 18446744073709027328,
+ 18446744073708503040, 18446744073707454464, 18446744073705357312,
+ 18446744073701163008, 18446744073692774400, 18446744073675997184,
+ 18446744073642442752, 18446744073575333888, 18446744073441116160,
+ 18446744073172680704, 18446744072635809792, 18446744071562067968,
+ 18446744069414584320, 18446744065119617024, 18446744056529682432,
+ 18446744039349813248, 18446744004990074880, 18446743936270598144,
+ 18446743798831644672, 18446743523953737728, 18446742974197923840,
+ 18446741874686296064, 18446739675663040512, 18446735277616529408,
+ 18446726481523507200, 18446708889337462784, 18446673704965373952,
+ 18446603336221196288, 18446462598732840960, 18446181123756130304,
+ 18445618173802708992, 18444492273895866368, 18442240474082181120,
+ 18437736874454810624, 18428729675200069632, 18410715276690587648,
+ 18374686479671623680, 18302628885633695744, 18158513697557839872,
+ 17870283321406128128, 17293822569102704640, 16140901064495857664,
+ 13835058055282163712, 9223372036854775808, 0, 0,
+ 18446744073709551608, 18446744073709551600, 18446744073709551584,
+ 18446744073709551552, 18446744073709551488, 18446744073709551360,
+ 18446744073709551104, 18446744073709550592, 18446744073709549568,
+ 18446744073709547520, 18446744073709543424, 18446744073709535232,
+ 18446744073709518848, 18446744073709486080, 18446744073709420544,
+ 18446744073709289472, 18446744073709027328, 18446744073708503040,
+ 18446744073707454464, 18446744073705357312, 18446744073701163008,
+ 18446744073692774400, 18446744073675997184, 18446744073642442752,
+ 18446744073575333888, 18446744073441116160, 18446744073172680704,
+ 18446744072635809792, 18446744071562067968, 18446744069414584320,
+ 18446744065119617024, 18446744056529682432, 18446744039349813248,
+ 18446744004990074880, 18446743936270598144, 18446743798831644672,
+ 18446743523953737728, 18446742974197923840, 18446741874686296064,
+ 18446739675663040512, 18446735277616529408, 18446726481523507200,
+ 18446708889337462784, 18446673704965373952, 18446603336221196288,
+ 18446462598732840960, 18446181123756130304, 18445618173802708992,
+ 18444492273895866368, 18442240474082181120, 18437736874454810624,
+ 18428729675200069632, 18410715276690587648, 18374686479671623680,
+ 18302628885633695744, 18158513697557839872, 17870283321406128128,
+ 17293822569102704640, 16140901064495857664, 13835058055282163712,
+ 9223372036854775808, 0, 0, 0,
+ 18446744073709551600, 18446744073709551584, 18446744073709551552,
+ 18446744073709551488, 18446744073709551360, 18446744073709551104,
+ 18446744073709550592, 18446744073709549568, 18446744073709547520,
+ 18446744073709543424, 18446744073709535232, 18446744073709518848,
+ 18446744073709486080, 18446744073709420544, 18446744073709289472,
+ 18446744073709027328, 18446744073708503040, 18446744073707454464,
+ 18446744073705357312, 18446744073701163008, 18446744073692774400,
+ 18446744073675997184, 18446744073642442752, 18446744073575333888,
+ 18446744073441116160, 18446744073172680704, 18446744072635809792,
+ 18446744071562067968, 18446744069414584320, 18446744065119617024,
+ 18446744056529682432, 18446744039349813248, 18446744004990074880,
+ 18446743936270598144, 18446743798831644672, 18446743523953737728,
+ 18446742974197923840, 18446741874686296064, 18446739675663040512,
+ 18446735277616529408, 18446726481523507200, 18446708889337462784,
+ 18446673704965373952, 18446603336221196288, 18446462598732840960,
+ 18446181123756130304, 18445618173802708992, 18444492273895866368,
+ 18442240474082181120, 18437736874454810624, 18428729675200069632,
+ 18410715276690587648, 18374686479671623680, 18302628885633695744,
+ 18158513697557839872, 17870283321406128128, 17293822569102704640,
+ 16140901064495857664, 13835058055282163712, 9223372036854775808, 0, 0,
+ 0, 0,
+ 18446744073709551584, 18446744073709551552, 18446744073709551488,
+ 18446744073709551360, 18446744073709551104, 18446744073709550592,
+ 18446744073709549568, 18446744073709547520, 18446744073709543424,
+ 18446744073709535232, 18446744073709518848, 18446744073709486080,
+ 18446744073709420544, 18446744073709289472, 18446744073709027328,
+ 18446744073708503040, 18446744073707454464, 18446744073705357312,
+ 18446744073701163008, 18446744073692774400, 18446744073675997184,
+ 18446744073642442752, 18446744073575333888, 18446744073441116160,
+ 18446744073172680704, 18446744072635809792, 18446744071562067968,
+ 18446744069414584320, 18446744065119617024, 18446744056529682432,
+ 18446744039349813248, 18446744004990074880, 18446743936270598144,
+ 18446743798831644672, 18446743523953737728, 18446742974197923840,
+ 18446741874686296064, 18446739675663040512, 18446735277616529408,
+ 18446726481523507200, 18446708889337462784, 18446673704965373952,
+ 18446603336221196288, 18446462598732840960, 18446181123756130304,
+ 18445618173802708992, 18444492273895866368, 18442240474082181120,
+ 18437736874454810624, 18428729675200069632, 18410715276690587648,
+ 18374686479671623680, 18302628885633695744, 18158513697557839872,
+ 17870283321406128128, 17293822569102704640, 16140901064495857664,
+ 13835058055282163712, 9223372036854775808, 0, 0, 0, 0, 0,
+ 18446744073709551552, 18446744073709551488, 18446744073709551360,
+ 18446744073709551104, 18446744073709550592, 18446744073709549568,
+ 18446744073709547520, 18446744073709543424, 18446744073709535232,
+ 18446744073709518848, 18446744073709486080, 18446744073709420544,
+ 18446744073709289472, 18446744073709027328, 18446744073708503040,
+ 18446744073707454464, 18446744073705357312, 18446744073701163008,
+ 18446744073692774400, 18446744073675997184, 18446744073642442752,
+ 18446744073575333888, 18446744073441116160, 18446744073172680704,
+ 18446744072635809792, 18446744071562067968, 18446744069414584320,
+ 18446744065119617024, 18446744056529682432, 18446744039349813248,
+ 18446744004990074880, 18446743936270598144, 18446743798831644672,
+ 18446743523953737728, 18446742974197923840, 18446741874686296064,
+ 18446739675663040512, 18446735277616529408, 18446726481523507200,
+ 18446708889337462784, 18446673704965373952, 18446603336221196288,
+ 18446462598732840960, 18446181123756130304, 18445618173802708992,
+ 18444492273895866368, 18442240474082181120, 18437736874454810624,
+ 18428729675200069632, 18410715276690587648, 18374686479671623680,
+ 18302628885633695744, 18158513697557839872, 17870283321406128128,
+ 17293822569102704640, 16140901064495857664, 13835058055282163712,
+ 9223372036854775808, 0, 0, 0, 0, 0, 0,
+ 18446744073709551488, 18446744073709551360, 18446744073709551104,
+ 18446744073709550592, 18446744073709549568, 18446744073709547520,
+ 18446744073709543424, 18446744073709535232, 18446744073709518848,
+ 18446744073709486080, 18446744073709420544, 18446744073709289472,
+ 18446744073709027328, 18446744073708503040, 18446744073707454464,
+ 18446744073705357312, 18446744073701163008, 18446744073692774400,
+ 18446744073675997184, 18446744073642442752, 18446744073575333888,
+ 18446744073441116160, 18446744073172680704, 18446744072635809792,
+ 18446744071562067968, 18446744069414584320, 18446744065119617024,
+ 18446744056529682432, 18446744039349813248, 18446744004990074880,
+ 18446743936270598144, 18446743798831644672, 18446743523953737728,
+ 18446742974197923840, 18446741874686296064, 18446739675663040512,
+ 18446735277616529408, 18446726481523507200, 18446708889337462784,
+ 18446673704965373952, 18446603336221196288, 18446462598732840960,
+ 18446181123756130304, 18445618173802708992, 18444492273895866368,
+ 18442240474082181120, 18437736874454810624, 18428729675200069632,
+ 18410715276690587648, 18374686479671623680, 18302628885633695744,
+ 18158513697557839872, 17870283321406128128, 17293822569102704640,
+ 16140901064495857664, 13835058055282163712, 9223372036854775808, 0, 0,
+ 0, 0, 0, 0, 0
+ 0, 0.0001, 0.0002, 0.0003, 0.0004, 0.0005, 0.0006, 0.0007,
+ 1, 1.0001, 1.0002, 1.0003, 1.0004, 1.0005, 1.0006, 1.0007,
+ 2, 2.0001, 2.0002, 2.0003, 2.0004, 2.0005, 2.0006, 2.0007,
+ 3, 3.0001, 3.0002, 3.0003, 3.0004, 3.0005, 3.0006, 3.0007,
+ 4, 4.0001, 4.0002, 4.0003, 4.0004, 4.0005, 4.0006, 4.0007,
+ 5, 5.0001, 5.0002, 5.0003, 5.0004, 5.0005, 5.0006, 5.0007,
+ 6, 6.0001, 6.0002, 6.0003, 6.0004, 6.0005, 6.0006, 6.0007,
+ 7, 7.0001, 7.0002, 7.0003, 7.0004, 7.0005, 7.0006, 7.0007
diff --git a/tools/testfiles/tnoddlfile.ddl b/tools/testfiles/tnoddlfile.ddl
new file mode 100644
index 0000000..e69de29
--- /dev/null
+++ b/tools/testfiles/tnoddlfile.ddl
diff --git a/tools/testfiles/tnoddlfile.exp b/tools/testfiles/tnoddlfile.exp
new file mode 100644
index 0000000..dc19888
--- /dev/null
+++ b/tools/testfiles/tnoddlfile.exp
@@ -0,0 +1,402 @@
+
+ -1, -2, -4, -8, -16, -32, -64, -128,
+ -2, -4, -8, -16, -32, -64, -128, 0,
+ -4, -8, -16, -32, -64, -128, 0, 0,
+ -8, -16, -32, -64, -128, 0, 0, 0,
+ -16, -32, -64, -128, 0, 0, 0, 0,
+ -32, -64, -128, 0, 0, 0, 0, 0,
+ -64, -128, 0, 0, 0, 0, 0, 0,
+ -128, 0, 0, 0, 0, 0, 0, 0
+ -1, -2, -4, -8, -16, -32, -64, -128, -256, -512, -1024, -2048, -4096,
+ -8192, -16384, -32768,
+ -2, -4, -8, -16, -32, -64, -128, -256, -512, -1024, -2048, -4096,
+ -8192, -16384, -32768, 0,
+ -4, -8, -16, -32, -64, -128, -256, -512, -1024, -2048, -4096, -8192,
+ -16384, -32768, 0, 0,
+ -8, -16, -32, -64, -128, -256, -512, -1024, -2048, -4096, -8192,
+ -16384, -32768, 0, 0, 0,
+ -16, -32, -64, -128, -256, -512, -1024, -2048, -4096, -8192, -16384,
+ -32768, 0, 0, 0, 0,
+ -32, -64, -128, -256, -512, -1024, -2048, -4096, -8192, -16384, -32768,
+ 0, 0, 0, 0, 0,
+ -64, -128, -256, -512, -1024, -2048, -4096, -8192, -16384, -32768, 0,
+ 0, 0, 0, 0, 0,
+ -128, -256, -512, -1024, -2048, -4096, -8192, -16384, -32768, 0, 0, 0,
+ 0, 0, 0, 0
+ -1, -2, -4, -8, -16, -32, -64, -128, -256, -512, -1024, -2048, -4096,
+ -8192, -16384, -32768, -65536, -131072, -262144, -524288, -1048576,
+ -2097152, -4194304, -8388608, -16777216, -33554432, -67108864,
+ -134217728, -268435456, -536870912, -1073741824, -2147483648,
+ -2, -4, -8, -16, -32, -64, -128, -256, -512, -1024, -2048, -4096,
+ -8192, -16384, -32768, -65536, -131072, -262144, -524288, -1048576,
+ -2097152, -4194304, -8388608, -16777216, -33554432, -67108864,
+ -134217728, -268435456, -536870912, -1073741824, -2147483648, 0,
+ -4, -8, -16, -32, -64, -128, -256, -512, -1024, -2048, -4096, -8192,
+ -16384, -32768, -65536, -131072, -262144, -524288, -1048576, -2097152,
+ -4194304, -8388608, -16777216, -33554432, -67108864, -134217728,
+ -268435456, -536870912, -1073741824, -2147483648, 0, 0,
+ -8, -16, -32, -64, -128, -256, -512, -1024, -2048, -4096, -8192,
+ -16384, -32768, -65536, -131072, -262144, -524288, -1048576, -2097152,
+ -4194304, -8388608, -16777216, -33554432, -67108864, -134217728,
+ -268435456, -536870912, -1073741824, -2147483648, 0, 0, 0,
+ -16, -32, -64, -128, -256, -512, -1024, -2048, -4096, -8192, -16384,
+ -32768, -65536, -131072, -262144, -524288, -1048576, -2097152,
+ -4194304, -8388608, -16777216, -33554432, -67108864, -134217728,
+ -268435456, -536870912, -1073741824, -2147483648, 0, 0, 0, 0,
+ -32, -64, -128, -256, -512, -1024, -2048, -4096, -8192, -16384, -32768,
+ -65536, -131072, -262144, -524288, -1048576, -2097152, -4194304,
+ -8388608, -16777216, -33554432, -67108864, -134217728, -268435456,
+ -536870912, -1073741824, -2147483648, 0, 0, 0, 0, 0,
+ -64, -128, -256, -512, -1024, -2048, -4096, -8192, -16384, -32768,
+ -65536, -131072, -262144, -524288, -1048576, -2097152, -4194304,
+ -8388608, -16777216, -33554432, -67108864, -134217728, -268435456,
+ -536870912, -1073741824, -2147483648, 0, 0, 0, 0, 0, 0,
+ -128, -256, -512, -1024, -2048, -4096, -8192, -16384, -32768, -65536,
+ -131072, -262144, -524288, -1048576, -2097152, -4194304, -8388608,
+ -16777216, -33554432, -67108864, -134217728, -268435456, -536870912,
+ -1073741824, -2147483648, 0, 0, 0, 0, 0, 0, 0
+ -1, -2, -4, -8, -16, -32, -64, -128, -256, -512, -1024, -2048, -4096,
+ -8192, -16384, -32768, -65536, -131072, -262144, -524288, -1048576,
+ -2097152, -4194304, -8388608, -16777216, -33554432, -67108864,
+ -134217728, -268435456, -536870912, -1073741824, -2147483648,
+ -4294967296, -8589934592, -17179869184, -34359738368, -68719476736,
+ -137438953472, -274877906944, -549755813888, -1099511627776,
+ -2199023255552, -4398046511104, -8796093022208, -17592186044416,
+ -35184372088832, -70368744177664, -140737488355328, -281474976710656,
+ -562949953421312, -1125899906842624, -2251799813685248,
+ -4503599627370496, -9007199254740992, -18014398509481984,
+ -36028797018963968, -72057594037927936, -144115188075855872,
+ -288230376151711744, -576460752303423488, -1152921504606846976,
+ -2305843009213693952, -4611686018427387904, -9223372036854775808,
+ -2, -4, -8, -16, -32, -64, -128, -256, -512, -1024, -2048, -4096,
+ -8192, -16384, -32768, -65536, -131072, -262144, -524288, -1048576,
+ -2097152, -4194304, -8388608, -16777216, -33554432, -67108864,
+ -134217728, -268435456, -536870912, -1073741824, -2147483648,
+ -4294967296, -8589934592, -17179869184, -34359738368, -68719476736,
+ -137438953472, -274877906944, -549755813888, -1099511627776,
+ -2199023255552, -4398046511104, -8796093022208, -17592186044416,
+ -35184372088832, -70368744177664, -140737488355328, -281474976710656,
+ -562949953421312, -1125899906842624, -2251799813685248,
+ -4503599627370496, -9007199254740992, -18014398509481984,
+ -36028797018963968, -72057594037927936, -144115188075855872,
+ -288230376151711744, -576460752303423488, -1152921504606846976,
+ -2305843009213693952, -4611686018427387904, -9223372036854775808, 0,
+ -4, -8, -16, -32, -64, -128, -256, -512, -1024, -2048, -4096, -8192,
+ -16384, -32768, -65536, -131072, -262144, -524288, -1048576, -2097152,
+ -4194304, -8388608, -16777216, -33554432, -67108864, -134217728,
+ -268435456, -536870912, -1073741824, -2147483648, -4294967296,
+ -8589934592, -17179869184, -34359738368, -68719476736, -137438953472,
+ -274877906944, -549755813888, -1099511627776, -2199023255552,
+ -4398046511104, -8796093022208, -17592186044416, -35184372088832,
+ -70368744177664, -140737488355328, -281474976710656, -562949953421312,
+ -1125899906842624, -2251799813685248, -4503599627370496,
+ -9007199254740992, -18014398509481984, -36028797018963968,
+ -72057594037927936, -144115188075855872, -288230376151711744,
+ -576460752303423488, -1152921504606846976, -2305843009213693952,
+ -4611686018427387904, -9223372036854775808, 0, 0,
+ -8, -16, -32, -64, -128, -256, -512, -1024, -2048, -4096, -8192,
+ -16384, -32768, -65536, -131072, -262144, -524288, -1048576, -2097152,
+ -4194304, -8388608, -16777216, -33554432, -67108864, -134217728,
+ -268435456, -536870912, -1073741824, -2147483648, -4294967296,
+ -8589934592, -17179869184, -34359738368, -68719476736, -137438953472,
+ -274877906944, -549755813888, -1099511627776, -2199023255552,
+ -4398046511104, -8796093022208, -17592186044416, -35184372088832,
+ -70368744177664, -140737488355328, -281474976710656, -562949953421312,
+ -1125899906842624, -2251799813685248, -4503599627370496,
+ -9007199254740992, -18014398509481984, -36028797018963968,
+ -72057594037927936, -144115188075855872, -288230376151711744,
+ -576460752303423488, -1152921504606846976, -2305843009213693952,
+ -4611686018427387904, -9223372036854775808, 0, 0, 0,
+ -16, -32, -64, -128, -256, -512, -1024, -2048, -4096, -8192, -16384,
+ -32768, -65536, -131072, -262144, -524288, -1048576, -2097152,
+ -4194304, -8388608, -16777216, -33554432, -67108864, -134217728,
+ -268435456, -536870912, -1073741824, -2147483648, -4294967296,
+ -8589934592, -17179869184, -34359738368, -68719476736, -137438953472,
+ -274877906944, -549755813888, -1099511627776, -2199023255552,
+ -4398046511104, -8796093022208, -17592186044416, -35184372088832,
+ -70368744177664, -140737488355328, -281474976710656, -562949953421312,
+ -1125899906842624, -2251799813685248, -4503599627370496,
+ -9007199254740992, -18014398509481984, -36028797018963968,
+ -72057594037927936, -144115188075855872, -288230376151711744,
+ -576460752303423488, -1152921504606846976, -2305843009213693952,
+ -4611686018427387904, -9223372036854775808, 0, 0, 0, 0,
+ -32, -64, -128, -256, -512, -1024, -2048, -4096, -8192, -16384, -32768,
+ -65536, -131072, -262144, -524288, -1048576, -2097152, -4194304,
+ -8388608, -16777216, -33554432, -67108864, -134217728, -268435456,
+ -536870912, -1073741824, -2147483648, -4294967296, -8589934592,
+ -17179869184, -34359738368, -68719476736, -137438953472, -274877906944,
+ -549755813888, -1099511627776, -2199023255552, -4398046511104,
+ -8796093022208, -17592186044416, -35184372088832, -70368744177664,
+ -140737488355328, -281474976710656, -562949953421312,
+ -1125899906842624, -2251799813685248, -4503599627370496,
+ -9007199254740992, -18014398509481984, -36028797018963968,
+ -72057594037927936, -144115188075855872, -288230376151711744,
+ -576460752303423488, -1152921504606846976, -2305843009213693952,
+ -4611686018427387904, -9223372036854775808, 0, 0, 0, 0, 0,
+ -64, -128, -256, -512, -1024, -2048, -4096, -8192, -16384, -32768,
+ -65536, -131072, -262144, -524288, -1048576, -2097152, -4194304,
+ -8388608, -16777216, -33554432, -67108864, -134217728, -268435456,
+ -536870912, -1073741824, -2147483648, -4294967296, -8589934592,
+ -17179869184, -34359738368, -68719476736, -137438953472, -274877906944,
+ -549755813888, -1099511627776, -2199023255552, -4398046511104,
+ -8796093022208, -17592186044416, -35184372088832, -70368744177664,
+ -140737488355328, -281474976710656, -562949953421312,
+ -1125899906842624, -2251799813685248, -4503599627370496,
+ -9007199254740992, -18014398509481984, -36028797018963968,
+ -72057594037927936, -144115188075855872, -288230376151711744,
+ -576460752303423488, -1152921504606846976, -2305843009213693952,
+ -4611686018427387904, -9223372036854775808, 0, 0, 0, 0, 0, 0,
+ -128, -256, -512, -1024, -2048, -4096, -8192, -16384, -32768, -65536,
+ -131072, -262144, -524288, -1048576, -2097152, -4194304, -8388608,
+ -16777216, -33554432, -67108864, -134217728, -268435456, -536870912,
+ -1073741824, -2147483648, -4294967296, -8589934592, -17179869184,
+ -34359738368, -68719476736, -137438953472, -274877906944,
+ -549755813888, -1099511627776, -2199023255552, -4398046511104,
+ -8796093022208, -17592186044416, -35184372088832, -70368744177664,
+ -140737488355328, -281474976710656, -562949953421312,
+ -1125899906842624, -2251799813685248, -4503599627370496,
+ -9007199254740992, -18014398509481984, -36028797018963968,
+ -72057594037927936, -144115188075855872, -288230376151711744,
+ -576460752303423488, -1152921504606846976, -2305843009213693952,
+ -4611686018427387904, -9223372036854775808, 0, 0, 0, 0, 0, 0, 0
+ 255, 254, 252, 248, 240, 224, 192, 128,
+ 254, 252, 248, 240, 224, 192, 128, 0,
+ 252, 248, 240, 224, 192, 128, 0, 0,
+ 248, 240, 224, 192, 128, 0, 0, 0,
+ 240, 224, 192, 128, 0, 0, 0, 0,
+ 224, 192, 128, 0, 0, 0, 0, 0,
+ 192, 128, 0, 0, 0, 0, 0, 0,
+ 128, 0, 0, 0, 0, 0, 0, 0
+ 65535, 65534, 65532, 65528, 65520, 65504, 65472, 65408, 65280, 65024,
+ 64512, 63488, 61440, 57344, 49152, 32768,
+ 65534, 65532, 65528, 65520, 65504, 65472, 65408, 65280, 65024, 64512,
+ 63488, 61440, 57344, 49152, 32768, 0,
+ 65532, 65528, 65520, 65504, 65472, 65408, 65280, 65024, 64512, 63488,
+ 61440, 57344, 49152, 32768, 0, 0,
+ 65528, 65520, 65504, 65472, 65408, 65280, 65024, 64512, 63488, 61440,
+ 57344, 49152, 32768, 0, 0, 0,
+ 65520, 65504, 65472, 65408, 65280, 65024, 64512, 63488, 61440, 57344,
+ 49152, 32768, 0, 0, 0, 0,
+ 65504, 65472, 65408, 65280, 65024, 64512, 63488, 61440, 57344, 49152,
+ 32768, 0, 0, 0, 0, 0,
+ 65472, 65408, 65280, 65024, 64512, 63488, 61440, 57344, 49152, 32768,
+ 0, 0, 0, 0, 0, 0,
+ 65408, 65280, 65024, 64512, 63488, 61440, 57344, 49152, 32768, 0, 0, 0,
+ 0, 0, 0, 0
+ 4294967295, 4294967294, 4294967292, 4294967288, 4294967280, 4294967264,
+ 4294967232, 4294967168, 4294967040, 4294966784, 4294966272, 4294965248,
+ 4294963200, 4294959104, 4294950912, 4294934528, 4294901760, 4294836224,
+ 4294705152, 4294443008, 4293918720, 4292870144, 4290772992, 4286578688,
+ 4278190080, 4261412864, 4227858432, 4160749568, 4026531840, 3758096384,
+ 3221225472, 2147483648,
+ 4294967294, 4294967292, 4294967288, 4294967280, 4294967264, 4294967232,
+ 4294967168, 4294967040, 4294966784, 4294966272, 4294965248, 4294963200,
+ 4294959104, 4294950912, 4294934528, 4294901760, 4294836224, 4294705152,
+ 4294443008, 4293918720, 4292870144, 4290772992, 4286578688, 4278190080,
+ 4261412864, 4227858432, 4160749568, 4026531840, 3758096384, 3221225472,
+ 2147483648, 0,
+ 4294967292, 4294967288, 4294967280, 4294967264, 4294967232, 4294967168,
+ 4294967040, 4294966784, 4294966272, 4294965248, 4294963200, 4294959104,
+ 4294950912, 4294934528, 4294901760, 4294836224, 4294705152, 4294443008,
+ 4293918720, 4292870144, 4290772992, 4286578688, 4278190080, 4261412864,
+ 4227858432, 4160749568, 4026531840, 3758096384, 3221225472, 2147483648,
+ 0, 0,
+ 4294967288, 4294967280, 4294967264, 4294967232, 4294967168, 4294967040,
+ 4294966784, 4294966272, 4294965248, 4294963200, 4294959104, 4294950912,
+ 4294934528, 4294901760, 4294836224, 4294705152, 4294443008, 4293918720,
+ 4292870144, 4290772992, 4286578688, 4278190080, 4261412864, 4227858432,
+ 4160749568, 4026531840, 3758096384, 3221225472, 2147483648, 0, 0, 0,
+ 4294967280, 4294967264, 4294967232, 4294967168, 4294967040, 4294966784,
+ 4294966272, 4294965248, 4294963200, 4294959104, 4294950912, 4294934528,
+ 4294901760, 4294836224, 4294705152, 4294443008, 4293918720, 4292870144,
+ 4290772992, 4286578688, 4278190080, 4261412864, 4227858432, 4160749568,
+ 4026531840, 3758096384, 3221225472, 2147483648, 0, 0, 0, 0,
+ 4294967264, 4294967232, 4294967168, 4294967040, 4294966784, 4294966272,
+ 4294965248, 4294963200, 4294959104, 4294950912, 4294934528, 4294901760,
+ 4294836224, 4294705152, 4294443008, 4293918720, 4292870144, 4290772992,
+ 4286578688, 4278190080, 4261412864, 4227858432, 4160749568, 4026531840,
+ 3758096384, 3221225472, 2147483648, 0, 0, 0, 0, 0,
+ 4294967232, 4294967168, 4294967040, 4294966784, 4294966272, 4294965248,
+ 4294963200, 4294959104, 4294950912, 4294934528, 4294901760, 4294836224,
+ 4294705152, 4294443008, 4293918720, 4292870144, 4290772992, 4286578688,
+ 4278190080, 4261412864, 4227858432, 4160749568, 4026531840, 3758096384,
+ 3221225472, 2147483648, 0, 0, 0, 0, 0, 0,
+ 4294967168, 4294967040, 4294966784, 4294966272, 4294965248, 4294963200,
+ 4294959104, 4294950912, 4294934528, 4294901760, 4294836224, 4294705152,
+ 4294443008, 4293918720, 4292870144, 4290772992, 4286578688, 4278190080,
+ 4261412864, 4227858432, 4160749568, 4026531840, 3758096384, 3221225472,
+ 2147483648, 0, 0, 0, 0, 0, 0, 0
+ 18446744073709551615, 18446744073709551614, 18446744073709551612,
+ 18446744073709551608, 18446744073709551600, 18446744073709551584,
+ 18446744073709551552, 18446744073709551488, 18446744073709551360,
+ 18446744073709551104, 18446744073709550592, 18446744073709549568,
+ 18446744073709547520, 18446744073709543424, 18446744073709535232,
+ 18446744073709518848, 18446744073709486080, 18446744073709420544,
+ 18446744073709289472, 18446744073709027328, 18446744073708503040,
+ 18446744073707454464, 18446744073705357312, 18446744073701163008,
+ 18446744073692774400, 18446744073675997184, 18446744073642442752,
+ 18446744073575333888, 18446744073441116160, 18446744073172680704,
+ 18446744072635809792, 18446744071562067968, 18446744069414584320,
+ 18446744065119617024, 18446744056529682432, 18446744039349813248,
+ 18446744004990074880, 18446743936270598144, 18446743798831644672,
+ 18446743523953737728, 18446742974197923840, 18446741874686296064,
+ 18446739675663040512, 18446735277616529408, 18446726481523507200,
+ 18446708889337462784, 18446673704965373952, 18446603336221196288,
+ 18446462598732840960, 18446181123756130304, 18445618173802708992,
+ 18444492273895866368, 18442240474082181120, 18437736874454810624,
+ 18428729675200069632, 18410715276690587648, 18374686479671623680,
+ 18302628885633695744, 18158513697557839872, 17870283321406128128,
+ 17293822569102704640, 16140901064495857664, 13835058055282163712,
+ 9223372036854775808,
+ 18446744073709551614, 18446744073709551612, 18446744073709551608,
+ 18446744073709551600, 18446744073709551584, 18446744073709551552,
+ 18446744073709551488, 18446744073709551360, 18446744073709551104,
+ 18446744073709550592, 18446744073709549568, 18446744073709547520,
+ 18446744073709543424, 18446744073709535232, 18446744073709518848,
+ 18446744073709486080, 18446744073709420544, 18446744073709289472,
+ 18446744073709027328, 18446744073708503040, 18446744073707454464,
+ 18446744073705357312, 18446744073701163008, 18446744073692774400,
+ 18446744073675997184, 18446744073642442752, 18446744073575333888,
+ 18446744073441116160, 18446744073172680704, 18446744072635809792,
+ 18446744071562067968, 18446744069414584320, 18446744065119617024,
+ 18446744056529682432, 18446744039349813248, 18446744004990074880,
+ 18446743936270598144, 18446743798831644672, 18446743523953737728,
+ 18446742974197923840, 18446741874686296064, 18446739675663040512,
+ 18446735277616529408, 18446726481523507200, 18446708889337462784,
+ 18446673704965373952, 18446603336221196288, 18446462598732840960,
+ 18446181123756130304, 18445618173802708992, 18444492273895866368,
+ 18442240474082181120, 18437736874454810624, 18428729675200069632,
+ 18410715276690587648, 18374686479671623680, 18302628885633695744,
+ 18158513697557839872, 17870283321406128128, 17293822569102704640,
+ 16140901064495857664, 13835058055282163712, 9223372036854775808, 0,
+ 18446744073709551612, 18446744073709551608, 18446744073709551600,
+ 18446744073709551584, 18446744073709551552, 18446744073709551488,
+ 18446744073709551360, 18446744073709551104, 18446744073709550592,
+ 18446744073709549568, 18446744073709547520, 18446744073709543424,
+ 18446744073709535232, 18446744073709518848, 18446744073709486080,
+ 18446744073709420544, 18446744073709289472, 18446744073709027328,
+ 18446744073708503040, 18446744073707454464, 18446744073705357312,
+ 18446744073701163008, 18446744073692774400, 18446744073675997184,
+ 18446744073642442752, 18446744073575333888, 18446744073441116160,
+ 18446744073172680704, 18446744072635809792, 18446744071562067968,
+ 18446744069414584320, 18446744065119617024, 18446744056529682432,
+ 18446744039349813248, 18446744004990074880, 18446743936270598144,
+ 18446743798831644672, 18446743523953737728, 18446742974197923840,
+ 18446741874686296064, 18446739675663040512, 18446735277616529408,
+ 18446726481523507200, 18446708889337462784, 18446673704965373952,
+ 18446603336221196288, 18446462598732840960, 18446181123756130304,
+ 18445618173802708992, 18444492273895866368, 18442240474082181120,
+ 18437736874454810624, 18428729675200069632, 18410715276690587648,
+ 18374686479671623680, 18302628885633695744, 18158513697557839872,
+ 17870283321406128128, 17293822569102704640, 16140901064495857664,
+ 13835058055282163712, 9223372036854775808, 0, 0,
+ 18446744073709551608, 18446744073709551600, 18446744073709551584,
+ 18446744073709551552, 18446744073709551488, 18446744073709551360,
+ 18446744073709551104, 18446744073709550592, 18446744073709549568,
+ 18446744073709547520, 18446744073709543424, 18446744073709535232,
+ 18446744073709518848, 18446744073709486080, 18446744073709420544,
+ 18446744073709289472, 18446744073709027328, 18446744073708503040,
+ 18446744073707454464, 18446744073705357312, 18446744073701163008,
+ 18446744073692774400, 18446744073675997184, 18446744073642442752,
+ 18446744073575333888, 18446744073441116160, 18446744073172680704,
+ 18446744072635809792, 18446744071562067968, 18446744069414584320,
+ 18446744065119617024, 18446744056529682432, 18446744039349813248,
+ 18446744004990074880, 18446743936270598144, 18446743798831644672,
+ 18446743523953737728, 18446742974197923840, 18446741874686296064,
+ 18446739675663040512, 18446735277616529408, 18446726481523507200,
+ 18446708889337462784, 18446673704965373952, 18446603336221196288,
+ 18446462598732840960, 18446181123756130304, 18445618173802708992,
+ 18444492273895866368, 18442240474082181120, 18437736874454810624,
+ 18428729675200069632, 18410715276690587648, 18374686479671623680,
+ 18302628885633695744, 18158513697557839872, 17870283321406128128,
+ 17293822569102704640, 16140901064495857664, 13835058055282163712,
+ 9223372036854775808, 0, 0, 0,
+ 18446744073709551600, 18446744073709551584, 18446744073709551552,
+ 18446744073709551488, 18446744073709551360, 18446744073709551104,
+ 18446744073709550592, 18446744073709549568, 18446744073709547520,
+ 18446744073709543424, 18446744073709535232, 18446744073709518848,
+ 18446744073709486080, 18446744073709420544, 18446744073709289472,
+ 18446744073709027328, 18446744073708503040, 18446744073707454464,
+ 18446744073705357312, 18446744073701163008, 18446744073692774400,
+ 18446744073675997184, 18446744073642442752, 18446744073575333888,
+ 18446744073441116160, 18446744073172680704, 18446744072635809792,
+ 18446744071562067968, 18446744069414584320, 18446744065119617024,
+ 18446744056529682432, 18446744039349813248, 18446744004990074880,
+ 18446743936270598144, 18446743798831644672, 18446743523953737728,
+ 18446742974197923840, 18446741874686296064, 18446739675663040512,
+ 18446735277616529408, 18446726481523507200, 18446708889337462784,
+ 18446673704965373952, 18446603336221196288, 18446462598732840960,
+ 18446181123756130304, 18445618173802708992, 18444492273895866368,
+ 18442240474082181120, 18437736874454810624, 18428729675200069632,
+ 18410715276690587648, 18374686479671623680, 18302628885633695744,
+ 18158513697557839872, 17870283321406128128, 17293822569102704640,
+ 16140901064495857664, 13835058055282163712, 9223372036854775808, 0, 0,
+ 0, 0,
+ 18446744073709551584, 18446744073709551552, 18446744073709551488,
+ 18446744073709551360, 18446744073709551104, 18446744073709550592,
+ 18446744073709549568, 18446744073709547520, 18446744073709543424,
+ 18446744073709535232, 18446744073709518848, 18446744073709486080,
+ 18446744073709420544, 18446744073709289472, 18446744073709027328,
+ 18446744073708503040, 18446744073707454464, 18446744073705357312,
+ 18446744073701163008, 18446744073692774400, 18446744073675997184,
+ 18446744073642442752, 18446744073575333888, 18446744073441116160,
+ 18446744073172680704, 18446744072635809792, 18446744071562067968,
+ 18446744069414584320, 18446744065119617024, 18446744056529682432,
+ 18446744039349813248, 18446744004990074880, 18446743936270598144,
+ 18446743798831644672, 18446743523953737728, 18446742974197923840,
+ 18446741874686296064, 18446739675663040512, 18446735277616529408,
+ 18446726481523507200, 18446708889337462784, 18446673704965373952,
+ 18446603336221196288, 18446462598732840960, 18446181123756130304,
+ 18445618173802708992, 18444492273895866368, 18442240474082181120,
+ 18437736874454810624, 18428729675200069632, 18410715276690587648,
+ 18374686479671623680, 18302628885633695744, 18158513697557839872,
+ 17870283321406128128, 17293822569102704640, 16140901064495857664,
+ 13835058055282163712, 9223372036854775808, 0, 0, 0, 0, 0,
+ 18446744073709551552, 18446744073709551488, 18446744073709551360,
+ 18446744073709551104, 18446744073709550592, 18446744073709549568,
+ 18446744073709547520, 18446744073709543424, 18446744073709535232,
+ 18446744073709518848, 18446744073709486080, 18446744073709420544,
+ 18446744073709289472, 18446744073709027328, 18446744073708503040,
+ 18446744073707454464, 18446744073705357312, 18446744073701163008,
+ 18446744073692774400, 18446744073675997184, 18446744073642442752,
+ 18446744073575333888, 18446744073441116160, 18446744073172680704,
+ 18446744072635809792, 18446744071562067968, 18446744069414584320,
+ 18446744065119617024, 18446744056529682432, 18446744039349813248,
+ 18446744004990074880, 18446743936270598144, 18446743798831644672,
+ 18446743523953737728, 18446742974197923840, 18446741874686296064,
+ 18446739675663040512, 18446735277616529408, 18446726481523507200,
+ 18446708889337462784, 18446673704965373952, 18446603336221196288,
+ 18446462598732840960, 18446181123756130304, 18445618173802708992,
+ 18444492273895866368, 18442240474082181120, 18437736874454810624,
+ 18428729675200069632, 18410715276690587648, 18374686479671623680,
+ 18302628885633695744, 18158513697557839872, 17870283321406128128,
+ 17293822569102704640, 16140901064495857664, 13835058055282163712,
+ 9223372036854775808, 0, 0, 0, 0, 0, 0,
+ 18446744073709551488, 18446744073709551360, 18446744073709551104,
+ 18446744073709550592, 18446744073709549568, 18446744073709547520,
+ 18446744073709543424, 18446744073709535232, 18446744073709518848,
+ 18446744073709486080, 18446744073709420544, 18446744073709289472,
+ 18446744073709027328, 18446744073708503040, 18446744073707454464,
+ 18446744073705357312, 18446744073701163008, 18446744073692774400,
+ 18446744073675997184, 18446744073642442752, 18446744073575333888,
+ 18446744073441116160, 18446744073172680704, 18446744072635809792,
+ 18446744071562067968, 18446744069414584320, 18446744065119617024,
+ 18446744056529682432, 18446744039349813248, 18446744004990074880,
+ 18446743936270598144, 18446743798831644672, 18446743523953737728,
+ 18446742974197923840, 18446741874686296064, 18446739675663040512,
+ 18446735277616529408, 18446726481523507200, 18446708889337462784,
+ 18446673704965373952, 18446603336221196288, 18446462598732840960,
+ 18446181123756130304, 18445618173802708992, 18444492273895866368,
+ 18442240474082181120, 18437736874454810624, 18428729675200069632,
+ 18410715276690587648, 18374686479671623680, 18302628885633695744,
+ 18158513697557839872, 17870283321406128128, 17293822569102704640,
+ 16140901064495857664, 13835058055282163712, 9223372036854775808, 0, 0,
+ 0, 0, 0, 0, 0
+ 0, 0.0001, 0.0002, 0.0003, 0.0004, 0.0005, 0.0006, 0.0007,
+ 1, 1.0001, 1.0002, 1.0003, 1.0004, 1.0005, 1.0006, 1.0007,
+ 2, 2.0001, 2.0002, 2.0003, 2.0004, 2.0005, 2.0006, 2.0007,
+ 3, 3.0001, 3.0002, 3.0003, 3.0004, 3.0005, 3.0006, 3.0007,
+ 4, 4.0001, 4.0002, 4.0003, 4.0004, 4.0005, 4.0006, 4.0007,
+ 5, 5.0001, 5.0002, 5.0003, 5.0004, 5.0005, 5.0006, 5.0007,
+ 6, 6.0001, 6.0002, 6.0003, 6.0004, 6.0005, 6.0006, 6.0007,
+ 7, 7.0001, 7.0002, 7.0003, 7.0004, 7.0005, 7.0006, 7.0007 \ No newline at end of file
diff --git a/tools/testfiles/tnofilename-with-packed-bits.ddl b/tools/testfiles/tnofilename-with-packed-bits.ddl
index 5e6f580..440e3d9 100644
--- a/tools/testfiles/tnofilename-with-packed-bits.ddl
+++ b/tools/testfiles/tnofilename-with-packed-bits.ddl
@@ -46,6 +46,8 @@ usage: h5dump [OPTIONS] files
occur.
--no-compact-subset Disable compact form of subsetting and allow the use
of "[" in dataset names.
+ -O F, --ddl=F Output ddl text into file F
+ Do not use filename F to suppress ddl display
Subsetting is available by using the following options with a dataset
attribute. Subsetting is done by selecting a hyperslab from the data.
diff --git a/tools/testfiles/tpbitsIncomplete.ddl b/tools/testfiles/tpbitsIncomplete.ddl
index 10b5a23..758b6b4 100644
--- a/tools/testfiles/tpbitsIncomplete.ddl
+++ b/tools/testfiles/tpbitsIncomplete.ddl
@@ -46,6 +46,8 @@ usage: h5dump [OPTIONS] files
occur.
--no-compact-subset Disable compact form of subsetting and allow the use
of "[" in dataset names.
+ -O F, --ddl=F Output ddl text into file F
+ Do not use filename F to suppress ddl display
Subsetting is available by using the following options with a dataset
attribute. Subsetting is done by selecting a hyperslab from the data.
diff --git a/tools/testfiles/tpbitsLengthExceeded.ddl b/tools/testfiles/tpbitsLengthExceeded.ddl
index 17dd963..a85ba49 100644
--- a/tools/testfiles/tpbitsLengthExceeded.ddl
+++ b/tools/testfiles/tpbitsLengthExceeded.ddl
@@ -46,6 +46,8 @@ usage: h5dump [OPTIONS] files
occur.
--no-compact-subset Disable compact form of subsetting and allow the use
of "[" in dataset names.
+ -O F, --ddl=F Output ddl text into file F
+ Do not use filename F to suppress ddl display
Subsetting is available by using the following options with a dataset
attribute. Subsetting is done by selecting a hyperslab from the data.
diff --git a/tools/testfiles/tpbitsLengthPositive.ddl b/tools/testfiles/tpbitsLengthPositive.ddl
index 6d05b47..d5a1c88 100644
--- a/tools/testfiles/tpbitsLengthPositive.ddl
+++ b/tools/testfiles/tpbitsLengthPositive.ddl
@@ -46,6 +46,8 @@ usage: h5dump [OPTIONS] files
occur.
--no-compact-subset Disable compact form of subsetting and allow the use
of "[" in dataset names.
+ -O F, --ddl=F Output ddl text into file F
+ Do not use filename F to suppress ddl display
Subsetting is available by using the following options with a dataset
attribute. Subsetting is done by selecting a hyperslab from the data.
diff --git a/tools/testfiles/tpbitsMaxExceeded.ddl b/tools/testfiles/tpbitsMaxExceeded.ddl
index eca1248..e24245c 100644
--- a/tools/testfiles/tpbitsMaxExceeded.ddl
+++ b/tools/testfiles/tpbitsMaxExceeded.ddl
@@ -46,6 +46,8 @@ usage: h5dump [OPTIONS] files
occur.
--no-compact-subset Disable compact form of subsetting and allow the use
of "[" in dataset names.
+ -O F, --ddl=F Output ddl text into file F
+ Do not use filename F to suppress ddl display
Subsetting is available by using the following options with a dataset
attribute. Subsetting is done by selecting a hyperslab from the data.
diff --git a/tools/testfiles/tpbitsOffsetExceeded.ddl b/tools/testfiles/tpbitsOffsetExceeded.ddl
index b0c655d..8f58c47 100644
--- a/tools/testfiles/tpbitsOffsetExceeded.ddl
+++ b/tools/testfiles/tpbitsOffsetExceeded.ddl
@@ -46,6 +46,8 @@ usage: h5dump [OPTIONS] files
occur.
--no-compact-subset Disable compact form of subsetting and allow the use
of "[" in dataset names.
+ -O F, --ddl=F Output ddl text into file F
+ Do not use filename F to suppress ddl display
Subsetting is available by using the following options with a dataset
attribute. Subsetting is done by selecting a hyperslab from the data.
diff --git a/tools/testfiles/tpbitsOffsetNegative.ddl b/tools/testfiles/tpbitsOffsetNegative.ddl
index 213641b..6df8cce 100644
--- a/tools/testfiles/tpbitsOffsetNegative.ddl
+++ b/tools/testfiles/tpbitsOffsetNegative.ddl
@@ -46,6 +46,8 @@ usage: h5dump [OPTIONS] files
occur.
--no-compact-subset Disable compact form of subsetting and allow the use
of "[" in dataset names.
+ -O F, --ddl=F Output ddl text into file F
+ Do not use filename F to suppress ddl display
Subsetting is available by using the following options with a dataset
attribute. Subsetting is done by selecting a hyperslab from the data.
diff --git a/tools/testfiles/trawdatafile.ddl b/tools/testfiles/trawdatafile.ddl
new file mode 100644
index 0000000..f99d906
--- /dev/null
+++ b/tools/testfiles/trawdatafile.ddl
@@ -0,0 +1,58 @@
+HDF5 "packedbits.h5" {
+GROUP "/" {
+ DATASET "DS08BITS" {
+ DATATYPE H5T_STD_I8LE
+ DATASPACE SIMPLE { ( 8, 8 ) / ( 8, 8 ) }
+ DATA {
+ }
+ }
+ DATASET "DS16BITS" {
+ DATATYPE H5T_STD_I16LE
+ DATASPACE SIMPLE { ( 8, 16 ) / ( 8, 16 ) }
+ DATA {
+ }
+ }
+ DATASET "DS32BITS" {
+ DATATYPE H5T_STD_I32LE
+ DATASPACE SIMPLE { ( 8, 32 ) / ( 8, 32 ) }
+ DATA {
+ }
+ }
+ DATASET "DS64BITS" {
+ DATATYPE H5T_STD_I64LE
+ DATASPACE SIMPLE { ( 8, 64 ) / ( 8, 64 ) }
+ DATA {
+ }
+ }
+ DATASET "DU08BITS" {
+ DATATYPE H5T_STD_U8LE
+ DATASPACE SIMPLE { ( 8, 8 ) / ( 8, 8 ) }
+ DATA {
+ }
+ }
+ DATASET "DU16BITS" {
+ DATATYPE H5T_STD_U16LE
+ DATASPACE SIMPLE { ( 8, 16 ) / ( 8, 16 ) }
+ DATA {
+ }
+ }
+ DATASET "DU32BITS" {
+ DATATYPE H5T_STD_U32LE
+ DATASPACE SIMPLE { ( 8, 32 ) / ( 8, 32 ) }
+ DATA {
+ }
+ }
+ DATASET "DU64BITS" {
+ DATATYPE H5T_STD_U64LE
+ DATASPACE SIMPLE { ( 8, 64 ) / ( 8, 64 ) }
+ DATA {
+ }
+ }
+ DATASET "DummyDBL" {
+ DATATYPE H5T_IEEE_F64BE
+ DATASPACE SIMPLE { ( 8, 8 ) / ( 8, 8 ) }
+ DATA {
+ }
+ }
+}
+}
diff --git a/tools/testfiles/trawdatafile.exp b/tools/testfiles/trawdatafile.exp
new file mode 100644
index 0000000..dc19888
--- /dev/null
+++ b/tools/testfiles/trawdatafile.exp
@@ -0,0 +1,402 @@
+
+ -1, -2, -4, -8, -16, -32, -64, -128,
+ -2, -4, -8, -16, -32, -64, -128, 0,
+ -4, -8, -16, -32, -64, -128, 0, 0,
+ -8, -16, -32, -64, -128, 0, 0, 0,
+ -16, -32, -64, -128, 0, 0, 0, 0,
+ -32, -64, -128, 0, 0, 0, 0, 0,
+ -64, -128, 0, 0, 0, 0, 0, 0,
+ -128, 0, 0, 0, 0, 0, 0, 0
+ -1, -2, -4, -8, -16, -32, -64, -128, -256, -512, -1024, -2048, -4096,
+ -8192, -16384, -32768,
+ -2, -4, -8, -16, -32, -64, -128, -256, -512, -1024, -2048, -4096,
+ -8192, -16384, -32768, 0,
+ -4, -8, -16, -32, -64, -128, -256, -512, -1024, -2048, -4096, -8192,
+ -16384, -32768, 0, 0,
+ -8, -16, -32, -64, -128, -256, -512, -1024, -2048, -4096, -8192,
+ -16384, -32768, 0, 0, 0,
+ -16, -32, -64, -128, -256, -512, -1024, -2048, -4096, -8192, -16384,
+ -32768, 0, 0, 0, 0,
+ -32, -64, -128, -256, -512, -1024, -2048, -4096, -8192, -16384, -32768,
+ 0, 0, 0, 0, 0,
+ -64, -128, -256, -512, -1024, -2048, -4096, -8192, -16384, -32768, 0,
+ 0, 0, 0, 0, 0,
+ -128, -256, -512, -1024, -2048, -4096, -8192, -16384, -32768, 0, 0, 0,
+ 0, 0, 0, 0
+ -1, -2, -4, -8, -16, -32, -64, -128, -256, -512, -1024, -2048, -4096,
+ -8192, -16384, -32768, -65536, -131072, -262144, -524288, -1048576,
+ -2097152, -4194304, -8388608, -16777216, -33554432, -67108864,
+ -134217728, -268435456, -536870912, -1073741824, -2147483648,
+ -2, -4, -8, -16, -32, -64, -128, -256, -512, -1024, -2048, -4096,
+ -8192, -16384, -32768, -65536, -131072, -262144, -524288, -1048576,
+ -2097152, -4194304, -8388608, -16777216, -33554432, -67108864,
+ -134217728, -268435456, -536870912, -1073741824, -2147483648, 0,
+ -4, -8, -16, -32, -64, -128, -256, -512, -1024, -2048, -4096, -8192,
+ -16384, -32768, -65536, -131072, -262144, -524288, -1048576, -2097152,
+ -4194304, -8388608, -16777216, -33554432, -67108864, -134217728,
+ -268435456, -536870912, -1073741824, -2147483648, 0, 0,
+ -8, -16, -32, -64, -128, -256, -512, -1024, -2048, -4096, -8192,
+ -16384, -32768, -65536, -131072, -262144, -524288, -1048576, -2097152,
+ -4194304, -8388608, -16777216, -33554432, -67108864, -134217728,
+ -268435456, -536870912, -1073741824, -2147483648, 0, 0, 0,
+ -16, -32, -64, -128, -256, -512, -1024, -2048, -4096, -8192, -16384,
+ -32768, -65536, -131072, -262144, -524288, -1048576, -2097152,
+ -4194304, -8388608, -16777216, -33554432, -67108864, -134217728,
+ -268435456, -536870912, -1073741824, -2147483648, 0, 0, 0, 0,
+ -32, -64, -128, -256, -512, -1024, -2048, -4096, -8192, -16384, -32768,
+ -65536, -131072, -262144, -524288, -1048576, -2097152, -4194304,
+ -8388608, -16777216, -33554432, -67108864, -134217728, -268435456,
+ -536870912, -1073741824, -2147483648, 0, 0, 0, 0, 0,
+ -64, -128, -256, -512, -1024, -2048, -4096, -8192, -16384, -32768,
+ -65536, -131072, -262144, -524288, -1048576, -2097152, -4194304,
+ -8388608, -16777216, -33554432, -67108864, -134217728, -268435456,
+ -536870912, -1073741824, -2147483648, 0, 0, 0, 0, 0, 0,
+ -128, -256, -512, -1024, -2048, -4096, -8192, -16384, -32768, -65536,
+ -131072, -262144, -524288, -1048576, -2097152, -4194304, -8388608,
+ -16777216, -33554432, -67108864, -134217728, -268435456, -536870912,
+ -1073741824, -2147483648, 0, 0, 0, 0, 0, 0, 0
+ -1, -2, -4, -8, -16, -32, -64, -128, -256, -512, -1024, -2048, -4096,
+ -8192, -16384, -32768, -65536, -131072, -262144, -524288, -1048576,
+ -2097152, -4194304, -8388608, -16777216, -33554432, -67108864,
+ -134217728, -268435456, -536870912, -1073741824, -2147483648,
+ -4294967296, -8589934592, -17179869184, -34359738368, -68719476736,
+ -137438953472, -274877906944, -549755813888, -1099511627776,
+ -2199023255552, -4398046511104, -8796093022208, -17592186044416,
+ -35184372088832, -70368744177664, -140737488355328, -281474976710656,
+ -562949953421312, -1125899906842624, -2251799813685248,
+ -4503599627370496, -9007199254740992, -18014398509481984,
+ -36028797018963968, -72057594037927936, -144115188075855872,
+ -288230376151711744, -576460752303423488, -1152921504606846976,
+ -2305843009213693952, -4611686018427387904, -9223372036854775808,
+ -2, -4, -8, -16, -32, -64, -128, -256, -512, -1024, -2048, -4096,
+ -8192, -16384, -32768, -65536, -131072, -262144, -524288, -1048576,
+ -2097152, -4194304, -8388608, -16777216, -33554432, -67108864,
+ -134217728, -268435456, -536870912, -1073741824, -2147483648,
+ -4294967296, -8589934592, -17179869184, -34359738368, -68719476736,
+ -137438953472, -274877906944, -549755813888, -1099511627776,
+ -2199023255552, -4398046511104, -8796093022208, -17592186044416,
+ -35184372088832, -70368744177664, -140737488355328, -281474976710656,
+ -562949953421312, -1125899906842624, -2251799813685248,
+ -4503599627370496, -9007199254740992, -18014398509481984,
+ -36028797018963968, -72057594037927936, -144115188075855872,
+ -288230376151711744, -576460752303423488, -1152921504606846976,
+ -2305843009213693952, -4611686018427387904, -9223372036854775808, 0,
+ -4, -8, -16, -32, -64, -128, -256, -512, -1024, -2048, -4096, -8192,
+ -16384, -32768, -65536, -131072, -262144, -524288, -1048576, -2097152,
+ -4194304, -8388608, -16777216, -33554432, -67108864, -134217728,
+ -268435456, -536870912, -1073741824, -2147483648, -4294967296,
+ -8589934592, -17179869184, -34359738368, -68719476736, -137438953472,
+ -274877906944, -549755813888, -1099511627776, -2199023255552,
+ -4398046511104, -8796093022208, -17592186044416, -35184372088832,
+ -70368744177664, -140737488355328, -281474976710656, -562949953421312,
+ -1125899906842624, -2251799813685248, -4503599627370496,
+ -9007199254740992, -18014398509481984, -36028797018963968,
+ -72057594037927936, -144115188075855872, -288230376151711744,
+ -576460752303423488, -1152921504606846976, -2305843009213693952,
+ -4611686018427387904, -9223372036854775808, 0, 0,
+ -8, -16, -32, -64, -128, -256, -512, -1024, -2048, -4096, -8192,
+ -16384, -32768, -65536, -131072, -262144, -524288, -1048576, -2097152,
+ -4194304, -8388608, -16777216, -33554432, -67108864, -134217728,
+ -268435456, -536870912, -1073741824, -2147483648, -4294967296,
+ -8589934592, -17179869184, -34359738368, -68719476736, -137438953472,
+ -274877906944, -549755813888, -1099511627776, -2199023255552,
+ -4398046511104, -8796093022208, -17592186044416, -35184372088832,
+ -70368744177664, -140737488355328, -281474976710656, -562949953421312,
+ -1125899906842624, -2251799813685248, -4503599627370496,
+ -9007199254740992, -18014398509481984, -36028797018963968,
+ -72057594037927936, -144115188075855872, -288230376151711744,
+ -576460752303423488, -1152921504606846976, -2305843009213693952,
+ -4611686018427387904, -9223372036854775808, 0, 0, 0,
+ -16, -32, -64, -128, -256, -512, -1024, -2048, -4096, -8192, -16384,
+ -32768, -65536, -131072, -262144, -524288, -1048576, -2097152,
+ -4194304, -8388608, -16777216, -33554432, -67108864, -134217728,
+ -268435456, -536870912, -1073741824, -2147483648, -4294967296,
+ -8589934592, -17179869184, -34359738368, -68719476736, -137438953472,
+ -274877906944, -549755813888, -1099511627776, -2199023255552,
+ -4398046511104, -8796093022208, -17592186044416, -35184372088832,
+ -70368744177664, -140737488355328, -281474976710656, -562949953421312,
+ -1125899906842624, -2251799813685248, -4503599627370496,
+ -9007199254740992, -18014398509481984, -36028797018963968,
+ -72057594037927936, -144115188075855872, -288230376151711744,
+ -576460752303423488, -1152921504606846976, -2305843009213693952,
+ -4611686018427387904, -9223372036854775808, 0, 0, 0, 0,
+ -32, -64, -128, -256, -512, -1024, -2048, -4096, -8192, -16384, -32768,
+ -65536, -131072, -262144, -524288, -1048576, -2097152, -4194304,
+ -8388608, -16777216, -33554432, -67108864, -134217728, -268435456,
+ -536870912, -1073741824, -2147483648, -4294967296, -8589934592,
+ -17179869184, -34359738368, -68719476736, -137438953472, -274877906944,
+ -549755813888, -1099511627776, -2199023255552, -4398046511104,
+ -8796093022208, -17592186044416, -35184372088832, -70368744177664,
+ -140737488355328, -281474976710656, -562949953421312,
+ -1125899906842624, -2251799813685248, -4503599627370496,
+ -9007199254740992, -18014398509481984, -36028797018963968,
+ -72057594037927936, -144115188075855872, -288230376151711744,
+ -576460752303423488, -1152921504606846976, -2305843009213693952,
+ -4611686018427387904, -9223372036854775808, 0, 0, 0, 0, 0,
+ -64, -128, -256, -512, -1024, -2048, -4096, -8192, -16384, -32768,
+ -65536, -131072, -262144, -524288, -1048576, -2097152, -4194304,
+ -8388608, -16777216, -33554432, -67108864, -134217728, -268435456,
+ -536870912, -1073741824, -2147483648, -4294967296, -8589934592,
+ -17179869184, -34359738368, -68719476736, -137438953472, -274877906944,
+ -549755813888, -1099511627776, -2199023255552, -4398046511104,
+ -8796093022208, -17592186044416, -35184372088832, -70368744177664,
+ -140737488355328, -281474976710656, -562949953421312,
+ -1125899906842624, -2251799813685248, -4503599627370496,
+ -9007199254740992, -18014398509481984, -36028797018963968,
+ -72057594037927936, -144115188075855872, -288230376151711744,
+ -576460752303423488, -1152921504606846976, -2305843009213693952,
+ -4611686018427387904, -9223372036854775808, 0, 0, 0, 0, 0, 0,
+ -128, -256, -512, -1024, -2048, -4096, -8192, -16384, -32768, -65536,
+ -131072, -262144, -524288, -1048576, -2097152, -4194304, -8388608,
+ -16777216, -33554432, -67108864, -134217728, -268435456, -536870912,
+ -1073741824, -2147483648, -4294967296, -8589934592, -17179869184,
+ -34359738368, -68719476736, -137438953472, -274877906944,
+ -549755813888, -1099511627776, -2199023255552, -4398046511104,
+ -8796093022208, -17592186044416, -35184372088832, -70368744177664,
+ -140737488355328, -281474976710656, -562949953421312,
+ -1125899906842624, -2251799813685248, -4503599627370496,
+ -9007199254740992, -18014398509481984, -36028797018963968,
+ -72057594037927936, -144115188075855872, -288230376151711744,
+ -576460752303423488, -1152921504606846976, -2305843009213693952,
+ -4611686018427387904, -9223372036854775808, 0, 0, 0, 0, 0, 0, 0
+ 255, 254, 252, 248, 240, 224, 192, 128,
+ 254, 252, 248, 240, 224, 192, 128, 0,
+ 252, 248, 240, 224, 192, 128, 0, 0,
+ 248, 240, 224, 192, 128, 0, 0, 0,
+ 240, 224, 192, 128, 0, 0, 0, 0,
+ 224, 192, 128, 0, 0, 0, 0, 0,
+ 192, 128, 0, 0, 0, 0, 0, 0,
+ 128, 0, 0, 0, 0, 0, 0, 0
+ 65535, 65534, 65532, 65528, 65520, 65504, 65472, 65408, 65280, 65024,
+ 64512, 63488, 61440, 57344, 49152, 32768,
+ 65534, 65532, 65528, 65520, 65504, 65472, 65408, 65280, 65024, 64512,
+ 63488, 61440, 57344, 49152, 32768, 0,
+ 65532, 65528, 65520, 65504, 65472, 65408, 65280, 65024, 64512, 63488,
+ 61440, 57344, 49152, 32768, 0, 0,
+ 65528, 65520, 65504, 65472, 65408, 65280, 65024, 64512, 63488, 61440,
+ 57344, 49152, 32768, 0, 0, 0,
+ 65520, 65504, 65472, 65408, 65280, 65024, 64512, 63488, 61440, 57344,
+ 49152, 32768, 0, 0, 0, 0,
+ 65504, 65472, 65408, 65280, 65024, 64512, 63488, 61440, 57344, 49152,
+ 32768, 0, 0, 0, 0, 0,
+ 65472, 65408, 65280, 65024, 64512, 63488, 61440, 57344, 49152, 32768,
+ 0, 0, 0, 0, 0, 0,
+ 65408, 65280, 65024, 64512, 63488, 61440, 57344, 49152, 32768, 0, 0, 0,
+ 0, 0, 0, 0
+ 4294967295, 4294967294, 4294967292, 4294967288, 4294967280, 4294967264,
+ 4294967232, 4294967168, 4294967040, 4294966784, 4294966272, 4294965248,
+ 4294963200, 4294959104, 4294950912, 4294934528, 4294901760, 4294836224,
+ 4294705152, 4294443008, 4293918720, 4292870144, 4290772992, 4286578688,
+ 4278190080, 4261412864, 4227858432, 4160749568, 4026531840, 3758096384,
+ 3221225472, 2147483648,
+ 4294967294, 4294967292, 4294967288, 4294967280, 4294967264, 4294967232,
+ 4294967168, 4294967040, 4294966784, 4294966272, 4294965248, 4294963200,
+ 4294959104, 4294950912, 4294934528, 4294901760, 4294836224, 4294705152,
+ 4294443008, 4293918720, 4292870144, 4290772992, 4286578688, 4278190080,
+ 4261412864, 4227858432, 4160749568, 4026531840, 3758096384, 3221225472,
+ 2147483648, 0,
+ 4294967292, 4294967288, 4294967280, 4294967264, 4294967232, 4294967168,
+ 4294967040, 4294966784, 4294966272, 4294965248, 4294963200, 4294959104,
+ 4294950912, 4294934528, 4294901760, 4294836224, 4294705152, 4294443008,
+ 4293918720, 4292870144, 4290772992, 4286578688, 4278190080, 4261412864,
+ 4227858432, 4160749568, 4026531840, 3758096384, 3221225472, 2147483648,
+ 0, 0,
+ 4294967288, 4294967280, 4294967264, 4294967232, 4294967168, 4294967040,
+ 4294966784, 4294966272, 4294965248, 4294963200, 4294959104, 4294950912,
+ 4294934528, 4294901760, 4294836224, 4294705152, 4294443008, 4293918720,
+ 4292870144, 4290772992, 4286578688, 4278190080, 4261412864, 4227858432,
+ 4160749568, 4026531840, 3758096384, 3221225472, 2147483648, 0, 0, 0,
+ 4294967280, 4294967264, 4294967232, 4294967168, 4294967040, 4294966784,
+ 4294966272, 4294965248, 4294963200, 4294959104, 4294950912, 4294934528,
+ 4294901760, 4294836224, 4294705152, 4294443008, 4293918720, 4292870144,
+ 4290772992, 4286578688, 4278190080, 4261412864, 4227858432, 4160749568,
+ 4026531840, 3758096384, 3221225472, 2147483648, 0, 0, 0, 0,
+ 4294967264, 4294967232, 4294967168, 4294967040, 4294966784, 4294966272,
+ 4294965248, 4294963200, 4294959104, 4294950912, 4294934528, 4294901760,
+ 4294836224, 4294705152, 4294443008, 4293918720, 4292870144, 4290772992,
+ 4286578688, 4278190080, 4261412864, 4227858432, 4160749568, 4026531840,
+ 3758096384, 3221225472, 2147483648, 0, 0, 0, 0, 0,
+ 4294967232, 4294967168, 4294967040, 4294966784, 4294966272, 4294965248,
+ 4294963200, 4294959104, 4294950912, 4294934528, 4294901760, 4294836224,
+ 4294705152, 4294443008, 4293918720, 4292870144, 4290772992, 4286578688,
+ 4278190080, 4261412864, 4227858432, 4160749568, 4026531840, 3758096384,
+ 3221225472, 2147483648, 0, 0, 0, 0, 0, 0,
+ 4294967168, 4294967040, 4294966784, 4294966272, 4294965248, 4294963200,
+ 4294959104, 4294950912, 4294934528, 4294901760, 4294836224, 4294705152,
+ 4294443008, 4293918720, 4292870144, 4290772992, 4286578688, 4278190080,
+ 4261412864, 4227858432, 4160749568, 4026531840, 3758096384, 3221225472,
+ 2147483648, 0, 0, 0, 0, 0, 0, 0
+ 18446744073709551615, 18446744073709551614, 18446744073709551612,
+ 18446744073709551608, 18446744073709551600, 18446744073709551584,
+ 18446744073709551552, 18446744073709551488, 18446744073709551360,
+ 18446744073709551104, 18446744073709550592, 18446744073709549568,
+ 18446744073709547520, 18446744073709543424, 18446744073709535232,
+ 18446744073709518848, 18446744073709486080, 18446744073709420544,
+ 18446744073709289472, 18446744073709027328, 18446744073708503040,
+ 18446744073707454464, 18446744073705357312, 18446744073701163008,
+ 18446744073692774400, 18446744073675997184, 18446744073642442752,
+ 18446744073575333888, 18446744073441116160, 18446744073172680704,
+ 18446744072635809792, 18446744071562067968, 18446744069414584320,
+ 18446744065119617024, 18446744056529682432, 18446744039349813248,
+ 18446744004990074880, 18446743936270598144, 18446743798831644672,
+ 18446743523953737728, 18446742974197923840, 18446741874686296064,
+ 18446739675663040512, 18446735277616529408, 18446726481523507200,
+ 18446708889337462784, 18446673704965373952, 18446603336221196288,
+ 18446462598732840960, 18446181123756130304, 18445618173802708992,
+ 18444492273895866368, 18442240474082181120, 18437736874454810624,
+ 18428729675200069632, 18410715276690587648, 18374686479671623680,
+ 18302628885633695744, 18158513697557839872, 17870283321406128128,
+ 17293822569102704640, 16140901064495857664, 13835058055282163712,
+ 9223372036854775808,
+ 18446744073709551614, 18446744073709551612, 18446744073709551608,
+ 18446744073709551600, 18446744073709551584, 18446744073709551552,
+ 18446744073709551488, 18446744073709551360, 18446744073709551104,
+ 18446744073709550592, 18446744073709549568, 18446744073709547520,
+ 18446744073709543424, 18446744073709535232, 18446744073709518848,
+ 18446744073709486080, 18446744073709420544, 18446744073709289472,
+ 18446744073709027328, 18446744073708503040, 18446744073707454464,
+ 18446744073705357312, 18446744073701163008, 18446744073692774400,
+ 18446744073675997184, 18446744073642442752, 18446744073575333888,
+ 18446744073441116160, 18446744073172680704, 18446744072635809792,
+ 18446744071562067968, 18446744069414584320, 18446744065119617024,
+ 18446744056529682432, 18446744039349813248, 18446744004990074880,
+ 18446743936270598144, 18446743798831644672, 18446743523953737728,
+ 18446742974197923840, 18446741874686296064, 18446739675663040512,
+ 18446735277616529408, 18446726481523507200, 18446708889337462784,
+ 18446673704965373952, 18446603336221196288, 18446462598732840960,
+ 18446181123756130304, 18445618173802708992, 18444492273895866368,
+ 18442240474082181120, 18437736874454810624, 18428729675200069632,
+ 18410715276690587648, 18374686479671623680, 18302628885633695744,
+ 18158513697557839872, 17870283321406128128, 17293822569102704640,
+ 16140901064495857664, 13835058055282163712, 9223372036854775808, 0,
+ 18446744073709551612, 18446744073709551608, 18446744073709551600,
+ 18446744073709551584, 18446744073709551552, 18446744073709551488,
+ 18446744073709551360, 18446744073709551104, 18446744073709550592,
+ 18446744073709549568, 18446744073709547520, 18446744073709543424,
+ 18446744073709535232, 18446744073709518848, 18446744073709486080,
+ 18446744073709420544, 18446744073709289472, 18446744073709027328,
+ 18446744073708503040, 18446744073707454464, 18446744073705357312,
+ 18446744073701163008, 18446744073692774400, 18446744073675997184,
+ 18446744073642442752, 18446744073575333888, 18446744073441116160,
+ 18446744073172680704, 18446744072635809792, 18446744071562067968,
+ 18446744069414584320, 18446744065119617024, 18446744056529682432,
+ 18446744039349813248, 18446744004990074880, 18446743936270598144,
+ 18446743798831644672, 18446743523953737728, 18446742974197923840,
+ 18446741874686296064, 18446739675663040512, 18446735277616529408,
+ 18446726481523507200, 18446708889337462784, 18446673704965373952,
+ 18446603336221196288, 18446462598732840960, 18446181123756130304,
+ 18445618173802708992, 18444492273895866368, 18442240474082181120,
+ 18437736874454810624, 18428729675200069632, 18410715276690587648,
+ 18374686479671623680, 18302628885633695744, 18158513697557839872,
+ 17870283321406128128, 17293822569102704640, 16140901064495857664,
+ 13835058055282163712, 9223372036854775808, 0, 0,
+ 18446744073709551608, 18446744073709551600, 18446744073709551584,
+ 18446744073709551552, 18446744073709551488, 18446744073709551360,
+ 18446744073709551104, 18446744073709550592, 18446744073709549568,
+ 18446744073709547520, 18446744073709543424, 18446744073709535232,
+ 18446744073709518848, 18446744073709486080, 18446744073709420544,
+ 18446744073709289472, 18446744073709027328, 18446744073708503040,
+ 18446744073707454464, 18446744073705357312, 18446744073701163008,
+ 18446744073692774400, 18446744073675997184, 18446744073642442752,
+ 18446744073575333888, 18446744073441116160, 18446744073172680704,
+ 18446744072635809792, 18446744071562067968, 18446744069414584320,
+ 18446744065119617024, 18446744056529682432, 18446744039349813248,
+ 18446744004990074880, 18446743936270598144, 18446743798831644672,
+ 18446743523953737728, 18446742974197923840, 18446741874686296064,
+ 18446739675663040512, 18446735277616529408, 18446726481523507200,
+ 18446708889337462784, 18446673704965373952, 18446603336221196288,
+ 18446462598732840960, 18446181123756130304, 18445618173802708992,
+ 18444492273895866368, 18442240474082181120, 18437736874454810624,
+ 18428729675200069632, 18410715276690587648, 18374686479671623680,
+ 18302628885633695744, 18158513697557839872, 17870283321406128128,
+ 17293822569102704640, 16140901064495857664, 13835058055282163712,
+ 9223372036854775808, 0, 0, 0,
+ 18446744073709551600, 18446744073709551584, 18446744073709551552,
+ 18446744073709551488, 18446744073709551360, 18446744073709551104,
+ 18446744073709550592, 18446744073709549568, 18446744073709547520,
+ 18446744073709543424, 18446744073709535232, 18446744073709518848,
+ 18446744073709486080, 18446744073709420544, 18446744073709289472,
+ 18446744073709027328, 18446744073708503040, 18446744073707454464,
+ 18446744073705357312, 18446744073701163008, 18446744073692774400,
+ 18446744073675997184, 18446744073642442752, 18446744073575333888,
+ 18446744073441116160, 18446744073172680704, 18446744072635809792,
+ 18446744071562067968, 18446744069414584320, 18446744065119617024,
+ 18446744056529682432, 18446744039349813248, 18446744004990074880,
+ 18446743936270598144, 18446743798831644672, 18446743523953737728,
+ 18446742974197923840, 18446741874686296064, 18446739675663040512,
+ 18446735277616529408, 18446726481523507200, 18446708889337462784,
+ 18446673704965373952, 18446603336221196288, 18446462598732840960,
+ 18446181123756130304, 18445618173802708992, 18444492273895866368,
+ 18442240474082181120, 18437736874454810624, 18428729675200069632,
+ 18410715276690587648, 18374686479671623680, 18302628885633695744,
+ 18158513697557839872, 17870283321406128128, 17293822569102704640,
+ 16140901064495857664, 13835058055282163712, 9223372036854775808, 0, 0,
+ 0, 0,
+ 18446744073709551584, 18446744073709551552, 18446744073709551488,
+ 18446744073709551360, 18446744073709551104, 18446744073709550592,
+ 18446744073709549568, 18446744073709547520, 18446744073709543424,
+ 18446744073709535232, 18446744073709518848, 18446744073709486080,
+ 18446744073709420544, 18446744073709289472, 18446744073709027328,
+ 18446744073708503040, 18446744073707454464, 18446744073705357312,
+ 18446744073701163008, 18446744073692774400, 18446744073675997184,
+ 18446744073642442752, 18446744073575333888, 18446744073441116160,
+ 18446744073172680704, 18446744072635809792, 18446744071562067968,
+ 18446744069414584320, 18446744065119617024, 18446744056529682432,
+ 18446744039349813248, 18446744004990074880, 18446743936270598144,
+ 18446743798831644672, 18446743523953737728, 18446742974197923840,
+ 18446741874686296064, 18446739675663040512, 18446735277616529408,
+ 18446726481523507200, 18446708889337462784, 18446673704965373952,
+ 18446603336221196288, 18446462598732840960, 18446181123756130304,
+ 18445618173802708992, 18444492273895866368, 18442240474082181120,
+ 18437736874454810624, 18428729675200069632, 18410715276690587648,
+ 18374686479671623680, 18302628885633695744, 18158513697557839872,
+ 17870283321406128128, 17293822569102704640, 16140901064495857664,
+ 13835058055282163712, 9223372036854775808, 0, 0, 0, 0, 0,
+ 18446744073709551552, 18446744073709551488, 18446744073709551360,
+ 18446744073709551104, 18446744073709550592, 18446744073709549568,
+ 18446744073709547520, 18446744073709543424, 18446744073709535232,
+ 18446744073709518848, 18446744073709486080, 18446744073709420544,
+ 18446744073709289472, 18446744073709027328, 18446744073708503040,
+ 18446744073707454464, 18446744073705357312, 18446744073701163008,
+ 18446744073692774400, 18446744073675997184, 18446744073642442752,
+ 18446744073575333888, 18446744073441116160, 18446744073172680704,
+ 18446744072635809792, 18446744071562067968, 18446744069414584320,
+ 18446744065119617024, 18446744056529682432, 18446744039349813248,
+ 18446744004990074880, 18446743936270598144, 18446743798831644672,
+ 18446743523953737728, 18446742974197923840, 18446741874686296064,
+ 18446739675663040512, 18446735277616529408, 18446726481523507200,
+ 18446708889337462784, 18446673704965373952, 18446603336221196288,
+ 18446462598732840960, 18446181123756130304, 18445618173802708992,
+ 18444492273895866368, 18442240474082181120, 18437736874454810624,
+ 18428729675200069632, 18410715276690587648, 18374686479671623680,
+ 18302628885633695744, 18158513697557839872, 17870283321406128128,
+ 17293822569102704640, 16140901064495857664, 13835058055282163712,
+ 9223372036854775808, 0, 0, 0, 0, 0, 0,
+ 18446744073709551488, 18446744073709551360, 18446744073709551104,
+ 18446744073709550592, 18446744073709549568, 18446744073709547520,
+ 18446744073709543424, 18446744073709535232, 18446744073709518848,
+ 18446744073709486080, 18446744073709420544, 18446744073709289472,
+ 18446744073709027328, 18446744073708503040, 18446744073707454464,
+ 18446744073705357312, 18446744073701163008, 18446744073692774400,
+ 18446744073675997184, 18446744073642442752, 18446744073575333888,
+ 18446744073441116160, 18446744073172680704, 18446744072635809792,
+ 18446744071562067968, 18446744069414584320, 18446744065119617024,
+ 18446744056529682432, 18446744039349813248, 18446744004990074880,
+ 18446743936270598144, 18446743798831644672, 18446743523953737728,
+ 18446742974197923840, 18446741874686296064, 18446739675663040512,
+ 18446735277616529408, 18446726481523507200, 18446708889337462784,
+ 18446673704965373952, 18446603336221196288, 18446462598732840960,
+ 18446181123756130304, 18445618173802708992, 18444492273895866368,
+ 18442240474082181120, 18437736874454810624, 18428729675200069632,
+ 18410715276690587648, 18374686479671623680, 18302628885633695744,
+ 18158513697557839872, 17870283321406128128, 17293822569102704640,
+ 16140901064495857664, 13835058055282163712, 9223372036854775808, 0, 0,
+ 0, 0, 0, 0, 0
+ 0, 0.0001, 0.0002, 0.0003, 0.0004, 0.0005, 0.0006, 0.0007,
+ 1, 1.0001, 1.0002, 1.0003, 1.0004, 1.0005, 1.0006, 1.0007,
+ 2, 2.0001, 2.0002, 2.0003, 2.0004, 2.0005, 2.0006, 2.0007,
+ 3, 3.0001, 3.0002, 3.0003, 3.0004, 3.0005, 3.0006, 3.0007,
+ 4, 4.0001, 4.0002, 4.0003, 4.0004, 4.0005, 4.0006, 4.0007,
+ 5, 5.0001, 5.0002, 5.0003, 5.0004, 5.0005, 5.0006, 5.0007,
+ 6, 6.0001, 6.0002, 6.0003, 6.0004, 6.0005, 6.0006, 6.0007,
+ 7, 7.0001, 7.0002, 7.0003, 7.0004, 7.0005, 7.0006, 7.0007 \ No newline at end of file
diff --git a/tools/testfiles/tscalarattrintsize.ddl b/tools/testfiles/tscalarattrintsize.ddl
new file mode 100644
index 0000000..46f3cef
--- /dev/null
+++ b/tools/testfiles/tscalarattrintsize.ddl
@@ -0,0 +1,130 @@
+HDF5 "tscalarattrintsize.h5" {
+GROUP "/" {
+ ATTRIBUTE "DS08BITS" {
+ DATATYPE H5T_ARRAY { [8][8] H5T_STD_I8LE }
+ DATASPACE SCALAR
+ DATA {
+ (0): [ -1, -2, -4, -8, -16, -32, -64, -128,
+ -2, -4, -8, -16, -32, -64, -128, 0,
+ -4, -8, -16, -32, -64, -128, 0, 0,
+ -8, -16, -32, -64, -128, 0, 0, 0,
+ -16, -32, -64, -128, 0, 0, 0, 0,
+ -32, -64, -128, 0, 0, 0, 0, 0,
+ -64, -128, 0, 0, 0, 0, 0, 0,
+ -128, 0, 0, 0, 0, 0, 0, 0 ]
+ }
+ }
+ ATTRIBUTE "DS16BITS" {
+ DATATYPE H5T_ARRAY { [8][16] H5T_STD_I16LE }
+ DATASPACE SCALAR
+ DATA {
+ (0): [ -1, -2, -4, -8, -16, -32, -64, -128, -256, -512, -1024, -2048, -4096, -8192, -16384, -32768,
+ -2, -4, -8, -16, -32, -64, -128, -256, -512, -1024, -2048, -4096, -8192, -16384, -32768, 0,
+ -4, -8, -16, -32, -64, -128, -256, -512, -1024, -2048, -4096, -8192, -16384, -32768, 0, 0,
+ -8, -16, -32, -64, -128, -256, -512, -1024, -2048, -4096, -8192, -16384, -32768, 0, 0, 0,
+ -16, -32, -64, -128, -256, -512, -1024, -2048, -4096, -8192, -16384, -32768, 0, 0, 0, 0,
+ -32, -64, -128, -256, -512, -1024, -2048, -4096, -8192, -16384, -32768, 0, 0, 0, 0, 0,
+ -64, -128, -256, -512, -1024, -2048, -4096, -8192, -16384, -32768, 0, 0, 0, 0, 0, 0,
+ -128, -256, -512, -1024, -2048, -4096, -8192, -16384, -32768, 0, 0, 0, 0, 0, 0, 0 ]
+ }
+ }
+ ATTRIBUTE "DS32BITS" {
+ DATATYPE H5T_ARRAY { [8][32] H5T_STD_I32LE }
+ DATASPACE SCALAR
+ DATA {
+ (0): [ -1, -2, -4, -8, -16, -32, -64, -128, -256, -512, -1024, -2048, -4096, -8192, -16384, -32768, -65536, -131072, -262144, -524288, -1048576, -2097152, -4194304, -8388608, -16777216, -33554432, -67108864, -134217728, -268435456, -536870912, -1073741824, -2147483648,
+ -2, -4, -8, -16, -32, -64, -128, -256, -512, -1024, -2048, -4096, -8192, -16384, -32768, -65536, -131072, -262144, -524288, -1048576, -2097152, -4194304, -8388608, -16777216, -33554432, -67108864, -134217728, -268435456, -536870912, -1073741824, -2147483648, 0,
+ -4, -8, -16, -32, -64, -128, -256, -512, -1024, -2048, -4096, -8192, -16384, -32768, -65536, -131072, -262144, -524288, -1048576, -2097152, -4194304, -8388608, -16777216, -33554432, -67108864, -134217728, -268435456, -536870912, -1073741824, -2147483648, 0, 0,
+ -8, -16, -32, -64, -128, -256, -512, -1024, -2048, -4096, -8192, -16384, -32768, -65536, -131072, -262144, -524288, -1048576, -2097152, -4194304, -8388608, -16777216, -33554432, -67108864, -134217728, -268435456, -536870912, -1073741824, -2147483648, 0, 0, 0,
+ -16, -32, -64, -128, -256, -512, -1024, -2048, -4096, -8192, -16384, -32768, -65536, -131072, -262144, -524288, -1048576, -2097152, -4194304, -8388608, -16777216, -33554432, -67108864, -134217728, -268435456, -536870912, -1073741824, -2147483648, 0, 0, 0, 0,
+ -32, -64, -128, -256, -512, -1024, -2048, -4096, -8192, -16384, -32768, -65536, -131072, -262144, -524288, -1048576, -2097152, -4194304, -8388608, -16777216, -33554432, -67108864, -134217728, -268435456, -536870912, -1073741824, -2147483648, 0, 0, 0, 0, 0,
+ -64, -128, -256, -512, -1024, -2048, -4096, -8192, -16384, -32768, -65536, -131072, -262144, -524288, -1048576, -2097152, -4194304, -8388608, -16777216, -33554432, -67108864, -134217728, -268435456, -536870912, -1073741824, -2147483648, 0, 0, 0, 0, 0, 0,
+ -128, -256, -512, -1024, -2048, -4096, -8192, -16384, -32768, -65536, -131072, -262144, -524288, -1048576, -2097152, -4194304, -8388608, -16777216, -33554432, -67108864, -134217728, -268435456, -536870912, -1073741824, -2147483648, 0, 0, 0, 0, 0, 0, 0 ]
+ }
+ }
+ ATTRIBUTE "DS64BITS" {
+ DATATYPE H5T_ARRAY { [8][64] H5T_STD_I64LE }
+ DATASPACE SCALAR
+ DATA {
+ (0): [ -1, -2, -4, -8, -16, -32, -64, -128, -256, -512, -1024, -2048, -4096, -8192, -16384, -32768, -65536, -131072, -262144, -524288, -1048576, -2097152, -4194304, -8388608, -16777216, -33554432, -67108864, -134217728, -268435456, -536870912, -1073741824, -2147483648, -4294967296, -8589934592, -17179869184, -34359738368, -68719476736, -137438953472, -274877906944, -549755813888, -1099511627776, -2199023255552, -4398046511104, -8796093022208, -17592186044416, -35184372088832, -70368744177664, -140737488355328, -281474976710656, -562949953421312, -1125899906842624, -2251799813685248, -4503599627370496, -9007199254740992, -18014398509481984, -36028797018963968, -72057594037927936, -144115188075855872, -288230376151711744, -576460752303423488, -1152921504606846976, -2305843009213693952, -4611686018427387904, -9223372036854775808,
+ -2, -4, -8, -16, -32, -64, -128, -256, -512, -1024, -2048, -4096, -8192, -16384, -32768, -65536, -131072, -262144, -524288, -1048576, -2097152, -4194304, -8388608, -16777216, -33554432, -67108864, -134217728, -268435456, -536870912, -1073741824, -2147483648, -4294967296, -8589934592, -17179869184, -34359738368, -68719476736, -137438953472, -274877906944, -549755813888, -1099511627776, -2199023255552, -4398046511104, -8796093022208, -17592186044416, -35184372088832, -70368744177664, -140737488355328, -281474976710656, -562949953421312, -1125899906842624, -2251799813685248, -4503599627370496, -9007199254740992, -18014398509481984, -36028797018963968, -72057594037927936, -144115188075855872, -288230376151711744, -576460752303423488, -1152921504606846976, -2305843009213693952, -4611686018427387904, -9223372036854775808, 0,
+ -4, -8, -16, -32, -64, -128, -256, -512, -1024, -2048, -4096, -8192, -16384, -32768, -65536, -131072, -262144, -524288, -1048576, -2097152, -4194304, -8388608, -16777216, -33554432, -67108864, -134217728, -268435456, -536870912, -1073741824, -2147483648, -4294967296, -8589934592, -17179869184, -34359738368, -68719476736, -137438953472, -274877906944, -549755813888, -1099511627776, -2199023255552, -4398046511104, -8796093022208, -17592186044416, -35184372088832, -70368744177664, -140737488355328, -281474976710656, -562949953421312, -1125899906842624, -2251799813685248, -4503599627370496, -9007199254740992, -18014398509481984, -36028797018963968, -72057594037927936, -144115188075855872, -288230376151711744, -576460752303423488, -1152921504606846976, -2305843009213693952, -4611686018427387904, -9223372036854775808, 0, 0,
+ -8, -16, -32, -64, -128, -256, -512, -1024, -2048, -4096, -8192, -16384, -32768, -65536, -131072, -262144, -524288, -1048576, -2097152, -4194304, -8388608, -16777216, -33554432, -67108864, -134217728, -268435456, -536870912, -1073741824, -2147483648, -4294967296, -8589934592, -17179869184, -34359738368, -68719476736, -137438953472, -274877906944, -549755813888, -1099511627776, -2199023255552, -4398046511104, -8796093022208, -17592186044416, -35184372088832, -70368744177664, -140737488355328, -281474976710656, -562949953421312, -1125899906842624, -2251799813685248, -4503599627370496, -9007199254740992, -18014398509481984, -36028797018963968, -72057594037927936, -144115188075855872, -288230376151711744, -576460752303423488, -1152921504606846976, -2305843009213693952, -4611686018427387904, -9223372036854775808, 0, 0, 0,
+ -16, -32, -64, -128, -256, -512, -1024, -2048, -4096, -8192, -16384, -32768, -65536, -131072, -262144, -524288, -1048576, -2097152, -4194304, -8388608, -16777216, -33554432, -67108864, -134217728, -268435456, -536870912, -1073741824, -2147483648, -4294967296, -8589934592, -17179869184, -34359738368, -68719476736, -137438953472, -274877906944, -549755813888, -1099511627776, -2199023255552, -4398046511104, -8796093022208, -17592186044416, -35184372088832, -70368744177664, -140737488355328, -281474976710656, -562949953421312, -1125899906842624, -2251799813685248, -4503599627370496, -9007199254740992, -18014398509481984, -36028797018963968, -72057594037927936, -144115188075855872, -288230376151711744, -576460752303423488, -1152921504606846976, -2305843009213693952, -4611686018427387904, -9223372036854775808, 0, 0, 0, 0,
+ -32, -64, -128, -256, -512, -1024, -2048, -4096, -8192, -16384, -32768, -65536, -131072, -262144, -524288, -1048576, -2097152, -4194304, -8388608, -16777216, -33554432, -67108864, -134217728, -268435456, -536870912, -1073741824, -2147483648, -4294967296, -8589934592, -17179869184, -34359738368, -68719476736, -137438953472, -274877906944, -549755813888, -1099511627776, -2199023255552, -4398046511104, -8796093022208, -17592186044416, -35184372088832, -70368744177664, -140737488355328, -281474976710656, -562949953421312, -1125899906842624, -2251799813685248, -4503599627370496, -9007199254740992, -18014398509481984, -36028797018963968, -72057594037927936, -144115188075855872, -288230376151711744, -576460752303423488, -1152921504606846976, -2305843009213693952, -4611686018427387904, -9223372036854775808, 0, 0, 0, 0, 0,
+ -64, -128, -256, -512, -1024, -2048, -4096, -8192, -16384, -32768, -65536, -131072, -262144, -524288, -1048576, -2097152, -4194304, -8388608, -16777216, -33554432, -67108864, -134217728, -268435456, -536870912, -1073741824, -2147483648, -4294967296, -8589934592, -17179869184, -34359738368, -68719476736, -137438953472, -274877906944, -549755813888, -1099511627776, -2199023255552, -4398046511104, -8796093022208, -17592186044416, -35184372088832, -70368744177664, -140737488355328, -281474976710656, -562949953421312, -1125899906842624, -2251799813685248, -4503599627370496, -9007199254740992, -18014398509481984, -36028797018963968, -72057594037927936, -144115188075855872, -288230376151711744, -576460752303423488, -1152921504606846976, -2305843009213693952, -4611686018427387904, -9223372036854775808, 0, 0, 0, 0, 0, 0,
+ -128, -256, -512, -1024, -2048, -4096, -8192, -16384, -32768, -65536, -131072, -262144, -524288, -1048576, -2097152, -4194304, -8388608, -16777216, -33554432, -67108864, -134217728, -268435456, -536870912, -1073741824, -2147483648, -4294967296, -8589934592, -17179869184, -34359738368, -68719476736, -137438953472, -274877906944, -549755813888, -1099511627776, -2199023255552, -4398046511104, -8796093022208, -17592186044416, -35184372088832, -70368744177664, -140737488355328, -281474976710656, -562949953421312, -1125899906842624, -2251799813685248, -4503599627370496, -9007199254740992, -18014398509481984, -36028797018963968, -72057594037927936, -144115188075855872, -288230376151711744, -576460752303423488, -1152921504606846976, -2305843009213693952, -4611686018427387904, -9223372036854775808, 0, 0, 0, 0, 0, 0, 0 ]
+ }
+ }
+ ATTRIBUTE "DU08BITS" {
+ DATATYPE H5T_ARRAY { [8][8] H5T_STD_U8LE }
+ DATASPACE SCALAR
+ DATA {
+ (0): [ 255, 254, 252, 248, 240, 224, 192, 128,
+ 254, 252, 248, 240, 224, 192, 128, 0,
+ 252, 248, 240, 224, 192, 128, 0, 0,
+ 248, 240, 224, 192, 128, 0, 0, 0,
+ 240, 224, 192, 128, 0, 0, 0, 0,
+ 224, 192, 128, 0, 0, 0, 0, 0,
+ 192, 128, 0, 0, 0, 0, 0, 0,
+ 128, 0, 0, 0, 0, 0, 0, 0 ]
+ }
+ }
+ ATTRIBUTE "DU16BITS" {
+ DATATYPE H5T_ARRAY { [8][16] H5T_STD_U16LE }
+ DATASPACE SCALAR
+ DATA {
+ (0): [ 65535, 65534, 65532, 65528, 65520, 65504, 65472, 65408, 65280, 65024, 64512, 63488, 61440, 57344, 49152, 32768,
+ 65534, 65532, 65528, 65520, 65504, 65472, 65408, 65280, 65024, 64512, 63488, 61440, 57344, 49152, 32768, 0,
+ 65532, 65528, 65520, 65504, 65472, 65408, 65280, 65024, 64512, 63488, 61440, 57344, 49152, 32768, 0, 0,
+ 65528, 65520, 65504, 65472, 65408, 65280, 65024, 64512, 63488, 61440, 57344, 49152, 32768, 0, 0, 0,
+ 65520, 65504, 65472, 65408, 65280, 65024, 64512, 63488, 61440, 57344, 49152, 32768, 0, 0, 0, 0,
+ 65504, 65472, 65408, 65280, 65024, 64512, 63488, 61440, 57344, 49152, 32768, 0, 0, 0, 0, 0,
+ 65472, 65408, 65280, 65024, 64512, 63488, 61440, 57344, 49152, 32768, 0, 0, 0, 0, 0, 0,
+ 65408, 65280, 65024, 64512, 63488, 61440, 57344, 49152, 32768, 0, 0, 0, 0, 0, 0, 0 ]
+ }
+ }
+ ATTRIBUTE "DU32BITS" {
+ DATATYPE H5T_ARRAY { [8][32] H5T_STD_U32LE }
+ DATASPACE SCALAR
+ DATA {
+ (0): [ 4294967295, 4294967294, 4294967292, 4294967288, 4294967280, 4294967264, 4294967232, 4294967168, 4294967040, 4294966784, 4294966272, 4294965248, 4294963200, 4294959104, 4294950912, 4294934528, 4294901760, 4294836224, 4294705152, 4294443008, 4293918720, 4292870144, 4290772992, 4286578688, 4278190080, 4261412864, 4227858432, 4160749568, 4026531840, 3758096384, 3221225472, 2147483648,
+ 4294967294, 4294967292, 4294967288, 4294967280, 4294967264, 4294967232, 4294967168, 4294967040, 4294966784, 4294966272, 4294965248, 4294963200, 4294959104, 4294950912, 4294934528, 4294901760, 4294836224, 4294705152, 4294443008, 4293918720, 4292870144, 4290772992, 4286578688, 4278190080, 4261412864, 4227858432, 4160749568, 4026531840, 3758096384, 3221225472, 2147483648, 0,
+ 4294967292, 4294967288, 4294967280, 4294967264, 4294967232, 4294967168, 4294967040, 4294966784, 4294966272, 4294965248, 4294963200, 4294959104, 4294950912, 4294934528, 4294901760, 4294836224, 4294705152, 4294443008, 4293918720, 4292870144, 4290772992, 4286578688, 4278190080, 4261412864, 4227858432, 4160749568, 4026531840, 3758096384, 3221225472, 2147483648, 0, 0,
+ 4294967288, 4294967280, 4294967264, 4294967232, 4294967168, 4294967040, 4294966784, 4294966272, 4294965248, 4294963200, 4294959104, 4294950912, 4294934528, 4294901760, 4294836224, 4294705152, 4294443008, 4293918720, 4292870144, 4290772992, 4286578688, 4278190080, 4261412864, 4227858432, 4160749568, 4026531840, 3758096384, 3221225472, 2147483648, 0, 0, 0,
+ 4294967280, 4294967264, 4294967232, 4294967168, 4294967040, 4294966784, 4294966272, 4294965248, 4294963200, 4294959104, 4294950912, 4294934528, 4294901760, 4294836224, 4294705152, 4294443008, 4293918720, 4292870144, 4290772992, 4286578688, 4278190080, 4261412864, 4227858432, 4160749568, 4026531840, 3758096384, 3221225472, 2147483648, 0, 0, 0, 0,
+ 4294967264, 4294967232, 4294967168, 4294967040, 4294966784, 4294966272, 4294965248, 4294963200, 4294959104, 4294950912, 4294934528, 4294901760, 4294836224, 4294705152, 4294443008, 4293918720, 4292870144, 4290772992, 4286578688, 4278190080, 4261412864, 4227858432, 4160749568, 4026531840, 3758096384, 3221225472, 2147483648, 0, 0, 0, 0, 0,
+ 4294967232, 4294967168, 4294967040, 4294966784, 4294966272, 4294965248, 4294963200, 4294959104, 4294950912, 4294934528, 4294901760, 4294836224, 4294705152, 4294443008, 4293918720, 4292870144, 4290772992, 4286578688, 4278190080, 4261412864, 4227858432, 4160749568, 4026531840, 3758096384, 3221225472, 2147483648, 0, 0, 0, 0, 0, 0,
+ 4294967168, 4294967040, 4294966784, 4294966272, 4294965248, 4294963200, 4294959104, 4294950912, 4294934528, 4294901760, 4294836224, 4294705152, 4294443008, 4293918720, 4292870144, 4290772992, 4286578688, 4278190080, 4261412864, 4227858432, 4160749568, 4026531840, 3758096384, 3221225472, 2147483648, 0, 0, 0, 0, 0, 0, 0 ]
+ }
+ }
+ ATTRIBUTE "DU64BITS" {
+ DATATYPE H5T_ARRAY { [8][64] H5T_STD_U64LE }
+ DATASPACE SCALAR
+ DATA {
+ (0): [ 18446744073709551615, 18446744073709551614, 18446744073709551612, 18446744073709551608, 18446744073709551600, 18446744073709551584, 18446744073709551552, 18446744073709551488, 18446744073709551360, 18446744073709551104, 18446744073709550592, 18446744073709549568, 18446744073709547520, 18446744073709543424, 18446744073709535232, 18446744073709518848, 18446744073709486080, 18446744073709420544, 18446744073709289472, 18446744073709027328, 18446744073708503040, 18446744073707454464, 18446744073705357312, 18446744073701163008, 18446744073692774400, 18446744073675997184, 18446744073642442752, 18446744073575333888, 18446744073441116160, 18446744073172680704, 18446744072635809792, 18446744071562067968, 18446744069414584320, 18446744065119617024, 18446744056529682432, 18446744039349813248, 18446744004990074880, 18446743936270598144, 18446743798831644672, 18446743523953737728, 18446742974197923840, 18446741874686296064, 18446739675663040512, 18446735277616529408, 18446726481523507200, 18446708889337462784, 18446673704965373952, 18446603336221196288, 18446462598732840960, 18446181123756130304, 18445618173802708992, 18444492273895866368, 18442240474082181120, 18437736874454810624, 18428729675200069632, 18410715276690587648, 18374686479671623680, 18302628885633695744, 18158513697557839872, 17870283321406128128, 17293822569102704640, 16140901064495857664, 13835058055282163712, 9223372036854775808,
+ 18446744073709551614, 18446744073709551612, 18446744073709551608, 18446744073709551600, 18446744073709551584, 18446744073709551552, 18446744073709551488, 18446744073709551360, 18446744073709551104, 18446744073709550592, 18446744073709549568, 18446744073709547520, 18446744073709543424, 18446744073709535232, 18446744073709518848, 18446744073709486080, 18446744073709420544, 18446744073709289472, 18446744073709027328, 18446744073708503040, 18446744073707454464, 18446744073705357312, 18446744073701163008, 18446744073692774400, 18446744073675997184, 18446744073642442752, 18446744073575333888, 18446744073441116160, 18446744073172680704, 18446744072635809792, 18446744071562067968, 18446744069414584320, 18446744065119617024, 18446744056529682432, 18446744039349813248, 18446744004990074880, 18446743936270598144, 18446743798831644672, 18446743523953737728, 18446742974197923840, 18446741874686296064, 18446739675663040512, 18446735277616529408, 18446726481523507200, 18446708889337462784, 18446673704965373952, 18446603336221196288, 18446462598732840960, 18446181123756130304, 18445618173802708992, 18444492273895866368, 18442240474082181120, 18437736874454810624, 18428729675200069632, 18410715276690587648, 18374686479671623680, 18302628885633695744, 18158513697557839872, 17870283321406128128, 17293822569102704640, 16140901064495857664, 13835058055282163712, 9223372036854775808, 0,
+ 18446744073709551612, 18446744073709551608, 18446744073709551600, 18446744073709551584, 18446744073709551552, 18446744073709551488, 18446744073709551360, 18446744073709551104, 18446744073709550592, 18446744073709549568, 18446744073709547520, 18446744073709543424, 18446744073709535232, 18446744073709518848, 18446744073709486080, 18446744073709420544, 18446744073709289472, 18446744073709027328, 18446744073708503040, 18446744073707454464, 18446744073705357312, 18446744073701163008, 18446744073692774400, 18446744073675997184, 18446744073642442752, 18446744073575333888, 18446744073441116160, 18446744073172680704, 18446744072635809792, 18446744071562067968, 18446744069414584320, 18446744065119617024, 18446744056529682432, 18446744039349813248, 18446744004990074880, 18446743936270598144, 18446743798831644672, 18446743523953737728, 18446742974197923840, 18446741874686296064, 18446739675663040512, 18446735277616529408, 18446726481523507200, 18446708889337462784, 18446673704965373952, 18446603336221196288, 18446462598732840960, 18446181123756130304, 18445618173802708992, 18444492273895866368, 18442240474082181120, 18437736874454810624, 18428729675200069632, 18410715276690587648, 18374686479671623680, 18302628885633695744, 18158513697557839872, 17870283321406128128, 17293822569102704640, 16140901064495857664, 13835058055282163712, 9223372036854775808, 0, 0,
+ 18446744073709551608, 18446744073709551600, 18446744073709551584, 18446744073709551552, 18446744073709551488, 18446744073709551360, 18446744073709551104, 18446744073709550592, 18446744073709549568, 18446744073709547520, 18446744073709543424, 18446744073709535232, 18446744073709518848, 18446744073709486080, 18446744073709420544, 18446744073709289472, 18446744073709027328, 18446744073708503040, 18446744073707454464, 18446744073705357312, 18446744073701163008, 18446744073692774400, 18446744073675997184, 18446744073642442752, 18446744073575333888, 18446744073441116160, 18446744073172680704, 18446744072635809792, 18446744071562067968, 18446744069414584320, 18446744065119617024, 18446744056529682432, 18446744039349813248, 18446744004990074880, 18446743936270598144, 18446743798831644672, 18446743523953737728, 18446742974197923840, 18446741874686296064, 18446739675663040512, 18446735277616529408, 18446726481523507200, 18446708889337462784, 18446673704965373952, 18446603336221196288, 18446462598732840960, 18446181123756130304, 18445618173802708992, 18444492273895866368, 18442240474082181120, 18437736874454810624, 18428729675200069632, 18410715276690587648, 18374686479671623680, 18302628885633695744, 18158513697557839872, 17870283321406128128, 17293822569102704640, 16140901064495857664, 13835058055282163712, 9223372036854775808, 0, 0, 0,
+ 18446744073709551600, 18446744073709551584, 18446744073709551552, 18446744073709551488, 18446744073709551360, 18446744073709551104, 18446744073709550592, 18446744073709549568, 18446744073709547520, 18446744073709543424, 18446744073709535232, 18446744073709518848, 18446744073709486080, 18446744073709420544, 18446744073709289472, 18446744073709027328, 18446744073708503040, 18446744073707454464, 18446744073705357312, 18446744073701163008, 18446744073692774400, 18446744073675997184, 18446744073642442752, 18446744073575333888, 18446744073441116160, 18446744073172680704, 18446744072635809792, 18446744071562067968, 18446744069414584320, 18446744065119617024, 18446744056529682432, 18446744039349813248, 18446744004990074880, 18446743936270598144, 18446743798831644672, 18446743523953737728, 18446742974197923840, 18446741874686296064, 18446739675663040512, 18446735277616529408, 18446726481523507200, 18446708889337462784, 18446673704965373952, 18446603336221196288, 18446462598732840960, 18446181123756130304, 18445618173802708992, 18444492273895866368, 18442240474082181120, 18437736874454810624, 18428729675200069632, 18410715276690587648, 18374686479671623680, 18302628885633695744, 18158513697557839872, 17870283321406128128, 17293822569102704640, 16140901064495857664, 13835058055282163712, 9223372036854775808, 0, 0, 0, 0,
+ 18446744073709551584, 18446744073709551552, 18446744073709551488, 18446744073709551360, 18446744073709551104, 18446744073709550592, 18446744073709549568, 18446744073709547520, 18446744073709543424, 18446744073709535232, 18446744073709518848, 18446744073709486080, 18446744073709420544, 18446744073709289472, 18446744073709027328, 18446744073708503040, 18446744073707454464, 18446744073705357312, 18446744073701163008, 18446744073692774400, 18446744073675997184, 18446744073642442752, 18446744073575333888, 18446744073441116160, 18446744073172680704, 18446744072635809792, 18446744071562067968, 18446744069414584320, 18446744065119617024, 18446744056529682432, 18446744039349813248, 18446744004990074880, 18446743936270598144, 18446743798831644672, 18446743523953737728, 18446742974197923840, 18446741874686296064, 18446739675663040512, 18446735277616529408, 18446726481523507200, 18446708889337462784, 18446673704965373952, 18446603336221196288, 18446462598732840960, 18446181123756130304, 18445618173802708992, 18444492273895866368, 18442240474082181120, 18437736874454810624, 18428729675200069632, 18410715276690587648, 18374686479671623680, 18302628885633695744, 18158513697557839872, 17870283321406128128, 17293822569102704640, 16140901064495857664, 13835058055282163712, 9223372036854775808, 0, 0, 0, 0, 0,
+ 18446744073709551552, 18446744073709551488, 18446744073709551360, 18446744073709551104, 18446744073709550592, 18446744073709549568, 18446744073709547520, 18446744073709543424, 18446744073709535232, 18446744073709518848, 18446744073709486080, 18446744073709420544, 18446744073709289472, 18446744073709027328, 18446744073708503040, 18446744073707454464, 18446744073705357312, 18446744073701163008, 18446744073692774400, 18446744073675997184, 18446744073642442752, 18446744073575333888, 18446744073441116160, 18446744073172680704, 18446744072635809792, 18446744071562067968, 18446744069414584320, 18446744065119617024, 18446744056529682432, 18446744039349813248, 18446744004990074880, 18446743936270598144, 18446743798831644672, 18446743523953737728, 18446742974197923840, 18446741874686296064, 18446739675663040512, 18446735277616529408, 18446726481523507200, 18446708889337462784, 18446673704965373952, 18446603336221196288, 18446462598732840960, 18446181123756130304, 18445618173802708992, 18444492273895866368, 18442240474082181120, 18437736874454810624, 18428729675200069632, 18410715276690587648, 18374686479671623680, 18302628885633695744, 18158513697557839872, 17870283321406128128, 17293822569102704640, 16140901064495857664, 13835058055282163712, 9223372036854775808, 0, 0, 0, 0, 0, 0,
+ 18446744073709551488, 18446744073709551360, 18446744073709551104, 18446744073709550592, 18446744073709549568, 18446744073709547520, 18446744073709543424, 18446744073709535232, 18446744073709518848, 18446744073709486080, 18446744073709420544, 18446744073709289472, 18446744073709027328, 18446744073708503040, 18446744073707454464, 18446744073705357312, 18446744073701163008, 18446744073692774400, 18446744073675997184, 18446744073642442752, 18446744073575333888, 18446744073441116160, 18446744073172680704, 18446744072635809792, 18446744071562067968, 18446744069414584320, 18446744065119617024, 18446744056529682432, 18446744039349813248, 18446744004990074880, 18446743936270598144, 18446743798831644672, 18446743523953737728, 18446742974197923840, 18446741874686296064, 18446739675663040512, 18446735277616529408, 18446726481523507200, 18446708889337462784, 18446673704965373952, 18446603336221196288, 18446462598732840960, 18446181123756130304, 18445618173802708992, 18444492273895866368, 18442240474082181120, 18437736874454810624, 18428729675200069632, 18410715276690587648, 18374686479671623680, 18302628885633695744, 18158513697557839872, 17870283321406128128, 17293822569102704640, 16140901064495857664, 13835058055282163712, 9223372036854775808, 0, 0, 0, 0, 0, 0, 0 ]
+ }
+ }
+ ATTRIBUTE "DummyDBL" {
+ DATATYPE H5T_ARRAY { [8][8] H5T_IEEE_F64LE }
+ DATASPACE SCALAR
+ DATA {
+ (0): [ 0, 0.0001, 0.0002, 0.0003, 0.0004, 0.0005, 0.0006, 0.0007,
+ 1, 1.0001, 1.0002, 1.0003, 1.0004, 1.0005, 1.0006, 1.0007,
+ 2, 2.0001, 2.0002, 2.0003, 2.0004, 2.0005, 2.0006, 2.0007,
+ 3, 3.0001, 3.0002, 3.0003, 3.0004, 3.0005, 3.0006, 3.0007,
+ 4, 4.0001, 4.0002, 4.0003, 4.0004, 4.0005, 4.0006, 4.0007,
+ 5, 5.0001, 5.0002, 5.0003, 5.0004, 5.0005, 5.0006, 5.0007,
+ 6, 6.0001, 6.0002, 6.0003, 6.0004, 6.0005, 6.0006, 6.0007,
+ 7, 7.0001, 7.0002, 7.0003, 7.0004, 7.0005, 7.0006, 7.0007 ]
+ }
+ }
+}
+}
diff --git a/tools/testfiles/tscalarattrintsize.h5 b/tools/testfiles/tscalarattrintsize.h5
new file mode 100644
index 0000000..df91f54
--- /dev/null
+++ b/tools/testfiles/tscalarattrintsize.h5
Binary files differ
diff --git a/tools/testfiles/tscalarintsize.ddl b/tools/testfiles/tscalarintsize.ddl
new file mode 100644
index 0000000..4b06a74
--- /dev/null
+++ b/tools/testfiles/tscalarintsize.ddl
@@ -0,0 +1,130 @@
+HDF5 "tscalarintsize.h5" {
+GROUP "/" {
+ DATASET "DS08BITS" {
+ DATATYPE H5T_ARRAY { [8][8] H5T_STD_I8LE }
+ DATASPACE SCALAR
+ DATA {
+ (0): [ -1, -2, -4, -8, -16, -32, -64, -128,
+ -2, -4, -8, -16, -32, -64, -128, 0,
+ -4, -8, -16, -32, -64, -128, 0, 0,
+ -8, -16, -32, -64, -128, 0, 0, 0,
+ -16, -32, -64, -128, 0, 0, 0, 0,
+ -32, -64, -128, 0, 0, 0, 0, 0,
+ -64, -128, 0, 0, 0, 0, 0, 0,
+ -128, 0, 0, 0, 0, 0, 0, 0 ]
+ }
+ }
+ DATASET "DS16BITS" {
+ DATATYPE H5T_ARRAY { [8][16] H5T_STD_I16LE }
+ DATASPACE SCALAR
+ DATA {
+ (0): [ -1, -2, -4, -8, -16, -32, -64, -128, -256, -512, -1024, -2048, -4096, -8192, -16384, -32768,
+ -2, -4, -8, -16, -32, -64, -128, -256, -512, -1024, -2048, -4096, -8192, -16384, -32768, 0,
+ -4, -8, -16, -32, -64, -128, -256, -512, -1024, -2048, -4096, -8192, -16384, -32768, 0, 0,
+ -8, -16, -32, -64, -128, -256, -512, -1024, -2048, -4096, -8192, -16384, -32768, 0, 0, 0,
+ -16, -32, -64, -128, -256, -512, -1024, -2048, -4096, -8192, -16384, -32768, 0, 0, 0, 0,
+ -32, -64, -128, -256, -512, -1024, -2048, -4096, -8192, -16384, -32768, 0, 0, 0, 0, 0,
+ -64, -128, -256, -512, -1024, -2048, -4096, -8192, -16384, -32768, 0, 0, 0, 0, 0, 0,
+ -128, -256, -512, -1024, -2048, -4096, -8192, -16384, -32768, 0, 0, 0, 0, 0, 0, 0 ]
+ }
+ }
+ DATASET "DS32BITS" {
+ DATATYPE H5T_ARRAY { [8][32] H5T_STD_I32LE }
+ DATASPACE SCALAR
+ DATA {
+ (0): [ -1, -2, -4, -8, -16, -32, -64, -128, -256, -512, -1024, -2048, -4096, -8192, -16384, -32768, -65536, -131072, -262144, -524288, -1048576, -2097152, -4194304, -8388608, -16777216, -33554432, -67108864, -134217728, -268435456, -536870912, -1073741824, -2147483648,
+ -2, -4, -8, -16, -32, -64, -128, -256, -512, -1024, -2048, -4096, -8192, -16384, -32768, -65536, -131072, -262144, -524288, -1048576, -2097152, -4194304, -8388608, -16777216, -33554432, -67108864, -134217728, -268435456, -536870912, -1073741824, -2147483648, 0,
+ -4, -8, -16, -32, -64, -128, -256, -512, -1024, -2048, -4096, -8192, -16384, -32768, -65536, -131072, -262144, -524288, -1048576, -2097152, -4194304, -8388608, -16777216, -33554432, -67108864, -134217728, -268435456, -536870912, -1073741824, -2147483648, 0, 0,
+ -8, -16, -32, -64, -128, -256, -512, -1024, -2048, -4096, -8192, -16384, -32768, -65536, -131072, -262144, -524288, -1048576, -2097152, -4194304, -8388608, -16777216, -33554432, -67108864, -134217728, -268435456, -536870912, -1073741824, -2147483648, 0, 0, 0,
+ -16, -32, -64, -128, -256, -512, -1024, -2048, -4096, -8192, -16384, -32768, -65536, -131072, -262144, -524288, -1048576, -2097152, -4194304, -8388608, -16777216, -33554432, -67108864, -134217728, -268435456, -536870912, -1073741824, -2147483648, 0, 0, 0, 0,
+ -32, -64, -128, -256, -512, -1024, -2048, -4096, -8192, -16384, -32768, -65536, -131072, -262144, -524288, -1048576, -2097152, -4194304, -8388608, -16777216, -33554432, -67108864, -134217728, -268435456, -536870912, -1073741824, -2147483648, 0, 0, 0, 0, 0,
+ -64, -128, -256, -512, -1024, -2048, -4096, -8192, -16384, -32768, -65536, -131072, -262144, -524288, -1048576, -2097152, -4194304, -8388608, -16777216, -33554432, -67108864, -134217728, -268435456, -536870912, -1073741824, -2147483648, 0, 0, 0, 0, 0, 0,
+ -128, -256, -512, -1024, -2048, -4096, -8192, -16384, -32768, -65536, -131072, -262144, -524288, -1048576, -2097152, -4194304, -8388608, -16777216, -33554432, -67108864, -134217728, -268435456, -536870912, -1073741824, -2147483648, 0, 0, 0, 0, 0, 0, 0 ]
+ }
+ }
+ DATASET "DS64BITS" {
+ DATATYPE H5T_ARRAY { [8][64] H5T_STD_I64LE }
+ DATASPACE SCALAR
+ DATA {
+ (0): [ -1, -2, -4, -8, -16, -32, -64, -128, -256, -512, -1024, -2048, -4096, -8192, -16384, -32768, -65536, -131072, -262144, -524288, -1048576, -2097152, -4194304, -8388608, -16777216, -33554432, -67108864, -134217728, -268435456, -536870912, -1073741824, -2147483648, -4294967296, -8589934592, -17179869184, -34359738368, -68719476736, -137438953472, -274877906944, -549755813888, -1099511627776, -2199023255552, -4398046511104, -8796093022208, -17592186044416, -35184372088832, -70368744177664, -140737488355328, -281474976710656, -562949953421312, -1125899906842624, -2251799813685248, -4503599627370496, -9007199254740992, -18014398509481984, -36028797018963968, -72057594037927936, -144115188075855872, -288230376151711744, -576460752303423488, -1152921504606846976, -2305843009213693952, -4611686018427387904, -9223372036854775808,
+ -2, -4, -8, -16, -32, -64, -128, -256, -512, -1024, -2048, -4096, -8192, -16384, -32768, -65536, -131072, -262144, -524288, -1048576, -2097152, -4194304, -8388608, -16777216, -33554432, -67108864, -134217728, -268435456, -536870912, -1073741824, -2147483648, -4294967296, -8589934592, -17179869184, -34359738368, -68719476736, -137438953472, -274877906944, -549755813888, -1099511627776, -2199023255552, -4398046511104, -8796093022208, -17592186044416, -35184372088832, -70368744177664, -140737488355328, -281474976710656, -562949953421312, -1125899906842624, -2251799813685248, -4503599627370496, -9007199254740992, -18014398509481984, -36028797018963968, -72057594037927936, -144115188075855872, -288230376151711744, -576460752303423488, -1152921504606846976, -2305843009213693952, -4611686018427387904, -9223372036854775808, 0,
+ -4, -8, -16, -32, -64, -128, -256, -512, -1024, -2048, -4096, -8192, -16384, -32768, -65536, -131072, -262144, -524288, -1048576, -2097152, -4194304, -8388608, -16777216, -33554432, -67108864, -134217728, -268435456, -536870912, -1073741824, -2147483648, -4294967296, -8589934592, -17179869184, -34359738368, -68719476736, -137438953472, -274877906944, -549755813888, -1099511627776, -2199023255552, -4398046511104, -8796093022208, -17592186044416, -35184372088832, -70368744177664, -140737488355328, -281474976710656, -562949953421312, -1125899906842624, -2251799813685248, -4503599627370496, -9007199254740992, -18014398509481984, -36028797018963968, -72057594037927936, -144115188075855872, -288230376151711744, -576460752303423488, -1152921504606846976, -2305843009213693952, -4611686018427387904, -9223372036854775808, 0, 0,
+ -8, -16, -32, -64, -128, -256, -512, -1024, -2048, -4096, -8192, -16384, -32768, -65536, -131072, -262144, -524288, -1048576, -2097152, -4194304, -8388608, -16777216, -33554432, -67108864, -134217728, -268435456, -536870912, -1073741824, -2147483648, -4294967296, -8589934592, -17179869184, -34359738368, -68719476736, -137438953472, -274877906944, -549755813888, -1099511627776, -2199023255552, -4398046511104, -8796093022208, -17592186044416, -35184372088832, -70368744177664, -140737488355328, -281474976710656, -562949953421312, -1125899906842624, -2251799813685248, -4503599627370496, -9007199254740992, -18014398509481984, -36028797018963968, -72057594037927936, -144115188075855872, -288230376151711744, -576460752303423488, -1152921504606846976, -2305843009213693952, -4611686018427387904, -9223372036854775808, 0, 0, 0,
+ -16, -32, -64, -128, -256, -512, -1024, -2048, -4096, -8192, -16384, -32768, -65536, -131072, -262144, -524288, -1048576, -2097152, -4194304, -8388608, -16777216, -33554432, -67108864, -134217728, -268435456, -536870912, -1073741824, -2147483648, -4294967296, -8589934592, -17179869184, -34359738368, -68719476736, -137438953472, -274877906944, -549755813888, -1099511627776, -2199023255552, -4398046511104, -8796093022208, -17592186044416, -35184372088832, -70368744177664, -140737488355328, -281474976710656, -562949953421312, -1125899906842624, -2251799813685248, -4503599627370496, -9007199254740992, -18014398509481984, -36028797018963968, -72057594037927936, -144115188075855872, -288230376151711744, -576460752303423488, -1152921504606846976, -2305843009213693952, -4611686018427387904, -9223372036854775808, 0, 0, 0, 0,
+ -32, -64, -128, -256, -512, -1024, -2048, -4096, -8192, -16384, -32768, -65536, -131072, -262144, -524288, -1048576, -2097152, -4194304, -8388608, -16777216, -33554432, -67108864, -134217728, -268435456, -536870912, -1073741824, -2147483648, -4294967296, -8589934592, -17179869184, -34359738368, -68719476736, -137438953472, -274877906944, -549755813888, -1099511627776, -2199023255552, -4398046511104, -8796093022208, -17592186044416, -35184372088832, -70368744177664, -140737488355328, -281474976710656, -562949953421312, -1125899906842624, -2251799813685248, -4503599627370496, -9007199254740992, -18014398509481984, -36028797018963968, -72057594037927936, -144115188075855872, -288230376151711744, -576460752303423488, -1152921504606846976, -2305843009213693952, -4611686018427387904, -9223372036854775808, 0, 0, 0, 0, 0,
+ -64, -128, -256, -512, -1024, -2048, -4096, -8192, -16384, -32768, -65536, -131072, -262144, -524288, -1048576, -2097152, -4194304, -8388608, -16777216, -33554432, -67108864, -134217728, -268435456, -536870912, -1073741824, -2147483648, -4294967296, -8589934592, -17179869184, -34359738368, -68719476736, -137438953472, -274877906944, -549755813888, -1099511627776, -2199023255552, -4398046511104, -8796093022208, -17592186044416, -35184372088832, -70368744177664, -140737488355328, -281474976710656, -562949953421312, -1125899906842624, -2251799813685248, -4503599627370496, -9007199254740992, -18014398509481984, -36028797018963968, -72057594037927936, -144115188075855872, -288230376151711744, -576460752303423488, -1152921504606846976, -2305843009213693952, -4611686018427387904, -9223372036854775808, 0, 0, 0, 0, 0, 0,
+ -128, -256, -512, -1024, -2048, -4096, -8192, -16384, -32768, -65536, -131072, -262144, -524288, -1048576, -2097152, -4194304, -8388608, -16777216, -33554432, -67108864, -134217728, -268435456, -536870912, -1073741824, -2147483648, -4294967296, -8589934592, -17179869184, -34359738368, -68719476736, -137438953472, -274877906944, -549755813888, -1099511627776, -2199023255552, -4398046511104, -8796093022208, -17592186044416, -35184372088832, -70368744177664, -140737488355328, -281474976710656, -562949953421312, -1125899906842624, -2251799813685248, -4503599627370496, -9007199254740992, -18014398509481984, -36028797018963968, -72057594037927936, -144115188075855872, -288230376151711744, -576460752303423488, -1152921504606846976, -2305843009213693952, -4611686018427387904, -9223372036854775808, 0, 0, 0, 0, 0, 0, 0 ]
+ }
+ }
+ DATASET "DU08BITS" {
+ DATATYPE H5T_ARRAY { [8][8] H5T_STD_U8LE }
+ DATASPACE SCALAR
+ DATA {
+ (0): [ 255, 254, 252, 248, 240, 224, 192, 128,
+ 254, 252, 248, 240, 224, 192, 128, 0,
+ 252, 248, 240, 224, 192, 128, 0, 0,
+ 248, 240, 224, 192, 128, 0, 0, 0,
+ 240, 224, 192, 128, 0, 0, 0, 0,
+ 224, 192, 128, 0, 0, 0, 0, 0,
+ 192, 128, 0, 0, 0, 0, 0, 0,
+ 128, 0, 0, 0, 0, 0, 0, 0 ]
+ }
+ }
+ DATASET "DU16BITS" {
+ DATATYPE H5T_ARRAY { [8][16] H5T_STD_U16LE }
+ DATASPACE SCALAR
+ DATA {
+ (0): [ 65535, 65534, 65532, 65528, 65520, 65504, 65472, 65408, 65280, 65024, 64512, 63488, 61440, 57344, 49152, 32768,
+ 65534, 65532, 65528, 65520, 65504, 65472, 65408, 65280, 65024, 64512, 63488, 61440, 57344, 49152, 32768, 0,
+ 65532, 65528, 65520, 65504, 65472, 65408, 65280, 65024, 64512, 63488, 61440, 57344, 49152, 32768, 0, 0,
+ 65528, 65520, 65504, 65472, 65408, 65280, 65024, 64512, 63488, 61440, 57344, 49152, 32768, 0, 0, 0,
+ 65520, 65504, 65472, 65408, 65280, 65024, 64512, 63488, 61440, 57344, 49152, 32768, 0, 0, 0, 0,
+ 65504, 65472, 65408, 65280, 65024, 64512, 63488, 61440, 57344, 49152, 32768, 0, 0, 0, 0, 0,
+ 65472, 65408, 65280, 65024, 64512, 63488, 61440, 57344, 49152, 32768, 0, 0, 0, 0, 0, 0,
+ 65408, 65280, 65024, 64512, 63488, 61440, 57344, 49152, 32768, 0, 0, 0, 0, 0, 0, 0 ]
+ }
+ }
+ DATASET "DU32BITS" {
+ DATATYPE H5T_ARRAY { [8][32] H5T_STD_U32LE }
+ DATASPACE SCALAR
+ DATA {
+ (0): [ 4294967295, 4294967294, 4294967292, 4294967288, 4294967280, 4294967264, 4294967232, 4294967168, 4294967040, 4294966784, 4294966272, 4294965248, 4294963200, 4294959104, 4294950912, 4294934528, 4294901760, 4294836224, 4294705152, 4294443008, 4293918720, 4292870144, 4290772992, 4286578688, 4278190080, 4261412864, 4227858432, 4160749568, 4026531840, 3758096384, 3221225472, 2147483648,
+ 4294967294, 4294967292, 4294967288, 4294967280, 4294967264, 4294967232, 4294967168, 4294967040, 4294966784, 4294966272, 4294965248, 4294963200, 4294959104, 4294950912, 4294934528, 4294901760, 4294836224, 4294705152, 4294443008, 4293918720, 4292870144, 4290772992, 4286578688, 4278190080, 4261412864, 4227858432, 4160749568, 4026531840, 3758096384, 3221225472, 2147483648, 0,
+ 4294967292, 4294967288, 4294967280, 4294967264, 4294967232, 4294967168, 4294967040, 4294966784, 4294966272, 4294965248, 4294963200, 4294959104, 4294950912, 4294934528, 4294901760, 4294836224, 4294705152, 4294443008, 4293918720, 4292870144, 4290772992, 4286578688, 4278190080, 4261412864, 4227858432, 4160749568, 4026531840, 3758096384, 3221225472, 2147483648, 0, 0,
+ 4294967288, 4294967280, 4294967264, 4294967232, 4294967168, 4294967040, 4294966784, 4294966272, 4294965248, 4294963200, 4294959104, 4294950912, 4294934528, 4294901760, 4294836224, 4294705152, 4294443008, 4293918720, 4292870144, 4290772992, 4286578688, 4278190080, 4261412864, 4227858432, 4160749568, 4026531840, 3758096384, 3221225472, 2147483648, 0, 0, 0,
+ 4294967280, 4294967264, 4294967232, 4294967168, 4294967040, 4294966784, 4294966272, 4294965248, 4294963200, 4294959104, 4294950912, 4294934528, 4294901760, 4294836224, 4294705152, 4294443008, 4293918720, 4292870144, 4290772992, 4286578688, 4278190080, 4261412864, 4227858432, 4160749568, 4026531840, 3758096384, 3221225472, 2147483648, 0, 0, 0, 0,
+ 4294967264, 4294967232, 4294967168, 4294967040, 4294966784, 4294966272, 4294965248, 4294963200, 4294959104, 4294950912, 4294934528, 4294901760, 4294836224, 4294705152, 4294443008, 4293918720, 4292870144, 4290772992, 4286578688, 4278190080, 4261412864, 4227858432, 4160749568, 4026531840, 3758096384, 3221225472, 2147483648, 0, 0, 0, 0, 0,
+ 4294967232, 4294967168, 4294967040, 4294966784, 4294966272, 4294965248, 4294963200, 4294959104, 4294950912, 4294934528, 4294901760, 4294836224, 4294705152, 4294443008, 4293918720, 4292870144, 4290772992, 4286578688, 4278190080, 4261412864, 4227858432, 4160749568, 4026531840, 3758096384, 3221225472, 2147483648, 0, 0, 0, 0, 0, 0,
+ 4294967168, 4294967040, 4294966784, 4294966272, 4294965248, 4294963200, 4294959104, 4294950912, 4294934528, 4294901760, 4294836224, 4294705152, 4294443008, 4293918720, 4292870144, 4290772992, 4286578688, 4278190080, 4261412864, 4227858432, 4160749568, 4026531840, 3758096384, 3221225472, 2147483648, 0, 0, 0, 0, 0, 0, 0 ]
+ }
+ }
+ DATASET "DU64BITS" {
+ DATATYPE H5T_ARRAY { [8][64] H5T_STD_U64LE }
+ DATASPACE SCALAR
+ DATA {
+ (0): [ 18446744073709551615, 18446744073709551614, 18446744073709551612, 18446744073709551608, 18446744073709551600, 18446744073709551584, 18446744073709551552, 18446744073709551488, 18446744073709551360, 18446744073709551104, 18446744073709550592, 18446744073709549568, 18446744073709547520, 18446744073709543424, 18446744073709535232, 18446744073709518848, 18446744073709486080, 18446744073709420544, 18446744073709289472, 18446744073709027328, 18446744073708503040, 18446744073707454464, 18446744073705357312, 18446744073701163008, 18446744073692774400, 18446744073675997184, 18446744073642442752, 18446744073575333888, 18446744073441116160, 18446744073172680704, 18446744072635809792, 18446744071562067968, 18446744069414584320, 18446744065119617024, 18446744056529682432, 18446744039349813248, 18446744004990074880, 18446743936270598144, 18446743798831644672, 18446743523953737728, 18446742974197923840, 18446741874686296064, 18446739675663040512, 18446735277616529408, 18446726481523507200, 18446708889337462784, 18446673704965373952, 18446603336221196288, 18446462598732840960, 18446181123756130304, 18445618173802708992, 18444492273895866368, 18442240474082181120, 18437736874454810624, 18428729675200069632, 18410715276690587648, 18374686479671623680, 18302628885633695744, 18158513697557839872, 17870283321406128128, 17293822569102704640, 16140901064495857664, 13835058055282163712, 9223372036854775808,
+ 18446744073709551614, 18446744073709551612, 18446744073709551608, 18446744073709551600, 18446744073709551584, 18446744073709551552, 18446744073709551488, 18446744073709551360, 18446744073709551104, 18446744073709550592, 18446744073709549568, 18446744073709547520, 18446744073709543424, 18446744073709535232, 18446744073709518848, 18446744073709486080, 18446744073709420544, 18446744073709289472, 18446744073709027328, 18446744073708503040, 18446744073707454464, 18446744073705357312, 18446744073701163008, 18446744073692774400, 18446744073675997184, 18446744073642442752, 18446744073575333888, 18446744073441116160, 18446744073172680704, 18446744072635809792, 18446744071562067968, 18446744069414584320, 18446744065119617024, 18446744056529682432, 18446744039349813248, 18446744004990074880, 18446743936270598144, 18446743798831644672, 18446743523953737728, 18446742974197923840, 18446741874686296064, 18446739675663040512, 18446735277616529408, 18446726481523507200, 18446708889337462784, 18446673704965373952, 18446603336221196288, 18446462598732840960, 18446181123756130304, 18445618173802708992, 18444492273895866368, 18442240474082181120, 18437736874454810624, 18428729675200069632, 18410715276690587648, 18374686479671623680, 18302628885633695744, 18158513697557839872, 17870283321406128128, 17293822569102704640, 16140901064495857664, 13835058055282163712, 9223372036854775808, 0,
+ 18446744073709551612, 18446744073709551608, 18446744073709551600, 18446744073709551584, 18446744073709551552, 18446744073709551488, 18446744073709551360, 18446744073709551104, 18446744073709550592, 18446744073709549568, 18446744073709547520, 18446744073709543424, 18446744073709535232, 18446744073709518848, 18446744073709486080, 18446744073709420544, 18446744073709289472, 18446744073709027328, 18446744073708503040, 18446744073707454464, 18446744073705357312, 18446744073701163008, 18446744073692774400, 18446744073675997184, 18446744073642442752, 18446744073575333888, 18446744073441116160, 18446744073172680704, 18446744072635809792, 18446744071562067968, 18446744069414584320, 18446744065119617024, 18446744056529682432, 18446744039349813248, 18446744004990074880, 18446743936270598144, 18446743798831644672, 18446743523953737728, 18446742974197923840, 18446741874686296064, 18446739675663040512, 18446735277616529408, 18446726481523507200, 18446708889337462784, 18446673704965373952, 18446603336221196288, 18446462598732840960, 18446181123756130304, 18445618173802708992, 18444492273895866368, 18442240474082181120, 18437736874454810624, 18428729675200069632, 18410715276690587648, 18374686479671623680, 18302628885633695744, 18158513697557839872, 17870283321406128128, 17293822569102704640, 16140901064495857664, 13835058055282163712, 9223372036854775808, 0, 0,
+ 18446744073709551608, 18446744073709551600, 18446744073709551584, 18446744073709551552, 18446744073709551488, 18446744073709551360, 18446744073709551104, 18446744073709550592, 18446744073709549568, 18446744073709547520, 18446744073709543424, 18446744073709535232, 18446744073709518848, 18446744073709486080, 18446744073709420544, 18446744073709289472, 18446744073709027328, 18446744073708503040, 18446744073707454464, 18446744073705357312, 18446744073701163008, 18446744073692774400, 18446744073675997184, 18446744073642442752, 18446744073575333888, 18446744073441116160, 18446744073172680704, 18446744072635809792, 18446744071562067968, 18446744069414584320, 18446744065119617024, 18446744056529682432, 18446744039349813248, 18446744004990074880, 18446743936270598144, 18446743798831644672, 18446743523953737728, 18446742974197923840, 18446741874686296064, 18446739675663040512, 18446735277616529408, 18446726481523507200, 18446708889337462784, 18446673704965373952, 18446603336221196288, 18446462598732840960, 18446181123756130304, 18445618173802708992, 18444492273895866368, 18442240474082181120, 18437736874454810624, 18428729675200069632, 18410715276690587648, 18374686479671623680, 18302628885633695744, 18158513697557839872, 17870283321406128128, 17293822569102704640, 16140901064495857664, 13835058055282163712, 9223372036854775808, 0, 0, 0,
+ 18446744073709551600, 18446744073709551584, 18446744073709551552, 18446744073709551488, 18446744073709551360, 18446744073709551104, 18446744073709550592, 18446744073709549568, 18446744073709547520, 18446744073709543424, 18446744073709535232, 18446744073709518848, 18446744073709486080, 18446744073709420544, 18446744073709289472, 18446744073709027328, 18446744073708503040, 18446744073707454464, 18446744073705357312, 18446744073701163008, 18446744073692774400, 18446744073675997184, 18446744073642442752, 18446744073575333888, 18446744073441116160, 18446744073172680704, 18446744072635809792, 18446744071562067968, 18446744069414584320, 18446744065119617024, 18446744056529682432, 18446744039349813248, 18446744004990074880, 18446743936270598144, 18446743798831644672, 18446743523953737728, 18446742974197923840, 18446741874686296064, 18446739675663040512, 18446735277616529408, 18446726481523507200, 18446708889337462784, 18446673704965373952, 18446603336221196288, 18446462598732840960, 18446181123756130304, 18445618173802708992, 18444492273895866368, 18442240474082181120, 18437736874454810624, 18428729675200069632, 18410715276690587648, 18374686479671623680, 18302628885633695744, 18158513697557839872, 17870283321406128128, 17293822569102704640, 16140901064495857664, 13835058055282163712, 9223372036854775808, 0, 0, 0, 0,
+ 18446744073709551584, 18446744073709551552, 18446744073709551488, 18446744073709551360, 18446744073709551104, 18446744073709550592, 18446744073709549568, 18446744073709547520, 18446744073709543424, 18446744073709535232, 18446744073709518848, 18446744073709486080, 18446744073709420544, 18446744073709289472, 18446744073709027328, 18446744073708503040, 18446744073707454464, 18446744073705357312, 18446744073701163008, 18446744073692774400, 18446744073675997184, 18446744073642442752, 18446744073575333888, 18446744073441116160, 18446744073172680704, 18446744072635809792, 18446744071562067968, 18446744069414584320, 18446744065119617024, 18446744056529682432, 18446744039349813248, 18446744004990074880, 18446743936270598144, 18446743798831644672, 18446743523953737728, 18446742974197923840, 18446741874686296064, 18446739675663040512, 18446735277616529408, 18446726481523507200, 18446708889337462784, 18446673704965373952, 18446603336221196288, 18446462598732840960, 18446181123756130304, 18445618173802708992, 18444492273895866368, 18442240474082181120, 18437736874454810624, 18428729675200069632, 18410715276690587648, 18374686479671623680, 18302628885633695744, 18158513697557839872, 17870283321406128128, 17293822569102704640, 16140901064495857664, 13835058055282163712, 9223372036854775808, 0, 0, 0, 0, 0,
+ 18446744073709551552, 18446744073709551488, 18446744073709551360, 18446744073709551104, 18446744073709550592, 18446744073709549568, 18446744073709547520, 18446744073709543424, 18446744073709535232, 18446744073709518848, 18446744073709486080, 18446744073709420544, 18446744073709289472, 18446744073709027328, 18446744073708503040, 18446744073707454464, 18446744073705357312, 18446744073701163008, 18446744073692774400, 18446744073675997184, 18446744073642442752, 18446744073575333888, 18446744073441116160, 18446744073172680704, 18446744072635809792, 18446744071562067968, 18446744069414584320, 18446744065119617024, 18446744056529682432, 18446744039349813248, 18446744004990074880, 18446743936270598144, 18446743798831644672, 18446743523953737728, 18446742974197923840, 18446741874686296064, 18446739675663040512, 18446735277616529408, 18446726481523507200, 18446708889337462784, 18446673704965373952, 18446603336221196288, 18446462598732840960, 18446181123756130304, 18445618173802708992, 18444492273895866368, 18442240474082181120, 18437736874454810624, 18428729675200069632, 18410715276690587648, 18374686479671623680, 18302628885633695744, 18158513697557839872, 17870283321406128128, 17293822569102704640, 16140901064495857664, 13835058055282163712, 9223372036854775808, 0, 0, 0, 0, 0, 0,
+ 18446744073709551488, 18446744073709551360, 18446744073709551104, 18446744073709550592, 18446744073709549568, 18446744073709547520, 18446744073709543424, 18446744073709535232, 18446744073709518848, 18446744073709486080, 18446744073709420544, 18446744073709289472, 18446744073709027328, 18446744073708503040, 18446744073707454464, 18446744073705357312, 18446744073701163008, 18446744073692774400, 18446744073675997184, 18446744073642442752, 18446744073575333888, 18446744073441116160, 18446744073172680704, 18446744072635809792, 18446744071562067968, 18446744069414584320, 18446744065119617024, 18446744056529682432, 18446744039349813248, 18446744004990074880, 18446743936270598144, 18446743798831644672, 18446743523953737728, 18446742974197923840, 18446741874686296064, 18446739675663040512, 18446735277616529408, 18446726481523507200, 18446708889337462784, 18446673704965373952, 18446603336221196288, 18446462598732840960, 18446181123756130304, 18445618173802708992, 18444492273895866368, 18442240474082181120, 18437736874454810624, 18428729675200069632, 18410715276690587648, 18374686479671623680, 18302628885633695744, 18158513697557839872, 17870283321406128128, 17293822569102704640, 16140901064495857664, 13835058055282163712, 9223372036854775808, 0, 0, 0, 0, 0, 0, 0 ]
+ }
+ }
+ DATASET "DummyDBL" {
+ DATATYPE H5T_ARRAY { [8][8] H5T_IEEE_F64LE }
+ DATASPACE SCALAR
+ DATA {
+ (0): [ 0, 0.0001, 0.0002, 0.0003, 0.0004, 0.0005, 0.0006, 0.0007,
+ 1, 1.0001, 1.0002, 1.0003, 1.0004, 1.0005, 1.0006, 1.0007,
+ 2, 2.0001, 2.0002, 2.0003, 2.0004, 2.0005, 2.0006, 2.0007,
+ 3, 3.0001, 3.0002, 3.0003, 3.0004, 3.0005, 3.0006, 3.0007,
+ 4, 4.0001, 4.0002, 4.0003, 4.0004, 4.0005, 4.0006, 4.0007,
+ 5, 5.0001, 5.0002, 5.0003, 5.0004, 5.0005, 5.0006, 5.0007,
+ 6, 6.0001, 6.0002, 6.0003, 6.0004, 6.0005, 6.0006, 6.0007,
+ 7, 7.0001, 7.0002, 7.0003, 7.0004, 7.0005, 7.0006, 7.0007 ]
+ }
+ }
+}
+}
diff --git a/tools/testfiles/tscalarintsize.h5 b/tools/testfiles/tscalarintsize.h5
new file mode 100644
index 0000000..5a82378
--- /dev/null
+++ b/tools/testfiles/tscalarintsize.h5
Binary files differ
diff --git a/tools/testfiles/tscalarstring.ddl b/tools/testfiles/tscalarstring.ddl
new file mode 100644
index 0000000..4ba7093
--- /dev/null
+++ b/tools/testfiles/tscalarstring.ddl
@@ -0,0 +1,28 @@
+HDF5 "tscalarstring.h5" {
+GROUP "/" {
+ ATTRIBUTE "attr_str" {
+ DATATYPE H5T_STRING {
+ STRSIZE 64;
+ STRPAD H5T_STR_NULLTERM;
+ CSET H5T_CSET_ASCII;
+ CTYPE H5T_C_S1;
+ }
+ DATASPACE SCALAR
+ DATA {
+ (0): "ABCDEFGHBCDEFGHICDEFGHIJDEFGHIJKEFGHIJKLFGHIJKLMGHIJKLMNHIJKLMNO"
+ }
+ }
+ DATASET "the_str" {
+ DATATYPE H5T_STRING {
+ STRSIZE 64;
+ STRPAD H5T_STR_NULLTERM;
+ CSET H5T_CSET_ASCII;
+ CTYPE H5T_C_S1;
+ }
+ DATASPACE SCALAR
+ DATA {
+ (0): "ABCDEFGHBCDEFGHICDEFGHIJDEFGHIJKEFGHIJKLFGHIJKLMGHIJKLMNHIJKLMNO"
+ }
+ }
+}
+}
diff --git a/tools/testfiles/tscalarstring.h5 b/tools/testfiles/tscalarstring.h5
new file mode 100644
index 0000000..b0993ef
--- /dev/null
+++ b/tools/testfiles/tscalarstring.h5
Binary files differ
diff --git a/tools/testfiles/twithddl.exp b/tools/testfiles/twithddl.exp
new file mode 100644
index 0000000..f99d906
--- /dev/null
+++ b/tools/testfiles/twithddl.exp
@@ -0,0 +1,58 @@
+HDF5 "packedbits.h5" {
+GROUP "/" {
+ DATASET "DS08BITS" {
+ DATATYPE H5T_STD_I8LE
+ DATASPACE SIMPLE { ( 8, 8 ) / ( 8, 8 ) }
+ DATA {
+ }
+ }
+ DATASET "DS16BITS" {
+ DATATYPE H5T_STD_I16LE
+ DATASPACE SIMPLE { ( 8, 16 ) / ( 8, 16 ) }
+ DATA {
+ }
+ }
+ DATASET "DS32BITS" {
+ DATATYPE H5T_STD_I32LE
+ DATASPACE SIMPLE { ( 8, 32 ) / ( 8, 32 ) }
+ DATA {
+ }
+ }
+ DATASET "DS64BITS" {
+ DATATYPE H5T_STD_I64LE
+ DATASPACE SIMPLE { ( 8, 64 ) / ( 8, 64 ) }
+ DATA {
+ }
+ }
+ DATASET "DU08BITS" {
+ DATATYPE H5T_STD_U8LE
+ DATASPACE SIMPLE { ( 8, 8 ) / ( 8, 8 ) }
+ DATA {
+ }
+ }
+ DATASET "DU16BITS" {
+ DATATYPE H5T_STD_U16LE
+ DATASPACE SIMPLE { ( 8, 16 ) / ( 8, 16 ) }
+ DATA {
+ }
+ }
+ DATASET "DU32BITS" {
+ DATATYPE H5T_STD_U32LE
+ DATASPACE SIMPLE { ( 8, 32 ) / ( 8, 32 ) }
+ DATA {
+ }
+ }
+ DATASET "DU64BITS" {
+ DATATYPE H5T_STD_U64LE
+ DATASPACE SIMPLE { ( 8, 64 ) / ( 8, 64 ) }
+ DATA {
+ }
+ }
+ DATASET "DummyDBL" {
+ DATATYPE H5T_IEEE_F64BE
+ DATASPACE SIMPLE { ( 8, 8 ) / ( 8, 8 ) }
+ DATA {
+ }
+ }
+}
+}
diff --git a/tools/testfiles/twithddlfile.ddl b/tools/testfiles/twithddlfile.ddl
new file mode 100644
index 0000000..e69de29
--- /dev/null
+++ b/tools/testfiles/twithddlfile.ddl
diff --git a/tools/testfiles/twithddlfile.exp b/tools/testfiles/twithddlfile.exp
new file mode 100644
index 0000000..dc19888
--- /dev/null
+++ b/tools/testfiles/twithddlfile.exp
@@ -0,0 +1,402 @@
+
+ -1, -2, -4, -8, -16, -32, -64, -128,
+ -2, -4, -8, -16, -32, -64, -128, 0,
+ -4, -8, -16, -32, -64, -128, 0, 0,
+ -8, -16, -32, -64, -128, 0, 0, 0,
+ -16, -32, -64, -128, 0, 0, 0, 0,
+ -32, -64, -128, 0, 0, 0, 0, 0,
+ -64, -128, 0, 0, 0, 0, 0, 0,
+ -128, 0, 0, 0, 0, 0, 0, 0
+ -1, -2, -4, -8, -16, -32, -64, -128, -256, -512, -1024, -2048, -4096,
+ -8192, -16384, -32768,
+ -2, -4, -8, -16, -32, -64, -128, -256, -512, -1024, -2048, -4096,
+ -8192, -16384, -32768, 0,
+ -4, -8, -16, -32, -64, -128, -256, -512, -1024, -2048, -4096, -8192,
+ -16384, -32768, 0, 0,
+ -8, -16, -32, -64, -128, -256, -512, -1024, -2048, -4096, -8192,
+ -16384, -32768, 0, 0, 0,
+ -16, -32, -64, -128, -256, -512, -1024, -2048, -4096, -8192, -16384,
+ -32768, 0, 0, 0, 0,
+ -32, -64, -128, -256, -512, -1024, -2048, -4096, -8192, -16384, -32768,
+ 0, 0, 0, 0, 0,
+ -64, -128, -256, -512, -1024, -2048, -4096, -8192, -16384, -32768, 0,
+ 0, 0, 0, 0, 0,
+ -128, -256, -512, -1024, -2048, -4096, -8192, -16384, -32768, 0, 0, 0,
+ 0, 0, 0, 0
+ -1, -2, -4, -8, -16, -32, -64, -128, -256, -512, -1024, -2048, -4096,
+ -8192, -16384, -32768, -65536, -131072, -262144, -524288, -1048576,
+ -2097152, -4194304, -8388608, -16777216, -33554432, -67108864,
+ -134217728, -268435456, -536870912, -1073741824, -2147483648,
+ -2, -4, -8, -16, -32, -64, -128, -256, -512, -1024, -2048, -4096,
+ -8192, -16384, -32768, -65536, -131072, -262144, -524288, -1048576,
+ -2097152, -4194304, -8388608, -16777216, -33554432, -67108864,
+ -134217728, -268435456, -536870912, -1073741824, -2147483648, 0,
+ -4, -8, -16, -32, -64, -128, -256, -512, -1024, -2048, -4096, -8192,
+ -16384, -32768, -65536, -131072, -262144, -524288, -1048576, -2097152,
+ -4194304, -8388608, -16777216, -33554432, -67108864, -134217728,
+ -268435456, -536870912, -1073741824, -2147483648, 0, 0,
+ -8, -16, -32, -64, -128, -256, -512, -1024, -2048, -4096, -8192,
+ -16384, -32768, -65536, -131072, -262144, -524288, -1048576, -2097152,
+ -4194304, -8388608, -16777216, -33554432, -67108864, -134217728,
+ -268435456, -536870912, -1073741824, -2147483648, 0, 0, 0,
+ -16, -32, -64, -128, -256, -512, -1024, -2048, -4096, -8192, -16384,
+ -32768, -65536, -131072, -262144, -524288, -1048576, -2097152,
+ -4194304, -8388608, -16777216, -33554432, -67108864, -134217728,
+ -268435456, -536870912, -1073741824, -2147483648, 0, 0, 0, 0,
+ -32, -64, -128, -256, -512, -1024, -2048, -4096, -8192, -16384, -32768,
+ -65536, -131072, -262144, -524288, -1048576, -2097152, -4194304,
+ -8388608, -16777216, -33554432, -67108864, -134217728, -268435456,
+ -536870912, -1073741824, -2147483648, 0, 0, 0, 0, 0,
+ -64, -128, -256, -512, -1024, -2048, -4096, -8192, -16384, -32768,
+ -65536, -131072, -262144, -524288, -1048576, -2097152, -4194304,
+ -8388608, -16777216, -33554432, -67108864, -134217728, -268435456,
+ -536870912, -1073741824, -2147483648, 0, 0, 0, 0, 0, 0,
+ -128, -256, -512, -1024, -2048, -4096, -8192, -16384, -32768, -65536,
+ -131072, -262144, -524288, -1048576, -2097152, -4194304, -8388608,
+ -16777216, -33554432, -67108864, -134217728, -268435456, -536870912,
+ -1073741824, -2147483648, 0, 0, 0, 0, 0, 0, 0
+ -1, -2, -4, -8, -16, -32, -64, -128, -256, -512, -1024, -2048, -4096,
+ -8192, -16384, -32768, -65536, -131072, -262144, -524288, -1048576,
+ -2097152, -4194304, -8388608, -16777216, -33554432, -67108864,
+ -134217728, -268435456, -536870912, -1073741824, -2147483648,
+ -4294967296, -8589934592, -17179869184, -34359738368, -68719476736,
+ -137438953472, -274877906944, -549755813888, -1099511627776,
+ -2199023255552, -4398046511104, -8796093022208, -17592186044416,
+ -35184372088832, -70368744177664, -140737488355328, -281474976710656,
+ -562949953421312, -1125899906842624, -2251799813685248,
+ -4503599627370496, -9007199254740992, -18014398509481984,
+ -36028797018963968, -72057594037927936, -144115188075855872,
+ -288230376151711744, -576460752303423488, -1152921504606846976,
+ -2305843009213693952, -4611686018427387904, -9223372036854775808,
+ -2, -4, -8, -16, -32, -64, -128, -256, -512, -1024, -2048, -4096,
+ -8192, -16384, -32768, -65536, -131072, -262144, -524288, -1048576,
+ -2097152, -4194304, -8388608, -16777216, -33554432, -67108864,
+ -134217728, -268435456, -536870912, -1073741824, -2147483648,
+ -4294967296, -8589934592, -17179869184, -34359738368, -68719476736,
+ -137438953472, -274877906944, -549755813888, -1099511627776,
+ -2199023255552, -4398046511104, -8796093022208, -17592186044416,
+ -35184372088832, -70368744177664, -140737488355328, -281474976710656,
+ -562949953421312, -1125899906842624, -2251799813685248,
+ -4503599627370496, -9007199254740992, -18014398509481984,
+ -36028797018963968, -72057594037927936, -144115188075855872,
+ -288230376151711744, -576460752303423488, -1152921504606846976,
+ -2305843009213693952, -4611686018427387904, -9223372036854775808, 0,
+ -4, -8, -16, -32, -64, -128, -256, -512, -1024, -2048, -4096, -8192,
+ -16384, -32768, -65536, -131072, -262144, -524288, -1048576, -2097152,
+ -4194304, -8388608, -16777216, -33554432, -67108864, -134217728,
+ -268435456, -536870912, -1073741824, -2147483648, -4294967296,
+ -8589934592, -17179869184, -34359738368, -68719476736, -137438953472,
+ -274877906944, -549755813888, -1099511627776, -2199023255552,
+ -4398046511104, -8796093022208, -17592186044416, -35184372088832,
+ -70368744177664, -140737488355328, -281474976710656, -562949953421312,
+ -1125899906842624, -2251799813685248, -4503599627370496,
+ -9007199254740992, -18014398509481984, -36028797018963968,
+ -72057594037927936, -144115188075855872, -288230376151711744,
+ -576460752303423488, -1152921504606846976, -2305843009213693952,
+ -4611686018427387904, -9223372036854775808, 0, 0,
+ -8, -16, -32, -64, -128, -256, -512, -1024, -2048, -4096, -8192,
+ -16384, -32768, -65536, -131072, -262144, -524288, -1048576, -2097152,
+ -4194304, -8388608, -16777216, -33554432, -67108864, -134217728,
+ -268435456, -536870912, -1073741824, -2147483648, -4294967296,
+ -8589934592, -17179869184, -34359738368, -68719476736, -137438953472,
+ -274877906944, -549755813888, -1099511627776, -2199023255552,
+ -4398046511104, -8796093022208, -17592186044416, -35184372088832,
+ -70368744177664, -140737488355328, -281474976710656, -562949953421312,
+ -1125899906842624, -2251799813685248, -4503599627370496,
+ -9007199254740992, -18014398509481984, -36028797018963968,
+ -72057594037927936, -144115188075855872, -288230376151711744,
+ -576460752303423488, -1152921504606846976, -2305843009213693952,
+ -4611686018427387904, -9223372036854775808, 0, 0, 0,
+ -16, -32, -64, -128, -256, -512, -1024, -2048, -4096, -8192, -16384,
+ -32768, -65536, -131072, -262144, -524288, -1048576, -2097152,
+ -4194304, -8388608, -16777216, -33554432, -67108864, -134217728,
+ -268435456, -536870912, -1073741824, -2147483648, -4294967296,
+ -8589934592, -17179869184, -34359738368, -68719476736, -137438953472,
+ -274877906944, -549755813888, -1099511627776, -2199023255552,
+ -4398046511104, -8796093022208, -17592186044416, -35184372088832,
+ -70368744177664, -140737488355328, -281474976710656, -562949953421312,
+ -1125899906842624, -2251799813685248, -4503599627370496,
+ -9007199254740992, -18014398509481984, -36028797018963968,
+ -72057594037927936, -144115188075855872, -288230376151711744,
+ -576460752303423488, -1152921504606846976, -2305843009213693952,
+ -4611686018427387904, -9223372036854775808, 0, 0, 0, 0,
+ -32, -64, -128, -256, -512, -1024, -2048, -4096, -8192, -16384, -32768,
+ -65536, -131072, -262144, -524288, -1048576, -2097152, -4194304,
+ -8388608, -16777216, -33554432, -67108864, -134217728, -268435456,
+ -536870912, -1073741824, -2147483648, -4294967296, -8589934592,
+ -17179869184, -34359738368, -68719476736, -137438953472, -274877906944,
+ -549755813888, -1099511627776, -2199023255552, -4398046511104,
+ -8796093022208, -17592186044416, -35184372088832, -70368744177664,
+ -140737488355328, -281474976710656, -562949953421312,
+ -1125899906842624, -2251799813685248, -4503599627370496,
+ -9007199254740992, -18014398509481984, -36028797018963968,
+ -72057594037927936, -144115188075855872, -288230376151711744,
+ -576460752303423488, -1152921504606846976, -2305843009213693952,
+ -4611686018427387904, -9223372036854775808, 0, 0, 0, 0, 0,
+ -64, -128, -256, -512, -1024, -2048, -4096, -8192, -16384, -32768,
+ -65536, -131072, -262144, -524288, -1048576, -2097152, -4194304,
+ -8388608, -16777216, -33554432, -67108864, -134217728, -268435456,
+ -536870912, -1073741824, -2147483648, -4294967296, -8589934592,
+ -17179869184, -34359738368, -68719476736, -137438953472, -274877906944,
+ -549755813888, -1099511627776, -2199023255552, -4398046511104,
+ -8796093022208, -17592186044416, -35184372088832, -70368744177664,
+ -140737488355328, -281474976710656, -562949953421312,
+ -1125899906842624, -2251799813685248, -4503599627370496,
+ -9007199254740992, -18014398509481984, -36028797018963968,
+ -72057594037927936, -144115188075855872, -288230376151711744,
+ -576460752303423488, -1152921504606846976, -2305843009213693952,
+ -4611686018427387904, -9223372036854775808, 0, 0, 0, 0, 0, 0,
+ -128, -256, -512, -1024, -2048, -4096, -8192, -16384, -32768, -65536,
+ -131072, -262144, -524288, -1048576, -2097152, -4194304, -8388608,
+ -16777216, -33554432, -67108864, -134217728, -268435456, -536870912,
+ -1073741824, -2147483648, -4294967296, -8589934592, -17179869184,
+ -34359738368, -68719476736, -137438953472, -274877906944,
+ -549755813888, -1099511627776, -2199023255552, -4398046511104,
+ -8796093022208, -17592186044416, -35184372088832, -70368744177664,
+ -140737488355328, -281474976710656, -562949953421312,
+ -1125899906842624, -2251799813685248, -4503599627370496,
+ -9007199254740992, -18014398509481984, -36028797018963968,
+ -72057594037927936, -144115188075855872, -288230376151711744,
+ -576460752303423488, -1152921504606846976, -2305843009213693952,
+ -4611686018427387904, -9223372036854775808, 0, 0, 0, 0, 0, 0, 0
+ 255, 254, 252, 248, 240, 224, 192, 128,
+ 254, 252, 248, 240, 224, 192, 128, 0,
+ 252, 248, 240, 224, 192, 128, 0, 0,
+ 248, 240, 224, 192, 128, 0, 0, 0,
+ 240, 224, 192, 128, 0, 0, 0, 0,
+ 224, 192, 128, 0, 0, 0, 0, 0,
+ 192, 128, 0, 0, 0, 0, 0, 0,
+ 128, 0, 0, 0, 0, 0, 0, 0
+ 65535, 65534, 65532, 65528, 65520, 65504, 65472, 65408, 65280, 65024,
+ 64512, 63488, 61440, 57344, 49152, 32768,
+ 65534, 65532, 65528, 65520, 65504, 65472, 65408, 65280, 65024, 64512,
+ 63488, 61440, 57344, 49152, 32768, 0,
+ 65532, 65528, 65520, 65504, 65472, 65408, 65280, 65024, 64512, 63488,
+ 61440, 57344, 49152, 32768, 0, 0,
+ 65528, 65520, 65504, 65472, 65408, 65280, 65024, 64512, 63488, 61440,
+ 57344, 49152, 32768, 0, 0, 0,
+ 65520, 65504, 65472, 65408, 65280, 65024, 64512, 63488, 61440, 57344,
+ 49152, 32768, 0, 0, 0, 0,
+ 65504, 65472, 65408, 65280, 65024, 64512, 63488, 61440, 57344, 49152,
+ 32768, 0, 0, 0, 0, 0,
+ 65472, 65408, 65280, 65024, 64512, 63488, 61440, 57344, 49152, 32768,
+ 0, 0, 0, 0, 0, 0,
+ 65408, 65280, 65024, 64512, 63488, 61440, 57344, 49152, 32768, 0, 0, 0,
+ 0, 0, 0, 0
+ 4294967295, 4294967294, 4294967292, 4294967288, 4294967280, 4294967264,
+ 4294967232, 4294967168, 4294967040, 4294966784, 4294966272, 4294965248,
+ 4294963200, 4294959104, 4294950912, 4294934528, 4294901760, 4294836224,
+ 4294705152, 4294443008, 4293918720, 4292870144, 4290772992, 4286578688,
+ 4278190080, 4261412864, 4227858432, 4160749568, 4026531840, 3758096384,
+ 3221225472, 2147483648,
+ 4294967294, 4294967292, 4294967288, 4294967280, 4294967264, 4294967232,
+ 4294967168, 4294967040, 4294966784, 4294966272, 4294965248, 4294963200,
+ 4294959104, 4294950912, 4294934528, 4294901760, 4294836224, 4294705152,
+ 4294443008, 4293918720, 4292870144, 4290772992, 4286578688, 4278190080,
+ 4261412864, 4227858432, 4160749568, 4026531840, 3758096384, 3221225472,
+ 2147483648, 0,
+ 4294967292, 4294967288, 4294967280, 4294967264, 4294967232, 4294967168,
+ 4294967040, 4294966784, 4294966272, 4294965248, 4294963200, 4294959104,
+ 4294950912, 4294934528, 4294901760, 4294836224, 4294705152, 4294443008,
+ 4293918720, 4292870144, 4290772992, 4286578688, 4278190080, 4261412864,
+ 4227858432, 4160749568, 4026531840, 3758096384, 3221225472, 2147483648,
+ 0, 0,
+ 4294967288, 4294967280, 4294967264, 4294967232, 4294967168, 4294967040,
+ 4294966784, 4294966272, 4294965248, 4294963200, 4294959104, 4294950912,
+ 4294934528, 4294901760, 4294836224, 4294705152, 4294443008, 4293918720,
+ 4292870144, 4290772992, 4286578688, 4278190080, 4261412864, 4227858432,
+ 4160749568, 4026531840, 3758096384, 3221225472, 2147483648, 0, 0, 0,
+ 4294967280, 4294967264, 4294967232, 4294967168, 4294967040, 4294966784,
+ 4294966272, 4294965248, 4294963200, 4294959104, 4294950912, 4294934528,
+ 4294901760, 4294836224, 4294705152, 4294443008, 4293918720, 4292870144,
+ 4290772992, 4286578688, 4278190080, 4261412864, 4227858432, 4160749568,
+ 4026531840, 3758096384, 3221225472, 2147483648, 0, 0, 0, 0,
+ 4294967264, 4294967232, 4294967168, 4294967040, 4294966784, 4294966272,
+ 4294965248, 4294963200, 4294959104, 4294950912, 4294934528, 4294901760,
+ 4294836224, 4294705152, 4294443008, 4293918720, 4292870144, 4290772992,
+ 4286578688, 4278190080, 4261412864, 4227858432, 4160749568, 4026531840,
+ 3758096384, 3221225472, 2147483648, 0, 0, 0, 0, 0,
+ 4294967232, 4294967168, 4294967040, 4294966784, 4294966272, 4294965248,
+ 4294963200, 4294959104, 4294950912, 4294934528, 4294901760, 4294836224,
+ 4294705152, 4294443008, 4293918720, 4292870144, 4290772992, 4286578688,
+ 4278190080, 4261412864, 4227858432, 4160749568, 4026531840, 3758096384,
+ 3221225472, 2147483648, 0, 0, 0, 0, 0, 0,
+ 4294967168, 4294967040, 4294966784, 4294966272, 4294965248, 4294963200,
+ 4294959104, 4294950912, 4294934528, 4294901760, 4294836224, 4294705152,
+ 4294443008, 4293918720, 4292870144, 4290772992, 4286578688, 4278190080,
+ 4261412864, 4227858432, 4160749568, 4026531840, 3758096384, 3221225472,
+ 2147483648, 0, 0, 0, 0, 0, 0, 0
+ 18446744073709551615, 18446744073709551614, 18446744073709551612,
+ 18446744073709551608, 18446744073709551600, 18446744073709551584,
+ 18446744073709551552, 18446744073709551488, 18446744073709551360,
+ 18446744073709551104, 18446744073709550592, 18446744073709549568,
+ 18446744073709547520, 18446744073709543424, 18446744073709535232,
+ 18446744073709518848, 18446744073709486080, 18446744073709420544,
+ 18446744073709289472, 18446744073709027328, 18446744073708503040,
+ 18446744073707454464, 18446744073705357312, 18446744073701163008,
+ 18446744073692774400, 18446744073675997184, 18446744073642442752,
+ 18446744073575333888, 18446744073441116160, 18446744073172680704,
+ 18446744072635809792, 18446744071562067968, 18446744069414584320,
+ 18446744065119617024, 18446744056529682432, 18446744039349813248,
+ 18446744004990074880, 18446743936270598144, 18446743798831644672,
+ 18446743523953737728, 18446742974197923840, 18446741874686296064,
+ 18446739675663040512, 18446735277616529408, 18446726481523507200,
+ 18446708889337462784, 18446673704965373952, 18446603336221196288,
+ 18446462598732840960, 18446181123756130304, 18445618173802708992,
+ 18444492273895866368, 18442240474082181120, 18437736874454810624,
+ 18428729675200069632, 18410715276690587648, 18374686479671623680,
+ 18302628885633695744, 18158513697557839872, 17870283321406128128,
+ 17293822569102704640, 16140901064495857664, 13835058055282163712,
+ 9223372036854775808,
+ 18446744073709551614, 18446744073709551612, 18446744073709551608,
+ 18446744073709551600, 18446744073709551584, 18446744073709551552,
+ 18446744073709551488, 18446744073709551360, 18446744073709551104,
+ 18446744073709550592, 18446744073709549568, 18446744073709547520,
+ 18446744073709543424, 18446744073709535232, 18446744073709518848,
+ 18446744073709486080, 18446744073709420544, 18446744073709289472,
+ 18446744073709027328, 18446744073708503040, 18446744073707454464,
+ 18446744073705357312, 18446744073701163008, 18446744073692774400,
+ 18446744073675997184, 18446744073642442752, 18446744073575333888,
+ 18446744073441116160, 18446744073172680704, 18446744072635809792,
+ 18446744071562067968, 18446744069414584320, 18446744065119617024,
+ 18446744056529682432, 18446744039349813248, 18446744004990074880,
+ 18446743936270598144, 18446743798831644672, 18446743523953737728,
+ 18446742974197923840, 18446741874686296064, 18446739675663040512,
+ 18446735277616529408, 18446726481523507200, 18446708889337462784,
+ 18446673704965373952, 18446603336221196288, 18446462598732840960,
+ 18446181123756130304, 18445618173802708992, 18444492273895866368,
+ 18442240474082181120, 18437736874454810624, 18428729675200069632,
+ 18410715276690587648, 18374686479671623680, 18302628885633695744,
+ 18158513697557839872, 17870283321406128128, 17293822569102704640,
+ 16140901064495857664, 13835058055282163712, 9223372036854775808, 0,
+ 18446744073709551612, 18446744073709551608, 18446744073709551600,
+ 18446744073709551584, 18446744073709551552, 18446744073709551488,
+ 18446744073709551360, 18446744073709551104, 18446744073709550592,
+ 18446744073709549568, 18446744073709547520, 18446744073709543424,
+ 18446744073709535232, 18446744073709518848, 18446744073709486080,
+ 18446744073709420544, 18446744073709289472, 18446744073709027328,
+ 18446744073708503040, 18446744073707454464, 18446744073705357312,
+ 18446744073701163008, 18446744073692774400, 18446744073675997184,
+ 18446744073642442752, 18446744073575333888, 18446744073441116160,
+ 18446744073172680704, 18446744072635809792, 18446744071562067968,
+ 18446744069414584320, 18446744065119617024, 18446744056529682432,
+ 18446744039349813248, 18446744004990074880, 18446743936270598144,
+ 18446743798831644672, 18446743523953737728, 18446742974197923840,
+ 18446741874686296064, 18446739675663040512, 18446735277616529408,
+ 18446726481523507200, 18446708889337462784, 18446673704965373952,
+ 18446603336221196288, 18446462598732840960, 18446181123756130304,
+ 18445618173802708992, 18444492273895866368, 18442240474082181120,
+ 18437736874454810624, 18428729675200069632, 18410715276690587648,
+ 18374686479671623680, 18302628885633695744, 18158513697557839872,
+ 17870283321406128128, 17293822569102704640, 16140901064495857664,
+ 13835058055282163712, 9223372036854775808, 0, 0,
+ 18446744073709551608, 18446744073709551600, 18446744073709551584,
+ 18446744073709551552, 18446744073709551488, 18446744073709551360,
+ 18446744073709551104, 18446744073709550592, 18446744073709549568,
+ 18446744073709547520, 18446744073709543424, 18446744073709535232,
+ 18446744073709518848, 18446744073709486080, 18446744073709420544,
+ 18446744073709289472, 18446744073709027328, 18446744073708503040,
+ 18446744073707454464, 18446744073705357312, 18446744073701163008,
+ 18446744073692774400, 18446744073675997184, 18446744073642442752,
+ 18446744073575333888, 18446744073441116160, 18446744073172680704,
+ 18446744072635809792, 18446744071562067968, 18446744069414584320,
+ 18446744065119617024, 18446744056529682432, 18446744039349813248,
+ 18446744004990074880, 18446743936270598144, 18446743798831644672,
+ 18446743523953737728, 18446742974197923840, 18446741874686296064,
+ 18446739675663040512, 18446735277616529408, 18446726481523507200,
+ 18446708889337462784, 18446673704965373952, 18446603336221196288,
+ 18446462598732840960, 18446181123756130304, 18445618173802708992,
+ 18444492273895866368, 18442240474082181120, 18437736874454810624,
+ 18428729675200069632, 18410715276690587648, 18374686479671623680,
+ 18302628885633695744, 18158513697557839872, 17870283321406128128,
+ 17293822569102704640, 16140901064495857664, 13835058055282163712,
+ 9223372036854775808, 0, 0, 0,
+ 18446744073709551600, 18446744073709551584, 18446744073709551552,
+ 18446744073709551488, 18446744073709551360, 18446744073709551104,
+ 18446744073709550592, 18446744073709549568, 18446744073709547520,
+ 18446744073709543424, 18446744073709535232, 18446744073709518848,
+ 18446744073709486080, 18446744073709420544, 18446744073709289472,
+ 18446744073709027328, 18446744073708503040, 18446744073707454464,
+ 18446744073705357312, 18446744073701163008, 18446744073692774400,
+ 18446744073675997184, 18446744073642442752, 18446744073575333888,
+ 18446744073441116160, 18446744073172680704, 18446744072635809792,
+ 18446744071562067968, 18446744069414584320, 18446744065119617024,
+ 18446744056529682432, 18446744039349813248, 18446744004990074880,
+ 18446743936270598144, 18446743798831644672, 18446743523953737728,
+ 18446742974197923840, 18446741874686296064, 18446739675663040512,
+ 18446735277616529408, 18446726481523507200, 18446708889337462784,
+ 18446673704965373952, 18446603336221196288, 18446462598732840960,
+ 18446181123756130304, 18445618173802708992, 18444492273895866368,
+ 18442240474082181120, 18437736874454810624, 18428729675200069632,
+ 18410715276690587648, 18374686479671623680, 18302628885633695744,
+ 18158513697557839872, 17870283321406128128, 17293822569102704640,
+ 16140901064495857664, 13835058055282163712, 9223372036854775808, 0, 0,
+ 0, 0,
+ 18446744073709551584, 18446744073709551552, 18446744073709551488,
+ 18446744073709551360, 18446744073709551104, 18446744073709550592,
+ 18446744073709549568, 18446744073709547520, 18446744073709543424,
+ 18446744073709535232, 18446744073709518848, 18446744073709486080,
+ 18446744073709420544, 18446744073709289472, 18446744073709027328,
+ 18446744073708503040, 18446744073707454464, 18446744073705357312,
+ 18446744073701163008, 18446744073692774400, 18446744073675997184,
+ 18446744073642442752, 18446744073575333888, 18446744073441116160,
+ 18446744073172680704, 18446744072635809792, 18446744071562067968,
+ 18446744069414584320, 18446744065119617024, 18446744056529682432,
+ 18446744039349813248, 18446744004990074880, 18446743936270598144,
+ 18446743798831644672, 18446743523953737728, 18446742974197923840,
+ 18446741874686296064, 18446739675663040512, 18446735277616529408,
+ 18446726481523507200, 18446708889337462784, 18446673704965373952,
+ 18446603336221196288, 18446462598732840960, 18446181123756130304,
+ 18445618173802708992, 18444492273895866368, 18442240474082181120,
+ 18437736874454810624, 18428729675200069632, 18410715276690587648,
+ 18374686479671623680, 18302628885633695744, 18158513697557839872,
+ 17870283321406128128, 17293822569102704640, 16140901064495857664,
+ 13835058055282163712, 9223372036854775808, 0, 0, 0, 0, 0,
+ 18446744073709551552, 18446744073709551488, 18446744073709551360,
+ 18446744073709551104, 18446744073709550592, 18446744073709549568,
+ 18446744073709547520, 18446744073709543424, 18446744073709535232,
+ 18446744073709518848, 18446744073709486080, 18446744073709420544,
+ 18446744073709289472, 18446744073709027328, 18446744073708503040,
+ 18446744073707454464, 18446744073705357312, 18446744073701163008,
+ 18446744073692774400, 18446744073675997184, 18446744073642442752,
+ 18446744073575333888, 18446744073441116160, 18446744073172680704,
+ 18446744072635809792, 18446744071562067968, 18446744069414584320,
+ 18446744065119617024, 18446744056529682432, 18446744039349813248,
+ 18446744004990074880, 18446743936270598144, 18446743798831644672,
+ 18446743523953737728, 18446742974197923840, 18446741874686296064,
+ 18446739675663040512, 18446735277616529408, 18446726481523507200,
+ 18446708889337462784, 18446673704965373952, 18446603336221196288,
+ 18446462598732840960, 18446181123756130304, 18445618173802708992,
+ 18444492273895866368, 18442240474082181120, 18437736874454810624,
+ 18428729675200069632, 18410715276690587648, 18374686479671623680,
+ 18302628885633695744, 18158513697557839872, 17870283321406128128,
+ 17293822569102704640, 16140901064495857664, 13835058055282163712,
+ 9223372036854775808, 0, 0, 0, 0, 0, 0,
+ 18446744073709551488, 18446744073709551360, 18446744073709551104,
+ 18446744073709550592, 18446744073709549568, 18446744073709547520,
+ 18446744073709543424, 18446744073709535232, 18446744073709518848,
+ 18446744073709486080, 18446744073709420544, 18446744073709289472,
+ 18446744073709027328, 18446744073708503040, 18446744073707454464,
+ 18446744073705357312, 18446744073701163008, 18446744073692774400,
+ 18446744073675997184, 18446744073642442752, 18446744073575333888,
+ 18446744073441116160, 18446744073172680704, 18446744072635809792,
+ 18446744071562067968, 18446744069414584320, 18446744065119617024,
+ 18446744056529682432, 18446744039349813248, 18446744004990074880,
+ 18446743936270598144, 18446743798831644672, 18446743523953737728,
+ 18446742974197923840, 18446741874686296064, 18446739675663040512,
+ 18446735277616529408, 18446726481523507200, 18446708889337462784,
+ 18446673704965373952, 18446603336221196288, 18446462598732840960,
+ 18446181123756130304, 18445618173802708992, 18444492273895866368,
+ 18442240474082181120, 18437736874454810624, 18428729675200069632,
+ 18410715276690587648, 18374686479671623680, 18302628885633695744,
+ 18158513697557839872, 17870283321406128128, 17293822569102704640,
+ 16140901064495857664, 13835058055282163712, 9223372036854775808, 0, 0,
+ 0, 0, 0, 0, 0
+ 0, 0.0001, 0.0002, 0.0003, 0.0004, 0.0005, 0.0006, 0.0007,
+ 1, 1.0001, 1.0002, 1.0003, 1.0004, 1.0005, 1.0006, 1.0007,
+ 2, 2.0001, 2.0002, 2.0003, 2.0004, 2.0005, 2.0006, 2.0007,
+ 3, 3.0001, 3.0002, 3.0003, 3.0004, 3.0005, 3.0006, 3.0007,
+ 4, 4.0001, 4.0002, 4.0003, 4.0004, 4.0005, 4.0006, 4.0007,
+ 5, 5.0001, 5.0002, 5.0003, 5.0004, 5.0005, 5.0006, 5.0007,
+ 6, 6.0001, 6.0002, 6.0003, 6.0004, 6.0005, 6.0006, 6.0007,
+ 7, 7.0001, 7.0002, 7.0003, 7.0004, 7.0005, 7.0006, 7.0007 \ No newline at end of file