From 9dfe1289211092adf5d951f8d9005b83f81af9a0 Mon Sep 17 00:00:00 2001 From: "Robert E. McGrath" Date: Fri, 23 Feb 2001 17:07:15 -0500 Subject: [svn-r3506] Purpose: Bug fix. Description: Order of elements in groups is wrong. (Need to find out why h5gen accepted this at all.) Note that test output had to be corrected in some cases. Solution: Fixed xml_dump_group to do the right order to match the DTD Platforms tested: Linux, solaris. --- tools/h5dump/h5dump.c | 874 +++--- tools/testfiles/tcompound.h5.xml | 242 +- tools/testfiles/tcompound2.h5.xml | 244 +- tools/testfiles/tenum.h5.xml | 28 +- tools/testfiles/thlink.h5.xml | 42 +- tools/testfiles/tobjref.h5.xml | 94 +- tools/testfiles/tref-escapes-at.h5.xml | 238 +- tools/testfiles/tref-escapes.h5.xml | 54 +- tools/testfiles/tref.h5.xml | 42 +- tools/testfiles/tsaf.h5.xml | 5066 ++++++++++++++++---------------- 10 files changed, 3396 insertions(+), 3528 deletions(-) diff --git a/tools/h5dump/h5dump.c b/tools/h5dump/h5dump.c index 23c3bd2..dcae975 100644 --- a/tools/h5dump/h5dump.c +++ b/tools/h5dump/h5dump.c @@ -1,7 +1,10 @@ -/* - * Copyright (C) 1998-2001 National Center for Supercomputing Applications - * All rights reserved. +/*------------------------------------------------------------------------- + * + * Copyright (C) 1998 - 2001 + * National Center for Supercomputing Applications + * All rights reserved. * + *------------------------------------------------------------------------- */ #include #include @@ -11,23 +14,16 @@ #include "h5tools.h" /* module-scoped variables */ -static const char *progname = "h5dump"; - -static int d_status = EXIT_SUCCESS; -static int unamedtype = 0; /* shared data type with no name */ -static int prefix_len = 1024; -static table_t *group_table = NULL, *dset_table = NULL, *type_table = NULL; -static char *prefix; +static int display_oid = 0; +static int display_data = 1; +static int d_status = EXIT_SUCCESS; +static int unamedtype = 0; /* shared data type with no name */ +static int prefix_len = 1024; +static table_t *group_table = NULL, *dset_table = NULL, *type_table = NULL; +static char *prefix; static const dump_header *dump_header_format; -/* things to display or which are set via command line parameters */ -static int display_all = TRUE; -static int display_bb = FALSE; -static int display_oid = FALSE; -static int display_data = TRUE; -static int usingdasho = FALSE; - /** ** Added for XML ** **/ @@ -359,7 +355,7 @@ static void dump_datatype(hid_t type); static herr_t dump_attr(hid_t attr, const char *attr_name, void UNUSED * op_data); -/* XML format: same interface, alternative output */ +/* XML format: same interface, alternaive output */ static void xml_dump_group(hid_t, const char *); static void xml_dump_dataset(hid_t ds, const char *dsname); @@ -424,7 +420,7 @@ struct subset_t { /* a structure for handling the order command-line parameters come in */ struct handler_t { - void (*func)(hid_t, char *, void *); + void (*func)(hid_t, char *); char *obj; struct subset_t *subset_info; }; @@ -434,23 +430,10 @@ struct handler_t { * parameters. The long-named ones can be partially spelled. When * adding more, make sure that they don't clash with each other. */ -#if 0 - /* binary: not implemented yet */ -static const char *s_opts = "hbBHvVa:d:g:l:t:w:xD:o:s:T:c:k:"; -#else static const char *s_opts = "hBHvVa:d:g:l:t:w:xD:o:s:T:c:k:"; -#endif /* 0 */ static struct long_options l_opts[] = { { "help", no_arg, 'h' }, { "hel", no_arg, 'h' }, -#if 0 - /* binary: not implemented yet */ - { "binary", no_arg, 'b' }, - { "binar", no_arg, 'b' }, - { "bina", no_arg, 'b' }, - { "bin", no_arg, 'b' }, - { "bi", no_arg, 'b' }, -#endif /* 0 */ { "boot-block", no_arg, 'B' }, { "boot-bloc", no_arg, 'B' }, { "boot-blo", no_arg, 'B' }, @@ -549,10 +532,10 @@ static struct long_options l_opts[] = { *------------------------------------------------------------------------- */ static void -usage(const char *prog) +usage(const char *progname) { fflush(stdout); - fprintf(stdout, "\ + fprintf(stderr, "\ usage: %s [OPTIONS] file\n\ OPTIONS\n\ -h, --help Print a usage message and exit\n\ @@ -566,14 +549,14 @@ usage: %s [OPTIONS] file\n\ -l P, --soft-link=P Print the value(s) of the specified soft link\n\ -o F, --output=F Output raw data into file F\n\ -t T, --datatype=T Print the specified named data type\n\ - -w N, --width=N Set the number of columns of output\n\ + -w #, --width=# Set the number of columns of output\n\ -x, --xml Output in XML\n\ -D U, --xml-dtd=U Use the DTD at U\n\ \n\ P - is the full path from the root group to the object.\n\ T - is the name of the data type.\n\ F - is a filename.\n\ - N - is an integer greater than 1.\n\ + # - is an integer greater than 1.\n\ U - is a URI reference (as defined in [IETF RFC 2396],\n\ updated by [IETF RFC 2732])\n\ \n\ @@ -582,7 +565,7 @@ usage: %s [OPTIONS] file\n\ Attribute foo of the group /bar_none in file quux.h5\n\ \n\ h5dump -a /bar_none/foo quux.h5\n\ -\n", prog); +\n", progname); } /*------------------------------------------------------------------------- @@ -601,15 +584,15 @@ usage: %s [OPTIONS] file\n\ static void print_datatype(hid_t type) { - char *fname; - hid_t nmembers, mtype, str_type; - int i, j, ndims, perm[H5DUMP_MAX_RANK]; - size_t size; - hsize_t dims[H5DUMP_MAX_RANK]; - H5T_str_t str_pad; - H5T_cset_t cset; - H5G_stat_t statbuf; - hid_t super; + char *fname; + hid_t nmembers, mtype, str_type; + int i, j, ndims, perm[H5DUMP_MAX_RANK]; + size_t size; + hsize_t dims[H5DUMP_MAX_RANK]; + H5T_str_t str_pad; + H5T_cset_t cset; + H5G_stat_t statbuf; + hid_t super; switch (H5Tget_class(type)) { case H5T_INTEGER: @@ -803,7 +786,8 @@ print_datatype(hid_t type) else printf("\"%s\"", type_table->objs[i].objname); } else { - error_msg(progname, "unknown committed type.\n"); + fflush(stdout); + fprintf(stderr, "h5dump error: unknown committed type.\n"); d_status = EXIT_FAILURE; } } else { @@ -853,6 +837,7 @@ print_datatype(hid_t type) case H5T_VLEN: printf("H5T_VLEN %s ", dump_header_format->vlenblockbegin); + super = H5Tget_super(type); print_datatype(super); H5Tclose(super); @@ -937,7 +922,7 @@ dump_datatype(hid_t type) indentation(indent); printf("%s %s ", dump_header_format->datatypebegin, - dump_header_format->datatypeblockbegin); + dump_header_format->datatypeblockbegin); print_datatype(type); @@ -945,7 +930,7 @@ dump_datatype(hid_t type) indentation(indent); printf(" %s %s\n", dump_header_format->datatypeblockend, - dump_header_format->datatypeend); + dump_header_format->datatypeend); indent -= COL; } @@ -966,10 +951,11 @@ dump_datatype(hid_t type) static void dump_dataspace(hid_t space) { - hsize_t size[H5DUMP_MAX_RANK]; - hsize_t maxsize[H5DUMP_MAX_RANK]; - int ndims = H5Sget_simple_extent_dims(space, size, maxsize); - int i; + hsize_t size[H5DUMP_MAX_RANK]; + hsize_t maxsize[H5DUMP_MAX_RANK]; + int ndims = + H5Sget_simple_extent_dims(space, size, maxsize); + int i; indentation(indent + COL); printf("%s ", dump_header_format->dataspacebegin); @@ -996,7 +982,7 @@ dump_dataspace(hid_t space) "H5S_UNLIMITED"); else HDfprintf(stdout, "%s %Hu", - dump_header_format->dataspacedimbegin, maxsize[0]); + dump_header_format->dataspacedimbegin, maxsize[0]); for (i = 1; i < ndims; i++) if (maxsize[i] == H5S_UNLIMITED) @@ -1032,22 +1018,14 @@ dump_dataspace(hid_t space) static herr_t dump_attr(hid_t attr, const char *attr_name, void UNUSED * op_data) { - hid_t attr_id, type, space; - herr_t ret = SUCCEED; + hid_t attr_id, type, space; + herr_t ret = SUCCEED; indentation(indent); begin_obj(dump_header_format->attributebegin, attr_name, dump_header_format->attributeblockbegin); - if ((attr_id = H5Aopen_name(attr, attr_name)) < 0) { - indentation(indent + COL); - error_msg(progname, "unable to open attribute \"%s\"\n", attr_name); - indentation(indent); - end_obj(dump_header_format->attributeend, - dump_header_format->attributeblockend); - d_status = EXIT_FAILURE; - ret = FAIL; - } else { + if ((attr_id = H5Aopen_name(attr, attr_name)) >= 0) { type = H5Aget_type(attr_id); space = H5Aget_space(attr_id); dump_datatype(type); @@ -1065,6 +1043,15 @@ dump_attr(hid_t attr, const char *attr_name, void UNUSED * op_data) indentation(indent); end_obj(dump_header_format->attributeend, dump_header_format->attributeblockend); + } else { + indentation(indent + COL); + fflush(stdout); + fprintf(stderr, "h5dump error: unable to open attribute \"%s\"\n", attr_name); + indentation(indent); + end_obj(dump_header_format->attributeend, + dump_header_format->attributeblockend); + d_status = EXIT_FAILURE; + ret = FAIL; } return ret; @@ -1106,7 +1093,7 @@ dump_selected_attr(hid_t loc_id, const char *name) strcpy(obj_name, "/"); } else { strncpy(obj_name, name, (size_t)j + 1); - obj_name[j + 1] = '\0'; + obj_name[j+1] = '\0'; } attr_name = name + j + 1; @@ -1118,7 +1105,8 @@ dump_selected_attr(hid_t loc_id, const char *name) case H5G_GROUP: if ((oid = H5Gopen(loc_id, obj_name)) < 0) { indentation(COL); - error_msg(progname, "unable to open group \"%s\"\n", obj_name); + fflush(stdout); + fprintf(stderr, "h5dump error: unable to open group \"%s\"\n", obj_name); end_obj(dump_header_format->attributeend, dump_header_format->attributeblockend); d_status = EXIT_FAILURE; @@ -1129,7 +1117,8 @@ dump_selected_attr(hid_t loc_id, const char *name) case H5G_DATASET: if ((oid = H5Dopen(loc_id, obj_name)) < 0) { indentation(COL); - error_msg(progname, "unable to open dataset \"%s\"\n", obj_name); + fflush(stdout); + fprintf(stderr, "h5dump error: unable to open dataset \"%s\"\n", obj_name); end_obj(dump_header_format->attributeend, dump_header_format->attributeblockend); d_status = EXIT_FAILURE; @@ -1140,7 +1129,8 @@ dump_selected_attr(hid_t loc_id, const char *name) case H5G_TYPE: if ((oid = H5Topen(loc_id, obj_name)) < 0) { indentation(COL); - error_msg(progname, "unable to open datatype \"%s\"\n", obj_name); + fflush(stdout); + fprintf(stderr, "h5dump error: unable to open datatype \"%s\"\n", obj_name); end_obj(dump_header_format->attributeend, dump_header_format->attributeblockend); d_status = EXIT_FAILURE; @@ -1150,7 +1140,8 @@ dump_selected_attr(hid_t loc_id, const char *name) default: indentation(COL); - error_msg(progname, "unable to open unknown \"%s\"\n", obj_name); + fflush(stdout); + fprintf(stderr, "h5dump error: unable to open unknown \"%s\"\n", obj_name); end_obj(dump_header_format->attributeend, dump_header_format->attributeblockend); d_status = EXIT_FAILURE; @@ -1176,7 +1167,8 @@ dump_selected_attr(hid_t loc_id, const char *name) dump_header_format->attributeblockend); } else { indentation(COL); - error_msg(progname, "unable to open attribute \"%s\"\n", obj_name); + fflush(stdout); + fprintf(stderr, "h5dump error: unable to open attribute \"%s\"\n", obj_name); end_obj(dump_header_format->attributeend, dump_header_format->attributeblockend); d_status = EXIT_FAILURE; @@ -1224,8 +1216,7 @@ dump_selected_attr(hid_t loc_id, const char *name) * Programmer: Ruey-Hsia Li * * Modifications: - * RMcG, November 2000 - * Added XML support. Also, optionally checks the op_data + * 11/00 Added XML support. Also, optionally checks the op_data * argument. * *------------------------------------------------------------------------- @@ -1233,18 +1224,16 @@ dump_selected_attr(hid_t loc_id, const char *name) static herr_t dump_all(hid_t group, const char *name, void * op_data) { - hid_t obj; - char *buf, *tmp = NULL; - H5G_stat_t statbuf; - int i; - herr_t ret = SUCCEED; + hid_t obj; + char *buf, *tmp, *tmp2; + H5G_stat_t statbuf; + int i; H5Gget_objinfo(group, name, FALSE, &statbuf); - - if (*(int *)op_data != H5G_UNKNOWN && statbuf.type != *(int *) op_data) - goto done; - - tmp = malloc(strlen(prefix) + strlen(name) + 1); + if ((*(int *)op_data != H5G_UNKNOWN) && + (statbuf.type != *(int *) op_data)) + return SUCCEED; + tmp = (char *) malloc(strlen(prefix) + strlen(name) + 2); strcpy(tmp, prefix); switch (statbuf.type) { @@ -1258,45 +1247,34 @@ dump_all(hid_t group, const char *name, void * op_data) indentation(indent + COL); } - if (H5Gget_linkval(group, name, statbuf.linklen, buf) < 0) { - error_msg(progname, "unable to get link value\n"); - d_status = EXIT_FAILURE; - ret = FAIL; - } else { + if (H5Gget_linkval(group, name, statbuf.linklen, buf) >= 0) { /* print the value of a soft link */ if (!doxml) { - /* Standard DDL: no modification */ + /* Standard DDL: no modification */ printf("LINKTARGET \"%s\"\n", buf); } else { /* XML */ - char *t_name = xml_escape_the_name(name); - char *t_buf = xml_escape_the_name(buf); - char *t_prefix = xml_escape_the_name(prefix); - char *tmp2, *t_tmp2, *t_tmp; - - tmp2 = malloc(strlen(prefix) + statbuf.linklen + 1); + tmp2 = (char *) malloc(strlen(prefix) + statbuf.linklen + 2); strcpy(tmp2, prefix); - - if (buf && buf[0] == '/') - strcat(tmp2, buf); - else - strcat(strcat(tmp2, "/"), buf); - - t_tmp = xml_escape_the_name(strcat(strcat(tmp, "/"), name)); - t_tmp2 = xml_escape_the_name(tmp2); - - printf("\n", - t_name, t_buf, t_tmp2, t_tmp, - (strcmp(prefix, "") ? t_prefix : "root")); - - free(t_name); - free(t_buf); - free(t_prefix); - free(t_tmp); - free(t_tmp2); - free(tmp2); + if (buf && buf[0] == '/') { + strcat(tmp2, buf); + } else { + strcat(strcat(tmp2, "/"), buf); + } + strcat(strcat(tmp, "/"), name); + printf + ("\n", + xml_escape_the_name(name), + xml_escape_the_name(buf), + xml_escape_the_name(tmp2), + xml_escape_the_name(tmp), + (strcmp(prefix, "") ? xml_escape_the_name(prefix) : "root")); + free(tmp2); } + } else { + fflush(stdout); + fprintf(stderr, "h5dump error: unable to get link value\n"); + d_status = EXIT_FAILURE; } if (!doxml) { @@ -1309,15 +1287,15 @@ dump_all(hid_t group, const char *name, void * op_data) break; case H5G_GROUP: - if ((obj = H5Gopen(group, name)) < 0) { - error_msg(progname, "unable to dump group \"%s\"\n", name); - d_status = EXIT_FAILURE; - ret = FAIL; - } else { + if ((obj = H5Gopen(group, name)) >= 0) { strcat(strcat(prefix, "/"), name); dump_function_table->dump_group_function(obj, name); strcpy(prefix, tmp); H5Gclose(obj); + } else { + fflush(stdout); + fprintf(stderr, "h5dump error: unable to dump group \"%s\"\n", name); + d_status = EXIT_FAILURE; } break; @@ -1335,14 +1313,12 @@ dump_all(hid_t group, const char *name, void * op_data) begin_obj(dump_header_format->datasetbegin, name, dump_header_format->datasetblockbegin); indentation(indent + COL); - error_msg(progname, - "internal error (file %s:line %d)\n", - __FILE__, __LINE__); + fflush(stdout); + fprintf(stderr, "h5dump error: internal error (line %d)\n", __LINE__); indentation(indent); end_obj(dump_header_format->datasetend, dump_header_format->datasetblockend); d_status = EXIT_FAILURE; - ret = FAIL; H5Dclose(obj); goto done; } else if (dset_table->objs[i].displayed) { @@ -1358,26 +1334,20 @@ dump_all(hid_t group, const char *name, void * op_data) dump_header_format->datasetblockend); } else { /* the XML version */ - char *t_name = xml_escape_the_name(name); - char *t_tmp = xml_escape_the_name(strcat(strcat(tmp, "/"), name)); - char *t_prefix = xml_escape_the_name(prefix); - char *t_objname = xml_escape_the_name(dset_table->objs[i].objname); - - printf("\n", - t_name, t_tmp, - (strcmp(prefix, "") ? t_prefix : "root")); + strcat(strcat(tmp, "/"), name); + printf + ("\n", + xml_escape_the_name(name), + xml_escape_the_name(tmp), + (strcmp(prefix, "") ? xml_escape_the_name(prefix) + : "root")); indentation(indent + COL); - printf("\n", t_objname); + printf("\n", + xml_escape_the_name(dset_table->objs[i].objname)); indentation(indent); printf("%s\n", dump_header_format->datasetend); - - free(t_name); - free(t_tmp); - free(t_prefix); - free(t_objname); } - H5Dclose(obj); goto done; } else { @@ -1391,34 +1361,34 @@ dump_all(hid_t group, const char *name, void * op_data) dump_function_table->dump_dataset_function(obj, name); H5Dclose(obj); } else { - error_msg(progname, "unable to dump dataset \"%s\"\n", name); + fflush(stdout); + fprintf(stderr, "h5dump error: unable to dump dataset \"%s\"\n", name); d_status = EXIT_FAILURE; - ret = FAIL; } - break; case H5G_TYPE: - if ((obj = H5Topen(group, name)) < 0) { - error_msg(progname, "unable to dump data type \"%s\"\n", name); - d_status = EXIT_FAILURE; - ret = FAIL; - } else { + if ((obj = H5Topen(group, name)) >= 0) { dump_function_table->dump_named_datatype_function(obj, name); H5Tclose(obj); + } else { + fflush(stdout); + fprintf(stderr, "h5dump error: unable to dump data type \"%s\"\n", name); + d_status = EXIT_FAILURE; } break; default: - error_msg(progname, "unknown object \"%s\"\n", name); + fflush(stdout); + fprintf(stderr, "h5dump error: unknown object \"%s\"\n", name); d_status = EXIT_FAILURE; - ret = FAIL; + return FAIL; } -done: + done: free(tmp); - return ret; + return SUCCEED; } /*------------------------------------------------------------------------- @@ -1442,7 +1412,7 @@ dump_named_datatype(hid_t type, const char *name) dump_header_format->datatypeblockbegin); if (H5Tget_class(type) == H5T_COMPOUND) { - hid_t temp_type = H5Tcopy(type); + hid_t temp_type = H5Tcopy(type); print_datatype(temp_type); H5Tclose(temp_type); @@ -1475,10 +1445,11 @@ dump_named_datatype(hid_t type, const char *name) static void dump_group(hid_t gid, const char *name) { - H5G_stat_t statbuf; - hid_t dset, type; - char typename[1024], *tmp; - int i, xtype = H5G_UNKNOWN; /* dump all */ + H5G_stat_t statbuf; + hid_t dset, type; + char typename[1024], *tmp; + int i; + int xtype = H5G_UNKNOWN; /* dump all */ tmp = malloc(strlen(prefix) + strlen(name) + 2); strcpy(tmp, prefix); @@ -1511,8 +1482,8 @@ dump_group(hid_t gid, const char *name) if (i < 0) { indentation(indent); - error_msg(progname, "internal error (file %s:line %d)\n", - __FILE__, __LINE__); + fflush(stdout); + fprintf(stderr, "h5dump error: internal error (line %d)\n", __LINE__); d_status = EXIT_FAILURE; } else if (group_table->objs[i].displayed) { indentation(indent); @@ -1550,7 +1521,7 @@ dump_group(hid_t gid, const char *name) static void dump_dataset(hid_t did, const char *name) { - hid_t type, space; + hid_t type, space; indentation(indent); begin_obj(dump_header_format->datasetbegin, name, @@ -1597,6 +1568,7 @@ dump_dataset(hid_t did, const char *name) dump_header_format->datasetblockend); } +#if H5DUMP_DEBUG /*------------------------------------------------------------------------- * Function: dump_tables * @@ -1613,8 +1585,7 @@ dump_dataset(hid_t did, const char *name) static void dump_tables(void) { -#ifdef H5DUMP_DEBUG - register int i; + int i; printf("group_table: # of entries = %d\n", group_table->nobjs); @@ -1639,10 +1610,8 @@ dump_tables(void) type_table->objs[i].objno[1], type_table->objs[i].objname, type_table->objs[i].displayed, type_table->objs[i].recorded); -#else - return; -#endif /* H5DUMP_DEBUG */ } +#endif /* H5DUMP_DEBUG */ /*------------------------------------------------------------------------- * Function: dump_data @@ -1712,7 +1681,8 @@ dump_data(hid_t obj_id, int obj_data) if (status < 0) { indentation(indent + COL); - error_msg(progname, "unable to print data\n"); + fflush(stdout); + fprintf(stderr, "h5dump error: unable to print data\n"); d_status = EXIT_FAILURE; } @@ -1760,7 +1730,7 @@ static int set_output_file(const char *fname) { FILE *f; /* temporary holding place for the stream pointer - * so that rawdatastream is changed only when succeeded */ + so that rawdatastream is changed only when succeeded */ if ((f = fopen(fname, "w")) != NULL) { rawdatastream = f; @@ -1785,7 +1755,7 @@ set_output_file(const char *fname) *------------------------------------------------------------------------- */ static void -handle_attributes(hid_t fid, char *attr, void UNUSED *data) +handle_attributes(hid_t fid, char *attr) { dump_selected_attr(fid, attr); } @@ -1815,9 +1785,9 @@ handle_attributes(hid_t fid, char *attr, void UNUSED *data) static hsize_t * parse_hsize_list(const char *h_list) { - hsize_t *p_list; - const char *ptr; - unsigned int size_count = 0, i = 0, last_digit = 0; + hsize_t *p_list; + const char *ptr; + unsigned int size_count = 0, i = 0, last_digit = 0; if (!h_list || !*h_list || *h_list == ';') return NULL; @@ -1874,7 +1844,7 @@ static struct subset_t * parse_subset_params(char *dset) { struct subset_t *s = NULL; - register char *brace; + register char *brace; if ((brace = strrchr(dset, '[')) != NULL) { char *slash = strrchr(dset, '/'); @@ -1934,17 +1904,17 @@ parse_subset_params(char *dset) *------------------------------------------------------------------------- */ static void -handle_datasets(hid_t fid, char *dset, void *data) +handle_datasets(hid_t fid, char *dset) { - H5G_stat_t statbuf; - hid_t dsetid; - struct subset_t *sset = (struct subset_t *)data; + H5G_stat_t statbuf; + hid_t dsetid; if ((dsetid = H5Dopen(fid, dset)) < 0) { begin_obj(dump_header_format->datasetbegin, dset, dump_header_format->datasetblockbegin); indentation(COL); - error_msg(progname, "unable to open dataset \"%s\"\n", dset); + fflush(stdout); + fprintf(stderr, "h5dump error: unable to open dataset \"%s\"\n", dset); end_obj(dump_header_format->datasetend, dump_header_format->datasetblockend); d_status = EXIT_FAILURE; @@ -1996,16 +1966,17 @@ handle_datasets(hid_t fid, char *dset, void *data) *------------------------------------------------------------------------- */ static void -handle_groups(hid_t fid, char *group, void UNUSED *data) +handle_groups(hid_t fid, char *group) { - H5G_stat_t statbuf; - hid_t gid; + H5G_stat_t statbuf; + hid_t gid; if ((gid = H5Gopen(fid, group)) < 0) { begin_obj(dump_header_format->groupbegin, group, dump_header_format->groupblockbegin); indentation(COL); - error_msg(progname, "unable to open group \"%s\"\n", group); + fflush(stdout); + fprintf(stderr, "h5dump error: unable to open group \"%s\"\n", group); end_obj(dump_header_format->groupend, dump_header_format->groupblockend); d_status = EXIT_FAILURE; @@ -2034,15 +2005,16 @@ handle_groups(hid_t fid, char *group, void UNUSED *data) *------------------------------------------------------------------------- */ static void -handle_links(hid_t fid, char *links, void UNUSED *data) +handle_links(hid_t fid, char *links) { - H5G_stat_t statbuf; + H5G_stat_t statbuf; if (H5Gget_objinfo(fid, links, FALSE, &statbuf) < 0) { begin_obj(dump_header_format->softlinkbegin, links, dump_header_format->softlinkblockbegin); indentation(COL); - error_msg(progname, "unable to get obj info from \"%s\"\n", links); + fflush(stdout); + fprintf(stderr, "h5dump error: unable to get obj info from \"%s\"\n", links); end_obj(dump_header_format->softlinkend, dump_header_format->softlinkblockend); d_status = EXIT_FAILURE; @@ -2056,8 +2028,9 @@ handle_links(hid_t fid, char *links, void UNUSED *data) if (H5Gget_linkval(fid, links, statbuf.linklen, buf) >= 0) { printf("LINKTARGET \"%s\"\n", buf); } else { - error_msg(progname, "h5dump error: unable to get link value for \"%s\"\n", - links); + fflush(stdout); + fprintf(stderr, "h5dump error: unable to get link value for \"%s\"\n", + links); d_status = EXIT_FAILURE; } @@ -2068,7 +2041,8 @@ handle_links(hid_t fid, char *links, void UNUSED *data) begin_obj(dump_header_format->softlinkbegin, links, dump_header_format->softlinkblockbegin); indentation(COL); - error_msg(progname, "\"%s\" is not a link\n", links); + fflush(stdout); + fprintf(stderr, "h5dump error: \"%s\" is not a link\n", links); end_obj(dump_header_format->softlinkend, dump_header_format->softlinkblockend); d_status = EXIT_FAILURE; @@ -2090,9 +2064,9 @@ handle_links(hid_t fid, char *links, void UNUSED *data) *------------------------------------------------------------------------- */ static void -handle_datatypes(hid_t fid, char *type, void UNUSED *data) +handle_datatypes(hid_t fid, char *type) { - hid_t typeid; + hid_t typeid; if ((typeid = H5Topen(fid, type)) < 0) { /* check if type is unamed data type */ @@ -2123,7 +2097,8 @@ handle_datatypes(hid_t fid, char *type, void UNUSED *data) begin_obj(dump_header_format->datatypebegin, type, dump_header_format->datatypeblockbegin); indentation(COL); - error_msg(progname, "unable to open datatype \"%s\"\n", type); + fflush(stdout); + fprintf(stderr, "h5dump error: unable to open datatype \"%s\"\n", type); end_obj(dump_header_format->datatypeend, dump_header_format->datatypeblockend); d_status = EXIT_FAILURE; @@ -2142,36 +2117,59 @@ handle_datatypes(hid_t fid, char *type, void UNUSED *data) } } - /*------------------------------------------------------------------------- - * Function: parse_command_line - * - * Purpose: Parse the command line for the h5dumper. + * Function: main * - * Return: Success: A pointer to an array of handler_t structures. - * These contain all the information needed to dump - * the necessary object. + * Purpose: HDF5 dumper * - * Failure: Exits program with EXIT_FAILURE value. + * Return: Success: 0 + * Failure: 1 * - * Programmer: Bill Wendling - * Tuesday, 20. February 2001 + * Programmer: Ruey-Hsia Li * * Modifications: + * Albert Cheng, 30. September 2000 + * Add the -o option--output file for datasets raw data + * + * REMcG, November 2000 + * Changes to support XML. + * + * Bill Wendling + * Wednesday, 10. January 2001 + * Modified the way command line parameters are interpreted. They go + * through one function call now (get_option). * *------------------------------------------------------------------------- */ -static struct handler_t * -parse_command_line(int argc, const char *argv[]) +int +main(int argc, const char *argv[]) { + hid_t fid, gid; + const char *progname = "h5dump"; + const char *fname = NULL; + int i, display_bb = 0, display_all = 1, newwidth = 0; + void *edata; + hid_t (*func)(void*); + find_objs_t info; + int opt; struct handler_t *hand, *last_dset; - int i, opt, last_was_dset = FALSE; + int usingdasho = FALSE, last_was_dset = FALSE; if (argc < 2) { usage(progname); exit(EXIT_FAILURE); } + dump_header_format = &standardformat; + dump_function_table = &ddl_function_table; + + /* Disable error reporting */ + H5Eget_auto(&func, &edata); + H5Eset_auto(NULL, NULL); + + /* Initialize h5tools lib */ + h5tools_init(); + /* this will be plenty big enough to hold the info */ hand = calloc((size_t)argc, sizeof(struct handler_t)); @@ -2293,17 +2291,14 @@ parse_start: struct subset_t *s; if (!last_was_dset) { - error_msg(progname, - "option `-%c' can only be used after --dataset option\n", - opt); + fprintf(stderr, "%s error: option `-%c' can only be used after --dataset option\n", + progname, opt); exit(EXIT_FAILURE); } if (last_dset->subset_info) { - /* - * This overrides the "terse" syntax if they actually mixed - * the two. - */ + /* this overrides the "terse" syntax if they actually mixed + * the two */ s = last_dset->subset_info; } else { last_dset->subset_info = s = calloc(1, sizeof(struct subset_t)); @@ -2314,11 +2309,11 @@ parse_start: * for subsetting: "--start", "--stride", "--count", and "--block" * which can come in any order. If we run out of parameters (EOF) * or run into one which isn't a subsetting parameter (NOT s, T, - * c, or K), then we exit the do-while look, set the subset_info + * c, or K), then we exit the do-while look, set hte subset_info * to the structure we've been filling. If we've reached the end * of the options, we exit the parsing (goto parse_end) otherwise, * since we've "read" the next option, we need to parse it. So we - * jump to the beginning of the switch statement (goto parse_start). + * just to the beginning of the switch statement (goto parse_start). */ do { switch ((char)opt) { @@ -2351,135 +2346,44 @@ end_collect: } parse_end: - return hand; -} - - -/*------------------------------------------------------------------------- - * Function: free_handler - * - * Purpose: Convenience function to free the handler_t structures. Needs a - * length variable (LEN) to know how many in the array it needs - * to free - * - * Return: Nothing - * - * Programmer: Bill Wendling - * Tuesday, 20. February 2001 - * - * Modifications: - * - *------------------------------------------------------------------------- - */ -static void -free_handler(struct handler_t *hand, int len) -{ - register int i; - - for (i = 0; i < len; i++) { - free(hand[i].obj); - - if (hand[i].subset_info) { - free(hand[i].subset_info->start); - free(hand[i].subset_info->stride); - free(hand[i].subset_info->count); - free(hand[i].subset_info->block); - free(hand[i].subset_info); - } - } - - free(hand); -} - -/*------------------------------------------------------------------------- - * Function: main - * - * Purpose: HDF5 dumper - * - * Return: Success: 0 - * Failure: 1 - * - * Programmer: Ruey-Hsia Li - * - * Modifications: - * Albert Cheng - * 30. September 2000 - * Add the -o option--output file for datasets raw data - * - * REMcG - * November 2000 - * Changes to support XML. - * - * Bill Wendling - * Wednesday, 10. January 2001 - * Modified the way command line parameters are interpreted. They go - * through one function call now (get_option). - * - * Bill Wendling - * Tuesday, 20. February 2001 - * Moved command line parsing to separate function. Made various - * "display_*" flags global. - * - *------------------------------------------------------------------------- - */ -int -main(int argc, const char *argv[]) -{ - hid_t fid, gid; - const char *fname = NULL; - void *edata; - hid_t (*func)(void*); - find_objs_t info; - struct handler_t *hand; - int i; - - if (argc < 2) { - usage(progname); - exit(EXIT_FAILURE); - } - - dump_header_format = &standardformat; - dump_function_table = &ddl_function_table; - - /* Disable error reporting */ - H5Eget_auto(&func, &edata); - H5Eset_auto(NULL, NULL); - - /* Initialize h5tools lib */ - h5tools_init(); - hand = parse_command_line(argc, argv); - - /* Check for conflicting options */ + /* check for conflicting options */ if (doxml) { if (!display_all) { - error_msg(progname, "option \"%s\" not available for XML\n", - "to display selected objects"); + fflush(stdout); + fprintf(stderr, "h5dump error: option \"%s\" not available for XML\n", + "to display selected objects"); exit(EXIT_FAILURE); } else if (display_bb) { - error_msg(progname, "option \"%s\" not available for XML\n", - "--boot-block"); + fflush(stdout); + fprintf(stderr, "h5dump error: option \"%s\" not available for XML\n", + "--boot-block"); exit(EXIT_FAILURE); } else if (!display_data) { - error_msg(progname, "option \"%s\" not available for XML\n", - "--header"); + fflush(stdout); + fprintf(stderr, "h5dump error: option \"%s\" not available for XML\n", + "--header"); exit(EXIT_FAILURE); } else if (display_oid == 1) { - error_msg(progname, "option \"%s\" not available for XML\n", - "--object-ids"); + fflush(stdout); + fprintf(stderr, "h5dump error: option \"%s\" not available for XML\n", + "--object-ids"); exit(EXIT_FAILURE); } else if (usingdasho) { - error_msg(progname, "option \"%s\" not available for XML\n", - "--output"); + fflush(stdout); + fprintf(stderr, "h5dump error: option \"%s\" not available for XML\n", + "--output"); exit(EXIT_FAILURE); } } else { - if (xml_dtd_uri) { - warn_msg(progname, "option \"%s\" only applies with XML: %s\n", - "--xml-dtd", xml_dtd_uri); + if (xml_dtd_uri != NULL) { + fflush(stdout); + fprintf(stderr, + "h5dump warning: option \"%s\" only applies with XML: %s\n", + "--xml-dtd", xml_dtd_uri); } } - if (argv[opt_ind][0] == '\\') + if (argv[argc - 1][0] == '\\') fname = &argv[opt_ind][1]; else fname = argv[opt_ind]; @@ -2487,7 +2391,8 @@ main(int argc, const char *argv[]) fid = h5dump_fopen(fname, NULL, 0); if (fid < 0) { - error_msg(progname, "unable to open file \"%s\"\n", fname); + fflush(stdout); + fprintf(stderr, "h5dump error: unable to open file \"%s\"\n", fname); exit(EXIT_FAILURE); } @@ -2512,7 +2417,8 @@ main(int argc, const char *argv[]) /* find all objects that might be targets of a refernce */ if ((gid = H5Gopen(fid, "/")) < 0) { - error_msg(progname, "unable to open root group\n"); + fflush(stdout); + fprintf(stderr, "h5dump error: unable to open root group\n"); d_status = EXIT_FAILURE; goto done; } @@ -2537,11 +2443,13 @@ main(int argc, const char *argv[]) if (type_table->objs[i].recorded == 0) unamedtype = 1; +#ifdef H5DUMP_DEBUG dump_tables(); +#endif /* H5DUMP_DEBUG */ if (info.status) { - error_msg(progname, "internal error (file %s:line %d)\n", - __FILE__, __LINE__); + fflush(stdout); + fprintf(stderr, "h5dump error: internal error (line %d)\n", __LINE__); d_status = EXIT_FAILURE; goto done; } @@ -2560,30 +2468,35 @@ main(int argc, const char *argv[]) if (display_bb) dump_bb(); + if (newwidth) + sscanf(argv[newwidth + 1], "%d", &nCols); + if (display_all) { - if ((gid = H5Gopen(fid, "/")) < 0) { - error_msg(progname, "unable to open root group\n"); + if ((gid = H5Gopen (fid, "/")) < 0 ) { + fflush(stdout); + fprintf(stderr, "h5dump error: unable to open root group\n"); d_status = EXIT_FAILURE; } else { dump_function_table->dump_group_function(gid, "/"); } - if (H5Gclose(gid) < 0) { - error_msg(progname, "unable to close root group\n"); + if (H5Gclose (gid) < 0) { + fflush(stdout); + fprintf(stderr, "h5dump error: unable to close root group\n"); d_status = EXIT_FAILURE; } } else { if (doxml) { - /* Note: this option is not supported for XML */ - error_msg(progname, "internal error (file %s:line %d)\n", - __FILE__, __LINE__); + /* Note: this option is not supported for XML */ + fflush(stdout); + fprintf(stderr, "h5dump error: internal error (line %d)\n", __LINE__); d_status = EXIT_FAILURE; goto done; } for (i = 0; i < argc; i++) if (hand[i].func) - hand[i].func(fid, hand[i].obj, hand[i].subset_info); + hand[i].func(fid, hand[i].obj); } if (!doxml) { @@ -2597,7 +2510,19 @@ done: if (H5Fclose(fid) < 0) d_status = EXIT_FAILURE; - free_handler(hand, argc); + for (i = 0; i < argc; i++) { + free(hand[i].obj); + + if (hand[i].subset_info) { + free(hand[i].subset_info->start); + free(hand[i].subset_info->stride); + free(hand[i].subset_info->count); + free(hand[i].subset_info->block); + free(hand[i].subset_info); + } + } + + free(hand); free(group_table->objs); free(dset_table->objs); @@ -2920,17 +2845,13 @@ fill_ref_path_table(hid_t group, const char *name, void UNUSED * op_data) H5Gget_objinfo(group, name, FALSE, &statbuf); tmp = (char *) malloc(strlen(prefix) + strlen(name) + 2); - if (tmp == NULL) return FAIL; - thepath = (char *) malloc(strlen(prefix) + strlen(name) + 2); - if (thepath == NULL) { free(tmp); return FAIL; } - strcpy(tmp, prefix); strcpy(thepath, prefix); @@ -2946,7 +2867,8 @@ fill_ref_path_table(hid_t group, const char *name, void UNUSED * op_data) } H5Dclose(obj); } else { - error_msg(progname, "unable to get dataset \"%s\"\n", name); + fflush(stdout); + fprintf(stderr, "h5dump error: unable to get dataset \"%s\"\n", name); d_status = EXIT_FAILURE; } break; @@ -2961,7 +2883,8 @@ fill_ref_path_table(hid_t group, const char *name, void UNUSED * op_data) } H5Gclose(obj); } else { - error_msg(progname, "unable to dump group \"%s\"\n", name); + fflush(stdout); + fprintf(stderr, "h5dump error: unable to dump group \"%s\"\n", name); d_status = EXIT_FAILURE; } break; @@ -2973,13 +2896,13 @@ fill_ref_path_table(hid_t group, const char *name, void UNUSED * op_data) } H5Tclose(obj); } else { - error_msg(progname, "unable to get dataset \"%s\"\n", name); + fflush(stdout); + fprintf(stderr, "h5dump error: unable to get dataset \"%s\"\n", name); d_status = EXIT_FAILURE; } break; default:; } - free(tmp); free(thepath); return 0; @@ -3015,7 +2938,7 @@ xml_escape_the_name(const char *str) char *ncp; char *rcp; - if (!str) + if (str == NULL) return NULL; cp = str; @@ -3034,47 +2957,44 @@ xml_escape_the_name(const char *str) } else if (*cp == '&') { extra += (strlen(amp) - 1); } - cp++; } - if (extra == 0) - return strdup(str); - - cp = str; - rcp = ncp = calloc((size_t)(len + extra + 1), sizeof(char)); - - if (!ncp) - return NULL; /* ?? */ - - for (i = 0; i < len; i++) { - if (*cp == '\'') { - strncpy(ncp, apos, strlen(apos)); - ncp += strlen(apos); - cp++; - } else if (*cp == '<') { - strncpy(ncp, lt, strlen(lt)); - ncp += strlen(lt); - cp++; - } else if (*cp == '>') { - strncpy(ncp, gt, strlen(gt)); - ncp += strlen(gt); - cp++; - } else if (*cp == '\"') { - strncpy(ncp, quote, strlen(quote)); - ncp += strlen(quote); - cp++; - } else if (*cp == '&') { - strncpy(ncp, amp, strlen(amp)); - ncp += strlen(amp); - cp++; - } else { - *ncp++ = *cp++; - } + if (extra == 0) { + return (char *) str; + } else { + cp = str; + rcp = ncp = calloc((size_t)(len + extra + 1), sizeof(char)); + if (ncp == NULL) + return NULL; /* ?? */ + for (i = 0; i < len; i++) { + if (*cp == '\'') { + strncpy(ncp, apos, strlen(apos)); + ncp += strlen(apos); + cp++; + } else if (*cp == '<') { + strncpy(ncp, lt, strlen(lt)); + ncp += strlen(lt); + cp++; + } else if (*cp == '>') { + strncpy(ncp, gt, strlen(gt)); + ncp += strlen(gt); + cp++; + } else if (*cp == '\"') { + strncpy(ncp, quote, strlen(quote)); + ncp += strlen(quote); + cp++; + } else if (*cp == '&') { + strncpy(ncp, amp, strlen(amp)); + ncp += strlen(amp); + cp++; + } else { + *ncp++ = *cp++; + } + } + *ncp = '\0'; + return rcp; } - - *ncp = '\0'; - return rcp; } /*------------------------------------------------------------------------- @@ -3101,18 +3021,16 @@ xml_escape_the_string(const char *str, int slen) char *ncp; char *rcp; - if (!str) + if (str == NULL) return NULL; cp = str; - - if (slen < 0) + if (slen < 0) { len = strlen(str); - else + } else { len = slen; - + } extra = 0; - for (i = 0; i < len; i++) { if (*cp == '\\') { extra++; @@ -3132,10 +3050,8 @@ xml_escape_the_string(const char *str, int slen) cp = str; rcp = ncp = calloc((size_t)(len + extra + 1), sizeof(char)); - if (ncp == NULL) return NULL; /* ?? */ - for (i = 0; i < len; i++) { if (*cp == '\\') { *ncp++ = '\\'; @@ -3163,7 +3079,6 @@ xml_escape_the_string(const char *str, int slen) *ncp++ = *cp++; } } - *ncp = '\0'; return rcp; } @@ -3254,7 +3169,7 @@ xml_print_datatype(hid_t type) /* */ + MatissaBits="mb" MatissaLocation="ml" /> */ ord = H5Tget_order(type); indentation(indent); printf("\n"); @@ -3381,15 +3296,17 @@ xml_print_datatype(hid_t type) if (!type_table->objs[i].recorded) { /* 'anonymous' NDT. Use it's object num. as it's name. */ - printf("\n", + printf("objs[i].objno[0], type_table->objs[i].objno[1]); + printf("\"/>\n"); } else { /* point to the NDT by name */ - char *t_objname = xml_escape_the_name(type_table->objs[i].objname); - - printf("\n", t_objname); - free(t_objname); + printf("objs[i].objname)); + printf("\"/>\n"); } } else { printf("\n"); @@ -3408,16 +3325,13 @@ xml_print_datatype(hid_t type) /* */ indent += COL; for (i = 0; i < nmembers; i++) { - char *t_fname; - fname = H5Tget_member_name(type, i); mtype = H5Tget_member_type(type, i); indentation(indent); - t_fname = xml_escape_the_name(fname); - printf("\n", t_fname); + printf("\n", + xml_escape_the_name(fname)); free(fname); - free(t_fname); indent += COL; indentation(indent); printf("\n"); @@ -3578,15 +3492,17 @@ xml_dump_datatype(hid_t type) practice: use it's object ref as its name */ - printf("\n", + printf("objs[i].objno[0], type_table->objs[i].objno[1]); + printf("\"/>\n"); } else { /* pointer to a named data type already in XML */ - char *t_objname = xml_escape_the_name(type_table->objs[i].objname); - - printf("\n", t_objname); - free(t_objname); + printf("objs[i].objname)); + printf("\"/>\n"); } } else { printf("\n"); @@ -3696,6 +3612,7 @@ xml_dump_data(hid_t obj_id, int obj_data) int stdindent = COL; /* should be 3 */ outputformat->line_ncols = nCols; + indent += COL; /* @@ -3791,12 +3708,10 @@ xml_dump_data(hid_t obj_id, int obj_data) static herr_t xml_dump_attr(hid_t attr, const char *attr_name, void UNUSED * op_data) { - hid_t attr_id, type, space; - char *t_aname = xml_escape_the_name(attr_name); + hid_t attr_id, type, space; indentation(indent); - printf("\n", t_aname); - free(t_aname); + printf("\n", xml_escape_the_name(attr_name)); if ((attr_id = H5Aopen_name(attr, attr_name)) >= 0) { type = H5Aget_type(attr_id); @@ -3814,7 +3729,8 @@ xml_dump_attr(hid_t attr, const char *attr_name, void UNUSED * op_data) case H5T_OPAQUE: case H5T_ENUM: case H5T_ARRAY: - dump_function_table->dump_data_function(attr_id, ATTRIBUTE_DATA); + dump_function_table->dump_data_function(attr_id, + ATTRIBUTE_DATA); break; case H5T_TIME: @@ -3832,8 +3748,10 @@ xml_dump_attr(hid_t attr, const char *attr_name, void UNUSED * op_data) case H5T_COMPOUND: indentation(indent); - printf("\n"); - dump_function_table->dump_data_function(attr_id, ATTRIBUTE_DATA); + printf + ("\n"); + dump_function_table->dump_data_function(attr_id, + ATTRIBUTE_DATA); break; case H5T_REFERENCE: @@ -3850,7 +3768,8 @@ xml_dump_attr(hid_t attr, const char *attr_name, void UNUSED * op_data) case H5T_VLEN: printf("\n"); - dump_function_table->dump_data_function(attr_id, ATTRIBUTE_DATA); + dump_function_table->dump_data_function(attr_id, + ATTRIBUTE_DATA); break; default: indentation(indent); @@ -3912,7 +3831,7 @@ xml_dump_named_datatype(hid_t type, const char *name) char *fname; char *tmp; - tmp = malloc(strlen(prefix) + strlen(name) + 2); + tmp = (char *) malloc(strlen(prefix) + strlen(name) + 2); strcpy(tmp, prefix); strcat(tmp, "/"); strcat(tmp, name); @@ -3927,28 +3846,18 @@ xml_dump_named_datatype(hid_t type, const char *name) in the event we want to do something else in the future. */ - char *t_tmp = xml_escape_the_name(tmp); - char *t_prefix = xml_escape_the_name(prefix); - printf("\n", - name, t_tmp, (strcmp(prefix, "") ? t_prefix : "root")); - free(t_tmp); - free(t_prefix); + name, + xml_escape_the_name(tmp), + (strcmp(prefix, "") ? xml_escape_the_name(prefix) : "root")); } else { - char *t_name = xml_escape_the_name(name); - char *t_prefix = xml_escape_the_name(prefix); - char *t_tmp = xml_escape_the_name(tmp); - printf("\n", - t_name, t_tmp, (strcmp(prefix, "") ? t_prefix : "root")); - - free(t_name); - free(t_prefix); - free(t_tmp); + xml_escape_the_name(name), + xml_escape_the_name(tmp), + (strcmp(prefix, "") ? xml_escape_the_name(prefix) : "root")); } indent += COL; - if (H5Tget_class(type) == H5T_COMPOUND) { /* Dump this here for sure. */ nmembers = H5Tget_nmembers(type); @@ -3958,15 +3867,11 @@ xml_dump_named_datatype(hid_t type, const char *name) indent += COL; for (x = 0; x < nmembers; x++) { - char *t_fname; - fname = H5Tget_member_name(type, x); mtype = H5Tget_member_type(type, x); indentation(indent); - t_fname = xml_escape_the_name(fname); - printf("\n", t_fname); + printf("\n", xml_escape_the_name(fname)); free(fname); - free(t_fname); if ((H5Tget_class(mtype) == H5T_COMPOUND) || (H5Tget_class(mtype) == H5T_VLEN) @@ -4055,23 +3960,15 @@ xml_dump_group(hid_t gid, const char *name) } } } - indentation(indent); - if (isRoot) { printf("\n"); } else { - char *t_name = xml_escape_the_name(name); - char *t_tmp = xml_escape_the_name(tmp); - char *t_par = xml_escape_the_name(par); - printf("\n", - t_name, t_tmp, (strcmp(prefix, "") ? t_par : "root")); - free(t_name); - free(t_tmp); - free(t_par); + xml_escape_the_name(name), + xml_escape_the_name(tmp), + (strcmp(prefix, "") ? xml_escape_the_name(par) : "root")); } - indent += COL; H5Gget_objinfo(gid, ".", TRUE, &statbuf); @@ -4081,16 +3978,13 @@ xml_dump_group(hid_t gid, const char *name) if (i < 0) { indentation(indent); - error_msg(progname, "internal error (file %s:line %d)\n", - __FILE__, __LINE__); + fprintf(stderr, "h5dump error: internal error (line %d)\n", __LINE__); d_status = EXIT_FAILURE; } else if (group_table->objs[i].displayed) { /* already seen: enter a groupptr */ - char *t_objname = xml_escape_the_name(group_table->objs[i].objname); - indentation(indent + COL); - printf("\n", t_objname); - free(t_objname); + printf("\n", + xml_escape_the_name(group_table->objs[i].objname)); } else { /* first time this group has been seen -- describe it */ strcpy(group_table->objs[i].objname, prefix); @@ -4100,6 +3994,11 @@ xml_dump_group(hid_t gid, const char *name) H5Aiterate(gid, NULL, dump_function_table->dump_attribute_function, NULL); + /* iterate through all the members */ + xtype = H5G_GROUP; + H5Giterate(gid, ".", NULL, dump_all, (void *) &xtype); + xtype = H5G_DATASET; + H5Giterate(gid, ".", NULL, dump_all, (void *) &xtype); if (!strcmp(name, "/") && unamedtype) { /* Very special case: dump unamed type in root group */ for (i = 0; i < type_table->nobjs; i++) { @@ -4109,28 +4008,28 @@ xml_dump_group(hid_t gid, const char *name) sprintf(typename, "#%lu:%lu", type_table->objs[i].objno[0], type_table->objs[i].objno[1]); - dump_function_table->dump_named_datatype_function(type, typename); + dump_function_table->dump_named_datatype_function + (type, typename); H5Tclose(type); H5Dclose(dset); } } } - - /* iterate through all the members */ xtype = H5G_TYPE; H5Giterate(gid, ".", NULL, dump_all, (void *) &xtype); - xtype = H5G_DATASET; - H5Giterate(gid, ".", NULL, dump_all, (void *) &xtype); xtype = H5G_LINK; H5Giterate(gid, ".", NULL, dump_all, (void *) &xtype); - xtype = H5G_GROUP; - H5Giterate(gid, ".", NULL, dump_all, (void *) &xtype); } } else { /* 1. do all the attributes of the group */ H5Aiterate(gid, NULL, dump_function_table->dump_attribute_function, NULL); + /* iterate through all the members */ + xtype = H5G_GROUP; + H5Giterate(gid, ".", NULL, dump_all, (void *) &xtype); + xtype = H5G_DATASET; + H5Giterate(gid, ".", NULL, dump_all, (void *) &xtype); if (!strcmp(name, "/") && unamedtype) { /* Very special case: dump unamed type in root group */ for (i = 0; i < type_table->nobjs; i++) { @@ -4140,22 +4039,17 @@ xml_dump_group(hid_t gid, const char *name) sprintf(typename, "#%lu:%lu", type_table->objs[i].objno[0], type_table->objs[i].objno[1]); - dump_function_table->dump_named_datatype_function(type, typename); + dump_function_table->dump_named_datatype_function(type, + typename); H5Tclose(type); H5Dclose(dset); } } } - - /* iterate through all the members */ xtype = H5G_TYPE; H5Giterate(gid, ".", NULL, dump_all, (void *) &xtype); - xtype = H5G_DATASET; - H5Giterate(gid, ".", NULL, dump_all, (void *) &xtype); xtype = H5G_LINK; H5Giterate(gid, ".", NULL, dump_all, (void *) &xtype); - xtype = H5G_GROUP; - H5Giterate(gid, ".", NULL, dump_all, (void *) &xtype); } indent -= COL; @@ -4250,19 +4144,13 @@ xml_print_refs(hid_t did, int source) for (i = 0; i < ssiz; i++) { path = lookup_ref_path(refbuf); indentation(indent + COL); - - if (!path) { + if (path == NULL) { printf("\"%s\"\n", "NULL"); } else { - char *t_path = xml_escape_the_string(path, -1); - - printf("\"%s\"\n", t_path); - free(t_path); + printf("\"%s\"\n", xml_escape_the_string(path, -1)); } - refbuf++; } - return SUCCEED; } @@ -4346,16 +4234,11 @@ xml_print_strs(hid_t did, int source) for (i = 0; i < ssiz; i++) { strncpy(onestring, bp, tsiz); indentation(indent + COL); - - if (!onestring) { + if (onestring == NULL) { printf("\"%s\"\n", "NULL"); } else { - char *t_onestring = xml_escape_the_string(onestring, (int)tsiz); - printf("\"%s\"\n", xml_escape_the_string(onestring, (int)tsiz)); - free(t_onestring); } - bp += tsiz; } return SUCCEED; @@ -4429,24 +4312,15 @@ xml_dump_dataset(hid_t did, const char *name) int ndims; int i; char *tmp; - char *t_name, *t_tmp, *t_prefix; - tmp = malloc(strlen(prefix) + strlen(name) + 2); + tmp = (char *) malloc(strlen(prefix) + strlen(name) + 2); strcpy(tmp, prefix); strcat(tmp, "/"); strcat(tmp, name); indentation(indent); - - t_name = xml_escape_the_name(name); - t_tmp = xml_escape_the_name(tmp); - t_prefix = xml_escape_the_name(prefix); - printf("\n", - t_name, t_tmp, (strcmp(prefix, "") ? t_prefix : "root")); - - free(t_name); - free(t_tmp); - free(t_prefix); + xml_escape_the_name(name), xml_escape_the_name(tmp), + (strcmp(prefix, "") ? xml_escape_the_name(prefix) : "root")); dcpl = H5Dget_create_plist(did); type = H5Dget_type(did); @@ -4469,12 +4343,10 @@ xml_dump_dataset(hid_t did, const char *name) check_compression(dcpl); indent += COL; - for (i = 0; i < ndims; i++) { indentation(indent); - HDfprintf(stdout, "\n", chsize[i]); + HDfprintf(stdout,"\n", chsize[i]); } - indent -= COL; indentation(indent); @@ -4494,7 +4366,6 @@ xml_dump_dataset(hid_t did, const char *name) H5Aiterate(did, NULL, dump_function_table->dump_attribute_function, NULL); indent -= COL; i = H5Dget_storage_size(did); - if (display_data && (i > 0)) { switch (H5Tget_class(type)) { case H5T_INTEGER: @@ -4639,13 +4510,10 @@ xml_print_enum(hid_t type) /* Print members */ indent += COL; for (i = 0; i < nmembs; i++) { - char *t_name = xml_escape_the_name(name[i]); - indentation(indent); printf("\n"); indentation(indent + COL); - printf("%s\n", t_name); - free(t_name); + printf("%s\n", xml_escape_the_name(name[i])); indentation(indent); printf("\n"); indentation(indent); diff --git a/tools/testfiles/tcompound.h5.xml b/tools/testfiles/tcompound.h5.xml index 25db6ae..3d4342a 100644 --- a/tools/testfiles/tcompound.h5.xml +++ b/tools/testfiles/tcompound.h5.xml @@ -5,128 +5,7 @@ Expected output for 'h5dump --xml tcompound.h5' - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 0 0 1 1 1 0.5 2 4 0.333333 3 9 0.25 4 16 0.2 - - - - - - - - - - - - - - - - - - - - - @@ -259,6 +138,24 @@ Expected output for 'h5dump --xml tcompound.h5' + + + + + + + + + + + + + + + + + + @@ -276,5 +173,108 @@ Expected output for 'h5dump --xml tcompound.h5' + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + 0 0 1 1 1 0.5 2 4 0.333333 3 9 0.25 4 16 0.2 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/tools/testfiles/tcompound2.h5.xml b/tools/testfiles/tcompound2.h5.xml index b19226c..67435c6 100644 --- a/tools/testfiles/tcompound2.h5.xml +++ b/tools/testfiles/tcompound2.h5.xml @@ -5,6 +5,128 @@ Expected output for 'h5dump --xml tcompound2.h5' + + + + + + + + + + + + + + + + + 0 0 1 1.1 2 2.2 3 3.3 4 4.4 5 5.5 + + + + + + + + + + + + + + + + + + + 0 0 1 1 2 2 3 3 4 4 5 5 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + 0 0 1 1 2 2 3 3 4 4 5 5 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + 0 0 1 1 1 0.5 2 4 0.333333 3 9 0.25 4 16 0.2 5 25 0.166667 + + + @@ -70,127 +192,5 @@ Expected output for 'h5dump --xml tcompound2.h5' - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 0 0 1 1 1 0.5 2 4 0.333333 3 9 0.25 4 16 0.2 5 25 0.166667 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 0 0 1 1.1 2 2.2 3 3.3 4 4.4 5 5.5 - - - - - - - - - - - - - - - - - - - 0 0 1 1 2 2 3 3 4 4 5 5 - - - - - - - - - - - - - - - - - - - - - 0 0 1 1 2 2 3 3 4 4 5 5 - - - - diff --git a/tools/testfiles/tenum.h5.xml b/tools/testfiles/tenum.h5.xml index 8fc64a2..7769cb2 100644 --- a/tools/testfiles/tenum.h5.xml +++ b/tools/testfiles/tenum.h5.xml @@ -5,6 +5,20 @@ Expected output for 'h5dump --xml tenum.h5' + + + + + + + + + + RED GREEN BLUE GREEN WHITE WHITE BLACK GREEN BLUE RED RED BLUE GREEN + BLACK WHITE RED WHITE GREEN GREEN BLUE + + + @@ -41,19 +55,5 @@ Expected output for 'h5dump --xml tenum.h5' - - - - - - - - - - RED GREEN BLUE GREEN WHITE WHITE BLACK GREEN BLUE RED RED BLUE GREEN - BLACK WHITE RED WHITE GREEN GREEN BLUE - - - diff --git a/tools/testfiles/thlink.h5.xml b/tools/testfiles/thlink.h5.xml index c116594..518ae3b 100644 --- a/tools/testfiles/thlink.h5.xml +++ b/tools/testfiles/thlink.h5.xml @@ -5,35 +5,35 @@ Expected output for 'h5dump --xml thlink.h5' - - - - - - - - - - - - - - 0 1 2 3 4 - - - - - - - + + + + + + + + + + + + + 0 1 2 3 4 + + + + + + + + diff --git a/tools/testfiles/tobjref.h5.xml b/tools/testfiles/tobjref.h5.xml index 3cfe6f7..beda91d 100644 --- a/tools/testfiles/tobjref.h5.xml +++ b/tools/testfiles/tobjref.h5.xml @@ -5,54 +5,7 @@ Expected output for 'h5dump --xml tobjref.h5' - - - - - - - - - - - - - - - - "/Group1/Dataset1" - "/Group1/Dataset2" - "/Group1" - "/Group1/Datatype1" - - - - - - - - - - - - - - - - - - - - - - - - - - - - @@ -87,6 +40,53 @@ Expected output for 'h5dump --xml tobjref.h5' + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + "/Group1/Dataset1" + "/Group1/Dataset2" + "/Group1" + "/Group1/Datatype1" + + + diff --git a/tools/testfiles/tref-escapes-at.h5.xml b/tools/testfiles/tref-escapes-at.h5.xml index 03184f3..36a54dc 100644 --- a/tools/testfiles/tref-escapes-at.h5.xml +++ b/tools/testfiles/tref-escapes-at.h5.xml @@ -6,125 +6,6 @@ Expected output for 'h5dump --xml tref-escapes-at.h5' - - - - - - - - - - - - - - 0 0 0 0 - - - - - - - - - - - - - - - - - 0 3 6 9 - - - - - - - - - - - - - - - - - 0 0 0 0 - - - - - - - - - - - - - - - - - 0 0 0 0 - - - - - - - - - - - - - - - - - 0 0 0 0 - - - - - - - - - - - - - - - - - 0 0 0 0 - - - - - - - - - - - - - - - - - 0 0 0 0 - - - @@ -277,6 +158,125 @@ Expected output for 'h5dump --xml tref-escapes-at.h5' + + + + + + + + + + + + + + 0 0 0 0 + + + + + + + + + + + + + + + + + 0 3 6 9 + + + + + + + + + + + + + + + + + 0 0 0 0 + + + + + + + + + + + + + + + + + 0 0 0 0 + + + + + + + + + + + + + + + + + 0 0 0 0 + + + + + + + + + + + + + + + + + 0 0 0 0 + + + + + + + + + + + + + + + + + 0 0 0 0 + + + diff --git a/tools/testfiles/tref-escapes.h5.xml b/tools/testfiles/tref-escapes.h5.xml index 4f47144..40f5d5e 100644 --- a/tools/testfiles/tref-escapes.h5.xml +++ b/tools/testfiles/tref-escapes.h5.xml @@ -6,6 +6,33 @@ Expected output for 'h5dump --xml tref-escapes.h5' + + + + + + + + + + + + + + + + + "/Group1/Dataset\"quote" + "/Group1/Dataset\\slash" + "/Group1/Dataset&amp" + "/Group1/Dataset<lt" + "/Group1/Dataset space" + "/Group1/Dataset'apos" + "/Group1/Dataset>gt" + + + + @@ -125,33 +152,6 @@ Expected output for 'h5dump --xml tref-escapes.h5' - - - - - - - - - - - - - - - - - "/Group1/Dataset\"quote" - "/Group1/Dataset\\slash" - "/Group1/Dataset&amp" - "/Group1/Dataset<lt" - "/Group1/Dataset space" - "/Group1/Dataset'apos" - "/Group1/Dataset>gt" - - - - diff --git a/tools/testfiles/tref.h5.xml b/tools/testfiles/tref.h5.xml index 2637347..0c2fc83 100644 --- a/tools/testfiles/tref.h5.xml +++ b/tools/testfiles/tref.h5.xml @@ -5,27 +5,6 @@ Expected output for 'h5dump --xml tref.h5' - - - - - - - - - - - - - - - - "/Group1/Dataset1" - "/Group1/Dataset2" - "/Group1" - - - @@ -62,5 +41,26 @@ Expected output for 'h5dump --xml tref.h5' + + + + + + + + + + + + + + + + "/Group1/Dataset1" + "/Group1/Dataset2" + "/Group1" + + + diff --git a/tools/testfiles/tsaf.h5.xml b/tools/testfiles/tsaf.h5.xml index 9b3feef..9e006d7 100644 --- a/tools/testfiles/tsaf.h5.xml +++ b/tools/testfiles/tsaf.h5.xml @@ -5,2598 +5,2598 @@ Expected output for 'h5dump --xml tsaf.h5' - - - - - - - - - - - - - - - - - - - 47 32 67 79 78 84 65 73 78 69 82 10 47 46 97 116 116 114 105 98 117 - 116 101 115 32 67 79 78 84 65 73 78 69 82 10 47 46 97 116 116 114 105 - 98 117 116 101 115 47 100 97 116 97 98 97 115 101 32 67 79 78 84 65 73 - 78 69 82 10 47 46 97 116 116 114 105 98 117 116 101 115 47 100 97 116 - 97 98 97 115 101 47 46 83 65 70 95 68 98 80 114 111 112 115 32 68 65 - 84 65 83 69 84 32 115 116 114 117 99 116 32 83 65 70 95 68 98 80 114 - 111 112 115 123 105 110 116 32 109 97 103 105 99 59 99 104 97 114 32 - 83 70 105 108 101 68 105 114 91 49 48 50 52 93 59 99 104 97 114 32 73 - 109 112 111 114 116 70 105 108 101 91 49 48 50 52 93 59 105 110 116 32 - 112 97 114 97 108 108 101 108 59 115 116 114 117 99 116 32 83 65 70 95 - 86 101 114 115 105 111 110 73 110 102 111 123 105 110 116 32 118 109 - 97 106 111 114 59 105 110 116 32 118 109 105 110 111 114 59 105 110 - 116 32 114 101 108 59 99 104 97 114 32 97 110 110 111 116 91 49 48 93 - 59 125 115 97 102 97 112 105 59 115 116 114 117 99 116 32 83 65 70 95 - 86 101 114 115 105 111 110 73 110 102 111 123 105 110 116 32 118 109 - 97 106 111 114 59 105 110 116 32 118 109 105 110 111 114 59 105 110 - 116 32 114 101 108 59 99 104 97 114 32 97 110 110 111 116 91 49 48 93 - 59 125 115 97 102 108 105 98 59 115 116 114 117 99 116 32 83 65 70 95 - 86 101 114 115 105 111 110 73 110 102 111 123 105 110 116 32 118 109 - 97 106 111 114 59 105 110 116 32 118 109 105 110 111 114 59 105 110 - 116 32 114 101 108 59 99 104 97 114 32 97 110 110 111 116 91 49 48 93 - 59 125 118 98 116 59 115 116 114 117 99 116 32 83 65 70 95 86 101 114 - 115 105 111 110 73 110 102 111 123 105 110 116 32 118 109 97 106 111 - 114 59 105 110 116 32 118 109 105 110 111 114 59 105 110 116 32 114 - 101 108 59 99 104 97 114 32 97 110 110 111 116 91 49 48 93 59 125 100 - 115 108 59 115 116 114 117 99 116 32 83 65 70 95 86 101 114 115 105 - 111 110 73 110 102 111 123 105 110 116 32 118 109 97 106 111 114 59 - 105 110 116 32 118 109 105 110 111 114 59 105 110 116 32 114 101 108 - 59 99 104 97 114 32 97 110 110 111 116 91 49 48 93 59 125 104 100 102 - 53 59 115 116 114 117 99 116 32 83 65 70 95 86 101 114 115 105 111 110 - 73 110 102 111 123 105 110 116 32 118 109 97 106 111 114 59 105 110 - 116 32 118 109 105 110 111 114 59 105 110 116 32 114 101 108 59 99 104 - 97 114 32 97 110 110 111 116 91 49 48 93 59 125 109 112 105 59 105 110 - 116 32 68 111 84 111 99 59 105 110 116 32 82 101 97 100 79 110 108 121 - 59 105 110 116 32 67 108 111 98 98 101 114 59 105 110 116 32 79 83 77 - 111 100 101 115 59 125 59 10 47 115 115 114 101 108 45 95 48 48 48 48 - 32 68 65 84 65 83 69 84 32 105 110 116 59 10 47 115 115 114 101 108 45 - 95 48 48 48 49 32 68 65 84 65 83 69 84 32 105 110 116 59 10 47 115 115 - 114 101 108 45 95 48 48 48 50 32 68 65 84 65 83 69 84 32 105 110 116 - 59 10 47 115 115 114 101 108 45 95 48 48 48 51 32 68 65 84 65 83 69 84 - 32 105 110 116 59 10 47 115 115 114 101 108 45 95 48 48 48 52 32 68 65 - 84 65 83 69 84 32 105 110 116 59 10 47 115 115 114 101 108 45 95 48 48 - 48 53 32 68 65 84 65 83 69 84 32 105 110 116 59 10 47 115 115 114 101 - 108 45 95 48 48 48 54 32 68 65 84 65 83 69 84 32 105 110 116 59 10 47 - 115 115 114 101 108 45 95 48 48 48 55 32 68 65 84 65 83 69 84 32 105 - 110 116 59 10 47 115 115 114 101 108 45 95 48 48 48 56 32 68 65 84 65 - 83 69 84 32 105 110 116 59 10 47 115 115 114 101 108 45 95 48 48 48 57 - 32 68 65 84 65 83 69 84 32 105 110 116 59 10 47 115 115 114 101 108 45 - 95 48 48 49 48 32 68 65 84 65 83 69 84 32 105 110 116 59 10 47 115 115 - 114 101 108 45 95 48 48 49 49 32 68 65 84 65 83 69 84 32 105 110 116 - 59 10 47 115 115 114 101 108 45 95 48 48 49 50 32 68 65 84 65 83 69 84 - 32 105 110 116 59 10 47 116 111 112 111 114 101 108 45 95 48 48 49 55 - 32 68 65 84 65 83 69 84 32 105 110 116 59 10 47 116 111 112 111 114 - 101 108 45 95 48 48 49 56 32 68 65 84 65 83 69 84 32 105 110 116 59 10 - 47 116 111 112 111 114 101 108 45 95 48 48 49 57 32 68 65 84 65 83 69 - 84 32 105 110 116 59 10 47 116 111 112 111 114 101 108 45 95 48 48 50 - 48 32 68 65 84 65 83 69 84 32 105 110 116 59 10 47 102 105 101 108 100 - 45 99 111 111 114 100 115 95 48 48 48 50 32 68 65 84 65 83 69 84 32 - 102 108 111 97 116 59 10 47 102 105 101 108 100 45 100 105 115 116 114 - 105 98 117 116 105 111 110 95 102 97 99 116 111 114 115 95 48 48 48 51 - 32 68 65 84 65 83 69 84 32 102 108 111 97 116 59 10 47 102 105 101 108 - 100 45 116 101 109 112 101 114 97 116 117 114 101 95 48 48 48 52 32 68 - 65 84 65 83 69 84 32 102 108 111 97 116 59 10 47 102 105 101 108 100 - 45 100 105 115 112 108 97 99 101 109 101 110 116 115 95 48 48 48 55 32 - 68 65 84 65 83 69 84 32 102 108 111 97 116 59 10 47 102 105 101 108 - 100 45 115 116 114 101 115 115 95 48 48 49 49 32 68 65 84 65 83 69 84 - 32 102 108 111 97 116 59 10 47 102 105 101 108 100 45 116 101 109 112 - 101 114 97 116 117 114 101 95 48 48 49 50 32 68 65 84 65 83 69 84 32 - 102 108 111 97 116 59 10 47 102 105 101 108 100 45 112 114 101 115 115 - 117 114 101 95 48 48 49 51 32 68 65 84 65 83 69 84 32 102 108 111 97 - 116 59 10 47 66 108 111 98 32 68 65 84 65 83 69 84 32 115 116 114 117 - 99 116 32 66 108 111 98 123 68 83 76 95 79 102 102 115 101 116 32 102 - 105 108 101 95 105 100 59 68 83 76 95 79 102 102 115 101 116 32 100 97 - 116 97 115 101 116 95 105 100 59 68 83 76 95 79 102 102 115 101 116 32 - 111 102 102 115 101 116 59 68 83 76 95 79 102 102 115 101 116 32 115 - 116 114 105 100 101 59 68 83 76 95 79 102 102 115 101 116 32 99 111 - 117 110 116 59 68 83 76 95 79 102 102 115 101 116 32 98 97 115 101 95 - 105 100 59 68 83 76 95 79 102 102 115 101 116 32 110 117 109 95 114 - 101 99 115 59 125 59 10 47 73 110 100 101 120 83 112 101 99 32 68 65 - 84 65 83 69 84 32 115 116 114 117 99 116 32 73 110 100 101 120 83 112 - 101 99 123 105 110 116 32 110 100 105 109 115 59 105 110 116 32 111 - 114 105 103 105 110 115 91 56 93 59 105 110 116 32 115 105 122 101 115 - 91 56 93 59 105 110 116 32 111 114 100 101 114 91 56 93 59 101 110 117 - 109 32 73 110 100 101 120 84 121 112 101 123 86 66 84 95 73 78 68 69 - 88 95 84 89 80 69 95 67 95 79 82 68 69 82 61 48 44 86 66 84 95 73 78 - 68 69 88 95 84 89 80 69 95 70 95 79 82 68 69 82 61 49 44 86 66 84 95 - 73 78 68 69 88 95 84 89 80 69 95 65 78 89 61 45 49 44 86 66 84 95 73 - 78 68 69 88 95 84 89 80 69 95 73 78 86 65 76 73 68 61 45 50 44 86 66 - 84 95 73 78 68 69 88 95 84 89 80 69 95 78 65 61 45 51 44 86 66 84 95 - 73 78 68 69 88 95 84 89 80 69 95 85 78 75 78 79 87 78 61 45 52 125 105 - 110 100 101 120 95 116 121 112 101 59 68 83 76 95 79 102 102 115 101 - 116 32 98 97 115 101 95 105 100 59 68 83 76 95 79 102 102 115 101 116 - 32 110 117 109 95 114 101 99 115 59 125 59 10 47 67 97 116 32 68 65 84 - 65 83 69 84 32 115 116 114 117 99 116 32 67 97 116 123 99 104 97 114 - 32 110 97 109 101 91 54 52 93 59 101 110 117 109 32 82 111 108 101 123 - 86 66 84 95 82 79 76 69 95 84 79 80 79 61 48 44 86 66 84 95 82 79 76 - 69 95 66 78 68 61 49 44 86 66 84 95 82 79 76 69 95 80 82 79 67 61 50 - 44 86 66 84 95 82 79 76 69 95 68 79 77 78 61 51 44 86 66 84 95 82 79 - 76 69 95 66 76 79 67 75 61 52 44 86 66 84 95 82 79 76 69 95 65 83 83 - 89 61 53 44 86 66 84 95 82 79 76 69 95 77 65 84 61 54 44 86 66 84 95 - 82 79 76 69 95 88 80 82 79 68 61 55 44 86 66 84 95 82 79 76 69 95 85 - 83 69 82 68 61 56 44 86 66 84 95 82 79 76 69 95 65 78 89 61 45 49 44 - 86 66 84 95 82 79 76 69 95 73 78 86 65 76 73 68 61 45 50 44 86 66 84 - 95 82 79 76 69 95 78 65 61 45 51 44 86 66 84 95 82 79 76 69 95 85 78 - 75 78 79 87 78 61 45 52 125 114 111 108 101 59 105 110 116 32 116 100 - 105 109 59 68 83 76 95 79 102 102 115 101 116 32 98 97 115 101 95 105 - 100 59 68 83 76 95 79 102 102 115 101 116 32 110 117 109 95 114 101 99 - 115 59 125 59 10 47 83 101 116 32 68 65 84 65 83 69 84 32 115 116 114 - 117 99 116 32 83 101 116 123 105 110 116 32 117 115 101 114 95 105 100 - 59 99 104 97 114 32 110 97 109 101 91 54 52 93 59 105 110 116 32 116 - 100 105 109 59 101 110 117 109 32 83 105 108 82 111 108 101 123 86 66 - 84 95 83 82 79 76 69 95 84 73 77 69 61 48 44 86 66 84 95 83 82 79 76 - 69 95 83 80 65 67 69 61 49 44 86 66 84 95 83 82 79 76 69 95 83 84 65 - 84 69 61 50 44 86 66 84 95 83 82 79 76 69 95 80 65 82 65 77 61 51 44 - 86 66 84 95 83 82 79 76 69 95 67 84 89 80 69 61 52 44 86 66 84 95 83 - 82 79 76 69 95 65 84 89 80 69 61 53 44 86 66 84 95 83 82 79 76 69 95 - 85 83 69 82 68 61 54 44 86 66 84 95 83 82 79 76 69 95 65 78 89 61 45 - 49 44 86 66 84 95 83 82 79 76 69 95 73 78 86 65 76 73 68 61 45 50 44 - 86 66 84 95 83 82 79 76 69 95 78 65 61 45 51 44 86 66 84 95 83 82 79 - 76 69 95 85 78 75 78 79 87 78 61 45 52 125 115 114 111 108 101 59 68 - 83 76 95 79 102 102 115 101 116 32 99 111 108 108 95 105 100 115 91 49 - 54 93 59 105 110 116 32 105 115 95 116 111 112 59 105 110 116 32 105 - 115 95 101 120 116 101 110 100 105 98 108 101 59 68 83 76 95 79 102 - 102 115 101 116 32 100 102 108 116 95 99 111 111 114 100 102 108 100 - 95 105 100 59 68 83 76 95 79 102 102 115 101 116 32 98 110 100 95 115 - 101 116 95 105 100 59 68 83 76 95 79 102 102 115 101 116 32 98 97 115 - 101 95 105 100 59 68 83 76 95 79 102 102 115 101 116 32 110 117 109 95 - 114 101 99 115 59 125 59 10 47 67 111 108 108 101 99 116 105 111 110 - 32 68 65 84 65 83 69 84 32 115 116 114 117 99 116 32 67 111 108 108 - 101 99 116 105 111 110 123 68 83 76 95 79 102 102 115 101 116 32 99 - 111 110 116 97 105 110 105 110 103 95 115 101 116 95 105 100 59 68 83 - 76 95 79 102 102 115 101 116 32 99 97 116 95 105 100 59 101 110 117 - 109 32 67 101 108 108 84 121 112 101 123 86 66 84 95 67 69 76 76 95 84 - 89 80 69 95 78 79 78 69 61 48 44 86 66 84 95 67 69 76 76 95 84 89 80 - 69 95 80 79 73 78 84 61 49 44 86 66 84 95 67 69 76 76 95 84 89 80 69 - 95 76 73 78 69 61 50 44 86 66 84 95 67 69 76 76 95 84 89 80 69 95 84 - 82 73 61 51 44 86 66 84 95 67 69 76 76 95 84 89 80 69 95 81 85 65 68 - 61 52 44 86 66 84 95 67 69 76 76 95 84 89 80 69 95 84 69 84 61 53 44 - 86 66 84 95 67 69 76 76 95 84 89 80 69 95 80 89 82 65 77 73 68 61 54 - 44 86 66 84 95 67 69 76 76 95 84 89 80 69 95 80 82 73 83 77 61 55 44 - 86 66 84 95 67 69 76 76 95 84 89 80 69 95 72 69 88 61 56 44 86 66 84 - 95 67 69 76 76 95 84 89 80 69 95 77 73 88 69 68 61 57 44 86 66 84 95 - 67 69 76 76 95 84 89 80 69 95 65 82 66 61 49 48 44 86 66 84 95 67 69 - 76 76 95 84 89 80 69 95 49 66 65 76 76 61 49 49 44 86 66 84 95 67 69 - 76 76 95 84 89 80 69 95 50 66 65 76 76 61 49 50 44 86 66 84 95 67 69 - 76 76 95 84 89 80 69 95 51 66 65 76 76 61 49 51 44 86 66 84 95 67 69 - 76 76 95 84 89 80 69 95 49 83 72 69 76 76 61 49 52 44 86 66 84 95 67 - 69 76 76 95 84 89 80 69 95 50 83 72 69 76 76 61 49 53 44 86 66 84 95 - 67 69 76 76 95 84 89 80 69 95 65 78 89 61 45 49 44 86 66 84 95 67 69 - 76 76 95 84 89 80 69 95 73 78 86 65 76 73 68 61 45 50 44 86 66 84 95 - 67 69 76 76 95 84 89 80 69 95 78 65 61 45 51 44 86 66 84 95 67 69 76 - 76 95 84 89 80 69 95 85 78 75 78 79 87 78 61 45 52 125 99 101 108 108 - 95 116 121 112 101 59 105 110 116 32 99 111 117 110 116 59 68 83 76 95 - 79 102 102 115 101 116 32 105 110 100 101 120 105 110 103 95 105 100 - 59 105 110 116 32 105 115 95 100 101 99 111 109 112 59 68 83 76 95 79 - 102 102 115 101 116 32 109 101 109 98 101 114 115 95 98 108 111 98 95 - 105 100 59 68 83 76 95 79 102 102 115 101 116 32 98 97 115 101 95 105 - 100 59 68 83 76 95 79 102 102 115 101 116 32 110 117 109 95 114 101 99 - 115 59 125 59 10 47 82 101 108 97 116 105 111 110 32 68 65 84 65 83 69 - 84 32 115 116 114 117 99 116 32 82 101 108 97 116 105 111 110 123 68 - 83 76 95 79 102 102 115 101 116 32 115 117 98 95 105 100 59 68 83 76 - 95 79 102 102 115 101 116 32 115 117 98 95 99 97 116 95 105 100 59 68 - 83 76 95 79 102 102 115 101 116 32 115 117 98 95 100 101 99 111 109 - 112 95 99 97 116 95 105 100 59 68 83 76 95 79 102 102 115 101 116 32 - 115 117 112 95 105 100 59 68 83 76 95 79 102 102 115 101 116 32 115 - 117 112 95 99 97 116 95 105 100 59 68 83 76 95 79 102 102 115 101 116 - 32 115 117 112 95 100 101 99 111 109 112 95 99 97 116 95 105 100 59 - 101 110 117 109 32 82 101 108 75 105 110 100 123 86 66 84 95 82 69 76 - 75 73 78 68 95 83 85 66 83 69 84 61 48 44 86 66 84 95 82 69 76 75 73 - 78 68 95 83 85 80 83 69 84 61 49 44 86 66 84 95 82 69 76 75 73 78 68 - 95 66 79 85 78 68 61 50 44 86 66 84 95 82 69 76 75 73 78 68 95 80 69 - 82 77 85 84 69 61 51 44 86 66 84 95 82 69 76 75 73 78 68 95 78 69 73 - 71 72 66 79 82 61 52 44 86 66 84 95 82 69 76 75 73 78 68 95 67 79 80 - 89 61 53 44 86 66 84 95 82 69 76 75 73 78 68 95 69 81 85 65 76 61 54 - 44 86 66 84 95 82 69 76 75 73 78 68 95 65 78 89 61 45 49 44 86 66 84 - 95 82 69 76 75 73 78 68 95 73 78 86 65 76 73 68 61 45 50 44 86 66 84 - 95 82 69 76 75 73 78 68 95 78 65 61 45 51 44 86 66 84 95 82 69 76 75 - 73 78 68 95 85 78 75 78 79 87 78 61 45 52 125 107 105 110 100 59 101 - 110 117 109 32 82 101 108 82 101 112 123 86 66 84 95 82 69 76 82 69 80 - 95 73 68 69 78 84 73 84 89 61 48 44 86 66 84 95 82 69 76 82 69 80 95 - 72 76 73 83 84 61 49 44 86 66 84 95 82 69 76 82 69 80 95 84 76 73 83 - 84 61 50 44 86 66 84 95 82 69 76 82 69 80 95 84 76 73 83 84 95 49 61 - 51 44 86 66 84 95 82 69 76 82 69 80 95 69 76 73 83 84 61 52 44 86 66 - 84 95 82 69 76 82 69 80 95 83 84 82 85 67 84 85 82 69 68 61 53 44 86 - 66 84 95 82 69 76 82 69 80 95 85 78 83 84 82 85 67 84 85 82 69 68 61 - 54 44 86 66 84 95 82 69 76 82 69 80 95 65 82 66 73 84 82 65 82 89 95 - 82 61 55 44 86 66 84 95 82 69 76 82 69 80 95 65 82 66 73 84 82 65 82 - 89 95 68 82 61 56 44 86 66 84 95 82 69 76 82 69 80 95 65 78 89 61 45 - 49 44 86 66 84 95 82 69 76 82 69 80 95 73 78 86 65 76 73 68 61 45 50 - 44 86 66 84 95 82 69 76 82 69 80 95 78 65 61 45 51 44 86 66 84 95 82 - 69 76 82 69 80 95 85 78 75 78 79 87 78 61 45 52 125 114 101 112 95 116 - 121 112 101 59 68 83 76 95 79 102 102 115 101 116 32 100 95 98 108 111 - 98 95 105 100 59 68 83 76 95 79 102 102 115 101 116 32 114 95 98 108 - 111 98 95 105 100 59 68 83 76 95 79 102 102 115 101 116 32 98 97 115 - 101 95 105 100 59 68 83 76 95 79 102 102 115 101 116 32 110 117 109 95 - 114 101 99 115 59 125 59 10 47 70 105 101 108 100 84 109 112 108 32 68 - 65 84 65 83 69 84 32 115 116 114 117 99 116 32 70 105 101 108 100 84 - 109 112 108 123 99 104 97 114 32 110 97 109 101 91 54 52 93 59 68 83 - 76 95 79 102 102 115 101 116 32 98 97 115 101 95 115 112 97 99 101 95 - 105 100 59 101 110 117 109 32 65 108 103 101 98 114 97 105 99 84 121 - 112 101 123 86 66 84 95 65 76 71 69 66 82 65 73 67 95 84 89 80 69 95 - 67 79 78 83 84 65 78 84 61 48 44 86 66 84 95 65 76 71 69 66 82 65 73 - 67 95 84 89 80 69 95 67 79 77 80 79 78 69 78 84 61 49 44 86 66 84 95 - 65 76 71 69 66 82 65 73 67 95 84 89 80 69 95 83 67 65 76 65 82 61 50 - 44 86 66 84 95 65 76 71 69 66 82 65 73 67 95 84 89 80 69 95 86 69 67 - 84 79 82 61 51 44 86 66 84 95 65 76 71 69 66 82 65 73 67 95 84 89 80 - 69 95 84 69 78 83 79 82 61 52 44 86 66 84 95 65 76 71 69 66 82 65 73 - 67 95 84 89 80 69 95 83 89 77 95 84 69 78 83 79 82 61 53 44 86 66 84 - 95 65 76 71 69 66 82 65 73 67 95 84 89 80 69 95 70 73 69 76 68 61 54 - 44 86 66 84 95 65 76 71 69 66 82 65 73 67 95 84 89 80 69 95 83 84 65 - 84 69 61 55 44 86 66 84 95 65 76 71 69 66 82 65 73 67 95 84 89 80 69 - 95 84 85 80 76 69 61 56 44 86 66 84 95 65 76 71 69 66 82 65 73 67 95 - 84 89 80 69 95 65 78 89 61 45 49 44 86 66 84 95 65 76 71 69 66 82 65 - 73 67 95 84 89 80 69 95 73 78 86 65 76 73 68 61 45 50 44 86 66 84 95 - 65 76 71 69 66 82 65 73 67 95 84 89 80 69 95 78 65 61 45 51 44 86 66 - 84 95 65 76 71 69 66 82 65 73 67 95 84 89 80 69 95 85 78 75 78 79 87 - 78 61 45 52 125 97 108 103 95 116 121 112 101 59 101 110 117 109 32 66 - 97 115 105 115 84 121 112 101 123 86 66 84 95 66 65 83 73 83 95 84 89 - 80 69 95 85 78 73 84 89 61 48 44 86 66 84 95 66 65 83 73 83 95 84 89 - 80 69 95 67 65 82 84 69 83 73 65 78 61 49 44 86 66 84 95 66 65 83 73 - 83 95 84 89 80 69 95 83 80 72 69 82 73 67 65 76 61 50 44 86 66 84 95 - 66 65 83 73 83 95 84 89 80 69 95 67 89 76 73 78 68 82 73 67 65 76 61 - 51 44 86 66 84 95 66 65 83 73 83 95 84 89 80 69 95 85 80 80 69 82 95 - 84 82 73 61 52 44 86 66 84 95 66 65 83 73 83 95 84 89 80 69 95 70 79 - 85 82 73 69 82 61 53 44 86 66 84 95 66 65 83 73 83 95 84 89 80 69 95 - 86 65 82 73 65 66 76 69 61 54 44 86 66 84 95 66 65 83 73 83 95 84 89 - 80 69 95 65 78 89 61 45 49 44 86 66 84 95 66 65 83 73 83 95 84 89 80 - 69 95 73 78 86 65 76 73 68 61 45 50 44 86 66 84 95 66 65 83 73 83 95 - 84 89 80 69 95 78 65 61 45 51 44 86 66 84 95 66 65 83 73 83 95 84 89 - 80 69 95 85 78 75 78 79 87 78 61 45 52 125 98 97 115 105 115 59 68 83 - 76 95 79 102 102 115 101 116 32 113 117 97 110 116 105 116 121 95 105 - 100 59 105 110 116 32 110 117 109 95 99 111 109 112 115 59 68 83 76 95 - 79 102 102 115 101 116 32 102 116 109 112 108 95 105 100 115 95 98 108 - 111 98 95 105 100 59 68 83 76 95 79 102 102 115 101 116 32 98 97 115 - 101 95 105 100 59 68 83 76 95 79 102 102 115 101 116 32 110 117 109 95 - 114 101 99 115 59 125 59 10 47 70 105 101 108 100 32 68 65 84 65 83 69 - 84 32 115 116 114 117 99 116 32 70 105 101 108 100 123 68 83 76 95 79 - 102 102 115 101 116 32 102 116 109 112 108 95 105 100 59 99 104 97 114 - 32 110 97 109 101 91 54 52 93 59 68 83 76 95 79 102 102 115 101 116 32 - 117 110 105 116 115 95 105 100 59 68 83 76 95 79 102 102 115 101 116 - 32 115 116 111 114 97 103 101 95 100 101 99 111 109 112 95 99 97 116 - 95 105 100 59 101 110 117 109 32 73 110 116 101 114 108 101 97 118 101 - 123 86 66 84 95 73 78 84 69 82 76 69 65 86 69 95 67 79 77 80 79 78 69 - 78 84 61 48 44 86 66 84 95 73 78 84 69 82 76 69 65 86 69 95 86 69 67 - 84 79 82 61 49 44 86 66 84 95 73 78 84 69 82 76 69 65 86 69 95 73 78 - 68 69 80 69 78 68 69 78 84 61 50 44 86 66 84 95 73 78 84 69 82 76 69 - 65 86 69 95 78 79 78 69 61 51 44 86 66 84 95 73 78 84 69 82 76 69 65 - 86 69 95 65 78 89 61 45 49 44 86 66 84 95 73 78 84 69 82 76 69 65 86 - 69 95 73 78 86 65 76 73 68 61 45 50 44 86 66 84 95 73 78 84 69 82 76 - 69 65 86 69 95 78 65 61 45 51 44 86 66 84 95 73 78 84 69 82 76 69 65 - 86 69 95 85 78 75 78 79 87 78 61 45 52 125 99 111 109 112 95 105 110 - 116 108 118 59 68 83 76 95 79 102 102 115 101 116 32 105 110 100 101 - 120 105 110 103 95 105 100 59 68 83 76 95 79 102 102 115 101 116 32 - 100 111 102 95 97 115 115 111 99 95 99 97 116 95 105 100 59 105 110 - 116 32 97 115 115 111 99 95 114 97 116 105 111 59 68 83 76 95 79 102 - 102 115 101 116 32 101 118 97 108 95 100 101 99 111 109 112 95 99 97 - 116 95 105 100 59 101 110 117 109 32 69 118 97 108 70 117 110 99 123 - 86 66 84 95 69 86 65 76 95 70 85 78 67 95 67 79 78 83 84 65 78 84 61 - 48 44 86 66 84 95 69 86 65 76 95 70 85 78 67 95 85 78 73 70 79 82 77 - 61 49 44 86 66 84 95 69 86 65 76 95 70 85 78 67 95 80 87 67 79 78 83 - 84 61 50 44 86 66 84 95 69 86 65 76 95 70 85 78 67 95 80 87 76 73 78 - 69 65 82 61 51 44 86 66 84 95 69 86 65 76 95 70 85 78 67 95 65 78 89 - 61 45 49 44 86 66 84 95 69 86 65 76 95 70 85 78 67 95 73 78 86 65 76 - 73 68 61 45 50 44 86 66 84 95 69 86 65 76 95 70 85 78 67 95 78 65 61 - 45 51 44 86 66 84 95 69 86 65 76 95 70 85 78 67 95 85 78 75 78 79 87 - 78 61 45 52 125 101 118 97 108 95 102 117 110 99 59 105 110 116 32 105 - 115 95 104 111 109 111 103 101 110 101 111 117 115 59 105 110 116 32 - 105 115 95 99 111 111 114 100 95 102 105 101 108 100 59 68 83 76 95 79 - 102 102 115 101 116 32 99 111 109 112 95 105 100 115 95 98 108 111 98 - 95 105 100 59 68 83 76 95 79 102 102 115 101 116 32 99 111 109 112 95 - 111 114 100 101 114 95 98 108 111 98 95 105 100 59 68 83 76 95 79 102 - 102 115 101 116 32 118 98 97 115 105 115 95 98 108 111 98 95 105 100 - 59 68 83 76 95 79 102 102 115 101 116 32 100 111 102 95 98 108 111 98 - 95 105 100 59 68 83 76 95 79 102 102 115 101 116 32 98 97 115 101 95 - 105 100 59 68 83 76 95 79 102 102 115 101 116 32 110 117 109 95 114 - 101 99 115 59 125 59 10 47 109 101 116 97 98 108 111 98 48 48 48 48 48 - 46 105 110 100 101 120 32 68 65 84 65 83 69 84 32 115 116 114 117 99 - 116 32 73 110 100 101 120 80 97 105 114 123 68 83 76 95 79 102 102 115 - 101 116 32 105 110 100 101 120 59 105 110 116 32 108 101 110 103 116 - 104 59 125 59 10 47 109 101 116 97 98 108 111 98 48 48 48 48 48 46 98 - 108 111 98 32 68 65 84 65 83 69 84 32 68 83 76 95 79 102 102 115 101 - 116 59 10 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -1 1 0 1 9 0 1 -1 2 0 1 4 1 1 -1 3 0 1 7 2 1 -1 4 0 1 4 3 1 - -1 5 0 1 5 4 1 -1 6 0 1 3 5 1 -1 7 0 1 4 6 1 -1 8 0 1 1 7 1 - -1 9 0 1 10 8 1 -1 10 0 1 4 9 1 -1 11 0 1 3 10 1 -1 12 0 1 5 11 1 - -1 13 0 1 5 12 1 -1 14 0 1 16 13 1 -1 15 0 1 9 14 1 -1 16 0 1 4 15 1 - -1 17 0 1 16 16 1 -1 18 0 1 36 17 1 -1 19 0 1 5 18 1 -1 20 0 1 5 19 1 - -1 21 0 1 36 20 1 -1 22 0 1 12 21 1 -1 23 0 1 7 22 1 -1 24 0 1 2 23 1 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - TOPO - - - 0 - - - BND - - - 1 - - - PROC - - - 2 - - - DOMN - - - 3 - - - BLOCK - - - 4 - - - ASSY - - - 5 - - - MAT - - - 6 - - - XPROD - - - 7 - - - USERD - - - 8 - - - ANY - - - -1 - - - INVALID - - - -2 - - - NA - - - -3 - - - UNKNOWN - - - -4 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - "nodes" TOPO 0 0 1 "elems" TOPO 2 1 1 "edges" USERD 1 2 1 - "blocks" BLOCK 2 3 1 "side_sets" USERD 1 4 1 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - NONE - - - 0 - - - POINT - - - 1 - - - LINE - - - 2 - - - TRI - - - 3 - - - QUAD - - - 4 - - - TET - - - 5 - - - PYRAMID - - - 6 - - - PRISM - - - 7 - - - HEX - - - 8 - - - MIXED - - - 9 - - - ARB - - - 10 - - - 1BALL - - - 11 - - - 2BALL - - - 12 - - - 3BALL - - - 13 - - - 1SHELL - - - 14 - - - 2SHELL - - - 15 - - - ANY - - - -1 - - - INVALID - - - -2 - - - NA - - - -3 - - - UNKNOWN - - - -4 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 0 0 POINT 18 0 0 -2 0 1 0 1 MIXED 12 1 1 -2 1 1 0 3 NONE 4 2 1 0 2 1 - 0 4 NONE 2 3 0 1 3 1 1 0 POINT 9 4 0 -2 4 1 1 1 QUAD 4 5 1 -2 5 1 - 1 3 NONE 1 6 1 2 6 1 2 0 POINT 7 7 0 -2 7 1 2 1 MIXED 4 8 1 -2 8 1 - 2 3 NONE 2 9 1 3 9 1 3 0 POINT 10 10 0 -2 10 1 3 1 QUAD 4 11 1 -2 11 1 - 3 3 NONE 1 12 1 4 12 1 4 0 POINT 3 13 0 -2 13 1 - 4 2 LINE 2 14 1 -2 14 1 5 0 POINT 5 15 0 -2 15 1 - 5 2 LINE 4 16 1 -2 16 1 6 0 POINT 5 17 1 -2 17 1 - 7 0 POINT 5 18 0 -2 18 1 7 1 TRI 3 19 1 -2 19 1 7 3 NONE 1 20 1 5 20 1 - 8 0 POINT 4 21 0 -2 21 1 8 1 QUAD 1 22 1 -2 22 1 8 3 NONE 1 23 1 6 23 1 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - COMPONENT - - - 0 - - - VECTOR - - - 1 - - - INDEPENDENT - - - 2 - - - NONE - - - 3 - - - ANY - - - -1 - - - INVALID - - - -2 - - - NA - - - -3 - - - UNKNOWN - - - -4 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - CONSTANT - - - 0 - - - UNIFORM - - - 1 - - - PWCONST - - - 2 - - - PWLINEAR - - - 3 - - - ANY - - - -1 - - - INVALID - - - -2 - - - NA - - - -3 - - - UNKNOWN - - - -4 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 1 "X" -7 -2 NONE -2 0 1 0 PWLINEAR 1 0 -2 -2 -2 -2 0 1 - 1 "Y" -7 -2 NONE -2 0 1 0 PWLINEAR 1 0 -2 -2 -2 -2 1 1 - 0 "coords" -7 -2 VECTOR -2 0 1 0 PWLINEAR 1 1 7 -2 -2 17 2 1 - 2 "distribution factors" -5 -2 NONE -2 0 1 0 PWLINEAR 1 0 -2 -2 -2 18 3 1 - 3 "temperature" -7 -2 NONE -2 0 1 0 PWLINEAR 1 0 -2 -2 -2 19 4 1 - 1 "dX" -7 -2 NONE -2 0 1 0 PWLINEAR 1 0 -2 -2 -2 -2 5 1 - 1 "dY" -7 -2 NONE -2 0 1 0 PWLINEAR 1 0 -2 -2 -2 -2 6 1 - 0 "displacements" -7 -2 VECTOR -2 0 1 0 PWLINEAR 1 0 8 -2 -2 20 7 1 - 5 "Sx" -7 -2 NONE -2 1 1 1 PWCONST 1 0 -2 -2 -2 -2 8 1 - 5 "Sy" -7 -2 NONE -2 1 1 1 PWCONST 1 0 -2 -2 -2 -2 9 1 - 5 "Sxy" -7 -2 NONE -2 1 1 1 PWCONST 1 0 -2 -2 -2 -2 10 1 - 4 "stress" -7 -2 VECTOR -2 1 1 1 PWCONST 1 0 9 -2 -2 21 11 1 - 6 "temperature" -7 -2 NONE -2 0 1 0 PWLINEAR 1 0 -2 -2 -2 22 12 1 - 7 "pressure" -7 -2 NONE -2 2 1 2 PWCONST 1 0 -2 -2 -2 23 13 1 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - CONSTANT - - - 0 - - - COMPONENT - - - 1 - - - SCALAR - - - 2 - - - VECTOR - - - 3 - - - TENSOR - - - 4 - - - SYM_TENSOR - - - 5 - - - FIELD - - - 6 - - - STATE - - - 7 - - - TUPLE - - - 8 - - - ANY - - - -1 - - - INVALID - - - -2 - - - NA - - - -3 - - - UNKNOWN - - - -4 - - - - - - - - - - - UNITY - - - 0 - - - CARTESIAN - - - 1 - - - SPHERICAL - - - 2 - - - CYLINDRICAL - - - 3 - - - UPPER_TRI - - - 4 - - - FOURIER - - - 5 - - - VARIABLE - - - 6 - - - ANY - - - -1 - - - INVALID - - - -2 - - - NA - - - -3 - - - UNKNOWN - - - -4 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - "coordinate_tmpl" 0 VECTOR CARTESIAN 2 2 0 0 1 - "coordinate_tmpl_component" 0 SCALAR CARTESIAN 2 1 0 1 1 - "distrib_factors_tmpl" 5 SCALAR UNITY -5 1 0 2 1 - "temp_on_ns1_tmpl" 6 SCALAR UNITY 0 1 0 3 1 - "stress_on_cell_1_tmpl" 1 SYM_TENSOR UPPER_TRI 0 3 0 4 1 - "stress_on_cell_1_tmpl_component" 1 SCALAR UPPER_TRI 0 1 0 5 1 - "temp_on_cell_2_tmpl" 2 SCALAR UNITY 1 1 0 6 1 - "pressure_on_ss1" 4 SCALAR UNITY 0 1 0 7 1 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - C_ORDER - - - 0 - - - F_ORDER - - - 1 - - - ANY - - - -1 - - - INVALID - - - -2 - - - NA - - - -3 - - - UNKNOWN - - - -4 - - - - - - - - - - - - - - - - - - - - - - - - - 1 0 0 0 0 0 0 0 0 18 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 C_ORDER 0 1 - 1 0 0 0 0 0 0 0 0 12 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 C_ORDER 1 1 - 1 0 0 0 0 0 0 0 0 4 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 C_ORDER 2 1 - 1 0 0 0 0 0 0 0 0 2 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 C_ORDER 3 1 - 1 0 0 0 0 0 0 0 0 9 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 C_ORDER 4 1 - 1 0 0 0 0 0 0 0 0 4 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 C_ORDER 5 1 - 1 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 C_ORDER 6 1 - 1 0 0 0 0 0 0 0 0 7 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 C_ORDER 7 1 - 1 0 0 0 0 0 0 0 0 4 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 C_ORDER 8 1 - 1 0 0 0 0 0 0 0 0 2 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 C_ORDER 9 1 - 1 0 0 0 0 0 0 0 0 10 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 C_ORDER 10 1 - 1 0 0 0 0 0 0 0 0 4 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 C_ORDER 11 1 - 1 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 C_ORDER 12 1 - 1 0 0 0 0 0 0 0 0 3 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 C_ORDER 13 1 - 1 0 0 0 0 0 0 0 0 2 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 C_ORDER 14 1 - 1 0 0 0 0 0 0 0 0 5 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 C_ORDER 15 1 - 1 0 0 0 0 0 0 0 0 4 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 C_ORDER 16 1 - 1 0 0 0 0 0 0 0 0 5 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 C_ORDER 17 1 - 1 0 0 0 0 0 0 0 0 5 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 C_ORDER 18 1 - 1 0 0 0 0 0 0 0 0 3 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 C_ORDER 19 1 - 1 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 C_ORDER 20 1 - 1 0 0 0 0 0 0 0 0 4 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 C_ORDER 21 1 - 1 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 C_ORDER 22 1 - 1 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 C_ORDER 23 1 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - SUBSET - - - 0 - - - SUPSET - - - 1 - - - BOUND - - - 2 - - - PERMUTE - - - 3 - - - NEIGHBOR - - - 4 - - - COPY - - - 5 - - - EQUAL - - - 6 - - - ANY - - - -1 - - - INVALID - - - -2 - - - NA - - - -3 - - - UNKNOWN - - - -4 - - - - - - - - - - - IDENTITY - - - 0 - - - HLIST - - - 1 - - - TLIST - - - 2 - - - TLIST_1 - - - 3 - - - ELIST - - - 4 - - - STRUCTURED - - - 5 - - - UNSTRUCTURED - - - 6 - - - ARBITRARY_R - - - 7 - - - ARBITRARY_DR - - - 8 - - - ANY - - - -1 - - - INVALID - - - -2 - - - NA - - - -3 - - - UNKNOWN - - - -4 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 1 0 -2 0 0 -2 EQUAL TLIST -2 0 0 1 1 1 -2 0 1 -2 EQUAL TLIST -2 1 1 1 - 2 0 -2 0 0 -2 EQUAL TLIST -2 2 2 1 2 1 -2 0 1 -2 EQUAL TLIST -2 3 3 1 - 7 0 -2 0 0 -2 EQUAL TLIST -2 4 4 1 7 1 -2 0 1 -2 EQUAL TLIST -2 5 5 1 - 8 0 -2 0 0 -2 EQUAL TLIST -2 6 6 1 8 1 -2 0 1 -2 EQUAL TLIST -2 7 7 1 - 3 0 -2 0 0 -2 EQUAL TLIST -2 8 8 1 3 1 -2 0 1 -2 EQUAL TLIST -2 9 9 1 - 4 0 -2 0 0 -2 EQUAL TLIST -2 10 10 1 - 5 0 -2 0 0 -2 EQUAL TLIST -2 11 11 1 - 6 0 -2 0 0 -2 EQUAL TLIST -2 12 12 1 - 1 3 -2 0 3 -2 EQUAL TLIST -2 -2 13 1 - 7 3 -2 0 3 -2 EQUAL TLIST -2 -2 14 1 - 8 3 -2 0 3 -2 EQUAL TLIST -2 -2 15 1 - 3 3 -2 0 3 -2 EQUAL TLIST -2 -2 16 1 - 1 1 -2 0 0 -2 SUBSET UNSTRUCTURED -2 13 17 1 - 7 1 -2 0 0 -2 SUBSET UNSTRUCTURED -2 14 18 1 - 8 1 -2 0 0 -2 SUBSET UNSTRUCTURED -2 15 19 1 - 3 1 -2 0 0 -2 SUBSET UNSTRUCTURED -2 16 20 1 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - TIME - - - 0 - - - SPACE - - - 1 - - - STATE - - - 2 - - - PARAM - - - 3 - - - CTYPE - - - 4 - - - ATYPE - - - 5 - - - USERD - - - 6 - - - ANY - - - -1 - - - INVALID - - - -2 - - - NA - - - -3 - - - UNKNOWN - - - -4 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 0 "TOP_CELL" 2 SPACE 0 1 -2 2 3 -2 -2 -2 -2 -2 -2 -2 -2 -2 -2 -2 1 0 -2 -2 0 1 - 0 "CELL_1" 2 SPACE 4 5 -2 6 -2 -2 -2 -2 -2 -2 -2 -2 -2 -2 -2 -2 0 0 -2 -2 1 1 - 0 "CELL_2" 2 SPACE 7 8 -2 9 -2 -2 -2 -2 -2 -2 -2 -2 -2 -2 -2 -2 0 0 -2 -2 2 1 - 0 "CELL_3" 2 SPACE 10 11 -2 12 -2 -2 -2 -2 -2 -2 -2 -2 -2 -2 -2 -2 0 0 -2 -2 3 1 - 0 "SIDE_SET_1" 1 SPACE 13 -2 14 -2 -2 -2 -2 -2 -2 -2 -2 -2 -2 -2 -2 -2 0 0 -2 -2 4 1 - 0 "SIDE_SET_2" 1 SPACE 15 -2 16 -2 -2 -2 -2 -2 -2 -2 -2 -2 -2 -2 -2 -2 0 0 -2 -2 5 1 - 0 "NODE_SET_1" 0 SPACE 17 -2 -2 -2 -2 -2 -2 -2 -2 -2 -2 -2 -2 -2 -2 -2 0 0 -2 -2 6 1 - 0 "CELL_2_TRIS" 2 SPACE 18 19 -2 20 -2 -2 -2 -2 -2 -2 -2 -2 -2 -2 -2 -2 0 0 -2 -2 7 1 - 0 "CELL_2_QUADS" 2 SPACE 21 22 -2 23 -2 -2 -2 -2 -2 -2 -2 -2 -2 -2 -2 -2 0 0 -2 -2 8 1 - - - - - - - - - - - - - - - - - 0 4 1 4 2 4 2.5 4 0 3 1 3 2 3 2.5 3 0 2 1 2 2 2 2.5 2 0 1 2 1 2.5 1 0 - 0 2 0 2.5 0 - - - - - - - - - - - - - - - - - 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 - 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 - 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 - - - - - - - - - - - - - - - - - 4 3 2 1 0 - - - - - - - - - - - - - - - - - 45 55 - - - - - - - - - - - - - - - - - 0.5 0.25 0.5 0.5 0.25 0.5 0.5 0.25 0.5 0.5 0.25 0.5 - - - - - - - - - - - - - - - - - 100 150 150 100 75 - - - - - - - - - - - - - - - - - 75 95 120 80 115 85 110 - - - - - - - - - - - - - - - - - - - - - - 1 7 8 3 -2 -2 -2 -2 -2 -2 -2 -2 0 1 5 6 8 9 10 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 0 4 4 2 6 1 7 2 9 1 10 1 11 1 12 2 14 2 16 3 - - - - - - - - - - - - - - - - - 1 2 3 5 6 7 9 10 11 - - - - - - - - - - - - - - - - - 1 2 4 5 - - - - - - - - - - - - - - - - - 9 10 11 13 14 16 17 - - - - - - - - - - - - - - - - - 7 8 9 11 - - - - - - - - - - - - - - - - - 9 10 11 13 14 - - - - - - - - - - - - - - - - - 7 8 9 - - - - - - - - - - - - - - - - - 13 14 16 17 - - - - - - - - - - - - - - - - - 11 - - - - - - - - - - - - - - - - - 3 4 7 8 11 12 14 15 17 18 - - - - - - - - - - - - - - - - - 3 6 10 12 - - - - - - - - - - - - - - - - - 9 10 11 - - - - - - - - - - - - - - - - - 1 5 9 13 16 - - - - - - - - - - - - - - - - - 4 8 12 15 18 - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + -604320037 "." "don't import" 1 0 0 0 "none" 0 1 0 "devel" 1 3 0 "" 0 0 0 "none" 1 2 1 "" 1 2 0 "" 1 0 1 0 + + + + + + + + + + + - + - + - 1 2 6 5 2 3 7 6 5 6 10 9 6 7 11 10 + 47 32 67 79 78 84 65 73 78 69 82 10 47 46 97 116 116 114 105 98 117 + 116 101 115 32 67 79 78 84 65 73 78 69 82 10 47 46 97 116 116 114 105 + 98 117 116 101 115 47 100 97 116 97 98 97 115 101 32 67 79 78 84 65 73 + 78 69 82 10 47 46 97 116 116 114 105 98 117 116 101 115 47 100 97 116 + 97 98 97 115 101 47 46 83 65 70 95 68 98 80 114 111 112 115 32 68 65 + 84 65 83 69 84 32 115 116 114 117 99 116 32 83 65 70 95 68 98 80 114 + 111 112 115 123 105 110 116 32 109 97 103 105 99 59 99 104 97 114 32 + 83 70 105 108 101 68 105 114 91 49 48 50 52 93 59 99 104 97 114 32 73 + 109 112 111 114 116 70 105 108 101 91 49 48 50 52 93 59 105 110 116 32 + 112 97 114 97 108 108 101 108 59 115 116 114 117 99 116 32 83 65 70 95 + 86 101 114 115 105 111 110 73 110 102 111 123 105 110 116 32 118 109 + 97 106 111 114 59 105 110 116 32 118 109 105 110 111 114 59 105 110 + 116 32 114 101 108 59 99 104 97 114 32 97 110 110 111 116 91 49 48 93 + 59 125 115 97 102 97 112 105 59 115 116 114 117 99 116 32 83 65 70 95 + 86 101 114 115 105 111 110 73 110 102 111 123 105 110 116 32 118 109 + 97 106 111 114 59 105 110 116 32 118 109 105 110 111 114 59 105 110 + 116 32 114 101 108 59 99 104 97 114 32 97 110 110 111 116 91 49 48 93 + 59 125 115 97 102 108 105 98 59 115 116 114 117 99 116 32 83 65 70 95 + 86 101 114 115 105 111 110 73 110 102 111 123 105 110 116 32 118 109 + 97 106 111 114 59 105 110 116 32 118 109 105 110 111 114 59 105 110 + 116 32 114 101 108 59 99 104 97 114 32 97 110 110 111 116 91 49 48 93 + 59 125 118 98 116 59 115 116 114 117 99 116 32 83 65 70 95 86 101 114 + 115 105 111 110 73 110 102 111 123 105 110 116 32 118 109 97 106 111 + 114 59 105 110 116 32 118 109 105 110 111 114 59 105 110 116 32 114 + 101 108 59 99 104 97 114 32 97 110 110 111 116 91 49 48 93 59 125 100 + 115 108 59 115 116 114 117 99 116 32 83 65 70 95 86 101 114 115 105 + 111 110 73 110 102 111 123 105 110 116 32 118 109 97 106 111 114 59 + 105 110 116 32 118 109 105 110 111 114 59 105 110 116 32 114 101 108 + 59 99 104 97 114 32 97 110 110 111 116 91 49 48 93 59 125 104 100 102 + 53 59 115 116 114 117 99 116 32 83 65 70 95 86 101 114 115 105 111 110 + 73 110 102 111 123 105 110 116 32 118 109 97 106 111 114 59 105 110 + 116 32 118 109 105 110 111 114 59 105 110 116 32 114 101 108 59 99 104 + 97 114 32 97 110 110 111 116 91 49 48 93 59 125 109 112 105 59 105 110 + 116 32 68 111 84 111 99 59 105 110 116 32 82 101 97 100 79 110 108 121 + 59 105 110 116 32 67 108 111 98 98 101 114 59 105 110 116 32 79 83 77 + 111 100 101 115 59 125 59 10 47 115 115 114 101 108 45 95 48 48 48 48 + 32 68 65 84 65 83 69 84 32 105 110 116 59 10 47 115 115 114 101 108 45 + 95 48 48 48 49 32 68 65 84 65 83 69 84 32 105 110 116 59 10 47 115 115 + 114 101 108 45 95 48 48 48 50 32 68 65 84 65 83 69 84 32 105 110 116 + 59 10 47 115 115 114 101 108 45 95 48 48 48 51 32 68 65 84 65 83 69 84 + 32 105 110 116 59 10 47 115 115 114 101 108 45 95 48 48 48 52 32 68 65 + 84 65 83 69 84 32 105 110 116 59 10 47 115 115 114 101 108 45 95 48 48 + 48 53 32 68 65 84 65 83 69 84 32 105 110 116 59 10 47 115 115 114 101 + 108 45 95 48 48 48 54 32 68 65 84 65 83 69 84 32 105 110 116 59 10 47 + 115 115 114 101 108 45 95 48 48 48 55 32 68 65 84 65 83 69 84 32 105 + 110 116 59 10 47 115 115 114 101 108 45 95 48 48 48 56 32 68 65 84 65 + 83 69 84 32 105 110 116 59 10 47 115 115 114 101 108 45 95 48 48 48 57 + 32 68 65 84 65 83 69 84 32 105 110 116 59 10 47 115 115 114 101 108 45 + 95 48 48 49 48 32 68 65 84 65 83 69 84 32 105 110 116 59 10 47 115 115 + 114 101 108 45 95 48 48 49 49 32 68 65 84 65 83 69 84 32 105 110 116 + 59 10 47 115 115 114 101 108 45 95 48 48 49 50 32 68 65 84 65 83 69 84 + 32 105 110 116 59 10 47 116 111 112 111 114 101 108 45 95 48 48 49 55 + 32 68 65 84 65 83 69 84 32 105 110 116 59 10 47 116 111 112 111 114 + 101 108 45 95 48 48 49 56 32 68 65 84 65 83 69 84 32 105 110 116 59 10 + 47 116 111 112 111 114 101 108 45 95 48 48 49 57 32 68 65 84 65 83 69 + 84 32 105 110 116 59 10 47 116 111 112 111 114 101 108 45 95 48 48 50 + 48 32 68 65 84 65 83 69 84 32 105 110 116 59 10 47 102 105 101 108 100 + 45 99 111 111 114 100 115 95 48 48 48 50 32 68 65 84 65 83 69 84 32 + 102 108 111 97 116 59 10 47 102 105 101 108 100 45 100 105 115 116 114 + 105 98 117 116 105 111 110 95 102 97 99 116 111 114 115 95 48 48 48 51 + 32 68 65 84 65 83 69 84 32 102 108 111 97 116 59 10 47 102 105 101 108 + 100 45 116 101 109 112 101 114 97 116 117 114 101 95 48 48 48 52 32 68 + 65 84 65 83 69 84 32 102 108 111 97 116 59 10 47 102 105 101 108 100 + 45 100 105 115 112 108 97 99 101 109 101 110 116 115 95 48 48 48 55 32 + 68 65 84 65 83 69 84 32 102 108 111 97 116 59 10 47 102 105 101 108 + 100 45 115 116 114 101 115 115 95 48 48 49 49 32 68 65 84 65 83 69 84 + 32 102 108 111 97 116 59 10 47 102 105 101 108 100 45 116 101 109 112 + 101 114 97 116 117 114 101 95 48 48 49 50 32 68 65 84 65 83 69 84 32 + 102 108 111 97 116 59 10 47 102 105 101 108 100 45 112 114 101 115 115 + 117 114 101 95 48 48 49 51 32 68 65 84 65 83 69 84 32 102 108 111 97 + 116 59 10 47 66 108 111 98 32 68 65 84 65 83 69 84 32 115 116 114 117 + 99 116 32 66 108 111 98 123 68 83 76 95 79 102 102 115 101 116 32 102 + 105 108 101 95 105 100 59 68 83 76 95 79 102 102 115 101 116 32 100 97 + 116 97 115 101 116 95 105 100 59 68 83 76 95 79 102 102 115 101 116 32 + 111 102 102 115 101 116 59 68 83 76 95 79 102 102 115 101 116 32 115 + 116 114 105 100 101 59 68 83 76 95 79 102 102 115 101 116 32 99 111 + 117 110 116 59 68 83 76 95 79 102 102 115 101 116 32 98 97 115 101 95 + 105 100 59 68 83 76 95 79 102 102 115 101 116 32 110 117 109 95 114 + 101 99 115 59 125 59 10 47 73 110 100 101 120 83 112 101 99 32 68 65 + 84 65 83 69 84 32 115 116 114 117 99 116 32 73 110 100 101 120 83 112 + 101 99 123 105 110 116 32 110 100 105 109 115 59 105 110 116 32 111 + 114 105 103 105 110 115 91 56 93 59 105 110 116 32 115 105 122 101 115 + 91 56 93 59 105 110 116 32 111 114 100 101 114 91 56 93 59 101 110 117 + 109 32 73 110 100 101 120 84 121 112 101 123 86 66 84 95 73 78 68 69 + 88 95 84 89 80 69 95 67 95 79 82 68 69 82 61 48 44 86 66 84 95 73 78 + 68 69 88 95 84 89 80 69 95 70 95 79 82 68 69 82 61 49 44 86 66 84 95 + 73 78 68 69 88 95 84 89 80 69 95 65 78 89 61 45 49 44 86 66 84 95 73 + 78 68 69 88 95 84 89 80 69 95 73 78 86 65 76 73 68 61 45 50 44 86 66 + 84 95 73 78 68 69 88 95 84 89 80 69 95 78 65 61 45 51 44 86 66 84 95 + 73 78 68 69 88 95 84 89 80 69 95 85 78 75 78 79 87 78 61 45 52 125 105 + 110 100 101 120 95 116 121 112 101 59 68 83 76 95 79 102 102 115 101 + 116 32 98 97 115 101 95 105 100 59 68 83 76 95 79 102 102 115 101 116 + 32 110 117 109 95 114 101 99 115 59 125 59 10 47 67 97 116 32 68 65 84 + 65 83 69 84 32 115 116 114 117 99 116 32 67 97 116 123 99 104 97 114 + 32 110 97 109 101 91 54 52 93 59 101 110 117 109 32 82 111 108 101 123 + 86 66 84 95 82 79 76 69 95 84 79 80 79 61 48 44 86 66 84 95 82 79 76 + 69 95 66 78 68 61 49 44 86 66 84 95 82 79 76 69 95 80 82 79 67 61 50 + 44 86 66 84 95 82 79 76 69 95 68 79 77 78 61 51 44 86 66 84 95 82 79 + 76 69 95 66 76 79 67 75 61 52 44 86 66 84 95 82 79 76 69 95 65 83 83 + 89 61 53 44 86 66 84 95 82 79 76 69 95 77 65 84 61 54 44 86 66 84 95 + 82 79 76 69 95 88 80 82 79 68 61 55 44 86 66 84 95 82 79 76 69 95 85 + 83 69 82 68 61 56 44 86 66 84 95 82 79 76 69 95 65 78 89 61 45 49 44 + 86 66 84 95 82 79 76 69 95 73 78 86 65 76 73 68 61 45 50 44 86 66 84 + 95 82 79 76 69 95 78 65 61 45 51 44 86 66 84 95 82 79 76 69 95 85 78 + 75 78 79 87 78 61 45 52 125 114 111 108 101 59 105 110 116 32 116 100 + 105 109 59 68 83 76 95 79 102 102 115 101 116 32 98 97 115 101 95 105 + 100 59 68 83 76 95 79 102 102 115 101 116 32 110 117 109 95 114 101 99 + 115 59 125 59 10 47 83 101 116 32 68 65 84 65 83 69 84 32 115 116 114 + 117 99 116 32 83 101 116 123 105 110 116 32 117 115 101 114 95 105 100 + 59 99 104 97 114 32 110 97 109 101 91 54 52 93 59 105 110 116 32 116 + 100 105 109 59 101 110 117 109 32 83 105 108 82 111 108 101 123 86 66 + 84 95 83 82 79 76 69 95 84 73 77 69 61 48 44 86 66 84 95 83 82 79 76 + 69 95 83 80 65 67 69 61 49 44 86 66 84 95 83 82 79 76 69 95 83 84 65 + 84 69 61 50 44 86 66 84 95 83 82 79 76 69 95 80 65 82 65 77 61 51 44 + 86 66 84 95 83 82 79 76 69 95 67 84 89 80 69 61 52 44 86 66 84 95 83 + 82 79 76 69 95 65 84 89 80 69 61 53 44 86 66 84 95 83 82 79 76 69 95 + 85 83 69 82 68 61 54 44 86 66 84 95 83 82 79 76 69 95 65 78 89 61 45 + 49 44 86 66 84 95 83 82 79 76 69 95 73 78 86 65 76 73 68 61 45 50 44 + 86 66 84 95 83 82 79 76 69 95 78 65 61 45 51 44 86 66 84 95 83 82 79 + 76 69 95 85 78 75 78 79 87 78 61 45 52 125 115 114 111 108 101 59 68 + 83 76 95 79 102 102 115 101 116 32 99 111 108 108 95 105 100 115 91 49 + 54 93 59 105 110 116 32 105 115 95 116 111 112 59 105 110 116 32 105 + 115 95 101 120 116 101 110 100 105 98 108 101 59 68 83 76 95 79 102 + 102 115 101 116 32 100 102 108 116 95 99 111 111 114 100 102 108 100 + 95 105 100 59 68 83 76 95 79 102 102 115 101 116 32 98 110 100 95 115 + 101 116 95 105 100 59 68 83 76 95 79 102 102 115 101 116 32 98 97 115 + 101 95 105 100 59 68 83 76 95 79 102 102 115 101 116 32 110 117 109 95 + 114 101 99 115 59 125 59 10 47 67 111 108 108 101 99 116 105 111 110 + 32 68 65 84 65 83 69 84 32 115 116 114 117 99 116 32 67 111 108 108 + 101 99 116 105 111 110 123 68 83 76 95 79 102 102 115 101 116 32 99 + 111 110 116 97 105 110 105 110 103 95 115 101 116 95 105 100 59 68 83 + 76 95 79 102 102 115 101 116 32 99 97 116 95 105 100 59 101 110 117 + 109 32 67 101 108 108 84 121 112 101 123 86 66 84 95 67 69 76 76 95 84 + 89 80 69 95 78 79 78 69 61 48 44 86 66 84 95 67 69 76 76 95 84 89 80 + 69 95 80 79 73 78 84 61 49 44 86 66 84 95 67 69 76 76 95 84 89 80 69 + 95 76 73 78 69 61 50 44 86 66 84 95 67 69 76 76 95 84 89 80 69 95 84 + 82 73 61 51 44 86 66 84 95 67 69 76 76 95 84 89 80 69 95 81 85 65 68 + 61 52 44 86 66 84 95 67 69 76 76 95 84 89 80 69 95 84 69 84 61 53 44 + 86 66 84 95 67 69 76 76 95 84 89 80 69 95 80 89 82 65 77 73 68 61 54 + 44 86 66 84 95 67 69 76 76 95 84 89 80 69 95 80 82 73 83 77 61 55 44 + 86 66 84 95 67 69 76 76 95 84 89 80 69 95 72 69 88 61 56 44 86 66 84 + 95 67 69 76 76 95 84 89 80 69 95 77 73 88 69 68 61 57 44 86 66 84 95 + 67 69 76 76 95 84 89 80 69 95 65 82 66 61 49 48 44 86 66 84 95 67 69 + 76 76 95 84 89 80 69 95 49 66 65 76 76 61 49 49 44 86 66 84 95 67 69 + 76 76 95 84 89 80 69 95 50 66 65 76 76 61 49 50 44 86 66 84 95 67 69 + 76 76 95 84 89 80 69 95 51 66 65 76 76 61 49 51 44 86 66 84 95 67 69 + 76 76 95 84 89 80 69 95 49 83 72 69 76 76 61 49 52 44 86 66 84 95 67 + 69 76 76 95 84 89 80 69 95 50 83 72 69 76 76 61 49 53 44 86 66 84 95 + 67 69 76 76 95 84 89 80 69 95 65 78 89 61 45 49 44 86 66 84 95 67 69 + 76 76 95 84 89 80 69 95 73 78 86 65 76 73 68 61 45 50 44 86 66 84 95 + 67 69 76 76 95 84 89 80 69 95 78 65 61 45 51 44 86 66 84 95 67 69 76 + 76 95 84 89 80 69 95 85 78 75 78 79 87 78 61 45 52 125 99 101 108 108 + 95 116 121 112 101 59 105 110 116 32 99 111 117 110 116 59 68 83 76 95 + 79 102 102 115 101 116 32 105 110 100 101 120 105 110 103 95 105 100 + 59 105 110 116 32 105 115 95 100 101 99 111 109 112 59 68 83 76 95 79 + 102 102 115 101 116 32 109 101 109 98 101 114 115 95 98 108 111 98 95 + 105 100 59 68 83 76 95 79 102 102 115 101 116 32 98 97 115 101 95 105 + 100 59 68 83 76 95 79 102 102 115 101 116 32 110 117 109 95 114 101 99 + 115 59 125 59 10 47 82 101 108 97 116 105 111 110 32 68 65 84 65 83 69 + 84 32 115 116 114 117 99 116 32 82 101 108 97 116 105 111 110 123 68 + 83 76 95 79 102 102 115 101 116 32 115 117 98 95 105 100 59 68 83 76 + 95 79 102 102 115 101 116 32 115 117 98 95 99 97 116 95 105 100 59 68 + 83 76 95 79 102 102 115 101 116 32 115 117 98 95 100 101 99 111 109 + 112 95 99 97 116 95 105 100 59 68 83 76 95 79 102 102 115 101 116 32 + 115 117 112 95 105 100 59 68 83 76 95 79 102 102 115 101 116 32 115 + 117 112 95 99 97 116 95 105 100 59 68 83 76 95 79 102 102 115 101 116 + 32 115 117 112 95 100 101 99 111 109 112 95 99 97 116 95 105 100 59 + 101 110 117 109 32 82 101 108 75 105 110 100 123 86 66 84 95 82 69 76 + 75 73 78 68 95 83 85 66 83 69 84 61 48 44 86 66 84 95 82 69 76 75 73 + 78 68 95 83 85 80 83 69 84 61 49 44 86 66 84 95 82 69 76 75 73 78 68 + 95 66 79 85 78 68 61 50 44 86 66 84 95 82 69 76 75 73 78 68 95 80 69 + 82 77 85 84 69 61 51 44 86 66 84 95 82 69 76 75 73 78 68 95 78 69 73 + 71 72 66 79 82 61 52 44 86 66 84 95 82 69 76 75 73 78 68 95 67 79 80 + 89 61 53 44 86 66 84 95 82 69 76 75 73 78 68 95 69 81 85 65 76 61 54 + 44 86 66 84 95 82 69 76 75 73 78 68 95 65 78 89 61 45 49 44 86 66 84 + 95 82 69 76 75 73 78 68 95 73 78 86 65 76 73 68 61 45 50 44 86 66 84 + 95 82 69 76 75 73 78 68 95 78 65 61 45 51 44 86 66 84 95 82 69 76 75 + 73 78 68 95 85 78 75 78 79 87 78 61 45 52 125 107 105 110 100 59 101 + 110 117 109 32 82 101 108 82 101 112 123 86 66 84 95 82 69 76 82 69 80 + 95 73 68 69 78 84 73 84 89 61 48 44 86 66 84 95 82 69 76 82 69 80 95 + 72 76 73 83 84 61 49 44 86 66 84 95 82 69 76 82 69 80 95 84 76 73 83 + 84 61 50 44 86 66 84 95 82 69 76 82 69 80 95 84 76 73 83 84 95 49 61 + 51 44 86 66 84 95 82 69 76 82 69 80 95 69 76 73 83 84 61 52 44 86 66 + 84 95 82 69 76 82 69 80 95 83 84 82 85 67 84 85 82 69 68 61 53 44 86 + 66 84 95 82 69 76 82 69 80 95 85 78 83 84 82 85 67 84 85 82 69 68 61 + 54 44 86 66 84 95 82 69 76 82 69 80 95 65 82 66 73 84 82 65 82 89 95 + 82 61 55 44 86 66 84 95 82 69 76 82 69 80 95 65 82 66 73 84 82 65 82 + 89 95 68 82 61 56 44 86 66 84 95 82 69 76 82 69 80 95 65 78 89 61 45 + 49 44 86 66 84 95 82 69 76 82 69 80 95 73 78 86 65 76 73 68 61 45 50 + 44 86 66 84 95 82 69 76 82 69 80 95 78 65 61 45 51 44 86 66 84 95 82 + 69 76 82 69 80 95 85 78 75 78 79 87 78 61 45 52 125 114 101 112 95 116 + 121 112 101 59 68 83 76 95 79 102 102 115 101 116 32 100 95 98 108 111 + 98 95 105 100 59 68 83 76 95 79 102 102 115 101 116 32 114 95 98 108 + 111 98 95 105 100 59 68 83 76 95 79 102 102 115 101 116 32 98 97 115 + 101 95 105 100 59 68 83 76 95 79 102 102 115 101 116 32 110 117 109 95 + 114 101 99 115 59 125 59 10 47 70 105 101 108 100 84 109 112 108 32 68 + 65 84 65 83 69 84 32 115 116 114 117 99 116 32 70 105 101 108 100 84 + 109 112 108 123 99 104 97 114 32 110 97 109 101 91 54 52 93 59 68 83 + 76 95 79 102 102 115 101 116 32 98 97 115 101 95 115 112 97 99 101 95 + 105 100 59 101 110 117 109 32 65 108 103 101 98 114 97 105 99 84 121 + 112 101 123 86 66 84 95 65 76 71 69 66 82 65 73 67 95 84 89 80 69 95 + 67 79 78 83 84 65 78 84 61 48 44 86 66 84 95 65 76 71 69 66 82 65 73 + 67 95 84 89 80 69 95 67 79 77 80 79 78 69 78 84 61 49 44 86 66 84 95 + 65 76 71 69 66 82 65 73 67 95 84 89 80 69 95 83 67 65 76 65 82 61 50 + 44 86 66 84 95 65 76 71 69 66 82 65 73 67 95 84 89 80 69 95 86 69 67 + 84 79 82 61 51 44 86 66 84 95 65 76 71 69 66 82 65 73 67 95 84 89 80 + 69 95 84 69 78 83 79 82 61 52 44 86 66 84 95 65 76 71 69 66 82 65 73 + 67 95 84 89 80 69 95 83 89 77 95 84 69 78 83 79 82 61 53 44 86 66 84 + 95 65 76 71 69 66 82 65 73 67 95 84 89 80 69 95 70 73 69 76 68 61 54 + 44 86 66 84 95 65 76 71 69 66 82 65 73 67 95 84 89 80 69 95 83 84 65 + 84 69 61 55 44 86 66 84 95 65 76 71 69 66 82 65 73 67 95 84 89 80 69 + 95 84 85 80 76 69 61 56 44 86 66 84 95 65 76 71 69 66 82 65 73 67 95 + 84 89 80 69 95 65 78 89 61 45 49 44 86 66 84 95 65 76 71 69 66 82 65 + 73 67 95 84 89 80 69 95 73 78 86 65 76 73 68 61 45 50 44 86 66 84 95 + 65 76 71 69 66 82 65 73 67 95 84 89 80 69 95 78 65 61 45 51 44 86 66 + 84 95 65 76 71 69 66 82 65 73 67 95 84 89 80 69 95 85 78 75 78 79 87 + 78 61 45 52 125 97 108 103 95 116 121 112 101 59 101 110 117 109 32 66 + 97 115 105 115 84 121 112 101 123 86 66 84 95 66 65 83 73 83 95 84 89 + 80 69 95 85 78 73 84 89 61 48 44 86 66 84 95 66 65 83 73 83 95 84 89 + 80 69 95 67 65 82 84 69 83 73 65 78 61 49 44 86 66 84 95 66 65 83 73 + 83 95 84 89 80 69 95 83 80 72 69 82 73 67 65 76 61 50 44 86 66 84 95 + 66 65 83 73 83 95 84 89 80 69 95 67 89 76 73 78 68 82 73 67 65 76 61 + 51 44 86 66 84 95 66 65 83 73 83 95 84 89 80 69 95 85 80 80 69 82 95 + 84 82 73 61 52 44 86 66 84 95 66 65 83 73 83 95 84 89 80 69 95 70 79 + 85 82 73 69 82 61 53 44 86 66 84 95 66 65 83 73 83 95 84 89 80 69 95 + 86 65 82 73 65 66 76 69 61 54 44 86 66 84 95 66 65 83 73 83 95 84 89 + 80 69 95 65 78 89 61 45 49 44 86 66 84 95 66 65 83 73 83 95 84 89 80 + 69 95 73 78 86 65 76 73 68 61 45 50 44 86 66 84 95 66 65 83 73 83 95 + 84 89 80 69 95 78 65 61 45 51 44 86 66 84 95 66 65 83 73 83 95 84 89 + 80 69 95 85 78 75 78 79 87 78 61 45 52 125 98 97 115 105 115 59 68 83 + 76 95 79 102 102 115 101 116 32 113 117 97 110 116 105 116 121 95 105 + 100 59 105 110 116 32 110 117 109 95 99 111 109 112 115 59 68 83 76 95 + 79 102 102 115 101 116 32 102 116 109 112 108 95 105 100 115 95 98 108 + 111 98 95 105 100 59 68 83 76 95 79 102 102 115 101 116 32 98 97 115 + 101 95 105 100 59 68 83 76 95 79 102 102 115 101 116 32 110 117 109 95 + 114 101 99 115 59 125 59 10 47 70 105 101 108 100 32 68 65 84 65 83 69 + 84 32 115 116 114 117 99 116 32 70 105 101 108 100 123 68 83 76 95 79 + 102 102 115 101 116 32 102 116 109 112 108 95 105 100 59 99 104 97 114 + 32 110 97 109 101 91 54 52 93 59 68 83 76 95 79 102 102 115 101 116 32 + 117 110 105 116 115 95 105 100 59 68 83 76 95 79 102 102 115 101 116 + 32 115 116 111 114 97 103 101 95 100 101 99 111 109 112 95 99 97 116 + 95 105 100 59 101 110 117 109 32 73 110 116 101 114 108 101 97 118 101 + 123 86 66 84 95 73 78 84 69 82 76 69 65 86 69 95 67 79 77 80 79 78 69 + 78 84 61 48 44 86 66 84 95 73 78 84 69 82 76 69 65 86 69 95 86 69 67 + 84 79 82 61 49 44 86 66 84 95 73 78 84 69 82 76 69 65 86 69 95 73 78 + 68 69 80 69 78 68 69 78 84 61 50 44 86 66 84 95 73 78 84 69 82 76 69 + 65 86 69 95 78 79 78 69 61 51 44 86 66 84 95 73 78 84 69 82 76 69 65 + 86 69 95 65 78 89 61 45 49 44 86 66 84 95 73 78 84 69 82 76 69 65 86 + 69 95 73 78 86 65 76 73 68 61 45 50 44 86 66 84 95 73 78 84 69 82 76 + 69 65 86 69 95 78 65 61 45 51 44 86 66 84 95 73 78 84 69 82 76 69 65 + 86 69 95 85 78 75 78 79 87 78 61 45 52 125 99 111 109 112 95 105 110 + 116 108 118 59 68 83 76 95 79 102 102 115 101 116 32 105 110 100 101 + 120 105 110 103 95 105 100 59 68 83 76 95 79 102 102 115 101 116 32 + 100 111 102 95 97 115 115 111 99 95 99 97 116 95 105 100 59 105 110 + 116 32 97 115 115 111 99 95 114 97 116 105 111 59 68 83 76 95 79 102 + 102 115 101 116 32 101 118 97 108 95 100 101 99 111 109 112 95 99 97 + 116 95 105 100 59 101 110 117 109 32 69 118 97 108 70 117 110 99 123 + 86 66 84 95 69 86 65 76 95 70 85 78 67 95 67 79 78 83 84 65 78 84 61 + 48 44 86 66 84 95 69 86 65 76 95 70 85 78 67 95 85 78 73 70 79 82 77 + 61 49 44 86 66 84 95 69 86 65 76 95 70 85 78 67 95 80 87 67 79 78 83 + 84 61 50 44 86 66 84 95 69 86 65 76 95 70 85 78 67 95 80 87 76 73 78 + 69 65 82 61 51 44 86 66 84 95 69 86 65 76 95 70 85 78 67 95 65 78 89 + 61 45 49 44 86 66 84 95 69 86 65 76 95 70 85 78 67 95 73 78 86 65 76 + 73 68 61 45 50 44 86 66 84 95 69 86 65 76 95 70 85 78 67 95 78 65 61 + 45 51 44 86 66 84 95 69 86 65 76 95 70 85 78 67 95 85 78 75 78 79 87 + 78 61 45 52 125 101 118 97 108 95 102 117 110 99 59 105 110 116 32 105 + 115 95 104 111 109 111 103 101 110 101 111 117 115 59 105 110 116 32 + 105 115 95 99 111 111 114 100 95 102 105 101 108 100 59 68 83 76 95 79 + 102 102 115 101 116 32 99 111 109 112 95 105 100 115 95 98 108 111 98 + 95 105 100 59 68 83 76 95 79 102 102 115 101 116 32 99 111 109 112 95 + 111 114 100 101 114 95 98 108 111 98 95 105 100 59 68 83 76 95 79 102 + 102 115 101 116 32 118 98 97 115 105 115 95 98 108 111 98 95 105 100 + 59 68 83 76 95 79 102 102 115 101 116 32 100 111 102 95 98 108 111 98 + 95 105 100 59 68 83 76 95 79 102 102 115 101 116 32 98 97 115 101 95 + 105 100 59 68 83 76 95 79 102 102 115 101 116 32 110 117 109 95 114 + 101 99 115 59 125 59 10 47 109 101 116 97 98 108 111 98 48 48 48 48 48 + 46 105 110 100 101 120 32 68 65 84 65 83 69 84 32 115 116 114 117 99 + 116 32 73 110 100 101 120 80 97 105 114 123 68 83 76 95 79 102 102 115 + 101 116 32 105 110 100 101 120 59 105 110 116 32 108 101 110 103 116 + 104 59 125 59 10 47 109 101 116 97 98 108 111 98 48 48 48 48 48 46 98 + 108 111 98 32 68 65 84 65 83 69 84 32 68 83 76 95 79 102 102 115 101 + 116 59 10 - + + + + + + - + - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - 9 10 13 10 14 13 10 11 14 + -1 1 0 1 9 0 1 -1 2 0 1 4 1 1 -1 3 0 1 7 2 1 -1 4 0 1 4 3 1 + -1 5 0 1 5 4 1 -1 6 0 1 3 5 1 -1 7 0 1 4 6 1 -1 8 0 1 1 7 1 + -1 9 0 1 10 8 1 -1 10 0 1 4 9 1 -1 11 0 1 3 10 1 -1 12 0 1 5 11 1 + -1 13 0 1 5 12 1 -1 14 0 1 16 13 1 -1 15 0 1 9 14 1 -1 16 0 1 4 15 1 + -1 17 0 1 16 16 1 -1 18 0 1 36 17 1 -1 19 0 1 5 18 1 -1 20 0 1 5 19 1 + -1 21 0 1 36 20 1 -1 22 0 1 12 21 1 -1 23 0 1 7 22 1 -1 24 0 1 2 23 1 - + + + + + + - + - - - + + + + + + + + + + + + + + TOPO + + + 0 + + + BND + + + 1 + + + PROC + + + 2 + + + DOMN + + + 3 + + + BLOCK + + + 4 + + + ASSY + + + 5 + + + MAT + + + 6 + + + XPROD + + + 7 + + + USERD + + + 8 + + + ANY + + + -1 + + + INVALID + + + -2 + + + NA + + + -3 + + + UNKNOWN + + + -4 + + + + + + + + + + + + + + + + + + + + + + + + + + + + - 13 14 17 16 + "nodes" TOPO 0 0 1 "elems" TOPO 2 1 1 "edges" USERD 1 2 1 + "blocks" BLOCK 2 3 1 "side_sets" USERD 1 4 1 - + + + + + + - + - - - - - - - 3 4 8 7 7 8 12 11 11 12 15 14 14 15 18 17 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + NONE + + + 0 + + + POINT + + + 1 + + + LINE + + + 2 + + + TRI + + + 3 + + + QUAD + + + 4 + + + TET + + + 5 + + + PYRAMID + + + 6 + + + PRISM + + + 7 + + + HEX + + + 8 + + + MIXED + + + 9 + + + ARB + + + 10 + + + 1BALL + + + 11 + + + 2BALL + + + 12 + + + 3BALL + + + 13 + + + 1SHELL + + + 14 + + + 2SHELL + + + 15 + + + ANY + + + -1 + + + INVALID + + + -2 + + + NA + + + -3 + + + UNKNOWN + + + -4 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + 0 0 POINT 18 0 0 -2 0 1 0 1 MIXED 12 1 1 -2 1 1 0 3 NONE 4 2 1 0 2 1 + 0 4 NONE 2 3 0 1 3 1 1 0 POINT 9 4 0 -2 4 1 1 1 QUAD 4 5 1 -2 5 1 + 1 3 NONE 1 6 1 2 6 1 2 0 POINT 7 7 0 -2 7 1 2 1 MIXED 4 8 1 -2 8 1 + 2 3 NONE 2 9 1 3 9 1 3 0 POINT 10 10 0 -2 10 1 3 1 QUAD 4 11 1 -2 11 1 + 3 3 NONE 1 12 1 4 12 1 4 0 POINT 3 13 0 -2 13 1 + 4 2 LINE 2 14 1 -2 14 1 5 0 POINT 5 15 0 -2 15 1 + 5 2 LINE 4 16 1 -2 16 1 6 0 POINT 5 17 1 -2 17 1 + 7 0 POINT 5 18 0 -2 18 1 7 1 TRI 3 19 1 -2 19 1 7 3 NONE 1 20 1 5 20 1 + 8 0 POINT 4 21 0 -2 21 1 8 1 QUAD 1 22 1 -2 22 1 8 3 NONE 1 23 1 6 23 1 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + COMPONENT + + + 0 + + + VECTOR + + + 1 + + + INDEPENDENT + + + 2 + + + NONE + + + 3 + + + ANY + + + -1 + + + INVALID + + + -2 + + + NA + + + -3 + + + UNKNOWN + + + -4 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + CONSTANT + + + 0 + + + UNIFORM + + + 1 + + + PWCONST + + + 2 + + + PWLINEAR + + + 3 + + + ANY + + + -1 + + + INVALID + + + -2 + + + NA + + + -3 + + + UNKNOWN + + + -4 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + 1 "X" -7 -2 NONE -2 0 1 0 PWLINEAR 1 0 -2 -2 -2 -2 0 1 + 1 "Y" -7 -2 NONE -2 0 1 0 PWLINEAR 1 0 -2 -2 -2 -2 1 1 + 0 "coords" -7 -2 VECTOR -2 0 1 0 PWLINEAR 1 1 7 -2 -2 17 2 1 + 2 "distribution factors" -5 -2 NONE -2 0 1 0 PWLINEAR 1 0 -2 -2 -2 18 3 1 + 3 "temperature" -7 -2 NONE -2 0 1 0 PWLINEAR 1 0 -2 -2 -2 19 4 1 + 1 "dX" -7 -2 NONE -2 0 1 0 PWLINEAR 1 0 -2 -2 -2 -2 5 1 + 1 "dY" -7 -2 NONE -2 0 1 0 PWLINEAR 1 0 -2 -2 -2 -2 6 1 + 0 "displacements" -7 -2 VECTOR -2 0 1 0 PWLINEAR 1 0 8 -2 -2 20 7 1 + 5 "Sx" -7 -2 NONE -2 1 1 1 PWCONST 1 0 -2 -2 -2 -2 8 1 + 5 "Sy" -7 -2 NONE -2 1 1 1 PWCONST 1 0 -2 -2 -2 -2 9 1 + 5 "Sxy" -7 -2 NONE -2 1 1 1 PWCONST 1 0 -2 -2 -2 -2 10 1 + 4 "stress" -7 -2 VECTOR -2 1 1 1 PWCONST 1 0 9 -2 -2 21 11 1 + 6 "temperature" -7 -2 NONE -2 0 1 0 PWLINEAR 1 0 -2 -2 -2 22 12 1 + 7 "pressure" -7 -2 NONE -2 2 1 2 PWCONST 1 0 -2 -2 -2 23 13 1 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + CONSTANT + + + 0 + + + COMPONENT + + + 1 + + + SCALAR + + + 2 + + + VECTOR + + + 3 + + + TENSOR + + + 4 + + + SYM_TENSOR + + + 5 + + + FIELD + + + 6 + + + STATE + + + 7 + + + TUPLE + + + 8 + + + ANY + + + -1 + + + INVALID + + + -2 + + + NA + + + -3 + + + UNKNOWN + + + -4 + + + + + + + + + + + UNITY + + + 0 + + + CARTESIAN + + + 1 + + + SPHERICAL + + + 2 + + + CYLINDRICAL + + + 3 + + + UPPER_TRI + + + 4 + + + FOURIER + + + 5 + + + VARIABLE + + + 6 + + + ANY + + + -1 + + + INVALID + + + -2 + + + NA + + + -3 + + + UNKNOWN + + + -4 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + "coordinate_tmpl" 0 VECTOR CARTESIAN 2 2 0 0 1 + "coordinate_tmpl_component" 0 SCALAR CARTESIAN 2 1 0 1 1 + "distrib_factors_tmpl" 5 SCALAR UNITY -5 1 0 2 1 + "temp_on_ns1_tmpl" 6 SCALAR UNITY 0 1 0 3 1 + "stress_on_cell_1_tmpl" 1 SYM_TENSOR UPPER_TRI 0 3 0 4 1 + "stress_on_cell_1_tmpl_component" 1 SCALAR UPPER_TRI 0 1 0 5 1 + "temp_on_cell_2_tmpl" 2 SCALAR UNITY 1 1 0 6 1 + "pressure_on_ss1" 4 SCALAR UNITY 0 1 0 7 1 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - - - - - - - - - - - - - + + + + + + + + + + + + + - - + + + + + + + + + + + + + - - + + + + + + + + + + + + C_ORDER + + + 0 + + + F_ORDER + + + 1 + + + ANY + + + -1 + + + INVALID + + + -2 + + + NA + + + -3 + + + UNKNOWN + + + -4 + + + + + + + + + + + + + + + + + + + + + + + + + 1 0 0 0 0 0 0 0 0 18 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 C_ORDER 0 1 + 1 0 0 0 0 0 0 0 0 12 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 C_ORDER 1 1 + 1 0 0 0 0 0 0 0 0 4 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 C_ORDER 2 1 + 1 0 0 0 0 0 0 0 0 2 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 C_ORDER 3 1 + 1 0 0 0 0 0 0 0 0 9 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 C_ORDER 4 1 + 1 0 0 0 0 0 0 0 0 4 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 C_ORDER 5 1 + 1 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 C_ORDER 6 1 + 1 0 0 0 0 0 0 0 0 7 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 C_ORDER 7 1 + 1 0 0 0 0 0 0 0 0 4 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 C_ORDER 8 1 + 1 0 0 0 0 0 0 0 0 2 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 C_ORDER 9 1 + 1 0 0 0 0 0 0 0 0 10 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 C_ORDER 10 1 + 1 0 0 0 0 0 0 0 0 4 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 C_ORDER 11 1 + 1 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 C_ORDER 12 1 + 1 0 0 0 0 0 0 0 0 3 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 C_ORDER 13 1 + 1 0 0 0 0 0 0 0 0 2 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 C_ORDER 14 1 + 1 0 0 0 0 0 0 0 0 5 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 C_ORDER 15 1 + 1 0 0 0 0 0 0 0 0 4 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 C_ORDER 16 1 + 1 0 0 0 0 0 0 0 0 5 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 C_ORDER 17 1 + 1 0 0 0 0 0 0 0 0 5 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 C_ORDER 18 1 + 1 0 0 0 0 0 0 0 0 3 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 C_ORDER 19 1 + 1 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 C_ORDER 20 1 + 1 0 0 0 0 0 0 0 0 4 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 C_ORDER 21 1 + 1 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 C_ORDER 22 1 + 1 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 C_ORDER 23 1 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + SUBSET + + + 0 + + + SUPSET + + + 1 + + + BOUND + + + 2 + + + PERMUTE + + + 3 + + + NEIGHBOR + + + 4 + + + COPY + + + 5 + + + EQUAL + + + 6 + + + ANY + + + -1 + + + INVALID + + + -2 + + + NA + + + -3 + + + UNKNOWN + + + -4 + + + + + + + + + + + IDENTITY + + + 0 + + + HLIST + + + 1 + + + TLIST + + + 2 + + + TLIST_1 + + + 3 + + + ELIST + + + 4 + + + STRUCTURED + + + 5 + + + UNSTRUCTURED + + + 6 + + + ARBITRARY_R + + + 7 + + + ARBITRARY_DR + + + 8 + + + ANY + + + -1 + + + INVALID + + + -2 + + + NA + + + -3 + + + UNKNOWN + + + -4 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + 1 0 -2 0 0 -2 EQUAL TLIST -2 0 0 1 1 1 -2 0 1 -2 EQUAL TLIST -2 1 1 1 + 2 0 -2 0 0 -2 EQUAL TLIST -2 2 2 1 2 1 -2 0 1 -2 EQUAL TLIST -2 3 3 1 + 7 0 -2 0 0 -2 EQUAL TLIST -2 4 4 1 7 1 -2 0 1 -2 EQUAL TLIST -2 5 5 1 + 8 0 -2 0 0 -2 EQUAL TLIST -2 6 6 1 8 1 -2 0 1 -2 EQUAL TLIST -2 7 7 1 + 3 0 -2 0 0 -2 EQUAL TLIST -2 8 8 1 3 1 -2 0 1 -2 EQUAL TLIST -2 9 9 1 + 4 0 -2 0 0 -2 EQUAL TLIST -2 10 10 1 + 5 0 -2 0 0 -2 EQUAL TLIST -2 11 11 1 + 6 0 -2 0 0 -2 EQUAL TLIST -2 12 12 1 + 1 3 -2 0 3 -2 EQUAL TLIST -2 -2 13 1 + 7 3 -2 0 3 -2 EQUAL TLIST -2 -2 14 1 + 8 3 -2 0 3 -2 EQUAL TLIST -2 -2 15 1 + 3 3 -2 0 3 -2 EQUAL TLIST -2 -2 16 1 + 1 1 -2 0 0 -2 SUBSET UNSTRUCTURED -2 13 17 1 + 7 1 -2 0 0 -2 SUBSET UNSTRUCTURED -2 14 18 1 + 8 1 -2 0 0 -2 SUBSET UNSTRUCTURED -2 15 19 1 + 3 1 -2 0 0 -2 SUBSET UNSTRUCTURED -2 16 20 1 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + TIME + + + 0 + + + SPACE + + + 1 + + + STATE + + + 2 + + + PARAM + + + 3 + + + CTYPE + + + 4 + + + ATYPE + + + 5 + + + USERD + + + 6 + + + ANY + + + -1 + + + INVALID + + + -2 + + + NA + + + -3 + + + UNKNOWN + + + -4 + + + + + + + + + + + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -604320037 "." "don't import" 1 0 0 0 "none" 0 1 0 "devel" 1 3 0 "" 0 0 0 "none" 1 2 1 "" 1 2 0 "" 1 0 1 0 - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + 0 "TOP_CELL" 2 SPACE 0 1 -2 2 3 -2 -2 -2 -2 -2 -2 -2 -2 -2 -2 -2 1 0 -2 -2 0 1 + 0 "CELL_1" 2 SPACE 4 5 -2 6 -2 -2 -2 -2 -2 -2 -2 -2 -2 -2 -2 -2 0 0 -2 -2 1 1 + 0 "CELL_2" 2 SPACE 7 8 -2 9 -2 -2 -2 -2 -2 -2 -2 -2 -2 -2 -2 -2 0 0 -2 -2 2 1 + 0 "CELL_3" 2 SPACE 10 11 -2 12 -2 -2 -2 -2 -2 -2 -2 -2 -2 -2 -2 -2 0 0 -2 -2 3 1 + 0 "SIDE_SET_1" 1 SPACE 13 -2 14 -2 -2 -2 -2 -2 -2 -2 -2 -2 -2 -2 -2 -2 0 0 -2 -2 4 1 + 0 "SIDE_SET_2" 1 SPACE 15 -2 16 -2 -2 -2 -2 -2 -2 -2 -2 -2 -2 -2 -2 -2 0 0 -2 -2 5 1 + 0 "NODE_SET_1" 0 SPACE 17 -2 -2 -2 -2 -2 -2 -2 -2 -2 -2 -2 -2 -2 -2 -2 0 0 -2 -2 6 1 + 0 "CELL_2_TRIS" 2 SPACE 18 19 -2 20 -2 -2 -2 -2 -2 -2 -2 -2 -2 -2 -2 -2 0 0 -2 -2 7 1 + 0 "CELL_2_QUADS" 2 SPACE 21 22 -2 23 -2 -2 -2 -2 -2 -2 -2 -2 -2 -2 -2 -2 0 0 -2 -2 8 1 + + + + + + + + + + + + + + + + + 0 4 1 4 2 4 2.5 4 0 3 1 3 2 3 2.5 3 0 2 1 2 2 2 2.5 2 0 1 2 1 2.5 1 0 + 0 2 0 2.5 0 + + + + + + + + + + + + + + + + + 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 + 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 + 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 + + + + + + + + + + + + + + + + + 4 3 2 1 0 + + + + + + + + + + + + + + + + + 45 55 + + + + + + + + + + + + + + + + + 0.5 0.25 0.5 0.5 0.25 0.5 0.5 0.25 0.5 0.5 0.25 0.5 + + + + + + + + + + + + + + + + + 100 150 150 100 75 + + + + + + + + + + + + + + + + + 75 95 120 80 115 85 110 + + + + + + + + + + + + + + + + + + + + + + 1 7 8 3 -2 -2 -2 -2 -2 -2 -2 -2 0 1 5 6 8 9 10 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + 0 4 4 2 6 1 7 2 9 1 10 1 11 1 12 2 14 2 16 3 + + + + + + + + + + + + + + + + + 1 2 3 5 6 7 9 10 11 + + + + + + + + + + + + + + + + + 1 2 4 5 + + + + + + + + + + + + + + + + + 9 10 11 13 14 16 17 + + + + + + + + + + + + + + + + + 7 8 9 11 + + + + + + + + + + + + + + + + + 9 10 11 13 14 + + + + + + + + + + + + + + + + + 7 8 9 + + + + + + + + + + + + + + + + + 13 14 16 17 + + + + + + + + + + + + + + + + + 11 + + + + + + + + + + + + + + + + + 3 4 7 8 11 12 14 15 17 18 + + + + + + + + + + + + + + + + + 3 6 10 12 + + + + + + + + + + + + + + + + + 9 10 11 + + + + + + + + + + + + + + + + + 1 5 9 13 16 + + + + + + + + + + + + + + + + + 4 8 12 15 18 + + + + + + + + + + + + + + + + + 1 2 6 5 2 3 7 6 5 6 10 9 6 7 11 10 + + + + + + + + + + + + + + + + + 9 10 13 10 14 13 10 11 14 + + + + + + + + + + + + + + + + + 13 14 17 16 + + + + + + + + + + + + + + + + + 3 4 8 7 7 8 12 11 11 12 15 14 14 15 18 17 + + + -- cgit v0.12